From 40ac0c790a0c574cddec3bd398d80a8e02776c76 Mon Sep 17 00:00:00 2001 From: Rob Eisenberg Date: Sun, 24 Jul 2016 09:47:28 -0400 Subject: [PATCH] chore(all): prepare release 1.0.0-rc.1.0.4 --- bower.json | 2 +- dist/amd/aurelia-binding.js | 21 +-- dist/aurelia-binding.d.ts | 12 +- dist/aurelia-binding.js | 30 ++-- dist/commonjs/aurelia-binding.js | 21 +-- dist/es2015/aurelia-binding.js | 21 +-- dist/native-modules/aurelia-binding.js | 21 +-- dist/system/aurelia-binding.js | 21 +-- doc/CHANGELOG.md | 10 ++ doc/api.json | 2 +- .../objects-matcher/app.html | 28 ++++ .../binding-checkboxes/objects-matcher/app.js | 23 ++++ .../binding-how-it-works/ast/app.html | 35 +++++ .../binding-how-it-works/ast/app.js | 94 +++++++++++++ .../binding-how-it-works/ast/expression.html | 62 +++++++++ .../binding-how-it-works/ast/expression.js | 130 ++++++++++++++++++ .../binding-radios/objects-matcher/app.html | 28 ++++ .../binding-radios/objects-matcher/app.js | 23 ++++ .../single/objects-matcher/app.html | 14 ++ .../single/objects-matcher/app.js | 25 ++++ .../number-format.js | 23 +++- .../converter-parameters/date-format.js | 23 +++- .../converter-parameters/number-format.js | 23 +++- .../simple-converter/currency-format.js | 23 +++- .../simple-converter/date-format.js | 23 +++- package.json | 2 +- 26 files changed, 644 insertions(+), 96 deletions(-) create mode 100644 doc/example-dist/binding-checkboxes/objects-matcher/app.html create mode 100644 doc/example-dist/binding-checkboxes/objects-matcher/app.js create mode 100644 doc/example-dist/binding-how-it-works/ast/app.html create mode 100644 doc/example-dist/binding-how-it-works/ast/app.js create mode 100644 doc/example-dist/binding-how-it-works/ast/expression.html create mode 100644 doc/example-dist/binding-how-it-works/ast/expression.js create mode 100644 doc/example-dist/binding-radios/objects-matcher/app.html create mode 100644 doc/example-dist/binding-radios/objects-matcher/app.js create mode 100644 doc/example-dist/binding-selects/single/objects-matcher/app.html create mode 100644 doc/example-dist/binding-selects/single/objects-matcher/app.js diff --git a/bower.json b/bower.json index ee760c10..68e313c8 100644 --- a/bower.json +++ b/bower.json @@ -1,6 +1,6 @@ { "name": "aurelia-binding", - "version": "1.0.0-rc.1.0.3", + "version": "1.0.0-rc.1.0.4", "description": "A modern databinding library for JavaScript and HTML.", "license": "MIT", "keywords": [ diff --git a/dist/amd/aurelia-binding.js b/dist/amd/aurelia-binding.js index 5b7b2fce..304700be 100644 --- a/dist/amd/aurelia-binding.js +++ b/dist/amd/aurelia-binding.js @@ -1141,15 +1141,16 @@ define(['exports', 'aurelia-logging', 'aurelia-pal', 'aurelia-task-queue', 'aure ModifyArrayObserver.for = function _for(taskQueue, array) { if (!('__array_observer__' in array)) { - var observer = ModifyArrayObserver.create(taskQueue, array); - Reflect.defineProperty(array, '__array_observer__', { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(array, '__array_observer__', { + value: ModifyArrayObserver.create(taskQueue, array), + enumerable: false, configurable: false + }); } return array.__array_observer__; }; ModifyArrayObserver.create = function create(taskQueue, array) { - var observer = new ModifyArrayObserver(taskQueue, array); - return observer; + return new ModifyArrayObserver(taskQueue, array); }; return ModifyArrayObserver; @@ -3128,8 +3129,10 @@ define(['exports', 'aurelia-logging', 'aurelia-pal', 'aurelia-task-queue', 'aure ModifyMapObserver.for = function _for(taskQueue, map) { if (!('__map_observer__' in map)) { - var observer = ModifyMapObserver.create(taskQueue, map); - Reflect.defineProperty(map, '__map_observer__', { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(map, '__map_observer__', { + value: ModifyMapObserver.create(taskQueue, map), + enumerable: false, configurable: false + }); } return map.__map_observer__; }; @@ -5226,8 +5229,10 @@ define(['exports', 'aurelia-logging', 'aurelia-pal', 'aurelia-task-queue', 'aure ModifySetObserver.for = function _for(taskQueue, set) { if (!('__set_observer__' in set)) { - var observer = ModifySetObserver.create(taskQueue, set); - Reflect.defineProperty(set, '__set_observer__', { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(set, '__set_observer__', { + value: ModifySetObserver.create(taskQueue, set), + enumerable: false, configurable: false + }); } return set.__set_observer__; }; diff --git a/dist/aurelia-binding.d.ts b/dist/aurelia-binding.d.ts index 4204eb81..6e437763 100644 --- a/dist/aurelia-binding.d.ts +++ b/dist/aurelia-binding.d.ts @@ -276,7 +276,7 @@ export declare interface NameExpression { /** * Provides the base class from which the classes that represent expression tree nodes are derived. */ -export declare interface Expression { +export declare class Expression { /** * Evaluates the expression using the provided scope and lookup functions. */ @@ -294,7 +294,7 @@ export declare interface Expression { /** * An expression that accesses a property on the scope. */ -export declare interface AccessScope extends Expression { +export declare class AccessScope extends Expression { /** * The property name. */ @@ -308,7 +308,7 @@ export declare interface AccessScope extends Expression { /** * An expression that accesses a property on an object. */ -export declare interface AccessMember extends Expression { +export declare class AccessMember extends Expression { /** * The property name. */ @@ -322,7 +322,7 @@ export declare interface AccessMember extends Expression { /** * An expression that accesses a property on an object using a key. */ -export declare interface AccessKeyed extends Expression { +export declare class AccessKeyed extends Expression { /** * The property name. */ @@ -336,7 +336,7 @@ export declare interface AccessKeyed extends Expression { /** * A binding behavior expression. */ -export declare class BindingBehavior implements Expression { +export declare class BindingBehavior extends Expression { evaluate(scope: Scope, lookupFunctions: LookupFunctions): any; assign(scope: Scope, value: any, lookupFunctions: LookupFunctions): void; connect(binding: Binding, scope: Scope): void; @@ -345,7 +345,7 @@ export declare class BindingBehavior implements Expression { /** * A value converter expression. */ -export declare class ValueConverter implements Expression { +export declare class ValueConverter extends Expression { evaluate(scope: Scope, lookupFunctions: LookupFunctions): any; assign(scope: Scope, value: any, lookupFunctions: LookupFunctions): void; connect(binding: Binding, scope: Scope): void; diff --git a/dist/aurelia-binding.js b/dist/aurelia-binding.js index 51c75a78..101d01d5 100644 --- a/dist/aurelia-binding.js +++ b/dist/aurelia-binding.js @@ -1127,18 +1127,16 @@ class ModifyArrayObserver extends ModifyCollectionObserver { */ static for(taskQueue, array) { if (!('__array_observer__' in array)) { - let observer = ModifyArrayObserver.create(taskQueue, array); - Reflect.defineProperty( - array, - '__array_observer__', - { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(array, '__array_observer__', { + value: ModifyArrayObserver.create(taskQueue, array), + enumerable: false, configurable: false + }); } return array.__array_observer__; } static create(taskQueue, array) { - let observer = new ModifyArrayObserver(taskQueue, array); - return observer; + return new ModifyArrayObserver(taskQueue, array); } } @@ -2998,11 +2996,10 @@ class ModifyMapObserver extends ModifyCollectionObserver { */ static for(taskQueue, map) { if (!('__map_observer__' in map)) { - let observer = ModifyMapObserver.create(taskQueue, map); - Reflect.defineProperty( - map, - '__map_observer__', - { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(map, '__map_observer__', { + value: ModifyMapObserver.create(taskQueue, map), + enumerable: false, configurable: false + }); } return map.__map_observer__; } @@ -4954,11 +4951,10 @@ class ModifySetObserver extends ModifyCollectionObserver { */ static for(taskQueue, set) { if (!('__set_observer__' in set)) { - let observer = ModifySetObserver.create(taskQueue, set); - Reflect.defineProperty( - set, - '__set_observer__', - { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(set, '__set_observer__', { + value: ModifySetObserver.create(taskQueue, set), + enumerable: false, configurable: false + }); } return set.__set_observer__; } diff --git a/dist/commonjs/aurelia-binding.js b/dist/commonjs/aurelia-binding.js index 6378903c..aa7c9d18 100644 --- a/dist/commonjs/aurelia-binding.js +++ b/dist/commonjs/aurelia-binding.js @@ -1094,15 +1094,16 @@ var ModifyArrayObserver = function (_ModifyCollectionObse) { ModifyArrayObserver.for = function _for(taskQueue, array) { if (!('__array_observer__' in array)) { - var observer = ModifyArrayObserver.create(taskQueue, array); - Reflect.defineProperty(array, '__array_observer__', { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(array, '__array_observer__', { + value: ModifyArrayObserver.create(taskQueue, array), + enumerable: false, configurable: false + }); } return array.__array_observer__; }; ModifyArrayObserver.create = function create(taskQueue, array) { - var observer = new ModifyArrayObserver(taskQueue, array); - return observer; + return new ModifyArrayObserver(taskQueue, array); }; return ModifyArrayObserver; @@ -3081,8 +3082,10 @@ var ModifyMapObserver = function (_ModifyCollectionObse2) { ModifyMapObserver.for = function _for(taskQueue, map) { if (!('__map_observer__' in map)) { - var observer = ModifyMapObserver.create(taskQueue, map); - Reflect.defineProperty(map, '__map_observer__', { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(map, '__map_observer__', { + value: ModifyMapObserver.create(taskQueue, map), + enumerable: false, configurable: false + }); } return map.__map_observer__; }; @@ -5179,8 +5182,10 @@ var ModifySetObserver = function (_ModifyCollectionObse3) { ModifySetObserver.for = function _for(taskQueue, set) { if (!('__set_observer__' in set)) { - var observer = ModifySetObserver.create(taskQueue, set); - Reflect.defineProperty(set, '__set_observer__', { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(set, '__set_observer__', { + value: ModifySetObserver.create(taskQueue, set), + enumerable: false, configurable: false + }); } return set.__set_observer__; }; diff --git a/dist/es2015/aurelia-binding.js b/dist/es2015/aurelia-binding.js index c65a705e..fa816f89 100644 --- a/dist/es2015/aurelia-binding.js +++ b/dist/es2015/aurelia-binding.js @@ -1028,15 +1028,16 @@ let ModifyArrayObserver = class ModifyArrayObserver extends ModifyCollectionObse static for(taskQueue, array) { if (!('__array_observer__' in array)) { - let observer = ModifyArrayObserver.create(taskQueue, array); - Reflect.defineProperty(array, '__array_observer__', { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(array, '__array_observer__', { + value: ModifyArrayObserver.create(taskQueue, array), + enumerable: false, configurable: false + }); } return array.__array_observer__; } static create(taskQueue, array) { - let observer = new ModifyArrayObserver(taskQueue, array); - return observer; + return new ModifyArrayObserver(taskQueue, array); } }; @@ -2840,8 +2841,10 @@ let ModifyMapObserver = class ModifyMapObserver extends ModifyCollectionObserver static for(taskQueue, map) { if (!('__map_observer__' in map)) { - let observer = ModifyMapObserver.create(taskQueue, map); - Reflect.defineProperty(map, '__map_observer__', { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(map, '__map_observer__', { + value: ModifyMapObserver.create(taskQueue, map), + enumerable: false, configurable: false + }); } return map.__map_observer__; } @@ -4721,8 +4724,10 @@ let ModifySetObserver = class ModifySetObserver extends ModifyCollectionObserver static for(taskQueue, set) { if (!('__set_observer__' in set)) { - let observer = ModifySetObserver.create(taskQueue, set); - Reflect.defineProperty(set, '__set_observer__', { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(set, '__set_observer__', { + value: ModifySetObserver.create(taskQueue, set), + enumerable: false, configurable: false + }); } return set.__set_observer__; } diff --git a/dist/native-modules/aurelia-binding.js b/dist/native-modules/aurelia-binding.js index ebd4d40e..a1193931 100644 --- a/dist/native-modules/aurelia-binding.js +++ b/dist/native-modules/aurelia-binding.js @@ -1062,15 +1062,16 @@ var ModifyArrayObserver = function (_ModifyCollectionObse) { ModifyArrayObserver.for = function _for(taskQueue, array) { if (!('__array_observer__' in array)) { - var observer = ModifyArrayObserver.create(taskQueue, array); - Reflect.defineProperty(array, '__array_observer__', { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(array, '__array_observer__', { + value: ModifyArrayObserver.create(taskQueue, array), + enumerable: false, configurable: false + }); } return array.__array_observer__; }; ModifyArrayObserver.create = function create(taskQueue, array) { - var observer = new ModifyArrayObserver(taskQueue, array); - return observer; + return new ModifyArrayObserver(taskQueue, array); }; return ModifyArrayObserver; @@ -3047,8 +3048,10 @@ var ModifyMapObserver = function (_ModifyCollectionObse2) { ModifyMapObserver.for = function _for(taskQueue, map) { if (!('__map_observer__' in map)) { - var observer = ModifyMapObserver.create(taskQueue, map); - Reflect.defineProperty(map, '__map_observer__', { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(map, '__map_observer__', { + value: ModifyMapObserver.create(taskQueue, map), + enumerable: false, configurable: false + }); } return map.__map_observer__; }; @@ -5141,8 +5144,10 @@ var ModifySetObserver = function (_ModifyCollectionObse3) { ModifySetObserver.for = function _for(taskQueue, set) { if (!('__set_observer__' in set)) { - var observer = ModifySetObserver.create(taskQueue, set); - Reflect.defineProperty(set, '__set_observer__', { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(set, '__set_observer__', { + value: ModifySetObserver.create(taskQueue, set), + enumerable: false, configurable: false + }); } return set.__set_observer__; }; diff --git a/dist/system/aurelia-binding.js b/dist/system/aurelia-binding.js index 2750a50b..020c8717 100644 --- a/dist/system/aurelia-binding.js +++ b/dist/system/aurelia-binding.js @@ -1306,15 +1306,16 @@ System.register(['aurelia-logging', 'aurelia-pal', 'aurelia-task-queue', 'aureli ModifyArrayObserver.for = function _for(taskQueue, array) { if (!('__array_observer__' in array)) { - var observer = ModifyArrayObserver.create(taskQueue, array); - Reflect.defineProperty(array, '__array_observer__', { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(array, '__array_observer__', { + value: ModifyArrayObserver.create(taskQueue, array), + enumerable: false, configurable: false + }); } return array.__array_observer__; }; ModifyArrayObserver.create = function create(taskQueue, array) { - var observer = new ModifyArrayObserver(taskQueue, array); - return observer; + return new ModifyArrayObserver(taskQueue, array); }; return ModifyArrayObserver; @@ -3212,8 +3213,10 @@ System.register(['aurelia-logging', 'aurelia-pal', 'aurelia-task-queue', 'aureli ModifyMapObserver.for = function _for(taskQueue, map) { if (!('__map_observer__' in map)) { - var observer = ModifyMapObserver.create(taskQueue, map); - Reflect.defineProperty(map, '__map_observer__', { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(map, '__map_observer__', { + value: ModifyMapObserver.create(taskQueue, map), + enumerable: false, configurable: false + }); } return map.__map_observer__; }; @@ -5338,8 +5341,10 @@ System.register(['aurelia-logging', 'aurelia-pal', 'aurelia-task-queue', 'aureli ModifySetObserver.for = function _for(taskQueue, set) { if (!('__set_observer__' in set)) { - var observer = ModifySetObserver.create(taskQueue, set); - Reflect.defineProperty(set, '__set_observer__', { value: observer, enumerable: false, configurable: false }); + Reflect.defineProperty(set, '__set_observer__', { + value: ModifySetObserver.create(taskQueue, set), + enumerable: false, configurable: false + }); } return set.__set_observer__; }; diff --git a/doc/CHANGELOG.md b/doc/CHANGELOG.md index 117b5604..53a80e52 100644 --- a/doc/CHANGELOG.md +++ b/doc/CHANGELOG.md @@ -1,3 +1,13 @@ + +# [1.0.0-rc.1.0.4](https://github.com/aurelia/binding/compare/1.0.0-rc.1.0.3...v1.0.0-rc.1.0.4) (2016-07-24) + + +### Bug Fixes + +* **definitions:** use classes for expressions ([8181cf5](https://github.com/aurelia/binding/commit/8181cf5)), closes [#436](https://github.com/aurelia/binding/issues/436) + + + # [1.0.0-rc.1.0.3](https://github.com/aurelia/binding/compare/1.0.0-rc.1.0.2...v1.0.0-rc.1.0.3) (2016-07-12) diff --git a/doc/api.json b/doc/api.json index f96d70dc..077e85aa 100644 --- a/doc/api.json +++ b/doc/api.json @@ -1 +1 @@ -{"name":"aurelia-binding","children":[{"id":77,"name":"bindingMode","kind":4,"kindString":"Enumeration","flags":{"isExported":true},"comment":{"shortText":"Describes the direction of the data flow in a binding."},"children":[{"id":78,"name":"oneTime","kind":16,"kindString":"Enumeration member","flags":{"isExported":true},"comment":{"shortText":"Updates the binding target once. This is essentially a simpler form of one-way binding\nthat provides better performance in cases where the source value does not change."},"defaultValue":"0"},{"id":79,"name":"oneWay","kind":16,"kindString":"Enumeration member","flags":{"isExported":true},"comment":{"shortText":"Updates the binding target (target) property when the binding source (source) changes.\nThis type of binding is appropriate if the element being bound is implicitly read-only.\nIf there is no need to monitor the changes of the target property, using the OneWay\nbinding mode avoids the overhead of the two-way binding mode."},"defaultValue":"1"},{"id":80,"name":"twoWay","kind":16,"kindString":"Enumeration member","flags":{"isExported":true},"comment":{"shortText":"Causes changes to either the source property or the target property to automatically update\nthe other. This type of binding is appropriate for editable forms or other fully-interactive\nUI scenarios."},"defaultValue":"2"}],"groups":[{"title":"Enumeration members","kind":16,"children":[78,79,80]}]},{"id":240,"name":"BindingBehavior","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"A binding behavior expression."},"children":[{"id":245,"name":"assign","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":246,"name":"assign","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":247,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":248,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":249,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"void"},"implementationOf":{"type":"reference","name":"Expression.assign","id":184}}],"implementationOf":{"type":"reference","name":"Expression.assign","id":183}},{"id":250,"name":"connect","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":251,"name":"connect","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":252,"name":"binding","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Binding","id":142}},{"id":253,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}}],"type":{"type":"instrinct","name":"void"},"implementationOf":{"type":"reference","name":"Expression.connect","id":189}}],"implementationOf":{"type":"reference","name":"Expression.connect","id":188}},{"id":241,"name":"evaluate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":242,"name":"evaluate","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":243,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":244,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"any"},"implementationOf":{"type":"reference","name":"Expression.evaluate","id":180}}],"implementationOf":{"type":"reference","name":"Expression.evaluate","id":179}}],"groups":[{"title":"Methods","kind":2048,"children":[245,250,241]}],"implementedTypes":[{"type":"reference","name":"Expression","id":178}]},{"id":26,"name":"BindingBehaviorResource","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"A BindingBehavior resource."},"children":[{"id":30,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"signatures":[{"id":31,"name":"new BindingBehaviorResource","kind":16384,"kindString":"Constructor signature","flags":{},"parameters":[{"id":32,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"BindingBehaviorResource","id":26}}]},{"id":33,"name":"initialize","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":34,"name":"initialize","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":35,"name":"container","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Container"}},{"id":36,"name":"target","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]},{"id":37,"name":"register","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":38,"name":"register","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":39,"name":"registry","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":40,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"void"}}]},{"id":27,"name":"convention","kind":2048,"kindString":"Method","flags":{"isStatic":true,"isExported":true},"signatures":[{"id":28,"name":"convention","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":29,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"BindingBehaviorResource","id":26}}]}],"groups":[{"title":"Constructors","kind":512,"children":[30]},{"title":"Methods","kind":2048,"children":[33,37,27]}]},{"id":292,"name":"BindingEngine","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Binding system API."},"children":[{"id":303,"name":"collectionObserver","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":304,"name":"collectionObserver","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an observer for collection mutation."},"parameters":[{"id":305,"name":"collection","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"union","types":[{"type":"reference","name":"Array","typeArguments":[{"type":"instrinct","name":"any"}]},{"type":"reference","name":"Map","typeArguments":[{"type":"instrinct","name":"any"},{"type":"instrinct","name":"any"}]}]}}],"type":{"type":"reference","name":"CollectionObserver","id":70}}]},{"id":293,"name":"createBindingExpression","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":294,"name":"createBindingExpression","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Creates a binding expression for the specified target property and source expression."},"parameters":[{"id":295,"name":"targetProperty","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The target attribute, eg \"value\" / \"checked\" / \"textcontent\" / \"data-foo\"."},"type":{"type":"instrinct","name":"string"}},{"id":296,"name":"sourceExpression","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A javascript expression accessing the source property."},"type":{"type":"instrinct","name":"string"}},{"id":297,"name":"mode","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The directionality of the binding."},"type":{"type":"reference","name":"bindingMode","id":77}},{"id":298,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"Lookup functions for value converter and binding behavior resources.\n"},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"reference","name":"BindingExpression","id":162}}]},{"id":306,"name":"expressionObserver","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":307,"name":"expressionObserver","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an observer for a javascript expression that accesses a property on the binding context."},"parameters":[{"id":308,"name":"bindingContext","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The binding context (view-model)"},"type":{"type":"instrinct","name":"any"}},{"id":309,"name":"expression","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A javascript expression accessing the source property.\n"},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"PropertyObserver","id":62}}]},{"id":310,"name":"parseExpression","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":311,"name":"parseExpression","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Parses a string containing a javascript expression and returns a data-binding specialized AST. Memoized."},"parameters":[{"id":312,"name":"expression","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"Expression","id":178}}]},{"id":299,"name":"propertyObserver","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":300,"name":"propertyObserver","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an observer for property changes."},"parameters":[{"id":301,"name":"obj","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Object"}},{"id":302,"name":"propertyName","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"PropertyObserver","id":62}}]},{"id":313,"name":"registerAdapter","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":314,"name":"registerAdapter","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Registers an adapter that provides an efficient property observeration strategy for\nproperties that would otherwise require dirty-checking."},"parameters":[{"id":315,"name":"adapter","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"ObjectObservationAdapter","id":272}}],"type":{"type":"instrinct","name":"void"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[303,293,306,310,299,313]}]},{"id":41,"name":"EventManager","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Subscribes to appropriate element events based on the element property\nbeing observed for changes.\nThis is an internal API and is subject to change without notice in future releases."},"children":[{"id":51,"name":"addEventListener","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":52,"name":"addEventListener","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribes to specified event on the target element.","returns":"function wich removes event listener.\n"},"parameters":[{"id":53,"name":"target","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"Target element."},"type":{"type":"reference","name":"Element"}},{"id":54,"name":"targetEvent","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"Name of event to subscribe."},"type":{"type":"instrinct","name":"string"}},{"id":55,"name":"callback","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"Event listener callback."},"type":{"type":"reflection","declaration":{"id":56,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":57,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":58,"name":"event","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Event"}}],"type":{"type":"instrinct","name":"any"}}]}}},{"id":59,"name":"delegate","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"True to use event delegation mechanism."},"type":{"type":"instrinct","name":"boolean"}}],"type":{"type":"reflection","declaration":{"id":60,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":61,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"type":{"type":"instrinct","name":"void"}}]}}}]},{"id":42,"name":"registerElementConfig","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":43,"name":"registerElementConfig","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":44,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reflection","declaration":{"id":45,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"children":[{"id":47,"name":"properties","kind":32,"kindString":"Variable","flags":{},"type":{"type":"reflection","declaration":{"id":48,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":49,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":50,"name":"s","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","isArray":true,"name":"string"}}]}}},{"id":46,"name":"tagName","kind":32,"kindString":"Variable","flags":{},"type":{"type":"instrinct","name":"string"}}],"groups":[{"title":"Variables","kind":32,"children":[47,46]}]}}}],"type":{"type":"instrinct","name":"void"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[51,42]}]},{"id":278,"name":"ObserverLocator","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Internal object observation API. Locates observers for properties, arrays and maps using a variety of strategies."},"children":[{"id":283,"name":"addAdapter","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":284,"name":"addAdapter","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a property observation adapter."},"parameters":[{"id":285,"name":"adapter","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"ObjectObservationAdapter","id":272}}],"type":{"type":"instrinct","name":"void"}}]},{"id":286,"name":"getArrayObserver","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":287,"name":"getArrayObserver","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an observer for array mutation."},"parameters":[{"id":288,"name":"array","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Array","typeArguments":[{"type":"instrinct","name":"any"}]}}],"type":{"type":"reference","name":"InternalCollectionObserver","id":123}}]},{"id":289,"name":"getMapObserver","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":290,"name":"getMapObserver","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an observer for map mutation."},"parameters":[{"id":291,"name":"map","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Map","typeArguments":[{"type":"instrinct","name":"any"},{"type":"instrinct","name":"any"}]}}],"type":{"type":"reference","name":"InternalCollectionObserver","id":123}}]},{"id":279,"name":"getObserver","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":280,"name":"getObserver","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an observer for property changes."},"parameters":[{"id":281,"name":"obj","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":282,"name":"propertyName","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"InternalPropertyObserver","id":97}}]}],"groups":[{"title":"Methods","kind":2048,"children":[283,286,289,279]}]},{"id":268,"name":"Parser","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Parses strings containing javascript expressions and returns a data-binding specialized AST."},"children":[{"id":269,"name":"parse","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":270,"name":"parse","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Parses a string containing a javascript expression and returns a data-binding specialized AST. Memoized."},"parameters":[{"id":271,"name":"input","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"Expression","id":178}}]}],"groups":[{"title":"Methods","kind":2048,"children":[269]}]},{"id":254,"name":"ValueConverter","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"A value converter expression."},"children":[{"id":259,"name":"assign","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":260,"name":"assign","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":261,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":262,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":263,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"void"},"implementationOf":{"type":"reference","name":"Expression.assign","id":184}}],"implementationOf":{"type":"reference","name":"Expression.assign","id":183}},{"id":264,"name":"connect","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":265,"name":"connect","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":266,"name":"binding","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Binding","id":142}},{"id":267,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}}],"type":{"type":"instrinct","name":"void"},"implementationOf":{"type":"reference","name":"Expression.connect","id":189}}],"implementationOf":{"type":"reference","name":"Expression.connect","id":188}},{"id":255,"name":"evaluate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":256,"name":"evaluate","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":257,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":258,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"any"},"implementationOf":{"type":"reference","name":"Expression.evaluate","id":180}}],"implementationOf":{"type":"reference","name":"Expression.evaluate","id":179}}],"groups":[{"title":"Methods","kind":2048,"children":[259,264,255]}],"implementedTypes":[{"type":"reference","name":"Expression","id":178}]},{"id":11,"name":"ValueConverterResource","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"A ValueConverter resource."},"children":[{"id":15,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"signatures":[{"id":16,"name":"new ValueConverterResource","kind":16384,"kindString":"Constructor signature","flags":{},"parameters":[{"id":17,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"ValueConverterResource","id":11}}]},{"id":18,"name":"initialize","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":19,"name":"initialize","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":20,"name":"container","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Container"}},{"id":21,"name":"target","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]},{"id":22,"name":"register","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":23,"name":"register","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":24,"name":"registry","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":25,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"void"}}]},{"id":12,"name":"convention","kind":2048,"kindString":"Method","flags":{"isStatic":true,"isExported":true},"signatures":[{"id":13,"name":"convention","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":14,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"ValueConverterResource","id":11}}]}],"groups":[{"title":"Constructors","kind":512,"children":[15]},{"title":"Methods","kind":2048,"children":[18,22,12]}]},{"id":224,"name":"AccessKeyed","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An expression that accesses a property on an object using a key."},"children":[{"id":225,"name":"key","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The property name."},"type":{"type":"reference","name":"Expression","id":178}},{"id":226,"name":"object","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The object expression."},"type":{"type":"reference","name":"Expression","id":178}},{"id":231,"name":"assign","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":232,"name":"assign","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Assigns a value to the property represented by the expression."},"parameters":[{"id":233,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":234,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":235,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"void"},"inheritedFrom":{"type":"reference","name":"Expression.assign","id":183}}],"inheritedFrom":{"type":"reference","name":"Expression.assign","id":183}},{"id":236,"name":"connect","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":237,"name":"connect","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribes a binding instance to the property change events along the path of the expression."},"parameters":[{"id":238,"name":"binding","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Binding","id":142}},{"id":239,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}}],"type":{"type":"instrinct","name":"void"},"inheritedFrom":{"type":"reference","name":"Expression.connect","id":188}}],"inheritedFrom":{"type":"reference","name":"Expression.connect","id":188}},{"id":227,"name":"evaluate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":228,"name":"evaluate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Evaluates the expression using the provided scope and lookup functions."},"parameters":[{"id":229,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":230,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"any"},"inheritedFrom":{"type":"reference","name":"Expression.evaluate","id":179}}],"inheritedFrom":{"type":"reference","name":"Expression.evaluate","id":179}}],"groups":[{"title":"Properties","kind":1024,"children":[225,226]},{"title":"Methods","kind":2048,"children":[231,236,227]}],"extendedTypes":[{"type":"reference","name":"Expression","id":178}]},{"id":208,"name":"AccessMember","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An expression that accesses a property on an object."},"children":[{"id":209,"name":"name","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The property name."},"type":{"type":"instrinct","name":"string"}},{"id":210,"name":"object","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The object expression."},"type":{"type":"reference","name":"Expression","id":178}},{"id":215,"name":"assign","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":216,"name":"assign","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Assigns a value to the property represented by the expression."},"parameters":[{"id":217,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":218,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":219,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"void"},"inheritedFrom":{"type":"reference","name":"Expression.assign","id":183}}],"inheritedFrom":{"type":"reference","name":"Expression.assign","id":183}},{"id":220,"name":"connect","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":221,"name":"connect","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribes a binding instance to the property change events along the path of the expression."},"parameters":[{"id":222,"name":"binding","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Binding","id":142}},{"id":223,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}}],"type":{"type":"instrinct","name":"void"},"inheritedFrom":{"type":"reference","name":"Expression.connect","id":188}}],"inheritedFrom":{"type":"reference","name":"Expression.connect","id":188}},{"id":211,"name":"evaluate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":212,"name":"evaluate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Evaluates the expression using the provided scope and lookup functions."},"parameters":[{"id":213,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":214,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"any"},"inheritedFrom":{"type":"reference","name":"Expression.evaluate","id":179}}],"inheritedFrom":{"type":"reference","name":"Expression.evaluate","id":179}}],"groups":[{"title":"Properties","kind":1024,"children":[209,210]},{"title":"Methods","kind":2048,"children":[215,220,211]}],"extendedTypes":[{"type":"reference","name":"Expression","id":178}]},{"id":192,"name":"AccessScope","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"An expression that accesses a property on the scope."},"children":[{"id":194,"name":"ancestor","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The number of hops up the scope tree."},"type":{"type":"instrinct","name":"number"}},{"id":193,"name":"name","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The property name."},"type":{"type":"instrinct","name":"string"}},{"id":199,"name":"assign","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":200,"name":"assign","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Assigns a value to the property represented by the expression."},"parameters":[{"id":201,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":202,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":203,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"void"},"inheritedFrom":{"type":"reference","name":"Expression.assign","id":183}}],"inheritedFrom":{"type":"reference","name":"Expression.assign","id":183}},{"id":204,"name":"connect","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":205,"name":"connect","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribes a binding instance to the property change events along the path of the expression."},"parameters":[{"id":206,"name":"binding","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Binding","id":142}},{"id":207,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}}],"type":{"type":"instrinct","name":"void"},"inheritedFrom":{"type":"reference","name":"Expression.connect","id":188}}],"inheritedFrom":{"type":"reference","name":"Expression.connect","id":188}},{"id":195,"name":"evaluate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":196,"name":"evaluate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Evaluates the expression using the provided scope and lookup functions."},"parameters":[{"id":197,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":198,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"any"},"inheritedFrom":{"type":"reference","name":"Expression.evaluate","id":179}}],"inheritedFrom":{"type":"reference","name":"Expression.evaluate","id":179}}],"groups":[{"title":"Properties","kind":1024,"children":[194,193]},{"title":"Methods","kind":2048,"children":[199,204,195]}],"extendedTypes":[{"type":"reference","name":"Expression","id":178}]},{"id":142,"name":"Binding","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Provides high-level access to the definition of a binding, which connects the properties of\nbinding target objects (typically, HTML elements), and any data source"},"children":[{"id":153,"name":"callSource","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"Calls the source method with the specified args object."},"type":{"type":"reflection","declaration":{"id":154,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":155,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":156,"name":"event","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"any"}}]}}},{"id":143,"name":"mode","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"The directionality of the binding."},"type":{"type":"reference","name":"bindingMode","id":77}},{"id":144,"name":"sourceExpression","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"The expression to access/assign/connect the binding source property."},"type":{"type":"reference","name":"Expression","id":178}},{"id":149,"name":"updateSource","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"Assigns a value to the source."},"type":{"type":"reflection","declaration":{"id":150,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":151,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":152,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}},{"id":145,"name":"updateTarget","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"Assigns a value to the target."},"type":{"type":"reflection","declaration":{"id":146,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":147,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":148,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}},{"id":157,"name":"bind","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":158,"name":"bind","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Connects the binding to a scope."},"parameters":[{"id":159,"name":"source","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}}],"type":{"type":"instrinct","name":"void"}}]},{"id":160,"name":"unbind","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":161,"name":"unbind","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Disconnects the binding from a scope."},"type":{"type":"instrinct","name":"void"}}]}],"groups":[{"title":"Properties","kind":1024,"children":[153,143,144,149,145]},{"title":"Methods","kind":2048,"children":[157,160]}]},{"id":162,"name":"BindingExpression","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A factory for binding instances."},"children":[{"id":163,"name":"createBinding","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":164,"name":"createBinding","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":165,"name":"target","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"reference","name":"Binding","id":142}}]}],"groups":[{"title":"Methods","kind":2048,"children":[163]}]},{"id":170,"name":"CallExpression","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A factory for binding instances."},"children":[{"id":171,"name":"createBinding","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":172,"name":"createBinding","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":173,"name":"target","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"reference","name":"Binding","id":142}}]}],"groups":[{"title":"Methods","kind":2048,"children":[171]}]},{"id":88,"name":"Callable","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A callable object."},"children":[{"id":89,"name":"call","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":90,"name":"call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":91,"name":"context","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":92,"name":"newValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":93,"name":"oldValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}},{"id":94,"name":"call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":95,"name":"context","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":96,"name":"changeRecords","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[89]}]},{"id":70,"name":"CollectionObserver","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Observes collection mutation."},"children":[{"id":71,"name":"subscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":72,"name":"subscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribe to collection mutation events."},"parameters":[{"id":73,"name":"callback","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reflection","declaration":{"id":74,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":75,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":76,"name":"changeRecords","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}}],"type":{"type":"reference","name":"Disposable","id":8}}]}],"groups":[{"title":"Methods","kind":2048,"children":[71]}]},{"id":8,"name":"Disposable","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Provides a mechanism for releasing resources."},"children":[{"id":9,"name":"dispose","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":10,"name":"dispose","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Performs tasks associated with freeing, releasing, or resetting resources."},"type":{"type":"instrinct","name":"void"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[9]}]},{"id":178,"name":"Expression","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Provides the base class from which the classes that represent expression tree nodes are derived."},"children":[{"id":183,"name":"assign","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":184,"name":"assign","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Assigns a value to the property represented by the expression."},"parameters":[{"id":185,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":186,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":187,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"void"}}]},{"id":188,"name":"connect","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":189,"name":"connect","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribes a binding instance to the property change events along the path of the expression."},"parameters":[{"id":190,"name":"binding","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Binding","id":142}},{"id":191,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}}],"type":{"type":"instrinct","name":"void"}}]},{"id":179,"name":"evaluate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":180,"name":"evaluate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Evaluates the expression using the provided scope and lookup functions."},"parameters":[{"id":181,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":182,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"any"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[183,188,179]}],"extendedBy":[{"type":"reference","name":"AccessScope","id":192},{"type":"reference","name":"AccessMember","id":208},{"type":"reference","name":"AccessKeyed","id":224}],"implementedBy":[{"type":"reference","name":"BindingBehavior","id":240},{"type":"reference","name":"ValueConverter","id":254}]},{"id":123,"name":"InternalCollectionObserver","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Observes collection mutation."},"children":[{"id":124,"name":"subscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":125,"name":"subscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribe to collection mutation events with a callback function."},"parameters":[{"id":126,"name":"callback","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reflection","declaration":{"id":127,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":128,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":129,"name":"changeRecords","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}}],"type":{"type":"instrinct","name":"void"}},{"id":130,"name":"subscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribe a callable object to collection mutation events."},"parameters":[{"id":131,"name":"context","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A value to be passed to the callable object's call function when collection mutation occurs."},"type":{"type":"instrinct","name":"any"}},{"id":132,"name":"callable","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A callable object.\n"},"type":{"type":"reference","name":"Callable","id":88}}],"type":{"type":"instrinct","name":"void"}}]},{"id":133,"name":"unsubscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":134,"name":"unsubscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Unsubscribes a callback function from collection mutation changes."},"parameters":[{"id":135,"name":"callback","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reflection","declaration":{"id":136,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":137,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":138,"name":"changeRecords","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}}],"type":{"type":"instrinct","name":"void"}},{"id":139,"name":"unsubscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Unsubscribes a callable object from collection mutation events."},"parameters":[{"id":140,"name":"context","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A value to be passed to the callable object's call function when collection mutation occurs."},"type":{"type":"instrinct","name":"any"}},{"id":141,"name":"callable","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A callable object.\n"},"type":{"type":"reference","name":"Callable","id":88}}],"type":{"type":"instrinct","name":"void"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[124,133]}]},{"id":97,"name":"InternalPropertyObserver","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Observes property changes."},"children":[{"id":98,"name":"getValue","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":99,"name":"getValue","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets the property value."},"type":{"type":"instrinct","name":"any"}}]},{"id":100,"name":"setValue","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":101,"name":"setValue","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Sets the property value."},"parameters":[{"id":102,"name":"newValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]},{"id":103,"name":"subscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":104,"name":"subscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribe to property changes with a callback function."},"parameters":[{"id":105,"name":"callback","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reflection","declaration":{"id":106,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":107,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":108,"name":"newValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":109,"name":"oldValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}}],"type":{"type":"instrinct","name":"void"}},{"id":110,"name":"subscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribe a callable object to property changes."},"parameters":[{"id":111,"name":"context","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A value to be passed to the callable object's call function when a property change occurs."},"type":{"type":"instrinct","name":"any"}},{"id":112,"name":"callable","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A callable object.\n"},"type":{"type":"reference","name":"Callable","id":88}}],"type":{"type":"instrinct","name":"void"}}]},{"id":113,"name":"unsubscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":114,"name":"unsubscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Unsubscribes a callback function from property changes."},"parameters":[{"id":115,"name":"callback","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reflection","declaration":{"id":116,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":117,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":118,"name":"newValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":119,"name":"oldValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}}],"type":{"type":"instrinct","name":"void"}},{"id":120,"name":"unsubscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Unsubscribes a callable object from property changes."},"parameters":[{"id":121,"name":"context","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A value to be passed to the callable object's call function when a property change occurs."},"type":{"type":"instrinct","name":"any"}},{"id":122,"name":"callable","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A callable object.\n"},"type":{"type":"reference","name":"Callable","id":88}}],"type":{"type":"instrinct","name":"void"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[98,100,103,113]}]},{"id":166,"name":"ListenerExpression","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A factory for binding instances."},"children":[{"id":167,"name":"createBinding","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":168,"name":"createBinding","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":169,"name":"target","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"reference","name":"Binding","id":142}}]}],"groups":[{"title":"Methods","kind":2048,"children":[167]}]},{"id":81,"name":"LookupFunctions","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Lookup functions for value converter and binding behavior resources."},"children":[{"id":82,"name":"bindingBehaviors","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":83,"name":"bindingBehaviors","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":84,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"any"}}]},{"id":85,"name":"valueConverters","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":86,"name":"valueConverters","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":87,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"any"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[82,85]}]},{"id":174,"name":"NameExpression","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A factory for binding instances."},"children":[{"id":175,"name":"createBinding","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":176,"name":"createBinding","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":177,"name":"target","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"reference","name":"Binding","id":142}}]}],"groups":[{"title":"Methods","kind":2048,"children":[175]}]},{"id":272,"name":"ObjectObservationAdapter","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Provides efficient property observers for properties that would otherwise require dirty-checking."},"children":[{"id":273,"name":"getObserver","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":274,"name":"getObserver","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":275,"name":"object","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":276,"name":"propertyName","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}},{"id":277,"name":"descriptor","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"PropertyDescriptor"}}],"type":{"type":"reference","name":"InternalPropertyObserver","id":97}}]}],"groups":[{"title":"Methods","kind":2048,"children":[273]}]},{"id":2,"name":"OverrideContext","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"The \"parallel\" or \"artificial\" aspect of the binding scope. Provides access to the parent binding\ncontext and stores contextual bindable members such as $event, $index, $odd, etc. Members on this\nobject take precedence over members of the bindingContext object."},"children":[{"id":4,"name":"bindingContext","kind":1024,"kindString":"Property","flags":{"isExported":true},"type":{"type":"instrinct","name":"any"}},{"id":3,"name":"parentOverrideContext","kind":1024,"kindString":"Property","flags":{"isExported":true},"type":{"type":"reference","name":"OverrideContext","id":2}}],"groups":[{"title":"Properties","kind":1024,"children":[4,3]}]},{"id":62,"name":"PropertyObserver","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Observes property changes."},"children":[{"id":63,"name":"subscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":64,"name":"subscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribe to property change events."},"parameters":[{"id":65,"name":"callback","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reflection","declaration":{"id":66,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":67,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":68,"name":"newValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":69,"name":"oldValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}}],"type":{"type":"reference","name":"Disposable","id":8}}]}],"groups":[{"title":"Methods","kind":2048,"children":[63]}]},{"id":316,"name":"SVGAnalyzer","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Internal API used to analyze SVG attributes."},"children":[{"id":317,"name":"isStandardSvgAttribute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":318,"name":"isStandardSvgAttribute","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":319,"name":"nodeName","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}},{"id":320,"name":"attributeName","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"boolean"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[317]}]},{"id":5,"name":"Scope","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"The two part binding scope. The first part is the bindingContext which represents the primary scope, typically a\nview-model instance and second the overrideContext"},"children":[{"id":6,"name":"bindingContext","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The primary aspect of the binding scope. Typically a view-model instance."},"type":{"type":"instrinct","name":"any"}},{"id":7,"name":"overrideContext","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The \"parallel\" or \"artificial\" aspect of the binding scope. Provides access to the parent binding\ncontext and stores contextual bindable members such as $event, $index, $odd, etc. Members on this\nobject take precedence over members of the bindingContext object."},"type":{"type":"reference","name":"OverrideContext","id":2}}],"groups":[{"title":"Properties","kind":1024,"children":[6,7]}]},{"id":348,"name":"sourceContext","kind":32,"kindString":"Variable","flags":{"isExported":true},"comment":{"shortText":"A context used when invoking a binding's callable API to notify\nthe binding that the context is a \"source update\"."},"type":{"type":"instrinct","name":"string"}},{"id":345,"name":"bindingBehavior","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":346,"name":"bindingBehavior","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Decorator: Indicates that the decorated class is a binding behavior."},"parameters":[{"id":347,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the binding behavior.\n"},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"any"}}]},{"id":362,"name":"camelCase","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":363,"name":"camelCase","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"camel-cases a string."},"parameters":[{"id":364,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"string"}}]},{"id":339,"name":"computedFrom","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":340,"name":"computedFrom","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Decorator: Indicates that the decorated property is computed from other properties."},"parameters":[{"id":341,"name":"propertyNames","kind":32768,"kindString":"Parameter","flags":{"isRest":true},"comment":{"text":"The names of the properties the decorated property is computed from. Simple property names, not expressions.\n"},"type":{"type":"instrinct","isArray":true,"name":"string"}}],"type":{"type":"instrinct","name":"any"}}]},{"id":365,"name":"connectable","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":366,"name":"connectable","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Decorator: Internal decorator used to mixin binding APIs."},"type":{"type":"instrinct","name":"void"}}]},{"id":321,"name":"createOverrideContext","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":322,"name":"createOverrideContext","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Creates an overrideContext object with the supplied bindingContext and optional parent overrideContext."},"parameters":[{"id":323,"name":"bindingContext","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":324,"name":"parentOverrideContext","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"reference","name":"OverrideContext","id":2}}],"type":{"type":"reference","name":"OverrideContext","id":2}}]},{"id":325,"name":"createScopeForTest","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":326,"name":"createScopeForTest","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Creates a scope object for testing purposes."},"parameters":[{"id":327,"name":"bindingContext","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":328,"name":"parentBindingContext","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"reference","name":"Scope","id":5}}]},{"id":334,"name":"declarePropertyDependencies","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":335,"name":"declarePropertyDependencies","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Declares a property's dependencies."},"parameters":[{"id":336,"name":"ctor","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":337,"name":"propertyName","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}},{"id":338,"name":"dependencies","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","isArray":true,"name":"string"}}],"type":{"type":"instrinct","name":"void"}}]},{"id":367,"name":"enqueueBindingConnect","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":368,"name":"enqueueBindingConnect","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Internal API that adds a binding to the connect queue."},"parameters":[{"id":369,"name":"binding","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Binding","id":142}}],"type":{"type":"instrinct","name":"void"}}]},{"id":349,"name":"getChangeRecords","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":350,"name":"getChangeRecords","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"An internal API used by Aurelia's array observation components."},"type":{"type":"instrinct","name":"any"}}]},{"id":331,"name":"hasDeclaredDependencies","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":332,"name":"hasDeclaredDependencies","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Returns whether a property's dependencies have been declared."},"parameters":[{"id":333,"name":"descriptor","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"PropertyDescriptor"}}],"type":{"type":"instrinct","name":"boolean"}}]},{"id":351,"name":"mergeSplice","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":352,"name":"mergeSplice","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"An internal API used by Aurelia's array observation components."},"parameters":[{"id":353,"name":"splices","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":354,"name":"index","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"number"}},{"id":355,"name":"removed","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":356,"name":"addedCount","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"number"}}],"type":{"type":"instrinct","name":"any"}}]},{"id":357,"name":"observable","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":358,"name":"observable","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Decorator: Specifies that a property is observable."},"parameters":[{"id":359,"name":"targetOrConfig","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The name of the property, or a configuration object.\n"},"type":{"type":"reference","name":"Object"}},{"id":360,"name":"key","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"instrinct","name":"any"}},{"id":361,"name":"descriptor","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"any"}}]},{"id":329,"name":"subscriberCollection","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":330,"name":"subscriberCollection","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Decorator: Adds efficient subscription management methods to the decorated class's prototype."},"type":{"type":"instrinct","name":"any"}}]},{"id":342,"name":"valueConverter","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":343,"name":"valueConverter","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Decorator: Indicates that the decorated class is a value converter."},"parameters":[{"id":344,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the value converter.\n"},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"any"}}]}],"groups":[{"title":"Enumerations","kind":4,"children":[77]},{"title":"Classes","kind":128,"children":[240,26,292,41,278,268,254,11]},{"title":"Interfaces","kind":256,"children":[224,208,192,142,162,170,88,70,8,178,123,97,166,81,174,272,2,62,316,5]},{"title":"Variables","kind":32,"children":[348]},{"title":"Functions","kind":64,"children":[345,362,339,365,321,325,334,367,349,331,351,357,329,342]}]} \ No newline at end of file +{"name":"aurelia-binding","children":[{"id":77,"name":"bindingMode","kind":4,"kindString":"Enumeration","flags":{"isExported":true},"comment":{"shortText":"Describes the direction of the data flow in a binding."},"children":[{"id":78,"name":"oneTime","kind":16,"kindString":"Enumeration member","flags":{"isExported":true},"comment":{"shortText":"Updates the binding target once. This is essentially a simpler form of one-way binding\nthat provides better performance in cases where the source value does not change."},"defaultValue":"0"},{"id":79,"name":"oneWay","kind":16,"kindString":"Enumeration member","flags":{"isExported":true},"comment":{"shortText":"Updates the binding target (target) property when the binding source (source) changes.\nThis type of binding is appropriate if the element being bound is implicitly read-only.\nIf there is no need to monitor the changes of the target property, using the OneWay\nbinding mode avoids the overhead of the two-way binding mode."},"defaultValue":"1"},{"id":80,"name":"twoWay","kind":16,"kindString":"Enumeration member","flags":{"isExported":true},"comment":{"shortText":"Causes changes to either the source property or the target property to automatically update\nthe other. This type of binding is appropriate for editable forms or other fully-interactive\nUI scenarios."},"defaultValue":"2"}],"groups":[{"title":"Enumeration members","kind":16,"children":[78,79,80]}]},{"id":224,"name":"AccessKeyed","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"An expression that accesses a property on an object using a key."},"children":[{"id":225,"name":"key","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The property name."},"type":{"type":"reference","name":"Expression","id":178}},{"id":226,"name":"object","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The object expression."},"type":{"type":"reference","name":"Expression","id":178}},{"id":231,"name":"assign","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":232,"name":"assign","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Assigns a value to the property represented by the expression."},"parameters":[{"id":233,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":234,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":235,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"void"},"inheritedFrom":{"type":"reference","name":"Expression.assign","id":183}}],"inheritedFrom":{"type":"reference","name":"Expression.assign","id":183}},{"id":236,"name":"connect","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":237,"name":"connect","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribes a binding instance to the property change events along the path of the expression."},"parameters":[{"id":238,"name":"binding","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Binding","id":142}},{"id":239,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}}],"type":{"type":"instrinct","name":"void"},"inheritedFrom":{"type":"reference","name":"Expression.connect","id":188}}],"inheritedFrom":{"type":"reference","name":"Expression.connect","id":188}},{"id":227,"name":"evaluate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":228,"name":"evaluate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Evaluates the expression using the provided scope and lookup functions."},"parameters":[{"id":229,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":230,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"any"},"inheritedFrom":{"type":"reference","name":"Expression.evaluate","id":179}}],"inheritedFrom":{"type":"reference","name":"Expression.evaluate","id":179}}],"groups":[{"title":"Properties","kind":1024,"children":[225,226]},{"title":"Methods","kind":2048,"children":[231,236,227]}],"extendedTypes":[{"type":"reference","name":"Expression","id":178}]},{"id":208,"name":"AccessMember","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"An expression that accesses a property on an object."},"children":[{"id":209,"name":"name","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The property name."},"type":{"type":"instrinct","name":"string"}},{"id":210,"name":"object","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The object expression."},"type":{"type":"reference","name":"Expression","id":178}},{"id":215,"name":"assign","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":216,"name":"assign","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Assigns a value to the property represented by the expression."},"parameters":[{"id":217,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":218,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":219,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"void"},"inheritedFrom":{"type":"reference","name":"Expression.assign","id":183}}],"inheritedFrom":{"type":"reference","name":"Expression.assign","id":183}},{"id":220,"name":"connect","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":221,"name":"connect","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribes a binding instance to the property change events along the path of the expression."},"parameters":[{"id":222,"name":"binding","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Binding","id":142}},{"id":223,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}}],"type":{"type":"instrinct","name":"void"},"inheritedFrom":{"type":"reference","name":"Expression.connect","id":188}}],"inheritedFrom":{"type":"reference","name":"Expression.connect","id":188}},{"id":211,"name":"evaluate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":212,"name":"evaluate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Evaluates the expression using the provided scope and lookup functions."},"parameters":[{"id":213,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":214,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"any"},"inheritedFrom":{"type":"reference","name":"Expression.evaluate","id":179}}],"inheritedFrom":{"type":"reference","name":"Expression.evaluate","id":179}}],"groups":[{"title":"Properties","kind":1024,"children":[209,210]},{"title":"Methods","kind":2048,"children":[215,220,211]}],"extendedTypes":[{"type":"reference","name":"Expression","id":178}]},{"id":192,"name":"AccessScope","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"An expression that accesses a property on the scope."},"children":[{"id":194,"name":"ancestor","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The number of hops up the scope tree."},"type":{"type":"instrinct","name":"number"}},{"id":193,"name":"name","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The property name."},"type":{"type":"instrinct","name":"string"}},{"id":199,"name":"assign","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":200,"name":"assign","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Assigns a value to the property represented by the expression."},"parameters":[{"id":201,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":202,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":203,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"void"},"inheritedFrom":{"type":"reference","name":"Expression.assign","id":183}}],"inheritedFrom":{"type":"reference","name":"Expression.assign","id":183}},{"id":204,"name":"connect","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":205,"name":"connect","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribes a binding instance to the property change events along the path of the expression."},"parameters":[{"id":206,"name":"binding","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Binding","id":142}},{"id":207,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}}],"type":{"type":"instrinct","name":"void"},"inheritedFrom":{"type":"reference","name":"Expression.connect","id":188}}],"inheritedFrom":{"type":"reference","name":"Expression.connect","id":188}},{"id":195,"name":"evaluate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":196,"name":"evaluate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Evaluates the expression using the provided scope and lookup functions."},"parameters":[{"id":197,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":198,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"any"},"inheritedFrom":{"type":"reference","name":"Expression.evaluate","id":179}}],"inheritedFrom":{"type":"reference","name":"Expression.evaluate","id":179}}],"groups":[{"title":"Properties","kind":1024,"children":[194,193]},{"title":"Methods","kind":2048,"children":[199,204,195]}],"extendedTypes":[{"type":"reference","name":"Expression","id":178}]},{"id":240,"name":"BindingBehavior","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"A binding behavior expression."},"children":[{"id":245,"name":"assign","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":246,"name":"assign","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":247,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":248,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":249,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"void"},"overwrites":{"type":"reference","name":"Expression.assign","id":183}}],"overwrites":{"type":"reference","name":"Expression.assign","id":183}},{"id":250,"name":"connect","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":251,"name":"connect","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":252,"name":"binding","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Binding","id":142}},{"id":253,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}}],"type":{"type":"instrinct","name":"void"},"overwrites":{"type":"reference","name":"Expression.connect","id":188}}],"overwrites":{"type":"reference","name":"Expression.connect","id":188}},{"id":241,"name":"evaluate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":242,"name":"evaluate","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":243,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":244,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"any"},"overwrites":{"type":"reference","name":"Expression.evaluate","id":179}}],"overwrites":{"type":"reference","name":"Expression.evaluate","id":179}}],"groups":[{"title":"Methods","kind":2048,"children":[245,250,241]}],"extendedTypes":[{"type":"reference","name":"Expression","id":178}]},{"id":26,"name":"BindingBehaviorResource","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"A BindingBehavior resource."},"children":[{"id":30,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"signatures":[{"id":31,"name":"new BindingBehaviorResource","kind":16384,"kindString":"Constructor signature","flags":{},"parameters":[{"id":32,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"BindingBehaviorResource","id":26}}]},{"id":33,"name":"initialize","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":34,"name":"initialize","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":35,"name":"container","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Container"}},{"id":36,"name":"target","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]},{"id":37,"name":"register","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":38,"name":"register","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":39,"name":"registry","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":40,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"void"}}]},{"id":27,"name":"convention","kind":2048,"kindString":"Method","flags":{"isStatic":true,"isExported":true},"signatures":[{"id":28,"name":"convention","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":29,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"BindingBehaviorResource","id":26}}]}],"groups":[{"title":"Constructors","kind":512,"children":[30]},{"title":"Methods","kind":2048,"children":[33,37,27]}]},{"id":292,"name":"BindingEngine","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Binding system API."},"children":[{"id":303,"name":"collectionObserver","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":304,"name":"collectionObserver","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an observer for collection mutation."},"parameters":[{"id":305,"name":"collection","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"union","types":[{"type":"reference","name":"Array","typeArguments":[{"type":"instrinct","name":"any"}]},{"type":"reference","name":"Map","typeArguments":[{"type":"instrinct","name":"any"},{"type":"instrinct","name":"any"}]}]}}],"type":{"type":"reference","name":"CollectionObserver","id":70}}]},{"id":293,"name":"createBindingExpression","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":294,"name":"createBindingExpression","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Creates a binding expression for the specified target property and source expression."},"parameters":[{"id":295,"name":"targetProperty","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The target attribute, eg \"value\" / \"checked\" / \"textcontent\" / \"data-foo\"."},"type":{"type":"instrinct","name":"string"}},{"id":296,"name":"sourceExpression","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A javascript expression accessing the source property."},"type":{"type":"instrinct","name":"string"}},{"id":297,"name":"mode","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The directionality of the binding."},"type":{"type":"reference","name":"bindingMode","id":77}},{"id":298,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"Lookup functions for value converter and binding behavior resources.\n"},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"reference","name":"BindingExpression","id":162}}]},{"id":306,"name":"expressionObserver","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":307,"name":"expressionObserver","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an observer for a javascript expression that accesses a property on the binding context."},"parameters":[{"id":308,"name":"bindingContext","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The binding context (view-model)"},"type":{"type":"instrinct","name":"any"}},{"id":309,"name":"expression","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A javascript expression accessing the source property.\n"},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"PropertyObserver","id":62}}]},{"id":310,"name":"parseExpression","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":311,"name":"parseExpression","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Parses a string containing a javascript expression and returns a data-binding specialized AST. Memoized."},"parameters":[{"id":312,"name":"expression","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"Expression","id":178}}]},{"id":299,"name":"propertyObserver","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":300,"name":"propertyObserver","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an observer for property changes."},"parameters":[{"id":301,"name":"obj","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Object"}},{"id":302,"name":"propertyName","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"PropertyObserver","id":62}}]},{"id":313,"name":"registerAdapter","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":314,"name":"registerAdapter","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Registers an adapter that provides an efficient property observeration strategy for\nproperties that would otherwise require dirty-checking."},"parameters":[{"id":315,"name":"adapter","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"ObjectObservationAdapter","id":272}}],"type":{"type":"instrinct","name":"void"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[303,293,306,310,299,313]}]},{"id":41,"name":"EventManager","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Subscribes to appropriate element events based on the element property\nbeing observed for changes.\nThis is an internal API and is subject to change without notice in future releases."},"children":[{"id":51,"name":"addEventListener","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":52,"name":"addEventListener","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribes to specified event on the target element.","returns":"function wich removes event listener.\n"},"parameters":[{"id":53,"name":"target","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"Target element."},"type":{"type":"reference","name":"Element"}},{"id":54,"name":"targetEvent","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"Name of event to subscribe."},"type":{"type":"instrinct","name":"string"}},{"id":55,"name":"callback","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"Event listener callback."},"type":{"type":"reflection","declaration":{"id":56,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":57,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":58,"name":"event","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Event"}}],"type":{"type":"instrinct","name":"any"}}]}}},{"id":59,"name":"delegate","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"True to use event delegation mechanism."},"type":{"type":"instrinct","name":"boolean"}}],"type":{"type":"reflection","declaration":{"id":60,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":61,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"type":{"type":"instrinct","name":"void"}}]}}}]},{"id":42,"name":"registerElementConfig","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":43,"name":"registerElementConfig","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":44,"name":"config","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reflection","declaration":{"id":45,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"children":[{"id":47,"name":"properties","kind":32,"kindString":"Variable","flags":{},"type":{"type":"reflection","declaration":{"id":48,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":49,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":50,"name":"s","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","isArray":true,"name":"string"}}]}}},{"id":46,"name":"tagName","kind":32,"kindString":"Variable","flags":{},"type":{"type":"instrinct","name":"string"}}],"groups":[{"title":"Variables","kind":32,"children":[47,46]}]}}}],"type":{"type":"instrinct","name":"void"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[51,42]}]},{"id":178,"name":"Expression","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Provides the base class from which the classes that represent expression tree nodes are derived."},"children":[{"id":183,"name":"assign","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":184,"name":"assign","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Assigns a value to the property represented by the expression."},"parameters":[{"id":185,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":186,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":187,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"void"}}]},{"id":188,"name":"connect","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":189,"name":"connect","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribes a binding instance to the property change events along the path of the expression."},"parameters":[{"id":190,"name":"binding","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Binding","id":142}},{"id":191,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}}],"type":{"type":"instrinct","name":"void"}}]},{"id":179,"name":"evaluate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":180,"name":"evaluate","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Evaluates the expression using the provided scope and lookup functions."},"parameters":[{"id":181,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":182,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"any"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[183,188,179]}],"extendedBy":[{"type":"reference","name":"AccessScope","id":192},{"type":"reference","name":"AccessMember","id":208},{"type":"reference","name":"AccessKeyed","id":224},{"type":"reference","name":"BindingBehavior","id":240},{"type":"reference","name":"ValueConverter","id":254}]},{"id":278,"name":"ObserverLocator","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Internal object observation API. Locates observers for properties, arrays and maps using a variety of strategies."},"children":[{"id":283,"name":"addAdapter","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":284,"name":"addAdapter","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Adds a property observation adapter."},"parameters":[{"id":285,"name":"adapter","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"ObjectObservationAdapter","id":272}}],"type":{"type":"instrinct","name":"void"}}]},{"id":286,"name":"getArrayObserver","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":287,"name":"getArrayObserver","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an observer for array mutation."},"parameters":[{"id":288,"name":"array","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Array","typeArguments":[{"type":"instrinct","name":"any"}]}}],"type":{"type":"reference","name":"InternalCollectionObserver","id":123}}]},{"id":289,"name":"getMapObserver","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":290,"name":"getMapObserver","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an observer for map mutation."},"parameters":[{"id":291,"name":"map","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Map","typeArguments":[{"type":"instrinct","name":"any"},{"type":"instrinct","name":"any"}]}}],"type":{"type":"reference","name":"InternalCollectionObserver","id":123}}]},{"id":279,"name":"getObserver","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":280,"name":"getObserver","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets an observer for property changes."},"parameters":[{"id":281,"name":"obj","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":282,"name":"propertyName","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"InternalPropertyObserver","id":97}}]}],"groups":[{"title":"Methods","kind":2048,"children":[283,286,289,279]}]},{"id":268,"name":"Parser","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"Parses strings containing javascript expressions and returns a data-binding specialized AST."},"children":[{"id":269,"name":"parse","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":270,"name":"parse","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Parses a string containing a javascript expression and returns a data-binding specialized AST. Memoized."},"parameters":[{"id":271,"name":"input","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"Expression","id":178}}]}],"groups":[{"title":"Methods","kind":2048,"children":[269]}]},{"id":254,"name":"ValueConverter","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"A value converter expression."},"children":[{"id":259,"name":"assign","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":260,"name":"assign","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":261,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":262,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":263,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"void"},"overwrites":{"type":"reference","name":"Expression.assign","id":183}}],"overwrites":{"type":"reference","name":"Expression.assign","id":183}},{"id":264,"name":"connect","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":265,"name":"connect","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":266,"name":"binding","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Binding","id":142}},{"id":267,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}}],"type":{"type":"instrinct","name":"void"},"overwrites":{"type":"reference","name":"Expression.connect","id":188}}],"overwrites":{"type":"reference","name":"Expression.connect","id":188}},{"id":255,"name":"evaluate","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":256,"name":"evaluate","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":257,"name":"scope","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}},{"id":258,"name":"lookupFunctions","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"LookupFunctions","id":81}}],"type":{"type":"instrinct","name":"any"},"overwrites":{"type":"reference","name":"Expression.evaluate","id":179}}],"overwrites":{"type":"reference","name":"Expression.evaluate","id":179}}],"groups":[{"title":"Methods","kind":2048,"children":[259,264,255]}],"extendedTypes":[{"type":"reference","name":"Expression","id":178}]},{"id":11,"name":"ValueConverterResource","kind":128,"kindString":"Class","flags":{"isExported":true},"comment":{"shortText":"A ValueConverter resource."},"children":[{"id":15,"name":"constructor","kind":512,"kindString":"Constructor","flags":{"isExported":true},"signatures":[{"id":16,"name":"new ValueConverterResource","kind":16384,"kindString":"Constructor signature","flags":{},"parameters":[{"id":17,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"ValueConverterResource","id":11}}]},{"id":18,"name":"initialize","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":19,"name":"initialize","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":20,"name":"container","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Container"}},{"id":21,"name":"target","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]},{"id":22,"name":"register","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":23,"name":"register","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":24,"name":"registry","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":25,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"void"}}]},{"id":12,"name":"convention","kind":2048,"kindString":"Method","flags":{"isStatic":true,"isExported":true},"signatures":[{"id":13,"name":"convention","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":14,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"reference","name":"ValueConverterResource","id":11}}]}],"groups":[{"title":"Constructors","kind":512,"children":[15]},{"title":"Methods","kind":2048,"children":[18,22,12]}]},{"id":142,"name":"Binding","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Provides high-level access to the definition of a binding, which connects the properties of\nbinding target objects (typically, HTML elements), and any data source"},"children":[{"id":153,"name":"callSource","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"Calls the source method with the specified args object."},"type":{"type":"reflection","declaration":{"id":154,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":155,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":156,"name":"event","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"any"}}]}}},{"id":143,"name":"mode","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"The directionality of the binding."},"type":{"type":"reference","name":"bindingMode","id":77}},{"id":144,"name":"sourceExpression","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"The expression to access/assign/connect the binding source property."},"type":{"type":"reference","name":"Expression","id":178}},{"id":149,"name":"updateSource","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"Assigns a value to the source."},"type":{"type":"reflection","declaration":{"id":150,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":151,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":152,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}},{"id":145,"name":"updateTarget","kind":1024,"kindString":"Property","flags":{"isExported":true,"isOptional":true},"comment":{"shortText":"Assigns a value to the target."},"type":{"type":"reflection","declaration":{"id":146,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":147,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":148,"name":"value","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}},{"id":157,"name":"bind","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":158,"name":"bind","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Connects the binding to a scope."},"parameters":[{"id":159,"name":"source","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Scope","id":5}}],"type":{"type":"instrinct","name":"void"}}]},{"id":160,"name":"unbind","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":161,"name":"unbind","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Disconnects the binding from a scope."},"type":{"type":"instrinct","name":"void"}}]}],"groups":[{"title":"Properties","kind":1024,"children":[153,143,144,149,145]},{"title":"Methods","kind":2048,"children":[157,160]}]},{"id":162,"name":"BindingExpression","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A factory for binding instances."},"children":[{"id":163,"name":"createBinding","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":164,"name":"createBinding","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":165,"name":"target","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"reference","name":"Binding","id":142}}]}],"groups":[{"title":"Methods","kind":2048,"children":[163]}]},{"id":170,"name":"CallExpression","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A factory for binding instances."},"children":[{"id":171,"name":"createBinding","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":172,"name":"createBinding","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":173,"name":"target","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"reference","name":"Binding","id":142}}]}],"groups":[{"title":"Methods","kind":2048,"children":[171]}]},{"id":88,"name":"Callable","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A callable object."},"children":[{"id":89,"name":"call","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":90,"name":"call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":91,"name":"context","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":92,"name":"newValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":93,"name":"oldValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}},{"id":94,"name":"call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":95,"name":"context","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":96,"name":"changeRecords","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[89]}]},{"id":70,"name":"CollectionObserver","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Observes collection mutation."},"children":[{"id":71,"name":"subscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":72,"name":"subscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribe to collection mutation events."},"parameters":[{"id":73,"name":"callback","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reflection","declaration":{"id":74,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":75,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":76,"name":"changeRecords","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}}],"type":{"type":"reference","name":"Disposable","id":8}}]}],"groups":[{"title":"Methods","kind":2048,"children":[71]}]},{"id":8,"name":"Disposable","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Provides a mechanism for releasing resources."},"children":[{"id":9,"name":"dispose","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":10,"name":"dispose","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Performs tasks associated with freeing, releasing, or resetting resources."},"type":{"type":"instrinct","name":"void"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[9]}]},{"id":123,"name":"InternalCollectionObserver","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Observes collection mutation."},"children":[{"id":124,"name":"subscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":125,"name":"subscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribe to collection mutation events with a callback function."},"parameters":[{"id":126,"name":"callback","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reflection","declaration":{"id":127,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":128,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":129,"name":"changeRecords","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}}],"type":{"type":"instrinct","name":"void"}},{"id":130,"name":"subscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribe a callable object to collection mutation events."},"parameters":[{"id":131,"name":"context","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A value to be passed to the callable object's call function when collection mutation occurs."},"type":{"type":"instrinct","name":"any"}},{"id":132,"name":"callable","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A callable object.\n"},"type":{"type":"reference","name":"Callable","id":88}}],"type":{"type":"instrinct","name":"void"}}]},{"id":133,"name":"unsubscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":134,"name":"unsubscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Unsubscribes a callback function from collection mutation changes."},"parameters":[{"id":135,"name":"callback","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reflection","declaration":{"id":136,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":137,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":138,"name":"changeRecords","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}}],"type":{"type":"instrinct","name":"void"}},{"id":139,"name":"unsubscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Unsubscribes a callable object from collection mutation events."},"parameters":[{"id":140,"name":"context","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A value to be passed to the callable object's call function when collection mutation occurs."},"type":{"type":"instrinct","name":"any"}},{"id":141,"name":"callable","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A callable object.\n"},"type":{"type":"reference","name":"Callable","id":88}}],"type":{"type":"instrinct","name":"void"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[124,133]}]},{"id":97,"name":"InternalPropertyObserver","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Observes property changes."},"children":[{"id":98,"name":"getValue","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":99,"name":"getValue","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Gets the property value."},"type":{"type":"instrinct","name":"any"}}]},{"id":100,"name":"setValue","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":101,"name":"setValue","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Sets the property value."},"parameters":[{"id":102,"name":"newValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]},{"id":103,"name":"subscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":104,"name":"subscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribe to property changes with a callback function."},"parameters":[{"id":105,"name":"callback","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reflection","declaration":{"id":106,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":107,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":108,"name":"newValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":109,"name":"oldValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}}],"type":{"type":"instrinct","name":"void"}},{"id":110,"name":"subscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribe a callable object to property changes."},"parameters":[{"id":111,"name":"context","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A value to be passed to the callable object's call function when a property change occurs."},"type":{"type":"instrinct","name":"any"}},{"id":112,"name":"callable","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A callable object.\n"},"type":{"type":"reference","name":"Callable","id":88}}],"type":{"type":"instrinct","name":"void"}}]},{"id":113,"name":"unsubscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":114,"name":"unsubscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Unsubscribes a callback function from property changes."},"parameters":[{"id":115,"name":"callback","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reflection","declaration":{"id":116,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":117,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":118,"name":"newValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":119,"name":"oldValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}}],"type":{"type":"instrinct","name":"void"}},{"id":120,"name":"unsubscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Unsubscribes a callable object from property changes."},"parameters":[{"id":121,"name":"context","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A value to be passed to the callable object's call function when a property change occurs."},"type":{"type":"instrinct","name":"any"}},{"id":122,"name":"callable","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"A callable object.\n"},"type":{"type":"reference","name":"Callable","id":88}}],"type":{"type":"instrinct","name":"void"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[98,100,103,113]}]},{"id":166,"name":"ListenerExpression","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A factory for binding instances."},"children":[{"id":167,"name":"createBinding","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":168,"name":"createBinding","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":169,"name":"target","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"reference","name":"Binding","id":142}}]}],"groups":[{"title":"Methods","kind":2048,"children":[167]}]},{"id":81,"name":"LookupFunctions","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Lookup functions for value converter and binding behavior resources."},"children":[{"id":82,"name":"bindingBehaviors","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":83,"name":"bindingBehaviors","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":84,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"any"}}]},{"id":85,"name":"valueConverters","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":86,"name":"valueConverters","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":87,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"any"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[82,85]}]},{"id":174,"name":"NameExpression","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"A factory for binding instances."},"children":[{"id":175,"name":"createBinding","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":176,"name":"createBinding","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":177,"name":"target","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"reference","name":"Binding","id":142}}]}],"groups":[{"title":"Methods","kind":2048,"children":[175]}]},{"id":272,"name":"ObjectObservationAdapter","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Provides efficient property observers for properties that would otherwise require dirty-checking."},"children":[{"id":273,"name":"getObserver","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":274,"name":"getObserver","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":275,"name":"object","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":276,"name":"propertyName","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}},{"id":277,"name":"descriptor","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"PropertyDescriptor"}}],"type":{"type":"reference","name":"InternalPropertyObserver","id":97}}]}],"groups":[{"title":"Methods","kind":2048,"children":[273]}]},{"id":2,"name":"OverrideContext","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"The \"parallel\" or \"artificial\" aspect of the binding scope. Provides access to the parent binding\ncontext and stores contextual bindable members such as $event, $index, $odd, etc. Members on this\nobject take precedence over members of the bindingContext object."},"children":[{"id":4,"name":"bindingContext","kind":1024,"kindString":"Property","flags":{"isExported":true},"type":{"type":"instrinct","name":"any"}},{"id":3,"name":"parentOverrideContext","kind":1024,"kindString":"Property","flags":{"isExported":true},"type":{"type":"reference","name":"OverrideContext","id":2}}],"groups":[{"title":"Properties","kind":1024,"children":[4,3]}]},{"id":62,"name":"PropertyObserver","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Observes property changes."},"children":[{"id":63,"name":"subscribe","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":64,"name":"subscribe","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Subscribe to property change events."},"parameters":[{"id":65,"name":"callback","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reflection","declaration":{"id":66,"name":"__type","kind":65536,"kindString":"Type literal","flags":{},"signatures":[{"id":67,"name":"__call","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":68,"name":"newValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":69,"name":"oldValue","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"void"}}]}}}],"type":{"type":"reference","name":"Disposable","id":8}}]}],"groups":[{"title":"Methods","kind":2048,"children":[63]}]},{"id":316,"name":"SVGAnalyzer","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"Internal API used to analyze SVG attributes."},"children":[{"id":317,"name":"isStandardSvgAttribute","kind":2048,"kindString":"Method","flags":{"isExported":true},"signatures":[{"id":318,"name":"isStandardSvgAttribute","kind":4096,"kindString":"Call signature","flags":{},"parameters":[{"id":319,"name":"nodeName","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}},{"id":320,"name":"attributeName","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"boolean"}}]}],"groups":[{"title":"Methods","kind":2048,"children":[317]}]},{"id":5,"name":"Scope","kind":256,"kindString":"Interface","flags":{"isExported":true},"comment":{"shortText":"The two part binding scope. The first part is the bindingContext which represents the primary scope, typically a\nview-model instance and second the overrideContext"},"children":[{"id":6,"name":"bindingContext","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The primary aspect of the binding scope. Typically a view-model instance."},"type":{"type":"instrinct","name":"any"}},{"id":7,"name":"overrideContext","kind":1024,"kindString":"Property","flags":{"isExported":true},"comment":{"shortText":"The \"parallel\" or \"artificial\" aspect of the binding scope. Provides access to the parent binding\ncontext and stores contextual bindable members such as $event, $index, $odd, etc. Members on this\nobject take precedence over members of the bindingContext object."},"type":{"type":"reference","name":"OverrideContext","id":2}}],"groups":[{"title":"Properties","kind":1024,"children":[6,7]}]},{"id":348,"name":"sourceContext","kind":32,"kindString":"Variable","flags":{"isExported":true},"comment":{"shortText":"A context used when invoking a binding's callable API to notify\nthe binding that the context is a \"source update\"."},"type":{"type":"instrinct","name":"string"}},{"id":345,"name":"bindingBehavior","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":346,"name":"bindingBehavior","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Decorator: Indicates that the decorated class is a binding behavior."},"parameters":[{"id":347,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the binding behavior.\n"},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"any"}}]},{"id":362,"name":"camelCase","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":363,"name":"camelCase","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"camel-cases a string."},"parameters":[{"id":364,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"string"}}]},{"id":339,"name":"computedFrom","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":340,"name":"computedFrom","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Decorator: Indicates that the decorated property is computed from other properties."},"parameters":[{"id":341,"name":"propertyNames","kind":32768,"kindString":"Parameter","flags":{"isRest":true},"comment":{"text":"The names of the properties the decorated property is computed from. Simple property names, not expressions.\n"},"type":{"type":"instrinct","isArray":true,"name":"string"}}],"type":{"type":"instrinct","name":"any"}}]},{"id":365,"name":"connectable","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":366,"name":"connectable","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Decorator: Internal decorator used to mixin binding APIs."},"type":{"type":"instrinct","name":"void"}}]},{"id":321,"name":"createOverrideContext","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":322,"name":"createOverrideContext","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Creates an overrideContext object with the supplied bindingContext and optional parent overrideContext."},"parameters":[{"id":323,"name":"bindingContext","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":324,"name":"parentOverrideContext","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"reference","name":"OverrideContext","id":2}}],"type":{"type":"reference","name":"OverrideContext","id":2}}]},{"id":325,"name":"createScopeForTest","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":326,"name":"createScopeForTest","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Creates a scope object for testing purposes."},"parameters":[{"id":327,"name":"bindingContext","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":328,"name":"parentBindingContext","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"reference","name":"Scope","id":5}}]},{"id":334,"name":"declarePropertyDependencies","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":335,"name":"declarePropertyDependencies","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Declares a property's dependencies."},"parameters":[{"id":336,"name":"ctor","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":337,"name":"propertyName","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"string"}},{"id":338,"name":"dependencies","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","isArray":true,"name":"string"}}],"type":{"type":"instrinct","name":"void"}}]},{"id":367,"name":"enqueueBindingConnect","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":368,"name":"enqueueBindingConnect","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Internal API that adds a binding to the connect queue."},"parameters":[{"id":369,"name":"binding","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"Binding","id":142}}],"type":{"type":"instrinct","name":"void"}}]},{"id":349,"name":"getChangeRecords","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":350,"name":"getChangeRecords","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"An internal API used by Aurelia's array observation components."},"type":{"type":"instrinct","name":"any"}}]},{"id":331,"name":"hasDeclaredDependencies","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":332,"name":"hasDeclaredDependencies","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Returns whether a property's dependencies have been declared."},"parameters":[{"id":333,"name":"descriptor","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"reference","name":"PropertyDescriptor"}}],"type":{"type":"instrinct","name":"boolean"}}]},{"id":351,"name":"mergeSplice","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":352,"name":"mergeSplice","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"An internal API used by Aurelia's array observation components."},"parameters":[{"id":353,"name":"splices","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":354,"name":"index","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"number"}},{"id":355,"name":"removed","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"any"}},{"id":356,"name":"addedCount","kind":32768,"kindString":"Parameter","flags":{},"type":{"type":"instrinct","name":"number"}}],"type":{"type":"instrinct","name":"any"}}]},{"id":357,"name":"observable","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":358,"name":"observable","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Decorator: Specifies that a property is observable."},"parameters":[{"id":359,"name":"targetOrConfig","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"comment":{"text":"The name of the property, or a configuration object.\n"},"type":{"type":"reference","name":"Object"}},{"id":360,"name":"key","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"instrinct","name":"any"}},{"id":361,"name":"descriptor","kind":32768,"kindString":"Parameter","flags":{"isOptional":true},"type":{"type":"instrinct","name":"any"}}],"type":{"type":"instrinct","name":"any"}}]},{"id":329,"name":"subscriberCollection","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":330,"name":"subscriberCollection","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Decorator: Adds efficient subscription management methods to the decorated class's prototype."},"type":{"type":"instrinct","name":"any"}}]},{"id":342,"name":"valueConverter","kind":64,"kindString":"Function","flags":{"isExported":true},"signatures":[{"id":343,"name":"valueConverter","kind":4096,"kindString":"Call signature","flags":{},"comment":{"shortText":"Decorator: Indicates that the decorated class is a value converter."},"parameters":[{"id":344,"name":"name","kind":32768,"kindString":"Parameter","flags":{},"comment":{"text":"The name of the value converter.\n"},"type":{"type":"instrinct","name":"string"}}],"type":{"type":"instrinct","name":"any"}}]}],"groups":[{"title":"Enumerations","kind":4,"children":[77]},{"title":"Classes","kind":128,"children":[224,208,192,240,26,292,41,178,278,268,254,11]},{"title":"Interfaces","kind":256,"children":[142,162,170,88,70,8,123,97,166,81,174,272,2,62,316,5]},{"title":"Variables","kind":32,"children":[348]},{"title":"Functions","kind":64,"children":[345,362,339,365,321,325,334,367,349,331,351,357,329,342]}]} \ No newline at end of file diff --git a/doc/example-dist/binding-checkboxes/objects-matcher/app.html b/doc/example-dist/binding-checkboxes/objects-matcher/app.html new file mode 100644 index 00000000..1ede1e95 --- /dev/null +++ b/doc/example-dist/binding-checkboxes/objects-matcher/app.html @@ -0,0 +1,28 @@ + diff --git a/doc/example-dist/binding-checkboxes/objects-matcher/app.js b/doc/example-dist/binding-checkboxes/objects-matcher/app.js new file mode 100644 index 00000000..7c4546c7 --- /dev/null +++ b/doc/example-dist/binding-checkboxes/objects-matcher/app.js @@ -0,0 +1,23 @@ +define(['exports'], function (exports) { + 'use strict'; + + Object.defineProperty(exports, "__esModule", { + value: true + }); + + function _classCallCheck(instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + } + + var App = exports.App = function App() { + _classCallCheck(this, App); + + this.selectedProducts = [{ id: 1, name: 'CPU' }, { id: 2, name: 'Memory' }]; + + this.productMatcher = function (a, b) { + return a.id === b.id; + }; + }; +}); \ No newline at end of file diff --git a/doc/example-dist/binding-how-it-works/ast/app.html b/doc/example-dist/binding-how-it-works/ast/app.html new file mode 100644 index 00000000..fddc6556 --- /dev/null +++ b/doc/example-dist/binding-how-it-works/ast/app.html @@ -0,0 +1,35 @@ + diff --git a/doc/example-dist/binding-how-it-works/ast/app.js b/doc/example-dist/binding-how-it-works/ast/app.js new file mode 100644 index 00000000..8c29fd40 --- /dev/null +++ b/doc/example-dist/binding-how-it-works/ast/app.js @@ -0,0 +1,94 @@ +define(['exports', 'aurelia-framework'], function (exports, _aureliaFramework) { + 'use strict'; + + Object.defineProperty(exports, "__esModule", { + value: true + }); + exports.App = undefined; + + function _initDefineProp(target, property, descriptor, context) { + if (!descriptor) return; + Object.defineProperty(target, property, { + enumerable: descriptor.enumerable, + configurable: descriptor.configurable, + writable: descriptor.writable, + value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 + }); + } + + function _classCallCheck(instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + } + + function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { + var desc = {}; + Object['ke' + 'ys'](descriptor).forEach(function (key) { + desc[key] = descriptor[key]; + }); + desc.enumerable = !!desc.enumerable; + desc.configurable = !!desc.configurable; + + if ('value' in desc || desc.initializer) { + desc.writable = true; + } + + desc = decorators.slice().reverse().reduce(function (desc, decorator) { + return decorator(target, property, desc) || desc; + }, desc); + + if (context && desc.initializer !== void 0) { + desc.value = desc.initializer ? desc.initializer.call(context) : void 0; + desc.initializer = undefined; + } + + if (desc.initializer === void 0) { + Object['define' + 'Property'](target, property, desc); + desc = null; + } + + return desc; + } + + function _initializerWarningHelper(descriptor, context) { + throw new Error('Decorating class property failed. Please ensure that transform-class-properties is enabled.'); + } + + var _dec, _class, _desc, _value, _class2, _descriptor; + + var App = exports.App = (_dec = (0, _aureliaFramework.inject)(_aureliaFramework.Parser), _dec(_class = (_class2 = function () { + function App(parser) { + _classCallCheck(this, App); + + _initDefineProp(this, 'expressionString', _descriptor, this); + + this.value = null; + this.examples = [{ name: 'Basic Property', expression: 'firstName' }, { name: 'Property Path', expression: 'person.firstName' }, { name: 'Conditional', expression: 'isActive ? \'active\' : \'\'' }, { name: 'Array Index', expression: 'myArray[index]' }, { name: 'Binary', expression: 'x * y' }, { name: 'Object Literal', expression: '{ x: 3, y: height, z: depth }' }, { name: 'Literal Array', expression: '[a, 1, \'hello\', null, undefined]' }, { name: 'Call Method', expression: 'save(entity)' }, { name: 'Assignment', expression: 'width = rangeInput.value' }]; + + this.parser = parser; + this.expressionString = ''; + } + + App.prototype.expressionStringChanged = function expressionStringChanged(newValue, oldValue) { + this.error = ''; + this.expression = null; + + try { + var value = { role: 'Root', expression: this.parser.parse(newValue) }; + if (value.expression instanceof _aureliaFramework.Chain) { + value = null; + } + this.value = value; + } catch (e) { + this.value = null; + this.error = e.toString(); + } + }; + + return App; + }(), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, 'expressionString', [_aureliaFramework.observable], { + enumerable: true, + initializer: null + })), _class2)) || _class); +}); \ No newline at end of file diff --git a/doc/example-dist/binding-how-it-works/ast/expression.html b/doc/example-dist/binding-how-it-works/ast/expression.html new file mode 100644 index 00000000..a963cccf --- /dev/null +++ b/doc/example-dist/binding-how-it-works/ast/expression.html @@ -0,0 +1,62 @@ + diff --git a/doc/example-dist/binding-how-it-works/ast/expression.js b/doc/example-dist/binding-how-it-works/ast/expression.js new file mode 100644 index 00000000..078af51a --- /dev/null +++ b/doc/example-dist/binding-how-it-works/ast/expression.js @@ -0,0 +1,130 @@ +define(['exports', 'aurelia-framework'], function (exports, _aureliaFramework) { + 'use strict'; + + Object.defineProperty(exports, "__esModule", { + value: true + }); + exports.Expression = undefined; + + function _initDefineProp(target, property, descriptor, context) { + if (!descriptor) return; + Object.defineProperty(target, property, { + enumerable: descriptor.enumerable, + configurable: descriptor.configurable, + writable: descriptor.writable, + value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 + }); + } + + function _classCallCheck(instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + } + + function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { + var desc = {}; + Object['ke' + 'ys'](descriptor).forEach(function (key) { + desc[key] = descriptor[key]; + }); + desc.enumerable = !!desc.enumerable; + desc.configurable = !!desc.configurable; + + if ('value' in desc || desc.initializer) { + desc.writable = true; + } + + desc = decorators.slice().reverse().reduce(function (desc, decorator) { + return decorator(target, property, desc) || desc; + }, desc); + + if (context && desc.initializer !== void 0) { + desc.value = desc.initializer ? desc.initializer.call(context) : void 0; + desc.initializer = undefined; + } + + if (desc.initializer === void 0) { + Object['define' + 'Property'](target, property, desc); + desc = null; + } + + return desc; + } + + function _initializerWarningHelper(descriptor, context) { + throw new Error('Decorating class property failed. Please ensure that transform-class-properties is enabled.'); + } + + var _class, _desc, _value, _class2, _descriptor; + + var Expression = exports.Expression = (0, _aureliaFramework.containerless)(_class = (_class2 = function () { + function Expression() { + _classCallCheck(this, Expression); + + _initDefineProp(this, 'value', _descriptor, this); + + this.name = '???'; + this.children = null; + } + + Expression.prototype.valueChanged = function valueChanged(_ref) { + var role = _ref.role; + var expression = _ref.expression; + + if (expression instanceof _aureliaFramework.AccessThis) { + this.children = null; + } else if (expression instanceof _aureliaFramework.AccessScope) { + this.children = null; + } else if (expression instanceof _aureliaFramework.AccessMember) { + this.children = [{ role: 'object', expression: expression.object }]; + } else if (expression instanceof _aureliaFramework.AccessKeyed) { + this.children = [{ role: 'Object', expression: expression.object }, { role: 'Key', expression: expression.key }]; + } else if (expression instanceof _aureliaFramework.Assign) { + this.children = [{ role: 'Target', expression: expression.target }, { role: 'Value', expression: expression.value }]; + } else if (expression instanceof _aureliaFramework.Binary) { + this.children = [{ role: 'Left', expression: expression.left }, { role: 'Right', expression: expression.right }]; + } else if (expression instanceof _aureliaFramework.BindingBehavior) { + this.children = [{ role: 'Target', expression: expression.expression }].concat(expression.args.map(function (x) { + return { role: 'Argument', expression: x }; + })); + } else if (expression instanceof _aureliaFramework.CallFunction) { + this.children = [{ role: 'Function', expression: expression.func }].concat(expression.args.map(function (x) { + return { role: 'Argument', expression: x }; + })); + } else if (expression instanceof _aureliaFramework.CallMember) { + this.children = [{ role: 'Object', expression: expression.object }].concat(expression.args.map(function (x) { + return { role: 'Argument', expression: x }; + })); + } else if (expression instanceof _aureliaFramework.CallScope) { + this.children = expression.args.map(function (x) { + return { role: 'Argument', expression: x }; + }); + } else if (expression instanceof _aureliaFramework.Conditional) { + this.children = [{ role: 'Condition', expression: expression.condition }, { role: 'True-Value', expression: expression.yes }, { role: 'False-Value', expression: expression.no }]; + } else if (expression instanceof _aureliaFramework.LiteralPrimitive || expression instanceof _aureliaFramework.LiteralString) { + this.children = null; + } else if (expression instanceof _aureliaFramework.LiteralArray) { + this.children = expression.elements.map(function (x) { + return { role: 'Element', expression: x }; + }); + } else if (expression instanceof _aureliaFramework.LiteralObject) { + this.children = expression.values.map(function (x) { + return { role: 'Property Value', expression: x }; + }); + } else if (expression instanceof _aureliaFramework.PrefixNot) { + this.children = [{ role: 'Target', expression: expression.expression }]; + } else if (expression instanceof _aureliaFramework.ValueConverter) { + this.children = [{ role: 'Target', expression: expression.allArgs[0] }].concat(expression.args.map(function (x) { + return { role: 'Argument', expression: x }; + })); + } else { + this.children = null; + } + }; + + return Expression; + }(), (_descriptor = _applyDecoratedDescriptor(_class2.prototype, 'value', [_aureliaFramework.bindable], { + enumerable: true, + initializer: null + })), _class2)) || _class; +}); \ No newline at end of file diff --git a/doc/example-dist/binding-radios/objects-matcher/app.html b/doc/example-dist/binding-radios/objects-matcher/app.html new file mode 100644 index 00000000..05d81faa --- /dev/null +++ b/doc/example-dist/binding-radios/objects-matcher/app.html @@ -0,0 +1,28 @@ + diff --git a/doc/example-dist/binding-radios/objects-matcher/app.js b/doc/example-dist/binding-radios/objects-matcher/app.js new file mode 100644 index 00000000..1313d8c9 --- /dev/null +++ b/doc/example-dist/binding-radios/objects-matcher/app.js @@ -0,0 +1,23 @@ +define(['exports'], function (exports) { + 'use strict'; + + Object.defineProperty(exports, "__esModule", { + value: true + }); + + function _classCallCheck(instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + } + + var App = exports.App = function App() { + _classCallCheck(this, App); + + this.selectedProduct = { id: 1, name: 'CPU' }; + + this.productMatcher = function (a, b) { + return a.id === b.id; + }; + }; +}); \ No newline at end of file diff --git a/doc/example-dist/binding-selects/single/objects-matcher/app.html b/doc/example-dist/binding-selects/single/objects-matcher/app.html new file mode 100644 index 00000000..e35f6ab2 --- /dev/null +++ b/doc/example-dist/binding-selects/single/objects-matcher/app.html @@ -0,0 +1,14 @@ + diff --git a/doc/example-dist/binding-selects/single/objects-matcher/app.js b/doc/example-dist/binding-selects/single/objects-matcher/app.js new file mode 100644 index 00000000..6deb944c --- /dev/null +++ b/doc/example-dist/binding-selects/single/objects-matcher/app.js @@ -0,0 +1,25 @@ +define(['exports'], function (exports) { + 'use strict'; + + Object.defineProperty(exports, "__esModule", { + value: true + }); + + function _classCallCheck(instance, Constructor) { + if (!(instance instanceof Constructor)) { + throw new TypeError("Cannot call a class as a function"); + } + } + + var App = exports.App = function App() { + _classCallCheck(this, App); + + this.products = [{ id: 0, name: 'Motherboard' }, { id: 1, name: 'CPU' }, { id: 2, name: 'Memory' }]; + + this.productMatcher = function (a, b) { + return a.id === b.id; + }; + + this.selectedProduct = { id: 1, name: 'CPU' }; + }; +}); \ No newline at end of file diff --git a/doc/example-dist/binding-value-converters/binding-converter-parameters/number-format.js b/doc/example-dist/binding-value-converters/binding-converter-parameters/number-format.js index 87a08034..26c35820 100644 --- a/doc/example-dist/binding-value-converters/binding-converter-parameters/number-format.js +++ b/doc/example-dist/binding-value-converters/binding-converter-parameters/number-format.js @@ -6,12 +6,23 @@ define(['exports', 'numeral'], function (exports, _numeral) { }); exports.NumberFormatValueConverter = undefined; - var _numeral2 = _interopRequireDefault(_numeral); + var numeral = _interopRequireWildcard(_numeral); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { - default: obj - }; + function _interopRequireWildcard(obj) { + if (obj && obj.__esModule) { + return obj; + } else { + var newObj = {}; + + if (obj != null) { + for (var key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; + } + } + + newObj.default = obj; + return newObj; + } } function _classCallCheck(instance, Constructor) { @@ -26,7 +37,7 @@ define(['exports', 'numeral'], function (exports, _numeral) { } NumberFormatValueConverter.prototype.toView = function toView(value, format) { - return (0, _numeral2.default)(value).format(format); + return numeral(value).format(format); }; return NumberFormatValueConverter; diff --git a/doc/example-dist/binding-value-converters/converter-parameters/date-format.js b/doc/example-dist/binding-value-converters/converter-parameters/date-format.js index a7a6186d..1ead2921 100644 --- a/doc/example-dist/binding-value-converters/converter-parameters/date-format.js +++ b/doc/example-dist/binding-value-converters/converter-parameters/date-format.js @@ -6,12 +6,23 @@ define(['exports', 'moment'], function (exports, _moment) { }); exports.DateFormatValueConverter = undefined; - var _moment2 = _interopRequireDefault(_moment); + var moment = _interopRequireWildcard(_moment); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { - default: obj - }; + function _interopRequireWildcard(obj) { + if (obj && obj.__esModule) { + return obj; + } else { + var newObj = {}; + + if (obj != null) { + for (var key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; + } + } + + newObj.default = obj; + return newObj; + } } function _classCallCheck(instance, Constructor) { @@ -26,7 +37,7 @@ define(['exports', 'moment'], function (exports, _moment) { } DateFormatValueConverter.prototype.toView = function toView(value, format) { - return (0, _moment2.default)(value).format(format); + return moment(value).format(format); }; return DateFormatValueConverter; diff --git a/doc/example-dist/binding-value-converters/converter-parameters/number-format.js b/doc/example-dist/binding-value-converters/converter-parameters/number-format.js index 87a08034..26c35820 100644 --- a/doc/example-dist/binding-value-converters/converter-parameters/number-format.js +++ b/doc/example-dist/binding-value-converters/converter-parameters/number-format.js @@ -6,12 +6,23 @@ define(['exports', 'numeral'], function (exports, _numeral) { }); exports.NumberFormatValueConverter = undefined; - var _numeral2 = _interopRequireDefault(_numeral); + var numeral = _interopRequireWildcard(_numeral); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { - default: obj - }; + function _interopRequireWildcard(obj) { + if (obj && obj.__esModule) { + return obj; + } else { + var newObj = {}; + + if (obj != null) { + for (var key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; + } + } + + newObj.default = obj; + return newObj; + } } function _classCallCheck(instance, Constructor) { @@ -26,7 +37,7 @@ define(['exports', 'numeral'], function (exports, _numeral) { } NumberFormatValueConverter.prototype.toView = function toView(value, format) { - return (0, _numeral2.default)(value).format(format); + return numeral(value).format(format); }; return NumberFormatValueConverter; diff --git a/doc/example-dist/binding-value-converters/simple-converter/currency-format.js b/doc/example-dist/binding-value-converters/simple-converter/currency-format.js index 70740891..0763d29b 100644 --- a/doc/example-dist/binding-value-converters/simple-converter/currency-format.js +++ b/doc/example-dist/binding-value-converters/simple-converter/currency-format.js @@ -6,12 +6,23 @@ define(['exports', 'numeral'], function (exports, _numeral) { }); exports.CurrencyFormatValueConverter = undefined; - var _numeral2 = _interopRequireDefault(_numeral); + var numeral = _interopRequireWildcard(_numeral); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { - default: obj - }; + function _interopRequireWildcard(obj) { + if (obj && obj.__esModule) { + return obj; + } else { + var newObj = {}; + + if (obj != null) { + for (var key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; + } + } + + newObj.default = obj; + return newObj; + } } function _classCallCheck(instance, Constructor) { @@ -26,7 +37,7 @@ define(['exports', 'numeral'], function (exports, _numeral) { } CurrencyFormatValueConverter.prototype.toView = function toView(value) { - return (0, _numeral2.default)(value).format('($0,0.00)'); + return numeral(value).format('($0,0.00)'); }; return CurrencyFormatValueConverter; diff --git a/doc/example-dist/binding-value-converters/simple-converter/date-format.js b/doc/example-dist/binding-value-converters/simple-converter/date-format.js index 56080793..5c720157 100644 --- a/doc/example-dist/binding-value-converters/simple-converter/date-format.js +++ b/doc/example-dist/binding-value-converters/simple-converter/date-format.js @@ -6,12 +6,23 @@ define(['exports', 'moment'], function (exports, _moment) { }); exports.DateFormatValueConverter = undefined; - var _moment2 = _interopRequireDefault(_moment); + var moment = _interopRequireWildcard(_moment); - function _interopRequireDefault(obj) { - return obj && obj.__esModule ? obj : { - default: obj - }; + function _interopRequireWildcard(obj) { + if (obj && obj.__esModule) { + return obj; + } else { + var newObj = {}; + + if (obj != null) { + for (var key in obj) { + if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; + } + } + + newObj.default = obj; + return newObj; + } } function _classCallCheck(instance, Constructor) { @@ -26,7 +37,7 @@ define(['exports', 'moment'], function (exports, _moment) { } DateFormatValueConverter.prototype.toView = function toView(value) { - return (0, _moment2.default)(value).format('M/D/YYYY h:mm:ss a'); + return moment(value).format('M/D/YYYY h:mm:ss a'); }; return DateFormatValueConverter; diff --git a/package.json b/package.json index ea97d233..2d6de545 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "aurelia-binding", - "version": "1.0.0-rc.1.0.3", + "version": "1.0.0-rc.1.0.4", "description": "A modern databinding library for JavaScript and HTML.", "keywords": [ "aurelia",