@decaf-ts/for-angular 0.0.12 → 0.0.14

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 (143) hide show
  1. package/{dist/lib/components → components}/component-renderer/component-renderer.component.d.ts +0 -1
  2. package/{dist/lib/components → components}/crud-field/crud-field.component.d.ts +0 -1
  3. package/{dist/lib/components → components}/crud-form/constants.d.ts +0 -1
  4. package/{dist/lib/components → components}/crud-form/crud-form.component.d.ts +0 -1
  5. package/{dist/lib/components → components}/crud-form/types.d.ts +0 -1
  6. package/{dist/lib/components → components}/empty-state/empty-state.component.d.ts +0 -1
  7. package/{dist/lib/components → components}/fieldset/fieldset.component.d.ts +0 -1
  8. package/{dist/lib/components → components}/filter/filter.component.d.ts +0 -1
  9. package/{dist/lib/components → components}/for-angular-components.module.d.ts +0 -1
  10. package/{dist/lib/components → components}/index.d.ts +0 -1
  11. package/{dist/lib/components → components}/layout/layout.component.d.ts +0 -1
  12. package/{dist/lib/components → components}/list/constants.d.ts +0 -1
  13. package/{dist/lib/components → components}/list/list.component.d.ts +0 -1
  14. package/{dist/lib/components → components}/list-item/list-item.component.d.ts +0 -1
  15. package/{dist/lib/components → components}/model-renderer/model-renderer.component.d.ts +0 -1
  16. package/{dist/lib/components → components}/pagination/constants.d.ts +0 -1
  17. package/{dist/lib/components → components}/pagination/pagination.component.d.ts +0 -1
  18. package/{dist/lib/components → components}/searchbar/searchbar.component.d.ts +0 -1
  19. package/{dist/lib/directives → directives}/collapsable.directive.d.ts +0 -1
  20. package/{dist/lib/directives → directives}/index.d.ts +0 -1
  21. package/{dist/lib/engine → engine}/DynamicModule.d.ts +0 -1
  22. package/{dist/lib/engine → engine}/NgxBaseComponent.d.ts +0 -1
  23. package/{dist/lib/engine → engine}/NgxCrudFormField.d.ts +0 -1
  24. package/{dist/lib/engine → engine}/NgxFormService.d.ts +0 -1
  25. package/{dist/lib/engine → engine}/NgxRenderingEngine.d.ts +0 -1
  26. package/{dist/lib/engine → engine}/NgxRenderingEngine2.d.ts +0 -1
  27. package/{dist/lib/engine → engine}/ValidatorFactory.d.ts +0 -1
  28. package/{dist/lib/engine → engine}/constants.d.ts +0 -1
  29. package/{dist/lib/engine → engine}/decorators.d.ts +0 -1
  30. package/{dist/lib/engine → engine}/index.d.ts +0 -1
  31. package/{dist/lib/engine → engine}/types.d.ts +0 -1
  32. package/esm2022/components/component-renderer/component-renderer.component.mjs +313 -0
  33. package/esm2022/components/crud-field/crud-field.component.mjs +301 -0
  34. package/esm2022/components/crud-form/crud-form.component.mjs +139 -0
  35. package/esm2022/components/empty-state/empty-state.component.mjs +348 -0
  36. package/esm2022/components/fieldset/fieldset.component.mjs +225 -0
  37. package/esm2022/components/filter/filter.component.mjs +689 -0
  38. package/esm2022/components/for-angular-components.module.mjs +71 -0
  39. package/esm2022/components/layout/layout.component.mjs +176 -0
  40. package/esm2022/components/list/list.component.mjs +1236 -0
  41. package/esm2022/components/list-item/list-item.component.mjs +408 -0
  42. package/esm2022/components/model-renderer/model-renderer.component.mjs +138 -0
  43. package/esm2022/components/pagination/pagination.component.mjs +323 -0
  44. package/esm2022/components/searchbar/searchbar.component.mjs +493 -0
  45. package/esm2022/directives/collapsable.directive.mjs +28 -0
  46. package/esm2022/engine/NgxBaseComponent.mjs +539 -0
  47. package/esm2022/for-angular.module.mjs +118 -0
  48. package/{dist/lib/fesm2022 → fesm2022}/decaf-ts-for-angular.mjs +621 -1805
  49. package/fesm2022/decaf-ts-for-angular.mjs.map +1 -0
  50. package/{dist/lib/for-angular.module.d.ts → for-angular.module.d.ts} +0 -1
  51. package/{dist/lib/helpers → helpers}/index.d.ts +0 -1
  52. package/{dist/lib/helpers → helpers}/utils.d.ts +0 -1
  53. package/{dist/lib/index.d.ts → index.d.ts} +0 -1
  54. package/{dist/lib/interfaces.d.ts → interfaces.d.ts} +0 -1
  55. package/package.json +19 -95
  56. package/{dist/lib/public-apis.d.ts → public-apis.d.ts} +0 -1
  57. package/LICENSE.md +0 -659
  58. package/dist/for-angular/cli/cli-module.d.ts +0 -22
  59. package/dist/for-angular/cli/cli-module.d.ts.map +0 -1
  60. package/dist/for-angular/cli/cli-module.js +0 -131
  61. package/dist/for-angular/cli/cli-module.js.map +0 -1
  62. package/dist/lib/README.md +0 -92
  63. package/dist/lib/components/component-renderer/component-renderer.component.d.ts.map +0 -1
  64. package/dist/lib/components/crud-field/crud-field.component.d.ts.map +0 -1
  65. package/dist/lib/components/crud-form/constants.d.ts.map +0 -1
  66. package/dist/lib/components/crud-form/crud-form.component.d.ts.map +0 -1
  67. package/dist/lib/components/crud-form/types.d.ts.map +0 -1
  68. package/dist/lib/components/empty-state/empty-state.component.d.ts.map +0 -1
  69. package/dist/lib/components/fieldset/fieldset.component.d.ts.map +0 -1
  70. package/dist/lib/components/filter/filter.component.d.ts.map +0 -1
  71. package/dist/lib/components/for-angular-components.module.d.ts.map +0 -1
  72. package/dist/lib/components/index.d.ts.map +0 -1
  73. package/dist/lib/components/layout/layout.component.d.ts.map +0 -1
  74. package/dist/lib/components/list/constants.d.ts.map +0 -1
  75. package/dist/lib/components/list/list.component.d.ts.map +0 -1
  76. package/dist/lib/components/list-item/list-item.component.d.ts.map +0 -1
  77. package/dist/lib/components/model-renderer/model-renderer.component.d.ts.map +0 -1
  78. package/dist/lib/components/pagination/constants.d.ts.map +0 -1
  79. package/dist/lib/components/pagination/pagination.component.d.ts.map +0 -1
  80. package/dist/lib/components/searchbar/searchbar.component.d.ts.map +0 -1
  81. package/dist/lib/decaf-ts-for-angular.d.ts.map +0 -1
  82. package/dist/lib/directives/collapsable.directive.d.ts.map +0 -1
  83. package/dist/lib/directives/index.d.ts.map +0 -1
  84. package/dist/lib/engine/DynamicModule.d.ts.map +0 -1
  85. package/dist/lib/engine/NgxBaseComponent.d.ts.map +0 -1
  86. package/dist/lib/engine/NgxCrudFormField.d.ts.map +0 -1
  87. package/dist/lib/engine/NgxFormService.d.ts.map +0 -1
  88. package/dist/lib/engine/NgxRenderingEngine.d.ts.map +0 -1
  89. package/dist/lib/engine/NgxRenderingEngine2.d.ts.map +0 -1
  90. package/dist/lib/engine/ValidatorFactory.d.ts.map +0 -1
  91. package/dist/lib/engine/constants.d.ts.map +0 -1
  92. package/dist/lib/engine/decorators.d.ts.map +0 -1
  93. package/dist/lib/engine/index.d.ts.map +0 -1
  94. package/dist/lib/engine/types.d.ts.map +0 -1
  95. package/dist/lib/esm2022/components/component-renderer/component-renderer.component.mjs +0 -359
  96. package/dist/lib/esm2022/components/crud-field/crud-field.component.mjs +0 -456
  97. package/dist/lib/esm2022/components/crud-form/crud-form.component.mjs +0 -272
  98. package/dist/lib/esm2022/components/empty-state/empty-state.component.mjs +0 -410
  99. package/dist/lib/esm2022/components/fieldset/fieldset.component.mjs +0 -250
  100. package/dist/lib/esm2022/components/filter/filter.component.mjs +0 -906
  101. package/dist/lib/esm2022/components/for-angular-components.module.mjs +0 -72
  102. package/dist/lib/esm2022/components/layout/layout.component.mjs +0 -245
  103. package/dist/lib/esm2022/components/list/list.component.mjs +0 -1405
  104. package/dist/lib/esm2022/components/list-item/list-item.component.mjs +0 -612
  105. package/dist/lib/esm2022/components/model-renderer/model-renderer.component.mjs +0 -182
  106. package/dist/lib/esm2022/components/pagination/pagination.component.mjs +0 -364
  107. package/dist/lib/esm2022/components/searchbar/searchbar.component.mjs +0 -503
  108. package/dist/lib/esm2022/directives/collapsable.directive.mjs +0 -28
  109. package/dist/lib/esm2022/engine/NgxBaseComponent.mjs +0 -546
  110. package/dist/lib/esm2022/for-angular.module.mjs +0 -119
  111. package/dist/lib/fesm2022/decaf-ts-for-angular.mjs.map +0 -1
  112. package/dist/lib/for-angular.module.d.ts.map +0 -1
  113. package/dist/lib/helpers/index.d.ts.map +0 -1
  114. package/dist/lib/helpers/utils.d.ts.map +0 -1
  115. package/dist/lib/interfaces.d.ts.map +0 -1
  116. package/dist/lib/public-apis.d.ts.map +0 -1
  117. /package/{dist/lib/assets → assets}/i18n/en.json +0 -0
  118. /package/{dist/lib/assets → assets}/images/angular-logo.svg +0 -0
  119. /package/{dist/lib/assets → assets}/images/decaf-logo-black.svg +0 -0
  120. /package/{dist/lib/assets → assets}/images/decaf-logo-lw.svg +0 -0
  121. /package/{dist/lib/assets → assets}/images/decaf-logo-white.svg +0 -0
  122. /package/{dist/lib/assets → assets}/images/decaf-logo.svg +0 -0
  123. /package/{dist/lib/esm2022 → esm2022}/components/crud-form/constants.mjs +0 -0
  124. /package/{dist/lib/esm2022 → esm2022}/components/crud-form/types.mjs +0 -0
  125. /package/{dist/lib/esm2022 → esm2022}/components/index.mjs +0 -0
  126. /package/{dist/lib/esm2022 → esm2022}/components/list/constants.mjs +0 -0
  127. /package/{dist/lib/esm2022 → esm2022}/components/pagination/constants.mjs +0 -0
  128. /package/{dist/lib/esm2022 → esm2022}/decaf-ts-for-angular.mjs +0 -0
  129. /package/{dist/lib/esm2022 → esm2022}/directives/index.mjs +0 -0
  130. /package/{dist/lib/esm2022 → esm2022}/engine/DynamicModule.mjs +0 -0
  131. /package/{dist/lib/esm2022 → esm2022}/engine/NgxCrudFormField.mjs +0 -0
  132. /package/{dist/lib/esm2022 → esm2022}/engine/NgxFormService.mjs +0 -0
  133. /package/{dist/lib/esm2022 → esm2022}/engine/NgxRenderingEngine.mjs +0 -0
  134. /package/{dist/lib/esm2022 → esm2022}/engine/NgxRenderingEngine2.mjs +0 -0
  135. /package/{dist/lib/esm2022 → esm2022}/engine/ValidatorFactory.mjs +0 -0
  136. /package/{dist/lib/esm2022 → esm2022}/engine/constants.mjs +0 -0
  137. /package/{dist/lib/esm2022 → esm2022}/engine/decorators.mjs +0 -0
  138. /package/{dist/lib/esm2022 → esm2022}/engine/index.mjs +0 -0
  139. /package/{dist/lib/esm2022 → esm2022}/engine/types.mjs +0 -0
  140. /package/{dist/lib/esm2022 → esm2022}/helpers/index.mjs +0 -0
  141. /package/{dist/lib/esm2022 → esm2022}/helpers/utils.mjs +0 -0
  142. /package/{dist/lib/esm2022 → esm2022}/interfaces.mjs +0 -0
  143. /package/{dist/lib/esm2022 → esm2022}/public-apis.mjs +0 -0
