@decaf-ts/for-angular 0.0.22 → 0.0.24

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 (46) hide show
  1. package/components/component-renderer/component-renderer.component.d.ts +3 -2
  2. package/components/crud-field/crud-field.component.d.ts +4 -2
  3. package/components/fieldset/fieldset.component.d.ts +10 -1
  4. package/components/for-angular-components.module.d.ts +3 -2
  5. package/components/index.d.ts +1 -1
  6. package/components/layout/layout.component.d.ts +1 -24
  7. package/components/list/list.component.d.ts +1 -2
  8. package/components/model-renderer/model-renderer.component.d.ts +6 -1
  9. package/components/steped-form/steped-form.component.d.ts +243 -0
  10. package/engine/NgxBaseComponent.d.ts +3 -3
  11. package/engine/NgxCrudFormField.d.ts +1 -0
  12. package/engine/NgxFormService.d.ts +381 -48
  13. package/engine/NgxRenderingEngine.d.ts +4 -2
  14. package/engine/constants.d.ts +12 -0
  15. package/engine/interfaces.d.ts +1 -1
  16. package/engine/types.d.ts +17 -3
  17. package/esm2022/components/component-renderer/component-renderer.component.mjs +10 -4
  18. package/esm2022/components/crud-field/crud-field.component.mjs +14 -3
  19. package/esm2022/components/crud-form/crud-form.component.mjs +3 -3
  20. package/esm2022/components/empty-state/empty-state.component.mjs +2 -2
  21. package/esm2022/components/fieldset/fieldset.component.mjs +6 -4
  22. package/esm2022/components/for-angular-components.module.mjs +10 -5
  23. package/esm2022/components/index.mjs +2 -2
  24. package/esm2022/components/layout/layout.component.mjs +4 -29
  25. package/esm2022/components/list/list.component.mjs +5 -4
  26. package/esm2022/components/model-renderer/model-renderer.component.mjs +10 -3
  27. package/esm2022/components/steped-form/steped-form.component.mjs +291 -0
  28. package/esm2022/engine/NgxBaseComponent.mjs +12 -12
  29. package/esm2022/engine/NgxCrudFormField.mjs +19 -17
  30. package/esm2022/engine/NgxFormService.mjs +438 -57
  31. package/esm2022/engine/NgxRenderingEngine.mjs +21 -10
  32. package/esm2022/engine/ValidatorFactory.mjs +4 -4
  33. package/esm2022/engine/constants.mjs +6 -1
  34. package/esm2022/engine/interfaces.mjs +1 -1
  35. package/esm2022/engine/types.mjs +1 -1
  36. package/esm2022/for-angular-common.module.mjs +4 -2
  37. package/esm2022/i18n/Loader.mjs +4 -4
  38. package/fesm2022/decaf-ts-for-angular.mjs +830 -153
  39. package/fesm2022/decaf-ts-for-angular.mjs.map +1 -1
  40. package/for-angular-common.module.d.ts +8 -2
  41. package/i18n/Loader.d.ts +2 -7
  42. package/package.json +9 -9
  43. package/assets/i18n/en.json +0 -80
  44. package/assets/i18n/pt.json +0 -80
  45. package/components/list/constants.d.ts +0 -25
  46. package/esm2022/components/list/constants.mjs +0 -6
@@ -1,9 +1,10 @@
1
1
  import { TranslateHttpLoader } from '@ngx-translate/http-loader';
2
2
  import { forkJoin } from 'rxjs';
3
3
  import { map } from 'rxjs/operators';
4
- import { inject, InjectionToken } from '@angular/core';
4
+ import { inject } from '@angular/core';
5
5
  import { cleanSpaces, getLocaleFromClassName } from '../helpers';
6
6
  import en from './data/en.json';
