diff --git a/docs/angular/angular-core-annotation.Component.json b/docs/angular/angular-core-annotation.Component.json index 602b331..c8b85ad 100644 --- a/docs/angular/angular-core-annotation.Component.json +++ b/docs/angular/angular-core-annotation.Component.json @@ -1 +1 @@ -{"name":"Component","qualifiedName":"angular/angular-core-annotation.Component","comment":"
Annotation placed on a class which should act as a controller for the\ncomponent. Angular components are a light-weight version of web-components.\nAngular components use shadow-DOM for rendering their templates.
\nAngular components are instantiated using dependency injection, and can\nask for any injectable object in their constructor. Components\ncan also ask for other components or decorators declared on the DOM element.
\nComponents can implement angular/angular-core-annotation.AttachAware, angular/angular-core-annotation.DetachAware,\nangular/angular-core-annotation.ShadowRootAware, ScopeAware and declare these optional methods:
attach()
- Called on first Scope.apply().detach()
- Called on when owning scope is destroyed.onShadowRoot(ShadowRoot shadowRoot)
- Called when\nShadowRoot is loaded.
set scope(Scope scope)
- Called right after construction with the component scope.This property is left here for backward compatibility, but it is not required.
\nBefore:
\n@Component(publishAs: 'ctrl', ...)\nclass MyComponent {\n // ...\n}\n
\nin component template: {{ctrl.foo}}
\nAfter:
\n@Component(publishAs: 'ctrl', ...)
\nclass MyComponent {\n // You must add a getter named after the publishAs configuration\n MyComponent get ctrl => this;\n\n // ...\n}\n
\nFinally:
\n@Component()\n class MyComponent {}
\nin component template: {{foo}}
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.String","inner":[]}],"annotations":[{"name":"angular/dart-core.Deprecated","parameters":["'next release. This property is left for backward compatibility but setting it has no' ' effect.'"]}]},"template":{"name":"template","qualifiedName":"angular/angular-core-annotation.Component.template","comment":"Inlined HTML template for the component.
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.String","inner":[]}],"annotations":[]},"templateUrl":{"name":"templateUrl","qualifiedName":"angular/angular-core-annotation.Component.templateUrl","comment":"A URL to HTML template. This will be loaded asynchronously and\ncached for future component instances.
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.String","inner":[]}],"annotations":[]},"useNgBaseCss":{"name":"useNgBaseCss","qualifiedName":"angular/angular-core-annotation.Component.useNgBaseCss","comment":"Defaults to true, but if set to false any NgBaseCss stylesheets will be ignored.
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.bool","inner":[]}],"annotations":[]},"useShadowDom":{"name":"useShadowDom","qualifiedName":"angular/angular-core-annotation.Component.useShadowDom","comment":"If set to true, this component will always use shadow DOM.\nIf set to false, this component will never use shadow DOM.\nIf unset, the compiler's default construction strategy will be used
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.bool","inner":[]}],"annotations":[]}},"inheritedVariables":{"children":{"name":"children","qualifiedName":"angular/angular-core-annotation.Directive.children","comment":"Specifies the compiler action to be taken on the child nodes of the\nelement which this currently being compiled. The values are:
Use the list to specify expressions containing attributes which are not\nincluded under angular/angular-core-annotation.Directive.map with '=' or '@' specification. This is used by\nangular transformer during deployment.
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.List","inner":[{"outer":"dart-core.String","inner":[]}]}],"annotations":[]},"exportExpressions":{"name":"exportExpressions","qualifiedName":"angular/angular-core-annotation.Directive.exportExpressions","comment":"Use the list to specify expressions which are evaluated dynamically\n(ex. via Scope.eval) and are otherwise not statically discoverable.\nThis is used by angular transformer during deployment.
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.List","inner":[{"outer":"dart-core.String","inner":[]}]}],"annotations":[]},"map":{"name":"map","qualifiedName":"angular/angular-core-annotation.Directive.map","comment":"Use map to define the mapping of DOM attributes to fields.\nThe map's key is the DOM attribute name (DOM attribute is in dash-case).\nThe Map's value consists of a mode prefix followed by an expression.\nThe destination expression will be evaluated against the instance of the\ndirective / component class.
@
- Map the DOM attribute string. The attribute string will be taken\n literally or interpolated if it contains binding {{}} systax and assigned\n to the expression. (cost: 0 watches)
=>
- Treat the DOM attribute value as an expression. Set up a watch,\n which will read the expression in the attribute and assign the value\n to destination expression. (cost: 1 watch)
<=>
- Treat the DOM attribute value as an expression. Set up a watch\n on both outside as well as component scope to keep the src and\n destination in sync. (cost: 2 watches)
=>!
- Treat the DOM attribute value as an expression. Set up a one time\n watch on expression. Once the expression turns truthy it will no longer\n update. (cost: 1 watches until not null, then 0 watches)
&
- Treat the DOM attribute value as an expression. Assign a closure\n function into the field. This allows the component to control\n the invocation of the closure. This is useful for passing\n expressions into controllers which act like callbacks. (cost: 0 watches)
Example:
\n<my-component title=\"Hello {{username}}\"\n selection=\"selectedItem\"\n on-selection-change=\"doSomething()\">\n\n@Component(\n selector: 'my-component'\n map: const {\n 'title': '@title',\n 'selection': '<=>currentItem',\n 'on-selection-change': '&onChange'})\nclass MyComponent {\n String title;\n var currentItem;\n ParsedFn onChange;\n}\n
\nThe above example shows how all three mapping modes are used.
@title
maps the title DOM attribute to the controller title
\n field. Notice that this maps the content of the attribute, which\n means that it can be used with {{}}
interpolation.
<=>currentItem
maps the expression (in this case the selectedItem
\n in the current scope into the currentItem
in the controller. Notice\n that mapping is bi-directional. A change either in field or on\n parent scope will result in change to the other.
&onChange
maps the expression into the controller onChange
\n field. The result of mapping is a callable function which can be\n invoked at any time by the controller. The invocation of the\n callable function will result in the expression doSomething()
to\n be executed in the parent context.
A directive/component class can publish types by using a factory function to generate a module.\nThe module is then installed into the injector at that element. Any types declared in the\nmodule then become available for injection.
\nExample:
\n@Decorator(\n selector: '[foo]',\n module: Foo.moduleFactory)\nclass Foo {\n static moduleFactory(DirectiveBinder binder) =>\n binder.bind(SomeTypeA, visibility: Visibility.LOCAL);\n}\n
\nvisibility
is one of:\n * angular/angular-core-annotation.Visibility.LOCAL\n * Visibility.CHILDREN\n * angular/angular-core-annotation.Visibility.DIRECT_CHILD
CSS selector which will trigger this component/directive.\nCSS Selectors are limited to a single element and can contain:
element-name
limit to a given element name..class
limit to an element with a given class.[attribute]
limit to an element with a given attribute name.[attribute=value]
limit to an element with a given attribute and value.:contains(/abc/)
limit to an element which contains the given text.Example: input[type=checkbox][ng-model]
Event names to listen to during Web Component two-way binding.
\nTo support web components efficiently, Angular only reads element\nbindings when specific events are fired. By default, Angular listens\nto 'change'. Adding events names to this listen will cause Angular\nto listen to those events instead.
\nThe name is intentionally long: this should be rarely used and therefore\nit is important that it is self-documenting.
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.List","inner":[{"outer":"dart-core.String","inner":[]}]}],"annotations":[]},"visibility":{"name":"visibility","qualifiedName":"angular/angular-core-annotation.Directive.visibility","comment":"A directive class can be injected into other directives. This attribute controls whether the\ndirective is available to others.
angular/angular-core-annotation.Visibility.LOCAL - the directive can be injected into other directives on the same DOM\n element.
angular/angular-core-annotation.Visibility.CHILDREN - the directive can be injected into other directives on the same or\n child DOM elements (default).
angular/angular-core-annotation.Visibility.DIRECT_CHILD - the directive can be injected into other directives on the direct\n children of the current DOM element.
Get a hash code for this object.
\nAll objects have hash codes. Hash codes are guaranteed to be the\nsame for objects that are equal when compared using the equality\noperator ==
. Other than that there are no guarantees about\nthe hash codes. They will not be consistent between runs and\nthere are no distribution guarantees.
If a subclass overrides angular/angular-core-annotation.Component.hashCode it should override the\nequality operator as well to maintain consistency.
","commentFrom":"","inheritedFrom":"dart-core.Object.hashCode","static":false,"abstract":false,"constant":false,"return":[{"outer":"dart-core.int","inner":[]}],"parameters":{},"annotations":[]},"runtimeType":{"name":"runtimeType","qualifiedName":"angular/angular-core-annotation.Component.runtimeType","comment":"A representation of the runtime type of the object.
","commentFrom":"","inheritedFrom":"dart-core.Object.runtimeType","static":false,"abstract":false,"constant":false,"return":[{"outer":"dart-core.Type","inner":[]}],"parameters":{},"annotations":[]}},"constructors":{},"operators":{"==":{"name":"==","qualifiedName":"angular/angular-core-annotation.Component.==","comment":"The equality operator.
\nThe default behavior for all dart-core.Objects is to return true if and\nonly if this
and angular/angular-core-annotation.Component.==.other are the same object.
Override this method to specify a different equality relation on\na class. The overriding method must still be an equivalence relation.\nThat is, it must be:
Total: It must return a boolean for all arguments. It should never throw\n or return null
.
Reflexive: For all objects o
, o == o
must be true.
Symmetric: For all objects o1
and o2
, o1 == o2
and o2 == o1
must\n either both be true, or both be false.
Transitive: For all objects o1
, o2
, and o3
, if o1 == o2
and\n o2 == o3
are true, then o1 == o3
must be true.
The method should also be consistent over time, so equality of two objects\nshould not change over time, or at least only change if one of the objects\nwas modified.
\nIf a subclass overrides the equality operator it should override\nthe angular/angular-core-annotation.Component.hashCode method as well to maintain consistency.
","commentFrom":"","inheritedFrom":"dart-core.Object.==","static":false,"abstract":false,"constant":false,"return":[{"outer":"dart-core.bool","inner":[]}],"parameters":{"other":{"name":"other","optional":false,"named":false,"default":false,"type":[{"outer":"dynamic","inner":[]}],"value":null,"annotations":[]}},"annotations":[]}},"methods":{"noSuchMethod":{"name":"noSuchMethod","qualifiedName":"angular/angular-core-annotation.Component.noSuchMethod","comment":"angular/angular-core-annotation.Component.noSuchMethod is invoked when users invoke a non-existent method\non an object. The name of the method and the arguments of the\ninvocation are passed to angular/angular-core-annotation.Component.noSuchMethod in an dart-core.Invocation.\nIf angular/angular-core-annotation.Component.noSuchMethod returns a value, that value becomes the result of\nthe original invocation.
\nThe default behavior of angular/angular-core-annotation.Component.noSuchMethod is to throw a\ndart-core.NoSuchMethodError.
","commentFrom":"","inheritedFrom":"dart-core.Object.noSuchMethod","static":false,"abstract":false,"constant":false,"return":[{"outer":"dynamic","inner":[]}],"parameters":{"invocation":{"name":"invocation","optional":false,"named":false,"default":false,"type":[{"outer":"dart-core.Invocation","inner":[]}],"value":null,"annotations":[]}},"annotations":[]},"toString":{"name":"toString","qualifiedName":"angular/angular-core-annotation.Component.toString","comment":"Returns a string representation of this object.
","commentFrom":"dart-core.Object.toString","inheritedFrom":"angular-core-annotation.Directive.toString","static":false,"abstract":false,"constant":false,"return":[{"outer":"dart-core.String","inner":[]}],"parameters":{},"annotations":[]}}},"annotations":[],"generics":{}} \ No newline at end of file +{"name":"Component","qualifiedName":"angular/angular-core-annotation.Component","comment":"Annotation placed on a class which should act as a controller for the\ncomponent. Angular components are a light-weight version of web-components.\nAngular components use shadow-DOM for rendering their templates.
\nAngular components are instantiated using dependency injection, and can\nask for any injectable object in their constructor. Components\ncan also ask for other components or decorators declared on the DOM element.
\nComponents can implement angular/angular-core-annotation.AttachAware, angular/angular-core-annotation.DetachAware,\nangular/angular-core-annotation.ShadowRootAware, ScopeAware and declare these optional methods:
attach()
- Called on first Scope.apply().detach()
- Called on when owning scope is destroyed.onShadowRoot(ShadowRoot shadowRoot)
- Called when\nShadowRoot is loaded.
set scope(Scope scope)
- Called right after construction with the component scope.This property is left here for backward compatibility, but it is not required.
\nBefore:
\n@Component(publishAs: 'ctrl', ...)\nclass MyComponent {\n // ...\n}\n
\nin component template: {{ctrl.foo}}
\nAfter:
\n@Component(publishAs: 'ctrl', ...)
\nclass MyComponent {\n // You must add a getter named after the publishAs configuration\n MyComponent get ctrl => this;\n\n // ...\n}\n
\nFinally:
\n@Component()\n class MyComponent {}
\nin component template: {{foo}}
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.String","inner":[]}],"annotations":[{"name":"angular/dart-core.Deprecated","parameters":["'next release. This property is left for backward compatibility but setting it has no' ' effect.'"]}]},"template":{"name":"template","qualifiedName":"angular/angular-core-annotation.Component.template","comment":"Inlined HTML template for the component.
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.String","inner":[]}],"annotations":[]},"templateUrl":{"name":"templateUrl","qualifiedName":"angular/angular-core-annotation.Component.templateUrl","comment":"A URL to HTML template. This will be loaded asynchronously and\ncached for future component instances.
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.String","inner":[]}],"annotations":[]},"useNgBaseCss":{"name":"useNgBaseCss","qualifiedName":"angular/angular-core-annotation.Component.useNgBaseCss","comment":"Defaults to true, but if set to false any NgBaseCss stylesheets will be ignored.
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.bool","inner":[]}],"annotations":[]},"useShadowDom":{"name":"useShadowDom","qualifiedName":"angular/angular-core-annotation.Component.useShadowDom","comment":"If set to true, this component will always use shadow DOM.\nIf set to false, this component will never use shadow DOM.\nIf unset, the compiler's default construction strategy will be used.
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.bool","inner":[]}],"annotations":[]}},"inheritedVariables":{"children":{"name":"children","qualifiedName":"angular/angular-core-annotation.Directive.children","comment":"Specifies the compiler action to be taken on the child nodes of the\nelement which this currently being compiled. The values are:
Use the list to specify expressions containing attributes which are not\nincluded under angular/angular-core-annotation.Directive.map with '=' or '@' specification. This is used by\nangular transformer during deployment.
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.List","inner":[{"outer":"dart-core.String","inner":[]}]}],"annotations":[]},"exportExpressions":{"name":"exportExpressions","qualifiedName":"angular/angular-core-annotation.Directive.exportExpressions","comment":"Use the list to specify expressions which are evaluated dynamically\n(ex. via Scope.eval) and are otherwise not statically discoverable.\nThis is used by angular transformer during deployment.
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.List","inner":[{"outer":"dart-core.String","inner":[]}]}],"annotations":[]},"map":{"name":"map","qualifiedName":"angular/angular-core-annotation.Directive.map","comment":"Use map to define the mapping of DOM attributes to fields.\nThe map's key is the DOM attribute name (DOM attribute is in dash-case).\nThe Map's value consists of a mode prefix followed by an expression.\nThe destination expression will be evaluated against the instance of the\ndirective / component class.
@
- Map the DOM attribute string. The attribute string will be taken\n literally or interpolated if it contains binding {{}} systax and assigned\n to the expression. (cost: 0 watches)
=>
- Treat the DOM attribute value as an expression. Set up a watch,\n which will read the expression in the attribute and assign the value\n to destination expression. (cost: 1 watch)
<=>
- Treat the DOM attribute value as an expression. Set up a watch\n on both outside as well as component scope to keep the src and\n destination in sync. (cost: 2 watches)
=>!
- Treat the DOM attribute value as an expression. Set up a one time\n watch on expression. Once the expression turns truthy it will no longer\n update. (cost: 1 watches until not null, then 0 watches)
&
- Treat the DOM attribute value as an expression. Assign a closure\n function into the field. This allows the component to control\n the invocation of the closure. This is useful for passing\n expressions into controllers which act like callbacks. (cost: 0 watches)
Example:
\n<my-component title=\"Hello {{username}}\"\n selection=\"selectedItem\"\n on-selection-change=\"doSomething()\">\n\n@Component(\n selector: 'my-component'\n map: const {\n 'title': '@title',\n 'selection': '<=>currentItem',\n 'on-selection-change': '&onChange'})\nclass MyComponent {\n String title;\n var currentItem;\n ParsedFn onChange;\n}\n
\nThe above example shows how all three mapping modes are used.
@title
maps the title DOM attribute to the controller title
\n field. Notice that this maps the content of the attribute, which\n means that it can be used with {{}}
interpolation.
<=>currentItem
maps the expression (in this case the selectedItem
\n in the current scope into the currentItem
in the controller. Notice\n that mapping is bi-directional. A change either in field or on\n parent scope will result in change to the other.
&onChange
maps the expression into the controller onChange
\n field. The result of mapping is a callable function which can be\n invoked at any time by the controller. The invocation of the\n callable function will result in the expression doSomething()
to\n be executed in the parent context.
A directive/component class can publish types by using a factory function to generate a module.\nThe module is then installed into the injector at that element. Any types declared in the\nmodule then become available for injection.
\nExample:
\n@Decorator(\n selector: '[foo]',\n module: Foo.moduleFactory)\nclass Foo {\n static moduleFactory(DirectiveBinder binder) =>\n binder.bind(SomeTypeA, visibility: Visibility.LOCAL);\n}\n
\nvisibility
is one of:\n * angular/angular-core-annotation.Visibility.LOCAL\n * Visibility.CHILDREN\n * angular/angular-core-annotation.Visibility.DIRECT_CHILD
CSS selector which will trigger this component/directive.\nCSS Selectors are limited to a single element and can contain:
element-name
limit to a given element name..class
limit to an element with a given class.[attribute]
limit to an element with a given attribute name.[attribute=value]
limit to an element with a given attribute and value.:contains(/abc/)
limit to an element which contains the given text.Example: input[type=checkbox][ng-model]
Event names to listen to during Web Component two-way binding.
\nTo support web components efficiently, Angular only reads element\nbindings when specific events are fired. By default, Angular listens\nto 'change'. Adding events names to this listen will cause Angular\nto listen to those events instead.
\nThe name is intentionally long: this should be rarely used and therefore\nit is important that it is self-documenting.
","final":true,"static":false,"constant":false,"type":[{"outer":"dart-core.List","inner":[{"outer":"dart-core.String","inner":[]}]}],"annotations":[]},"visibility":{"name":"visibility","qualifiedName":"angular/angular-core-annotation.Directive.visibility","comment":"A directive class can be injected into other directives. This attribute controls whether the\ndirective is available to others.
angular/angular-core-annotation.Visibility.LOCAL - the directive can be injected into other directives on the same DOM\n element.
angular/angular-core-annotation.Visibility.CHILDREN - the directive can be injected into other directives on the same or\n child DOM elements (default).
angular/angular-core-annotation.Visibility.DIRECT_CHILD - the directive can be injected into other directives on the direct\n children of the current DOM element.
Get a hash code for this object.
\nAll objects have hash codes. Hash codes are guaranteed to be the\nsame for objects that are equal when compared using the equality\noperator ==
. Other than that there are no guarantees about\nthe hash codes. They will not be consistent between runs and\nthere are no distribution guarantees.
If a subclass overrides angular/angular-core-annotation.Component.hashCode it should override the\nequality operator as well to maintain consistency.
","commentFrom":"","inheritedFrom":"dart-core.Object.hashCode","static":false,"abstract":false,"constant":false,"return":[{"outer":"dart-core.int","inner":[]}],"parameters":{},"annotations":[]},"runtimeType":{"name":"runtimeType","qualifiedName":"angular/angular-core-annotation.Component.runtimeType","comment":"A representation of the runtime type of the object.
","commentFrom":"","inheritedFrom":"dart-core.Object.runtimeType","static":false,"abstract":false,"constant":false,"return":[{"outer":"dart-core.Type","inner":[]}],"parameters":{},"annotations":[]}},"constructors":{},"operators":{"==":{"name":"==","qualifiedName":"angular/angular-core-annotation.Component.==","comment":"The equality operator.
\nThe default behavior for all dart-core.Objects is to return true if and\nonly if this
and angular/angular-core-annotation.Component.==.other are the same object.
Override this method to specify a different equality relation on\na class. The overriding method must still be an equivalence relation.\nThat is, it must be:
Total: It must return a boolean for all arguments. It should never throw\n or return null
.
Reflexive: For all objects o
, o == o
must be true.
Symmetric: For all objects o1
and o2
, o1 == o2
and o2 == o1
must\n either both be true, or both be false.
Transitive: For all objects o1
, o2
, and o3
, if o1 == o2
and\n o2 == o3
are true, then o1 == o3
must be true.
The method should also be consistent over time, so equality of two objects\nshould not change over time, or at least only change if one of the objects\nwas modified.
\nIf a subclass overrides the equality operator it should override\nthe angular/angular-core-annotation.Component.hashCode method as well to maintain consistency.
","commentFrom":"","inheritedFrom":"dart-core.Object.==","static":false,"abstract":false,"constant":false,"return":[{"outer":"dart-core.bool","inner":[]}],"parameters":{"other":{"name":"other","optional":false,"named":false,"default":false,"type":[{"outer":"dynamic","inner":[]}],"value":null,"annotations":[]}},"annotations":[]}},"methods":{"noSuchMethod":{"name":"noSuchMethod","qualifiedName":"angular/angular-core-annotation.Component.noSuchMethod","comment":"angular/angular-core-annotation.Component.noSuchMethod is invoked when users invoke a non-existent method\non an object. The name of the method and the arguments of the\ninvocation are passed to angular/angular-core-annotation.Component.noSuchMethod in an dart-core.Invocation.\nIf angular/angular-core-annotation.Component.noSuchMethod returns a value, that value becomes the result of\nthe original invocation.
\nThe default behavior of angular/angular-core-annotation.Component.noSuchMethod is to throw a\ndart-core.NoSuchMethodError.
","commentFrom":"","inheritedFrom":"dart-core.Object.noSuchMethod","static":false,"abstract":false,"constant":false,"return":[{"outer":"dynamic","inner":[]}],"parameters":{"invocation":{"name":"invocation","optional":false,"named":false,"default":false,"type":[{"outer":"dart-core.Invocation","inner":[]}],"value":null,"annotations":[]}},"annotations":[]},"toString":{"name":"toString","qualifiedName":"angular/angular-core-annotation.Component.toString","comment":"Returns a string representation of this object.
","commentFrom":"dart-core.Object.toString","inheritedFrom":"angular-core-annotation.Directive.toString","static":false,"abstract":false,"constant":false,"return":[{"outer":"dart-core.String","inner":[]}],"parameters":{},"annotations":[]}}},"annotations":[],"generics":{}}