@@ -1,119 +0,0 @@
1
- import { NgModule, CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { IonApp, IonRouterOutlet, IonSplitPane, IonImg, IonContent, IonText, IonButton, IonRouterLink, IonTitle } from '@ionic/angular/standalone';
4
- import { FormsModule, ReactiveFormsModule } from '@angular/forms';
5
- import { TranslateModule, TranslatePipe } from '@ngx-translate/core';
6
- import { Logging } from '@decaf-ts/logging';
7
- import * as i0 from "@angular/core";
8
- const ComponentsAndModules = [
9
- IonApp,
10
- IonRouterOutlet,
11
- IonSplitPane,
12
- IonImg,
13
- IonText,
14
- IonTitle,
15
- IonButton,
16
- IonRouterLink,
17
- IonContent,
18
- CommonModule,
19
- FormsModule,
20
- ReactiveFormsModule,
21
- TranslateModule,
22
- TranslatePipe,
23
- ];
24
- const log = Logging.for("for-angular");
25
- export function getLogger(instance) {
26
- return log.for(instance);
27
- }
28
- /**
29
- * @description Main Angular module for the Decaf framework
30
- * @summary The ForAngularModule provides the core functionality for integrating Decaf with Angular applications.
31
- * It imports and exports common Angular and Ionic components and modules needed for Decaf applications,
32
- * including form handling, translation support, and Ionic UI components. This module can be imported
33
- * directly or via the forRoot() method for proper initialization in the application's root module.
34
- *
35
- * @class ForAngularModule
36
- * @example
37
- * ```typescript
38
- * // In your app module:
39
- * @NgModule({
40
- * imports: [
41
- * ForAngularModule.forRoot(),
42
- * // other imports
43
- * ],
44
- * // ...
45
- * })
46
- * export class AppModule {}
47
- * ```
48
- */
49
- export class ForAngularModule {
50
- /**
51
- * @description Creates a module with providers for root module import
52
- * @summary This static method provides the proper way to import the ForAngularModule in the application's
53
- * root module. It returns a ModuleWithProviders object that includes the ForAngularModule itself.
54
- * Using forRoot() ensures that the module and its providers are properly initialized and only
55
- * instantiated once in the application.
56
- *
57
- * @return {ModuleWithProviders<ForAngularModule>} The module with its providers
58
- */
59
- static forRoot() {
60
- return {
61
- ngModule: ForAngularModule,
62
- };
63
- }
64
- static { this.ɵfac = function ForAngularModule_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ForAngularModule)(); }; }
65
- static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: ForAngularModule }); }
66
- static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [IonApp,
67
- IonRouterOutlet,
68
- IonSplitPane,
69
- IonImg,
70
- IonText,
71
- IonTitle,
72
- IonButton,
73
- IonContent,
74
- CommonModule,
75
- FormsModule,
76
- ReactiveFormsModule,
77
- TranslateModule,
78
- CommonModule,
79
- FormsModule,
80
- ReactiveFormsModule,
81
- TranslateModule] }); }
82
- }
83
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ForAngularModule, [{
84
- type: NgModule,
85
- args: [{
86
- imports: ComponentsAndModules,
87
- declarations: [],
88
- exports: ComponentsAndModules,
89
- schemas: [CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA],
90
- }]
91
- }], null, null); })();
92
- (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(ForAngularModule, { imports: [IonApp,
93
- IonRouterOutlet,
94
- IonSplitPane,
95
- IonImg,
96
- IonText,
97
- IonTitle,
98
- IonButton,
99
- IonRouterLink,
100
- IonContent,
101
- CommonModule,
102
- FormsModule,
103
- ReactiveFormsModule,
104
- TranslateModule,
105
- TranslatePipe], exports: [IonApp,
106
- IonRouterOutlet,
107
- IonSplitPane,
108
- IonImg,
109
- IonText,
110
- IonTitle,
111
- IonButton,
112
- IonRouterLink,
113
- IonContent,
114
- CommonModule,
115
- FormsModule,
116
- ReactiveFormsModule,
117
- TranslateModule,
118
- TranslatePipe] }); })();
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9yLWFuZ3VsYXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9mb3ItYW5ndWxhci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxzQkFBc0IsRUFBdUIsZ0JBQWdCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCxNQUFNLEVBQ04sZUFBZSxFQUNmLFlBQVksRUFDWixNQUFNLEVBQ04sVUFBVSxFQUNWLE9BQU8sRUFDUCxTQUFTLEVBQ1QsYUFBYSxFQUNiLFFBQVEsRUFDVCxNQUFNLDJCQUEyQixDQUFDO0FBQ25DLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JFLE9BQU8sRUFBVSxPQUFPLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7QUFHcEQsTUFBTSxvQkFBb0IsR0FBRztJQUMzQixNQUFNO0lBQ04sZUFBZTtJQUNmLFlBQVk7SUFDWixNQUFNO0lBQ04sT0FBTztJQUNQLFFBQVE7SUFDUixTQUFTO0lBQ1QsYUFBYTtJQUNiLFVBQVU7SUFDVixZQUFZO0lBQ1osV0FBVztJQUNYLG1CQUFtQjtJQUNuQixlQUFlO0lBQ2YsYUFBYTtDQUNkLENBQUM7QUFFRixNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0FBQ3ZDLE1BQU0sVUFBVSxTQUFTLENBQUMsUUFBeUM7SUFDakUsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLFFBQWlDLENBQUMsQ0FBQztBQUNwRCxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHO0FBT0gsTUFBTSxPQUFPLGdCQUFnQjtJQUMzQjs7Ozs7Ozs7T0FRRztJQUNILE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxnQkFBZ0I7U0FDM0IsQ0FBQztJQUNKLENBQUM7aUhBZFUsZ0JBQWdCO21FQUFoQixnQkFBZ0I7dUVBaEQzQixNQUFNO1lBQ04sZUFBZTtZQUNmLFlBQVk7WUFDWixNQUFNO1lBQ04sT0FBTztZQUNQLFFBQVE7WUFDUixTQUFTO1lBRVQsVUFBVTtZQUNWLFlBQVk7WUFDWixXQUFXO1lBQ1gsbUJBQW1CO1lBQ25CLGVBQWU7WUFIZixZQUFZO1lBQ1osV0FBVztZQUNYLG1CQUFtQjtZQUNuQixlQUFlOztpRkFvQ0osZ0JBQWdCO2NBTjVCLFFBQVE7ZUFBQztnQkFDUixPQUFPLEVBQUUsb0JBQW9CO2dCQUM3QixZQUFZLEVBQUUsRUFBRTtnQkFDaEIsT0FBTyxFQUFFLG9CQUFvQjtnQkFDN0IsT0FBTyxFQUFFLENBQUMsc0JBQXNCLEVBQUUsZ0JBQWdCLENBQUM7YUFDcEQ7O3dGQUNZLGdCQUFnQixjQWhEM0IsTUFBTTtRQUNOLGVBQWU7UUFDZixZQUFZO1FBQ1osTUFBTTtRQUNOLE9BQU87UUFDUCxRQUFRO1FBQ1IsU0FBUztRQUNULGFBQWE7UUFDYixVQUFVO1FBQ1YsWUFBWTtRQUNaLFdBQVc7UUFDWCxtQkFBbUI7UUFDbkIsZUFBZTtRQUNmLGFBQWEsYUFiYixNQUFNO1FBQ04sZUFBZTtRQUNmLFlBQVk7UUFDWixNQUFNO1FBQ04sT0FBTztRQUNQLFFBQVE7UUFDUixTQUFTO1FBQ1QsYUFBYTtRQUNiLFVBQVU7UUFDVixZQUFZO1FBQ1osV0FBVztRQUNYLG1CQUFtQjtRQUNuQixlQUFlO1FBQ2YsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOT19FUlJPUlNfU0NIRU1BfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBJb25BcHAsXG4gIElvblJvdXRlck91dGxldCxcbiAgSW9uU3BsaXRQYW5lLFxuICBJb25JbWcsXG4gIElvbkNvbnRlbnQsXG4gIElvblRleHQsXG4gIElvbkJ1dHRvbixcbiAgSW9uUm91dGVyTGluayxcbiAgSW9uVGl0bGVcbn0gZnJvbSAnQGlvbmljL2FuZ3VsYXIvc3RhbmRhbG9uZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSwgVHJhbnNsYXRlUGlwZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTG9nZ2VyLCBMb2dnaW5nIH0gZnJvbSAnQGRlY2FmLXRzL2xvZ2dpbmcnO1xuaW1wb3J0IHsgRnVuY3Rpb25MaWtlIH0gZnJvbSAnLi9lbmdpbmUnO1xuXG5jb25zdCBDb21wb25lbnRzQW5kTW9kdWxlcyA9IFtcbiAgSW9uQXBwLFxuICBJb25Sb3V0ZXJPdXRsZXQsXG4gIElvblNwbGl0UGFuZSxcbiAgSW9uSW1nLFxuICBJb25UZXh0LFxuICBJb25UaXRsZSxcbiAgSW9uQnV0dG9uLFxuICBJb25Sb3V0ZXJMaW5rLFxuICBJb25Db250ZW50LFxuICBDb21tb25Nb2R1bGUsXG4gIEZvcm1zTW9kdWxlLFxuICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICBUcmFuc2xhdGVNb2R1bGUsXG4gIFRyYW5zbGF0ZVBpcGUsXG5dO1xuXG5jb25zdCBsb2cgPSBMb2dnaW5nLmZvcihcImZvci1hbmd1bGFyXCIpO1xuZXhwb3J0IGZ1bmN0aW9uIGdldExvZ2dlcihpbnN0YW5jZTogc3RyaW5nIHwgRnVuY3Rpb25MaWtlIHwgdW5rbm93bik6IExvZ2dlciB7XG4gIHJldHVybiBsb2cuZm9yKGluc3RhbmNlIGFzIHN0cmluZyB8IEZ1bmN0aW9uTGlrZSk7XG59XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uIE1haW4gQW5ndWxhciBtb2R1bGUgZm9yIHRoZSBEZWNhZiBmcmFtZXdvcmtcbiAqIEBzdW1tYXJ5IFRoZSBGb3JBbmd1bGFyTW9kdWxlIHByb3ZpZGVzIHRoZSBjb3JlIGZ1bmN0aW9uYWxpdHkgZm9yIGludGVncmF0aW5nIERlY2FmIHdpdGggQW5ndWxhciBhcHBsaWNhdGlvbnMuXG4gKiBJdCBpbXBvcnRzIGFuZCBleHBvcnRzIGNvbW1vbiBBbmd1bGFyIGFuZCBJb25pYyBjb21wb25lbnRzIGFuZCBtb2R1bGVzIG5lZWRlZCBmb3IgRGVjYWYgYXBwbGljYXRpb25zLFxuICogaW5jbHVkaW5nIGZvcm0gaGFuZGxpbmcsIHRyYW5zbGF0aW9uIHN1cHBvcnQsIGFuZCBJb25pYyBVSSBjb21wb25lbnRzLiBUaGlzIG1vZHVsZSBjYW4gYmUgaW1wb3J0ZWRcbiAqIGRpcmVjdGx5IG9yIHZpYSB0aGUgZm9yUm9vdCgpIG1ldGhvZCBmb3IgcHJvcGVyIGluaXRpYWxpemF0aW9uIGluIHRoZSBhcHBsaWNhdGlvbidzIHJvb3QgbW9kdWxlLlxuICpcbiAqIEBjbGFzcyBGb3JBbmd1bGFyTW9kdWxlXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogLy8gSW4geW91ciBhcHAgbW9kdWxlOlxuICogQE5nTW9kdWxlKHtcbiAqICAgaW1wb3J0czogW1xuICogICAgIEZvckFuZ3VsYXJNb2R1bGUuZm9yUm9vdCgpLFxuICogICAgIC8vIG90aGVyIGltcG9ydHNcbiAqICAgXSxcbiAqICAgLy8gLi4uXG4gKiB9KVxuICogZXhwb3J0IGNsYXNzIEFwcE1vZHVsZSB7fVxuICogYGBgXG4gKi9cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IENvbXBvbmVudHNBbmRNb2R1bGVzLFxuICBkZWNsYXJhdGlvbnM6IFtdLFxuICBleHBvcnRzOiBDb21wb25lbnRzQW5kTW9kdWxlcyxcbiAgc2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIE5PX0VSUk9SU19TQ0hFTUFdLFxufSlcbmV4cG9ydCBjbGFzcyBGb3JBbmd1bGFyTW9kdWxlIHtcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvbiBDcmVhdGVzIGEgbW9kdWxlIHdpdGggcHJvdmlkZXJzIGZvciByb290IG1vZHVsZSBpbXBvcnRcbiAgICogQHN1bW1hcnkgVGhpcyBzdGF0aWMgbWV0aG9kIHByb3ZpZGVzIHRoZSBwcm9wZXIgd2F5IHRvIGltcG9ydCB0aGUgRm9yQW5ndWxhck1vZHVsZSBpbiB0aGUgYXBwbGljYXRpb24nc1xuICAgKiByb290IG1vZHVsZS4gSXQgcmV0dXJucyBhIE1vZHVsZVdpdGhQcm92aWRlcnMgb2JqZWN0IHRoYXQgaW5jbHVkZXMgdGhlIEZvckFuZ3VsYXJNb2R1bGUgaXRzZWxmLlxuICAgKiBVc2luZyBmb3JSb290KCkgZW5zdXJlcyB0aGF0IHRoZSBtb2R1bGUgYW5kIGl0cyBwcm92aWRlcnMgYXJlIHByb3Blcmx5IGluaXRpYWxpemVkIGFuZCBvbmx5XG4gICAqIGluc3RhbnRpYXRlZCBvbmNlIGluIHRoZSBhcHBsaWNhdGlvbi5cbiAgICpcbiAgICogQHJldHVybiB7TW9kdWxlV2l0aFByb3ZpZGVyczxGb3JBbmd1bGFyTW9kdWxlPn0gVGhlIG1vZHVsZSB3aXRoIGl0cyBwcm92aWRlcnNcbiAgICovXG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8Rm9yQW5ndWxhck1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogRm9yQW5ndWxhck1vZHVsZSxcbiAgICB9O1xuICB9XG59XG4iXX0=