7
+ import { I18N_CONFIG_TOKEN } from '../for-angular-common.module';
7
8
  export class I18nLoader {
8
9
  static loadFromHttp(http) {
9
10
  function getSuffix() {
@@ -43,7 +44,6 @@ export function getLocaleContextByKey(locale, phrase) {
43
44
  const parts = phrase.split(' ');
44
45
  return `${locale}.${cleanSpaces(parts.join('.'), true)}`;
45
46
  }
46
- export const I18N_CONFIG_TOKEN = new InjectionToken('I18N_CONFIG_TOKEN');
47
47
  export function I18nLoaderFactory(http) {
48
48
  const { resources, versionedSuffix } = inject(I18N_CONFIG_TOKEN, { optional: true }) ?? getI18nLoaderFactoryProviderConfig().useValue;
49
49
  return new MultiI18nLoader(http, resources, versionedSuffix);
@@ -54,7 +54,7 @@ export function getI18nLoaderFactoryProviderConfig(resources = [], versionedSuff
54
54
  return {
55
55
  provide: I18N_CONFIG_TOKEN,
56
56
  useValue: { resources: [
57
- { prefix: './assets/i18n/', suffix: '.json' },
57
+ // { prefix: './assets/i18n/', suffix: '.json' },
58
58
  ...resources
59
59
  ], versionedSuffix }
60
60
  };
@@ -83,4 +83,4 @@ export class MultiI18nLoader {
83
83
  }));
84
84
  }
85
85
  }
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9pMThuL0xvYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsUUFBUSxFQUFlLE1BQU0sTUFBTSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RCxPQUFPLEVBQUUsV0FBVyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hDLE1BQU0sT0FBTyxVQUFVO0lBQ3JCLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBZ0I7UUFDbEMsU0FBUyxTQUFTO1lBQ2hCLE1BQU0sS0FBSyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7WUFDekIsT0FBTyxpQkFBaUIsS0FBSyxDQUFDLFdBQVcsRUFBRSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQVksQ0FBQztRQUM5RixDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsS0FBTSxTQUFRLG1CQUFtQjtZQUNsQyxjQUFjLENBQUMsSUFBWTtnQkFDbEMsTUFBTSxHQUFHLEdBQUcsS0FBSyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDdkMsT0FBTyxHQUFHLENBQUM7WUFDYixDQUFDO1NBQ0YsQ0FBQyxDQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQzFDLENBQUM7Q0FDRjtBQUdELE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxLQUFxQyxFQUFFLE1BQWU7SUFDckYsT0FBTyxzQkFBc0IsQ0FBQyxLQUFLLEVBQUUs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O2dCQUNMLEdBQUcsT0FBTztnQkFDVixHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUUsR0FBRyxPQUFPLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQzthQUM5RCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBUcmFuc2xhdGVMb2FkZXIsIFRyYW5zbGF0aW9uT2JqZWN0IH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVIdHRwTG9hZGVyIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvaHR0cC1sb2FkZXInO1xuaW1wb3J0IHsgZm9ya0pvaW4sICBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0kxOG5SZXNvdXJjZUNvbmZpZ30gZnJvbSAnLi4vZW5naW5lL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRnVuY3Rpb25MaWtlLCBLZXlWYWx1ZSB9IGZyb20gJy4uL2VuZ2luZSc7XG5pbXBvcnQgeyBjbGVhblNwYWNlcywgZ2V0TG9jYWxlRnJvbUNsYXNzTmFtZSB9IGZyb20gJy4uL2hlbHBlcnMnO1xuaW1wb3J0IGVuIGZyb20gJy4vZGF0YS9lbi5qc29uJztcbmV4cG9ydCBjbGFzcyBJMThuTG9hZGVyIHtcbiAgc3RhdGljIGxvYWRGcm9tSHR0cChodHRwOiBIdHRwQ2xpZW50KTogVHJhbnNsYXRlTG9hZGVyIHtcbiAgICBmdW5jdGlvbiBnZXRTdWZmaXgoKSB7XG4gICAgICBjb25zdCB0b2RheSA9IG5ldyBEYXRlKCk7XG4gICAgICByZXR1cm4gYC5qc29uP3ZlcnNpb249JHt0b2RheS5nZXRGdWxsWWVhcigpfSR7dG9kYXkuZ2V0TW9udGgoKX0ke3RvZGF5LmdldERheSgpfWAgYXMgc3RyaW5nO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgKGNsYXNzIGV4dGVuZHMgVHJhbnNsYXRlSHR0cExvYWRlciB7XG4gICAgICBvdmVycmlkZSBnZXRUcmFuc2xhdGlvbihsYW5nOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFRyYW5zbGF0aW9uT2JqZWN0PiB7XG4gICAgICAgIGNvbnN0IHJlcyA9IHN1cGVyLmdldFRyYW5zbGF0aW9uKGxhbmcpO1xuICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgfVxuICAgIH0pKGh0dHAsICcuL2Fzc2V0cy9pMThuLycsIGdldFN1ZmZpeCgpKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRMb2NhbGVDb250ZXh0KGNsYXp6OiBGdW5jdGlvbkxpa2UgfCBvYmplY3QgfCBzdHJpbmcsIHN1ZmZpeD86IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBnZXRMb2NhbGVGcm9tQ2xhc3NOYW1lKGNsYXp6LCBzdWZmaXgpO1xufVxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbiBHZW5lcmF0ZXMgYSBsb2NhbGl6ZWQgc3RyaW5nIGJ5IGNvbWJpbmluZyBsb2NhbGUgYW5kIHBocmFzZVxuICogQHN1bW1hcnkgVGhpcyB1dGlsaXR5IGZ1bmN0aW9uIGNyZWF0ZXMgYSBwcm9wZXJseSBmb3JtYXR0ZWQgbG9jYWxlIHN0cmluZyBieSBjb21iaW5pbmdcbiAqIGEgbG9jYWxlIGlkZW50aWZpZXIgd2l0aCBhIHBocmFzZS4gSXQgaGFuZGxlcyBlZGdlIGNhc2VzIHN1Y2ggYXMgZW1wdHkgcGhyYXNlcyxcbiAqIG1pc3NpbmcgbG9jYWxlcywgYW5kIHBocmFzZXMgdGhhdCBhbHJlYWR5IGluY2x1ZGUgdGhlIGxvY2FsZSBwcmVmaXguIFRoaXMgZnVuY3Rpb25cbiAqIGlzIHVzZWZ1bCBmb3IgZW5zdXJpbmcgY29uc2lzdGVudCBmb3JtYXR0aW5nIG9mIGxvY2FsaXplZCBzdHJpbmdzIHRocm91Z2hvdXQgdGhlIGFwcGxpY2F0aW9uLlxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBsb2NhbGUgLSBUaGUgbG9jYWxlIGlkZW50aWZpZXIgKGUuZy4sICdlbicsICdmcicpXG4gKiBAcGFyYW0ge3N0cmluZyB8IHVuZGVmaW5lZH0gcGhyYXNlIC0gVGhlIHBocmFzZSB0byBsb2NhbGl6ZVxuICogQHJldHVybiB7c3RyaW5nfSBUaGUgZm9ybWF0dGVkIGxvY2FsZSBzdHJpbmcsIG9yIGVtcHR5IHN0cmluZyBpZiBwaHJhc2UgaXMgdW5kZWZpbmVkXG4gKlxuICogQGZ1bmN0aW9uIGdlbmVyYXRlTG9jYWxlRnJvbVN0cmluZ1xuICogQG1lbWJlck9mIG1vZHVsZTpmb3ItYW5ndWxhclxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0TG9jYWxlQ29udGV4dEJ5S2V5KFxuICBsb2NhbGU6IHN0cmluZyxcbiAgcGhyYXNlOiBzdHJpbmcgfCB1bmRlZmluZWRcbik6IHN0cmluZyB7XG4gIGlmICghcGhyYXNlKVxuICAgIHJldHVybiBsb2NhbGU7XG4gIGlmICghbG9jYWxlIHx8IHBocmFzZS5pbmNsdWRlcyhgJHtsb2NhbGV9LmApKVxuICAgIHJldHVybiBwaHJhc2U7XG4gIGNvbnN0IHBhcnRzID0gcGhyYXNlLnNwbGl0KCcgJyk7XG4gIHJldHVybiBgJHtsb2NhbGV9LiR7Y2xlYW5TcGFjZXMocGFydHMuam9pbignLicpLCB0cnVlKX1gO1xufVxuXG5leHBvcnQgY29uc3QgSTE4Tl9DT05GSUdfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48e3Jlc291cmNlczogSTE4blJlc291cmNlQ29uZmlnW107IHZlcnNpb25lZFN1ZmZpeDogZmFsc2V9PignSTE4Tl9DT05GSUdfVE9LRU4nKTtcblxuZXhwb3J0IGZ1bmN0aW9uIEkxOG5Mb2FkZXJGYWN0b3J5KGh0dHA6IEh0dHBDbGllbnQpOiBUcmFuc2xhdGVMb2FkZXIge1xuICBjb25zdCB7cmVzb3VyY2VzLCB2ZXJzaW9uZWRTdWZmaXh9ID0gaW5qZWN0KEkxOE5fQ09ORklHX1RPS0VOLCB7IG9wdGlvbmFsOiB0cnVlIH0pID8/IGdldEkxOG5Mb2FkZXJGYWN0b3J5UHJvdmlkZXJDb25maWcoKS51c2VWYWx1ZTtcbiAgcmV0dXJuIG5ldyBNdWx0aUkxOG5Mb2FkZXIoaHR0cCwgcmVzb3VyY2VzLCB2ZXJzaW9uZWRTdWZmaXgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0STE4bkxvYWRlckZhY3RvcnlQcm92aWRlckNvbmZpZyhyZXNvdXJjZXM6IEkxOG5SZXNvdXJjZUNvbmZpZyB8IEkxOG5SZXNvdXJjZUNvbmZpZ1tdID0gW10sIHZlcnNpb25lZFN1ZmZpeDogYm9vbGVhbiA9IGZhbHNlKSB7XG4gIGlmKCFBcnJheS5pc0FycmF5KHJlc291cmNlcykpXG4gICAgcmVzb3VyY2VzID0gW3Jlc291cmNlc107XG4gIHJldHVybiB7XG4gICAgcHJvdmlkZTogSTE4Tl9DT05GSUdfVE9LRU4sXG4gICAgdXNlVmFsdWU6IHsgcmVzb3VyY2VzOiBbXG4gICAgICB7IHByZWZpeDogJy4vYXNzZXRzL2kxOG4vJywgc3VmZml4OiAnLmpzb24nIH0sXG4gICAgICAuLi5yZXNvdXJjZXNcbiAgICBdLCB2ZXJzaW9uZWRTdWZmaXh9XG4gIH1cbn1cblxuY29uc3QgbGliTGFuZ3VhZ2U6IFJlY29yZDxzdHJpbmcsIFRyYW5zbGF0aW9uT2JqZWN0PiA9IHtlbn07XG5cbmV4cG9ydCBjbGFzcyBNdWx0aUkxOG5Mb2FkZXIgaW1wbGVtZW50cyBJMThuTG9hZGVyIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LCBwcml2YXRlIHJlc291cmNlczogSTE4blJlc291cmNlQ29uZmlnW10gPSBbXSwgcHJpdmF0ZSB2ZXJzaW9uZWRTdWZmaXg6IGJvb2xlYW4gPSBmYWxzZSkge31cblxuICBwcml2YXRlIGdldFN1ZmZpeChzdWZmaXg6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYoIXRoaXMudmVyc2lvbmVkU3VmZml4KVxuICAgICAgcmV0dXJuIHN1ZmZpeDtcbiAgICBjb25zdCB0b2RheSA9IG5ldyBEYXRlKCk7XG4gICAgcmV0dXJuIGAke3N1ZmZpeH0/dmVyc2lvbj0ke3RvZGF5LmdldEZ1bGxZZWFyKCl9JHt0b2RheS5nZXRNb250aCgpfSR7dG9kYXkuZ2V0RGF5KCl9YCBhcyBzdHJpbmc7XG4gIH1cblxuICBnZXRUcmFuc2xhdGlvbihsYW5nOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFRyYW5zbGF0aW9uT2JqZWN0PiB7XG4gICAgY29uc3QgbGliS2V5cyA9IGxpYkxhbmd1YWdlW2xhbmddIHx8IGxpYkxhbmd1YWdlW1wiZW5cIl0gfHwge307XG4gICAgY29uc3QgaHR0cFJlcXVlc3RzJCA9IGZvcmtKb2luKFxuICAgICAgdGhpcy5yZXNvdXJjZXMubWFwKGNvbmZpZyA9PlxuICAgICAgICB0aGlzLmh0dHAuZ2V0PFRyYW5zbGF0aW9uT2JqZWN0PihcbiAgICAgICAgICBgJHtjb25maWcucHJlZml4fSR7bGFuZ30ke3RoaXMuZ2V0U3VmZml4KGNvbmZpZy5zdWZmaXgpfWBcbiAgICAgICAgKVxuICAgICAgKVxuICAgICk7XG4gICAgcmV0dXJuIGh0dHBSZXF1ZXN0cyQucGlwZShcbiAgICAgIG1hcChyZXMgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC4uLmxpYktleXMsXG4gICAgICAgICAgLi4ucmVzLnJlZHVjZSgoYWNjLCBjdXJyZW50KSA9PiAoeyAuLi5hY2MsIC4uLmN1cnJlbnQgfSksIHt9KVxuICAgICAgICB9O1xuICAgICAgfSlcbiAgICApO1xuICB9XG59XG4iXX0=
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9pMThuL0xvYWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsUUFBUSxFQUFlLE1BQU0sTUFBTSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXZDLE9BQU8sRUFBRSxXQUFXLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDakUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDaEMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDakUsTUFBTSxPQUFPLFVBQVU7SUFDckIsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFnQjtRQUNsQyxTQUFTLFNBQVM7WUFDaEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUN6QixPQUFPLGlCQUFpQixLQUFLLENBQUMsV0FBVyxFQUFFLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsRUFBWSxDQUFDO1FBQzlGLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQyxLQUFNLFNBQVEsbUJBQW1CO1lBQ2xDLGNBQWMsQ0FBQyxJQUFZO2dCQUNsQyxNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUN2QyxPQUFPLEdBQUcsQ0FBQztZQUNiLENBQUM7U0FDRixDQUFDLENBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDMUMsQ0FBQztDQUNGO0FBR0QsTUFBTSxVQUFVLGdCQUFnQixDQUFDLEtBQXFDLEVBQUUsTUFBZTtJQUNyRixPQUFPLHNCQUFzQixDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztBQUMvQyxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUNILE1BQU0sVUFBVSxxQkFBcUIsQ0FDbkMsTUFBYyxFQUNkLE1BQTBCO0lBRTFCLElBQUksQ0FBQyxNQUFNO1FBQ1QsT0FBTyxNQUFNLENBQUM7SUFDaEIsSUFBSSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsTUFBTSxHQUFHLENBQUM7UUFDMUMsT0FBTyxNQUFNLENBQUM7SUFDaEIsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNoQyxPQUFPLEdBQUcsTUFBTSxJQUFJLFdBQVcsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUM7QUFDM0QsQ0FBQztBQUVELE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxJQUFnQjtJQUNoRCxNQUFNLEVBQUMsU0FBUyxFQUFFLGVBQWUsRUFBQyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxJQUFJLGtDQUFrQyxFQUFFLENBQUMsUUFBUSxDQUFDO0lBQ3BJLE9BQU8sSUFBSSxlQUFlLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxlQUFlLENBQUMsQ0FBQztBQUMvRCxDQUFDO0FBRUQsTUFBTSxVQUFVLGtDQUFrQyxDQUFDLFlBQXVELEVBQUUsRUFBRSxrQkFBMkIsS0FBSztJQUM1SSxJQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFDMUIsU0FBUyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDMUIsT0FBTztRQUNMLE9BQU8sRUFBRSxpQkFBaUI7UUFDMUIsUUFBUSxFQUFFLEVBQUUsU0FBUyxFQUFFO2dCQUNyQixpREFBaUQ7Z0JBQ2pELEdBQUcsU0FBUzthQUNiLEVBQUUsZUFBZSxFQUFDO0tBQ3BCLENBQUE7QUFDSCxDQUFDO0FBRUQsTUFBTSxXQUFXLEdBQXNDLEVBQUMsRUFBRSxFQUFDLENBQUM7QUFFNUQsTUFBTSxPQUFPLGVBQWU7SUFDMUIsWUFBb0IsSUFBZ0IsRUFBVSxZQUFrQyxFQUFFLEVBQVUsa0JBQTJCLEtBQUs7UUFBeEcsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFVLGNBQVMsR0FBVCxTQUFTLENBQTJCO1FBQVUsb0JBQWUsR0FBZixlQUFlLENBQWlCO0lBQUcsQ0FBQztJQUV4SCxTQUFTLENBQUMsTUFBYztRQUM5QixJQUFHLENBQUMsSUFBSSxDQUFDLGVBQWU7WUFDdEIsT0FBTyxNQUFNLENBQUM7UUFDaEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN6QixPQUFPLEdBQUcsTUFBTSxZQUFZLEtBQUssQ0FBQyxXQUFXLEVBQUUsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFFLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFZLENBQUM7SUFDbEcsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUFZO1FBQ3pCLE1BQU0sT0FBTyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzdELE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FDNUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FDMUIsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQ1gsR0FBRyxNQUFNLENBQUMsTUFBTSxHQUFHLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUMxRCxDQUNGLENBQ0YsQ0FBQztRQUNGLE9BQU8sYUFBYSxDQUFDLElBQUksQ0FDdkIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ1IsT0FBTztnQkFDTCxHQUFHLE9BQU87Z0JBQ1YsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsR0FBRyxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7YUFDOUQsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTG9hZGVyLCBUcmFuc2xhdGlvbk9iamVjdCB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlSHR0cExvYWRlciB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2h0dHAtbG9hZGVyJztcbmltcG9ydCB7IGZvcmtKb2luLCAgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtJMThuUmVzb3VyY2VDb25maWd9IGZyb20gJy4uL2VuZ2luZS9pbnRlcmZhY2VzJztcbmltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRnVuY3Rpb25MaWtlIH0gZnJvbSAnLi4vZW5naW5lJztcbmltcG9ydCB7IGNsZWFuU3BhY2VzLCBnZXRMb2NhbGVGcm9tQ2xhc3NOYW1lIH0gZnJvbSAnLi4vaGVscGVycyc7XG5pbXBvcnQgZW4gZnJvbSAnLi9kYXRhL2VuLmpzb24nO1xuaW1wb3J0IHsgSTE4Tl9DT05GSUdfVE9LRU4gfSBmcm9tICcuLi9mb3ItYW5ndWxhci1jb21tb24ubW9kdWxlJztcbmV4cG9ydCBjbGFzcyBJMThuTG9hZGVyIHtcbiAgc3RhdGljIGxvYWRGcm9tSHR0cChodHRwOiBIdHRwQ2xpZW50KTogVHJhbnNsYXRlTG9hZGVyIHtcbiAgICBmdW5jdGlvbiBnZXRTdWZmaXgoKSB7XG4gICAgICBjb25zdCB0b2RheSA9IG5ldyBEYXRlKCk7XG4gICAgICByZXR1cm4gYC5qc29uP3ZlcnNpb249JHt0b2RheS5nZXRGdWxsWWVhcigpfSR7dG9kYXkuZ2V0TW9udGgoKX0ke3RvZGF5LmdldERheSgpfWAgYXMgc3RyaW5nO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgKGNsYXNzIGV4dGVuZHMgVHJhbnNsYXRlSHR0cExvYWRlciB7XG4gICAgICBvdmVycmlkZSBnZXRUcmFuc2xhdGlvbihsYW5nOiBzdHJpbmcpOiBPYnNlcnZhYmxlPFRyYW5zbGF0aW9uT2JqZWN0PiB7XG4gICAgICAgIGNvbnN0IHJlcyA9IHN1cGVyLmdldFRyYW5zbGF0aW9uKGxhbmcpO1xuICAgICAgICByZXR1cm4gcmVzO1xuICAgICAgfVxuICAgIH0pKGh0dHAsICcuL2Fzc2V0cy9pMThuLycsIGdldFN1ZmZpeCgpKTtcbiAgfVxufVxuXG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRMb2NhbGVDb250ZXh0KGNsYXp6OiBGdW5jdGlvbkxpa2UgfCBvYmplY3QgfCBzdHJpbmcsIHN1ZmZpeD86IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBnZXRMb2NhbGVGcm9tQ2xhc3NOYW1lKGNsYXp6LCBzdWZmaXgpO1xufVxuXG4vKipcbiAqIEBkZXNjcmlwdGlvbiBHZW5lcmF0ZXMgYSBsb2NhbGl6ZWQgc3RyaW5nIGJ5IGNvbWJpbmluZyBsb2NhbGUgYW5kIHBocmFzZVxuICogQHN1bW1hcnkgVGhpcyB1dGlsaXR5IGZ1bmN0aW9uIGNyZWF0ZXMgYSBwcm9wZXJseSBmb3JtYXR0ZWQgbG9jYWxlIHN0cmluZyBieSBjb21iaW5pbmdcbiAqIGEgbG9jYWxlIGlkZW50aWZpZXIgd2l0aCBhIHBocmFzZS4gSXQgaGFuZGxlcyBlZGdlIGNhc2VzIHN1Y2ggYXMgZW1wdHkgcGhyYXNlcyxcbiAqIG1pc3NpbmcgbG9jYWxlcywgYW5kIHBocmFzZXMgdGhhdCBhbHJlYWR5IGluY2x1ZGUgdGhlIGxvY2FsZSBwcmVmaXguIFRoaXMgZnVuY3Rpb25cbiAqIGlzIHVzZWZ1bCBmb3IgZW5zdXJpbmcgY29uc2lzdGVudCBmb3JtYXR0aW5nIG9mIGxvY2FsaXplZCBzdHJpbmdzIHRocm91Z2hvdXQgdGhlIGFwcGxpY2F0aW9uLlxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBsb2NhbGUgLSBUaGUgbG9jYWxlIGlkZW50aWZpZXIgKGUuZy4sICdlbicsICdmcicpXG4gKiBAcGFyYW0ge3N0cmluZyB8IHVuZGVmaW5lZH0gcGhyYXNlIC0gVGhlIHBocmFzZSB0byBsb2NhbGl6ZVxuICogQHJldHVybiB7c3RyaW5nfSBUaGUgZm9ybWF0dGVkIGxvY2FsZSBzdHJpbmcsIG9yIGVtcHR5IHN0cmluZyBpZiBwaHJhc2UgaXMgdW5kZWZpbmVkXG4gKlxuICogQGZ1bmN0aW9uIGdlbmVyYXRlTG9jYWxlRnJvbVN0cmluZ1xuICogQG1lbWJlck9mIG1vZHVsZTpmb3ItYW5ndWxhclxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0TG9jYWxlQ29udGV4dEJ5S2V5KFxuICBsb2NhbGU6IHN0cmluZyxcbiAgcGhyYXNlOiBzdHJpbmcgfCB1bmRlZmluZWRcbik6IHN0cmluZyB7XG4gIGlmICghcGhyYXNlKVxuICAgIHJldHVybiBsb2NhbGU7XG4gIGlmICghbG9jYWxlIHx8IHBocmFzZS5pbmNsdWRlcyhgJHtsb2NhbGV9LmApKVxuICAgIHJldHVybiBwaHJhc2U7XG4gIGNvbnN0IHBhcnRzID0gcGhyYXNlLnNwbGl0KCcgJyk7XG4gIHJldHVybiBgJHtsb2NhbGV9LiR7Y2xlYW5TcGFjZXMocGFydHMuam9pbignLicpLCB0cnVlKX1gO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gSTE4bkxvYWRlckZhY3RvcnkoaHR0cDogSHR0cENsaWVudCk6IFRyYW5zbGF0ZUxvYWRlciB7XG4gIGNvbnN0IHtyZXNvdXJjZXMsIHZlcnNpb25lZFN1ZmZpeH0gPSBpbmplY3QoSTE4Tl9DT05GSUdfVE9LRU4sIHsgb3B0aW9uYWw6IHRydWUgfSkgPz8gZ2V0STE4bkxvYWRlckZhY3RvcnlQcm92aWRlckNvbmZpZygpLnVzZVZhbHVlO1xuICByZXR1cm4gbmV3IE11bHRpSTE4bkxvYWRlcihodHRwLCByZXNvdXJjZXMsIHZlcnNpb25lZFN1ZmZpeCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRJMThuTG9hZGVyRmFjdG9yeVByb3ZpZGVyQ29uZmlnKHJlc291cmNlczogSTE4blJlc291cmNlQ29uZmlnIHwgSTE4blJlc291cmNlQ29uZmlnW10gPSBbXSwgdmVyc2lvbmVkU3VmZml4OiBib29sZWFuID0gZmFsc2UpIHtcbiAgaWYoIUFycmF5LmlzQXJyYXkocmVzb3VyY2VzKSlcbiAgICByZXNvdXJjZXMgPSBbcmVzb3VyY2VzXTtcbiAgcmV0dXJuIHtcbiAgICBwcm92aWRlOiBJMThOX0NPTkZJR19UT0tFTixcbiAgICB1c2VWYWx1ZTogeyByZXNvdXJjZXM6IFtcbiAgICAgIC8vIHsgcHJlZml4OiAnLi9hc3NldHMvaTE4bi8nLCBzdWZmaXg6ICcuanNvbicgfSxcbiAgICAgIC4uLnJlc291cmNlc1xuICAgIF0sIHZlcnNpb25lZFN1ZmZpeH1cbiAgfVxufVxuXG5jb25zdCBsaWJMYW5ndWFnZTogUmVjb3JkPHN0cmluZywgVHJhbnNsYXRpb25PYmplY3Q+ID0ge2VufTtcblxuZXhwb3J0IGNsYXNzIE11bHRpSTE4bkxvYWRlciBpbXBsZW1lbnRzIEkxOG5Mb2FkZXIge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsIHByaXZhdGUgcmVzb3VyY2VzOiBJMThuUmVzb3VyY2VDb25maWdbXSA9IFtdLCBwcml2YXRlIHZlcnNpb25lZFN1ZmZpeDogYm9vbGVhbiA9IGZhbHNlKSB7fVxuXG4gIHByaXZhdGUgZ2V0U3VmZml4KHN1ZmZpeDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBpZighdGhpcy52ZXJzaW9uZWRTdWZmaXgpXG4gICAgICByZXR1cm4gc3VmZml4O1xuICAgIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKTtcbiAgICByZXR1cm4gYCR7c3VmZml4fT92ZXJzaW9uPSR7dG9kYXkuZ2V0RnVsbFllYXIoKX0ke3RvZGF5LmdldE1vbnRoKCl9JHt0b2RheS5nZXREYXkoKX1gIGFzIHN0cmluZztcbiAgfVxuXG4gIGdldFRyYW5zbGF0aW9uKGxhbmc6IHN0cmluZyk6IE9ic2VydmFibGU8VHJhbnNsYXRpb25PYmplY3Q+IHtcbiAgICBjb25zdCBsaWJLZXlzID0gbGliTGFuZ3VhZ2VbbGFuZ10gfHwgbGliTGFuZ3VhZ2VbXCJlblwiXSB8fCB7fTtcbiAgICBjb25zdCBodHRwUmVxdWVzdHMkID0gZm9ya0pvaW4oXG4gICAgICB0aGlzLnJlc291cmNlcy5tYXAoY29uZmlnID0+XG4gICAgICAgIHRoaXMuaHR0cC5nZXQ8VHJhbnNsYXRpb25PYmplY3Q+KFxuICAgICAgICAgIGAke2NvbmZpZy5wcmVmaXh9JHtsYW5nfSR7dGhpcy5nZXRTdWZmaXgoY29uZmlnLnN1ZmZpeCl9YFxuICAgICAgICApXG4gICAgICApXG4gICAgKTtcbiAgICByZXR1cm4gaHR0cFJlcXVlc3RzJC5waXBlKFxuICAgICAgbWFwKHJlcyA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgLi4ubGliS2V5cyxcbiAgICAgICAgICAuLi5yZXMucmVkdWNlKChhY2MsIGN1cnJlbnQpID0+ICh7IC4uLmFjYywgLi4uY3VycmVudCB9KSwge30pXG4gICAgICAgIH07XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==