From af8c852edbddf4853c4e6a64f0d8ef716767f201 Mon Sep 17 00:00:00 2001 From: Naomi Black Date: Fri, 19 Jun 2015 12:08:22 -0700 Subject: [PATCH] docs(api): updates for alpha-27 (plus a few interim additions pre-28) --- .../api/annotations/Ancestor-class.jade | 72 -- .../latest/api/annotations/Ancestor-var.jade | 1 + .../api/annotations/Attribute-class.jade | 70 -- .../latest/api/annotations/Attribute-var.jade | 1 + .../api/annotations/Component-class.jade | 191 ----- .../latest/api/annotations/Component-var.jade | 2 + .../ComponentAnnotation-class.jade | 114 +-- .../annotations/ComponentArgs-interface.jade | 48 ++ .../ComponentTypeDecorator-interface.jade | 26 + .../api/annotations/Directive-class.jade | 701 ------------------ .../latest/api/annotations/Directive-var.jade | 2 + .../DirectiveAnnotation-class.jade | 608 +++++++-------- .../annotations/DirectiveArgs-interface.jade | 113 +++ .../DirectiveTypeDecorator-interface.jade | 8 + .../latest/api/annotations/Parent-class.jade | 59 -- .../js/latest/api/annotations/Parent-var.jade | 1 + .../latest/api/annotations/Query-class.jade | 37 - .../js/latest/api/annotations/Query-var.jade | 1 + .../js/latest/api/annotations/Self-var.jade | 1 + .../latest/api/annotations/Unbounded-var.jade | 1 + .../js/latest/api/annotations/View-class.jade | 132 ---- .../js/latest/api/annotations/View-var.jade | 2 + .../ViewTypeDecorator-interface.jade | 26 + .../docs/js/latest/api/annotations/_data.json | 24 +- .../docs/js/latest/api/annotations/index.jade | 2 +- .../annotations/onAllChangesDone-const.jade | 4 +- .../api/annotations/onAllChangesDone-var.jade | 24 - .../api/annotations/onChange-const.jade | 1 + .../latest/api/annotations/onChange-var.jade | 40 - .../latest/api/annotations/onCheck-const.jade | 1 + .../api/annotations/onDestroy-const.jade | 1 + .../latest/api/annotations/onDestroy-var.jade | 23 - .../latest/api/annotations/onInit-const.jade | 1 + .../api/change_detection/AST-class.jade | 72 +- .../change_detection/ASTWithSource-class.jade | 110 +-- .../change_detection/AccessMember-class.jade | 106 +-- .../AstTransformer-class.jade | 307 ++++---- .../change_detection/BindingRecord-class.jade | 194 ++--- .../api/change_detection/CHECKED-const.jade | 1 + .../change_detection/CHECK_ALWAYS-const.jade | 1 + .../change_detection/CHECK_ONCE-const.jade | 1 + .../ChangeDetection-class.jade | 5 +- .../ChangeDetectionError-class.jade | 6 +- ...ass.jade => ChangeDetector-interface.jade} | 222 +++--- .../ChangeDetectorDefinition-class.jade | 56 +- .../ChangeDetectorRef-class.jade | 40 +- .../ChangeDispatcher-class.jade | 26 - .../ChangeDispatcher-interface.jade | 43 ++ .../api/change_detection/DEFAULT-const.jade | 1 + .../api/change_detection/DETACHED-const.jade | 1 + .../DehydratedException-class.jade | 24 + .../DirectiveIndex-class.jade | 30 +- .../DirectiveRecord-class.jade | 32 +- .../DynamicChangeDetection-class.jade | 30 +- .../DynamicChangeDetector-class.jade | 334 ++++----- .../DynamicProtoChangeDetector-class.jade | 4 +- ...ionChangedAfterItHasBeenChecked-class.jade | 2 +- .../ImplicitReceiver-class.jade | 6 +- .../JitChangeDetection-class.jade | 34 +- .../JitProtoChangeDetector-class.jade | 54 -- .../api/change_detection/Lexer-class.jade | 2 +- .../api/change_detection/LifeCycle-class.jade | 64 -- .../change_detection/LiteralArray-class.jade | 42 +- .../api/change_detection/Locals-class.jade | 64 +- .../api/change_detection/NullPipe-class.jade | 17 +- .../NullPipeFactory-class.jade | 36 +- .../api/change_detection/ON_PUSH-const.jade | 1 + .../api/change_detection/Parser-class.jade | 42 +- .../api/change_detection/Pipe-class.jade | 10 +- .../change_detection/PipeFactory-class.jade | 36 +- .../change_detection/PipeRegistry-class.jade | 4 +- .../PreGeneratedChangeDetection-class.jade | 30 +- ...ade => ProtoChangeDetector-interface.jade} | 2 +- .../change_detection/WrappedValue-class.jade | 4 +- .../js/latest/api/change_detection/_data.json | 20 +- .../defaultPipeRegistry-var.jade | 1 + .../change_detection/defaultPipes-var.jade | 1 + .../js/latest/api/change_detection/index.jade | 2 +- .../preGeneratedProtoDetectors-var.jade | 4 + .../change_detection/uninitialized-var.jade | 1 + .../api/core/AncestorAnnotation-class.jade | 24 +- .../latest/api/core/ApplicationRef-class.jade | 14 +- .../api/core/AttributeAnnotation-class.jade | 21 +- .../js/latest/api/core/Compiler-class.jade | 21 +- .../latest/api/core/CompilerCache-class.jade | 59 +- .../latest/api/core/ComponentRef-class.jade | 56 +- .../api/core/DirectiveResolver-class.jade | 2 +- .../core/DynamicComponentLoader-class.jade | 40 +- .../js/latest/api/core/ElementRef-class.jade | 28 +- .../api/core/ExceptionHandler-class.jade | 49 -- .../docs/js/latest/api/core/NgZone-class.jade | 17 +- .../api/core/OnAllChangesDone-interface.jade | 2 +- .../latest/api/core/OnChange-interface.jade | 2 +- .../js/latest/api/core/OnCheck-interface.jade | 2 +- .../latest/api/core/OnDestroy-interface.jade | 2 +- .../js/latest/api/core/OnInit-interface.jade | 2 +- .../api/core/ParentAnnotation-class.jade | 21 +- .../latest/api/core/ProtoViewRef-class.jade | 4 +- .../api/core/QueryAnnotation-class.jade | 62 +- .../js/latest/api/core/QueryList-class.jade | 19 +- .../latest/api/core/SelfAnnotation-class.jade | 19 +- .../api/core/UnboundedAnnotation-class.jade | 27 +- .../latest/api/core/ViewAnnotation-class.jade | 104 ++- .../latest/api/core/ViewArgs-interface.jade | 87 +++ .../api/core/ViewContainerRef-class.jade | 166 ++--- .../js/latest/api/core/ViewRef-class.jade | 4 +- .../js/latest/api/core/VmTurnZone-class.jade | 106 --- public/docs/js/latest/api/core/_data.json | 4 + .../api/core/appComponentRefToken-var.jade | 1 + .../api/core/appComponentTypeToken-var.jade | 1 + .../latest/api/core/bootstrap-function.jade | 4 +- public/docs/js/latest/api/core/index.jade | 2 +- .../api/di/AbstractBindingError-class.jade | 66 +- .../api/di/AsyncBindingError-class.jade | 2 +- .../docs/js/latest/api/di/Binding-class.jade | 172 ++--- .../latest/api/di/BindingBuilder-class.jade | 186 ++--- .../api/di/CyclicDependencyError-class.jade | 2 +- .../js/latest/api/di/Dependency-class.jade | 30 +- .../api/di/DependencyAnnotation-class.jade | 2 +- .../js/latest/api/di/FORWARD_REF-var.jade | 10 - .../latest/api/di/ForwardRefFn-interface.jade | 2 +- public/docs/js/latest/api/di/Inject-var.jade | 1 + .../latest/api/di/InjectAnnotation-class.jade | 21 +- .../docs/js/latest/api/di/InjectLazy-var.jade | 1 + .../api/di/InjectLazyAnnotation-class.jade | 21 +- .../js/latest/api/di/InjectPromise-var.jade | 1 + .../api/di/InjectPromiseAnnotation-class.jade | 21 +- .../docs/js/latest/api/di/Injectable-var.jade | 1 + .../api/di/InjectableAnnotation-class.jade | 2 +- .../docs/js/latest/api/di/Injector-class.jade | 68 +- .../api/di/InstantiationError-class.jade | 2 +- .../api/di/InvalidBindingError-class.jade | 2 +- public/docs/js/latest/api/di/Key-class.jade | 6 +- .../js/latest/api/di/KeyRegistry-class.jade | 17 +- .../api/di/NoAnnotationError-class.jade | 30 +- .../latest/api/di/NoBindingError-class.jade | 2 +- .../js/latest/api/di/OpaqueToken-class.jade | 2 +- .../docs/js/latest/api/di/Optional-var.jade | 1 + .../api/di/OptionalAnnotation-class.jade | 20 +- .../latest/api/di/ResolvedBinding-class.jade | 24 +- .../js/latest/api/di/TypeLiteral-class.jade | 2 +- public/docs/js/latest/api/di/_data.json | 4 - .../docs/js/latest/api/di/bind-function.jade | 2 +- .../js/latest/api/di/forwardRef-function.jade | 2 +- public/docs/js/latest/api/di/index.jade | 2 +- .../api/di/resolveBindings-function.jade | 2 +- .../api/di/resolveForwardRef-function.jade | 2 +- .../latest/api/directives/CSSClass-class.jade | 2 +- .../js/latest/api/directives/For-class.jade | 138 ---- .../js/latest/api/directives/If-class.jade | 93 --- .../js/latest/api/directives/NgFor-class.jade | 54 +- .../js/latest/api/directives/NgIf-class.jade | 32 +- .../api/directives/NgNonBindable-class.jade | 2 +- .../latest/api/directives/NgSwitch-class.jade | 2 +- .../api/directives/NgSwitchDefault-class.jade | 4 +- .../api/directives/NgSwitchWhen-class.jade | 30 +- .../api/directives/NonBindable-class.jade | 18 - .../latest/api/directives/Switch-class.jade | 61 -- .../api/directives/SwitchDefault-class.jade | 31 - .../api/directives/SwitchView-class.jade | 2 +- .../api/directives/SwitchWhen-class.jade | 67 -- .../api/directives/coreDirectives-const.jade | 1 + .../docs/js/latest/api/directives/index.jade | 2 +- .../api/forms/AbstractControl-class.jade | 234 ++++-- .../CheckboxControlValueAccessor-class.jade | 84 ++- .../js/latest/api/forms/Control-class.jade | 23 +- .../latest/api/forms/ControlArray-class.jade | 68 +- .../api/forms/ControlDirective-class.jade | 76 -- .../latest/api/forms/ControlGroup-class.jade | 89 +-- .../forms/ControlGroupDirective-class.jade | 120 --- .../api/forms/ControlNameDirective-class.jade | 111 --- .../forms/ControlValueAccessor-interface.jade | 56 +- .../api/forms/DefaultValueAccessor-class.jade | 111 ++- .../latest/api/forms/FormBuilder-class.jade | 12 +- .../api/forms/FormControlDirective-class.jade | 39 - .../latest/api/forms/FormDirectives-var.jade | 12 - .../api/forms/FormModelDirective-class.jade | 161 ---- .../js/latest/api/forms/INVALID-const.jade | 1 + .../docs/js/latest/api/forms/INVALID-var.jade | 10 - .../js/latest/api/forms/NgControl-class.jade | 108 +++ .../api/forms/NgControlGroup-class.jade | 118 +++ .../latest/api/forms/NgControlName-class.jade | 193 +++++ .../js/latest/api/forms/NgForm-class.jade | 263 +++++++ .../latest/api/forms/NgFormControl-class.jade | 165 +++++ .../latest/api/forms/NgFormModel-class.jade | 288 +++++++ .../js/latest/api/forms/NgModel-class.jade | 108 +++ ...ss.jade => NgRequiredValidator-class.jade} | 4 +- .../SelectControlValueAccessor-class.jade | 113 ++- .../TemplateDrivenFormDirective-class.jade | 157 ---- .../docs/js/latest/api/forms/VALID-const.jade | 1 + .../docs/js/latest/api/forms/VALID-var.jade | 10 - .../js/latest/api/forms/Validators-class.jade | 2 +- public/docs/js/latest/api/forms/_data.json | 40 +- .../api/forms/formDirectives-const.jade | 1 + .../api/forms/formInjectables-const.jade | 11 + public/docs/js/latest/api/forms/index.jade | 2 +- .../latest/api/forms/isControl-function.jade | 2 +- .../api/http/BaseRequestOptions-class.jade | 40 + .../js/latest/api/http/Headers-class.jade | 197 +++++ .../docs/js/latest/api/http/Http-class.jade | 199 +++++ .../latest/api/http/HttpFactory-function.jade | 38 + .../js/latest/api/http/IHttp-interface.jade | 26 + .../js/latest/api/http/MockBackend-class.jade | 195 +++++ .../latest/api/http/MockConnection-class.jade | 160 ++++ .../js/latest/api/http/Request-class.jade | 122 +++ .../latest/api/http/RequestOptions-class.jade | 132 ++++ .../js/latest/api/http/Response-class.jade | 239 ++++++ .../js/latest/api/http/XHRBackend-class.jade | 64 ++ .../latest/api/http/XHRConnection-class.jade | 90 +++ public/docs/js/latest/api/http/_data.json | 58 ++ .../latest/api/http/httpInjectables-var.jade | 25 + public/docs/js/latest/api/http/index.jade | 11 + .../js/latest/api/pipes/AsyncPipe-class.jade | 90 --- .../api/pipes/AsyncPipeFactory-class.jade | 55 -- .../pipes/CollectionChangeRecord-class.jade | 74 -- .../api/pipes/IterableChanges-class.jade | 114 +-- .../js/latest/api/pipes/JsonPipe-class.jade | 51 +- .../api/pipes/KVChangeRecord-class.jade | 74 -- .../api/pipes/KeyValueChanges-class.jade | 99 ++- .../pipes/KeyValueChangesFactory-class.jade | 54 -- .../latest/api/pipes/LowerCasePipe-class.jade | 25 +- .../js/latest/api/pipes/NullPipe-class.jade | 82 -- .../api/pipes/NullPipeFactory-class.jade | 54 -- .../api/pipes/ObservablePipe-class.jade | 38 +- .../docs/js/latest/api/pipes/Pipe-class.jade | 73 -- .../latest/api/pipes/PromisePipe-class.jade | 38 +- .../latest/api/pipes/UpperCasePipe-class.jade | 25 +- .../latest/api/pipes/WrappedValue-class.jade | 53 -- .../docs/js/latest/api/pipes/async-var.jade | 10 - public/docs/js/latest/api/pipes/index.jade | 2 +- .../js/latest/api/pipes/iterableDiff-var.jade | 10 - .../js/latest/api/pipes/keyValDiff-var.jade | 10 - .../api/router/BrowserLocation-class.jade | 76 +- .../js/latest/api/router/Location-class.jade | 82 +- .../js/latest/api/router/Pipeline-class.jade | 36 +- .../latest/api/router/RootRouter-class.jade | 4 +- .../js/latest/api/router/RouteConfig-var.jade | 1 + .../router/RouteConfigAnnotation-class.jade | 43 -- .../latest/api/router/RouteParams-class.jade | 38 +- .../api/router/RouteRegistry-class.jade | 43 +- .../js/latest/api/router/Router-class.jade | 333 ++++----- .../latest/api/router/RouterLink-class.jade | 35 +- .../latest/api/router/RouterOutlet-class.jade | 49 +- public/docs/js/latest/api/router/_data.json | 8 +- .../api/router/appBaseHrefToken-const.jade | 11 + public/docs/js/latest/api/router/index.jade | 2 +- .../api/router/routerDirectives-const.jade | 1 + .../api/router/routerInjectables-var.jade | 1 + .../test/FunctionWithParamTokens-class.jade | 2 +- .../js/latest/api/test/TestBed-class.jade | 89 +-- .../js/latest/api/test/ViewProxy-class.jade | 38 +- .../api/test/createTestInjector-function.jade | 2 +- public/docs/js/latest/api/test/index.jade | 2 +- .../js/latest/api/test/inject-function.jade | 4 +- 254 files changed, 6659 insertions(+), 6366 deletions(-) delete mode 100644 public/docs/js/latest/api/annotations/Ancestor-class.jade delete mode 100644 public/docs/js/latest/api/annotations/Attribute-class.jade delete mode 100644 public/docs/js/latest/api/annotations/Component-class.jade create mode 100644 public/docs/js/latest/api/annotations/ComponentArgs-interface.jade create mode 100644 public/docs/js/latest/api/annotations/ComponentTypeDecorator-interface.jade delete mode 100644 public/docs/js/latest/api/annotations/Directive-class.jade create mode 100644 public/docs/js/latest/api/annotations/DirectiveArgs-interface.jade create mode 100644 public/docs/js/latest/api/annotations/DirectiveTypeDecorator-interface.jade delete mode 100644 public/docs/js/latest/api/annotations/Parent-class.jade delete mode 100644 public/docs/js/latest/api/annotations/Query-class.jade delete mode 100644 public/docs/js/latest/api/annotations/View-class.jade create mode 100644 public/docs/js/latest/api/annotations/ViewTypeDecorator-interface.jade delete mode 100644 public/docs/js/latest/api/annotations/onAllChangesDone-var.jade delete mode 100644 public/docs/js/latest/api/annotations/onChange-var.jade delete mode 100644 public/docs/js/latest/api/annotations/onDestroy-var.jade rename public/docs/js/latest/api/change_detection/{ChangeDetector-class.jade => ChangeDetector-interface.jade} (90%) delete mode 100644 public/docs/js/latest/api/change_detection/ChangeDispatcher-class.jade create mode 100644 public/docs/js/latest/api/change_detection/ChangeDispatcher-interface.jade create mode 100644 public/docs/js/latest/api/change_detection/DehydratedException-class.jade delete mode 100644 public/docs/js/latest/api/change_detection/JitProtoChangeDetector-class.jade delete mode 100644 public/docs/js/latest/api/change_detection/LifeCycle-class.jade rename public/docs/js/latest/api/change_detection/{ProtoChangeDetector-class.jade => ProtoChangeDetector-interface.jade} (60%) delete mode 100644 public/docs/js/latest/api/core/ExceptionHandler-class.jade create mode 100644 public/docs/js/latest/api/core/ViewArgs-interface.jade delete mode 100644 public/docs/js/latest/api/core/VmTurnZone-class.jade delete mode 100644 public/docs/js/latest/api/di/FORWARD_REF-var.jade delete mode 100644 public/docs/js/latest/api/directives/For-class.jade delete mode 100644 public/docs/js/latest/api/directives/If-class.jade delete mode 100644 public/docs/js/latest/api/directives/NonBindable-class.jade delete mode 100644 public/docs/js/latest/api/directives/Switch-class.jade delete mode 100644 public/docs/js/latest/api/directives/SwitchDefault-class.jade delete mode 100644 public/docs/js/latest/api/directives/SwitchWhen-class.jade delete mode 100644 public/docs/js/latest/api/forms/ControlDirective-class.jade delete mode 100644 public/docs/js/latest/api/forms/ControlGroupDirective-class.jade delete mode 100644 public/docs/js/latest/api/forms/ControlNameDirective-class.jade delete mode 100644 public/docs/js/latest/api/forms/FormControlDirective-class.jade delete mode 100644 public/docs/js/latest/api/forms/FormDirectives-var.jade delete mode 100644 public/docs/js/latest/api/forms/FormModelDirective-class.jade delete mode 100644 public/docs/js/latest/api/forms/INVALID-var.jade create mode 100644 public/docs/js/latest/api/forms/NgControl-class.jade create mode 100644 public/docs/js/latest/api/forms/NgControlGroup-class.jade create mode 100644 public/docs/js/latest/api/forms/NgControlName-class.jade create mode 100644 public/docs/js/latest/api/forms/NgForm-class.jade create mode 100644 public/docs/js/latest/api/forms/NgFormControl-class.jade create mode 100644 public/docs/js/latest/api/forms/NgFormModel-class.jade create mode 100644 public/docs/js/latest/api/forms/NgModel-class.jade rename public/docs/js/latest/api/forms/{RequiredValidatorDirective-class.jade => NgRequiredValidator-class.jade} (50%) delete mode 100644 public/docs/js/latest/api/forms/TemplateDrivenFormDirective-class.jade delete mode 100644 public/docs/js/latest/api/forms/VALID-var.jade create mode 100644 public/docs/js/latest/api/forms/formInjectables-const.jade create mode 100644 public/docs/js/latest/api/http/BaseRequestOptions-class.jade create mode 100644 public/docs/js/latest/api/http/Headers-class.jade create mode 100644 public/docs/js/latest/api/http/Http-class.jade create mode 100644 public/docs/js/latest/api/http/HttpFactory-function.jade create mode 100644 public/docs/js/latest/api/http/IHttp-interface.jade create mode 100644 public/docs/js/latest/api/http/MockBackend-class.jade create mode 100644 public/docs/js/latest/api/http/MockConnection-class.jade create mode 100644 public/docs/js/latest/api/http/Request-class.jade create mode 100644 public/docs/js/latest/api/http/RequestOptions-class.jade create mode 100644 public/docs/js/latest/api/http/Response-class.jade create mode 100644 public/docs/js/latest/api/http/XHRBackend-class.jade create mode 100644 public/docs/js/latest/api/http/XHRConnection-class.jade create mode 100644 public/docs/js/latest/api/http/_data.json create mode 100644 public/docs/js/latest/api/http/httpInjectables-var.jade create mode 100644 public/docs/js/latest/api/http/index.jade delete mode 100644 public/docs/js/latest/api/pipes/AsyncPipe-class.jade delete mode 100644 public/docs/js/latest/api/pipes/AsyncPipeFactory-class.jade delete mode 100644 public/docs/js/latest/api/pipes/CollectionChangeRecord-class.jade delete mode 100644 public/docs/js/latest/api/pipes/KVChangeRecord-class.jade delete mode 100644 public/docs/js/latest/api/pipes/KeyValueChangesFactory-class.jade delete mode 100644 public/docs/js/latest/api/pipes/NullPipe-class.jade delete mode 100644 public/docs/js/latest/api/pipes/NullPipeFactory-class.jade delete mode 100644 public/docs/js/latest/api/pipes/Pipe-class.jade delete mode 100644 public/docs/js/latest/api/pipes/WrappedValue-class.jade delete mode 100644 public/docs/js/latest/api/pipes/async-var.jade delete mode 100644 public/docs/js/latest/api/pipes/iterableDiff-var.jade delete mode 100644 public/docs/js/latest/api/pipes/keyValDiff-var.jade delete mode 100644 public/docs/js/latest/api/router/RouteConfigAnnotation-class.jade create mode 100644 public/docs/js/latest/api/router/appBaseHrefToken-const.jade diff --git a/public/docs/js/latest/api/annotations/Ancestor-class.jade b/public/docs/js/latest/api/annotations/Ancestor-class.jade deleted file mode 100644 index 1397f550a4..0000000000 --- a/public/docs/js/latest/api/annotations/Ancestor-class.jade +++ /dev/null @@ -1,72 +0,0 @@ - -p.location-badge. - exported from angular2/annotations - defined in angular2/src/core/annotations_impl/visibility.js (line 105) - -:markdown - Specifies that an injector should retrieve a dependency from any ancestor element. - - An ancestor is any element between the parent element and shadow root. - - - ## Example - - Here is a simple directive that retrieves a dependency from an ancestor element. - - ``` - @Directive({ - selector: '[dependency]', - properties: { - 'id':'dependency' - } - }) - class Dependency { - id:string; - } - - - @Directive({ - selector: '[my-directive]' - }) - class Dependency { - constructor(@Ancestor() dependency:Dependency) { - expect(dependency.id).toEqual(2); - }; - } - ``` - - We use this with the following HTML template: - - ``` -
-
-
-
-
-
-
- ``` - - The `@Ancestor()` annotation in our constructor forces the injector to retrieve the dependency from the - nearest ancestor element: - - The current element `dependency="3"` is skipped because it is not an ancestor. - - Next parent has no directives `
` - - Next parent has the `Dependency` directive and so the dependency is satisfied. - - Angular injects `dependency=2`. - -.l-main-section - h2 Members - .l-sub-section - h3 constructor - - - pre.prettyprint - code. - constructor() - - :markdown - - - - diff --git a/public/docs/js/latest/api/annotations/Ancestor-var.jade b/public/docs/js/latest/api/annotations/Ancestor-var.jade index d1728743d2..20e5c70a94 100644 --- a/public/docs/js/latest/api/annotations/Ancestor-var.jade +++ b/public/docs/js/latest/api/annotations/Ancestor-var.jade @@ -3,6 +3,7 @@ h2 Ancestor variable p.location-badge. exported from angular2/annotations + defined in angular2/src/core/annotations/decorators.ts (line 52) :markdown diff --git a/public/docs/js/latest/api/annotations/Attribute-class.jade b/public/docs/js/latest/api/annotations/Attribute-class.jade deleted file mode 100644 index 68a8010a4b..0000000000 --- a/public/docs/js/latest/api/annotations/Attribute-class.jade +++ /dev/null @@ -1,70 +0,0 @@ - -p.location-badge. - exported from angular2/annotations - defined in angular2/src/core/annotations_impl/di.js (line 31) - -:markdown - Specifies that a constant attribute value should be injected. - - The directive can inject constant string literals of host element attributes. - - ## Example - - Suppose we have an `` element and want to know its `type`. - - ```html - - ``` - - A decorator can inject string literal `text` like so: - - ```javascript - @Directive({ - selector: `input' - }) - class InputDirective { - constructor(@Attribute('type') type) { - // type would be `text` in this example - } - } - ``` - -.l-main-section - h2 Members - .l-sub-section - h3 constructor - - - pre.prettyprint - code. - constructor(attributeName) - - :markdown - - - - - - .l-sub-section - h3 attributeName - - - :markdown - - - - - - - - .l-sub-section - h3 token - - - :markdown - - - - - - diff --git a/public/docs/js/latest/api/annotations/Attribute-var.jade b/public/docs/js/latest/api/annotations/Attribute-var.jade index 4b6462f6a3..69cc8b0141 100644 --- a/public/docs/js/latest/api/annotations/Attribute-var.jade +++ b/public/docs/js/latest/api/annotations/Attribute-var.jade @@ -3,6 +3,7 @@ h2 Attribute variable p.location-badge. exported from angular2/annotations + defined in angular2/src/core/annotations/decorators.ts (line 56) :markdown diff --git a/public/docs/js/latest/api/annotations/Component-class.jade b/public/docs/js/latest/api/annotations/Component-class.jade deleted file mode 100644 index cf6bcf58ff..0000000000 --- a/public/docs/js/latest/api/annotations/Component-class.jade +++ /dev/null @@ -1,191 +0,0 @@ - -p.location-badge. - exported from angular2/annotations - defined in angular2/src/core/annotations_impl/annotations.js (line 732) - -:markdown - Declare reusable UI building blocks for an application. - - Each Angular component requires a single `@Component` and at least one `@View` annotation. The `@Component` - annotation specifies when a component is instantiated, and which properties and hostListeners it binds to. - - When a component is instantiated, Angular - - creates a shadow DOM for the component. - - loads the selected template into the shadow DOM. - - creates a child Injector which is configured with the `injectables` for the Component. - - All template expressions and statements are then evaluated against the component instance. - - For details on the `@View` annotation, see View. - - ## Example - - ``` - @Component({ - selector: 'greet' - }) - @View({ - template: 'Hello {{name}}!' - }) - class Greet { - name: string; - - constructor() { - this.name = 'World'; - } - } - ``` - - - Dynamically loading a component at runtime: - - Regular Angular components are statically resolved. Dynamic components allows to resolve a component at runtime - instead by providing a placeholder into which a regular Angular component can be dynamically loaded. Once loaded, - the dynamically-loaded component becomes permanent and cannot be changed. - Dynamic components are declared just like components, but without a `@View` annotation. - - - ## Example - - Here we have `DynamicComp` which acts as the placeholder for `HelloCmp`. At runtime, the dynamic component - `DynamicComp` requests loading of the `HelloCmp` component. - - There is nothing special about `HelloCmp`, which is a regular Angular component. It can also be used in other static - locations. - - ``` - @Component({ - selector: 'dynamic-comp' - }) - class DynamicComp { - helloCmp:HelloCmp; - constructor(loader:DynamicComponentLoader, location:ElementRef) { - loader.load(HelloCmp, location).then((helloCmp) => { - this.helloCmp = helloCmp; - }); - } - } - - @Component({ - selector: 'hello-cmp' - }) - @View({ - template: "{{greeting}}" - }) - class HelloCmp { - greeting:string; - constructor() { - this.greeting = "hello"; - } - } - ``` - - -.l-main-section - h2 Members - .l-sub-section - h3 constructor - - - pre.prettyprint - code. - constructor({ - selector, - properties, - events, - hostListeners, - hostProperties, - injectables, - lifecycle, - changeDetection = DEFAULT, - compileChildren = true, - }:{ - selector:string, - properties:Object, - events:List, - hostListeners:any, - hostProperties:any, - injectables:List, - lifecycle:List, - changeDetection:string, - compileChildren:boolean - }={}) - - :markdown - - - - - - .l-sub-section - h3 changeDetection - - - :markdown - - Defines the used change detection strategy. - - When a component is instantiated, Angular creates a change detector, which is responsible for propagating - the component's bindings. - - The `changeDetection` property defines, whether the change detection will be checked every time or only when the component - tells it to do so. - - - - - - .l-sub-section - h3 injectables - - - :markdown - - Defines the set of injectable objects that are visible to a Component and its children. - - The `injectables` defined in the Component annotation allow you to configure a set of bindings for the component's - injector. - - When a component is instantiated, Angular creates a new child Injector, which is configured with the bindings in - the Component `injectables` annotation. The injectable objects then become available for injection to the component - itself and any of the directives in the component's template, i.e. they are not available to the directives which - are children in the component's light DOM. - - - The syntax for configuring the `injectables` injectable is identical to Injector injectable configuration. - See Injector for additional detail. - - - ## Simple Example - - Here is an example of a class that can be injected: - - ``` - class Greeter { - greet(name:string) { - return 'Hello ' + name + '!'; - } - } - - @Component({ - selector: 'greet', - injectables: [ - Greeter - ] - }) - @View({ - template: `{{greeter.greet('world')}}!`, - directives: Child - }) - class HelloWorld { - greeter:Greeter; - - constructor(greeter:Greeter) { - this.greeter = greeter; - } - } - ``` - - - - diff --git a/public/docs/js/latest/api/annotations/Component-var.jade b/public/docs/js/latest/api/annotations/Component-var.jade index 4f4977737f..3b60ddc46a 100644 --- a/public/docs/js/latest/api/annotations/Component-var.jade +++ b/public/docs/js/latest/api/annotations/Component-var.jade @@ -3,8 +3,10 @@ h2 Component variable p.location-badge. exported from angular2/annotations + defined in angular2/src/core/annotations/decorators.ts (line 43) :markdown + diff --git a/public/docs/js/latest/api/annotations/ComponentAnnotation-class.jade b/public/docs/js/latest/api/annotations/ComponentAnnotation-class.jade index 38f123e16c..cb79d9b790 100644 --- a/public/docs/js/latest/api/annotations/ComponentAnnotation-class.jade +++ b/public/docs/js/latest/api/annotations/ComponentAnnotation-class.jade @@ -1,7 +1,7 @@ p.location-badge. exported from angular2/annotations - defined in angular2/src/core/annotations_impl/annotations.ts (line 776) + defined in angular2/src/core/annotations_impl/annotations.ts (line 812) :markdown Declare reusable UI building blocks for an application. @@ -40,54 +40,6 @@ p.location-badge. ``` - Dynamically loading a component at runtime: - - Regular Angular components are statically resolved. Dynamic components allows to resolve a - component at runtime - instead by providing a placeholder into which a regular Angular component can be dynamically - loaded. Once loaded, - the dynamically-loaded component becomes permanent and cannot be changed. - Dynamic components are declared just like components, but without a `@View` annotation. - - - ## Example - - Here we have `DynamicComp` which acts as the placeholder for `HelloCmp`. At runtime, the dynamic - component - `DynamicComp` requests loading of the `HelloCmp` component. - - There is nothing special about `HelloCmp`, which is a regular Angular component. It can also be - used in other static - locations. - - ``` - @Component({ - selector: 'dynamic-comp' - }) - class DynamicComp { - helloCmp:HelloCmp; - constructor(loader:DynamicComponentLoader, location:ElementRef) { - loader.load(HelloCmp, location).then((helloCmp) => { - this.helloCmp = helloCmp; - }); - } - } - - @Component({ - selector: 'hello-cmp' - }) - @View({ - template: "{{greeting}}" - }) - class HelloCmp { - greeting:string; - constructor() { - this.greeting = "hello"; - } - } - ``` - - .l-main-section h2 Members .l-sub-section @@ -96,23 +48,9 @@ p.location-badge. pre.prettyprint code. - constructor({selector, properties, events, hostListeners, hostProperties, hostAttributes, - hostActions, appInjector, lifecycle, hostInjector, viewInjector, - changeDetection = DEFAULT, compileChildren = true}: { - selector?: string, - properties?: List<string>, - events?: List<string>, - hostListeners?: StringMap<string, string>, - hostProperties?: StringMap<string, string>, - hostAttributes?: StringMap<string, string>, - hostActions?: StringMap<string, string>, - appInjector?: List<any>, - lifecycle?: List<LifecycleEvent>, - hostInjector?: List<any>, - viewInjector?: List<any>, - changeDetection?: string, - compileChildren?: boolean - } = {}) + constructor({selector, properties, events, host, exportAs, appInjector, lifecycle, hostInjector, + viewInjector, changeDetection = DEFAULT, + compileChildren = true}?: ComponentArgs) :markdown @@ -121,6 +59,28 @@ p.location-badge. + .l-sub-section + h3 changeDetection + + + :markdown + + Defines the used change detection strategy. + + When a component is instantiated, Angular creates a change detector, which is responsible for + propagating + the component's bindings. + + The `changeDetection` property defines, whether the change detection will be checked every time + or only when the component + tells it to do so. + + + + + + + .l-sub-section h3 appInjector @@ -183,28 +143,6 @@ p.location-badge. - .l-sub-section - h3 changeDetection - - - :markdown - - Defines the used change detection strategy. - - When a component is instantiated, Angular creates a change detector, which is responsible for - propagating - the component's bindings. - - The `changeDetection` property defines, whether the change detection will be checked every time - or only when the component - tells it to do so. - - - - - - - .l-sub-section h3 viewInjector diff --git a/public/docs/js/latest/api/annotations/ComponentArgs-interface.jade b/public/docs/js/latest/api/annotations/ComponentArgs-interface.jade new file mode 100644 index 0000000000..d5dc42b787 --- /dev/null +++ b/public/docs/js/latest/api/annotations/ComponentArgs-interface.jade @@ -0,0 +1,48 @@ + +p.location-badge. + exported from angular2/annotations + defined in angular2/src/core/annotations_impl/annotations.ts (line 981) + +:markdown + + +.l-main-section + h2 Members + .l-sub-section + h3 appInjector + + + :markdown + + + + + + + + + .l-sub-section + h3 viewInjector + + + :markdown + + + + + + + + + .l-sub-section + h3 changeDetection + + + :markdown + + + + + + + diff --git a/public/docs/js/latest/api/annotations/ComponentTypeDecorator-interface.jade b/public/docs/js/latest/api/annotations/ComponentTypeDecorator-interface.jade new file mode 100644 index 0000000000..2619941aa3 --- /dev/null +++ b/public/docs/js/latest/api/annotations/ComponentTypeDecorator-interface.jade @@ -0,0 +1,26 @@ + +p.location-badge. + exported from angular2/annotations + defined in angular2/src/core/annotations/decorators.ts (line 18) + +:markdown + + +.l-main-section + h2 Members + .l-sub-section + h3 View + + + pre.prettyprint + code. + View(obj: ViewArgs) + + :markdown + + + + + + + diff --git a/public/docs/js/latest/api/annotations/Directive-class.jade b/public/docs/js/latest/api/annotations/Directive-class.jade deleted file mode 100644 index a714392c37..0000000000 --- a/public/docs/js/latest/api/annotations/Directive-class.jade +++ /dev/null @@ -1,701 +0,0 @@ - -p.location-badge. - exported from angular2/annotations - defined in angular2/src/core/annotations_impl/annotations.js (line 371) - -:markdown - Directives allow you to attach behavior to elements in the DOM. - - Directives with an embedded view are called Components. - - A directive consists of a single directive annotation and a controller class. When the directive's `selector` matches - elements in the DOM, the following steps occur: - - 1. For each directive, the `ElementInjector` attempts to resolve the directive's constructor arguments. - 2. Angular instantiates directives for each matched element using `ElementInjector` in a depth-first order, - as declared in the HTML. - - ## Understanding How Injection Works - - There are three stages of injection resolution. - - *Pre-existing Injectors*: - - The terminal Injector cannot resolve dependencies. It either throws an error or, if the dependency was - specified as `@Optional`, returns `null`. - - The platform injector resolves browser singleton resources, such as: cookies, title, location, and others. - - *Component Injectors*: Each `@Component` has its own Injector, and they follow the same parent-child hierarchy - as the components in the DOM. - - *Element Injectors*: Each component has a Shadow DOM. Within the Shadow DOM each element has an `ElementInjector` - which follow the same parent-child hierarchy as the DOM elements themselves. - - When a template is instantiated, it also must instantiate the corresponding directives in a depth-first order. The - current `ElementInjector` resolves the constructor dependencies for each directive. - - Angular then resolves dependencies as follows, according to the order in which they appear in the View: - - 1. Dependencies on the current element - 2. Dependencies on element injectors and their parents until it encounters a Shadow DOM boundary - 3. Dependencies on component injectors and their parents until it encounters the root component - 4. Dependencies on pre-existing injectors - - - The `ElementInjector` can inject other directives, element-specific special objects, or it can delegate to the parent - injector. - - To inject other directives, declare the constructor parameter as: - - `directive:DirectiveType`: a directive on the current element only - - `@Ancestor() directive:DirectiveType`: any directive that matches the type between the current element and the - Shadow DOM root. Current element is not included in the resolution, therefore even if it could resolve it, it will - be ignored. - - `@Parent() directive:DirectiveType`: any directive that matches the type on a direct parent element only. - - `@Children query:Query`: A live collection of direct child directives (will be implemented in later release). - - `@Descendants query:Query`: A live collection of any child directives (will be implemented in later relaese). - - To inject element-specific special objects, declare the constructor parameter as: - - `element: ElementRef` to obtain a reference to logical element in the view. - - `viewContainer: ViewContainerRef` to control child template instantiation, for Directive directives only - - `bindingPropagation: BindingPropagation` to control change detection in a more granular way. - - ## Example - - The following example demonstrates how dependency injection resolves constructor arguments in practice. - - - Assume this HTML template: - - ``` -
-
-
-
-
-
-
-
-
-
- ``` - - With the following `dependency` decorator and `SomeService` injectable class. - - ``` - @Injectable() - class SomeService { - } - - @Directive({ - selector: '[dependency]', - properties: { - 'id':'dependency' - } - }) - class Dependency { - id:string; - } - ``` - - Let's step through the different ways in which `MyDirective` could be declared... - - - ### No injection - - Here the constructor is declared with no arguments, therefore nothing is injected into `MyDirective`. - - ``` - @Directive({ selector: '[my-directive]' }) - class MyDirective { - constructor() { - } - } - ``` - - This directive would be instantiated with no dependencies. - - - ### Component-level injection - - Directives can inject any injectable instance from the closest component injector or any of its parents. - - Here, the constructor declares a parameter, `someService`, and injects the `SomeService` type from the parent - component's injector. - ``` - @Directive({ selector: '[my-directive]' }) - class MyDirective { - constructor(someService: SomeService) { - } - } - ``` - - This directive would be instantiated with a dependency on `SomeService`. - - - ### Injecting a directive from the current element - - Directives can inject other directives declared on the current element. - - ``` - @Directive({ selector: '[my-directive]' }) - class MyDirective { - constructor(dependency: Dependency) { - expect(dependency.id).toEqual(3); - } - } - ``` - This directive would be instantiated with `Dependency` declared at the same element, in this case `dependency="3"`. - - - ### Injecting a directive from a direct parent element - - Directives can inject other directives declared on a direct parent element. By definition, a directive with a - `@Parent` annotation does not attempt to resolve dependencies for the current element, even if this would satisfy - the dependency. - - ``` - @Directive({ selector: '[my-directive]' }) - class MyDirective { - constructor(@Parent() dependency: Dependency) { - expect(dependency.id).toEqual(2); - } - } - ``` - This directive would be instantiated with `Dependency` declared at the parent element, in this case `dependency="2"`. - - - ### Injecting a directive from any ancestor elements - - Directives can inject other directives declared on any ancestor element (in the current Shadow DOM), i.e. on the - parent element and its parents. By definition, a directive with an `@Ancestor` annotation does not attempt to - resolve dependencies for the current element, even if this would satisfy the dependency. - - ``` - @Directive({ selector: '[my-directive]' }) - class MyDirective { - constructor(@Ancestor() dependency: Dependency) { - expect(dependency.id).toEqual(2); - } - } - ``` - - Unlike the `@Parent` which only checks the parent, `@Ancestor` checks the parent, as well as its - parents recursively. If `dependency="2"` didn't exist on the direct parent, this injection would have returned - `dependency="1"`. - - - ### Injecting a live collection of direct child directives - - - A directive can also query for other child directives. Since parent directives are instantiated before child - directives, a directive can't simply inject the list of child directives. Instead, the directive - injects a QueryList, which updates its contents as children are added, removed, or moved by a directive - that uses a ViewContainerRef such as a `for`, an `if`, or a `switch`. - - ``` - @Directive({ selector: '[my-directive]' }) - class MyDirective { - constructor(@Query(Marker) dependencies:QueryList) { - } - } - ``` - - This directive would be instantiated with a QueryList which contains `Dependency` 4 and 6. Here, `Dependency` - 5 would not be included, because it is not a direct child. - - ### Injecting a live collection of descendant directives - - Note: This is will be implemented in later release. () - - Similar to `@Children` above, but also includes the children of the child elements. - - ``` - @Directive({ selector: '[my-directive]' }) - class MyDirective { - constructor(@QueryDescendents(Marker) dependencies:QueryList) { - } - } - ``` - - This directive would be instantiated with a Query which would contain `Dependency` 4, 5 and 6. - - ### Optional injection - - The normal behavior of directives is to return an error when a specified dependency cannot be resolved. If you - would like to inject `null` on unresolved dependency instead, you can annotate that dependency with `@Optional()`. - This explicitly permits the author of a template to treat some of the surrounding directives as optional. - - ``` - @Directive({ selector: '[my-directive]' }) - class MyDirective { - constructor(@Optional() dependency:Dependency) { - } - } - ``` - - This directive would be instantiated with a `Dependency` directive found on the current element. If none can be - found, the injector supplies `null` instead of throwing an error. - - ## Example - - Here we use a decorator directive to simply define basic tool-tip behavior. - - ``` - @Directive({ - selector: '[tooltip]', - properties: { - 'text': 'tooltip' - }, - hostListeners: { - 'onmouseenter': 'onMouseEnter()', - 'onmouseleave': 'onMouseLeave()' - } - }) - class Tooltip{ - text:string; - overlay:Overlay; // NOT YET IMPLEMENTED - overlayManager:OverlayManager; // NOT YET IMPLEMENTED - - constructor(overlayManager:OverlayManager) { - this.overlay = overlay; - } - - onMouseEnter() { - // exact signature to be determined - this.overlay = this.overlayManager.open(text, ...); - } - - onMouseLeave() { - this.overlay.close(); - this.overlay = null; - } - } - ``` - In our HTML template, we can then add this behavior to a `
` or any other element with the `tooltip` selector, - like so: - - ``` -
- ``` - - Directives can also control the instantiation, destruction, and positioning of inline template elements: - - A directive uses a ViewContainerRef to instantiate, insert, move, and destroy views at runtime. - The ViewContainerRef is created as a result of `