@veloceapps/sdk 3.1.31 → 3.1.33

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.
@@ -262,8 +262,8 @@ export declare const vendorMap: {
262
262
  forEachRight<TString_1 extends string | null | undefined>(collection: TString_1, iteratee?: lodash.StringIterator<any> | undefined): TString_1;
263
263
  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;
264
264
  forEachRight<T_96 extends object>(collection: T_96 | null | undefined, iteratee?: lodash.ObjectIterator<T_96, any> | undefined): T_96 | null | undefined;
265
- groupBy<T_120>(collection: lodash.List<T_120> | null | undefined, iteratee?: lodash.ValueIteratee<T_120> | undefined): lodash.Dictionary<T_120[]>;
266
- 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][]>;
265
+ groupBy<T_120>(collection: lodash.List<T_120> | null | undefined, iteratee?: lodash.ValueIteratee<T_120> | undefined): lodash.Dictionary<[T_120, ...T_120[]]>;
266
+ 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][]]>;
267
267
  includes<T_122>(collection: lodash.Dictionary<T_122> | lodash.NumericDictionary<T_122> | null | undefined, target: T_122, fromIndex?: number | undefined): boolean;
268
268
  invokeMap(collection: object | null | undefined, methodName: string, ...args: any[]): any[];
269
269
  invokeMap<TResult_13>(collection: object | null | undefined, method: (...args: any[]) => TResult_13, ...args: any[]): TResult_13[];
