@veloceapps/sdk 5.0.10 → 5.0.12

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.
Files changed (106) hide show
  1. package/bundles/veloce-sdk-cms.umd.js +39 -10
  2. package/bundles/veloce-sdk-cms.umd.js.map +1 -1
  3. package/bundles/veloce-sdk-core.umd.js.map +1 -1
  4. package/bundles/veloce-sdk-runtime.umd.js.map +1 -1
  5. package/bundles/veloce-sdk.umd.js +6 -3
  6. package/bundles/veloce-sdk.umd.js.map +1 -1
  7. package/cms/components/element-renderer/element-renderer.component.d.ts +1 -0
  8. package/cms/utils/elements-resolver.d.ts +1 -0
  9. package/cms/vendor-map.d.ts +116 -124
  10. package/core/modules/configuration/services/configuration-runtime.service.d.ts +1 -1
  11. package/esm2015/cms/components/element-renderer/element-renderer.component.js +23 -2
  12. package/esm2015/cms/components/element.component.js +1 -1
  13. package/esm2015/cms/components/preview/preview.component.js +1 -1
  14. package/esm2015/cms/decorators/element.decorator.js +1 -1
  15. package/esm2015/cms/directives/custom-template.directive.js +1 -1
  16. package/esm2015/cms/engine/models/entity.js +1 -1
  17. package/esm2015/cms/modules/federated/federated.component.js +1 -1
  18. package/esm2015/cms/modules/federated/federated.utils.js +1 -1
  19. package/esm2015/cms/plugins/configuration.plugin.js +1 -1
  20. package/esm2015/cms/plugins/script.plugin.js +1 -1
  21. package/esm2015/cms/services/dynamic-module.service.js +1 -1
  22. package/esm2015/cms/services/element-context.service.js +1 -1
  23. package/esm2015/cms/services/integration.state.js +1 -1
  24. package/esm2015/cms/services/launcher.service.js +1 -1
  25. package/esm2015/cms/services/templates.service.js +1 -1
  26. package/esm2015/cms/utils/element.utils.js +1 -1
  27. package/esm2015/cms/utils/elements-resolver.js +18 -10
  28. package/esm2015/core/modules/configuration/services/configuration-runtime.service.js +1 -1
  29. package/esm2015/core/modules/configuration/services/configuration.service.js +1 -1
  30. package/esm2015/core/modules/configuration/services/runtime-context.service.js +1 -1
  31. package/esm2015/core/modules/flow-configuration/services/flow-update.service.js +1 -1
  32. package/esm2015/core/services/context.service.js +1 -1
  33. package/esm2015/core/services/quote-draft.service.js +1 -1
  34. package/esm2015/core/utils/line-item.utils.js +1 -1
  35. package/esm2015/runtime/components/component-preview/component-preview.component.js +1 -1
  36. package/esm2015/runtime/components/section-renderer/section-renderer.component.js +1 -1
  37. package/esm2015/runtime/components/ui-runtime/runtime.component.js +1 -1
  38. package/esm2015/runtime/components/ui-runtime-preview/runtime-preview.component.js +1 -1
  39. package/esm2015/runtime/execution/components/children-placeholder/children-placeholder.component.js +1 -1
  40. package/esm2015/runtime/execution/components/context-provider/context-provider.component.js +1 -1
  41. package/esm2015/runtime/execution/components/execution-section-renderer/execution-section-renderer.component.js +1 -1
  42. package/esm2015/runtime/execution/components/federated/federated.component.js +1 -1
  43. package/esm2015/runtime/execution/components/velo-attribute/velo-attribute.component.js +1 -1
  44. package/esm2015/runtime/execution/components/velo-multiselect/velo-multiselect.component.js +1 -1
  45. package/esm2015/runtime/execution/components/velo-port-checkbox/velo-port-checkbox.component.js +1 -1
  46. package/esm2015/runtime/execution/components/velo-port-dropdown/velo-port-dropdown.component.js +1 -1
  47. package/esm2015/runtime/execution/components/velo-port-radio/velo-port-radio.component.js +1 -1
  48. package/esm2015/runtime/execution/components/velo-type/velo-type.component.js +1 -1
  49. package/esm2015/runtime/execution/directives/section-script.directive.js +1 -1
  50. package/esm2015/runtime/execution/directives/sf-query.directive.js +1 -1
  51. package/esm2015/runtime/execution/directives/velo-attribute.directive.js +1 -1
  52. package/esm2015/runtime/execution/directives/velo-port.directive.js +1 -1
  53. package/esm2015/runtime/execution/directives/vl-approval.directive.js +1 -1
  54. package/esm2015/runtime/execution/directives/vl-document-attachments.directive.js +1 -1
  55. package/esm2015/runtime/execution/directives/vl-document-templates.directive.js +1 -1
  56. package/esm2015/runtime/execution/directives/vl-quote.directive.js +1 -1
  57. package/esm2015/runtime/execution/directives/vl-ramp.directive.js +1 -1
  58. package/esm2015/runtime/execution/utils/federated.util.js +1 -1
  59. package/esm2015/runtime/services/cart.service.js +1 -1
  60. package/esm2015/runtime/services/collapsible-state.service.js +1 -1
  61. package/esm2015/runtime/services/configuration.service.js +1 -1
  62. package/esm2015/runtime/services/current-state.service.js +1 -1
  63. package/esm2015/runtime/services/form-scope.service.js +1 -1
  64. package/esm2015/runtime/services/product-model-cache.service.js +1 -1
  65. package/esm2015/runtime/services/runtime-context.service.js +1 -1
  66. package/esm2015/runtime/services/runtime-form.service.js +2 -2
  67. package/esm2015/runtime/services/runtime.service.js +1 -1
  68. package/esm2015/runtime/services/section-helper.service.js +1 -1
  69. package/esm2015/runtime/services/section-scope.service.js +1 -1
  70. package/esm2015/runtime/services/section-store.service.js +1 -1
  71. package/esm2015/runtime/services/section.service.js +1 -1
  72. package/esm2015/runtime/types/script-registry.types.js +1 -1
  73. package/esm2015/runtime/utils/line-item.util.js +1 -1
  74. package/esm2015/runtime/utils/sections-binder.helper.js +1 -1
  75. package/esm2015/src/components/dialog/dialog.component.js +1 -1
  76. package/esm2015/src/components/doc-gen/doc-gen.component.js +2 -2
  77. package/esm2015/src/components/header/cart-overlay/cart-preview.component.js +2 -2
  78. package/esm2015/src/components/header/header.component.js +1 -1
  79. package/esm2015/src/components/header/metrics/metrics.component.js +2 -2
  80. package/esm2015/src/components/header/metrics/metrics.module.js +10 -7
  81. package/esm2015/src/flow-routing.module.js +1 -1
  82. package/esm2015/src/flow.component.js +1 -1
  83. package/esm2015/src/guards/product-unload.guard.js +1 -1
  84. package/esm2015/src/guards/root.guard.js +1 -1
  85. package/esm2015/src/pages/catalog/catalog.component.js +1 -1
  86. package/esm2015/src/pages/debug/debug.component.js +1 -1
  87. package/esm2015/src/pages/legacy-product/legacy-product.component.js +1 -1
  88. package/esm2015/src/pages/product/product.component.js +1 -1
  89. package/esm2015/src/pages/record-not-found/record-not-found.component.js +1 -1
  90. package/esm2015/src/pages/shopping-cart/shopping-cart.component.js +1 -1
  91. package/esm2015/src/resolvers/flow.resolver.js +1 -1
  92. package/esm2015/src/resolvers/quote.resolver.js +1 -1
  93. package/esm2015/src/services/flow-router.service.js +1 -1
  94. package/fesm2015/veloce-sdk-cms.js +39 -10
  95. package/fesm2015/veloce-sdk-cms.js.map +1 -1
  96. package/fesm2015/veloce-sdk-core.js.map +1 -1
  97. package/fesm2015/veloce-sdk-runtime.js +1 -1
  98. package/fesm2015/veloce-sdk-runtime.js.map +1 -1
  99. package/fesm2015/veloce-sdk.js +7 -4
  100. package/fesm2015/veloce-sdk.js.map +1 -1
  101. package/package.json +1 -1
  102. package/runtime/services/runtime-form.service.d.ts +3 -3
  103. package/runtime/utils/line-item.util.d.ts +1 -1
  104. package/src/components/header/metrics/metrics.module.d.ts +1 -1
  105. package/src/guards/product-unload.guard.d.ts +2 -1
  106. package/src/resolvers/flow.resolver.d.ts +1 -1
