@skyux/list-builder-common 5.5.0 → 5.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -97,7 +97,6 @@
97
97
  * @internal
98
98
  */
99
99
  var AsyncItem = /** @class */ (function () {
100
- /* tslint:disable:no-null-keyword */
101
100
  function AsyncItem(item, lastUpdate, loading) {
102
101
  if (item === void 0) { item = {}; }
103
102
  if (lastUpdate === void 0) { lastUpdate = null; }
@@ -4,7 +4,7 @@ export function getData(item, selector) {
4
4
  if (!selector) {
5
5
  return undefined;
6
6
  }
7
- let resultFieldParts = selector.split('.');
7
+ const resultFieldParts = selector.split('.');
8
8
  if (resultFieldParts.length > 0 && resultFieldParts[0] === '') {
9
9
  resultFieldParts.shift();
10
10
  }
@@ -12,7 +12,7 @@ export function getData(item, selector) {
12
12
  /* istanbul ignore else */
13
13
  if (resultFieldParts.length > 0) {
14
14
  for (let index = 0; index < resultFieldParts.length; index++) {
15
- let part = resultFieldParts[index];
15
+ const part = resultFieldParts[index];
16
16
  /* tslint:disable:no-null-keyword */
17
17
  /* istanbul ignore else */
18
18
  if (result[part] === null || result[part] === undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../../libs/components/list-builder-common/src/lib/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,gBAAgB;AAChB,MAAM,UAAU,OAAO,CAAC,IAAS,EAAE,QAAgB;IACjD,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,SAAS,CAAC;KAClB;IAED,IAAI,gBAAgB,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3C,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,gBAAgB,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE;QAC7D,gBAAgB,CAAC,KAAK,EAAE,CAAC;KAC1B;IAED,IAAI,MAAM,GAAG,IAAI,CAAC;IAElB,0BAA0B;IAC1B,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;QAC/B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAC5D,IAAI,IAAI,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACnC,oCAAoC;YACpC,0BAA0B;YAC1B,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE;gBACvD,MAAM,GAAG,IAAI,CAAC;gBACd,MAAM;aACP;YACD,mCAAmC;YAEnC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;SACvB;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,OAAO,CAAC,MAAW,EAAE,MAAW;IAC9C,oCAAoC;IACpC,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,OAAO,CAAC,CAAC;KACV;SAAM,IAAI,MAAM,KAAK,IAAI,EAAE;QAC1B,OAAO,CAAC,CAAC,CAAC;KACX;IACD,mCAAmC;IAEnC,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QACxC,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;KAC/B;IAED,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QACxC,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;KAC/B;IACD,IAAI,MAAM,KAAK,MAAM,EAAE;QACrB,OAAO,CAAC,CAAC;KACV;IAED,OAAO,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;EAGE;AACF,gBAAgB;AAChB,MAAM,UAAU,YAAY,CAAI,GAAQ;IACtC,0BAA0B;IAC1B,OAAO,CACL,CAAC,CAAC,GAAG;QACL,CAAC,GAAG,YAAY,UAAU;YACxB,CAAC,OAAO,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,GAAG,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC,CAC3E,CAAC;AACJ,CAAC","sourcesContent":["import { Observable } from 'rxjs';\n\n/** @internal */\nexport function getData(item: any, selector: string): any {\n if (!selector) {\n return undefined;\n }\n\n let resultFieldParts = selector.split('.');\n if (resultFieldParts.length > 0 && resultFieldParts[0] === '') {\n resultFieldParts.shift();\n }\n\n let result = item;\n\n /* istanbul ignore else */\n if (resultFieldParts.length > 0) {\n for (let index = 0; index < resultFieldParts.length; index++) {\n let part = resultFieldParts[index];\n /* tslint:disable:no-null-keyword */\n /* istanbul ignore else */\n if (result[part] === null || result[part] === undefined) {\n result = null;\n break;\n }\n /* tslint:enable:no-null-keyword */\n\n result = result[part];\n }\n }\n\n return result;\n}\n\n/** @internal */\nexport function compare(value1: any, value2: any) {\n /* tslint:disable:no-null-keyword */\n if (value1 === null) {\n return 1;\n } else if (value2 === null) {\n return -1;\n }\n /* tslint:enable:no-null-keyword */\n\n if (value1 && typeof value1 === 'string') {\n value1 = value1.toLowerCase();\n }\n\n if (value2 && typeof value2 === 'string') {\n value2 = value2.toLowerCase();\n }\n if (value1 === value2) {\n return 0;\n }\n\n return value1 > value2 ? 1 : -1;\n}\n\n/*\n Taken directly from rxjs's internal utility to determine whether an object is an Obserable.\n See: https://github.com/ReactiveX/rxjs/blob/master/src/internal/util/isObservable.ts\n*/\n/** @internal */\nexport function isObservable<T>(obj: any): obj is Observable<T> {\n /* istanbul ignore next */\n return (\n !!obj &&\n (obj instanceof Observable ||\n (typeof obj.lift === 'function' && typeof obj.subscribe === 'function'))\n );\n}\n"]}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../../libs/components/list-builder-common/src/lib/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,gBAAgB;AAChB,MAAM,UAAU,OAAO,CAAC,IAAS,EAAE,QAAgB;IACjD,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,SAAS,CAAC;KAClB;IAED,MAAM,gBAAgB,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7C,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,gBAAgB,CAAC,CAAC,CAAC,KAAK,EAAE,EAAE;QAC7D,gBAAgB,CAAC,KAAK,EAAE,CAAC;KAC1B;IAED,IAAI,MAAM,GAAG,IAAI,CAAC;IAElB,0BAA0B;IAC1B,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE;QAC/B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAC5D,MAAM,IAAI,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACrC,oCAAoC;YACpC,0BAA0B;YAC1B,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE;gBACvD,MAAM,GAAG,IAAI,CAAC;gBACd,MAAM;aACP;YACD,mCAAmC;YAEnC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;SACvB;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,gBAAgB;AAChB,MAAM,UAAU,OAAO,CAAC,MAAW,EAAE,MAAW;IAC9C,oCAAoC;IACpC,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,OAAO,CAAC,CAAC;KACV;SAAM,IAAI,MAAM,KAAK,IAAI,EAAE;QAC1B,OAAO,CAAC,CAAC,CAAC;KACX;IACD,mCAAmC;IAEnC,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QACxC,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;KAC/B;IAED,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QACxC,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;KAC/B;IACD,IAAI,MAAM,KAAK,MAAM,EAAE;QACrB,OAAO,CAAC,CAAC;KACV;IAED,OAAO,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;EAGE;AACF,gBAAgB;AAChB,MAAM,UAAU,YAAY,CAAI,GAAQ;IACtC,0BAA0B;IAC1B,OAAO,CACL,CAAC,CAAC,GAAG;QACL,CAAC,GAAG,YAAY,UAAU;YACxB,CAAC,OAAO,GAAG,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,GAAG,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC,CAC3E,CAAC;AACJ,CAAC","sourcesContent":["import { Observable } from 'rxjs';\n\n/** @internal */\nexport function getData(item: any, selector: string): any {\n if (!selector) {\n return undefined;\n }\n\n const resultFieldParts = selector.split('.');\n if (resultFieldParts.length > 0 && resultFieldParts[0] === '') {\n resultFieldParts.shift();\n }\n\n let result = item;\n\n /* istanbul ignore else */\n if (resultFieldParts.length > 0) {\n for (let index = 0; index < resultFieldParts.length; index++) {\n const part = resultFieldParts[index];\n /* tslint:disable:no-null-keyword */\n /* istanbul ignore else */\n if (result[part] === null || result[part] === undefined) {\n result = null;\n break;\n }\n /* tslint:enable:no-null-keyword */\n\n result = result[part];\n }\n }\n\n return result;\n}\n\n/** @internal */\nexport function compare(value1: any, value2: any) {\n /* tslint:disable:no-null-keyword */\n if (value1 === null) {\n return 1;\n } else if (value2 === null) {\n return -1;\n }\n /* tslint:enable:no-null-keyword */\n\n if (value1 && typeof value1 === 'string') {\n value1 = value1.toLowerCase();\n }\n\n if (value2 && typeof value2 === 'string') {\n value2 = value2.toLowerCase();\n }\n if (value1 === value2) {\n return 0;\n }\n\n return value1 > value2 ? 1 : -1;\n}\n\n/*\n Taken directly from rxjs's internal utility to determine whether an object is an Obserable.\n See: https://github.com/ReactiveX/rxjs/blob/master/src/internal/util/isObservable.ts\n*/\n/** @internal */\nexport function isObservable<T>(obj: any): obj is Observable<T> {\n /* istanbul ignore next */\n return (\n !!obj &&\n (obj instanceof Observable ||\n (typeof obj.lift === 'function' && typeof obj.subscribe === 'function'))\n );\n}\n"]}
@@ -2,7 +2,6 @@
2
2
  * @internal
3
3
  */
4
4
  export class AsyncItem {
5
- /* tslint:disable:no-null-keyword */
6
5
  constructor(item = {}, lastUpdate = null, loading = false) {
7
6
  this.item = item;
8
7
  this.lastUpdate = lastUpdate;
@@ -1 +1 @@
1
- {"version":3,"file":"async-item.js","sourceRoot":"","sources":["../../../../../../../libs/components/list-builder-common/src/lib/rxstate/async-item.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,SAAS;IACpB,oCAAoC;IACpC,YACS,OAAa,EAAE,EACf,aAAkB,IAAI,EACtB,UAAmB,KAAK;QAFxB,SAAI,GAAJ,IAAI,CAAW;QACf,eAAU,GAAV,UAAU,CAAY;QACtB,YAAO,GAAP,OAAO,CAAiB;IAC9B,CAAC;CACL","sourcesContent":["/**\n * @internal\n */\nexport class AsyncItem<T> {\n /* tslint:disable:no-null-keyword */\n constructor(\n public item: T = <T>{},\n public lastUpdate: any = null,\n public loading: boolean = false\n ) {}\n}\n"]}
1
+ {"version":3,"file":"async-item.js","sourceRoot":"","sources":["../../../../../../../libs/components/list-builder-common/src/lib/rxstate/async-item.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,SAAS;IACpB,YACS,OAAU,EAAO,EACjB,aAAkB,IAAI,EACtB,UAAU,KAAK;QAFf,SAAI,GAAJ,IAAI,CAAa;QACjB,eAAU,GAAV,UAAU,CAAY;QACtB,YAAO,GAAP,OAAO,CAAQ;IACrB,CAAC;CACL","sourcesContent":["/**\n * @internal\n */\nexport class AsyncItem<T> {\n constructor(\n public item: T = {} as T,\n public lastUpdate: any = null,\n public loading = false\n ) {}\n}\n"]}
@@ -24,7 +24,7 @@ export class StateNode extends BehaviorSubject {
24
24
  zip
25
25
  .apply(this, orchestrators)
26
26
  .pipe(observableMap((s) => {
27
- let result = {};
27
+ const result = {};
28
28
  for (let i = 0; i < stateKeys.length; i++) {
29
29
  const key = stateKeys[i];
30
30
  result[key] = s[i];
@@ -1 +1 @@
1
- {"version":3,"file":"state-node.js","sourceRoot":"","sources":["../../../../../../../libs/components/list-builder-common/src/lib/rxstate/state-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAE5C,OAAO,EAAE,GAAG,IAAI,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAItD;;GAEG;AACH,MAAM,OAAO,SAAa,SAAQ,eAAkB;IAGlD,YACU,YAAe,EACf,UAAgC;QAExC,KAAK,CAAC,YAAY,CAAC,CAAC;QAHZ,iBAAY,GAAZ,YAAY,CAAG;QACf,eAAU,GAAV,UAAU,CAAsB;QAJlC,aAAQ,GAAgC,EAAE,CAAC;IAOnD,CAAC;IAEM,QAAQ,CAAC,QAAgB,EAAE,YAAiB;QACjD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,YAAY,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK;QACV,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC/B,CAAC;IAEM,KAAK;QACV,MAAM,SAAS,GAAkB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5D,MAAM,IAAI,GAAgC,IAAI,CAAC,YAAY,CAAC;QAE5D,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAC1C,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAC1D,CAAC;QAEF,GAAG;aACA,KAAK,CAAC,IAAI,EAAE,aAAa,CAAC;aAC1B,IAAI,CACH,aAAa,CAAC,CAAC,CAAM,EAAE,EAAE;YACvB,IAAI,MAAM,GAAW,EAAE,CAAC;YACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACzC,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBACzB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aACpB;YAED,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CACH;aACA,SAAS,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,CAAC;CACF","sourcesContent":["import { BehaviorSubject, zip } from 'rxjs';\n\nimport { map as observableMap } from 'rxjs/operators';\n\nimport { StateDispatcher } from './state-dispatcher';\n\n/**\n * @internal\n */\nexport class StateNode<T> extends BehaviorSubject<T> {\n private stateMap: { [stateKey: string]: any } = {};\n\n constructor(\n private initialState: T,\n private dispatcher: StateDispatcher<any>\n ) {\n super(initialState);\n }\n\n public register(stateKey: string, orchestrator: any) {\n this.stateMap[stateKey] = orchestrator;\n return this;\n }\n\n public reset() {\n this.next(this.initialState);\n }\n\n public begin() {\n const stateKeys: Array<string> = Object.keys(this.stateMap);\n const init: { [stateKey: string]: any } = this.initialState;\n\n const orchestrators = stateKeys.map((key) =>\n new this.stateMap[key]().scan(init[key], this.dispatcher)\n );\n\n zip\n .apply(this, orchestrators)\n .pipe(\n observableMap((s: any) => {\n let result: any = <T>{};\n for (let i = 0; i < stateKeys.length; i++) {\n const key = stateKeys[i];\n result[key] = s[i];\n }\n\n return result;\n })\n )\n .subscribe((s: any) => this.next(s));\n }\n}\n"]}
1
+ {"version":3,"file":"state-node.js","sourceRoot":"","sources":["../../../../../../../libs/components/list-builder-common/src/lib/rxstate/state-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAC5C,OAAO,EAAE,GAAG,IAAI,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAItD;;GAEG;AACH,MAAM,OAAO,SAAa,SAAQ,eAAkB;IAGlD,YACU,YAAe,EACf,UAAgC;QAExC,KAAK,CAAC,YAAY,CAAC,CAAC;QAHZ,iBAAY,GAAZ,YAAY,CAAG;QACf,eAAU,GAAV,UAAU,CAAsB;QAJlC,aAAQ,GAAgC,EAAE,CAAC;IAOnD,CAAC;IAEM,QAAQ,CAAC,QAAgB,EAAE,YAAiB;QACjD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,YAAY,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK;QACV,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC/B,CAAC;IAEM,KAAK;QACV,MAAM,SAAS,GAAa,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvD,MAAM,IAAI,GAAgC,IAAI,CAAC,YAAY,CAAC;QAE5D,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAC1C,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAC1D,CAAC;QAEF,GAAG;aACA,KAAK,CAAC,IAAI,EAAE,aAAa,CAAC;aAC1B,IAAI,CACH,aAAa,CAAC,CAAC,CAAM,EAAE,EAAE;YACvB,MAAM,MAAM,GAAQ,EAAE,CAAC;YACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACzC,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBACzB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aACpB;YAED,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CACH;aACA,SAAS,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IACzC,CAAC;CACF","sourcesContent":["import { BehaviorSubject, zip } from 'rxjs';\nimport { map as observableMap } from 'rxjs/operators';\n\nimport { StateDispatcher } from './state-dispatcher';\n\n/**\n * @internal\n */\nexport class StateNode<T> extends BehaviorSubject<T> {\n private stateMap: { [stateKey: string]: any } = {};\n\n constructor(\n private initialState: T,\n private dispatcher: StateDispatcher<any>\n ) {\n super(initialState);\n }\n\n public register(stateKey: string, orchestrator: any) {\n this.stateMap[stateKey] = orchestrator;\n return this;\n }\n\n public reset() {\n this.next(this.initialState);\n }\n\n public begin() {\n const stateKeys: string[] = Object.keys(this.stateMap);\n const init: { [stateKey: string]: any } = this.initialState;\n\n const orchestrators = stateKeys.map((key) =>\n new this.stateMap[key]().scan(init[key], this.dispatcher)\n );\n\n zip\n .apply(this, orchestrators)\n .pipe(\n observableMap((s: any) => {\n const result: any = {};\n for (let i = 0; i < stateKeys.length; i++) {\n const key = stateKeys[i];\n result[key] = s[i];\n }\n\n return result;\n })\n )\n .subscribe((s: any) => this.next(s));\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"state-orchestrator.js","sourceRoot":"","sources":["../../../../../../../libs/components/list-builder-common/src/lib/rxstate/state-orchestrator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC;;GAEG;AACH,MAAM,OAAO,iBAAiB;IAA9B;QACU,sBAAiB,GAAe,EAAE,CAAC;QAEnC,wBAAmB,GAEvB,EAAE,CAAC;IA+CT,CAAC;IA7CQ,QAAQ,CACb,MAAW,EACX,QAAyE;QAEzE,IAAI,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE;YACjD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACzC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,IAAI,CACT,YAAwB,EACxB,OAA4B;QAE5B,8CAA8C;QAC9C,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,MAAM,IAAI,KAAK,CACb,4GAA4G,CAC7G,CAAC;SACH;QAED,OAAO,OAAO,CAAC,IAAI,CACjB,IAAI,CAAC,CAAC,KAAU,EAAE,MAAW,EAAE,EAAE;YAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACtD,MAAM,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAQ,CAAC;gBAE3C,kHAAkH;gBAClH,IACE,MAAM,YAAY,CAAC;oBACnB,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,EACzD;oBACA,OAAO,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE;wBAC7C,KAAK;wBACL,MAAM;wBACN,YAAY;qBACb,CAAC,CAAC;iBACJ;aACF;YAED,OAAO,KAAK,CAAC;QACf,CAAC,EAAE,YAAY,CAAC,CACjB,CAAC;IACJ,CAAC;CACF","sourcesContent":["import { Observable } from 'rxjs';\n\nimport { scan } from 'rxjs/operators';\n\n/**\n * @internal\n */\nexport class StateOrchestrator<TStateNode, TAction> {\n private registeredActions: Array<any> = [];\n\n private registeredCallbacks: Array<\n (state: TStateNode, action: TAction, initialState?: any) => any\n > = [];\n\n public register(\n action: any,\n callback: (state: TStateNode, action: TAction, initialState?: any) => any\n ): StateOrchestrator<TStateNode, TAction> {\n if (this.registeredActions.indexOf(action) === -1) {\n this.registeredActions.push(action);\n this.registeredCallbacks.push(callback);\n }\n\n return this;\n }\n\n public scan(\n initialState: TStateNode,\n actions: Observable<TAction>\n ): Observable<any> {\n /* tslint:disable-next-line:no-null-keyword */\n if (initialState == null) {\n throw new Error(\n 'Initial state for an orchestrator should never be null. Check your StateNode definition and registrations.'\n );\n }\n\n return actions.pipe(\n scan((state: any, action: any) => {\n for (let i = 0; i < this.registeredActions.length; i++) {\n const a = this.registeredActions[i] as any;\n\n // length is seemingly arbitrary but it's a stopgap to prevent checking via constructor name when code is minified\n if (\n action instanceof a ||\n (a.name.length > 4 && action.constructor.name === a.name)\n ) {\n return this.registeredCallbacks[i].apply(this, [\n state,\n action,\n initialState,\n ]);\n }\n }\n\n return state;\n }, initialState)\n );\n }\n}\n"]}
1
+ {"version":3,"file":"state-orchestrator.js","sourceRoot":"","sources":["../../../../../../../libs/components/list-builder-common/src/lib/rxstate/state-orchestrator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC;;GAEG;AACH,MAAM,OAAO,iBAAiB;IAA9B;QACU,sBAAiB,GAAe,EAAE,CAAC;QAEnC,wBAAmB,GAEvB,EAAE,CAAC;IA+CT,CAAC;IA7CQ,QAAQ,CACb,MAAW,EACX,QAAyE;QAEzE,IAAI,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE;YACjD,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SACzC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,IAAI,CACT,YAAwB,EACxB,OAA4B;QAE5B,8CAA8C;QAC9C,IAAI,YAAY,IAAI,IAAI,EAAE;YACxB,MAAM,IAAI,KAAK,CACb,4GAA4G,CAC7G,CAAC;SACH;QAED,OAAO,OAAO,CAAC,IAAI,CACjB,IAAI,CAAC,CAAC,KAAU,EAAE,MAAW,EAAE,EAAE;YAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACtD,MAAM,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAQ,CAAC;gBAE3C,kHAAkH;gBAClH,IACE,MAAM,YAAY,CAAC;oBACnB,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,EACzD;oBACA,OAAO,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE;wBAC7C,KAAK;wBACL,MAAM;wBACN,YAAY;qBACb,CAAC,CAAC;iBACJ;aACF;YAED,OAAO,KAAK,CAAC;QACf,CAAC,EAAE,YAAY,CAAC,CACjB,CAAC;IACJ,CAAC;CACF","sourcesContent":["import { Observable } from 'rxjs';\nimport { scan } from 'rxjs/operators';\n\n/**\n * @internal\n */\nexport class StateOrchestrator<TStateNode, TAction> {\n private registeredActions: Array<any> = [];\n\n private registeredCallbacks: Array<\n (state: TStateNode, action: TAction, initialState?: any) => any\n > = [];\n\n public register(\n action: any,\n callback: (state: TStateNode, action: TAction, initialState?: any) => any\n ): StateOrchestrator<TStateNode, TAction> {\n if (this.registeredActions.indexOf(action) === -1) {\n this.registeredActions.push(action);\n this.registeredCallbacks.push(callback);\n }\n\n return this;\n }\n\n public scan(\n initialState: TStateNode,\n actions: Observable<TAction>\n ): Observable<any> {\n /* tslint:disable-next-line:no-null-keyword */\n if (initialState == null) {\n throw new Error(\n 'Initial state for an orchestrator should never be null. Check your StateNode definition and registrations.'\n );\n }\n\n return actions.pipe(\n scan((state: any, action: any) => {\n for (let i = 0; i < this.registeredActions.length; i++) {\n const a = this.registeredActions[i] as any;\n\n // length is seemingly arbitrary but it's a stopgap to prevent checking via constructor name when code is minified\n if (\n action instanceof a ||\n (a.name.length > 4 && action.constructor.name === a.name)\n ) {\n return this.registeredCallbacks[i].apply(this, [\n state,\n action,\n initialState,\n ]);\n }\n }\n\n return state;\n }, initialState)\n );\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"field-selector.model.js","sourceRoot":"","sources":["../../../../../../../../libs/components/list-builder-common/src/lib/state/sort/field-selector.model.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,0BAA0B;IAWrC,YAAY,IAAU;QAVtB;;WAEG;QACI,eAAU,GAAY,KAAK,CAAC;QAQjC,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;YACxC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;SACnC;IACH,CAAC;CACF","sourcesContent":["export class ListSortFieldSelectorModel {\n /**\n * Indicates whether to sort in descending order.\n */\n public descending: boolean = false;\n\n /**\n * Specifies the fields to sort.\n */\n public fieldSelector: string;\n\n constructor(data?: any) {\n if (data) {\n this.fieldSelector = data.fieldSelector;\n this.descending = data.descending;\n }\n }\n}\n"]}
1
+ {"version":3,"file":"field-selector.model.js","sourceRoot":"","sources":["../../../../../../../../libs/components/list-builder-common/src/lib/state/sort/field-selector.model.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,0BAA0B;IAWrC,YAAY,IAAU;QAVtB;;WAEG;QACI,eAAU,GAAG,KAAK,CAAC;QAQxB,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;YACxC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;SACnC;IACH,CAAC;CACF","sourcesContent":["export class ListSortFieldSelectorModel {\n /**\n * Indicates whether to sort in descending order.\n */\n public descending = false;\n\n /**\n * Specifies the fields to sort.\n */\n public fieldSelector: string;\n\n constructor(data?: any) {\n if (data) {\n this.fieldSelector = data.fieldSelector;\n this.descending = data.descending;\n }\n }\n}\n"]}
@@ -34,7 +34,7 @@ function getData(item, selector) {
34
34
  if (!selector) {
35
35
  return undefined;
36
36
  }
37
- let resultFieldParts = selector.split('.');
37
+ const resultFieldParts = selector.split('.');
38
38
  if (resultFieldParts.length > 0 && resultFieldParts[0] === '') {
39
39
  resultFieldParts.shift();
40
40
  }
@@ -42,7 +42,7 @@ function getData(item, selector) {
42
42
  /* istanbul ignore else */
43
43
  if (resultFieldParts.length > 0) {
44
44
  for (let index = 0; index < resultFieldParts.length; index++) {
45
- let part = resultFieldParts[index];
45
+ const part = resultFieldParts[index];
46
46
  /* tslint:disable:no-null-keyword */
47
47
  /* istanbul ignore else */
48
48
  if (result[part] === null || result[part] === undefined) {
@@ -92,7 +92,6 @@ function isObservable(obj) {
92
92
  * @internal
93
93
  */
94
94
  class AsyncItem {
95
- /* tslint:disable:no-null-keyword */
96
95
  constructor(item = {}, lastUpdate = null, loading = false) {
97
96
  this.item = item;
98
97
  this.lastUpdate = lastUpdate;
@@ -154,7 +153,7 @@ class StateNode extends BehaviorSubject {
154
153
  zip
155
154
  .apply(this, orchestrators)
156
155
  .pipe(map((s) => {
157
- let result = {};
156
+ const result = {};
158
157
  for (let i = 0; i < stateKeys.length; i++) {
159
158
  const key = stateKeys[i];
160
159
  result[key] = s[i];
@@ -1 +1 @@
1
- {"version":3,"file":"skyux-list-builder-common.js","sources":["../../../../../libs/components/list-builder-common/src/lib/state/items/item.model.ts","../../../../../libs/components/list-builder-common/src/lib/state/sort/field-selector.model.ts","../../../../../libs/components/list-builder-common/src/lib/helpers.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/async-item.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/async-list.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/helpers.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/state-dispatcher.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/state-node.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/state-orchestrator.ts","../../../../../libs/components/list-builder-common/src/skyux-list-builder-common.ts"],"sourcesContent":["export class ListItemModel {\n /**\n * Specifies the data for the item in the list.\n */\n public data: any;\n\n /**\n * Specifies the ID for the item in the list.\n * @required\n */\n public id: string;\n\n /**\n * Indicates whether the item in the list is selected.\n * @default false\n */\n public isSelected?: boolean;\n\n constructor(id: string, data?: any, isSelected?: boolean) {\n if (id === undefined) {\n throw new Error('All list item models require an ID');\n }\n\n this.id = id;\n\n if (data !== undefined) {\n this.data = data;\n }\n\n if (isSelected !== undefined) {\n this.isSelected = isSelected;\n }\n }\n}\n","export class ListSortFieldSelectorModel {\n /**\n * Indicates whether to sort in descending order.\n */\n public descending: boolean = false;\n\n /**\n * Specifies the fields to sort.\n */\n public fieldSelector: string;\n\n constructor(data?: any) {\n if (data) {\n this.fieldSelector = data.fieldSelector;\n this.descending = data.descending;\n }\n }\n}\n","import { Observable } from 'rxjs';\n\n/** @internal */\nexport function getData(item: any, selector: string): any {\n if (!selector) {\n return undefined;\n }\n\n let resultFieldParts = selector.split('.');\n if (resultFieldParts.length > 0 && resultFieldParts[0] === '') {\n resultFieldParts.shift();\n }\n\n let result = item;\n\n /* istanbul ignore else */\n if (resultFieldParts.length > 0) {\n for (let index = 0; index < resultFieldParts.length; index++) {\n let part = resultFieldParts[index];\n /* tslint:disable:no-null-keyword */\n /* istanbul ignore else */\n if (result[part] === null || result[part] === undefined) {\n result = null;\n break;\n }\n /* tslint:enable:no-null-keyword */\n\n result = result[part];\n }\n }\n\n return result;\n}\n\n/** @internal */\nexport function compare(value1: any, value2: any) {\n /* tslint:disable:no-null-keyword */\n if (value1 === null) {\n return 1;\n } else if (value2 === null) {\n return -1;\n }\n /* tslint:enable:no-null-keyword */\n\n if (value1 && typeof value1 === 'string') {\n value1 = value1.toLowerCase();\n }\n\n if (value2 && typeof value2 === 'string') {\n value2 = value2.toLowerCase();\n }\n if (value1 === value2) {\n return 0;\n }\n\n return value1 > value2 ? 1 : -1;\n}\n\n/*\n Taken directly from rxjs's internal utility to determine whether an object is an Obserable.\n See: https://github.com/ReactiveX/rxjs/blob/master/src/internal/util/isObservable.ts\n*/\n/** @internal */\nexport function isObservable<T>(obj: any): obj is Observable<T> {\n /* istanbul ignore next */\n return (\n !!obj &&\n (obj instanceof Observable ||\n (typeof obj.lift === 'function' && typeof obj.subscribe === 'function'))\n );\n}\n","/**\n * @internal\n */\nexport class AsyncItem<T> {\n /* tslint:disable:no-null-keyword */\n constructor(\n public item: T = <T>{},\n public lastUpdate: any = null,\n public loading: boolean = false\n ) {}\n}\n","/**\n * @internal\n */\nexport class AsyncList<T> {\n /* tslint:disable:no-null-keyword */\n constructor(\n public items: T[] = [],\n public lastUpdate: any = null,\n public loading: boolean = false,\n public count: number = items.length\n ) {}\n}\n","import { Observable } from 'rxjs';\n\n/** @internal */\nexport function getValue(property: any, callback: any): Observable<any> {\n if (property instanceof Observable) {\n property.subscribe((value) => callback(value));\n return property;\n } else {\n return callback(property);\n }\n}\n","import { Subject } from 'rxjs';\n\n/**\n * @internal\n */\nexport class StateDispatcher<TAction> extends Subject<TAction> {}\n","import { BehaviorSubject, zip } from 'rxjs';\n\nimport { map as observableMap } from 'rxjs/operators';\n\nimport { StateDispatcher } from './state-dispatcher';\n\n/**\n * @internal\n */\nexport class StateNode<T> extends BehaviorSubject<T> {\n private stateMap: { [stateKey: string]: any } = {};\n\n constructor(\n private initialState: T,\n private dispatcher: StateDispatcher<any>\n ) {\n super(initialState);\n }\n\n public register(stateKey: string, orchestrator: any) {\n this.stateMap[stateKey] = orchestrator;\n return this;\n }\n\n public reset() {\n this.next(this.initialState);\n }\n\n public begin() {\n const stateKeys: Array<string> = Object.keys(this.stateMap);\n const init: { [stateKey: string]: any } = this.initialState;\n\n const orchestrators = stateKeys.map((key) =>\n new this.stateMap[key]().scan(init[key], this.dispatcher)\n );\n\n zip\n .apply(this, orchestrators)\n .pipe(\n observableMap((s: any) => {\n let result: any = <T>{};\n for (let i = 0; i < stateKeys.length; i++) {\n const key = stateKeys[i];\n result[key] = s[i];\n }\n\n return result;\n })\n )\n .subscribe((s: any) => this.next(s));\n }\n}\n","import { Observable } from 'rxjs';\n\nimport { scan } from 'rxjs/operators';\n\n/**\n * @internal\n */\nexport class StateOrchestrator<TStateNode, TAction> {\n private registeredActions: Array<any> = [];\n\n private registeredCallbacks: Array<\n (state: TStateNode, action: TAction, initialState?: any) => any\n > = [];\n\n public register(\n action: any,\n callback: (state: TStateNode, action: TAction, initialState?: any) => any\n ): StateOrchestrator<TStateNode, TAction> {\n if (this.registeredActions.indexOf(action) === -1) {\n this.registeredActions.push(action);\n this.registeredCallbacks.push(callback);\n }\n\n return this;\n }\n\n public scan(\n initialState: TStateNode,\n actions: Observable<TAction>\n ): Observable<any> {\n /* tslint:disable-next-line:no-null-keyword */\n if (initialState == null) {\n throw new Error(\n 'Initial state for an orchestrator should never be null. Check your StateNode definition and registrations.'\n );\n }\n\n return actions.pipe(\n scan((state: any, action: any) => {\n for (let i = 0; i < this.registeredActions.length; i++) {\n const a = this.registeredActions[i] as any;\n\n // length is seemingly arbitrary but it's a stopgap to prevent checking via constructor name when code is minified\n if (\n action instanceof a ||\n (a.name.length > 4 && action.constructor.name === a.name)\n ) {\n return this.registeredCallbacks[i].apply(this, [\n state,\n action,\n initialState,\n ]);\n }\n }\n\n return state;\n }, initialState)\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["observableMap"],"mappings":"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"}
1
+ {"version":3,"file":"skyux-list-builder-common.js","sources":["../../../../../libs/components/list-builder-common/src/lib/state/items/item.model.ts","../../../../../libs/components/list-builder-common/src/lib/state/sort/field-selector.model.ts","../../../../../libs/components/list-builder-common/src/lib/helpers.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/async-item.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/async-list.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/helpers.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/state-dispatcher.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/state-node.ts","../../../../../libs/components/list-builder-common/src/lib/rxstate/state-orchestrator.ts","../../../../../libs/components/list-builder-common/src/skyux-list-builder-common.ts"],"sourcesContent":["export class ListItemModel {\n /**\n * Specifies the data for the item in the list.\n */\n public data: any;\n\n /**\n * Specifies the ID for the item in the list.\n * @required\n */\n public id: string;\n\n /**\n * Indicates whether the item in the list is selected.\n * @default false\n */\n public isSelected?: boolean;\n\n constructor(id: string, data?: any, isSelected?: boolean) {\n if (id === undefined) {\n throw new Error('All list item models require an ID');\n }\n\n this.id = id;\n\n if (data !== undefined) {\n this.data = data;\n }\n\n if (isSelected !== undefined) {\n this.isSelected = isSelected;\n }\n }\n}\n","export class ListSortFieldSelectorModel {\n /**\n * Indicates whether to sort in descending order.\n */\n public descending = false;\n\n /**\n * Specifies the fields to sort.\n */\n public fieldSelector: string;\n\n constructor(data?: any) {\n if (data) {\n this.fieldSelector = data.fieldSelector;\n this.descending = data.descending;\n }\n }\n}\n","import { Observable } from 'rxjs';\n\n/** @internal */\nexport function getData(item: any, selector: string): any {\n if (!selector) {\n return undefined;\n }\n\n const resultFieldParts = selector.split('.');\n if (resultFieldParts.length > 0 && resultFieldParts[0] === '') {\n resultFieldParts.shift();\n }\n\n let result = item;\n\n /* istanbul ignore else */\n if (resultFieldParts.length > 0) {\n for (let index = 0; index < resultFieldParts.length; index++) {\n const part = resultFieldParts[index];\n /* tslint:disable:no-null-keyword */\n /* istanbul ignore else */\n if (result[part] === null || result[part] === undefined) {\n result = null;\n break;\n }\n /* tslint:enable:no-null-keyword */\n\n result = result[part];\n }\n }\n\n return result;\n}\n\n/** @internal */\nexport function compare(value1: any, value2: any) {\n /* tslint:disable:no-null-keyword */\n if (value1 === null) {\n return 1;\n } else if (value2 === null) {\n return -1;\n }\n /* tslint:enable:no-null-keyword */\n\n if (value1 && typeof value1 === 'string') {\n value1 = value1.toLowerCase();\n }\n\n if (value2 && typeof value2 === 'string') {\n value2 = value2.toLowerCase();\n }\n if (value1 === value2) {\n return 0;\n }\n\n return value1 > value2 ? 1 : -1;\n}\n\n/*\n Taken directly from rxjs's internal utility to determine whether an object is an Obserable.\n See: https://github.com/ReactiveX/rxjs/blob/master/src/internal/util/isObservable.ts\n*/\n/** @internal */\nexport function isObservable<T>(obj: any): obj is Observable<T> {\n /* istanbul ignore next */\n return (\n !!obj &&\n (obj instanceof Observable ||\n (typeof obj.lift === 'function' && typeof obj.subscribe === 'function'))\n );\n}\n","/**\n * @internal\n */\nexport class AsyncItem<T> {\n constructor(\n public item: T = {} as T,\n public lastUpdate: any = null,\n public loading = false\n ) {}\n}\n","/**\n * @internal\n */\nexport class AsyncList<T> {\n /* tslint:disable:no-null-keyword */\n constructor(\n public items: T[] = [],\n public lastUpdate: any = null,\n public loading: boolean = false,\n public count: number = items.length\n ) {}\n}\n","import { Observable } from 'rxjs';\n\n/** @internal */\nexport function getValue(property: any, callback: any): Observable<any> {\n if (property instanceof Observable) {\n property.subscribe((value) => callback(value));\n return property;\n } else {\n return callback(property);\n }\n}\n","import { Subject } from 'rxjs';\n\n/**\n * @internal\n */\nexport class StateDispatcher<TAction> extends Subject<TAction> {}\n","import { BehaviorSubject, zip } from 'rxjs';\nimport { map as observableMap } from 'rxjs/operators';\n\nimport { StateDispatcher } from './state-dispatcher';\n\n/**\n * @internal\n */\nexport class StateNode<T> extends BehaviorSubject<T> {\n private stateMap: { [stateKey: string]: any } = {};\n\n constructor(\n private initialState: T,\n private dispatcher: StateDispatcher<any>\n ) {\n super(initialState);\n }\n\n public register(stateKey: string, orchestrator: any) {\n this.stateMap[stateKey] = orchestrator;\n return this;\n }\n\n public reset() {\n this.next(this.initialState);\n }\n\n public begin() {\n const stateKeys: string[] = Object.keys(this.stateMap);\n const init: { [stateKey: string]: any } = this.initialState;\n\n const orchestrators = stateKeys.map((key) =>\n new this.stateMap[key]().scan(init[key], this.dispatcher)\n );\n\n zip\n .apply(this, orchestrators)\n .pipe(\n observableMap((s: any) => {\n const result: any = {};\n for (let i = 0; i < stateKeys.length; i++) {\n const key = stateKeys[i];\n result[key] = s[i];\n }\n\n return result;\n })\n )\n .subscribe((s: any) => this.next(s));\n }\n}\n","import { Observable } from 'rxjs';\nimport { scan } from 'rxjs/operators';\n\n/**\n * @internal\n */\nexport class StateOrchestrator<TStateNode, TAction> {\n private registeredActions: Array<any> = [];\n\n private registeredCallbacks: Array<\n (state: TStateNode, action: TAction, initialState?: any) => any\n > = [];\n\n public register(\n action: any,\n callback: (state: TStateNode, action: TAction, initialState?: any) => any\n ): StateOrchestrator<TStateNode, TAction> {\n if (this.registeredActions.indexOf(action) === -1) {\n this.registeredActions.push(action);\n this.registeredCallbacks.push(callback);\n }\n\n return this;\n }\n\n public scan(\n initialState: TStateNode,\n actions: Observable<TAction>\n ): Observable<any> {\n /* tslint:disable-next-line:no-null-keyword */\n if (initialState == null) {\n throw new Error(\n 'Initial state for an orchestrator should never be null. Check your StateNode definition and registrations.'\n );\n }\n\n return actions.pipe(\n scan((state: any, action: any) => {\n for (let i = 0; i < this.registeredActions.length; i++) {\n const a = this.registeredActions[i] as any;\n\n // length is seemingly arbitrary but it's a stopgap to prevent checking via constructor name when code is minified\n if (\n action instanceof a ||\n (a.name.length > 4 && action.constructor.name === a.name)\n ) {\n return this.registeredCallbacks[i].apply(this, [\n state,\n action,\n initialState,\n ]);\n }\n }\n\n return state;\n }, initialState)\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["observableMap"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skyux/list-builder-common",
3
- "version": "5.5.0",
3
+ "version": "5.6.0",
4
4
  "peerDependencies": {
5
5
  "@angular/core": "^12.2.16",
6
6
  "@angular/common": "^12.2.16"