@@ -317,52 +317,51 @@ export declare const vendorMap: {
317
317
  bindKey: lodash.FunctionBindKey;
318
318
  curry: lodash.Curry;
319
319
  curryRight: lodash.CurryRight;
320
- debounce<T_163 extends (...args: any) => any>(func: T_163, wait: number | undefined, options: lodash.DebounceSettingsLeading): lodash.DebouncedFuncLeading<T_163>;
321
- debounce<T_164 extends (...args: any) => any>(func: T_164, wait?: number | undefined, options?: lodash.DebounceSettings | undefined): lodash.DebouncedFunc<T_164>;
320
+ debounce<T_163 extends (...args: any) => any>(func: T_163, wait?: number | undefined, options?: lodash.DebounceSettings | undefined): lodash.DebouncedFunc<T_163>;
322
321
  defer(func: (...args: any[]) => any, ...args: any[]): number;
323
322
  delay(func: (...args: any[]) => any, wait: number, ...args: any[]): number;
324
- flip<T_165 extends (...args: any) => any>(func: T_165): T_165;
323
+ flip<T_164 extends (...args: any) => any>(func: T_164): T_164;
325
324
  memoize: {
326
- <T_166 extends (...args: any) => any>(func: T_166, resolver?: ((...args: Parameters<T_166>) => any) | undefined): T_166 & lodash.MemoizedFunction;
325
+ <T_165 extends (...args: any) => any>(func: T_165, resolver?: ((...args: Parameters<T_165>) => any) | undefined): T_165 & lodash.MemoizedFunction;
327
326
  Cache: lodash.MapCacheConstructor;
328
327
  };
329
- negate<T_167 extends any[]>(predicate: (...args: T_167) => boolean): (...args: T_167) => boolean;
330
- once<T_168 extends (...args: any) => any>(func: T_168): T_168;
328
+ negate<T_166 extends any[]>(predicate: (...args: T_166) => boolean): (...args: T_166) => boolean;
329
+ once<T_167 extends (...args: any) => any>(func: T_167): T_167;
331
330
  overArgs(func: (...args: any[]) => any, ...transforms: lodash.Many<(...args: any[]) => any>[]): (...args: any[]) => any;
332
331
  partial: lodash.Partial;
333
332
  partialRight: lodash.PartialRight;
334
333
  rearg(func: (...args: any[]) => any, ...indexes: lodash.Many<number>[]): (...args: any[]) => any;
335
334
  rest(func: (...args: any[]) => any, start?: number | undefined): (...args: any[]) => any;
336
335
  spread<TResult_23>(func: (...args: any[]) => TResult_23, start?: number | undefined): (...args: any[]) => TResult_23;
337
- throttle<T_169 extends (...args: any) => any>(func: T_169, wait?: number | undefined, options?: lodash.ThrottleSettings | undefined): lodash.DebouncedFunc<T_169>;
338
- unary<T_170, TResult_24>(func: (arg1: T_170, ...args: any[]) => TResult_24): (arg1: T_170) => TResult_24;
339
- wrap<T_171, TArgs, TResult_25>(value: T_171, wrapper: (value: T_171, ...args: TArgs[]) => TResult_25): (...args: TArgs[]) => TResult_25;
340
- castArray<T_172>(value?: lodash.Many<T_172> | undefined): T_172[];
341
- clone<T_173>(value: T_173): T_173;
342
- cloneDeep<T_174>(value: T_174): T_174;
343
- cloneDeepWith<T_175>(value: T_175, customizer: lodash.CloneDeepWithCustomizer<T_175>): any;
344
- cloneDeepWith<T_176>(value: T_176): T_176;
345
- cloneWith<T_177, TResult_26 extends string | number | boolean | object | null>(value: T_177, customizer: lodash.CloneWithCustomizer<T_177, TResult_26>): TResult_26;
346
- cloneWith<T_178, TResult_27>(value: T_178, customizer: lodash.CloneWithCustomizer<T_178, TResult_27 | undefined>): T_178 | TResult_27;
347
- cloneWith<T_179>(value: T_179): T_179;
348
- conformsTo<T_180>(object: T_180, source: lodash.ConformsPredicateObject<T_180>): boolean;
336
+ throttle<T_168 extends (...args: any) => any>(func: T_168, wait?: number | undefined, options?: lodash.ThrottleSettings | undefined): lodash.DebouncedFunc<T_168>;
337
+ unary<T_169, TResult_24>(func: (arg1: T_169, ...args: any[]) => TResult_24): (arg1: T_169) => TResult_24;
338
+ wrap<T_170, TArgs, TResult_25>(value: T_170, wrapper: (value: T_170, ...args: TArgs[]) => TResult_25): (...args: TArgs[]) => TResult_25;
339
+ castArray<T_171>(value?: lodash.Many<T_171> | undefined): T_171[];
340
+ clone<T_172>(value: T_172): T_172;
341
+ cloneDeep<T_173>(value: T_173): T_173;
342
+ cloneDeepWith<T_174>(value: T_174, customizer: lodash.CloneDeepWithCustomizer<T_174>): any;
343
+ cloneDeepWith<T_175>(value: T_175): T_175;
344
+ cloneWith<T_176, TResult_26 extends string | number | boolean | object | null>(value: T_176, customizer: lodash.CloneWithCustomizer<T_176, TResult_26>): TResult_26;
345
+ cloneWith<T_177, TResult_27>(value: T_177, customizer: lodash.CloneWithCustomizer<T_177, TResult_27 | undefined>): T_177 | TResult_27;
346
+ cloneWith<T_178>(value: T_178): T_178;
347
+ conformsTo<T_179>(object: T_179, source: lodash.ConformsPredicateObject<T_179>): boolean;
349
348
  eq(value: any, other: any): boolean;
350
349
  gt(value: any, other: any): boolean;
351
350
  gte(value: any, other: any): boolean;
352
351
  isArguments(value?: any): value is IArguments;
353
352
  isArray(value?: any): value is any[];
354
- isArray<T_181>(value?: any): value is any[];
353
+ isArray<T_180>(value?: any): value is any[];
355
354
  isArrayBuffer(value?: any): value is ArrayBuffer;
356
- isArrayLike<T_182 extends {
355
+ isArrayLike<T_181 extends {
357
356
  __lodashAnyHack: any;
358
- }>(t: T_182): boolean;
357
+ }>(t: T_181): boolean;
359
358
  isArrayLike(value: ((...args: any[]) => any) | null | undefined): value is never;
360
359
  isArrayLike(value: any): value is {
361
360
  length: number;
362
361
  };
363
- isArrayLikeObject<T_183 extends {
362
+ isArrayLikeObject<T_182 extends {
364
363
  __lodashAnyHack: any;
365
- }>(value: T_183): boolean;
364
+ }>(value: T_182): boolean;
366
365
  isArrayLikeObject(value: string | number | boolean | Function | ((...args: any[]) => any) | null | undefined): value is never;
367
366
  isArrayLikeObject(value: any): value is object & {
368
367
  length: number;
@@ -371,12 +370,6 @@ export declare const vendorMap: {
371
370
  isBuffer(value?: any): boolean;
372
371
  isDate(value?: any): value is Date;
373
372
  isElement(value?: any): boolean;
374
- isEmpty<T_184 extends {
375
- __trapAny: any;
376
- }>(value?: T_184 | undefined): boolean;
377
- isEmpty(value: string): value is "";
378
- isEmpty(value: lodash.List<any> | Map<any, any> | Set<any> | null | undefined): boolean;
379
- isEmpty<T_185 extends object>(value: T_185 | null | undefined): value is lodash.EmptyObjectOf<T_185> | null | undefined;
380
373
  isEmpty(value?: any): boolean;
381
374
  isEqual(value: any, other: any): boolean;
382
375
  isEqualWith(value: any, other: any, customizer?: lodash.IsEqualCustomizer | undefined): boolean;
@@ -407,8 +400,8 @@ export declare const vendorMap: {
407
400
  isWeakSet(value?: any): value is WeakSet<object>;
408
401
  lt(value: any, other: any): boolean;
409
402
  lte(value: any, other: any): boolean;
410
- toArray<T_186>(value: lodash.Dictionary<T_186> | lodash.NumericDictionary<T_186> | null | undefined): T_186[];
411
- toArray<T_187>(value: T_187): T_187[keyof T_187][];
403
+ toArray<T_183>(value: lodash.Dictionary<T_183> | lodash.NumericDictionary<T_183> | null | undefined): T_183[];
404
+ toArray<T_184>(value: T_184): T_184[keyof T_184][];
412
405
  toArray(): any[];
413
406
  toFinite(value: any): number;
414
407
  toInteger(value: any): number;
@@ -421,17 +414,17 @@ export declare const vendorMap: {
421
414
  ceil(n: number, precision?: number | undefined): number;
422
415
  divide(dividend: number, divisor: number): number;
423
416
  floor(n: number, precision?: number | undefined): number;
424
- max<T_188>(collection: lodash.List<T_188> | null | undefined): T_188 | undefined;
425
- maxBy<T_189>(collection: lodash.List<T_189> | null | undefined, iteratee?: lodash.ValueIteratee<T_189> | undefined): T_189 | undefined;
417
+ max<T_185>(collection: lodash.List<T_185> | null | undefined): T_185 | undefined;
418
+ maxBy<T_186>(collection: lodash.List<T_186> | null | undefined, iteratee?: lodash.ValueIteratee<T_186> | undefined): T_186 | undefined;
426
419
  mean(collection: lodash.List<any> | null | undefined): number;
427
- meanBy<T_190>(collection: lodash.List<T_190> | null | undefined, iteratee?: lodash.ValueIteratee<T_190> | undefined): number;
428
- min<T_191>(collection: lodash.List<T_191> | null | undefined): T_191 | undefined;
429
- minBy<T_192>(collection: lodash.List<T_192> | null | undefined, iteratee?: lodash.ValueIteratee<T_192> | undefined): T_192 | undefined;
420
+ meanBy<T_187>(collection: lodash.List<T_187> | null | undefined, iteratee?: lodash.ValueIteratee<T_187> | undefined): number;
421
+ min<T_188>(collection: lodash.List<T_188> | null | undefined): T_188 | undefined;
422
+ minBy<T_189>(collection: lodash.List<T_189> | null | undefined, iteratee?: lodash.ValueIteratee<T_189> | undefined): T_189 | undefined;
430
423
  multiply(multiplier: number, multiplicand: number): number;
431
424
  round(n: number, precision?: number | undefined): number;
432
425
  subtract(minuend: number, subtrahend: number): number;
433
426
  sum(collection: lodash.List<any> | null | undefined): number;
434
- sumBy<T_193>(collection: lodash.List<T_193> | null | undefined, iteratee?: string | ((value: T_193) => number) | undefined): number;
427
+ sumBy<T_190>(collection: lodash.List<T_190> | null | undefined, iteratee?: string | ((value: T_190) => number) | undefined): number;
435
428
  clamp(number: number, lower: number, upper: number): number;
436
429
  clamp(number: number, upper: number): number;
437
430
  inRange(n: number, start: number, end?: number | undefined): boolean;
@@ -463,9 +456,9 @@ export declare const vendorMap: {
463
456
  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;
464
457
  assignWith<TObject_19>(object: TObject_19): TObject_19;
465
458
  assignWith<TResult_30>(object: any, ...otherArgs: any[]): TResult_30;
466
- at<T_194>(object: lodash.Dictionary<T_194> | lodash.NumericDictionary<T_194> | null | undefined, ...props: lodash.PropertyPath[]): T_194[];
467
- at<T_195 extends object>(object: T_195 | null | undefined, ...props: lodash.Many<keyof T_195>[]): T_195[keyof T_195][];
468
- create<T_196 extends object, U_3 extends object>(prototype: T_196, properties?: U_3 | undefined): T_196 & U_3;
459
+ at<T_191>(object: lodash.Dictionary<T_191> | lodash.NumericDictionary<T_191> | null | undefined, ...props: lodash.PropertyPath[]): T_191[];
460
+ at<T_192 extends object>(object: T_192 | null | undefined, ...props: lodash.Many<keyof T_192>[]): T_192[keyof T_192][];
461
+ create<T_193 extends object, U_3 extends object>(prototype: T_193, properties?: U_3 | undefined): T_193 & U_3;
469
462
  defaults<TObject_20, TSource_4>(object: TObject_20, source: TSource_4): NonNullable<TSource_4 & TObject_20>;
470
463
  defaults<TObject_21, TSource1_12, TSource2_12>(object: TObject_21, source1: TSource1_12, source2: TSource2_12): NonNullable<TSource2_12 & TSource1_12 & TObject_21>;
471
464
  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>;
@@ -473,9 +466,9 @@ export declare const vendorMap: {
473
466
  defaults<TObject_24>(object: TObject_24): NonNullable<TObject_24>;
474
467
  defaults(object: any, ...sources: any[]): any;
475
468
  defaultsDeep(object: any, ...sources: any[]): any;
476
- entries<T_197>(object?: lodash.Dictionary<T_197> | lodash.NumericDictionary<T_197> | undefined): [string, T_197][];
469
+ entries<T_194>(object?: lodash.Dictionary<T_194> | lodash.NumericDictionary<T_194> | undefined): [string, T_194][];
477
470
  entries(object?: object | undefined): [string, any][];
478
- entriesIn<T_198>(object?: lodash.Dictionary<T_198> | lodash.NumericDictionary<T_198> | undefined): [string, T_198][];
471
+ entriesIn<T_195>(object?: lodash.Dictionary<T_195> | lodash.NumericDictionary<T_195> | undefined): [string, T_195][];
479
472
  entriesIn(object?: object | undefined): [string, any][];
480
473
  extend<TObject_25, TSource_5>(object: TObject_25, source: TSource_5): TObject_25 & TSource_5;
481
474
  extend<TObject_26, TSource1_15, TSource2_15>(object: TObject_26, source1: TSource1_15, source2: TSource2_15): TObject_26 & TSource1_15 & TSource2_15;
@@ -489,18 +482,18 @@ export declare const vendorMap: {
489
482
  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;
490
483
  extendWith<TObject_34>(object: TObject_34): TObject_34;
491
484
  extendWith<TResult_32>(object: any, ...otherArgs: any[]): TResult_32;
492
- findKey<T_199>(object: T_199 | null | undefined, predicate?: lodash.ObjectIteratee<T_199> | undefined): string | undefined;
493
- findLastKey<T_200>(object: T_200 | null | undefined, predicate?: lodash.ObjectIteratee<T_200> | undefined): string | undefined;
494
- forIn<T_201>(object: T_201, iteratee?: lodash.ObjectIterator<T_201, any> | undefined): T_201;
495
- forIn<T_202>(object: T_202 | null | undefined, iteratee?: lodash.ObjectIterator<T_202, any> | undefined): T_202 | null | undefined;
496
- forInRight<T_203>(object: T_203, iteratee?: lodash.ObjectIterator<T_203, any> | undefined): T_203;
497
- forInRight<T_204>(object: T_204 | null | undefined, iteratee?: lodash.ObjectIterator<T_204, any> | undefined): T_204 | null | undefined;
498
- forOwn<T_205>(object: T_205, iteratee?: lodash.ObjectIterator<T_205, any> | undefined): T_205;
499
- forOwn<T_206>(object: T_206 | null | undefined, iteratee?: lodash.ObjectIterator<T_206, any> | undefined): T_206 | null | undefined;
500
- forOwnRight<T_207>(object: T_207, iteratee?: lodash.ObjectIterator<T_207, any> | undefined): T_207;
501
- forOwnRight<T_208>(object: T_208 | null | undefined, iteratee?: lodash.ObjectIterator<T_208, any> | undefined): T_208 | null | undefined;
485
+ findKey<T_196>(object: T_196 | null | undefined, predicate?: lodash.ObjectIteratee<T_196> | undefined): string | undefined;
486
+ findLastKey<T_197>(object: T_197 | null | undefined, predicate?: lodash.ObjectIteratee<T_197> | undefined): string | undefined;
487
+ forIn<T_198>(object: T_198, iteratee?: lodash.ObjectIterator<T_198, any> | undefined): T_198;
488
+ forIn<T_199>(object: T_199 | null | undefined, iteratee?: lodash.ObjectIterator<T_199, any> | undefined): T_199 | null | undefined;
489
+ forInRight<T_200>(object: T_200, iteratee?: lodash.ObjectIterator<T_200, any> | undefined): T_200;
490
+ forInRight<T_201>(object: T_201 | null | undefined, iteratee?: lodash.ObjectIterator<T_201, any> | undefined): T_201 | null | undefined;
491
+ forOwn<T_202>(object: T_202, iteratee?: lodash.ObjectIterator<T_202, any> | undefined): T_202;
492
+ forOwn<T_203>(object: T_203 | null | undefined, iteratee?: lodash.ObjectIterator<T_203, any> | undefined): T_203 | null | undefined;
493
+ forOwnRight<T_204>(object: T_204, iteratee?: lodash.ObjectIterator<T_204, any> | undefined): T_204;
494
+ forOwnRight<T_205>(object: T_205 | null | undefined, iteratee?: lodash.ObjectIterator<T_205, any> | undefined): T_205 | null | undefined;
502
495
  functions(object: any): string[];
503
- functionsIn<T_209 extends {}>(object: any): string[];
496
+ functionsIn<T_206 extends {}>(object: any): string[];
504
497
  get<TObject_35 extends object, TKey extends keyof TObject_35>(object: TObject_35, path: TKey | [TKey]): TObject_35[TKey];
505
498
  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;
506
499
  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>;
@@ -513,33 +506,33 @@ export declare const vendorMap: {
513
506
  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];
514
507
  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;
515
508
  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>;
516
- get<T_210>(object: lodash.NumericDictionary<T_210>, path: number): T_210;
517
- get<T_211>(object: lodash.NumericDictionary<T_211> | null | undefined, path: number): T_211 | undefined;
518
- get<T_212, TDefault_4>(object: lodash.NumericDictionary<T_212> | null | undefined, path: number, defaultValue: TDefault_4): T_212 | TDefault_4;
509
+ get<T_207>(object: lodash.NumericDictionary<T_207>, path: number): T_207;
510
+ get<T_208>(object: lodash.NumericDictionary<T_208> | null | undefined, path: number): T_208 | undefined;
511
+ get<T_209, TDefault_4>(object: lodash.NumericDictionary<T_209> | null | undefined, path: number, defaultValue: TDefault_4): T_209 | TDefault_4;
519
512
  get<TDefault_5>(object: null | undefined, path: lodash.PropertyPath, defaultValue: TDefault_5): TDefault_5;
520
513
  get(object: null | undefined, path: lodash.PropertyPath): undefined;
521
514
  get(object: any, path: lodash.PropertyPath, defaultValue?: any): any;
522
- has<T_213>(object: T_213, path: lodash.PropertyPath): boolean;
523
- hasIn<T_214>(object: T_214, path: lodash.PropertyPath): boolean;
515
+ has<T_210>(object: T_210, path: lodash.PropertyPath): boolean;
516
+ hasIn<T_211>(object: T_211, path: lodash.PropertyPath): boolean;
524
517
  invert(object: object): lodash.Dictionary<string>;
525
- invertBy<T_215>(object: lodash.Dictionary<T_215> | lodash.NumericDictionary<T_215> | null | undefined, interatee?: lodash.ValueIteratee<T_215> | undefined): lodash.Dictionary<string[]>;
526
- invertBy<T_216 extends object>(object: T_216 | null | undefined, interatee?: lodash.ValueIteratee<T_216[keyof T_216]> | undefined): lodash.Dictionary<string[]>;
518
+ invertBy<T_212>(object: lodash.Dictionary<T_212> | lodash.NumericDictionary<T_212> | null | undefined, interatee?: lodash.ValueIteratee<T_212> | undefined): lodash.Dictionary<string[]>;
519
+ invertBy<T_213 extends object>(object: T_213 | null | undefined, interatee?: lodash.ValueIteratee<T_213[keyof T_213]> | undefined): lodash.Dictionary<string[]>;
527
520
  invoke(object: any, path: lodash.PropertyPath, ...args: any[]): any;
528
521
  keys(object?: any): string[];
529
522
  keysIn(object?: any): string[];
530
- mapKeys<T_217>(object: lodash.List<T_217> | null | undefined, iteratee?: lodash.ListIteratee<T_217> | undefined): lodash.Dictionary<T_217>;
531
- mapKeys<T_218 extends object>(object: T_218 | null | undefined, iteratee?: lodash.ObjectIteratee<T_218> | undefined): lodash.Dictionary<T_218[keyof T_218]>;
523
+ mapKeys<T_214>(object: lodash.List<T_214> | null | undefined, iteratee?: lodash.ListIteratee<T_214> | undefined): lodash.Dictionary<T_214>;
524
+ mapKeys<T_215 extends object>(object: T_215 | null | undefined, iteratee?: lodash.ObjectIteratee<T_215> | undefined): lodash.Dictionary<T_215[keyof T_215]>;
532
525
  mapValues<TResult_33>(obj: string | null | undefined, callback: lodash.StringIterator<TResult_33>): lodash.NumericDictionary<TResult_33>;
533
- 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; };
534
- mapValues<T_220>(obj: lodash.Dictionary<T_220> | lodash.NumericDictionary<T_220> | null | undefined, iteratee: object): lodash.Dictionary<boolean>;
535
- mapValues<T_221 extends object>(obj: T_221 | null | undefined, iteratee: object): { [P_1 in keyof T_221]: boolean; };
536
- 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]>;
537
- mapValues<T_223>(obj: lodash.Dictionary<T_223> | lodash.NumericDictionary<T_223> | null | undefined, iteratee: string): lodash.Dictionary<any>;
538
- mapValues<T_224 extends object>(obj: T_224 | null | undefined, iteratee: string): { [P_2 in keyof T_224]: any; };
526
+ 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; };
527
+ mapValues<T_217>(obj: lodash.Dictionary<T_217> | lodash.NumericDictionary<T_217> | null | undefined, iteratee: object): lodash.Dictionary<boolean>;
528
+ mapValues<T_218 extends object>(obj: T_218 | null | undefined, iteratee: object): { [P_1 in keyof T_218]: boolean; };
529
+ 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]>;
530
+ mapValues<T_220>(obj: lodash.Dictionary<T_220> | lodash.NumericDictionary<T_220> | null | undefined, iteratee: string): lodash.Dictionary<any>;
531
+ mapValues<T_221 extends object>(obj: T_221 | null | undefined, iteratee: string): { [P_2 in keyof T_221]: any; };
539
532
  mapValues(obj: string | null | undefined): lodash.NumericDictionary<string>;
540
- mapValues<T_225>(obj: lodash.Dictionary<T_225> | lodash.NumericDictionary<T_225> | null | undefined): lodash.Dictionary<T_225>;
541
- mapValues<T_226 extends object>(obj: T_226): T_226;
542
- mapValues<T_227 extends object>(obj: T_227 | null | undefined): Partial<T_227>;
533
+ mapValues<T_222>(obj: lodash.Dictionary<T_222> | lodash.NumericDictionary<T_222> | null | undefined): lodash.Dictionary<T_222>;
534
+ mapValues<T_223 extends object>(obj: T_223): T_223;
535
+ mapValues<T_224 extends object>(obj: T_224 | null | undefined): Partial<T_224>;
543
536
  merge<TObject_47, TSource_7>(object: TObject_47, source: TSource_7): TObject_47 & TSource_7;
544
537
  merge<TObject_48, TSource1_21, TSource2_21>(object: TObject_48, source1: TSource1_21, source2: TSource2_21): TObject_48 & TSource1_21 & TSource2_21;
545
538
  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;
@@ -550,54 +543,54 @@ export declare const vendorMap: {
550
543
  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;
551
544
  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;
552
545
  mergeWith(object: any, ...otherArgs: any[]): any;
553
- 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]>>;
554
- 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>;
555
- omit<T_230 extends object>(object: T_230 | null | undefined, ...paths: lodash.Many<lodash.PropertyName>[]): Partial<T_230>;
556
- omitBy<T_231>(object: lodash.Dictionary<T_231> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_231> | undefined): lodash.Dictionary<T_231>;
557
- omitBy<T_232>(object: lodash.NumericDictionary<T_232> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_232> | undefined): lodash.NumericDictionary<T_232>;
558
- omitBy<T_233 extends object>(object: T_233 | null | undefined, predicate: lodash.ValueKeyIteratee<T_233[keyof T_233]>): Partial<T_233>;
559
- pick<T_234 extends object, U_4 extends keyof T_234>(object: T_234, ...props: lodash.Many<U_4>[]): Pick<T_234, U_4>;
560
- pick<T_235>(object: T_235 | null | undefined, ...props: lodash.PropertyPath[]): Partial<T_235>;
561
- 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>;
562
- 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>;
563
- pickBy<T_238>(object: lodash.Dictionary<T_238> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_238> | undefined): lodash.Dictionary<T_238>;
564
- pickBy<T_239>(object: lodash.NumericDictionary<T_239> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_239> | undefined): lodash.NumericDictionary<T_239>;
565
- pickBy<T_240 extends object>(object: T_240 | null | undefined, predicate?: lodash.ValueKeyIteratee<T_240[keyof T_240]> | undefined): Partial<T_240>;
546
+ 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]>>;
547
+ 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>;
548
+ omit<T_227 extends object>(object: T_227 | null | undefined, ...paths: lodash.Many<lodash.PropertyName>[]): Partial<T_227>;
549
+ omitBy<T_228>(object: lodash.Dictionary<T_228> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_228> | undefined): lodash.Dictionary<T_228>;
550
+ omitBy<T_229>(object: lodash.NumericDictionary<T_229> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_229> | undefined): lodash.NumericDictionary<T_229>;
551
+ omitBy<T_230 extends object>(object: T_230 | null | undefined, predicate: lodash.ValueKeyIteratee<T_230[keyof T_230]>): Partial<T_230>;
552
+ pick<T_231 extends object, U_4 extends keyof T_231>(object: T_231, ...props: lodash.Many<U_4>[]): Pick<T_231, U_4>;
553
+ pick<T_232>(object: T_232 | null | undefined, ...props: lodash.PropertyPath[]): Partial<T_232>;
554
+ 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>;
555
+ 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>;
556
+ pickBy<T_235>(object: lodash.Dictionary<T_235> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_235> | undefined): lodash.Dictionary<T_235>;
557
+ pickBy<T_236>(object: lodash.NumericDictionary<T_236> | null | undefined, predicate?: lodash.ValueKeyIteratee<T_236> | undefined): lodash.NumericDictionary<T_236>;
558
+ pickBy<T_237 extends object>(object: T_237 | null | undefined, predicate?: lodash.ValueKeyIteratee<T_237[keyof T_237]> | undefined): Partial<T_237>;
566
559
  result<TResult_35>(object: any, path: lodash.PropertyPath, defaultValue?: TResult_35 | ((...args: any[]) => TResult_35) | undefined): TResult_35;
567
- set<T_241 extends object>(object: T_241, path: lodash.PropertyPath, value: any): T_241;
560
+ set<T_238 extends object>(object: T_238, path: lodash.PropertyPath, value: any): T_238;
568
561
  set<TResult_36>(object: object, path: lodash.PropertyPath, value: any): TResult_36;
569
- setWith<T_242 extends object>(object: T_242, path: lodash.PropertyPath, value: any, customizer?: lodash.SetWithCustomizer<T_242> | undefined): T_242;
570
- setWith<T_243 extends object, TResult_37>(object: T_243, path: lodash.PropertyPath, value: any, customizer?: lodash.SetWithCustomizer<T_243> | undefined): TResult_37;
571
- toPairs<T_244>(object?: lodash.Dictionary<T_244> | lodash.NumericDictionary<T_244> | undefined): [string, T_244][];
562
+ setWith<T_239 extends object>(object: T_239, path: lodash.PropertyPath, value: any, customizer?: lodash.SetWithCustomizer<T_239> | undefined): T_239;
563
+ setWith<T_240 extends object, TResult_37>(object: T_240, path: lodash.PropertyPath, value: any, customizer?: lodash.SetWithCustomizer<T_240> | undefined): TResult_37;
564
+ toPairs<T_241>(object?: lodash.Dictionary<T_241> | lodash.NumericDictionary<T_241> | undefined): [string, T_241][];
572
565
  toPairs(object?: object | undefined): [string, any][];
573
- toPairsIn<T_245>(object?: lodash.Dictionary<T_245> | lodash.NumericDictionary<T_245> | undefined): [string, T_245][];
566
+ toPairsIn<T_242>(object?: lodash.Dictionary<T_242> | lodash.NumericDictionary<T_242> | undefined): [string, T_242][];
574
567
  toPairsIn(object?: object | undefined): [string, any][];
575
- transform<T_246, TResult_38>(object: readonly T_246[], iteratee: lodash.MemoVoidArrayIterator<T_246, TResult_38>, accumulator?: TResult_38 | undefined): TResult_38;
576
- transform<T_247, TResult_39>(object: lodash.Dictionary<T_247>, iteratee: lodash.MemoVoidDictionaryIterator<T_247, string, TResult_39>, accumulator?: TResult_39 | undefined): TResult_39;
577
- 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;
568
+ transform<T_243, TResult_38>(object: readonly T_243[], iteratee: lodash.MemoVoidArrayIterator<T_243, TResult_38>, accumulator?: TResult_38 | undefined): TResult_38;
569
+ transform<T_244, TResult_39>(object: lodash.Dictionary<T_244>, iteratee: lodash.MemoVoidDictionaryIterator<T_244, string, TResult_39>, accumulator?: TResult_39 | undefined): TResult_39;
570
+ 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;
578
571
  transform(object: any[]): any[];
579
572
  transform(object: object): lodash.Dictionary<any>;
580
573
  unset(object: any, path: lodash.PropertyPath): boolean;
581
574
  update(object: object, path: lodash.PropertyPath, updater: (value: any) => any): any;
582
- updateWith<T_249 extends object>(object: T_249, path: lodash.PropertyPath, updater: (oldValue: any) => any, customizer?: lodash.SetWithCustomizer<T_249> | undefined): T_249;
583
- 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;
584
- values<T_251>(object: lodash.Dictionary<T_251> | lodash.NumericDictionary<T_251> | lodash.List<T_251> | null | undefined): T_251[];
585
- values<T_252 extends object>(object: T_252 | null | undefined): T_252[keyof T_252][];
575
+ updateWith<T_246 extends object>(object: T_246, path: lodash.PropertyPath, updater: (oldValue: any) => any, customizer?: lodash.SetWithCustomizer<T_246> | undefined): T_246;
576
+ 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;
577
+ values<T_248>(object: lodash.Dictionary<T_248> | lodash.NumericDictionary<T_248> | lodash.List<T_248> | null | undefined): T_248[];
578
+ values<T_249 extends object>(object: T_249 | null | undefined): T_249[keyof T_249][];
586
579
  values(object: any): any[];
587
- valuesIn<T_253>(object: lodash.Dictionary<T_253> | lodash.NumericDictionary<T_253> | lodash.List<T_253> | null | undefined): T_253[];
588
- valuesIn<T_254 extends object>(object: T_254 | null | undefined): T_254[keyof T_254][];
580
+ valuesIn<T_250>(object: lodash.Dictionary<T_250> | lodash.NumericDictionary<T_250> | lodash.List<T_250> | null | undefined): T_250[];
581
+ valuesIn<T_251 extends object>(object: T_251 | null | undefined): T_251[keyof T_251][];
589
582
  chain<TrapAny extends {
590
583
  __lodashAnyHack: any;
591
584
  }>(value: TrapAny): lodash.CollectionChain<any> & lodash.FunctionChain<any> & lodash.ObjectChain<any> & lodash.PrimitiveChain<any> & lodash.StringChain;
592
- chain<T_255 extends null | undefined>(value: T_255): lodash.PrimitiveChain<T_255>;
585
+ chain<T_252 extends null | undefined>(value: T_252): lodash.PrimitiveChain<T_252>;
593
586
  chain(value: string): lodash.StringChain;
594
587
  chain(value: string | null | undefined): lodash.StringNullableChain;
595
- chain<T_256 extends (...args: any[]) => any>(value: T_256): lodash.FunctionChain<T_256>;
596
- chain<T_257 = any>(value: lodash.List<T_257> | null | undefined): lodash.CollectionChain<T_257>;
597
- chain<T_258 extends object>(value: T_258 | null | undefined): lodash.ObjectChain<T_258>;
598
- chain<T_259>(value: T_259): lodash.PrimitiveChain<T_259>;
599
- tap<T_260>(value: T_260, interceptor: (value: T_260) => void): T_260;
600
- thru<T_261, TResult_42>(value: T_261, interceptor: (value: T_261) => TResult_42): TResult_42;
588
+ chain<T_253 extends (...args: any[]) => any>(value: T_253): lodash.FunctionChain<T_253>;
589
+ chain<T_254 = any>(value: lodash.List<T_254> | null | undefined): lodash.CollectionChain<T_254>;
590
+ chain<T_255 extends object>(value: T_255 | null | undefined): lodash.ObjectChain<T_255>;
591
+ chain<T_256>(value: T_256): lodash.PrimitiveChain<T_256>;
592
+ tap<T_257>(value: T_257, interceptor: (value: T_257) => void): T_257;
593
+ thru<T_258, TResult_42>(value: T_258, interceptor: (value: T_258) => TResult_42): TResult_42;
601
594
  camelCase(string?: string | undefined): string;
602
595
  capitalize(string?: string | undefined): string;
603
596
  deburr(string?: string | undefined): string;
@@ -635,13 +628,12 @@ export declare const vendorMap: {
635
628
  words(string?: string | undefined, pattern?: string | RegExp | undefined): string[];
636
629
  words(string: string, index: string | number, guard: object): string[];
637
630
  attempt<TResult_43>(func: (...args: any[]) => TResult_43, ...args: any[]): Error | TResult_43;
638
- bindAll<T_262>(object: T_262, ...methodNames: lodash.Many<string>[]): T_262;
639
- cond<R>(pairs: lodash.CondPairNullary<R>[]): () => R;
640
- cond<T_263, R_1>(pairs: lodash.CondPairUnary<T_263, R_1>[]): (Target: T_263) => R_1;
641
- conforms<T_264>(source: lodash.ConformsPredicateObject<T_264>): (value: T_264) => boolean;
642
- constant<T_265>(value: T_265): () => T_265;
643
- defaultTo<T_266>(value: T_266 | null | undefined, defaultValue: T_266): T_266;
644
- defaultTo<T_267, TDefault_6>(value: T_267 | null | undefined, defaultValue: TDefault_6): T_267 | TDefault_6;
631
+ bindAll<T_259>(object: T_259, ...methodNames: lodash.Many<string>[]): T_259;
632
+ cond<T_260, R>(pairs: lodash.CondPair<T_260, R>[]): (Target: T_260) => R;
633
+ conforms<T_261>(source: lodash.ConformsPredicateObject<T_261>): (value: T_261) => boolean;
634
+ constant<T_262>(value: T_262): () => T_262;
635
+ defaultTo<T_263>(value: T_263 | null | undefined, defaultValue: T_263): T_263;
636
+ defaultTo<T_264, TDefault_6>(value: T_264 | null | undefined, defaultValue: TDefault_6): T_264 | TDefault_6;
645
637
  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;
646
638
  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;
647
639
  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;
@@ -657,14 +649,14 @@ export declare const vendorMap: {
657
649
  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;
658
650
  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;
659
651
  flowRight(...func: lodash.Many<(...args: any[]) => any>[]): (...args: any[]) => any;
660
- identity<T_268>(value: T_268): T_268;
652
+ identity<T_265>(value: T_265): T_265;
661
653
  identity(): undefined;
662
654
  iteratee<TFunction extends (...args: any[]) => any>(func: TFunction): TFunction;
663
655
  iteratee(func: string | number | symbol | object): (...args: any[]) => any;
664
- matches<T_269>(source: T_269): (value: any) => boolean;
665
- matches<T_270, V>(source: T_270): (value: V) => boolean;
666
- matchesProperty<T_271>(path: lodash.PropertyPath, srcValue: T_271): (value: any) => boolean;
667
- matchesProperty<T_272, V_1>(path: lodash.PropertyPath, srcValue: T_272): (value: V_1) => boolean;
656
+ matches<T_266>(source: T_266): (value: any) => boolean;
657
+ matches<T_267, V>(source: T_267): (value: V) => boolean;
658
+ matchesProperty<T_268>(path: lodash.PropertyPath, srcValue: T_268): (value: any) => boolean;
659
+ matchesProperty<T_269, V_1>(path: lodash.PropertyPath, srcValue: T_269): (value: V_1) => boolean;
668
660
  method(path: lodash.PropertyPath, ...args: any[]): (object: any) => any;
669
661
  methodOf(object: object, ...args: any[]): (path: lodash.PropertyPath) => any;
670
662
  mixin<TObject_55>(object: TObject_55, source: lodash.Dictionary<(...args: any[]) => any>, options?: lodash.MixinOptions | undefined): TObject_55;
@@ -673,12 +665,12 @@ export declare const vendorMap: {
673
665
  noop(...args: any[]): void;
674
666
  nthArg(n?: number | undefined): (...args: any[]) => any;
675
667
  over<TResult_45>(...iteratees: lodash.Many<(...args: any[]) => TResult_45>[]): (...args: any[]) => TResult_45[];
676
- 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;
677
- overEvery<T_274>(...predicates: lodash.Many<(...args: T_274[]) => boolean>[]): (...args: T_274[]) => boolean;
678
- 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;
679
- overSome<T_276>(...predicates: lodash.Many<(...args: T_276[]) => boolean>[]): (...args: T_276[]) => boolean;
668
+ 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;
669
+ overEvery<T_271>(...predicates: lodash.Many<(...args: T_271[]) => boolean>[]): (...args: T_271[]) => boolean;
670
+ 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;
671
+ overSome<T_273>(...predicates: lodash.Many<(...args: T_273[]) => boolean>[]): (...args: T_273[]) => boolean;
680
672
  property<TObj, TResult_46>(path: lodash.PropertyPath): (obj: TObj) => TResult_46;
681
- propertyOf<T_277 extends {}>(object: T_277): (path: lodash.PropertyPath) => any;
673
+ propertyOf<T_274 extends {}>(object: T_274): (path: lodash.PropertyPath) => any;
682
674
  range(start: number, end?: number | undefined, step?: number | undefined): number[];
683
675
  range(end: number, index: string | number, guard: object): number[];
684
676
  rangeRight(start: number, end?: number | undefined, step?: number | undefined): number[];
@@ -24,6 +24,7 @@ export declare class QuoteDraftService {
24
24
  updateByPriceSummary(priceSummary: PriceSummary): void;
25
25
  get quoteDraft$(): Observable<QuoteDraft>;
26
26
  get quoteDraft(): QuoteDraft | null;
27
+ get quoteDraftForActivePriceList(): QuoteDraft | null;
27
28
  get currentState$(): Observable<LineItem[]>;
28
29
  get currentState(): LineItem[];
29
30
  /**
@@ -71,6 +71,13 @@ export class QuoteDraftService {
71
71
  }
72
72
  return Object.assign(Object.assign({}, quote), { context: this.context.resolve() });
73
73
  }
74
+ get quoteDraftForActivePriceList() {
75
+ const quoteDraft = this.quoteDraft;
76
+ if (!quoteDraft) {
77
+ return null;
78
+ }
79
+ return Object.assign(Object.assign({}, quoteDraft), { initialState: this.filterByActivePriceList(quoteDraft.initialState), currentState: this.filterByActivePriceList(quoteDraft.currentState) });
80
+ }
74
81
  get currentState$() {
75
82
  return this.quoteDraft$.pipe(map(quote => quote.currentState));
76
83
  }
@@ -161,7 +168,7 @@ export class QuoteDraftService {
161
168
  this.updateActivePriceList(activePriceList === null || activePriceList === void 0 ? void 0 : activePriceList.id);
162
169
  // Update PriceListId in context properties
163
170
  // TODO: remove it when backend will have such logic
164
- this.context.update({ properties: { PriceListId: activePriceList.id } });
171
+ this.context.update({ properties: { PriceListId: activePriceList === null || activePriceList === void 0 ? void 0 : activePriceList.id } });
165
172
  }
166
173
  }
167
174
  filterByActivePriceList(lineItems) {
@@ -180,4 +187,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImpo
180
187
  type: Injectable,
181
188
  args: [{ providedIn: 'root' }]
182
189
  }], ctorParameters: function () { return [{ type: i1.ContextService }, { type: i2.QuoteApiService }, { type: i2.PriceApiService }]; } });
183
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVvdGUtZHJhZnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2NvcmUvc2VydmljZXMvcXVvdGUtZHJhZnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSx3QkFBd0IsRUFBaUQsTUFBTSxjQUFjLENBQUM7QUFFdkcsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFjLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3RSxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBSXJFLE1BQU0sT0FBTyxpQkFBaUI7SUFXNUIsWUFDVSxPQUF1QixFQUN2QixlQUFnQyxFQUNoQyxlQUFnQztRQUZoQyxZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUN2QixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBYmxDLGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBb0IsSUFBSSxDQUFDLENBQUM7UUFDMUQsZUFBVSxHQUFHLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXhDLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLGtCQUFhLEdBQWdCLEVBQUUsQ0FBQztRQUNoQyxvQkFBZSxHQUFnQixFQUFFLENBQUM7UUFDbEMsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQzFCLFdBQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBUTdDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksQ0FDbEQsR0FBRyxDQUFDLEdBQUcsQ0FBQyxF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T0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBRW5DLE9BQU8sU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLFdBQVcsSUFBSSxFQUFFLENBQUMsV0FBVyxLQUFLLEdBQUcsQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEcsQ0FBQztJQUVPLGFBQWE7UUFDbkIsSUFBSSxJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQ2pELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7U0FDL0I7SUFDSCxDQUFDOzsrR0E1UFUsaUJBQWlCO21IQUFqQixpQkFBaUIsY0FESixNQUFNOzRGQUNuQixpQkFBaUI7a0JBRDdCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHJpY2VBcGlTZXJ2aWNlLCBRdW90ZUFwaVNlcnZpY2UgfSBmcm9tICdAdmVsb2NlL2FwaSc7XG5pbXBvcnQgeyBDb25maWd1cmF0aW9uQ29udGV4dE1vZGUsIExpbmVJdGVtLCBQcmljZUxpc3QsIFByaWNlU3VtbWFyeSwgUXVvdGVEcmFmdCB9IGZyb20gJ0B2ZWxvY2UvY29yZSc7XG5pbXBvcnQgeyBEaWN0aW9uYXJ5IH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgbm9vcCwgT2JzZXJ2YWJsZSwgemlwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgc2hhcmVSZXBsYXksIHRha2UsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IENvbnRleHRTZXJ2aWNlIH0gZnJvbSAnLi9jb250ZXh0LnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFF1b3RlRHJhZnRTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBxdW90ZVN1YmokID0gbmV3IEJlaGF2aW9yU3ViamVjdDxRdW90ZURyYWZ0IHwgbnVsbD4obnVsbCk7XG4gIHByaXZhdGUgcmVzZXRTdWJqJCA9IG5ldyBCZWhhdmlvclN1YmplY3QodHJ1ZSk7XG5cbiAgcHVibGljIGlzSW5pdGlhbGl6ZWQgPSBmYWxzZTtcbiAgcHVibGljIGFsbFByaWNlTGlzdHM6IFByaWNlTGlzdFtdID0gW107XG4gIHB1YmxpYyBhc3NldFByaWNlTGlzdHM6IFByaWNlTGlzdFtdID0gW107XG4gIHB1YmxpYyBoYXNVbnNhdmVkQ2hhbmdlcyA9IGZhbHNlO1xuICBwdWJsaWMgcmVzZXQkID0gdGhpcy5yZXNldFN1YmokLmFzT2JzZXJ2YWJsZSgpO1xuICBwdWJsaWMgYWN0aXZlUHJpY2VMaXN0JDogT2JzZXJ2YWJsZTxQcmljZUxpc3QgfCBudWxsPjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNvbnRleHQ6IENvbnRleHRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcXVvdGVBcGlTZXJ2aWNlOiBRdW90ZUFwaVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwcmljZUFwaVNlcnZpY2U6IFByaWNlQXBpU2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy5hY3RpdmVQcmljZUxpc3QkID0gdGhpcy5jb250ZXh0LnJlc29sdmUkKCkucGlwZShcbiAgICAgIG1hcChjdHggPT4gdGhpcy5hbGxQcmljZUxpc3RzLmZpbmQocHJpY2VMaXN0ID0+IHByaWNlTGlzdC5pZCA9PT0gY3R4LnByb3BlcnRpZXMuUHJpY2VMaXN0SWQpKSxcbiAgICAgIG1hcChwcmljZUxpc3QgPT4gcHJpY2VMaXN0ID8/IG51bGwpLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgcmVzZXQoKSB7XG4gICAgdGhpcy5yZXNldFN1YmokLm5leHQodHJ1ZSk7XG4gICAgdGhpcy5xdW90ZVN1YmokLm5leHQobnVsbCk7XG4gIH1cblxuICBwdWJsaWMgaW5pdChxdW90ZUlkOiBzdHJpbmcsIHBhcmFtczogRGljdGlvbmFyeTxzdHJpbmc+KTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgcmV0dXJuIHppcChcbiAgICAgIHRoaXMuY29udGV4dC5yZXNvbHZlJCgpLFxuICAgICAgdGhpcy5xdW90ZUFwaVNlcnZpY2UuZ2V0UXVvdGVEcmFmdChxdW90ZUlkLCBwYXJhbXMpLFxuICAgICAgdGhpcy5wcmljZUFwaVNlcnZpY2UuZ2V0UHJpY2VMaXN0cygpLFxuICAgICkucGlwZShcbiAgICAgIHRhcCgoW2NvbnRleHQsIHF1b3RlLCBhbGxQcmljZUxpc3RzXSkgPT4ge1xuICAgICAgICB0aGlzLmFsbFByaWNlTGlzdHMgPSBhbGxQcmljZUxpc3RzO1xuICAgICAgICB0aGlzLnF1b3RlU3ViaiQubmV4dChxdW90ZSk7XG5cbiAgICAgICAgdGhpcy5jb250ZXh0LnVwZGF0ZSh7XG4gICAgICAgICAgLi4uY29udGV4dCxcbiAgICAgICAgICAuLi5xdW90ZS5jb250ZXh0LFxuICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgIC4uLmNvbnRleHQucHJvcGVydGllcyxcbiAgICAgICAgICAgIC4uLnF1b3RlLmNvbnRleHQucHJvcGVydGllcyxcbiAgICAgICAgICB9LFxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnBvcHVsYXRlQWN0aXZlUHJpY2VMaXN0cyQoKTtcbiAgICAgIH0pLFxuICAgICAgbWFwKCgpID0+IG5vb3AoKSksXG4gICAgICB0YWtlKDEpLFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgc2V0Q3VycmVudExpbmVJdGVtU3RhdGUobGluZUl0ZW1zOiBMaW5lSXRlbVtdKTogdm9pZCB7XG4gICAgY29uc3QgcXVvdGVEcmFmdCA9IHRoaXMucXVvdGVTdWJqJC52YWx1ZTtcblxuICAgIGlmICghcXVvdGVEcmFmdCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMucXVvdGVTdWJqJC5uZXh0KHtcbiAgICAgIC4uLnF1b3RlRHJhZnQsXG4gICAgICBjdXJyZW50U3RhdGU6IGxpbmVJdGVtcyxcbiAgICB9KTtcblxuICAgIHRoaXMubWFya0FzVXBkYXRlZCgpO1xuICB9XG5cbiAgcHVibGljIHVwZGF0ZVF1b3RlRHJhZnQodXBkYXRlOiBQYXJ0aWFsPFF1b3RlRHJhZnQ+KTogdm9pZCB7XG4gICAgY29uc3QgcXVvdGVEcmFmdCA9IHRoaXMucXVvdGVTdWJqJC52YWx1ZTtcblxuICAgIGlmICghcXVvdGVEcmFmdCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh1cGRhdGUuY29udGV4dCkge1xuICAgICAgdGhpcy5jb250ZXh0LnVwZGF0ZSh1cGRhdGUuY29udGV4dCk7XG4gICAgfVxuXG4gICAgdGhpcy5xdW90ZVN1YmokLm5leHQoe1xuICAgICAgLi4ucXVvdGVEcmFmdCxcbiAgICAgIC4uLnVwZGF0ZSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVCeVByaWNlU3VtbWFyeShwcmljZVN1bW1hcnk6IFByaWNlU3VtbWFyeSk6IHZvaWQge1xuICAgIGNvbnN0IHF1b3RlRHJhZnQgPSB0aGlzLnF1b3RlU3ViaiQudmFsdWU7XG5cbiAgICBpZiAoIXF1b3RlRHJhZnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCB1cGRhdGVkQ3VycmVudFN0YXRlID0gdGhpcy5jdXJyZW50U3RhdGUubWFwKGxpbmVJdGVtID0+IHtcbiAgICAgIGNvbnN0IHVwZGF0ZWQgPSBwcmljZVN1bW1hcnkubGluZUl0ZW1zLmZpbmQobGkgPT4gbGkuaWQgPT09IGxpbmVJdGVtLmlkKTtcbiAgICAgIHJldHVybiB1cGRhdGVkID8/IGxpbmVJdGVtO1xuICAgIH0pO1xuXG4gICAgdGhpcy5xdW90ZVN1YmokLm5leHQoe1xuICAgICAgLi4ucXVvdGVEcmFmdCxcbiAgICAgIGN1cnJlbnRTdGF0ZTogdXBkYXRlZEN1cnJlbnRTdGF0ZSxcbiAgICAgIHRvdGFsUHJpY2VzOiBwcmljZVN1bW1hcnkudG90YWxQcmljZXMsXG4gICAgICBhcHByb3ZhbEl0ZW1zOiBwcmljZVN1bW1hcnkuYXBwcm92YWxJdGVtcyxcbiAgICB9KTtcblxuICAgIHRoaXMubWFya0FzVXBkYXRlZCgpO1xuICB9XG5cbiAgZ2V0IHF1b3RlRHJhZnQkKCk6IE9ic2VydmFibGU8UXVvdGVEcmFmdD4ge1xuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFt0aGlzLnF1b3RlU3ViaiQsIHRoaXMuY29udGV4dC5yZXNvbHZlJCgpXSkucGlwZShcbiAgICAgIG1hcCgoKSA9PiB0aGlzLnF1b3RlRHJhZnQpLFxuICAgICAgZmlsdGVyKChxdW90ZSk6IHF1b3RlIGlzIFF1b3RlRHJhZnQgPT4gQm9vbGVhbihxdW90ZSkpLFxuICAgICAgc2hhcmVSZXBsYXkoKSxcbiAgICApO1xuICB9XG5cbiAgZ2V0IHF1b3RlRHJhZnQoKTogUXVvdGVEcmFmdCB8IG51bGwge1xuICAgIGNvbnN0IHF1b3RlID0gdGhpcy5xdW90ZVN1YmokLnZhbHVlO1xuXG4gICAgaWYgKCFxdW90ZSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLnF1b3RlLFxuICAgICAgY29udGV4dDogdGhpcy5jb250ZXh0LnJlc29sdmUoKSxcbiAgICB9O1xuICB9XG5cbiAgZ2V0IGN1cnJlbnRTdGF0ZSQoKTogT2JzZXJ2YWJsZTxMaW5lSXRlbVtdPiB7XG4gICAgcmV0dXJuIHRoaXMucXVvdGVEcmFmdCQucGlwZShtYXAocXVvdGUgPT4gcXVvdGUuY3VycmVudFN0YXRlKSk7XG4gIH1cblxuICBnZXQgY3VycmVudFN0YXRlKCk6IExpbmVJdGVtW10ge1xuICAgIHJldHVybiB0aGlzLnF1b3RlRHJhZnQ/LmN1cnJlbnRTdGF0ZSA/PyBbXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdHJlYW0gb2YgYWN0aXZlQ3VycmVudFN0YXRlXG4gICAqL1xuICBnZXQgYWN0aXZlQ3VycmVudFN0YXRlJCgpOiBPYnNlcnZhYmxlPExpbmVJdGVtW10+IHtcbiAgICByZXR1cm4gdGhpcy5xdW90ZURyYWZ0JC5waXBlKG1hcCgoKSA9PiB0aGlzLmFjdGl2ZUN1cnJlbnRTdGF0ZSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIGFjdGl2ZUN1cnJlbnRTdGF0ZSBpcyBjdXJyZW50U3RhdGUgcGFzc2VkIHRocm91Z2ggYWRkaXRpb25hbCBmaWx0ZXJzXG4gICAqL1xuICBnZXQgYWN0aXZlQ3VycmVudFN0YXRlKCk6IExpbmVJdGVtW10ge1xuICAgIGNvbnN0IGN0eCA9IHRoaXMuY29udGV4dC5yZXNvbHZlKCk7XG4gICAgbGV0IGN1cnJlbnRTdGF0ZSA9IHRoaXMucXVvdGVEcmFmdD8uY3VycmVudFN0YXRlID8/IFtdO1xuXG4gICAgaWYgKGN0eC5tb2RlID09PSBDb25maWd1cmF0aW9uQ29udGV4dE1vZGUuQUNDT1VOVCkge1xuICAgICAgY3VycmVudFN0YXRlID0gdGhpcy5maWx0ZXJCeUFjdGl2ZVByaWNlTGlzdChjdXJyZW50U3RhdGUpO1xuICAgIH1cblxuICAgIHJldHVybiBjdXJyZW50U3RhdGU7XG4gIH1cblxuICAvKipcbiAgICogU3RyZWFtIG9mIGFjdGl2ZUluaXRpYWxTdGF0ZVxuICAgKi9cbiAgZ2V0IGFjdGl2ZUluaXRpYWxTdGF0ZSQoKTogT2JzZXJ2YWJsZTxMaW5lSXRlbVtdPiB7XG4gICAgcmV0dXJuIHRoaXMucXVvdGVEcmFmdCQucGlwZShtYXAoKCkgPT4gdGhpcy5hY3RpdmVJbml0aWFsU3RhdGUpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBhY3RpdmVJbml0aWFsU3RhdGUgaXMgaW5pdGlhbFN0YXRlIHBhc3NlZCB0aHJvdWdoIGFkZGl0aW9uYWwgZmlsdGVyc1xuICAgKi9cbiAgZ2V0IGFjdGl2ZUluaXRpYWxTdGF0ZSgpOiBMaW5lSXRlbVtdIHtcbiAgICBjb25zdCBjdHggPSB0aGlzLmNvbnRleHQucmVzb2x2ZSgpO1xuICAgIGxldCBpbml0aWFsU3RhdGUgPSB0aGlzLnF1b3RlRHJhZnQ/LmluaXRpYWxTdGF0ZSA/PyBbXTtcblxuICAgIGlmIChjdHgubW9kZSA9PT0gQ29uZmlndXJhdGlvbkNvbnRleHRNb2RlLkFDQ09VTlQpIHtcbiAgICAgIGluaXRpYWxTdGF0ZSA9IHRoaXMuZmlsdGVyQnlBY3RpdmVQcmljZUxpc3QoaW5pdGlhbFN0YXRlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gaW5pdGlhbFN0YXRlO1xuICB9XG5cbiAgZ2V0IGlzU3RhbmRhbG9uZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0LnJlc29sdmUoKS5wcm9wZXJ0aWVzLnN0YW5kYWxvbmUgPT09ICd0cnVlJztcbiAgfVxuXG4gIGdldCBpc1N0YW5kYWxvbmUkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmNvbnRleHQucmVzb2x2ZSQoKS5waXBlKG1hcCgoKSA9PiB0aGlzLmlzU3RhbmRhbG9uZSkpO1xuICB9XG5cbiAgcHVibGljIGlzRWRpdE1vZGUkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmNvbnRleHQucmVzb2x2ZSQoKS5waXBlKG1hcCgoKSA9PiB0aGlzLmlzRWRpdE1vZGUoKSkpO1xuICB9XG5cbiAgcHVibGljIGlzRWRpdE1vZGUoKTogYm9vbGVhbiB7XG4gICAgY29uc3QgY29udGV4dCA9IHRoaXMuY29udGV4dC5yZXNvbHZlKCk7XG5cbiAgICBpZiAoY29udGV4dC5tb2RlID09PSBDb25maWd1cmF0aW9uQ29udGV4dE1vZGUuQUNDT1VOVCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgaWYgKGNvbnRleHQubW9kZSA9PT0gQ29uZmlndXJhdGlvbkNvbnRleHRNb2RlLlFVT1RFKSB7XG4gICAgICByZXR1cm4gY29udGV4dC5wcm9wZXJ0aWVzLlN0YXR1cyA9PT0gJ0RyYWZ0JztcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlQWN0aXZlUHJpY2VMaXN0KHByaWNlTGlzdElkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmNvbnRleHQudXBkYXRlKHsgcHJvcGVydGllczogeyBQcmljZUxpc3RJZDogcHJpY2VMaXN0SWQgfSB9KTtcbiAgfVxuXG4gIHByaXZhdGUgcG9wdWxhdGVBY3RpdmVQcmljZUxpc3RzJCgpOiB2b2lkIHtcbiAgICBjb25zdCBjdHggPSB0aGlzLmNvbnRleHQucmVzb2x2ZSgpO1xuICAgIGNvbnN0IHF1b3RlRHJhZnQgPSB0aGlzLnF1b3RlRHJhZnQ7XG5cbiAgICBpZiAoIXF1b3RlRHJhZnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBJbiBBQ0NPVU5UIG1vZGUgcG9wdWxhdGUgcHJpY2UgbGlzdHMgZnJvbSByZWxhdGVkIGFzc2V0c1xuICAgIGlmIChjdHgubW9kZSA9PT0gQ29uZmlndXJhdGlvbkNvbnRleHRNb2RlLkFDQ09VTlQpIHtcbiAgICAgIC8vIFBvcHVsYXRlIGxpc3Qgb2YgcHJpY2UgbGlzdHNcbiAgICAgIHRoaXMuYXNzZXRQcmljZUxpc3RzID0gcXVvdGVEcmFmdC5jdXJyZW50U3RhdGVcbiAgICAgICAgLm1hcCgoeyBwcmljZUxpc3RJZCB9KSA9PiBwcmljZUxpc3RJZClcbiAgICAgICAgLnJlZHVjZTxQcmljZUxpc3RbXT4oKHRydW5rLCBwcmljZUxpc3RJZCkgPT4ge1xuICAgICAgICAgIGlmICghcHJpY2VMaXN0SWQgfHwgdHJ1bmsuc29tZShpdGVtID0+IGl0ZW0uaWQgPT09IHByaWNlTGlzdElkKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRydW5rO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAuLi50cnVuayxcbiAgICAgICAgICAgIHsgaWQ6IHByaWNlTGlzdElkLCBuYW1lOiB0aGlzLmFsbFByaWNlTGlzdHMuZmluZChpdGVtID0+IGl0ZW0uaWQgPT09IHByaWNlTGlzdElkKT8ubmFtZSA/PyAnJyB9LFxuICAgICAgICAgIF07XG4gICAgICAgIH0sIFtdKTtcblxuICAgICAgY29uc3QgYWN0aXZlUHJpY2VMaXN0ID0gdGhpcy5hc3NldFByaWNlTGlzdHNbMF07XG5cbiAgICAgIHRoaXMudXBkYXRlQWN0aXZlUHJpY2VMaXN0KGFjdGl2ZVByaWNlTGlzdD8uaWQpO1xuXG4gICAgICAvLyBVcGRhdGUgUHJpY2VMaXN0SWQgaW4gY29udGV4dCBwcm9wZXJ0aWVzXG4gICAgICAvLyBUT0RPOiByZW1vdmUgaXQgd2hlbiBiYWNrZW5kIHdpbGwgaGF2ZSBzdWNoIGxvZ2ljXG4gICAgICB0aGlzLmNvbnRleHQudXBkYXRlKHsgcHJvcGVydGllczogeyBQcmljZUxpc3RJZDogYWN0aXZlUHJpY2VMaXN0LmlkIH0gfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBmaWx0ZXJCeUFjdGl2ZVByaWNlTGlzdChsaW5lSXRlbXM6IExpbmVJdGVtW10pOiBMaW5lSXRlbVtdIHtcbiAgICBjb25zdCBjdHggPSB0aGlzLmNvbnRleHQucmVzb2x2ZSgpO1xuXG4gICAgcmV0dXJuIGxpbmVJdGVtcy5maWx0ZXIobGkgPT4gIWxpLnByaWNlTGlzdElkIHx8IGxpLnByaWNlTGlzdElkID09PSBjdHgucHJvcGVydGllcy5QcmljZUxpc3RJZCk7XG4gIH1cblxuICBwcml2YXRlIG1hcmtBc1VwZGF0ZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNJbml0aWFsaXplZCAmJiAhdGhpcy5oYXNVbnNhdmVkQ2hhbmdlcykge1xuICAgICAgdGhpcy5oYXNVbnNhdmVkQ2hhbmdlcyA9IHRydWU7XG4gICAgfVxuICB9XG59XG4iXX0=
190
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVvdGUtZHJhZnQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc2RrL2NvcmUvc2VydmljZXMvcXVvdGUtZHJhZnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSx3QkFBd0IsRUFBaUQsTUFBTSxjQUFjLENBQUM7QUFFdkcsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFjLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUM3RSxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBSXJFLE1BQU0sT0FBTyxpQkFBaUI7SUFXNUIsWUFDVSxPQUF1QixFQUN2QixlQUFnQyxFQUNoQyxlQUFnQztRQUZoQyxZQUFPLEdBQVAsT0FBTyxDQUFnQjtRQUN2QixvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBYmxDLGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBb0IsSUFBSSxDQUFDLENBQUM7UUFDMUQsZUFBVSxHQUFHLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXhDLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLGtCQUFhLEdBQWdCLEVBQUUsQ0FBQztRQUNoQyxvQkFBZSxHQUFnQixFQUFFLENBQUM7UUFDbEMsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQzFCLFdBQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBUTdDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksQ0FDbEQsR0FBRyxDQUFDLEdBQUcsQ0FBQyxF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LHFCQUFxQixDQUFDLGVBQWUsYUFBZixlQUFlLHVCQUFmLGVBQWUsQ0FBRSxFQUFFLENBQUMsQ0FBQztZQUVoRCwyQ0FBMkM7WUFDM0Msb0RBQW9EO1lBQ3BELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsVUFBVSxFQUFFLEVBQUUsV0FBVyxFQUFFLGVBQWUsYUFBZixlQUFlLHVCQUFmLGVBQWUsQ0FBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDM0U7SUFDSCxDQUFDO0lBRU8sdUJBQXVCLENBQUMsU0FBcUI7UUFDbkQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUVuQyxPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLFdBQVcsS0FBSyxHQUFHLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2xHLENBQUM7SUFFTyxhQUFhO1FBQ25CLElBQUksSUFBSSxDQUFDLGFBQWEsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUNqRCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1NBQy9CO0lBQ0gsQ0FBQzs7K0dBMVFVLGlCQUFpQjttSEFBakIsaUJBQWlCLGNBREosTUFBTTs0RkFDbkIsaUJBQWlCO2tCQUQ3QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFByaWNlQXBpU2VydmljZSwgUXVvdGVBcGlTZXJ2aWNlIH0gZnJvbSAnQHZlbG9jZS9hcGknO1xuaW1wb3J0IHsgQ29uZmlndXJhdGlvbkNvbnRleHRNb2RlLCBMaW5lSXRlbSwgUHJpY2VMaXN0LCBQcmljZVN1bW1hcnksIFF1b3RlRHJhZnQgfSBmcm9tICdAdmVsb2NlL2NvcmUnO1xuaW1wb3J0IHsgRGljdGlvbmFyeSB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG5vb3AsIE9ic2VydmFibGUsIHppcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIHNoYXJlUmVwbGF5LCB0YWtlLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDb250ZXh0U2VydmljZSB9IGZyb20gJy4vY29udGV4dC5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBRdW90ZURyYWZ0U2VydmljZSB7XG4gIHByaXZhdGUgcXVvdGVTdWJqJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UXVvdGVEcmFmdCB8IG51bGw+KG51bGwpO1xuICBwcml2YXRlIHJlc2V0U3ViaiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHRydWUpO1xuXG4gIHB1YmxpYyBpc0luaXRpYWxpemVkID0gZmFsc2U7XG4gIHB1YmxpYyBhbGxQcmljZUxpc3RzOiBQcmljZUxpc3RbXSA9IFtdO1xuICBwdWJsaWMgYXNzZXRQcmljZUxpc3RzOiBQcmljZUxpc3RbXSA9IFtdO1xuICBwdWJsaWMgaGFzVW5zYXZlZENoYW5nZXMgPSBmYWxzZTtcbiAgcHVibGljIHJlc2V0JCA9IHRoaXMucmVzZXRTdWJqJC5hc09ic2VydmFibGUoKTtcbiAgcHVibGljIGFjdGl2ZVByaWNlTGlzdCQ6IE9ic2VydmFibGU8UHJpY2VMaXN0IHwgbnVsbD47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjb250ZXh0OiBDb250ZXh0U2VydmljZSxcbiAgICBwcml2YXRlIHF1b3RlQXBpU2VydmljZTogUXVvdGVBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgcHJpY2VBcGlTZXJ2aWNlOiBQcmljZUFwaVNlcnZpY2UsXG4gICkge1xuICAgIHRoaXMuYWN0aXZlUHJpY2VMaXN0JCA9IHRoaXMuY29udGV4dC5yZXNvbHZlJCgpLnBpcGUoXG4gICAgICBtYXAoY3R4ID0+IHRoaXMuYWxsUHJpY2VMaXN0cy5maW5kKHByaWNlTGlzdCA9PiBwcmljZUxpc3QuaWQgPT09IGN0eC5wcm9wZXJ0aWVzLlByaWNlTGlzdElkKSksXG4gICAgICBtYXAocHJpY2VMaXN0ID0+IHByaWNlTGlzdCA/PyBudWxsKSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHJlc2V0KCkge1xuICAgIHRoaXMucmVzZXRTdWJqJC5uZXh0KHRydWUpO1xuICAgIHRoaXMucXVvdGVTdWJqJC5uZXh0KG51bGwpO1xuICB9XG5cbiAgcHVibGljIGluaXQocXVvdGVJZDogc3RyaW5nLCBwYXJhbXM6IERpY3Rpb25hcnk8c3RyaW5nPik6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIHJldHVybiB6aXAoXG4gICAgICB0aGlzLmNvbnRleHQucmVzb2x2ZSQoKSxcbiAgICAgIHRoaXMucXVvdGVBcGlTZXJ2aWNlLmdldFF1b3RlRHJhZnQocXVvdGVJZCwgcGFyYW1zKSxcbiAgICAgIHRoaXMucHJpY2VBcGlTZXJ2aWNlLmdldFByaWNlTGlzdHMoKSxcbiAgICApLnBpcGUoXG4gICAgICB0YXAoKFtjb250ZXh0LCBxdW90ZSwgYWxsUHJpY2VMaXN0c10pID0+IHtcbiAgICAgICAgdGhpcy5hbGxQcmljZUxpc3RzID0gYWxsUHJpY2VMaXN0cztcbiAgICAgICAgdGhpcy5xdW90ZVN1YmokLm5leHQocXVvdGUpO1xuXG4gICAgICAgIHRoaXMuY29udGV4dC51cGRhdGUoe1xuICAgICAgICAgIC4uLmNvbnRleHQsXG4gICAgICAgICAgLi4ucXVvdGUuY29udGV4dCxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAuLi5jb250ZXh0LnByb3BlcnRpZXMsXG4gICAgICAgICAgICAuLi5xdW90ZS5jb250ZXh0LnByb3BlcnRpZXMsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5wb3B1bGF0ZUFjdGl2ZVByaWNlTGlzdHMkKCk7XG4gICAgICB9KSxcbiAgICAgIG1hcCgoKSA9PiBub29wKCkpLFxuICAgICAgdGFrZSgxKSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHNldEN1cnJlbnRMaW5lSXRlbVN0YXRlKGxpbmVJdGVtczogTGluZUl0ZW1bXSk6IHZvaWQge1xuICAgIGNvbnN0IHF1b3RlRHJhZnQgPSB0aGlzLnF1b3RlU3ViaiQudmFsdWU7XG5cbiAgICBpZiAoIXF1b3RlRHJhZnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnF1b3RlU3ViaiQubmV4dCh7XG4gICAgICAuLi5xdW90ZURyYWZ0LFxuICAgICAgY3VycmVudFN0YXRlOiBsaW5lSXRlbXMsXG4gICAgfSk7XG5cbiAgICB0aGlzLm1hcmtBc1VwZGF0ZWQoKTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVRdW90ZURyYWZ0KHVwZGF0ZTogUGFydGlhbDxRdW90ZURyYWZ0Pik6IHZvaWQge1xuICAgIGNvbnN0IHF1b3RlRHJhZnQgPSB0aGlzLnF1b3RlU3ViaiQudmFsdWU7XG5cbiAgICBpZiAoIXF1b3RlRHJhZnQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodXBkYXRlLmNvbnRleHQpIHtcbiAgICAgIHRoaXMuY29udGV4dC51cGRhdGUodXBkYXRlLmNvbnRleHQpO1xuICAgIH1cblxuICAgIHRoaXMucXVvdGVTdWJqJC5uZXh0KHtcbiAgICAgIC4uLnF1b3RlRHJhZnQsXG4gICAgICAuLi51cGRhdGUsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgdXBkYXRlQnlQcmljZVN1bW1hcnkocHJpY2VTdW1tYXJ5OiBQcmljZVN1bW1hcnkpOiB2b2lkIHtcbiAgICBjb25zdCBxdW90ZURyYWZ0ID0gdGhpcy5xdW90ZVN1YmokLnZhbHVlO1xuXG4gICAgaWYgKCFxdW90ZURyYWZ0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdXBkYXRlZEN1cnJlbnRTdGF0ZSA9IHRoaXMuY3VycmVudFN0YXRlLm1hcChsaW5lSXRlbSA9PiB7XG4gICAgICBjb25zdCB1cGRhdGVkID0gcHJpY2VTdW1tYXJ5LmxpbmVJdGVtcy5maW5kKGxpID0+IGxpLmlkID09PSBsaW5lSXRlbS5pZCk7XG4gICAgICByZXR1cm4gdXBkYXRlZCA/PyBsaW5lSXRlbTtcbiAgICB9KTtcblxuICAgIHRoaXMucXVvdGVTdWJqJC5uZXh0KHtcbiAgICAgIC4uLnF1b3RlRHJhZnQsXG4gICAgICBjdXJyZW50U3RhdGU6IHVwZGF0ZWRDdXJyZW50U3RhdGUsXG4gICAgICB0b3RhbFByaWNlczogcHJpY2VTdW1tYXJ5LnRvdGFsUHJpY2VzLFxuICAgICAgYXBwcm92YWxJdGVtczogcHJpY2VTdW1tYXJ5LmFwcHJvdmFsSXRlbXMsXG4gICAgfSk7XG5cbiAgICB0aGlzLm1hcmtBc1VwZGF0ZWQoKTtcbiAgfVxuXG4gIGdldCBxdW90ZURyYWZ0JCgpOiBPYnNlcnZhYmxlPFF1b3RlRHJhZnQ+IHtcbiAgICByZXR1cm4gY29tYmluZUxhdGVzdChbdGhpcy5xdW90ZVN1YmokLCB0aGlzLmNvbnRleHQucmVzb2x2ZSQoKV0pLnBpcGUoXG4gICAgICBtYXAoKCkgPT4gdGhpcy5xdW90ZURyYWZ0KSxcbiAgICAgIGZpbHRlcigocXVvdGUpOiBxdW90ZSBpcyBRdW90ZURyYWZ0ID0+IEJvb2xlYW4ocXVvdGUpKSxcbiAgICAgIHNoYXJlUmVwbGF5KCksXG4gICAgKTtcbiAgfVxuXG4gIGdldCBxdW90ZURyYWZ0KCk6IFF1b3RlRHJhZnQgfCBudWxsIHtcbiAgICBjb25zdCBxdW90ZSA9IHRoaXMucXVvdGVTdWJqJC52YWx1ZTtcblxuICAgIGlmICghcXVvdGUpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAuLi5xdW90ZSxcbiAgICAgIGNvbnRleHQ6IHRoaXMuY29udGV4dC5yZXNvbHZlKCksXG4gICAgfTtcbiAgfVxuXG4gIGdldCBxdW90ZURyYWZ0Rm9yQWN0aXZlUHJpY2VMaXN0KCk6IFF1b3RlRHJhZnQgfCBudWxsIHtcbiAgICBjb25zdCBxdW90ZURyYWZ0ID0gdGhpcy5xdW90ZURyYWZ0O1xuXG4gICAgaWYgKCFxdW90ZURyYWZ0KSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4ucXVvdGVEcmFmdCxcbiAgICAgIGluaXRpYWxTdGF0ZTogdGhpcy5maWx0ZXJCeUFjdGl2ZVByaWNlTGlzdChxdW90ZURyYWZ0LmluaXRpYWxTdGF0ZSksXG4gICAgICBjdXJyZW50U3RhdGU6IHRoaXMuZmlsdGVyQnlBY3RpdmVQcmljZUxpc3QocXVvdGVEcmFmdC5jdXJyZW50U3RhdGUpLFxuICAgIH07XG4gIH1cblxuICBnZXQgY3VycmVudFN0YXRlJCgpOiBPYnNlcnZhYmxlPExpbmVJdGVtW10+IHtcbiAgICByZXR1cm4gdGhpcy5xdW90ZURyYWZ0JC5waXBlKG1hcChxdW90ZSA9PiBxdW90ZS5jdXJyZW50U3RhdGUpKTtcbiAgfVxuXG4gIGdldCBjdXJyZW50U3RhdGUoKTogTGluZUl0ZW1bXSB7XG4gICAgcmV0dXJuIHRoaXMucXVvdGVEcmFmdD8uY3VycmVudFN0YXRlID8/IFtdO1xuICB9XG5cbiAgLyoqXG4gICAqIFN0cmVhbSBvZiBhY3RpdmVDdXJyZW50U3RhdGVcbiAgICovXG4gIGdldCBhY3RpdmVDdXJyZW50U3RhdGUkKCk6IE9ic2VydmFibGU8TGluZUl0ZW1bXT4ge1xuICAgIHJldHVybiB0aGlzLnF1b3RlRHJhZnQkLnBpcGUobWFwKCgpID0+IHRoaXMuYWN0aXZlQ3VycmVudFN0YXRlKSk7XG4gIH1cblxuICAvKipcbiAgICogYWN0aXZlQ3VycmVudFN0YXRlIGlzIGN1cnJlbnRTdGF0ZSBwYXNzZWQgdGhyb3VnaCBhZGRpdGlvbmFsIGZpbHRlcnNcbiAgICovXG4gIGdldCBhY3RpdmVDdXJyZW50U3RhdGUoKTogTGluZUl0ZW1bXSB7XG4gICAgY29uc3QgY3R4ID0gdGhpcy5jb250ZXh0LnJlc29sdmUoKTtcbiAgICBsZXQgY3VycmVudFN0YXRlID0gdGhpcy5xdW90ZURyYWZ0Py5jdXJyZW50U3RhdGUgPz8gW107XG5cbiAgICBpZiAoY3R4Lm1vZGUgPT09IENvbmZpZ3VyYXRpb25Db250ZXh0TW9kZS5BQ0NPVU5UKSB7XG4gICAgICBjdXJyZW50U3RhdGUgPSB0aGlzLmZpbHRlckJ5QWN0aXZlUHJpY2VMaXN0KGN1cnJlbnRTdGF0ZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGN1cnJlbnRTdGF0ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdHJlYW0gb2YgYWN0aXZlSW5pdGlhbFN0YXRlXG4gICAqL1xuICBnZXQgYWN0aXZlSW5pdGlhbFN0YXRlJCgpOiBPYnNlcnZhYmxlPExpbmVJdGVtW10+IHtcbiAgICByZXR1cm4gdGhpcy5xdW90ZURyYWZ0JC5waXBlKG1hcCgoKSA9PiB0aGlzLmFjdGl2ZUluaXRpYWxTdGF0ZSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIGFjdGl2ZUluaXRpYWxTdGF0ZSBpcyBpbml0aWFsU3RhdGUgcGFzc2VkIHRocm91Z2ggYWRkaXRpb25hbCBmaWx0ZXJzXG4gICAqL1xuICBnZXQgYWN0aXZlSW5pdGlhbFN0YXRlKCk6IExpbmVJdGVtW10ge1xuICAgIGNvbnN0IGN0eCA9IHRoaXMuY29udGV4dC5yZXNvbHZlKCk7XG4gICAgbGV0IGluaXRpYWxTdGF0ZSA9IHRoaXMucXVvdGVEcmFmdD8uaW5pdGlhbFN0YXRlID8/IFtdO1xuXG4gICAgaWYgKGN0eC5tb2RlID09PSBDb25maWd1cmF0aW9uQ29udGV4dE1vZGUuQUNDT1VOVCkge1xuICAgICAgaW5pdGlhbFN0YXRlID0gdGhpcy5maWx0ZXJCeUFjdGl2ZVByaWNlTGlzdChpbml0aWFsU3RhdGUpO1xuICAgIH1cblxuICAgIHJldHVybiBpbml0aWFsU3RhdGU7XG4gIH1cblxuICBnZXQgaXNTdGFuZGFsb25lKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNvbnRleHQucmVzb2x2ZSgpLnByb3BlcnRpZXMuc3RhbmRhbG9uZSA9PT0gJ3RydWUnO1xuICB9XG5cbiAgZ2V0IGlzU3RhbmRhbG9uZSQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dC5yZXNvbHZlJCgpLnBpcGUobWFwKCgpID0+IHRoaXMuaXNTdGFuZGFsb25lKSk7XG4gIH1cblxuICBwdWJsaWMgaXNFZGl0TW9kZSQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dC5yZXNvbHZlJCgpLnBpcGUobWFwKCgpID0+IHRoaXMuaXNFZGl0TW9kZSgpKSk7XG4gIH1cblxuICBwdWJsaWMgaXNFZGl0TW9kZSgpOiBib29sZWFuIHtcbiAgICBjb25zdCBjb250ZXh0ID0gdGhpcy5jb250ZXh0LnJlc29sdmUoKTtcblxuICAgIGlmIChjb250ZXh0Lm1vZGUgPT09IENvbmZpZ3VyYXRpb25Db250ZXh0TW9kZS5BQ0NPVU5UKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAoY29udGV4dC5tb2RlID09PSBDb25maWd1cmF0aW9uQ29udGV4dE1vZGUuUVVPVEUpIHtcbiAgICAgIHJldHVybiBjb250ZXh0LnByb3BlcnRpZXMuU3RhdHVzID09PSAnRHJhZnQnO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyB1cGRhdGVBY3RpdmVQcmljZUxpc3QocHJpY2VMaXN0SWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuY29udGV4dC51cGRhdGUoeyBwcm9wZXJ0aWVzOiB7IFByaWNlTGlzdElkOiBwcmljZUxpc3RJZCB9IH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBwb3B1bGF0ZUFjdGl2ZVByaWNlTGlzdHMkKCk6IHZvaWQge1xuICAgIGNvbnN0IGN0eCA9IHRoaXMuY29udGV4dC5yZXNvbHZlKCk7XG4gICAgY29uc3QgcXVvdGVEcmFmdCA9IHRoaXMucXVvdGVEcmFmdDtcblxuICAgIGlmICghcXVvdGVEcmFmdCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIEluIEFDQ09VTlQgbW9kZSBwb3B1bGF0ZSBwcmljZSBsaXN0cyBmcm9tIHJlbGF0ZWQgYXNzZXRzXG4gICAgaWYgKGN0eC5tb2RlID09PSBDb25maWd1cmF0aW9uQ29udGV4dE1vZGUuQUNDT1VOVCkge1xuICAgICAgLy8gUG9wdWxhdGUgbGlzdCBvZiBwcmljZSBsaXN0c1xuICAgICAgdGhpcy5hc3NldFByaWNlTGlzdHMgPSBxdW90ZURyYWZ0LmN1cnJlbnRTdGF0ZVxuICAgICAgICAubWFwKCh7IHByaWNlTGlzdElkIH0pID0+IHByaWNlTGlzdElkKVxuICAgICAgICAucmVkdWNlPFByaWNlTGlzdFtdPigodHJ1bmssIHByaWNlTGlzdElkKSA9PiB7XG4gICAgICAgICAgaWYgKCFwcmljZUxpc3RJZCB8fCB0cnVuay5zb21lKGl0ZW0gPT4gaXRlbS5pZCA9PT0gcHJpY2VMaXN0SWQpKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1bms7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIC4uLnRydW5rLFxuICAgICAgICAgICAgeyBpZDogcHJpY2VMaXN0SWQsIG5hbWU6IHRoaXMuYWxsUHJpY2VMaXN0cy5maW5kKGl0ZW0gPT4gaXRlbS5pZCA9PT0gcHJpY2VMaXN0SWQpPy5uYW1lID8/ICcnIH0sXG4gICAgICAgICAgXTtcbiAgICAgICAgfSwgW10pO1xuXG4gICAgICBjb25zdCBhY3RpdmVQcmljZUxpc3QgPSB0aGlzLmFzc2V0UHJpY2VMaXN0c1swXTtcblxuICAgICAgdGhpcy51cGRhdGVBY3RpdmVQcmljZUxpc3QoYWN0aXZlUHJpY2VMaXN0Py5pZCk7XG5cbiAgICAgIC8vIFVwZGF0ZSBQcmljZUxpc3RJZCBpbiBjb250ZXh0IHByb3BlcnRpZXNcbiAgICAgIC8vIFRPRE86IHJlbW92ZSBpdCB3aGVuIGJhY2tlbmQgd2lsbCBoYXZlIHN1Y2ggbG9naWNcbiAgICAgIHRoaXMuY29udGV4dC51cGRhdGUoeyBwcm9wZXJ0aWVzOiB7IFByaWNlTGlzdElkOiBhY3RpdmVQcmljZUxpc3Q/LmlkIH0gfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBmaWx0ZXJCeUFjdGl2ZVByaWNlTGlzdChsaW5lSXRlbXM6IExpbmVJdGVtW10pOiBMaW5lSXRlbVtdIHtcbiAgICBjb25zdCBjdHggPSB0aGlzLmNvbnRleHQucmVzb2x2ZSgpO1xuXG4gICAgcmV0dXJuIGxpbmVJdGVtcy5maWx0ZXIobGkgPT4gIWxpLnByaWNlTGlzdElkIHx8IGxpLnByaWNlTGlzdElkID09PSBjdHgucHJvcGVydGllcy5QcmljZUxpc3RJZCk7XG4gIH1cblxuICBwcml2YXRlIG1hcmtBc1VwZGF0ZWQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNJbml0aWFsaXplZCAmJiAhdGhpcy5oYXNVbnNhdmVkQ2hhbmdlcykge1xuICAgICAgdGhpcy5oYXNVbnNhdmVkQ2hhbmdlcyA9IHRydWU7XG4gICAgfVxuICB9XG59XG4iXX0=