@@ -23,6 +23,7 @@ export declare class ElementRendererComponent implements OnInit, OnDestroy {
23
23
  ngOnDestroy(): void;
24
24
  private createComponents;
25
25
  private createFromPath;
26
+ private getModelComponent;
26
27
  private createFromLineItem;
27
28
  private processChildren;
28
29
  private getParentLineItem$;
@@ -19,5 +19,6 @@ export declare class ElementsResolver {
19
19
  private processElementMetadata;
20
20
  private getSharedChildren;
21
21
  private resolveElement;
22
+ private getElementStyles;
22
23
  private convertInlineStylesToCSS;
23
24
  }
@@ -270,8 +270,8 @@ export declare const vendorMap: {
270
270
  forEachRight<TString_1 extends string | null | undefined>(collection: TString_1, iteratee?: lodash.StringIterator<any> | undefined): TString_1;
271
271
  forEachRight<T_95, TList_2 extends lodash.List<T_95> | null | undefined>(collection: TList_2 & (lodash.List<T_95> | null | undefined), iteratee?: lodash.ListIterator<T_95, any> | undefined): TList_2;
272
272
  forEachRight<T_96 extends object>(collection: T_96 | null | undefined, iteratee?: lodash.ObjectIterator<T_96, any> | undefined): T_96 | null | undefined;
273
- groupBy<T_120>(collection: lodash.List<T_120> | null | undefined, iteratee?: lodash.ValueIteratee<T_120> | undefined): lodash.Dictionary<T_120[]>;
274
- groupBy<T_121 extends object>(collection: T_121 | null | undefined, iteratee?: lodash.ValueIteratee<T_121[keyof T_121]> | undefined): lodash.Dictionary<T_121[keyof T_121][]>;
273
+ groupBy<T_120>(collection: lodash.List<T_120> | null | undefined, iteratee?: lodash.ValueIteratee<T_120> | undefined): lodash.Dictionary<[T_120, ...T_120[]]>;
274
+ groupBy<T_121 extends object>(collection: T_121 | null | undefined, iteratee?: lodash.ValueIteratee<T_121[keyof T_121]> | undefined): lodash.Dictionary<[T_121[keyof T_121], ...T_121[keyof T_121][]]>;
275
275
  includes<T_122>(collection: lodash.Dictionary<T_122> | lodash.NumericDictionary<T_122> | null | undefined, target: T_122, fromIndex?: number | undefined): boolean;
276
276
  invokeMap(collection: object | null | undefined, methodName: string, ...args: any[]): any[];
277
277
  invokeMap<TResult_13>(collection: object | null | undefined, method: (...args: any[]) => TResult_13, ...args: any[]): TResult_13[];
@@ -325,52 +325,51 @@ export declare const vendorMap: {
325
325
  bindKey: lodash.FunctionBindKey;
326
326
  curry: lodash.Curry;
327
327
  curryRight: lodash.CurryRight;
328
- debounce<T_163 extends (...args: any) => any>(func: T_163, wait: number | undefined, options: lodash.DebounceSettingsLeading): lodash.DebouncedFuncLeading<T_163>;
329
- debounce<T_164 extends (...args: any) => any>(func: T_164, wait?: number | undefined, options?: lodash.DebounceSettings | undefined): lodash.DebouncedFunc<T_164>;
328
+ debounce<T_163 extends (...args: any) => any>(func: T_163, wait?: number | undefined, options?: lodash.DebounceSettings | undefined): lodash.DebouncedFunc<T_163>;
330
329
  defer(func: (...args: any[]) => any, ...args: any[]): number;
331
330
  delay(func: (...args: any[]) => any, wait: number, ...args: any[]): number;
332
- flip<T_165 extends (...args: any) => any>(func: T_165): T_165;
331
+ flip<T_164 extends (...args: any) => any>(func: T_164): T_164;
333
332
  memoize: {
334
- <T_166 extends (...args: any) => any>(func: T_166, resolver?: ((...args: Parameters<T_166>) => any) | undefined): T_166 & lodash.MemoizedFunction;
333
+ <T_165 extends (...args: any) => any>(func: T_165, resolver?: ((...args: Parameters<T_165>) => any) | undefined): T_165 & lodash.MemoizedFunction;
335
334
  Cache: lodash.MapCacheConstructor;
336
335
  };
337
- negate<T_167 extends any[]>(predicate: (...args: T_167) => boolean): (...args: T_167) => boolean;
338
- once<T_168 extends (...args: any) => any>(func: T_168): T_168;
336
+ negate<T_166 extends any[]>(predicate: (...args: T_166) => boolean): (...args: T_166) => boolean;
337
+ once<T_167 extends (...args: any) => any>(func: T_167): T_167;
339
338
  overArgs(func: (...args: any[]) => any, ...transforms: lodash.Many<(...args: any[]) => any>[]): (...args: any[]) => any;
340
339
  partial: lodash.Partial;
341
340
  partialRight: lodash.PartialRight;
342
341
  rearg(func: (...args: any[]) => any, ...indexes: lodash.Many<number>[]): (...args: any[]) => any;
343
342
  rest(func: (...args: any[]) => any, start?: number | undefined): (...args: any[]) => any;
344
343
  spread<TResult_23>(func: (...args: any[]) => TResult_23, start?: number | undefined): (...args: any[]) => TResult_23;
345
- throttle<T_169 extends (...args: any) => any>(func: T_169, wait?: number | undefined, options?: lodash.ThrottleSettings | undefined): lodash.DebouncedFunc<T_169>;
346
- unary<T_170, TResult_24>(func: (arg1: T_170, ...args: any[]) => TResult_24): (arg1: T_170) => TResult_24;
347
- wrap<T_171, TArgs, TResult_25>(value: T_171, wrapper: (value: T_171, ...args: TArgs[]) => TResult_25): (...args: TArgs[]) => TResult_25;
348
- castArray<T_172>(value?: lodash.Many<T_172> | undefined): T_172[];
349
- clone<T_173>(value: T_173): T_173;
350
- cloneDeep<T_174>(value: T_174): T_174;
351
- cloneDeepWith<T_175>(value: T_175, customizer: lodash.CloneDeepWithCustomizer<T_175>): any;
352
- cloneDeepWith<T_176>(value: T_176): T_176;
353
- cloneWith<T_177, TResult_26 extends string | number | boolean | object | null>(value: T_177, customizer: lodash.CloneWithCustomizer<T_177, TResult_26>): TResult_26;
354
- cloneWith<T_178, TResult_27>(value: T_178, customizer: lodash.CloneWithCustomizer<T_178, TResult_27 | undefined>): T_178 | TResult_27;
355
- cloneWith<T_179>(value: T_179): T_179;
356
- conformsTo<T_180>(object: T_180, source: lodash.ConformsPredicateObject<T_180>): boolean;
344
+ throttle<T_168 extends (...args: any) => any>(func: T_168, wait?: number | undefined, options?: lodash.ThrottleSettings | undefined): lodash.DebouncedFunc<T_168>;
345
+ unary<T_169, TResult_24>(func: (arg1: T_169, ...args: any[]) => TResult_24): (arg1: T_169) => TResult_24;
346
+ wrap<T_170, TArgs, TResult_25>(value: T_170, wrapper: (value: T_170, ...args: TArgs[]) => TResult_25): (...args: TArgs[]) => TResult_25;
347
+ castArray<T_171>(value?: lodash.Many<T_171> | undefined): T_171[];
348
+ clone<T_172>(value: T_172): T_172;
349
+ cloneDeep<T_173>(value: T_173): T_173;
350
+ cloneDeepWith<T_174>(value: T_174, customizer: lodash.CloneDeepWithCustomizer<T_174>): any;
351
+ cloneDeepWith<T_175>(value: T_175): T_175;
352
+ cloneWith<T_176, TResult_26 extends string | number | boolean | object | null>(value: T_176, customizer: lodash.CloneWithCustomizer<T_176, TResult_26>): TResult_26;
353
+ cloneWith<T_177, TResult_27>(value: T_177, customizer: lodash.CloneWithCustomizer<T_177, TResult_27 | undefined>): T_177 | TResult_27;
354
+ cloneWith<T_178>(value: T_178): T_178;
355
+ conformsTo<T_179>(object: T_179, source: lodash.ConformsPredicateObject<T_179>): boolean;
357
356
  eq(value: any, other: any): boolean;
358
357
  gt(value: any, other: any): boolean;
359
358
  gte(value: any, other: any): boolean;
360
359
  isArguments(value?: any): value is IArguments;
361
360
  isArray(value?: any): value is any[];
362
- isArray<T_181>(value?: any): value is any[];
361
+ isArray<T_180>(value?: any): value is any[];
363
362
  isArrayBuffer(value?: any): value is ArrayBuffer;
364
- isArrayLike<T_182 extends {
363
+ isArrayLike<T_181 extends {
365
364
  __lodashAnyHack: any;
366
- }>(t: T_182): boolean;
365
+ }>(t: T_181): boolean;
367
366
  isArrayLike(value: ((...args: any[]) => any) | null | undefined): value is never;
368
367
  isArrayLike(value: any): value is {
369
368
  length: number;
370
369
  };
371
- isArrayLikeObject<T_183 extends {
370
+ isArrayLikeObject<T_182 extends {
372
371
  __lodashAnyHack: any;
373
- }>(value: T_183): boolean;
372
+ }>(value: T_182): boolean;
374
373
  isArrayLikeObject(value: string | number | boolean | Function | ((...args: any[]) => any) | null | undefined): value is never;
375
374
  isArrayLikeObject(value: any): value is object & {
376
375
  length: number;
@@ -379,12 +378,6 @@ export declare const vendorMap: {
379
378
  isBuffer(value?: any): boolean;
380
379
  isDate(value?: any): value is Date;
381
380
  isElement(value?: any): boolean;
382
- isEmpty<T_184 extends {
383
- __trapAny: any;
384
- }>(value?: T_184 | undefined): boolean;
385
- isEmpty(value: string): value is "";
386
- isEmpty(value: lodash.List<any> | Map<any, any> | Set<any> | null | undefined): boolean;
387
- isEmpty<T_185 extends object>(value: T_185 | null | undefined): value is lodash.EmptyObjectOf<T_185> | null | undefined;
388
381
  isEmpty(value?: any): boolean;
389
382
  isEqual(value: any, other: any): boolean;
390
383
  isEqualWith(value: any, other: any, customizer?: lodash.IsEqualCustomizer | undefined): boolean;
@@ -415,8 +408,8 @@ export declare const vendorMap: {
415
408
  isWeakSet(value?: any): value is WeakSet<object>;
416
409
  lt(value: any, other: any): boolean;
417
410
  lte(value: any, other: any): boolean;
418
- toArray<T_186>(value: lodash.Dictionary<T_186> | lodash.NumericDictionary<T_186> | null | undefined): T_186[];
419
- toArray<T_187>(value: T_187): T_187[keyof T_187][];
411
+ toArray<T_183>(value: lodash.Dictionary<T_183> | lodash.NumericDictionary<T_183> | null | undefined): T_183[];
412
+ toArray<T_184>(value: T_184): T_184[keyof T_184][];
420
413
  toArray(): any[];
421
414
  toFinite(value: any): number;
422
415
  toInteger(value: any): number;
@@ -429,17 +422,17 @@ export declare const vendorMap: {
429
422
  ceil(n: number, precision?: number | undefined): number;
430
423
  divide(dividend: number, divisor: number): number;
431
424
  floor(n: number, precision?: number | undefined): number;
432
- max<T_188>(collection: lodash.List<T_188> | null | undefined): T_188 | undefined;
433
- maxBy<T_189>(collection: lodash.List<T_189> | null | undefined, iteratee?: lodash.ValueIteratee<T_189> | undefined): T_189 | undefined;
425
+ max<T_185>(collection: lodash.List<T_185> | null | undefined): T_185 | undefined;
426
+ maxBy<T_186>(collection: lodash.List<T_186> | null | undefined, iteratee?: lodash.ValueIteratee<T_186> | undefined): T_186 | undefined;
434
427
  mean(collection: lodash.List<any> | null | undefined): number;
435
- meanBy<T_190>(collection: lodash.List<T_190> | null | undefined, iteratee?: lodash.ValueIteratee<T_190> | undefined): number;
436
- min<T_191>(collection: lodash.List<T_191> | null | undefined): T_191 | undefined;
437
- minBy<T_192>(collection: lodash.List<T_192> | null | undefined, iteratee?: lodash.ValueIteratee<T_192> | undefined): T_192 | undefined;
428
+ meanBy<T_187>(collection: lodash.List<T_187> | null | undefined, iteratee?: lodash.ValueIteratee<T_187> | undefined): number;
429
+ min<T_188>(collection: lodash.List<T_188> | null | undefined): T_188 | undefined;
430
+ minBy<T_189>(collection: lodash.List<T_189> | null | undefined, iteratee?: lodash.ValueIteratee<T_189> | undefined): T_189 | undefined;
438
431
  multiply(multiplier: number, multiplicand: number): number;
439
432
  round(n: number, precision?: number | undefined): number;
440
433
  subtract(minuend: number, subtrahend: number): number;
441
434
  sum(collection: lodash.List<any> | null | undefined): number;
442
- sumBy<T_193>(collection: lodash.List<T_193> | null | undefined, iteratee?: string | ((value: T_193) => number) | undefined): number;
435
+ sumBy<T_190>(collection: lodash.List<T_190> | null | undefined, iteratee?: string | ((value: T_190) => number) | undefined): number;
443
436
  clamp(number: number, lower: number, upper: number): number;
444
437
  clamp(number: number, upper: number): number;
445
438
  inRange(n: number, start: number, end?: number | undefined): boolean;
@@ -471,9 +464,9 @@ export declare const vendorMap: {
471
464
  assignWith<TObject_18, TSource1_11, TSource2_11, TSource3_7, TSource4_3>(object: TObject_18, source1: TSource1_11, source2: TSource2_11, source3: TSource3_7, source4: TSource4_3, customizer: lodash.AssignCustomizer): TObject_18 & TSource1_11 & TSource2_11 & TSource3_7 & TSource4_3;
472
465
  assignWith<TObject_19>(object: TObject_19): TObject_19;
473
466
  assignWith<TResult_30>(object: any, ...otherArgs: any[]): TResult_30;
474
- at<T_194>(object: lodash.Dictionary<T_194> | lodash.NumericDictionary<T_194> | null | undefined, ...props: lodash.PropertyPath[]): T_194[];
475
- at<T_195 extends object>(object: T_195 | null | undefined, ...props: lodash.Many<keyof T_195>[]): T_195[keyof T_195][];
476
- create<T_196 extends object, U_3 extends object>(prototype: T_196, properties?: U_3 | undefined): T_196 & U_3;
467
+ at<T_191>(object: lodash.Dictionary<T_191> | lodash.NumericDictionary<T_191> | null | undefined, ...props: lodash.PropertyPath[]): T_191[];
468
+ at<T_192 extends object>(object: T_192 | null | undefined, ...props: lodash.Many<keyof T_192>[]): T_192[keyof T_192][];
469
+ create<T_193 extends object, U_3 extends object>(prototype: T_193, properties?: U_3 | undefined): T_193 & U_3;
477
470
  defaults<TObject_20, TSource_4>(object: TObject_20, source: TSource_4): NonNullable<TSource_4 & TObject_20>;
478
471
  defaults<TObject_21, TSource1_12, TSource2_12>(object: TObject_21, source1: TSource1_12, source2: TSource2_12): NonNullable<TSource2_12 & TSource1_12 & TObject_21>;
479
472
  defaults<TObject_22, TSource1_13, TSource2_13, TSource3_8>(object: TObject_22, source1: TSource1_13, source2: TSource2_13, source3: TSource3_8): NonNullable<TSource3_8 & TSource2_13 & TSource1_13 & TObject_22>;
@@ -481,9 +474,9 @@ export declare const vendorMap: {
481
474
  defaults<TObject_24>(object: TObject_24): NonNullable<TObject_24>;
482
475
  defaults(object: any, ...sources: any[]): any;
483
476
  defaultsDeep(object: any, ...sources: any[]): any;
484
- entries<T_197>(object?: lodash.Dictionary<T_197> | lodash.NumericDictionary<T_197> | undefined): [string, T_197][];
477
+ entries<T_194>(object?: lodash.Dictionary<T_194> | lodash.NumericDictionary<T_194> | undefined): [string, T_194][];
485
478
  entries(object?: object | undefined): [string, any][];
486
- entriesIn<T_198>(object?: lodash.Dictionary<T_198> | lodash.NumericDictionary<T_198> | undefined): [string, T_198][];
479
+ entriesIn<T_195>(object?: lodash.Dictionary<T_195> | lodash.NumericDictionary<T_195> | undefined): [string, T_195][];
487
480
  entriesIn(object?: object | undefined): [string, any][];
488
481
  extend<TObject_25, TSource_5>(object: TObject_25, source: TSource_5): TObject_25 & TSource_5;
489
482
  extend<TObject_26, TSource1_15, TSource2_15>(object: TObject_26, source1: TSource1_15, source2: TSource2_15): TObject_26 & TSource1_15 & TSource2_15;
@@ -497,18 +490,18 @@ export declare const vendorMap: {
497
490
  extendWith<TObject_33, TSource1_20, TSource2_20, TSource3_13, TSource4_6>(object: TObject_33, source1: TSource1_20, source2: TSource2_20, source3: TSource3_13, source4: TSource4_6, customizer: lodash.AssignCustomizer): TObject_33 & TSource1_20 & TSource2_20 & TSource3_13 & TSource4_6;
498
491
  extendWith<TObject_34>(object: TObject_34): TObject_34;
499
492
  extendWith<TResult_32>(object: any, ...otherArgs: any[]): TResult_32;
500
- findKey<T_199>(object: T_199 | null | undefined, predicate?: lodash.ObjectIteratee<T_199> | undefined): string | undefined;
501
- findLastKey<T_200>(object: T_200 | null | undefined, predicate?: lodash.ObjectIteratee<T_200> | undefined): string | undefined;
502
- forIn<T_201>(object: T_201, iteratee?: lodash.ObjectIterator<T_201, any> | undefined): T_201;
503
- forIn<T_202>(object: T_202 | null | undefined, iteratee?: lodash.ObjectIterator<T_202, any> | undefined): T_202 | null | undefined;
504
- forInRight<T_203>(object: T_203, iteratee?: lodash.ObjectIterator<T_203, any> | undefined): T_203;
505
- forInRight<T_204>(object: T_204 | null | undefined, iteratee?: lodash.ObjectIterator<T_204, any> | undefined): T_204 | null | undefined;
506
- forOwn<T_205>(object: T_205, iteratee?: lodash.ObjectIterator<T_205, any> | undefined): T_205;
507
- forOwn<T_206>(object: T_206 | null | undefined, iteratee?: lodash.ObjectIterator<T_206, any> | undefined): T_206 | null | undefined;
508
- forOwnRight<T_207>(object: T_207, iteratee?: lodash.ObjectIterator<T_207, any> | undefined): T_207;
509
- forOwnRight<T_208>(object: T_208 | null | undefined, iteratee?: lodash.ObjectIterator<T_208, any> | undefined): T_208 | null | undefined;
493
+ findKey<T_196>(object: T_196 | null | undefined, predicate?: lodash.ObjectIteratee<T_196> | undefined): string | undefined;
494
+ findLastKey<T_197>(object: T_197 | null | undefined, predicate?: lodash.ObjectIteratee<T_197> | undefined): string | undefined;
495
+ forIn<T_198>(object: T_198, iteratee?: lodash.ObjectIterator<T_198, any> | undefined): T_198;
496
+ forIn<T_199>(object: T_199 | null | undefined, iteratee?: lodash.ObjectIterator<T_199, any> | undefined): T_199 | null | undefined;
497
+ forInRight<T_200>(object: T_200, iteratee?: lodash.ObjectIterator<T_200, any> | undefined): T_200;
498
+ forInRight<T_201>(object: T_201 | null | undefined, iteratee?: lodash.ObjectIterator<T_201, any> | undefined): T_201 | null | undefined;
499
+ forOwn<T_202>(object: T_202, iteratee?: lodash.ObjectIterator<T_202, any> | undefined): T_202;
500
+ forOwn<T_203>(object: T_203 | null | undefined, iteratee?: lodash.ObjectIterator<T_203, any> | undefined): T_203 | null | undefined;
501
+ forOwnRight<T_204>(object: T_204, iteratee?: lodash.ObjectIterator<T_204, any> | undefined): T_204;
502
+ forOwnRight<T_205>(object: T_205 | null | undefined, iteratee?: lodash.ObjectIterator<T_205, any> | undefined): T_205 | null | undefined;
510
503
  functions(object: any): string[];
511
- functionsIn<T_209 extends {}>(object: any): string[];
504
+ functionsIn<T_206 extends {}>(object: any): string[];
512
505
  get<TObject_35 extends object, TKey extends keyof TObject_35>(object: TObject_35, path: TKey | [TKey]): TObject_35[TKey];
513
506
  get<TObject_36 extends object, TKey_1 extends keyof TObject_36>(object: TObject_36 | null | undefined, path: TKey_1 | [TKey_1]): TObject_36[TKey_1] | undefined;
514
507
  get<TObject_37 extends object, TKey_2 extends keyof TObject_37, TDefault>(object: TObject_37 | null | undefined, path: TKey_2 | [TKey_2], defaultValue: TDefault): TDefault | Exclude<TObject_37[TKey_2], undefined>;
@@ -521,33 +514,33 @@ export declare const vendorMap: {
521
514
  get<TObject_44 extends object, TKey1_6 extends keyof TObject_44, TKey2_6 extends keyof TObject_44[TKey1_6], TKey3_3 extends keyof TObject_44[TKey1_6][TKey2_6], TKey4 extends keyof TObject_44[TKey1_6][TKey2_6][TKey3_3]>(object: TObject_44, path: [TKey1_6, TKey2_6, TKey3_3, TKey4]): TObject_44[TKey1_6][TKey2_6][TKey3_3][TKey4];
522
515
  get<TObject_45 extends object, TKey1_7 extends keyof TObject_45, TKey2_7 extends keyof TObject_45[TKey1_7], TKey3_4 extends keyof TObject_45[TKey1_7][TKey2_7], TKey4_1 extends keyof TObject_45[TKey1_7][TKey2_7][TKey3_4]>(object: TObject_45 | null | undefined, path: [TKey1_7, TKey2_7, TKey3_4, TKey4_1]): TObject_45[TKey1_7][TKey2_7][TKey3_4][TKey4_1] | undefined;
523
516
  get<TObject_46 extends object, TKey1_8 extends keyof TObject_46, TKey2_8 extends keyof TObject_46[TKey1_8], TKey3_5 extends keyof TObject_46[TKey1_8][TKey2_8], TKey4_2 extends keyof TObject_46[TKey1_8][TKey2_8][TKey3_5], TDefault_3>(object: TObject_46 | null | undefined, path: [TKey1_8, TKey2_8, TKey3_5, TKey4_2], defaultValue: TDefault_3): TDefault_3 | Exclude<TObject_46[TKey1_8][TKey2_8][TKey3_5][TKey4_2], undefined>;
524
- get<T_210>(object: lodash.NumericDictionary<T_210>, path: number): T_210;
525
- get<T_211>(object: lodash.NumericDictionary<T_211> | null | undefined, path: number): T_211 | undefined;
526
- get<T_212, TDefault_4>(object: lodash.NumericDictionary<T_212> | null | undefined, path: number, defaultValue: TDefault_4): T_212 | TDefault_4;
517
+ get<T_207>(object: lodash.NumericDictionary<T_207>, path: number): T_207;
518
+ get<T_208>(object: lodash.NumericDictionary<T_208> | null | undefined, path: number): T_208 | undefined;
519
+ get<T_209, TDefault_4>(object: lodash.NumericDictionary<T_209> | null | undefined, path: number, defaultValue: TDefault_4): T_209 | TDefault_4;
527
520
  get<TDefault_5>(object: null | undefined, path: lodash.PropertyPath, defaultValue: TDefault_5): TDefault_5;
528
521
  get(object: null | undefined, path: lodash.PropertyPath): undefined;
529
522
  get(object: any, path: lodash.PropertyPath, defaultValue?: any): any;
530
- has<T_213>(object: T_213, path: lodash.PropertyPath): boolean;
531
- hasIn<T_214>(object: T_214, path: lodash.PropertyPath): boolean;
523
+ has<T_210>(object: T_210, path: lodash.PropertyPath): boolean;
524
+ hasIn<T_211>(object: T_211, path: lodash.PropertyPath): boolean;
532
525
  invert(object: object): lodash.Dictionary<string>;
533
- invertBy<T_215>(object: lodash.Dictionary<T_215> | lodash.NumericDictionary<T_215> | null | undefined, interatee?: lodash.ValueIteratee<T_215> | undefined): lodash.Dictionary<string[]>;
534
- invertBy<T_216 extends object>(object: T_216 | null | undefined, interatee?: lodash.ValueIteratee<T_216[keyof T_216]> | undefined): lodash.Dictionary<string[]>;
526
+ invertBy<T_212>(object: lodash.Dictionary<T_212> | lodash.NumericDictionary<T_212> | null | undefined, interatee?: lodash.ValueIteratee<T_212> | undefined): lodash.Dictionary<string[]>;
527
+ invertBy<T_213 extends object>(object: T_213 | null | undefined, interatee?: lodash.ValueIteratee<T_213[keyof T_213]> | undefined): lodash.Dictionary<string[]>;
535
528
  invoke(object: any, path: lodash.PropertyPath, ...args: any[]): any;
536
529
  keys(object?: any): string[];
537
530
  keysIn(object?: any): string[];
538
- mapKeys<T_217>(object: lodash.List<T_217> | null | undefined, iteratee?: lodash.ListIteratee<T_217> | undefined): lodash.Dictionary<T_217>;
539
- mapKeys<T_218 extends object>(object: T_218 | null | undefined, iteratee?: lodash.ObjectIteratee<T_218> | undefined): lodash.Dictionary<T_218[keyof T_218]>;
531
+ mapKeys<T_214>(object: lodash.List<T_214> | null | undefined, iteratee?: lodash.ListIteratee<T_214> | undefined): lodash.Dictionary<T_214>;
532
+ mapKeys<T_215 extends object>(object: T_215 | null | undefined, iteratee?: lodash.ObjectIteratee<T_215> | undefined): lodash.Dictionary<T_215[keyof T_215]>;
540
533
  mapValues<TResult_33>(obj: string | null | undefined, callback: lodash.StringIterator<TResult_33>): lodash.NumericDictionary<TResult_33>;
541
- mapValues<T_219 extends object, TResult_34>(obj: T_219 | null | undefined, callback: lodash.ObjectIterator<T_219, TResult_34>): { [P in keyof T_219]: TResult_34; };
542
- mapValues<T_220>(obj: lodash.Dictionary<T_220> | lodash.NumericDictionary<T_220> | null | undefined, iteratee: object): lodash.Dictionary<boolean>;
543
- mapValues<T_221 extends object>(obj: T_221 | null | undefined, iteratee: object): { [P_1 in keyof T_221]: boolean; };
544
- mapValues<T_222, TKey_3 extends keyof T_222>(obj: lodash.Dictionary<T_222> | lodash.NumericDictionary<T_222> | null | undefined, iteratee: TKey_3): lodash.Dictionary<T_222[TKey_3]>;
545
- mapValues<T_223>(obj: lodash.Dictionary<T_223> | lodash.NumericDictionary<T_223> | null | undefined, iteratee: string): lodash.Dictionary<any>;
546
- mapValues<T_224 extends object>(obj: T_224 | null | undefined, iteratee: string): { [P_2 in keyof T_224]: any; };
534
+ mapValues<T_216 extends object, TResult_34>(obj: T_216 | null | undefined, callback: lodash.ObjectIterator<T_216, TResult_34>): { [P in keyof T_216]: TResult_34; };
535
+ mapValues<T_217>(obj: lodash.Dictionary<T_217> | lodash.NumericDictionary<T_217> | null | undefined, iteratee: object): lodash.Dictionary<boolean>;
536
+ mapValues<T_218 extends object>(obj: T_218 | null | undefined, iteratee: object): { [P_1 in keyof T_218]: boolean; };
537
+ mapValues<T_219, TKey_3 extends keyof T_219>(obj: lodash.Dictionary<T_219> | lodash.NumericDictionary<T_219> | null | undefined, iteratee: TKey_3): lodash.Dictionary<T_219[TKey_3]>;
538
+ mapValues<T_220>(obj: lodash.Dictionary<T_220> | lodash.NumericDictionary<T_220> | null | undefined, iteratee: string): lodash.Dictionary<any>;
539
+ mapValues<T_221 extends object>(obj: T_221 | null | undefined, iteratee: string): { [P_2 in keyof T_221]: any; };
547
540
  mapValues(obj: string | null | undefined): lodash.NumericDictionary<string>;
548
- mapValues<T_225>(obj: lodash.Dictionary<T_225> | lodash.NumericDictionary<T_225> | null | undefined): lodash.Dictionary<T_225>;
549
- mapValues<T_226 extends object>(obj: T_226): T_226;
550
- mapValues<T_227 extends object>(obj: T_227 | null | undefined): Partial<T_227>;
541
+ mapValues<T_222>(obj: lodash.Dictionary<T_222> | lodash.NumericDictionary<T_222> | null | undefined): lodash.Dictionary<T_222>;
542
+ mapValues<T_223 extends object>(obj: T_223): T_223;
543
+ mapValues<T_224 extends object>(obj: T_224 | null | undefined): Partial<T_224>;
551
544
  merge<TObject_47, TSource_7>(object: TObject_47, source: TSource_7): TObject_47 & TSource_7;
552
545
  merge<TObject_48, TSource1_21, TSource2_21>(object: TObject_48, source1: TSource1_21, source2: TSource2_21): TObject_48 & TSource1_21 & TSource2_21;
553
546
  merge<TObject_49, TSource1_22, TSource2_22, TSource3_14>(object: TObject_49, source1: TSource1_22, source2: TSource2_22, source3: TSource3_14): TObject_49 & TSource1_22 & TSource2_22 & TSource3_14;
@@ -558,54 +551,54 @@ export declare const vendorMap: {
558
551
  mergeWith<TObject_53, TSource1_25, TSource2_25, TSource3_16>(object: TObject_53, source1: TSource1_25, source2: TSource2_25, source3: TSource3_16, customizer: (value: any, srcValue: any, key: string, object: any, source: any) => any): TObject_53 & TSource1_25 & TSource2_25 & TSource3_16;
559
552
  mergeWith<TObject_54, TSource1_26, TSource2_26, TSource3_17, TSource4_8>(object: TObject_54, source1: TSource1_26, source2: TSource2_26, source3: TSource3_17, source4: TSource4_8, customizer: (value: any, srcValue: any, key: string, object: any, source: any) => any): TObject_54 & TSource1_26 & TSource2_26 & TSource3_17 & TSource4_8;
560
553
  mergeWith(object: any, ...otherArgs: any[]): any;
561
- omit<T_228 extends object, K_1 extends lodash.PropertyName[]>(object: T_228 | null | undefined, ...paths: K_1): Pick<T_228, Exclude<keyof T_228, K_1[number]>>;
562
- omit<T_229 extends object, K_2 extends keyof T_229>(object: T_229 | null | undefined, ...paths: lodash.Many<K_2>[]): lodash.Omit<T_229, K_2>;
563
- omit<T_230 extends object>(object: T_230 | null | undefined, ...paths: lodash.Many<lodash.PropertyName>[]): Partial<T_230>;
564
- omitBy<T_231>(object: lodash.Dictionary<T_231> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_231> | undefined): lodash.Dictionary<T_231>;
565
- omitBy<T_232>(object: lodash.NumericDictionary<T_232> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_232> | undefined): lodash.NumericDictionary<T_232>;
566
- omitBy<T_233 extends object>(object: T_233 | null | undefined, predicate: lodash.ValueKeyIteratee<T_233[keyof T_233]>): Partial<T_233>;
567
- pick<T_234 extends object, U_4 extends keyof T_234>(object: T_234, ...props: lodash.Many<U_4>[]): Pick<T_234, U_4>;
568
- pick<T_235>(object: T_235 | null | undefined, ...props: lodash.PropertyPath[]): Partial<T_235>;
569
- pickBy<T_236, S_6 extends T_236>(object: lodash.Dictionary<T_236> | null | undefined, predicate: lodash.ValueKeyIterateeTypeGuard<T_236, S_6>): lodash.Dictionary<S_6>;
570
- pickBy<T_237, S_7 extends T_237>(object: lodash.NumericDictionary<T_237> | null | undefined, predicate: lodash.ValueKeyIterateeTypeGuard<T_237, S_7>): lodash.NumericDictionary<S_7>;
571
- pickBy<T_238>(object: lodash.Dictionary<T_238> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_238> | undefined): lodash.Dictionary<T_238>;
572
- pickBy<T_239>(object: lodash.NumericDictionary<T_239> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_239> | undefined): lodash.NumericDictionary<T_239>;
573
- pickBy<T_240 extends object>(object: T_240 | null | undefined, predicate?: lodash.ValueKeyIteratee<T_240[keyof T_240]> | undefined): Partial<T_240>;
554
+ omit<T_225 extends object, K_1 extends lodash.PropertyName[]>(object: T_225 | null | undefined, ...paths: K_1): Pick<T_225, Exclude<keyof T_225, K_1[number]>>;
555
+ omit<T_226 extends object, K_2 extends keyof T_226>(object: T_226 | null | undefined, ...paths: lodash.Many<K_2>[]): lodash.Omit<T_226, K_2>;
556
+ omit<T_227 extends object>(object: T_227 | null | undefined, ...paths: lodash.Many<lodash.PropertyName>[]): Partial<T_227>;
557
+ omitBy<T_228>(object: lodash.Dictionary<T_228> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_228> | undefined): lodash.Dictionary<T_228>;
558
+ omitBy<T_229>(object: lodash.NumericDictionary<T_229> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_229> | undefined): lodash.NumericDictionary<T_229>;
559
+ omitBy<T_230 extends object>(object: T_230 | null | undefined, predicate: lodash.ValueKeyIteratee<T_230[keyof T_230]>): Partial<T_230>;
560
+ pick<T_231 extends object, U_4 extends keyof T_231>(object: T_231, ...props: lodash.Many<U_4>[]): Pick<T_231, U_4>;
561
+ pick<T_232>(object: T_232 | null | undefined, ...props: lodash.PropertyPath[]): Partial<T_232>;
562
+ pickBy<T_233, S_6 extends T_233>(object: lodash.Dictionary<T_233> | null | undefined, predicate: lodash.ValueKeyIterateeTypeGuard<T_233, S_6>): lodash.Dictionary<S_6>;
563
+ pickBy<T_234, S_7 extends T_234>(object: lodash.NumericDictionary<T_234> | null | undefined, predicate: lodash.ValueKeyIterateeTypeGuard<T_234, S_7>): lodash.NumericDictionary<S_7>;
564
+ pickBy<T_235>(object: lodash.Dictionary<T_235> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_235> | undefined): lodash.Dictionary<T_235>;
565
+ pickBy<T_236>(object: lodash.NumericDictionary<T_236> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_236> | undefined): lodash.NumericDictionary<T_236>;
566
+ pickBy<T_237 extends object>(object: T_237 | null | undefined, predicate?: lodash.ValueKeyIteratee<T_237[keyof T_237]> | undefined): Partial<T_237>;
574
567
  result<TResult_35>(object: any, path: lodash.PropertyPath, defaultValue?: TResult_35 | ((...args: any[]) => TResult_35) | undefined): TResult_35;
575
- set<T_241 extends object>(object: T_241, path: lodash.PropertyPath, value: any): T_241;
568
+ set<T_238 extends object>(object: T_238, path: lodash.PropertyPath, value: any): T_238;
576
569
  set<TResult_36>(object: object, path: lodash.PropertyPath, value: any): TResult_36;
577
- setWith<T_242 extends object>(object: T_242, path: lodash.PropertyPath, value: any, customizer?: lodash.SetWithCustomizer<T_242> | undefined): T_242;
578
- setWith<T_243 extends object, TResult_37>(object: T_243, path: lodash.PropertyPath, value: any, customizer?: lodash.SetWithCustomizer<T_243> | undefined): TResult_37;
579
- toPairs<T_244>(object?: lodash.Dictionary<T_244> | lodash.NumericDictionary<T_244> | undefined): [string, T_244][];
570
+ setWith<T_239 extends object>(object: T_239, path: lodash.PropertyPath, value: any, customizer?: lodash.SetWithCustomizer<T_239> | undefined): T_239;
571
+ setWith<T_240 extends object, TResult_37>(object: T_240, path: lodash.PropertyPath, value: any, customizer?: lodash.SetWithCustomizer<T_240> | undefined): TResult_37;
572
+ toPairs<T_241>(object?: lodash.Dictionary<T_241> | lodash.NumericDictionary<T_241> | undefined): [string, T_241][];
580
573
  toPairs(object?: object | undefined): [string, any][];
581
- toPairsIn<T_245>(object?: lodash.Dictionary<T_245> | lodash.NumericDictionary<T_245> | undefined): [string, T_245][];
574
+ toPairsIn<T_242>(object?: lodash.Dictionary<T_242> | lodash.NumericDictionary<T_242> | undefined): [string, T_242][];
582
575
  toPairsIn(object?: object | undefined): [string, any][];
583
- transform<T_246, TResult_38>(object: readonly T_246[], iteratee: lodash.MemoVoidArrayIterator<T_246, TResult_38>, accumulator?: TResult_38 | undefined): TResult_38;
584
- transform<T_247, TResult_39>(object: lodash.Dictionary<T_247>, iteratee: lodash.MemoVoidDictionaryIterator<T_247, string, TResult_39>, accumulator?: TResult_39 | undefined): TResult_39;
585
- transform<T_248 extends object, TResult_40>(object: T_248, iteratee: lodash.MemoVoidDictionaryIterator<T_248[keyof T_248], keyof T_248, TResult_40>, accumulator?: TResult_40 | undefined): TResult_40;
576
+ transform<T_243, TResult_38>(object: readonly T_243[], iteratee: lodash.MemoVoidArrayIterator<T_243, TResult_38>, accumulator?: TResult_38 | undefined): TResult_38;
577
+ transform<T_244, TResult_39>(object: lodash.Dictionary<T_244>, iteratee: lodash.MemoVoidDictionaryIterator<T_244, string, TResult_39>, accumulator?: TResult_39 | undefined): TResult_39;
578
+ transform<T_245 extends object, TResult_40>(object: T_245, iteratee: lodash.MemoVoidDictionaryIterator<T_245[keyof T_245], keyof T_245, TResult_40>, accumulator?: TResult_40 | undefined): TResult_40;
586
579
  transform(object: any[]): any[];
587
580
  transform(object: object): lodash.Dictionary<any>;
588
581
  unset(object: any, path: lodash.PropertyPath): boolean;
589
582
  update(object: object, path: lodash.PropertyPath, updater: (value: any) => any): any;
590
- updateWith<T_249 extends object>(object: T_249, path: lodash.PropertyPath, updater: (oldValue: any) => any, customizer?: lodash.SetWithCustomizer<T_249> | undefined): T_249;
591
- updateWith<T_250 extends object, TResult_41>(object: T_250, path: lodash.PropertyPath, updater: (oldValue: any) => any, customizer?: lodash.SetWithCustomizer<T_250> | undefined): TResult_41;
592
- values<T_251>(object: lodash.Dictionary<T_251> | lodash.NumericDictionary<T_251> | lodash.List<T_251> | null | undefined): T_251[];
593
- values<T_252 extends object>(object: T_252 | null | undefined): T_252[keyof T_252][];
583
+ updateWith<T_246 extends object>(object: T_246, path: lodash.PropertyPath, updater: (oldValue: any) => any, customizer?: lodash.SetWithCustomizer<T_246> | undefined): T_246;
584
+ updateWith<T_247 extends object, TResult_41>(object: T_247, path: lodash.PropertyPath, updater: (oldValue: any) => any, customizer?: lodash.SetWithCustomizer<T_247> | undefined): TResult_41;
585
+ values<T_248>(object: lodash.Dictionary<T_248> | lodash.NumericDictionary<T_248> | lodash.List<T_248> | null | undefined): T_248[];
586
+ values<T_249 extends object>(object: T_249 | null | undefined): T_249[keyof T_249][];
594
587
  values(object: any): any[];
595
- valuesIn<T_253>(object: lodash.Dictionary<T_253> | lodash.NumericDictionary<T_253> | lodash.List<T_253> | null | undefined): T_253[];
596
- valuesIn<T_254 extends object>(object: T_254 | null | undefined): T_254[keyof T_254][];
588
+ valuesIn<T_250>(object: lodash.Dictionary<T_250> | lodash.NumericDictionary<T_250> | lodash.List<T_250> | null | undefined): T_250[];
589
+ valuesIn<T_251 extends object>(object: T_251 | null | undefined): T_251[keyof T_251][];
597
590
  chain<TrapAny extends {
598
591
  __lodashAnyHack: any;
599
592
  }>(value: TrapAny): lodash.CollectionChain<any> & lodash.FunctionChain<any> & lodash.ObjectChain<any> & lodash.PrimitiveChain<any> & lodash.StringChain;
600
- chain<T_255 extends null | undefined>(value: T_255): lodash.PrimitiveChain<T_255>;
593
+ chain<T_252 extends null | undefined>(value: T_252): lodash.PrimitiveChain<T_252>;
601
594
  chain(value: string): lodash.StringChain;
602
595
  chain(value: string | null | undefined): lodash.StringNullableChain;
603
- chain<T_256 extends (...args: any[]) => any>(value: T_256): lodash.FunctionChain<T_256>;
604
- chain<T_257 = any>(value: lodash.List<T_257> | null | undefined): lodash.CollectionChain<T_257>;
605
- chain<T_258 extends object>(value: T_258 | null | undefined): lodash.ObjectChain<T_258>;
606
- chain<T_259>(value: T_259): lodash.PrimitiveChain<T_259>;
607
- tap<T_260>(value: T_260, interceptor: (value: T_260) => void): T_260;
608
- thru<T_261, TResult_42>(value: T_261, interceptor: (value: T_261) => TResult_42): TResult_42;
596
+ chain<T_253 extends (...args: any[]) => any>(value: T_253): lodash.FunctionChain<T_253>;
597
+ chain<T_254 = any>(value: lodash.List<T_254> | null | undefined): lodash.CollectionChain<T_254>;
598
+ chain<T_255 extends object>(value: T_255 | null | undefined): lodash.ObjectChain<T_255>;
599
+ chain<T_256>(value: T_256): lodash.PrimitiveChain<T_256>;
600
+ tap<T_257>(value: T_257, interceptor: (value: T_257) => void): T_257;
601
+ thru<T_258, TResult_42>(value: T_258, interceptor: (value: T_258) => TResult_42): TResult_42;
609
602
  camelCase(string?: string | undefined): string;
610
603
  capitalize(string?: string | undefined): string;
611
604
  deburr(string?: string | undefined): string;
@@ -643,13 +636,12 @@ export declare const vendorMap: {
643
636
  words(string?: string | undefined, pattern?: string | RegExp | undefined): string[];
644
637
  words(string: string, index: string | number, guard: object): string[];
645
638
  attempt<TResult_43>(func: (...args: any[]) => TResult_43, ...args: any[]): Error | TResult_43;
646
- bindAll<T_262>(object: T_262, ...methodNames: lodash.Many<string>[]): T_262;
647
- cond<R>(pairs: lodash.CondPairNullary<R>[]): () => R;
648
- cond<T_263, R_1>(pairs: lodash.CondPairUnary<T_263, R_1>[]): (Target: T_263) => R_1;
649
- conforms<T_264>(source: lodash.ConformsPredicateObject<T_264>): (value: T_264) => boolean;
650
- constant<T_265>(value: T_265): () => T_265;
651
- defaultTo<T_266>(value: T_266 | null | undefined, defaultValue: T_266): T_266;
652
- defaultTo<T_267, TDefault_6>(value: T_267 | null | undefined, defaultValue: TDefault_6): T_267 | TDefault_6;
639
+ bindAll<T_259>(object: T_259, ...methodNames: lodash.Many<string>[]): T_259;
640
+ cond<T_260, R>(pairs: lodash.CondPair<T_260, R>[]): (Target: T_260) => R;
641
+ conforms<T_261>(source: lodash.ConformsPredicateObject<T_261>): (value: T_261) => boolean;
642
+ constant<T_262>(value: T_262): () => T_262;
643
+ defaultTo<T_263>(value: T_263 | null | undefined, defaultValue: T_263): T_263;
644
+ defaultTo<T_264, TDefault_6>(value: T_264 | null | undefined, defaultValue: TDefault_6): T_264 | TDefault_6;
653
645
  flow<A extends any[], R1, R2, R3, R4, R5, R6, R7>(f1: (...args: A) => R1, f2: (a: R1) => R2, f3: (a: R2) => R3, f4: (a: R3) => R4, f5: (a: R4) => R5, f6: (a: R5) => R6, f7: (a: R6) => R7): (...args: A) => R7;
654
646
  flow<A_1 extends any[], R1_1, R2_1, R3_1, R4_1, R5_1, R6_1, R7_1>(f1: (...args: A_1) => R1_1, f2: (a: R1_1) => R2_1, f3: (a: R2_1) => R3_1, f4: (a: R3_1) => R4_1, f5: (a: R4_1) => R5_1, f6: (a: R5_1) => R6_1, f7: (a: R6_1) => R7_1, ...func: lodash.Many<(a: any) => any>[]): (...args: A_1) => any;
655
647
  flow<A_2 extends any[], R1_2, R2_2, R3_2, R4_2, R5_2, R6_2>(f1: (...args: A_2) => R1_2, f2: (a: R1_2) => R2_2, f3: (a: R2_2) => R3_2, f4: (a: R3_2) => R4_2, f5: (a: R4_2) => R5_2, f6: (a: R5_2) => R6_2): (...args: A_2) => R6_2;
@@ -665,14 +657,14 @@ export declare const vendorMap: {
665
657
  flowRight<A_11 extends any[], R1_11, R2_11, R3_10>(f3: (a: R2_11) => R3_10, f2: (a: R1_11) => R2_11, f1: (...args: A_11) => R1_11): (...args: A_11) => R3_10;
666
658
  flowRight<A_12 extends any[], R1_12, R2_12>(f2: (a: R1_12) => R2_12, f1: (...args: A_12) => R1_12): (...args: A_12) => R2_12;
667
659
  flowRight(...func: lodash.Many<(...args: any[]) => any>[]): (...args: any[]) => any;
668
- identity<T_268>(value: T_268): T_268;
660
+ identity<T_265>(value: T_265): T_265;
669
661
  identity(): undefined;
670
662
  iteratee<TFunction extends (...args: any[]) => any>(func: TFunction): TFunction;
671
663
  iteratee(func: string | number | symbol | object): (...args: any[]) => any;
672
- matches<T_269>(source: T_269): (value: any) => boolean;
673
- matches<T_270, V>(source: T_270): (value: V) => boolean;
674
- matchesProperty<T_271>(path: lodash.PropertyPath, srcValue: T_271): (value: any) => boolean;
675
- matchesProperty<T_272, V_1>(path: lodash.PropertyPath, srcValue: T_272): (value: V_1) => boolean;
664
+ matches<T_266>(source: T_266): (value: any) => boolean;
665
+ matches<T_267, V>(source: T_267): (value: V) => boolean;
666
+ matchesProperty<T_268>(path: lodash.PropertyPath, srcValue: T_268): (value: any) => boolean;
667
+ matchesProperty<T_269, V_1>(path: lodash.PropertyPath, srcValue: T_269): (value: V_1) => boolean;
676
668
  method(path: lodash.PropertyPath, ...args: any[]): (object: any) => any;
677
669
  methodOf(object: object, ...args: any[]): (path: lodash.PropertyPath) => any;
678
670
  mixin<TObject_55>(object: TObject_55, source: lodash.Dictionary<(...args: any[]) => any>, options?: lodash.MixinOptions | undefined): TObject_55;
@@ -681,12 +673,12 @@ export declare const vendorMap: {
681
673
  noop(...args: any[]): void;
682
674
  nthArg(n?: number | undefined): (...args: any[]) => any;
683
675
  over<TResult_45>(...iteratees: lodash.Many<(...args: any[]) => TResult_45>[]): (...args: any[]) => TResult_45[];
684
- overEvery<T_273, Result1 extends T_273, Result2 extends T_273>(predicates_0: (arg: T_273) => arg is Result1, predicates_1: (arg: T_273) => arg is Result2): (arg: T_273) => arg is Result1 & Result2;
685
- overEvery<T_274>(...predicates: lodash.Many<(...args: T_274[]) => boolean>[]): (...args: T_274[]) => boolean;
686
- overSome<T_275, Result1_1 extends T_275, Result2_1 extends T_275>(predicates_0: (arg: T_275) => arg is Result1_1, predicates_1: (arg: T_275) => arg is Result2_1): (arg: T_275) => arg is Result1_1 | Result2_1;
687
- overSome<T_276>(...predicates: lodash.Many<(...args: T_276[]) => boolean>[]): (...args: T_276[]) => boolean;
676
+ overEvery<T_270, Result1 extends T_270, Result2 extends T_270>(predicates_0: (arg: T_270) => arg is Result1, predicates_1: (arg: T_270) => arg is Result2): (arg: T_270) => arg is Result1 & Result2;
677
+ overEvery<T_271>(...predicates: lodash.Many<(...args: T_271[]) => boolean>[]): (...args: T_271[]) => boolean;
678
+ overSome<T_272, Result1_1 extends T_272, Result2_1 extends T_272>(predicates_0: (arg: T_272) => arg is Result1_1, predicates_1: (arg: T_272) => arg is Result2_1): (arg: T_272) => arg is Result1_1 | Result2_1;
679
+ overSome<T_273>(...predicates: lodash.Many<(...args: T_273[]) => boolean>[]): (...args: T_273[]) => boolean;
688
680
  property<TObj, TResult_46>(path: lodash.PropertyPath): (obj: TObj) => TResult_46;
689
- propertyOf<T_277 extends {}>(object: T_277): (path: lodash.PropertyPath) => any;
681
+ propertyOf<T_274 extends {}>(object: T_274): (path: lodash.PropertyPath) => any;
690
682
  range(start: number, end?: number | undefined, step?: number | undefined): number[];
691
683
  range(end: number, index: string | number, guard: object): number[];
692
684
  rangeRight(start: number, end?: number | undefined, step?: number | undefined): number[];
@@ -17,7 +17,7 @@ export declare class ConfigurationRuntimeService {
17
17
  uiDefinitionProperties: UIDefinitionProps;
18
18
  constructor(apiService: ConfigurationApiService, contextService: ContextService, runtimeContextService: RuntimeContextService);
19
19
  reset(): void;
20
- initTestMode(modelId: string, uiDefinition: UIDefinition): Observable<[import("@veloce/core").RuntimeData, import("@veloce/core").ConfigurationContext]>;
20
+ initTestMode(modelId: string, uiDefinition: UIDefinition): any;
21
21
  init(props: RuntimeInitializationProps): Observable<RuntimeContext | undefined>;
22
22
  private id15to18;
23
23
  getAsset(lineItem: LineItem): LineItem | undefined;
@@ -53,15 +53,36 @@ export class ElementRendererComponent {
53
53
  this.processChildren(children);
54
54
  });
55
55
  }
56
+ getModelComponent() {
57
+ let component = null;
58
+ let injector = this.parentInjector;
59
+ while (!component) {
60
+ const parentComp = injector.get(ElementRendererComponent, null);
61
+ if (parentComp === null || parentComp === void 0 ? void 0 : parentComp.meta.model) {
62
+ component = parentComp;
63
+ break;
64
+ }
65
+ if (parentComp) {
66
+ injector = parentComp.parentInjector;
67
+ }
68
+ else {
69
+ break;
70
+ }
71
+ }
72
+ return component;
73
+ }
56
74
  createFromLineItem(path) {
57
75
  var _a, _b;
58
- const parentComp = this.parentInjector.get(ElementRendererComponent, null);
76
+ const parentComp = this.getModelComponent();
59
77
  const parentPath = (_a = parentComp === null || parentComp === void 0 ? void 0 : parentComp.meta.model) === null || _a === void 0 ? void 0 : _a.lineItem;
60
78
  const pathBlocks = parseBoundPath(path).reverse();
61
79
  const { property, name } = (_b = pathBlocks[1]) !== null && _b !== void 0 ? _b : {};
62
80
  const finalPath = pathBlocks[0];
63
81
  const children$ = this.getParentLineItem$(parentComp).pipe(map(model => {
64
82
  var _a;
83
+ if (!model) {
84
+ return [];
85
+ }
65
86
  if (property === 'ports' && !finalPath.property && parentPath !== path) {
66
87
  return (_a = model.lineItems.filter(({ port }) => port === name)) !== null && _a !== void 0 ? _a : [];
67
88
  }
@@ -145,4 +166,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
145
166
  }], meta: [{
146
167
  type: Input
147
168
  }] } });
148
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9lbGVtZW50LXJlbmRlcmVyL2VsZW1lbnQtcmVuZGVyZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY21zL2NvbXBvbmVudHMvZWxlbWVudC1yZW5kZXJlci9lbGVtZW50LXJlbmRlcmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUtULEtBQUssRUFHTCxRQUFRLEVBQ1IsU0FBUyxFQUNULGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQVksSUFBSSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTlDLE9BQU8sRUFBYyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxHQUFHLEVBQWMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUcvRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7OztBQVN4RCxNQUFNLE9BQU8sd0JBQXdCO0lBU25DLFlBQ3NCLGNBQXdCLEVBQ3BDLG9CQUEwQyxFQUMxQyxjQUFxQyxFQUNyQyxpQkFBb0MsRUFDcEMsb0JBQTBDLEVBQzFDLFVBQXNCLEVBQ3RCLEdBQXNCO1FBTlYsbUJBQWMsR0FBZCxjQUFjLENBQVU7UUFDcEMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyxtQkFBYyxHQUFkLGNBQWMsQ0FBdUI7UUFDckMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNC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QUFFLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUNqQixDQUFDOztzSEFwSlUsd0JBQXdCOzBHQUF4Qix3QkFBd0IsNEVBRnhCLENBQUMscUJBQXFCLENBQUMsK0ZBR1QsZ0JBQWdCLDJDQ2pDM0MsbUNBQ0E7NEZEK0JhLHdCQUF3QjtrQkFQcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxXQUFXLEVBQUUsbUNBQW1DO29CQUNoRCxTQUFTLEVBQUUsQ0FBQyxtQ0FBbUMsQ0FBQztvQkFDaEQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLFNBQVMsRUFBRSxDQUFDLHFCQUFxQixDQUFDO2lCQUNuQzs7MEJBV0ksUUFBUTsrT0FUZ0QsRUFBRTtzQkFBNUQsU0FBUzt1QkFBQyxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFFaEQsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbXBvbmVudEZhY3RvcnksXG4gIENvbXBvbmVudFJlZixcbiAgRWxlbWVudFJlZixcbiAgSW5qZWN0b3IsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgU2tpcFNlbGYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMaW5lSXRlbSwgVVVJRCB9IGZyb20gJ0B2ZWxvY2UvY29yZSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uU2VydmljZSB9IGZyb20gJ0B2ZWxvY2Uvc2RrL2NvcmUnO1xuaW1wb3J0IHsgRGljdGlvbmFyeSwgaXNBcnJheSwgcHVsbCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBtYXAsIE9ic2VydmFibGUsIFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRHluYW1pY01vZHVsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9keW5hbWljLW1vZHVsZS5zZXJ2aWNlJztcbmltcG9ydCB7IEVsZW1lbnRDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2VsZW1lbnQtY29udGV4dC5zZXJ2aWNlJztcbmltcG9ydCB7IElPUHJvdmlkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvaW8tcHJvdmlkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFbGVtZW50TWV0YWRhdGEgfSBmcm9tICcuLi8uLi90eXBlcy9jb21tb24udHlwZXMnO1xuaW1wb3J0IHsgcGFyc2VCb3VuZFBhdGggfSBmcm9tICcuLi8uLi91dGlscy9wYXRoLnV0aWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmwtY21zLWVsZW1lbnQtcmVuZGVyZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZWxlbWVudC1yZW5kZXJlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VsZW1lbnQtcmVuZGVyZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW0VsZW1lbnRDb250ZXh0U2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIEVsZW1lbnRSZW5kZXJlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQFZpZXdDaGlsZCgnZWwnLCB7IHJlYWQ6IFZpZXdDb250YWluZXJSZWYsIHN0YXRpYzogdHJ1ZSB9KSBlbD86IFZpZXdDb250YWluZXJSZWY7XG5cbiAgQElucHV0KCkgbWV0YSE6IEVsZW1lbnRNZXRhZGF0YTtcblxuICBwcml2YXRlIGZhY3Rvcnk/OiBDb21wb25lbnRGYWN0b3J5PGFueT47XG4gIHByaXZhdGUgcmVmczogRGljdGlvbmFyeTxDb21wb25lbnRSZWY8YW55PiB8IHVuZGVmaW5lZD4gPSB7fTtcbiAgcHJpdmF0ZSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQFNraXBTZWxmKCkgcHJpdmF0ZSBwYXJlbnRJbmplY3RvcjogSW5qZWN0b3IsXG4gICAgcHJpdmF0ZSBkeW5hbWljTW9kdWxlU2VydmljZTogRHluYW1pY01vZHVsZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBlbGVtZW50Q29udGV4dDogRWxlbWVudENvbnRleHRTZXJ2aWNlLFxuICAgIHByaXZhdGUgaW9Qcm92aWRlclNlcnZpY2U6IElPUHJvdmlkZXJTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvblNlcnZpY2U6IENvbmZpZ3VyYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmVsZW1lbnRDb250ZXh0Lm1ldGFkYXRhID0gdGhpcy5tZXRhO1xuICAgIHRoaXMuZmFjdG9yeSA9IHRoaXMuZHluYW1pY01vZHVsZVNlcnZpY2UuZ2V0Q29tcG9uZW50RmFjdG9yeSh0aGlzLm1ldGEpO1xuXG4gICAgdGhpcy5jcmVhdGVDb21wb25lbnRzKCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3lDb21wb25lbnRzKCk7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVDb21wb25lbnRzKCk6IHZvaWQge1xuICAgIGNvbnN0IG1vZGVsTWV0YSA9IHRoaXMubWV0YS5tb2RlbDtcblxuICAgIGlmICghbW9kZWxNZXRhKSB7XG4gICAgICB0aGlzLnJlZnNbVVVJRC5VVUlEKCldID0gdGhpcy5jcmVhdGVDb21wb25lbnQoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAobW9kZWxNZXRhLmxpbmVJdGVtKSB7XG4gICAgICB0aGlzLmNyZWF0ZUZyb21MaW5lSXRlbShtb2RlbE1ldGEubGluZUl0ZW0pO1xuICAgIH0gZWxzZSBpZiAobW9kZWxNZXRhLnBhdGgpIHtcbiAgICAgIHRoaXMuY3JlYXRlRnJvbVBhdGgobW9kZWxNZXRhLnBhdGgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlRnJvbVBhdGgocGF0aDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgYXJyYXkkID0gdGhpcy5pb1Byb3ZpZGVyU2VydmljZS5jb25uZWN0KHRoaXMubWV0YSwgJ2NoaWxkcmVuJCcsIHBhdGgpO1xuXG4gICAgYXJyYXkkPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKGNoaWxkcmVuID0+IHtcbiAgICAgIGlmICghaXNBcnJheShjaGlsZHJlbikpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnByb2Nlc3NDaGlsZHJlbihjaGlsZHJlbik7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUZyb21MaW5lSXRlbShwYXRoOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBwYXJlbnRDb21wID0gdGhpcy5wYXJlbnRJbmplY3Rvci5nZXQoRWxlbWVudFJlbmRlcmVyQ29tcG9uZW50LCBudWxsKTtcbiAgICBjb25zdCBwYXJlbnRQYXRoID0gcGFyZW50Q29tcD8ubWV0YS5tb2RlbD8ubGluZUl0ZW07XG5cbiAgICBjb25zdCBwYXRoQmxvY2tzID0gcGFyc2VCb3VuZFBhdGgocGF0aCkucmV2ZXJzZSgpO1xuICAgIGNvbnN0IHsgcHJvcGVydHksIG5hbWUgfSA9IHBhdGhCbG9ja3NbMV0gPz8ge307XG4gICAgY29uc3QgZmluYWxQYXRoID0gcGF0aEJsb2Nrc1swXTtcblxuICAgIGNvbnN0IGNoaWxkcmVuJCA9IHRoaXMuZ2V0UGFyZW50TGluZUl0ZW0kKHBhcmVudENvbXApLnBpcGUoXG4gICAgICBtYXAobW9kZWwgPT4ge1xuICAgICAgICBpZiAocHJvcGVydHkgPT09ICdwb3J0cycgJiYgIWZpbmFsUGF0aC5wcm9wZXJ0eSAmJiBwYXJlbnRQYXRoICE9PSBwYXRoKSB7XG4gICAgICAgICAgcmV0dXJuIG1vZGVsLmxpbmVJdGVtcy5maWx0ZXIoKHsgcG9ydCB9KSA9PiBwb3J0ID09PSBuYW1lKSA/PyBbXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gW21vZGVsXTtcbiAgICAgIH0pLFxuICAgICk7XG5cbiAgICBjaGlsZHJlbiQucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZShjaGlsZHJlbiA9PiB7XG4gICAgICB0aGlzLnByb2Nlc3NDaGlsZHJlbihjaGlsZHJlbik7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHByb2Nlc3NDaGlsZHJlbihjaGlsZHJlbjogYW55W10pOiB2b2lkIHtcbiAgICBjb25zdCByZWZzID0gY2hpbGRyZW4ucmVkdWNlKChhY2MsIGRhdGEsIGluZGV4KSA9PiB7XG4gICAgICBjb25zdCBrZXkgPSBTdHJpbmcoZGF0YT8uaWQgPz8gVVVJRC5VVUlEKCkpO1xuICAgICAgY29uc3QgZXhpc3RpbmdSZWYgPSB0aGlzLnJlZnNba2V5XTtcblxuICAgICAgY29uc3QgcmVmID0gZXhpc3RpbmdSZWYgPz8gdGhpcy5jcmVhdGVDb21wb25lbnQoZGF0YSwgaW5kZXgpO1xuICAgICAgaWYgKGV4aXN0aW5nUmVmKSB7XG4gICAgICAgIHRoaXMudXBkYXRlQ29tcG9uZW50KGV4aXN0aW5nUmVmLCBkYXRhLCBpbmRleCk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZWYgPyB7IC4uLmFjYywgW2tleV06IHJlZiB9IDogYWNjO1xuICAgIH0sIHt9IGFzIERpY3Rpb25hcnk8Q29tcG9uZW50UmVmPGFueT4+KTtcblxuICAgIGNvbnN0IGV4aXN0aW5nS2V5cyA9IE9iamVjdC5rZXlzKHRoaXMucmVmcyk7XG4gICAgY29uc3QgbmV3S2V5cyA9IE9iamVjdC5rZXlzKHJlZnMpO1xuXG4gICAgcHVsbChleGlzdGluZ0tleXMsIC4uLm5ld0tleXMpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgIHRoaXMuZGVzdHJveUNvbXBvbmVudChrZXkpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5yZWZzID0gcmVmcztcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBwcml2YXRlIGdldFBhcmVudExpbmVJdGVtJChwYXJlbnRDb21wOiBFbGVtZW50UmVuZGVyZXJDb21wb25lbnQgfCBudWxsKTogT2JzZXJ2YWJsZTxMaW5lSXRlbT4ge1xuICAgIGNvbnN0IHBhcmVudFJlZnMgPSBPYmplY3QudmFsdWVzKHBhcmVudENvbXA/LnJlZnMgPz8ge30pO1xuICAgIGNvbnN0IHBhcmVudFJlZiA9IHBhcmVudFJlZnMuZmluZChyZWYgPT5cbiAgICAgIChyZWY/LmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpPy5jb250YWlucyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCksXG4gICAgKTtcblxuICAgIGNvbnN0IHBhcmVudE1vZGVsJCA9IHBhcmVudFJlZj8uaW5zdGFuY2UubW9kZWwkO1xuXG4gICAgcmV0dXJuIHBhcmVudE1vZGVsJCA/PyB0aGlzLmNvbmZpZ3VyYXRpb25TZXJ2aWNlLmdldCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVDb21wb25lbnQoZGF0YT86IGFueSwgaW5kZXg/OiBudW1iZXIpOiBDb21wb25lbnRSZWY8YW55PiB8IHVuZGVmaW5lZCB7XG4gICAgaWYgKCF0aGlzLmZhY3RvcnkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB0aGlzLmVsPy5jcmVhdGVDb21wb25lbnQodGhpcy5mYWN0b3J5LCBpbmRleCk7XG5cbiAgICBpZiAoY29tcG9uZW50UmVmKSB7XG4gICAgICBjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ25hbWUnLCB0aGlzLm1ldGEubmFtZSk7XG4gICAgICBjb21wb25lbnRSZWYubG9jYXRpb24ubmF0aXZlRWxlbWVudC5zZXRBdHRyaWJ1dGUoJ3BhdGgnLCB0aGlzLm1ldGEucGF0aCk7XG4gICAgICBjb21wb25lbnRSZWYuaW5zdGFuY2U/Lm1vZGVsJC5uZXh0KGRhdGEpO1xuICAgIH1cblxuICAgIHJldHVybiBjb21wb25lbnRSZWY7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUNvbXBvbmVudChyZWY6IENvbXBvbmVudFJlZjxhbnk+LCBkYXRhOiBhbnksIGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICByZWYuaW5zdGFuY2UubW9kZWwkLm5leHQoZGF0YSk7XG5cbiAgICBpZiAodGhpcy5lbCAmJiB0aGlzLmVsLmluZGV4T2YocmVmLmhvc3RWaWV3KSAhPT0gaW5kZXgpIHtcbiAgICAgIHRoaXMuZWwubW92ZShyZWYuaG9zdFZpZXcsIGluZGV4KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGRlc3Ryb3lDb21wb25lbnQoa2V5OiBzdHJpbmcpIHtcbiAgICB0aGlzLnJlZnNba2V5XT8uZGVzdHJveSgpO1xuICAgIGRlbGV0ZSB0aGlzLnJlZnNba2V5XTtcbiAgfVxuXG4gIHByaXZhdGUgZGVzdHJveUNvbXBvbmVudHMoKTogdm9pZCB7XG4gICAgT2JqZWN0LnZhbHVlcyh0aGlzLnJlZnMpLmZvckVhY2gocmVmID0+IHJlZj8uZGVzdHJveSgpKTtcbiAgICB0aGlzLnJlZnMgPSB7fTtcbiAgfVxufVxuIiwiPG5nLXRlbXBsYXRlICNlbD48L25nLXRlbXBsYXRlPlxuIl19
169
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1yZW5kZXJlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9lbGVtZW50LXJlbmRlcmVyL2VsZW1lbnQtcmVuZGVyZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zZGsvY21zL2NvbXBvbmVudHMvZWxlbWVudC1yZW5kZXJlci9lbGVtZW50LXJlbmRlcmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUtULEtBQUssRUFHTCxRQUFRLEVBQ1IsU0FBUyxFQUNULGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQVksSUFBSSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTlDLE9BQU8sRUFBYyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxHQUFHLEVBQWMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUcvRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7OztBQVN4RCxNQUFNLE9BQU8sd0JBQXdCO0lBU25DLFlBQ3NCLGNBQXdCLEVBQ3BDLG9CQUEwQyxFQUMxQyxjQUFxQyxFQUNyQyxpQkFBb0MsRUFDcEMsb0JBQTBDLEVBQzFDLFVBQXNCLEVBQ3RCLEdBQXNCO1FBTlYsbUJBQWMsR0FBZCxjQUFjLENBQVU7UUFDcEMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyxtQkFBYyxHQUFkLGNBQWMsQ0FBdUI7UUFDckMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNC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bXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgQ29tcG9uZW50RmFjdG9yeSxcbiAgQ29tcG9uZW50UmVmLFxuICBFbGVtZW50UmVmLFxuICBJbmplY3RvcixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBTa2lwU2VsZixcbiAgVmlld0NoaWxkLFxuICBWaWV3Q29udGFpbmVyUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IExpbmVJdGVtLCBVVUlEIH0gZnJvbSAnQHZlbG9jZS9jb3JlJztcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25TZXJ2aWNlIH0gZnJvbSAnQHZlbG9jZS9zZGsvY29yZSc7XG5pbXBvcnQgeyBEaWN0aW9uYXJ5LCBpc0FycmF5LCBwdWxsIH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEeW5hbWljTW9kdWxlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2R5bmFtaWMtbW9kdWxlLnNlcnZpY2UnO1xuaW1wb3J0IHsgRWxlbWVudENvbnRleHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZWxlbWVudC1jb250ZXh0LnNlcnZpY2UnO1xuaW1wb3J0IHsgSU9Qcm92aWRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9pby1wcm92aWRlci5zZXJ2aWNlJztcbmltcG9ydCB7IEVsZW1lbnRNZXRhZGF0YSB9IGZyb20gJy4uLy4uL3R5cGVzL2NvbW1vbi50eXBlcyc7XG5pbXBvcnQgeyBwYXJzZUJvdW5kUGF0aCB9IGZyb20gJy4uLy4uL3V0aWxzL3BhdGgudXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2bC1jbXMtZWxlbWVudC1yZW5kZXJlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbGVtZW50LXJlbmRlcmVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZWxlbWVudC1yZW5kZXJlci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbRWxlbWVudENvbnRleHRTZXJ2aWNlXSxcbn0pXG5leHBvcnQgY2xhc3MgRWxlbWVudFJlbmRlcmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkKCdlbCcsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pIHB1YmxpYyBlbD86IFZpZXdDb250YWluZXJSZWY7XG5cbiAgQElucHV0KCkgcHVibGljIG1ldGEhOiBFbGVtZW50TWV0YWRhdGE7XG5cbiAgcHJpdmF0ZSBmYWN0b3J5PzogQ29tcG9uZW50RmFjdG9yeTxhbnk+O1xuICBwcml2YXRlIHJlZnM6IERpY3Rpb25hcnk8Q29tcG9uZW50UmVmPGFueT4gfCB1bmRlZmluZWQ+ID0ge307XG4gIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBTa2lwU2VsZigpIHByaXZhdGUgcGFyZW50SW5qZWN0b3I6IEluamVjdG9yLFxuICAgIHByaXZhdGUgZHluYW1pY01vZHVsZVNlcnZpY2U6IER5bmFtaWNNb2R1bGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgZWxlbWVudENvbnRleHQ6IEVsZW1lbnRDb250ZXh0U2VydmljZSxcbiAgICBwcml2YXRlIGlvUHJvdmlkZXJTZXJ2aWNlOiBJT1Byb3ZpZGVyU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZ3VyYXRpb25TZXJ2aWNlOiBDb25maWd1cmF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICApIHt9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZWxlbWVudENvbnRleHQubWV0YWRhdGEgPSB0aGlzLm1ldGE7XG4gICAgdGhpcy5mYWN0b3J5ID0gdGhpcy5keW5hbWljTW9kdWxlU2VydmljZS5nZXRDb21wb25lbnRGYWN0b3J5KHRoaXMubWV0YSk7XG5cbiAgICB0aGlzLmNyZWF0ZUNvbXBvbmVudHMoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3lDb21wb25lbnRzKCk7XG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVDb21wb25lbnRzKCk6IHZvaWQge1xuICAgIGNvbnN0IG1vZGVsTWV0YSA9IHRoaXMubWV0YS5tb2RlbDtcblxuICAgIGlmICghbW9kZWxNZXRhKSB7XG4gICAgICB0aGlzLnJlZnNbVVVJRC5VVUlEKCldID0gdGhpcy5jcmVhdGVDb21wb25lbnQoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAobW9kZWxNZXRhLmxpbmVJdGVtKSB7XG4gICAgICB0aGlzLmNyZWF0ZUZyb21MaW5lSXRlbShtb2RlbE1ldGEubGluZUl0ZW0pO1xuICAgIH0gZWxzZSBpZiAobW9kZWxNZXRhLnBhdGgpIHtcbiAgICAgIHRoaXMuY3JlYXRlRnJvbVBhdGgobW9kZWxNZXRhLnBhdGgpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlRnJvbVBhdGgocGF0aDogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgYXJyYXkkID0gdGhpcy5pb1Byb3ZpZGVyU2VydmljZS5jb25uZWN0KHRoaXMubWV0YSwgJ2NoaWxkcmVuJCcsIHBhdGgpO1xuXG4gICAgYXJyYXkkPy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKGNoaWxkcmVuID0+IHtcbiAgICAgIGlmICghaXNBcnJheShjaGlsZHJlbikpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnByb2Nlc3NDaGlsZHJlbihjaGlsZHJlbik7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldE1vZGVsQ29tcG9uZW50KCk6IEVsZW1lbnRSZW5kZXJlckNvbXBvbmVudCB8IG51bGwge1xuICAgIGxldCBjb21wb25lbnQ6IEVsZW1lbnRSZW5kZXJlckNvbXBvbmVudCB8IG51bGwgPSBudWxsO1xuICAgIGxldCBpbmplY3RvciA9IHRoaXMucGFyZW50SW5qZWN0b3I7XG5cbiAgICB3aGlsZSAoIWNvbXBvbmVudCkge1xuICAgICAgY29uc3QgcGFyZW50Q29tcCA9IGluamVjdG9yLmdldChFbGVtZW50UmVuZGVyZXJDb21wb25lbnQsIG51bGwpO1xuXG4gICAgICBpZiAocGFyZW50Q29tcD8ubWV0YS5tb2RlbCkge1xuICAgICAgICBjb21wb25lbnQgPSBwYXJlbnRDb21wO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cblxuICAgICAgaWYgKHBhcmVudENvbXApIHtcbiAgICAgICAgaW5qZWN0b3IgPSBwYXJlbnRDb21wLnBhcmVudEluamVjdG9yO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGNvbXBvbmVudDtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlRnJvbUxpbmVJdGVtKHBhdGg6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IHBhcmVudENvbXAgPSB0aGlzLmdldE1vZGVsQ29tcG9uZW50KCk7XG4gICAgY29uc3QgcGFyZW50UGF0aCA9IHBhcmVudENvbXA/Lm1ldGEubW9kZWw/LmxpbmVJdGVtO1xuXG4gICAgY29uc3QgcGF0aEJsb2NrcyA9IHBhcnNlQm91bmRQYXRoKHBhdGgpLnJldmVyc2UoKTtcbiAgICBjb25zdCB7IHByb3BlcnR5LCBuYW1lIH0gPSBwYXRoQmxvY2tzWzFdID8/IHt9O1xuICAgIGNvbnN0IGZpbmFsUGF0aCA9IHBhdGhCbG9ja3NbMF07XG5cbiAgICBjb25zdCBjaGlsZHJlbiQgPSB0aGlzLmdldFBhcmVudExpbmVJdGVtJChwYXJlbnRDb21wKS5waXBlKFxuICAgICAgbWFwKG1vZGVsID0+IHtcbiAgICAgICAgaWYgKCFtb2RlbCkge1xuICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChwcm9wZXJ0eSA9PT0gJ3BvcnRzJyAmJiAhZmluYWxQYXRoLnByb3BlcnR5ICYmIHBhcmVudFBhdGggIT09IHBhdGgpIHtcbiAgICAgICAgICByZXR1cm4gbW9kZWwubGluZUl0ZW1zLmZpbHRlcigoeyBwb3J0IH0pID0+IHBvcnQgPT09IG5hbWUpID8/IFtdO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFttb2RlbF07XG4gICAgICB9KSxcbiAgICApO1xuXG4gICAgY2hpbGRyZW4kLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoY2hpbGRyZW4gPT4ge1xuICAgICAgdGhpcy5wcm9jZXNzQ2hpbGRyZW4oY2hpbGRyZW4pO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBwcm9jZXNzQ2hpbGRyZW4oY2hpbGRyZW46IGFueVtdKTogdm9pZCB7XG4gICAgY29uc3QgcmVmcyA9IGNoaWxkcmVuLnJlZHVjZSgoYWNjLCBkYXRhLCBpbmRleCkgPT4ge1xuICAgICAgY29uc3Qga2V5ID0gU3RyaW5nKGRhdGE/LmlkID8/IFVVSUQuVVVJRCgpKTtcbiAgICAgIGNvbnN0IGV4aXN0aW5nUmVmID0gdGhpcy5yZWZzW2tleV07XG5cbiAgICAgIGNvbnN0IHJlZiA9IGV4aXN0aW5nUmVmID8/IHRoaXMuY3JlYXRlQ29tcG9uZW50KGRhdGEsIGluZGV4KTtcbiAgICAgIGlmIChleGlzdGluZ1JlZikge1xuICAgICAgICB0aGlzLnVwZGF0ZUNvbXBvbmVudChleGlzdGluZ1JlZiwgZGF0YSwgaW5kZXgpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmVmID8geyAuLi5hY2MsIFtrZXldOiByZWYgfSA6IGFjYztcbiAgICB9LCB7fSBhcyBEaWN0aW9uYXJ5PENvbXBvbmVudFJlZjxhbnk+Pik7XG5cbiAgICBjb25zdCBleGlzdGluZ0tleXMgPSBPYmplY3Qua2V5cyh0aGlzLnJlZnMpO1xuICAgIGNvbnN0IG5ld0tleXMgPSBPYmplY3Qua2V5cyhyZWZzKTtcblxuICAgIHB1bGwoZXhpc3RpbmdLZXlzLCAuLi5uZXdLZXlzKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICB0aGlzLmRlc3Ryb3lDb21wb25lbnQoa2V5KTtcbiAgICB9KTtcblxuICAgIHRoaXMucmVmcyA9IHJlZnM7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRQYXJlbnRMaW5lSXRlbSQocGFyZW50Q29tcDogRWxlbWVudFJlbmRlcmVyQ29tcG9uZW50IHwgbnVsbCk6IE9ic2VydmFibGU8TGluZUl0ZW0gfCB1bmRlZmluZWQ+IHtcbiAgICBjb25zdCBwYXJlbnRSZWZzID0gT2JqZWN0LnZhbHVlcyhwYXJlbnRDb21wPy5yZWZzID8/IHt9KTtcbiAgICBjb25zdCBwYXJlbnRSZWYgPSBwYXJlbnRSZWZzLmZpbmQocmVmID0+XG4gICAgICAocmVmPy5sb2NhdGlvbi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KT8uY29udGFpbnModGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpLFxuICAgICk7XG5cbiAgICBjb25zdCBwYXJlbnRNb2RlbCQgPSBwYXJlbnRSZWY/Lmluc3RhbmNlLm1vZGVsJDtcblxuICAgIHJldHVybiBwYXJlbnRNb2RlbCQgPz8gdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5nZXQoKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlQ29tcG9uZW50KGRhdGE/OiBhbnksIGluZGV4PzogbnVtYmVyKTogQ29tcG9uZW50UmVmPGFueT4gfCB1bmRlZmluZWQge1xuICAgIGlmICghdGhpcy5mYWN0b3J5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgY29tcG9uZW50UmVmID0gdGhpcy5lbD8uY3JlYXRlQ29tcG9uZW50KHRoaXMuZmFjdG9yeSwgaW5kZXgpO1xuXG4gICAgaWYgKGNvbXBvbmVudFJlZikge1xuICAgICAgY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKCduYW1lJywgdGhpcy5tZXRhLm5hbWUpO1xuICAgICAgY29tcG9uZW50UmVmLmxvY2F0aW9uLm5hdGl2ZUVsZW1lbnQuc2V0QXR0cmlidXRlKCdwYXRoJywgdGhpcy5tZXRhLnBhdGgpO1xuICAgICAgY29tcG9uZW50UmVmLmluc3RhbmNlPy5tb2RlbCQubmV4dChkYXRhKTtcbiAgICB9XG5cbiAgICByZXR1cm4gY29tcG9uZW50UmVmO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVDb21wb25lbnQocmVmOiBDb21wb25lbnRSZWY8YW55PiwgZGF0YTogYW55LCBpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgcmVmLmluc3RhbmNlLm1vZGVsJC5uZXh0KGRhdGEpO1xuXG4gICAgaWYgKHRoaXMuZWwgJiYgdGhpcy5lbC5pbmRleE9mKHJlZi5ob3N0VmlldykgIT09IGluZGV4KSB7XG4gICAgICB0aGlzLmVsLm1vdmUocmVmLmhvc3RWaWV3LCBpbmRleCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBkZXN0cm95Q29tcG9uZW50KGtleTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy5yZWZzW2tleV0/LmRlc3Ryb3koKTtcbiAgICBkZWxldGUgdGhpcy5yZWZzW2tleV07XG4gIH1cblxuICBwcml2YXRlIGRlc3Ryb3lDb21wb25lbnRzKCk6IHZvaWQge1xuICAgIE9iamVjdC52YWx1ZXModGhpcy5yZWZzKS5mb3JFYWNoKHJlZiA9PiByZWY/LmRlc3Ryb3koKSk7XG4gICAgdGhpcy5yZWZzID0ge307XG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSAjZWw+PC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -41,4 +41,4 @@ ElementComponent = __decorate([
41
41
  __param(0, Inject(Injector))
42
42
  ], ElementComponent);
43
43
  export { ElementComponent };
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9lbGVtZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNkRBQTZEO0FBQzdELE9BQU8sRUFJTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULE1BQU0sRUFDTixRQUFRLEdBS1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFRakQsSUFBYSxnQkFBZ0IsR0FBN0IsTUFBYSxnQkFDWCxTQUFRLE1BQU07SUFNZCxZQUFxQyxRQUFrQjtRQUNyRCxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFEbUIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUh2QyxXQUFNLEdBQUcsSUFBSSxlQUFlLENBQWtCLFNBQVMsQ0FBQyxDQUFDO1FBTXZFLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFdBQUMsT0FBQSxNQUFBLE1BQU0sQ0FBQyxXQUFXLCtDQUFsQixNQUFNLEVBQWUsT0FBTyxDQUFDLENBQUEsRUFBQSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxXQUFDLE9BQUEsTUFBQSxNQUFNLENBQUMsUUFBUSwrQ0FBZixNQUFNLENBQWEsQ0FBQSxFQUFBLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFdBQUMsT0FBQSxNQUFBLE1BQU0sQ0FBQyxTQUFTLCtDQUFoQixNQUFNLENBQWMsQ0FBQSxFQUFBLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFdBQUMsT0FBQSxNQUFBLE1BQU0sQ0FBQyxrQkFBa0IsK0NBQXpCLE1BQU0sQ0FBdUIsQ0FBQSxFQUFBLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFdBQUMsT0FBQSxNQUFBLE1BQU0sQ0FBQyxlQUFlLCtDQUF0QixNQUFNLENBQW9CLENBQUEsRUFBQSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxXQUFDLE9BQUEsTUFBQSxNQUFNLENBQUMsa0JBQWtCLCtDQUF6QixNQUFNLENBQXVCLENBQUEsRUFBQSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxXQUFDLE9BQUEsTUFBQSxNQUFNLENBQUMsV0FBVywrQ0FBbEIsTUFBTSxDQUFnQixDQUFBLEVBQUEsQ0FBQyxDQUFDO0lBQ3pELENBQUM7Q0FDRixDQUFBO0FBeENZLGdCQUFnQjtJQUw1QixTQUFTLENBQUM7UUFDVCxRQUFRLEVBQUUsRUFBRTtRQUNaLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO1FBQy9DLEdBQUcsRUFBRSxJQUFJO0tBQ1YsQ0FBQztJQVFhLFdBQUEsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0dBUGxCLGdCQUFnQixDQXdDNUI7U0F4Q1ksZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQGFuZ3VsYXItZXNsaW50L25vLWNvbmZsaWN0aW5nLWxpZmVjeWNsZSAqL1xuaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQWZ0ZXJWaWV3Q2hlY2tlZCxcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRG9DaGVjayxcbiAgSW5qZWN0LFxuICBJbmplY3RvcixcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgU2ltcGxlQ2hhbmdlcyxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEVudGl0eSB9IGZyb20gJy4uL2VuZ2luZS9tb2RlbHMvZW50aXR5JztcbmltcG9ydCB7IElQbHVnaW5Db21wb25lbnQgfSBmcm9tICcuL3BsdWdpbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6ICcnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaml0OiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBFbGVtZW50Q29tcG9uZW50XG4gIGV4dGVuZHMgRW50aXR5XG4gIGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIERvQ2hlY2ssIEFmdGVyQ29udGVudEluaXQsIEFmdGVyVmlld0luaXQsIEFmdGVyVmlld0NoZWNrZWQsIE9uRGVzdHJveVxue1xuICBwdWJsaWMgcmVhZG9ubHkgbW9kZWwkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxhbnkgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG4gIHB1YmxpYyByZWFkb25seSBwbHVnaW5zITogSVBsdWdpbkNvbXBvbmVudFtdO1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoSW5qZWN0b3IpIHB1YmxpYyBpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICBzdXBlcihpbmplY3Rvcik7XG5cbiAgICBzdXBlci5pbml0UGx1Z2lucygpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMucGx1Z2lucy5mb3JFYWNoKHBsdWdpbiA9PiBwbHVnaW4ubmdPbkNoYW5nZXM/LihjaGFuZ2VzKSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnBsdWdpbnMuZm9yRWFjaChwbHVnaW4gPT4gcGx1Z2luLm5nT25Jbml0Py4oKSk7XG4gIH1cblxuICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgdGhpcy5wbHVnaW5zLmZvckVhY2gocGx1Z2luID0+IHBsdWdpbi5uZ0RvQ2hlY2s/LigpKTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnBsdWdpbnMuZm9yRWFjaChwbHVnaW4gPT4gcGx1Z2luLm5nQWZ0ZXJDb250ZW50SW5pdD8uKCkpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMucGx1Z2lucy5mb3JFYWNoKHBsdWdpbiA9PiBwbHVnaW4ubmdBZnRlclZpZXdJbml0Py4oKSk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0NoZWNrZWQoKSB7XG4gICAgdGhpcy5wbHVnaW5zLmZvckVhY2gocGx1Z2luID0+IHBsdWdpbi5uZ0FmdGVyVmlld0NoZWNrZWQ/LigpKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMucGx1Z2lucy5mb3JFYWNoKHBsdWdpbiA9PiBwbHVnaW4ubmdPbkRlc3Ryb3k/LigpKTtcbiAgfVxufVxuIl19
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3Nkay9jbXMvY29tcG9uZW50cy9lbGVtZW50LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsNkRBQTZEO0FBQzdELE9BQU8sRUFJTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULE1BQU0sRUFDTixRQUFRLEdBS1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFRakQsSUFBYSxnQkFBZ0IsR0FBN0IsTUFBYSxnQkFDWCxTQUFRLE1BQU07SUFNZCxZQUFxQyxRQUFrQjtRQUNyRCxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFEbUIsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUh2QyxXQUFNLEdBQUcsSUFBSSxlQUFlLENBQWtCLFNBQVMsQ0FBQyxDQUFDO1FBTXZFLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU0sV0FBVyxDQUFDLE9BQXNCO1FBQ3ZDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFdBQUMsT0FBQSxNQUFBLE1BQU0sQ0FBQyxXQUFXLCtDQUFsQixNQUFNLEVBQWUsT0FBTyxDQUFDLENBQUEsRUFBQSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxXQUFDLE9BQUEsTUFBQSxNQUFNLENBQUMsUUFBUSwrQ0FBZixNQUFNLENBQWEsQ0FBQSxFQUFBLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU0sU0FBUztRQUNkLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFdBQUMsT0FBQSxNQUFBLE1BQU0sQ0FBQyxTQUFTLCtDQUFoQixNQUFNLENBQWMsQ0FBQSxFQUFBLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRU0sa0JBQWtCO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFdBQUMsT0FBQSxNQUFBLE1BQU0sQ0FBQyxrQkFBa0IsK0NBQXpCLE1BQU0sQ0FBdUIsQ0FBQSxFQUFBLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRU0sZUFBZTtRQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxXQUFDLE9BQUEsTUFBQSxNQUFNLENBQUMsZUFBZSwrQ0FBdEIsTUFBTSxDQUFvQixDQUFBLEVBQUEsQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFTSxrQkFBa0I7UUFDdkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsV0FBQyxPQUFBLE1BQUEsTUFBTSxDQUFDLGtCQUFrQiwrQ0FBekIsTUFBTSxDQUF1QixDQUFBLEVBQUEsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFdBQUMsT0FBQSxNQUFBLE1BQU0sQ0FBQyxXQUFXLCtDQUFsQixNQUFNLENBQWdCLENBQUEsRUFBQSxDQUFDLENBQUM7SUFDekQsQ0FBQztDQUNGLENBQUE7QUF4Q1ksZ0JBQWdCO0lBTDVCLFNBQVMsQ0FBQztRQUNULFFBQVEsRUFBRSxFQUFFO1FBQ1osZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07UUFDL0MsR0FBRyxFQUFFLElBQUk7S0FDVixDQUFDO0lBUWEsV0FBQSxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUE7R0FQbEIsZ0JBQWdCLENBd0M1QjtTQXhDWSxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvbm8tY29uZmxpY3RpbmctbGlmZWN5Y2xlICovXG5pbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBBZnRlclZpZXdDaGVja2VkLFxuICBBZnRlclZpZXdJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBEb0NoZWNrLFxuICBJbmplY3QsXG4gIEluamVjdG9yLFxuICBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRW50aXR5IH0gZnJvbSAnLi4vZW5naW5lL21vZGVscy9lbnRpdHknO1xuaW1wb3J0IHsgSVBsdWdpbkNvbXBvbmVudCB9IGZyb20gJy4vcGx1Z2luLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogJycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBqaXQ6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEVsZW1lbnRDb21wb25lbnRcbiAgZXh0ZW5kcyBFbnRpdHlcbiAgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgRG9DaGVjaywgQWZ0ZXJDb250ZW50SW5pdCwgQWZ0ZXJWaWV3SW5pdCwgQWZ0ZXJWaWV3Q2hlY2tlZCwgT25EZXN0cm95XG57XG4gIHB1YmxpYyByZWFkb25seSBtb2RlbCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGFueSB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcbiAgcHVibGljIHJlYWRvbmx5IHBsdWdpbnMhOiBJUGx1Z2luQ29tcG9uZW50W107XG5cbiAgY29uc3RydWN0b3IoQEluamVjdChJbmplY3RvcikgcHVibGljIGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHN1cGVyKGluamVjdG9yKTtcblxuICAgIHN1cGVyLmluaXRQbHVnaW5zKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIHRoaXMucGx1Z2lucy5mb3JFYWNoKHBsdWdpbiA9PiBwbHVnaW4ubmdPbkNoYW5nZXM/LihjaGFuZ2VzKSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5wbHVnaW5zLmZvckVhY2gocGx1Z2luID0+IHBsdWdpbi5uZ09uSW5pdD8uKCkpO1xuICB9XG5cbiAgcHVibGljIG5nRG9DaGVjaygpOiB2b2lkIHtcbiAgICB0aGlzLnBsdWdpbnMuZm9yRWFjaChwbHVnaW4gPT4gcGx1Z2luLm5nRG9DaGVjaz8uKCkpO1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnBsdWdpbnMuZm9yRWFjaChwbHVnaW4gPT4gcGx1Z2luLm5nQWZ0ZXJDb250ZW50SW5pdD8uKCkpO1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnBsdWdpbnMuZm9yRWFjaChwbHVnaW4gPT4gcGx1Z2luLm5nQWZ0ZXJWaWV3SW5pdD8uKCkpO1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICB0aGlzLnBsdWdpbnMuZm9yRWFjaChwbHVnaW4gPT4gcGx1Z2luLm5nQWZ0ZXJWaWV3Q2hlY2tlZD8uKCkpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMucGx1Z2lucy5mb3JFYWNoKHBsdWdpbiA9PiBwbHVnaW4ubmdPbkRlc3Ryb3k/LigpKTtcbiAgfVxufVxuIl19