@wemake4u/form-player-se 1.0.39 → 1.0.41

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 (86) hide show
  1. package/esm2022/lib/builtIn/builtIn.mjs +24 -0
  2. package/esm2022/lib/builtIn/console.json +253 -0
  3. package/esm2022/lib/builtIn/dialog.json +109 -0
  4. package/esm2022/lib/builtIn/feel.json +26 -0
  5. package/esm2022/lib/builtIn/form.json +172 -0
  6. package/esm2022/lib/builtIn/formGroup.json +218 -0
  7. package/esm2022/lib/builtIn/formatter.json +112 -0
  8. package/esm2022/lib/builtIn/function.json +53 -0
  9. package/esm2022/lib/builtIn/register.json +14 -0
  10. package/esm2022/lib/components/setFilter/setFilter.component.mjs +35 -5
  11. package/esm2022/lib/controls/accordion.mjs +50 -3
  12. package/esm2022/lib/controls/control.mjs +70 -25
  13. package/esm2022/lib/controls/factory.mjs +42 -42
  14. package/esm2022/lib/controls/tab.mjs +47 -25
  15. package/esm2022/lib/controls/table.mjs +89 -15
  16. package/esm2022/lib/controls/textfield.mjs +4 -3
  17. package/esm2022/lib/directives/accordionpanel.directive.mjs +10 -5
  18. package/esm2022/lib/directives/collapse.directive.mjs +22 -12
  19. package/esm2022/lib/directives/collapsepatch.directive.mjs +2 -1
  20. package/esm2022/lib/directives/datetime.directive.mjs +18 -21
  21. package/esm2022/lib/directives/dropdown.directive.mjs +31 -16
  22. package/esm2022/lib/directives/grid.directive.mjs +10 -8
  23. package/esm2022/lib/directives/readonly.directive.mjs +10 -9
  24. package/esm2022/lib/directives/register.directive.mjs +32 -15
  25. package/esm2022/lib/directives/required.directive.mjs +57 -0
  26. package/esm2022/lib/directives/tabcontrol.directive.mjs +10 -9
  27. package/esm2022/lib/dynamic-fields/dynamic-fields.component.mjs +28 -5
  28. package/esm2022/lib/dynamic-form/dynamic-form.component.mjs +46 -21
  29. package/esm2022/lib/dynamic-host/dynamic-host.component.mjs +32 -10
  30. package/esm2022/lib/services/event.service.mjs +17 -6
  31. package/esm2022/lib/services/formatter.service.mjs +3 -1
  32. package/esm2022/lib/services/grid.service.mjs +4 -1
  33. package/esm2022/lib/services/listener.service.mjs +23 -0
  34. package/esm2022/lib/services/navigation.service.mjs +35 -0
  35. package/esm2022/lib/services/programmability.service.mjs +54 -38
  36. package/esm2022/lib/services/register.service.mjs +40 -2
  37. package/esm2022/lib/services/state.service.mjs +40 -0
  38. package/esm2022/lib/services/status.service.mjs +10 -5
  39. package/esm2022/lib/services/subscribe.service.mjs +54 -0
  40. package/esm2022/lib/services/validation.service.mjs +11 -2
  41. package/esm2022/lib/utils/deepEqual.mjs +46 -0
  42. package/esm2022/lib/utils/navigation.mjs +20 -0
  43. package/esm2022/lib/utils/observable.mjs +7 -0
  44. package/esm2022/lib/utils/patch.mjs +17 -0
  45. package/esm2022/lib/utils/proxy.mjs +28 -1
  46. package/esm2022/lib/utils/resolveRefs.mjs +67 -0
  47. package/esm2022/public-api.mjs +7 -1
  48. package/fesm2022/wemake4u-form-player-se.mjs +2027 -276
  49. package/fesm2022/wemake4u-form-player-se.mjs.map +1 -1
  50. package/lib/builtIn/builtIn.d.ts +32 -0
  51. package/lib/components/setFilter/setFilter.component.d.ts +1 -0
  52. package/lib/controls/accordion.d.ts +5 -1
  53. package/lib/controls/control.d.ts +31 -12
  54. package/lib/controls/factory.d.ts +2 -4
  55. package/lib/controls/tab.d.ts +9 -6
  56. package/lib/controls/table.d.ts +16 -5
  57. package/lib/controls/textfield.d.ts +1 -1
  58. package/lib/directives/accordionpanel.directive.d.ts +4 -2
  59. package/lib/directives/collapse.directive.d.ts +5 -3
  60. package/lib/directives/datetime.directive.d.ts +7 -8
  61. package/lib/directives/dropdown.directive.d.ts +6 -3
  62. package/lib/directives/grid.directive.d.ts +4 -3
  63. package/lib/directives/readonly.directive.d.ts +3 -4
  64. package/lib/directives/register.directive.d.ts +4 -3
  65. package/lib/directives/required.directive.d.ts +17 -0
  66. package/lib/directives/tabcontrol.directive.d.ts +5 -6
  67. package/lib/dynamic-fields/dynamic-fields.component.d.ts +4 -1
  68. package/lib/dynamic-form/dynamic-form.component.d.ts +4 -1
  69. package/lib/dynamic-host/dynamic-host.component.d.ts +6 -2
  70. package/lib/services/event.service.d.ts +8 -2
  71. package/lib/services/listener.service.d.ts +11 -0
  72. package/lib/services/navigation.service.d.ts +11 -0
  73. package/lib/services/programmability.service.d.ts +8 -9
  74. package/lib/services/register.service.d.ts +9 -0
  75. package/lib/services/state.service.d.ts +14 -0
  76. package/lib/services/status.service.d.ts +5 -1
  77. package/lib/services/subscribe.service.d.ts +14 -0
  78. package/lib/services/validation.service.d.ts +5 -2
  79. package/lib/utils/deepEqual.d.ts +1 -0
  80. package/lib/utils/navigation.d.ts +6 -0
  81. package/lib/utils/observable.d.ts +2 -0
  82. package/lib/utils/patch.d.ts +1 -0
  83. package/lib/utils/proxy.d.ts +2 -0
  84. package/lib/utils/resolveRefs.d.ts +12 -0
  85. package/package.json +1 -1
  86. package/public-api.d.ts +6 -0
@@ -1,44 +1,89 @@
1
+ import { StateService } from "../services/state.service";
1
2
  export class Control {
2
- name;
3
- metadata;
4
- componentRef;
5
- elementRef;
6
- constructor(name, metadata, componentRef, elementRef) {
7
- this.name = name;
8
- this.metadata = metadata;
9
- this.componentRef = componentRef;
10
- this.elementRef = elementRef;
3
+ context;
4
+ constructor(context) {
5
+ if (!context) {
6
+ throw new Error('ControlContext must not be null or undefined');
7
+ }
8
+ this.context = context;
9
+ context.destroyRef?.onDestroy(() => {
10
+ this.onSaveState();
11
+ this.onDestroy();
12
+ });
13
+ this.onInit();
14
+ setTimeout(() => this.onLoadState());
15
+ }
16
+ get name() {
17
+ return this.context.name;
11
18
  }
12
19
  getMetadata() {
13
- return this.metadata;
20
+ return this.context.metadata;
14
21
  }
15
22
  getComponentRef() {
16
- return this.componentRef;
23
+ return this.context.componentRef;
17
24
  }
18
25
  getElementRef() {
19
- return this.elementRef;
26
+ return this.context.elementRef;
27
+ }
28
+ getInjector() {
29
+ return this.context.injector;
30
+ }
31
+ getDestroyRef() {
32
+ return this.context.destroyRef;
33
+ }
34
+ getRegister() {
35
+ return this.context.register;
36
+ }
37
+ onInit() {
38
+ }
39
+ onLoadState() {
40
+ }
41
+ onSaveState() {
42
+ }
43
+ onDestroy() {
44
+ }
45
+ getState() {
46
+ const id = this.getId();
47
+ if (!id)
48
+ return null;
49
+ return this.State()?.getState(id);
50
+ }
51
+ setState(state) {
52
+ const id = this.getId();
53
+ if (!id)
54
+ return;
55
+ this.State()?.setState(id, state);
56
+ }
57
+ clearState() {
58
+ const id = this.getId();
59
+ if (!id)
60
+ return;
61
+ this.State()?.clearState(id);
62
+ }
63
+ //#region Private Members
64
+ getId() {
65
+ return `${this.context.path}.${this.context.name}`;
66
+ }
67
+ State() {
68
+ return this.getInjector().get(StateService);
20
69
  }
21
70
  }
22
71
  export class ContainerControl extends Control {
23
- register;
24
- constructor(name, metadata, componentRef, elementRef, register) {
25
- super(name, metadata, componentRef, elementRef);
26
- this.register = register;
72
+ constructor(context) {
73
+ super(context);
27
74
  }
28
75
  findControl(predicate, firstOnly) {
29
- if (this.register) {
30
- return this.register.findControl(predicate, firstOnly, false);
31
- }
32
- else {
33
- return [];
34
- }
76
+ const register = this.getRegister();
77
+ return register
78
+ ? register.findControl(predicate, firstOnly, false)
79
+ : [];
35
80
  }
36
81
  }
37
82
  export class ItemControl extends ContainerControl {
38
83
  index;
39
- constructor(name, index, metadata, componentRef, elementRef, register) {
40
- super(name, metadata, componentRef, elementRef, register);
84
+ constructor(context, index) {
85
+ super(context);
41
86
  this.index = index;
42
87
  }
43
88
  }
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zaXJpby9zcmMvbGliL2NvbnRyb2xzL2NvbnRyb2wudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxPQUFPLE9BQU87SUFFQTtJQUNDO0lBQ0E7SUFDQTtJQUpuQixZQUNrQixJQUFZLEVBQ1gsUUFBYSxFQUNiLFlBQWlCLEVBQ2pCLFVBQXNCO1FBSHZCLFNBQUksR0FBSixJQUFJLENBQVE7UUFDWCxhQUFRLEdBQVIsUUFBUSxDQUFLO1FBQ2IsaUJBQVksR0FBWixZQUFZLENBQUs7UUFDakIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtJQUN6QyxDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsZUFBZTtRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBRUQsYUFBYTtRQUNYLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsT0FBTztJQU1uQztJQUxSLFlBQ0EsSUFBWSxFQUNaLFFBQWEsRUFDYixZQUFpQixFQUNqQixVQUFzQixFQUNkLFFBQXFDO1FBQzNDLEtBQUssQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxVQUFVLENBQUMsQ0FBQztRQUQxQyxhQUFRLEdBQVIsUUFBUSxDQUE2QjtJQUU3QyxDQUFDO0lBRUQsV0FBVyxDQUFDLFNBQXdDLEVBQUUsU0FBa0I7UUFDdEUsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2hFLENBQUM7YUFDSSxDQUFDO1lBQ0osT0FBTyxFQUFFLENBQUM7UUFDWixDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLFdBQVksU0FBUSxnQkFBZ0I7SUFJN0I7SUFGbEIsWUFDRSxJQUFZLEVBQ0ksS0FBYSxFQUM3QixRQUFhLEVBQ2IsWUFBaUIsRUFDakIsVUFBc0IsRUFDdEIsUUFBcUM7UUFDckMsS0FBSyxDQUFDLElBQUksRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUwxQyxVQUFLLEdBQUwsS0FBSyxDQUFRO0lBTS9CLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnRSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBSZWdpc3RlclNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvcmVnaXN0ZXIuc2VydmljZVwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIENvbnRyb2wge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHJlYWRvbmx5IG5hbWU6IHN0cmluZyxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgbWV0YWRhdGE6IGFueSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgY29tcG9uZW50UmVmOiBhbnksXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHtcclxuICB9XHJcblxyXG4gIGdldE1ldGFkYXRhKCk6IGFueSB7XHJcbiAgICByZXR1cm4gdGhpcy5tZXRhZGF0YTtcclxuICB9XHJcblxyXG4gIGdldENvbXBvbmVudFJlZigpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50UmVmO1xyXG4gIH1cclxuXHJcbiAgZ2V0RWxlbWVudFJlZigpOiBFbGVtZW50UmVmIHtcclxuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWY7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQ29udGFpbmVyQ29udHJvbCBleHRlbmRzIENvbnRyb2wge1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gIG5hbWU6IHN0cmluZyxcclxuICBtZXRhZGF0YTogYW55LFxyXG4gIGNvbXBvbmVudFJlZjogYW55LFxyXG4gIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgcHJpdmF0ZSByZWdpc3RlcjogUmVnaXN0ZXJTZXJ2aWNlIHwgdW5kZWZpbmVkKSB7XHJcbiAgICBzdXBlcihuYW1lLCBtZXRhZGF0YSwgY29tcG9uZW50UmVmLCBlbGVtZW50UmVmKTtcclxuICB9XHJcblxyXG4gIGZpbmRDb250cm9sKHByZWRpY2F0ZTogKGNvbnRyb2w6IENvbnRyb2wpID0+IGJvb2xlYW4sIGZpcnN0T25seTogYm9vbGVhbik6IENvbnRyb2xbXSB7XHJcbiAgICBpZiAodGhpcy5yZWdpc3Rlcikge1xyXG4gICAgICByZXR1cm4gdGhpcy5yZWdpc3Rlci5maW5kQ29udHJvbChwcmVkaWNhdGUsIGZpcnN0T25seSwgZmFsc2UpO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHJldHVybiBbXTtcclxuICAgIH1cclxuICB9ICBcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEl0ZW1Db250cm9sIGV4dGVuZHMgQ29udGFpbmVyQ29udHJvbCB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgbmFtZTogc3RyaW5nLFxyXG4gICAgcHVibGljIHJlYWRvbmx5IGluZGV4OiBudW1iZXIsXHJcbiAgICBtZXRhZGF0YTogYW55LFxyXG4gICAgY29tcG9uZW50UmVmOiBhbnksXHJcbiAgICBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgcmVnaXN0ZXI6IFJlZ2lzdGVyU2VydmljZSB8IHVuZGVmaW5lZCkge1xyXG4gICAgc3VwZXIobmFtZSwgbWV0YWRhdGEsIGNvbXBvbmVudFJlZiwgZWxlbWVudFJlZiwgcmVnaXN0ZXIpO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zaXJpby9zcmMvbGliL2NvbnRyb2xzL2NvbnRyb2wudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXpELE1BQU0sT0FBTyxPQUFPO0lBRUQsT0FBTyxDQUFpQjtJQUV6QyxZQUFZLE9BQXVCO1FBQ2pDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNiLE1BQU0sSUFBSSxLQUFLLENBQUMsOENBQThDLENBQUMsQ0FBQztRQUNsRSxDQUFDO1FBRUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFFdkIsT0FBTyxDQUFDLFVBQVUsRUFBRSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2pDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFZCxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELElBQVcsSUFBSTtRQUNiLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7SUFDM0IsQ0FBQztJQUVTLFdBQVc7UUFDbkIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztJQUMvQixDQUFDO0lBRVMsZUFBZTtRQUN2QixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDO0lBQ25DLENBQUM7SUFFUyxhQUFhO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUM7SUFDakMsQ0FBQztJQUVTLFdBQVc7UUFDbkIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztJQUMvQixDQUFDO0lBRVMsYUFBYTtRQUNyQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDO0lBQ2pDLENBQUM7SUFFUyxXQUFXO1FBQ25CLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7SUFDL0IsQ0FBQztJQUVTLE1BQU07SUFDaEIsQ0FBQztJQUVTLFdBQVc7SUFDckIsQ0FBQztJQUVTLFdBQVc7SUFDckIsQ0FBQztJQUVTLFNBQVM7SUFDbkIsQ0FBQztJQUVTLFFBQVE7UUFDaEIsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxFQUFFO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDckIsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFUyxRQUFRLENBQUMsS0FBVTtRQUMzQixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLEVBQUU7WUFBRSxPQUFPO1FBQ2hCLElBQUksQ0FBQyxLQUFLLEVBQUUsRUFBRSxRQUFRLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFUyxVQUFVO1FBQ2xCLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsRUFBRTtZQUFFLE9BQU87UUFDaEIsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQseUJBQXlCO0lBRWpCLEtBQUs7UUFDWCxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyRCxDQUFDO0lBRU8sS0FBSztRQUNYLE9BQU8sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUM5QyxDQUFDO0NBSUY7QUFFRCxNQUFNLE9BQU8sZ0JBQWlCLFNBQVEsT0FBTztJQUUzQyxZQUFZLE9BQXVCO1FBQ2pDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0lBRUQsV0FBVyxDQUNULFNBQXdDLEVBQ3hDLFNBQWtCO1FBRWxCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQyxPQUFPLFFBQVE7WUFDYixDQUFDLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQztZQUNuRCxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQ1QsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLFdBQVksU0FBUSxnQkFBZ0I7SUFHN0I7SUFEbEIsWUFBWSxPQUF1QixFQUNqQixLQUFhO1FBQzdCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQURDLFVBQUssR0FBTCxLQUFLLENBQVE7SUFFL0IsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiwgSW5qZWN0b3IsIERlc3Ryb3lSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBSZWdpc3RlclNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvcmVnaXN0ZXIuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBTdGF0ZVNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvc3RhdGUuc2VydmljZVwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIENvbnRyb2wge1xyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IGNvbnRleHQ6IENvbnRyb2xDb250ZXh0O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihjb250ZXh0OiBDb250cm9sQ29udGV4dCkge1xyXG4gICAgaWYgKCFjb250ZXh0KSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcignQ29udHJvbENvbnRleHQgbXVzdCBub3QgYmUgbnVsbCBvciB1bmRlZmluZWQnKTtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmNvbnRleHQgPSBjb250ZXh0O1xyXG5cclxuICAgIGNvbnRleHQuZGVzdHJveVJlZj8ub25EZXN0cm95KCgpID0+IHtcclxuICAgICAgdGhpcy5vblNhdmVTdGF0ZSgpO1xyXG4gICAgICB0aGlzLm9uRGVzdHJveSgpO1xyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5vbkluaXQoKTtcclxuXHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMub25Mb2FkU3RhdGUoKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IG5hbWUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmNvbnRleHQubmFtZTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBnZXRNZXRhZGF0YSgpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29udGV4dC5tZXRhZGF0YTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBnZXRDb21wb25lbnRSZWYoKTogYW55IHtcclxuICAgIHJldHVybiB0aGlzLmNvbnRleHQuY29tcG9uZW50UmVmO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGdldEVsZW1lbnRSZWYoKTogRWxlbWVudFJlZiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0LmVsZW1lbnRSZWY7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgZ2V0SW5qZWN0b3IoKTogSW5qZWN0b3Ige1xyXG4gICAgcmV0dXJuIHRoaXMuY29udGV4dC5pbmplY3RvcjtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBnZXREZXN0cm95UmVmKCk6IERlc3Ryb3lSZWYge1xyXG4gICAgcmV0dXJuIHRoaXMuY29udGV4dC5kZXN0cm95UmVmO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIGdldFJlZ2lzdGVyKCk6IFJlZ2lzdGVyU2VydmljZSB8IHVuZGVmaW5lZCB7XHJcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0LnJlZ2lzdGVyO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIG9uSW5pdCgpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBvbkxvYWRTdGF0ZSgpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBvblNhdmVTdGF0ZSgpOiB2b2lkIHtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBvbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgfVxyXG5cclxuICBwcm90ZWN0ZWQgZ2V0U3RhdGU8VCA9IGFueT4oKTogVCB8IG51bGwge1xyXG4gICAgY29uc3QgaWQgPSB0aGlzLmdldElkKCk7XHJcbiAgICBpZiAoIWlkKSByZXR1cm4gbnVsbDtcclxuICAgIHJldHVybiB0aGlzLlN0YXRlKCk/LmdldFN0YXRlKGlkKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBzZXRTdGF0ZShzdGF0ZTogYW55KTogdm9pZCB7XHJcbiAgICBjb25zdCBpZCA9IHRoaXMuZ2V0SWQoKTtcclxuICAgIGlmICghaWQpIHJldHVybjtcclxuICAgIHRoaXMuU3RhdGUoKT8uc2V0U3RhdGUoaWQsIHN0YXRlKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBjbGVhclN0YXRlKCk6IHZvaWQge1xyXG4gICAgY29uc3QgaWQgPSB0aGlzLmdldElkKCk7XHJcbiAgICBpZiAoIWlkKSByZXR1cm47XHJcbiAgICB0aGlzLlN0YXRlKCk/LmNsZWFyU3RhdGUoaWQpO1xyXG4gIH1cclxuXHJcbiAgLy8jcmVnaW9uIFByaXZhdGUgTWVtYmVyc1xyXG5cclxuICBwcml2YXRlIGdldElkKCk6IHN0cmluZyB8IG51bGwge1xyXG4gICAgcmV0dXJuIGAke3RoaXMuY29udGV4dC5wYXRofS4ke3RoaXMuY29udGV4dC5uYW1lfWA7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIFN0YXRlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0SW5qZWN0b3IoKS5nZXQoU3RhdGVTZXJ2aWNlKTtcclxuICB9XHJcblxyXG4gIC8vI2VuZHJlZ2lvblxyXG5cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIENvbnRhaW5lckNvbnRyb2wgZXh0ZW5kcyBDb250cm9sIHtcclxuXHJcbiAgY29uc3RydWN0b3IoY29udGV4dDogQ29udHJvbENvbnRleHQpIHtcclxuICAgIHN1cGVyKGNvbnRleHQpO1xyXG4gIH1cclxuXHJcbiAgZmluZENvbnRyb2woXHJcbiAgICBwcmVkaWNhdGU6IChjb250cm9sOiBDb250cm9sKSA9PiBib29sZWFuLFxyXG4gICAgZmlyc3RPbmx5OiBib29sZWFuXHJcbiAgKTogQ29udHJvbFtdIHtcclxuICAgIGNvbnN0IHJlZ2lzdGVyID0gdGhpcy5nZXRSZWdpc3RlcigpO1xyXG4gICAgcmV0dXJuIHJlZ2lzdGVyXHJcbiAgICAgID8gcmVnaXN0ZXIuZmluZENvbnRyb2wocHJlZGljYXRlLCBmaXJzdE9ubHksIGZhbHNlKVxyXG4gICAgICA6IFtdO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEl0ZW1Db250cm9sIGV4dGVuZHMgQ29udGFpbmVyQ29udHJvbCB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKGNvbnRleHQ6IENvbnRyb2xDb250ZXh0LFxyXG4gICAgcHVibGljIHJlYWRvbmx5IGluZGV4OiBudW1iZXIpIHtcclxuICAgIHN1cGVyKGNvbnRleHQpO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ29udHJvbENvbnRleHQge1xyXG4gIG5hbWU6IHN0cmluZztcclxuICBwYXRoOiBzdHJpbmc7XHJcbiAgbWV0YWRhdGE6IGFueTtcclxuICBjb21wb25lbnRSZWY6IGFueTtcclxuICBlbGVtZW50UmVmOiBFbGVtZW50UmVmO1xyXG4gIGluamVjdG9yOiBJbmplY3RvcjtcclxuICBkZXN0cm95UmVmOiBEZXN0cm95UmVmO1xyXG4gIHJlZ2lzdGVyPzogUmVnaXN0ZXJTZXJ2aWNlOyAgXHJcbn1cclxuIl19
@@ -29,91 +29,91 @@ import { SpacerControl } from '../controls/spacer';
29
29
  import { IFrameControl } from '../controls/iframe';
30
30
  import { TooltipControl } from '../controls/tooltip';
31
31
  import { DisplayFieldControl } from '../controls/displayfield';
32
- export function createControl(name, metadata, componentRef, elementRef, register) {
33
- switch (metadata.type) {
32
+ export function createControl(context) {
33
+ switch (context.metadata.type) {
34
34
  case "default":
35
- return new FormControl(name, metadata, componentRef, elementRef, register);
35
+ return new FormControl(context);
36
36
  case "textfield":
37
- return new TextFieldControl(name, metadata, componentRef, elementRef);
37
+ return new TextFieldControl(context);
38
38
  case "select":
39
- return new SelectControl(name, metadata, componentRef, elementRef);
39
+ return new SelectControl(context);
40
40
  case "taglist":
41
- return new TagListControl(name, metadata, componentRef, elementRef);
41
+ return new TagListControl(context);
42
42
  case "number":
43
- return new NumberControl(name, metadata, componentRef, elementRef);
43
+ return new NumberControl(context);
44
44
  case "datetime":
45
- switch (metadata.subtype) {
45
+ switch (context.metadata.subtype) {
46
46
  case "date":
47
- return new DateControl(name, metadata, componentRef, elementRef);
47
+ return new DateControl(context);
48
48
  case "time":
49
- return new TimeControl(name, metadata, componentRef, elementRef);
49
+ return new TimeControl(context);
50
50
  default:
51
- return new Control(name, metadata, componentRef, elementRef);
51
+ return new Control(context);
52
52
  }
53
53
  case "checkbox":
54
- switch (metadata.subtype) {
54
+ switch (context.metadata.subtype) {
55
55
  case "toggle":
56
- return new ToggleControl(name, metadata, componentRef, elementRef);
56
+ return new ToggleControl(context);
57
57
  default:
58
- return new CheckBoxControl(name, metadata, componentRef, elementRef);
58
+ return new CheckBoxControl(context);
59
59
  }
60
60
  case "radio":
61
- switch (metadata.subtype) {
61
+ switch (context.metadata.subtype) {
62
62
  case "chip":
63
- return new ChipRadioControl(name, metadata, componentRef, elementRef);
63
+ return new ChipRadioControl(context);
64
64
  default:
65
- return new RadioControl(name, metadata, componentRef, elementRef);
65
+ return new RadioControl(context);
66
66
  }
67
67
  case "checklist":
68
- switch (metadata.subtype) {
68
+ switch (context.metadata.subtype) {
69
69
  case "chip":
70
- return new ChipCheckListControl(name, metadata, componentRef, elementRef);
70
+ return new ChipCheckListControl(context);
71
71
  default:
72
- return new CheckListControl(name, metadata, componentRef, elementRef);
72
+ return new CheckListControl(context);
73
73
  }
74
74
  case "textarea":
75
- return new TextAreaControl(name, metadata, componentRef, elementRef);
75
+ return new TextAreaControl(context);
76
76
  case "filepicker":
77
- return new FilePickerControl(name, metadata, componentRef, elementRef);
77
+ return new FilePickerControl(context);
78
78
  case "displayfield":
79
- return new DisplayFieldControl(name, metadata, componentRef, elementRef);
79
+ return new DisplayFieldControl(context);
80
80
  case "text":
81
- return new TextControl(name, metadata, componentRef, elementRef);
81
+ return new TextControl(context);
82
82
  case "html":
83
- return new HtmlControl(name, metadata, componentRef, elementRef);
83
+ return new HtmlControl(context);
84
84
  case "image":
85
- return new ImageControl(name, metadata, componentRef, elementRef);
85
+ return new ImageControl(context);
86
86
  case "dynamiclist":
87
- switch (metadata.subtype) {
87
+ switch (context.metadata.subtype) {
88
88
  case "tab":
89
- return new TabControl(name, metadata, componentRef, elementRef, register);
89
+ return new TabControl(context);
90
90
  case "accordion":
91
- return new AccordionControl(name, metadata, componentRef, elementRef, register);
91
+ return new AccordionControl(context);
92
92
  default:
93
- return new DynamicListControl(name, metadata, componentRef, elementRef, register);
93
+ return new DynamicListControl(context);
94
94
  }
95
95
  case "group":
96
- return new GroupControl(name, metadata, componentRef, elementRef, register);
96
+ return new GroupControl(context);
97
97
  case "table":
98
- return new TableControl(name, metadata, componentRef, elementRef);
98
+ return new TableControl(context);
99
99
  case "chart":
100
- return new ChartControl(name, metadata, componentRef, elementRef);
100
+ return new ChartControl(context);
101
101
  case "button":
102
- return new ButtonControl(name, metadata, componentRef, elementRef);
102
+ return new ButtonControl(context);
103
103
  case "separator":
104
- return new SeparatorControl(name, metadata, componentRef, elementRef);
104
+ return new SeparatorControl(context);
105
105
  case "spacer":
106
- return new SpacerControl(name, metadata, componentRef, elementRef);
106
+ return new SpacerControl(context);
107
107
  case "iframe":
108
- return new IFrameControl(name, metadata, componentRef, elementRef);
108
+ return new IFrameControl(context);
109
109
  case "tooltip":
110
- return new TooltipControl(name, metadata, componentRef, elementRef);
110
+ return new TooltipControl(context);
111
111
  case "tab":
112
- return new TabControl(name, metadata, componentRef, elementRef, register);
112
+ return new TabControl(context);
113
113
  case "accordion":
114
- return new AccordionControl(name, metadata, componentRef, elementRef, register);
114
+ return new AccordionControl(context);
115
115
  default:
116
- return new Control(name, metadata, componentRef, elementRef);
116
+ return new Control(context);
117
117
  }
118
118
  }
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zaXJpby9zcmMvbGliL2NvbnRyb2xzL2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDL0MsT0FBTyxF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RUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRXJFLEtBQUssU0FBUztZQUNaLE9BQU8sSUFBSSxjQUFjLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFFdEUsS0FBSyxLQUFLO1lBQ1IsT0FBTyxJQUFJLFVBQVUsQ0FBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFFNUUsS0FBSyxXQUFXO1lBQ2QsT0FBTyxJQUFJLGdCQUFnQixDQUFDLElBQUksRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUVsRjtZQUNFLE9BQU8sSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDakUsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9jb250cm9sJztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9mb3JtJztcclxuaW1wb3J0IHsgVGV4dEZpZWxkQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL3RleHRmaWVsZCc7XHJcbmltcG9ydCB7IFNlbGVjdENvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9zZWxlY3QnO1xyXG5pbXBvcnQgeyBUYWdMaXN0Q29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL3RhZ2xpc3QnO1xyXG5pbXBvcnQgeyBOdW1iZXJDb250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvbnVtYmVyJztcclxuaW1wb3J0IHsgRGF0ZUNvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9kYXRlJztcclxuaW1wb3J0IHsgVGltZUNvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy90aW1lJztcclxuaW1wb3J0IHsgVG9nZ2xlQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL3RvZ2dsZSc7XHJcbmltcG9ydCB7IENoZWNrQm94Q29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL2NoZWNrYm94JztcclxuaW1wb3J0IHsgQ2hpcFJhZGlvQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL2NoaXByYWRpbyc7XHJcbmltcG9ydCB7IFJhZGlvQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL3JhZGlvJztcclxuaW1wb3J0IHsgQ2hpcENoZWNrTGlzdENvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9jaGlwY2hlY2tsaXN0JztcclxuaW1wb3J0IHsgQ2hlY2tMaXN0Q29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL2NoZWNrbGlzdCc7XHJcbmltcG9ydCB7IFRleHRBcmVhQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL3RleHRhcmVhJztcclxuaW1wb3J0IHsgRmlsZVBpY2tlckNvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9maWxlcGlja2VyJztcclxuaW1wb3J0IHsgVGV4dENvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy90ZXh0JztcclxuaW1wb3J0IHsgSHRtbENvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9odG1sJztcclxuaW1wb3J0IHsgSW1hZ2VDb250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvaW1hZ2UnO1xyXG5pbXBvcnQgeyBUYWJDb250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvdGFiJztcclxuaW1wb3J0IHsgQ2hhcnRDb250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvY2hhcnQnO1xyXG5pbXBvcnQgeyBBY2NvcmRpb25Db250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvYWNjb3JkaW9uJztcclxuaW1wb3J0IHsgRHluYW1pY0xpc3RDb250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvZHluYW1pY2xpc3QnO1xyXG5pbXBvcnQgeyBHcm91cENvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9ncm91cCc7XHJcbmltcG9ydCB7IFRhYmxlQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL3RhYmxlJztcclxuaW1wb3J0IHsgQnV0dG9uQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL2J1dHRvbic7XHJcbmltcG9ydCB7IFNlcGFyYXRvckNvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9zZXBhcmF0b3InO1xyXG5pbXBvcnQgeyBTcGFjZXJDb250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvc3BhY2VyJztcclxuaW1wb3J0IHsgSUZyYW1lQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL2lmcmFtZSc7XHJcbmltcG9ydCB7IFRvb2x0aXBDb250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvdG9vbHRpcCc7XHJcbmltcG9ydCB7IERpc3BsYXlGaWVsZENvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9kaXNwbGF5ZmllbGQnO1xyXG5pbXBvcnQgeyBSZWdpc3RlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9yZWdpc3Rlci5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVDb250cm9sKG5hbWU6IHN0cmluZ1xyXG4gICwgbWV0YWRhdGE6IGFueVxyXG4gICwgY29tcG9uZW50UmVmOiBhbnlcclxuICAsIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWZcclxuICAsIHJlZ2lzdGVyOiBSZWdpc3RlclNlcnZpY2UgfCB1bmRlZmluZWQpIDogQ29udHJvbCB7XHJcblxyXG4gIHN3aXRjaCAobWV0YWRhdGEudHlwZSkge1xyXG5cclxuICAgIGNhc2UgXCJkZWZhdWx0XCI6XHJcbiAgICAgIHJldHVybiBuZXcgRm9ybUNvbnRyb2wobmFtZSwgbWV0YWRhdGEsIGNvbXBvbmVudFJlZiwgZWxlbWVudFJlZiwgcmVnaXN0ZXIpO1xyXG5cclxuICAgIGNhc2UgXCJ0ZXh0ZmllbGRcIjpcclxuICAgICAgcmV0dXJuIG5ldyBUZXh0RmllbGRDb250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYpO1xyXG5cclxuICAgIGNhc2UgXCJzZWxlY3RcIjpcclxuICAgICAgcmV0dXJuIG5ldyBTZWxlY3RDb250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYpO1xyXG5cclxuICAgIGNhc2UgXCJ0YWdsaXN0XCI6XHJcbiAgICAgIHJldHVybiBuZXcgVGFnTGlzdENvbnRyb2wobmFtZSwgbWV0YWRhdGEsIGNvbXBvbmVudFJlZiwgZWxlbWVudFJlZik7XHJcblxyXG4gICAgY2FzZSBcIm51bWJlclwiOlxyXG4gICAgICByZXR1cm4gbmV3IE51bWJlckNvbnRyb2wobmFtZSwgbWV0YWRhdGEsIGNvbXBvbmVudFJlZiwgZWxlbWVudFJlZik7XHJcblxyXG4gICAgY2FzZSBcImRhdGV0aW1lXCI6XHJcbiAgICAgIHN3aXRjaCAobWV0YWRhdGEuc3VidHlwZSkge1xyXG4gICAgICAgIGNhc2UgXCJkYXRlXCI6XHJcbiAgICAgICAgICByZXR1cm4gbmV3IERhdGVDb250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYpO1xyXG4gICAgICAgIGNhc2UgXCJ0aW1lXCI6XHJcbiAgICAgICAgICByZXR1cm4gbmV3IFRpbWVDb250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYpO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICByZXR1cm4gbmV3IENvbnRyb2wobmFtZSwgbWV0YWRhdGEsIGNvbXBvbmVudFJlZiwgZWxlbWVudFJlZik7XHJcbiAgICAgIH1cclxuXHJcbiAgICBjYXNlIFwiY2hlY2tib3hcIjpcclxuICAgICAgc3dpdGNoIChtZXRhZGF0YS5zdWJ0eXBlKSB7XHJcbiAgICAgICAgY2FzZSBcInRvZ2dsZVwiOlxyXG4gICAgICAgICAgcmV0dXJuIG5ldyBUb2dnbGVDb250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYpO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICByZXR1cm4gbmV3IENoZWNrQm94Q29udHJvbChuYW1lLCBtZXRhZGF0YSwgY29tcG9uZW50UmVmLCBlbGVtZW50UmVmKTtcclxuICAgICAgfVxyXG5cclxuICAgIGNhc2UgXCJyYWRpb1wiOlxyXG4gICAgICBzd2l0Y2ggKG1ldGFkYXRhLnN1YnR5cGUpIHtcclxuICAgICAgICBjYXNlIFwiY2hpcFwiOlxyXG4gICAgICAgICAgcmV0dXJuIG5ldyBDaGlwUmFkaW9Db250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYpO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICByZXR1cm4gbmV3IFJhZGlvQ29udHJvbChuYW1lLCBtZXRhZGF0YSwgY29tcG9uZW50UmVmLCBlbGVtZW50UmVmKTtcclxuICAgICAgfVxyXG5cclxuICAgIGNhc2UgXCJjaGVja2xpc3RcIjpcclxuICAgICAgc3dpdGNoIChtZXRhZGF0YS5zdWJ0eXBlKSB7XHJcbiAgICAgICAgY2FzZSBcImNoaXBcIjpcclxuICAgICAgICAgIHJldHVybiBuZXcgQ2hpcENoZWNrTGlzdENvbnRyb2wobmFtZSwgbWV0YWRhdGEsIGNvbXBvbmVudFJlZiwgZWxlbWVudFJlZik7XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgIHJldHVybiBuZXcgQ2hlY2tMaXN0Q29udHJvbChuYW1lLCBtZXRhZGF0YSwgY29tcG9uZW50UmVmLCBlbGVtZW50UmVmKTtcclxuICAgICAgfVxyXG5cclxuICAgIGNhc2UgXCJ0ZXh0YXJlYVwiOlxyXG4gICAgICByZXR1cm4gbmV3IFRleHRBcmVhQ29udHJvbChuYW1lLCBtZXRhZGF0YSwgY29tcG9uZW50UmVmLCBlbGVtZW50UmVmKTtcclxuXHJcbiAgICBjYXNlIFwiZmlsZXBpY2tlclwiOlxyXG4gICAgICByZXR1cm4gbmV3IEZpbGVQaWNrZXJDb250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYpO1xyXG5cclxuICAgIGNhc2UgXCJkaXNwbGF5ZmllbGRcIjpcclxuICAgICAgcmV0dXJuIG5ldyBEaXNwbGF5RmllbGRDb250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYpO1xyXG5cclxuICAgIGNhc2UgXCJ0ZXh0XCI6XHJcbiAgICAgIHJldHVybiBuZXcgVGV4dENvbnRyb2wobmFtZSwgbWV0YWRhdGEsIGNvbXBvbmVudFJlZiwgZWxlbWVudFJlZik7XHJcblxyXG4gICAgY2FzZSBcImh0bWxcIjpcclxuICAgICAgcmV0dXJuIG5ldyBIdG1sQ29udHJvbChuYW1lLCBtZXRhZGF0YSwgY29tcG9uZW50UmVmLCBlbGVtZW50UmVmKTtcclxuXHJcbiAgICBjYXNlIFwiaW1hZ2VcIjpcclxuICAgICAgcmV0dXJuIG5ldyBJbWFnZUNvbnRyb2wobmFtZSwgbWV0YWRhdGEsIGNvbXBvbmVudFJlZiwgZWxlbWVudFJlZik7XHJcblxyXG4gICAgY2FzZSBcImR5bmFtaWNsaXN0XCI6XHJcbiAgICAgIHN3aXRjaCAobWV0YWRhdGEuc3VidHlwZSkge1xyXG4gICAgICAgIGNhc2UgXCJ0YWJcIjpcclxuICAgICAgICAgIHJldHVybiBuZXcgVGFiQ29udHJvbChuYW1lLCBtZXRhZGF0YSwgY29tcG9uZW50UmVmLCBlbGVtZW50UmVmLCByZWdpc3Rlcik7XHJcbiAgICAgICAgY2FzZSBcImFjY29yZGlvblwiOlxyXG4gICAgICAgICAgcmV0dXJuIG5ldyBBY2NvcmRpb25Db250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYsIHJlZ2lzdGVyKTtcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgcmV0dXJuIG5ldyBEeW5hbWljTGlzdENvbnRyb2wobmFtZSwgbWV0YWRhdGEsIGNvbXBvbmVudFJlZiwgZWxlbWVudFJlZiwgcmVnaXN0ZXIpO1xyXG4gICAgICB9XHJcblxyXG4gICAgY2FzZSBcImdyb3VwXCI6XHJcbiAgICAgIHJldHVybiBuZXcgR3JvdXBDb250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYsIHJlZ2lzdGVyKTtcclxuXHJcbiAgICBjYXNlIFwidGFibGVcIjpcclxuICAgICAgcmV0dXJuIG5ldyBUYWJsZUNvbnRyb2wobmFtZSwgbWV0YWRhdGEsIGNvbXBvbmVudFJlZiwgZWxlbWVudFJlZik7XHJcblxyXG4gICAgY2FzZSBcImNoYXJ0XCI6XHJcbiAgICAgIHJldHVybiBuZXcgQ2hhcnRDb250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYpO1xyXG5cclxuICAgIGNhc2UgXCJidXR0b25cIjpcclxuICAgICAgcmV0dXJuIG5ldyBCdXR0b25Db250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYpO1xyXG5cclxuICAgIGNhc2UgXCJzZXBhcmF0b3JcIjpcclxuICAgICAgcmV0dXJuIG5ldyBTZXBhcmF0b3JDb250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYpO1xyXG5cclxuICAgIGNhc2UgXCJzcGFjZXJcIjpcclxuICAgICAgcmV0dXJuIG5ldyBTcGFjZXJDb250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYpO1xyXG5cclxuICAgIGNhc2UgXCJpZnJhbWVcIjpcclxuICAgICAgcmV0dXJuIG5ldyBJRnJhbWVDb250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYpO1xyXG5cclxuICAgIGNhc2UgXCJ0b29sdGlwXCI6XHJcbiAgICAgIHJldHVybiBuZXcgVG9vbHRpcENvbnRyb2wobmFtZSwgbWV0YWRhdGEsIGNvbXBvbmVudFJlZiwgZWxlbWVudFJlZik7XHJcblxyXG4gICAgY2FzZSBcInRhYlwiOlxyXG4gICAgICByZXR1cm4gbmV3IFRhYkNvbnRyb2wobmFtZSwgbWV0YWRhdGEsIGNvbXBvbmVudFJlZiwgZWxlbWVudFJlZiwgcmVnaXN0ZXIpO1xyXG5cclxuICAgIGNhc2UgXCJhY2NvcmRpb25cIjpcclxuICAgICAgcmV0dXJuIG5ldyBBY2NvcmRpb25Db250cm9sKG5hbWUsIG1ldGFkYXRhLCBjb21wb25lbnRSZWYsIGVsZW1lbnRSZWYsIHJlZ2lzdGVyKTtcclxuXHJcbiAgICBkZWZhdWx0OlxyXG4gICAgICByZXR1cm4gbmV3IENvbnRyb2wobmFtZSwgbWV0YWRhdGEsIGNvbXBvbmVudFJlZiwgZWxlbWVudFJlZik7XHJcbiAgfVxyXG59XHJcbiJdfQ==
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zaXJpby9zcmMvbGliL2NvbnRyb2xzL2ZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBa0IsTUFBTSxxQkFBcUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQy9DLE9BQU8s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LENBQUM7UUFFcEMsS0FBSyxTQUFTO1lBQ1osT0FBTyxJQUFJLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVyQyxLQUFLLEtBQUs7WUFDUixPQUFPLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWpDLEtBQUssV0FBVztZQUNkLE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV2QztZQUNFLE9BQU8sSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEMsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250cm9sLCBDb250cm9sQ29udGV4dCB9IGZyb20gJy4uL2NvbnRyb2xzL2NvbnRyb2wnO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL2Zvcm0nO1xyXG5pbXBvcnQgeyBUZXh0RmllbGRDb250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvdGV4dGZpZWxkJztcclxuaW1wb3J0IHsgU2VsZWN0Q29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL3NlbGVjdCc7XHJcbmltcG9ydCB7IFRhZ0xpc3RDb250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvdGFnbGlzdCc7XHJcbmltcG9ydCB7IE51bWJlckNvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9udW1iZXInO1xyXG5pbXBvcnQgeyBEYXRlQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL2RhdGUnO1xyXG5pbXBvcnQgeyBUaW1lQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL3RpbWUnO1xyXG5pbXBvcnQgeyBUb2dnbGVDb250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvdG9nZ2xlJztcclxuaW1wb3J0IHsgQ2hlY2tCb3hDb250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvY2hlY2tib3gnO1xyXG5pbXBvcnQgeyBDaGlwUmFkaW9Db250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvY2hpcHJhZGlvJztcclxuaW1wb3J0IHsgUmFkaW9Db250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvcmFkaW8nO1xyXG5pbXBvcnQgeyBDaGlwQ2hlY2tMaXN0Q29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL2NoaXBjaGVja2xpc3QnO1xyXG5pbXBvcnQgeyBDaGVja0xpc3RDb250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvY2hlY2tsaXN0JztcclxuaW1wb3J0IHsgVGV4dEFyZWFDb250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvdGV4dGFyZWEnO1xyXG5pbXBvcnQgeyBGaWxlUGlja2VyQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL2ZpbGVwaWNrZXInO1xyXG5pbXBvcnQgeyBUZXh0Q29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL3RleHQnO1xyXG5pbXBvcnQgeyBIdG1sQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL2h0bWwnO1xyXG5pbXBvcnQgeyBJbWFnZUNvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9pbWFnZSc7XHJcbmltcG9ydCB7IFRhYkNvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy90YWInO1xyXG5pbXBvcnQgeyBDaGFydENvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9jaGFydCc7XHJcbmltcG9ydCB7IEFjY29yZGlvbkNvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9hY2NvcmRpb24nO1xyXG5pbXBvcnQgeyBEeW5hbWljTGlzdENvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9keW5hbWljbGlzdCc7XHJcbmltcG9ydCB7IEdyb3VwQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL2dyb3VwJztcclxuaW1wb3J0IHsgVGFibGVDb250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvdGFibGUnO1xyXG5pbXBvcnQgeyBCdXR0b25Db250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvYnV0dG9uJztcclxuaW1wb3J0IHsgU2VwYXJhdG9yQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL3NlcGFyYXRvcic7XHJcbmltcG9ydCB7IFNwYWNlckNvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy9zcGFjZXInO1xyXG5pbXBvcnQgeyBJRnJhbWVDb250cm9sIH0gZnJvbSAnLi4vY29udHJvbHMvaWZyYW1lJztcclxuaW1wb3J0IHsgVG9vbHRpcENvbnRyb2wgfSBmcm9tICcuLi9jb250cm9scy90b29sdGlwJztcclxuaW1wb3J0IHsgRGlzcGxheUZpZWxkQ29udHJvbCB9IGZyb20gJy4uL2NvbnRyb2xzL2Rpc3BsYXlmaWVsZCc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQ29udHJvbChjb250ZXh0OiBDb250cm9sQ29udGV4dCk6IENvbnRyb2wge1xyXG5cclxuICBzd2l0Y2ggKGNvbnRleHQubWV0YWRhdGEudHlwZSkge1xyXG5cclxuICAgIGNhc2UgXCJkZWZhdWx0XCI6XHJcbiAgICAgIHJldHVybiBuZXcgRm9ybUNvbnRyb2woY29udGV4dCk7XHJcblxyXG4gICAgY2FzZSBcInRleHRmaWVsZFwiOlxyXG4gICAgICByZXR1cm4gbmV3IFRleHRGaWVsZENvbnRyb2woY29udGV4dCk7XHJcblxyXG4gICAgY2FzZSBcInNlbGVjdFwiOlxyXG4gICAgICByZXR1cm4gbmV3IFNlbGVjdENvbnRyb2woY29udGV4dCk7XHJcblxyXG4gICAgY2FzZSBcInRhZ2xpc3RcIjpcclxuICAgICAgcmV0dXJuIG5ldyBUYWdMaXN0Q29udHJvbChjb250ZXh0KTtcclxuXHJcbiAgICBjYXNlIFwibnVtYmVyXCI6XHJcbiAgICAgIHJldHVybiBuZXcgTnVtYmVyQ29udHJvbChjb250ZXh0KTtcclxuXHJcbiAgICBjYXNlIFwiZGF0ZXRpbWVcIjpcclxuICAgICAgc3dpdGNoIChjb250ZXh0Lm1ldGFkYXRhLnN1YnR5cGUpIHtcclxuICAgICAgICBjYXNlIFwiZGF0ZVwiOlxyXG4gICAgICAgICAgcmV0dXJuIG5ldyBEYXRlQ29udHJvbChjb250ZXh0KTtcclxuICAgICAgICBjYXNlIFwidGltZVwiOlxyXG4gICAgICAgICAgcmV0dXJuIG5ldyBUaW1lQ29udHJvbChjb250ZXh0KTtcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgcmV0dXJuIG5ldyBDb250cm9sKGNvbnRleHQpO1xyXG4gICAgICB9XHJcblxyXG4gICAgY2FzZSBcImNoZWNrYm94XCI6XHJcbiAgICAgIHN3aXRjaCAoY29udGV4dC5tZXRhZGF0YS5zdWJ0eXBlKSB7XHJcbiAgICAgICAgY2FzZSBcInRvZ2dsZVwiOlxyXG4gICAgICAgICAgcmV0dXJuIG5ldyBUb2dnbGVDb250cm9sKGNvbnRleHQpO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICByZXR1cm4gbmV3IENoZWNrQm94Q29udHJvbChjb250ZXh0KTtcclxuICAgICAgfVxyXG5cclxuICAgIGNhc2UgXCJyYWRpb1wiOlxyXG4gICAgICBzd2l0Y2ggKGNvbnRleHQubWV0YWRhdGEuc3VidHlwZSkge1xyXG4gICAgICAgIGNhc2UgXCJjaGlwXCI6XHJcbiAgICAgICAgICByZXR1cm4gbmV3IENoaXBSYWRpb0NvbnRyb2woY29udGV4dCk7XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgIHJldHVybiBuZXcgUmFkaW9Db250cm9sKGNvbnRleHQpO1xyXG4gICAgICB9XHJcblxyXG4gICAgY2FzZSBcImNoZWNrbGlzdFwiOlxyXG4gICAgICBzd2l0Y2ggKGNvbnRleHQubWV0YWRhdGEuc3VidHlwZSkge1xyXG4gICAgICAgIGNhc2UgXCJjaGlwXCI6XHJcbiAgICAgICAgICByZXR1cm4gbmV3IENoaXBDaGVja0xpc3RDb250cm9sKGNvbnRleHQpO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICByZXR1cm4gbmV3IENoZWNrTGlzdENvbnRyb2woY29udGV4dCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICBjYXNlIFwidGV4dGFyZWFcIjpcclxuICAgICAgcmV0dXJuIG5ldyBUZXh0QXJlYUNvbnRyb2woY29udGV4dCk7XHJcblxyXG4gICAgY2FzZSBcImZpbGVwaWNrZXJcIjpcclxuICAgICAgcmV0dXJuIG5ldyBGaWxlUGlja2VyQ29udHJvbChjb250ZXh0KTtcclxuXHJcbiAgICBjYXNlIFwiZGlzcGxheWZpZWxkXCI6XHJcbiAgICAgIHJldHVybiBuZXcgRGlzcGxheUZpZWxkQ29udHJvbChjb250ZXh0KTtcclxuXHJcbiAgICBjYXNlIFwidGV4dFwiOlxyXG4gICAgICByZXR1cm4gbmV3IFRleHRDb250cm9sKGNvbnRleHQpO1xyXG5cclxuICAgIGNhc2UgXCJodG1sXCI6XHJcbiAgICAgIHJldHVybiBuZXcgSHRtbENvbnRyb2woY29udGV4dCk7XHJcblxyXG4gICAgY2FzZSBcImltYWdlXCI6XHJcbiAgICAgIHJldHVybiBuZXcgSW1hZ2VDb250cm9sKGNvbnRleHQpO1xyXG5cclxuICAgIGNhc2UgXCJkeW5hbWljbGlzdFwiOlxyXG4gICAgICBzd2l0Y2ggKGNvbnRleHQubWV0YWRhdGEuc3VidHlwZSkge1xyXG4gICAgICAgIGNhc2UgXCJ0YWJcIjpcclxuICAgICAgICAgIHJldHVybiBuZXcgVGFiQ29udHJvbChjb250ZXh0KTtcclxuICAgICAgICBjYXNlIFwiYWNjb3JkaW9uXCI6XHJcbiAgICAgICAgICByZXR1cm4gbmV3IEFjY29yZGlvbkNvbnRyb2woY29udGV4dCk7XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgIHJldHVybiBuZXcgRHluYW1pY0xpc3RDb250cm9sKGNvbnRleHQpO1xyXG4gICAgICB9XHJcblxyXG4gICAgY2FzZSBcImdyb3VwXCI6XHJcbiAgICAgIHJldHVybiBuZXcgR3JvdXBDb250cm9sKGNvbnRleHQpO1xyXG5cclxuICAgIGNhc2UgXCJ0YWJsZVwiOlxyXG4gICAgICByZXR1cm4gbmV3IFRhYmxlQ29udHJvbChjb250ZXh0KTtcclxuXHJcbiAgICBjYXNlIFwiY2hhcnRcIjpcclxuICAgICAgcmV0dXJuIG5ldyBDaGFydENvbnRyb2woY29udGV4dCk7XHJcblxyXG4gICAgY2FzZSBcImJ1dHRvblwiOlxyXG4gICAgICByZXR1cm4gbmV3IEJ1dHRvbkNvbnRyb2woY29udGV4dCk7XHJcblxyXG4gICAgY2FzZSBcInNlcGFyYXRvclwiOlxyXG4gICAgICByZXR1cm4gbmV3IFNlcGFyYXRvckNvbnRyb2woY29udGV4dCk7XHJcblxyXG4gICAgY2FzZSBcInNwYWNlclwiOlxyXG4gICAgICByZXR1cm4gbmV3IFNwYWNlckNvbnRyb2woY29udGV4dCk7XHJcblxyXG4gICAgY2FzZSBcImlmcmFtZVwiOlxyXG4gICAgICByZXR1cm4gbmV3IElGcmFtZUNvbnRyb2woY29udGV4dCk7XHJcblxyXG4gICAgY2FzZSBcInRvb2x0aXBcIjpcclxuICAgICAgcmV0dXJuIG5ldyBUb29sdGlwQ29udHJvbChjb250ZXh0KTtcclxuXHJcbiAgICBjYXNlIFwidGFiXCI6XHJcbiAgICAgIHJldHVybiBuZXcgVGFiQ29udHJvbChjb250ZXh0KTtcclxuXHJcbiAgICBjYXNlIFwiYWNjb3JkaW9uXCI6XHJcbiAgICAgIHJldHVybiBuZXcgQWNjb3JkaW9uQ29udHJvbChjb250ZXh0KTtcclxuXHJcbiAgICBkZWZhdWx0OlxyXG4gICAgICByZXR1cm4gbmV3IENvbnRyb2woY29udGV4dCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,38 +1,61 @@
1
1
  import { ContainerControl } from "./control";
2
+ import { SirioTabComponent } from "ngx-sirio-lib";
2
3
  export class TabControl extends ContainerControl {
3
- canNext = () => {
4
+ canNext() {
4
5
  return this.getNextIndex() !== null;
5
- };
6
- goNext = () => {
6
+ }
7
+ goNext() {
7
8
  const next = this.getNextIndex();
8
9
  if (next !== null)
9
10
  this.setActiveIndex(next);
10
- };
11
- canPrevious = () => {
11
+ }
12
+ canPrevious() {
12
13
  return this.getPreviousIndex() !== null;
13
- };
14
- goPrevious = () => {
14
+ }
15
+ goPrevious() {
15
16
  const previous = this.getPreviousIndex();
16
17
  if (previous !== null)
17
18
  this.setActiveIndex(previous);
18
- };
19
- setActiveIndex = (index) => {
20
- const tabControl = this.getTab();
21
- const items = tabControl.tabItems;
22
- if (index < 0 || index >= items.length)
19
+ }
20
+ setActiveIndex(index) {
21
+ const items = this.tab.tabItems;
22
+ if (!items
23
+ || items.length === 0
24
+ || (index < 0 || index >= items.length)
25
+ || items[index].disabled) {
23
26
  return;
24
- const item = items[index];
25
- if (item.disabled)
27
+ }
28
+ this.tab.setActiveIndex(index);
29
+ }
30
+ ;
31
+ //#region State
32
+ onLoadState() {
33
+ const state = this.getState();
34
+ if (!state || typeof state.activeIndex !== 'number') {
26
35
  return;
27
- tabControl.setActiveIndex(index);
28
- };
29
- getTab() {
30
- return this.getComponentRef();
36
+ }
37
+ this.setActiveIndex(state.activeIndex);
38
+ }
39
+ onSaveState() {
40
+ this.setState(this.createState());
41
+ }
42
+ createState() {
43
+ return {
44
+ activeIndex: this.tab.activeIndex
45
+ };
46
+ }
47
+ //#endregion
48
+ //#region Private Members
49
+ get tab() {
50
+ const ref = this.getComponentRef();
51
+ if (!(ref instanceof SirioTabComponent)) {
52
+ throw new Error('ComponentRef is not a SirioTabComponent');
53
+ }
54
+ return ref;
31
55
  }
32
56
  getPreviousIndex() {
33
- const tabControl = this.getTab();
34
- const items = tabControl.tabItems;
35
- const currentIndex = tabControl.activeIndex;
57
+ const items = this.tab.tabItems;
58
+ const currentIndex = this.tab.activeIndex;
36
59
  for (let i = currentIndex - 1; i >= 0; i--) {
37
60
  if (!items[i].disabled)
38
61
  return i;
@@ -40,9 +63,8 @@ export class TabControl extends ContainerControl {
40
63
  return null;
41
64
  }
42
65
  getNextIndex() {
43
- const tabControl = this.getTab();
44
- const items = tabControl.tabItems;
45
- const currentIndex = tabControl.activeIndex;
66
+ const items = this.tab.tabItems;
67
+ const currentIndex = this.tab.activeIndex;
46
68
  for (let i = currentIndex + 1; i < items.length; i++) {
47
69
  if (!items[i].disabled)
48
70
  return i;
@@ -50,4 +72,4 @@ export class TabControl extends ContainerControl {
50
72
  return null;
51
73
  }
52
74
  }
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNpcmlvL3NyYy9saWIvY29udHJvbHMvdGFiLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUc3QyxNQUFNLE9BQU8sVUFBVyxTQUFRLGdCQUFnQjtJQUVyQyxPQUFPLEdBQUcsR0FBRyxFQUFFO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxLQUFLLElBQUksQ0FBQztJQUN0QyxDQUFDLENBQUE7SUFFUSxNQUFNLEdBQUcsR0FBRyxFQUFFO1FBQ3JCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNqQyxJQUFJLElBQUksS0FBSyxJQUFJO1lBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDLENBQUE7SUFFUSxXQUFXLEdBQUcsR0FBRyxFQUFFO1FBQzFCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixFQUFFLEtBQUssSUFBSSxDQUFDO0lBQzFDLENBQUMsQ0FBQTtJQUVRLFVBQVUsR0FBRyxHQUFHLEVBQUU7UUFDekIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDekMsSUFBSSxRQUFRLEtBQUssSUFBSTtZQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdkQsQ0FBQyxDQUFBO0lBRVEsY0FBYyxHQUFHLENBQUMsS0FBYSxFQUFRLEVBQUU7UUFDaEQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2pDLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUM7UUFDbEMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsTUFBTTtZQUFFLE9BQU87UUFDL0MsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFCLElBQUksSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBQzFCLFVBQVUsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQyxDQUFDO0lBRU0sTUFBTTtRQUNaLE9BQU8sSUFBSSxDQUFDLGVBQWUsRUFBdUIsQ0FBQztJQUNyRCxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNqQyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDO1FBQ2xDLE1BQU0sWUFBWSxHQUFHLFVBQVUsQ0FBQyxXQUFXLENBQUM7UUFDNUMsS0FBSyxJQUFJLENBQUMsR0FBRyxZQUFZLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUMzQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVE7Z0JBQUUsT0FBTyxDQUFDLENBQUM7UUFDbkMsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVPLFlBQVk7UUFDbEIsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ2pDLE1BQU0sS0FBSyxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUM7UUFDbEMsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDLFdBQVcsQ0FBQztRQUM1QyxLQUFLLElBQUksQ0FBQyxHQUFHLFlBQVksR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNyRCxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVE7Z0JBQUUsT0FBTyxDQUFDLENBQUM7UUFDbkMsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGFpbmVyQ29udHJvbCB9IGZyb20gXCIuL2NvbnRyb2xcIjtcclxuaW1wb3J0IHsgU2lyaW9UYWJDb21wb25lbnQgfSBmcm9tIFwibmd4LXNpcmlvLWxpYlwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFRhYkNvbnRyb2wgZXh0ZW5kcyBDb250YWluZXJDb250cm9sIHtcclxuXHJcbiAgcmVhZG9ubHkgY2FuTmV4dCA9ICgpID0+IHtcclxuICAgIHJldHVybiB0aGlzLmdldE5leHRJbmRleCgpICE9PSBudWxsO1xyXG4gIH1cclxuXHJcbiAgcmVhZG9ubHkgZ29OZXh0ID0gKCkgPT4ge1xyXG4gICAgY29uc3QgbmV4dCA9IHRoaXMuZ2V0TmV4dEluZGV4KCk7XHJcbiAgICBpZiAobmV4dCAhPT0gbnVsbCkgdGhpcy5zZXRBY3RpdmVJbmRleChuZXh0KTtcclxuICB9XHJcblxyXG4gIHJlYWRvbmx5IGNhblByZXZpb3VzID0gKCkgPT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0UHJldmlvdXNJbmRleCgpICE9PSBudWxsO1xyXG4gIH1cclxuXHJcbiAgcmVhZG9ubHkgZ29QcmV2aW91cyA9ICgpID0+IHtcclxuICAgIGNvbnN0IHByZXZpb3VzID0gdGhpcy5nZXRQcmV2aW91c0luZGV4KCk7XHJcbiAgICBpZiAocHJldmlvdXMgIT09IG51bGwpIHRoaXMuc2V0QWN0aXZlSW5kZXgocHJldmlvdXMpO1xyXG4gIH1cclxuXHJcbiAgcmVhZG9ubHkgc2V0QWN0aXZlSW5kZXggPSAoaW5kZXg6IG51bWJlcik6IHZvaWQgPT4ge1xyXG4gICAgY29uc3QgdGFiQ29udHJvbCA9IHRoaXMuZ2V0VGFiKCk7XHJcbiAgICBjb25zdCBpdGVtcyA9IHRhYkNvbnRyb2wudGFiSXRlbXM7XHJcbiAgICBpZiAoaW5kZXggPCAwIHx8IGluZGV4ID49IGl0ZW1zLmxlbmd0aCkgcmV0dXJuO1xyXG4gICAgY29uc3QgaXRlbSA9IGl0ZW1zW2luZGV4XTtcclxuICAgIGlmIChpdGVtLmRpc2FibGVkKSByZXR1cm47XHJcbiAgICB0YWJDb250cm9sLnNldEFjdGl2ZUluZGV4KGluZGV4KTtcclxuICB9O1xyXG5cclxuICBwcml2YXRlIGdldFRhYigpOiBTaXJpb1RhYkNvbXBvbmVudCB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXRDb21wb25lbnRSZWYoKSBhcyBTaXJpb1RhYkNvbXBvbmVudDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0UHJldmlvdXNJbmRleCgpOiBudW1iZXIgfCBudWxsIHtcclxuICAgIGNvbnN0IHRhYkNvbnRyb2wgPSB0aGlzLmdldFRhYigpO1xyXG4gICAgY29uc3QgaXRlbXMgPSB0YWJDb250cm9sLnRhYkl0ZW1zO1xyXG4gICAgY29uc3QgY3VycmVudEluZGV4ID0gdGFiQ29udHJvbC5hY3RpdmVJbmRleDtcclxuICAgIGZvciAobGV0IGkgPSBjdXJyZW50SW5kZXggLSAxOyBpID49IDA7IGktLSkge1xyXG4gICAgICBpZiAoIWl0ZW1zW2ldLmRpc2FibGVkKSByZXR1cm4gaTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXROZXh0SW5kZXgoKTogbnVtYmVyIHwgbnVsbCB7XHJcbiAgICBjb25zdCB0YWJDb250cm9sID0gdGhpcy5nZXRUYWIoKTtcclxuICAgIGNvbnN0IGl0ZW1zID0gdGFiQ29udHJvbC50YWJJdGVtcztcclxuICAgIGNvbnN0IGN1cnJlbnRJbmRleCA9IHRhYkNvbnRyb2wuYWN0aXZlSW5kZXg7XHJcbiAgICBmb3IgKGxldCBpID0gY3VycmVudEluZGV4ICsgMTsgaSA8IGl0ZW1zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGlmICghaXRlbXNbaV0uZGlzYWJsZWQpIHJldHVybiBpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG5cclxuICBcclxufVxyXG4iXX0=
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNpcmlvL3NyYy9saWIvY29udHJvbHMvdGFiLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUM3QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbEQsTUFBTSxPQUFPLFVBQVcsU0FBUSxnQkFBZ0I7SUFFOUMsT0FBTztRQUNMLE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxLQUFLLElBQUksQ0FBQztJQUN0QyxDQUFDO0lBRUQsTUFBTTtRQUNKLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNqQyxJQUFJLElBQUksS0FBSyxJQUFJO1lBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLGdCQUFnQixFQUFFLEtBQUssSUFBSSxDQUFDO0lBQzFDLENBQUM7SUFFRCxVQUFVO1FBQ1IsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDekMsSUFBSSxRQUFRLEtBQUssSUFBSTtZQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELGNBQWMsQ0FBQyxLQUFhO1FBQzFCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxLQUFLO2VBQ0wsS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDO2VBQ2xCLENBQUMsS0FBSyxHQUFHLENBQUMsSUFBSSxLQUFLLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQztlQUNwQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDM0IsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBQUEsQ0FBQztJQUVGLGVBQWU7SUFFTixXQUFXO1FBQ2xCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQW1CLENBQUM7UUFFL0MsSUFBSSxDQUFDLEtBQUssSUFBSSxPQUFPLEtBQUssQ0FBQyxXQUFXLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDcEQsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRVEsV0FBVztRQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFTyxXQUFXO1FBQ2pCLE9BQU87WUFDTCxXQUFXLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXO1NBQ2xDLENBQUM7SUFDSixDQUFDO0lBRUQsWUFBWTtJQUVaLHlCQUF5QjtJQUV6QixJQUFZLEdBQUc7UUFDYixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDbkMsSUFBSSxDQUFDLENBQUMsR0FBRyxZQUFZLGlCQUFpQixDQUFDLEVBQUUsQ0FBQztZQUN4QyxNQUFNLElBQUksS0FBSyxDQUNiLHlDQUF5QyxDQUMxQyxDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztRQUNoQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQztRQUMxQyxLQUFLLElBQUksQ0FBQyxHQUFHLFlBQVksR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzNDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUTtnQkFBRSxPQUFPLENBQUMsQ0FBQztRQUNuQyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRU8sWUFBWTtRQUNsQixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztRQUNoQyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQztRQUMxQyxLQUFLLElBQUksQ0FBQyxHQUFHLFlBQVksR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUNyRCxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVE7Z0JBQUUsT0FBTyxDQUFDLENBQUM7UUFDbkMsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGFpbmVyQ29udHJvbCB9IGZyb20gXCIuL2NvbnRyb2xcIjtcclxuaW1wb3J0IHsgU2lyaW9UYWJDb21wb25lbnQgfSBmcm9tIFwibmd4LXNpcmlvLWxpYlwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFRhYkNvbnRyb2wgZXh0ZW5kcyBDb250YWluZXJDb250cm9sIHtcclxuXHJcbiAgY2FuTmV4dCgpIHtcclxuICAgIHJldHVybiB0aGlzLmdldE5leHRJbmRleCgpICE9PSBudWxsO1xyXG4gIH1cclxuXHJcbiAgZ29OZXh0KCkge1xyXG4gICAgY29uc3QgbmV4dCA9IHRoaXMuZ2V0TmV4dEluZGV4KCk7XHJcbiAgICBpZiAobmV4dCAhPT0gbnVsbCkgdGhpcy5zZXRBY3RpdmVJbmRleChuZXh0KTtcclxuICB9XHJcblxyXG4gIGNhblByZXZpb3VzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0UHJldmlvdXNJbmRleCgpICE9PSBudWxsO1xyXG4gIH1cclxuXHJcbiAgZ29QcmV2aW91cygpIHtcclxuICAgIGNvbnN0IHByZXZpb3VzID0gdGhpcy5nZXRQcmV2aW91c0luZGV4KCk7XHJcbiAgICBpZiAocHJldmlvdXMgIT09IG51bGwpIHRoaXMuc2V0QWN0aXZlSW5kZXgocHJldmlvdXMpO1xyXG4gIH1cclxuXHJcbiAgc2V0QWN0aXZlSW5kZXgoaW5kZXg6IG51bWJlcik6IHZvaWQge1xyXG4gICAgY29uc3QgaXRlbXMgPSB0aGlzLnRhYi50YWJJdGVtcztcclxuICAgIGlmICghaXRlbXNcclxuICAgICAgfHwgaXRlbXMubGVuZ3RoID09PSAwXHJcbiAgICAgIHx8IChpbmRleCA8IDAgfHwgaW5kZXggPj0gaXRlbXMubGVuZ3RoKVxyXG4gICAgICB8fCBpdGVtc1tpbmRleF0uZGlzYWJsZWQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMudGFiLnNldEFjdGl2ZUluZGV4KGluZGV4KTtcclxuICB9O1xyXG5cclxuICAvLyNyZWdpb24gU3RhdGVcclxuXHJcbiAgb3ZlcnJpZGUgb25Mb2FkU3RhdGUoKTogdm9pZCB7XHJcbiAgICBjb25zdCBzdGF0ZSA9IHRoaXMuZ2V0U3RhdGU8VGFiQ29udHJvbFN0YXRlPigpO1xyXG5cclxuICAgIGlmICghc3RhdGUgfHwgdHlwZW9mIHN0YXRlLmFjdGl2ZUluZGV4ICE9PSAnbnVtYmVyJykge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5zZXRBY3RpdmVJbmRleChzdGF0ZS5hY3RpdmVJbmRleCk7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBvblNhdmVTdGF0ZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2V0U3RhdGUodGhpcy5jcmVhdGVTdGF0ZSgpKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlU3RhdGUoKTogVGFiQ29udHJvbFN0YXRlIHwgbnVsbCB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBhY3RpdmVJbmRleDogdGhpcy50YWIuYWN0aXZlSW5kZXhcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgLy8jcmVnaW9uIFByaXZhdGUgTWVtYmVyc1xyXG5cclxuICBwcml2YXRlIGdldCB0YWIoKTogU2lyaW9UYWJDb21wb25lbnQge1xyXG4gICAgY29uc3QgcmVmID0gdGhpcy5nZXRDb21wb25lbnRSZWYoKTtcclxuICAgIGlmICghKHJlZiBpbnN0YW5jZW9mIFNpcmlvVGFiQ29tcG9uZW50KSkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXHJcbiAgICAgICAgJ0NvbXBvbmVudFJlZiBpcyBub3QgYSBTaXJpb1RhYkNvbXBvbmVudCdcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIHJldHVybiByZWY7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFByZXZpb3VzSW5kZXgoKTogbnVtYmVyIHwgbnVsbCB7XHJcbiAgICBjb25zdCBpdGVtcyA9IHRoaXMudGFiLnRhYkl0ZW1zO1xyXG4gICAgY29uc3QgY3VycmVudEluZGV4ID0gdGhpcy50YWIuYWN0aXZlSW5kZXg7XHJcbiAgICBmb3IgKGxldCBpID0gY3VycmVudEluZGV4IC0gMTsgaSA+PSAwOyBpLS0pIHtcclxuICAgICAgaWYgKCFpdGVtc1tpXS5kaXNhYmxlZCkgcmV0dXJuIGk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0TmV4dEluZGV4KCk6IG51bWJlciB8IG51bGwge1xyXG4gICAgY29uc3QgaXRlbXMgPSB0aGlzLnRhYi50YWJJdGVtcztcclxuICAgIGNvbnN0IGN1cnJlbnRJbmRleCA9IHRoaXMudGFiLmFjdGl2ZUluZGV4O1xyXG4gICAgZm9yIChsZXQgaSA9IGN1cnJlbnRJbmRleCArIDE7IGkgPCBpdGVtcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICBpZiAoIWl0ZW1zW2ldLmRpc2FibGVkKSByZXR1cm4gaTtcclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgLy8jZW5kcmVnaW9uICBcclxufVxyXG5cclxuaW50ZXJmYWNlIFRhYkNvbnRyb2xTdGF0ZVxyXG57XHJcbiAgYWN0aXZlSW5kZXg6IG51bWJlcjtcclxufVxyXG4iXX0=
@@ -1,19 +1,93 @@
1
+ import { merge } from 'rxjs';
2
+ import { takeUntilDestroyed } from "@angular/core/rxjs-interop";
1
3
  import { Control } from "./control";
4
+ import { AgGridAngular } from 'ag-grid-angular';
5
+ import { subscribeOnce } from '../utils/observable';
2
6
  export class TableControl extends Control {
3
- setFilter = (filter) => {
4
- this.getGrid().api.setFilterModel(filter);
5
- };
6
- clearFilter = () => {
7
- this.getGrid().api.setFilterModel(null);
8
- };
9
- refresh = () => {
10
- this.getGrid()._refresh();
11
- };
12
- redraw = () => {
13
- this.getGrid().api.redrawRows();
14
- };
15
- getGrid() {
16
- return this.getComponentRef();
7
+ setFilter(filter) {
8
+ this.grid.api.setFilterModel(filter);
9
+ }
10
+ getFilter() {
11
+ return this.grid.api.getFilterModel();
12
+ }
13
+ clearFilter() {
14
+ this.grid.api.setFilterModel(null);
15
+ }
16
+ refresh() {
17
+ this.grid._refresh();
18
+ }
19
+ redraw() {
20
+ this.grid.api.redrawRows();
21
+ }
22
+ //#region State
23
+ currentState = null;
24
+ onLoadState() {
25
+ const destroyRef = this.getDestroyRef();
26
+ merge(this.grid.filterChanged, this.grid.sortChanged, this.grid.columnResized, this.grid.paginationChanged).pipe(takeUntilDestroyed(destroyRef))
27
+ .subscribe(() => {
28
+ this.currentState = this.createState();
29
+ });
30
+ this.grid.gridReady
31
+ .pipe(takeUntilDestroyed(destroyRef))
32
+ .subscribe(event => {
33
+ this.applyState();
34
+ });
35
+ }
36
+ onSaveState() {
37
+ this.setState(this.currentState);
38
+ }
39
+ createState() {
40
+ return {
41
+ columns: this.grid.api.getColumnState(),
42
+ filter: this.grid.api.getFilterModel(),
43
+ pagination: this.paginationEnabled() ? {
44
+ page: this.grid.api.paginationGetCurrentPage(),
45
+ pageSize: this.grid.api.paginationGetPageSize(),
46
+ } : null
47
+ };
48
+ }
49
+ applyState() {
50
+ const state = this.getState();
51
+ if (state) {
52
+ if (state.columns)
53
+ this.grid.api.applyColumnState({ state: state.columns, applyOrder: true });
54
+ if (state.filter)
55
+ this.grid.api.setFilterModel(state.filter);
56
+ if (state.pagination)
57
+ this.applyPagination(state.pagination);
58
+ }
59
+ }
60
+ applyPagination(pagination) {
61
+ if (!this.paginationEnabled())
62
+ return;
63
+ this.applyPageSize(pagination.pageSize);
64
+ this.applyPageNumber(pagination.page);
65
+ }
66
+ applyPageSize(pageSize) {
67
+ if (this.grid.api.paginationGetPageSize() != pageSize)
68
+ this.grid.api.setGridOption('paginationPageSize', pageSize);
69
+ }
70
+ applyPageNumber(pageNumber, subscribe = true) {
71
+ if (this.grid.api.paginationGetCurrentPage() != pageNumber) {
72
+ this.grid.api.paginationGoToPage(pageNumber);
73
+ if (subscribe) {
74
+ subscribeOnce(this.grid.firstDataRendered, () => {
75
+ this.applyPageNumber(pageNumber, false);
76
+ });
77
+ }
78
+ }
79
+ }
80
+ //#endregion
81
+ //#region Private Members
82
+ get grid() {
83
+ const ref = this.getComponentRef();
84
+ if (!(ref instanceof AgGridAngular)) {
85
+ throw new Error('ComponentRef is not a AgGridAngular');
86
+ }
87
+ return ref;
88
+ }
89
+ paginationEnabled() {
90
+ return this.grid.api.getGridOption('pagination') === true;
17
91
  }
18
92
  }
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2lyaW8vc3JjL2xpYi9jb250cm9scy90YWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBSXBDLE1BQU0sT0FBTyxZQUFhLFNBQVEsT0FBTztJQUU5QixTQUFTLEdBQUcsQ0FBQyxNQUFXLEVBQVEsRUFBRTtRQUN6QyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM1QyxDQUFDLENBQUE7SUFFUSxXQUFXLEdBQUcsR0FBUyxFQUFFO1FBQ2hDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFDLENBQUMsQ0FBQTtJQUVRLE9BQU8sR0FBRyxHQUFTLEVBQUU7UUFDM0IsSUFBSSxDQUFDLE9BQU8sRUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3JDLENBQUMsQ0FBQTtJQUVRLE1BQU0sR0FBRyxHQUFTLEVBQUU7UUFDM0IsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNsQyxDQUFDLENBQUE7SUFFTyxPQUFPO1FBQ2IsT0FBTyxJQUFJLENBQUMsZUFBZSxFQUFtQixDQUFDO0lBQ2pELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRyb2wgfSBmcm9tIFwiLi9jb250cm9sXCI7XHJcbmltcG9ydCB7IEFnR3JpZEFuZ3VsYXIgfSBmcm9tICdhZy1ncmlkLWFuZ3VsYXInO1xyXG5cclxuXHJcbmV4cG9ydCBjbGFzcyBUYWJsZUNvbnRyb2wgZXh0ZW5kcyBDb250cm9sIHtcclxuXHJcbiAgcmVhZG9ubHkgc2V0RmlsdGVyID0gKGZpbHRlcjogYW55KTogdm9pZCA9PiB7XHJcbiAgICB0aGlzLmdldEdyaWQoKS5hcGkuc2V0RmlsdGVyTW9kZWwoZmlsdGVyKTtcclxuICB9XHJcblxyXG4gIHJlYWRvbmx5IGNsZWFyRmlsdGVyID0gKCk6IHZvaWQgPT4ge1xyXG4gICAgdGhpcy5nZXRHcmlkKCkuYXBpLnNldEZpbHRlck1vZGVsKG51bGwpO1xyXG4gIH1cclxuXHJcbiAgcmVhZG9ubHkgcmVmcmVzaCA9ICgpOiB2b2lkID0+IHtcclxuICAgICh0aGlzLmdldEdyaWQoKSBhcyBhbnkpLl9yZWZyZXNoKCk7XHJcbiAgfVxyXG5cclxuICByZWFkb25seSByZWRyYXcgPSAoKTogdm9pZCA9PiB7XHJcbiAgICB0aGlzLmdldEdyaWQoKS5hcGkucmVkcmF3Um93cygpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRHcmlkKCk6IEFnR3JpZEFuZ3VsYXIge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0Q29tcG9uZW50UmVmKCkgYXMgQWdHcmlkQW5ndWxhcjtcclxuICB9XHJcbn1cclxuIl19
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2lyaW8vc3JjL2xpYi9jb250cm9scy90YWJsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDcEMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVwRCxNQUFNLE9BQU8sWUFBYSxTQUFRLE9BQU87SUFFdkMsU0FBUyxDQUFDLE1BQW1CO1FBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELE9BQU87UUFDSixJQUFJLENBQUMsSUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGVBQWU7SUFFUCxZQUFZLEdBQTZCLElBQUksQ0FBQztJQUU3QyxXQUFXO1FBRWxCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUV4QyxLQUFLLENBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxh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Q2QsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFO29CQUM5QyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztnQkFDMUMsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxZQUFZO0lBRVoseUJBQXlCO0lBRXpCLElBQVksSUFBSTtRQUNkLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUNuQyxJQUFJLENBQUMsQ0FBQyxHQUFHLFlBQVksYUFBYSxDQUFDLEVBQUUsQ0FBQztZQUNwQyxNQUFNLElBQUksS0FBSyxDQUNiLHFDQUFxQyxDQUN0QyxDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsS0FBSyxJQUFJLENBQUM7SUFDNUQsQ0FBQztDQUdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbWVyZ2UgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wXCI7XHJcbmltcG9ydCB7IENvbnRyb2wgfSBmcm9tIFwiLi9jb250cm9sXCI7XHJcbmltcG9ydCB7IEFnR3JpZEFuZ3VsYXIgfSBmcm9tICdhZy1ncmlkLWFuZ3VsYXInO1xyXG5pbXBvcnQgeyBGaWx0ZXJNb2RlbCwgQ29sdW1uU3RhdGUgfSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XHJcbmltcG9ydCB7IHN1YnNjcmliZU9uY2UgfSBmcm9tICcuLi91dGlscy9vYnNlcnZhYmxlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBUYWJsZUNvbnRyb2wgZXh0ZW5kcyBDb250cm9sIHtcclxuXHJcbiAgc2V0RmlsdGVyKGZpbHRlcjogRmlsdGVyTW9kZWwpOiB2b2lkIHtcclxuICAgIHRoaXMuZ3JpZC5hcGkuc2V0RmlsdGVyTW9kZWwoZmlsdGVyKTtcclxuICB9XHJcblxyXG4gIGdldEZpbHRlcigpOiBGaWx0ZXJNb2RlbCB7XHJcbiAgICByZXR1cm4gdGhpcy5ncmlkLmFwaS5nZXRGaWx0ZXJNb2RlbCgpO1xyXG4gIH1cclxuXHJcbiAgY2xlYXJGaWx0ZXIoKTogdm9pZCB7XHJcbiAgICB0aGlzLmdyaWQuYXBpLnNldEZpbHRlck1vZGVsKG51bGwpO1xyXG4gIH1cclxuXHJcbiAgcmVmcmVzaCgpOiB2b2lkIHtcclxuICAgICh0aGlzLmdyaWQgYXMgYW55KS5fcmVmcmVzaCgpO1xyXG4gIH1cclxuXHJcbiAgcmVkcmF3KCk6IHZvaWQge1xyXG4gICAgdGhpcy5ncmlkLmFwaS5yZWRyYXdSb3dzKCk7XHJcbiAgfVxyXG5cclxuICAvLyNyZWdpb24gU3RhdGVcclxuXHJcbiAgcHJpdmF0ZSBjdXJyZW50U3RhdGU6IFRhYmxlQ29udHJvbFN0YXRlIHwgbnVsbCA9IG51bGw7XHJcblxyXG4gIG92ZXJyaWRlIG9uTG9hZFN0YXRlKCk6IHZvaWQge1xyXG5cclxuICAgIGNvbnN0IGRlc3Ryb3lSZWYgPSB0aGlzLmdldERlc3Ryb3lSZWYoKTtcclxuXHJcbiAgICBtZXJnZShcclxuICAgICAgdGhpcy5ncmlkLmZpbHRlckNoYW5nZWQsXHJcbiAgICAgIHRoaXMuZ3JpZC5zb3J0Q2hhbmdlZCxcclxuICAgICAgdGhpcy5ncmlkLmNvbHVtblJlc2l6ZWQsXHJcbiAgICAgIHRoaXMuZ3JpZC5wYWdpbmF0aW9uQ2hhbmdlZCxcclxuICAgICkucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQoZGVzdHJveVJlZikpXHJcbiAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuY3VycmVudFN0YXRlID0gdGhpcy5jcmVhdGVTdGF0ZSgpO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICB0aGlzLmdyaWQuZ3JpZFJlYWR5XHJcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZChkZXN0cm95UmVmKSlcclxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgdGhpcy5hcHBseVN0YXRlKCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgb25TYXZlU3RhdGUoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNldFN0YXRlKHRoaXMuY3VycmVudFN0YXRlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlU3RhdGUoKTogVGFibGVDb250cm9sU3RhdGUgfCBudWxsIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGNvbHVtbnM6IHRoaXMuZ3JpZC5hcGkuZ2V0Q29sdW1uU3RhdGUoKSxcclxuICAgICAgZmlsdGVyOiB0aGlzLmdyaWQuYXBpLmdldEZpbHRlck1vZGVsKCksXHJcbiAgICAgIHBhZ2luYXRpb246IHRoaXMucGFnaW5hdGlvbkVuYWJsZWQoKSA/IHtcclxuICAgICAgICBwYWdlOiB0aGlzLmdyaWQuYXBpLnBhZ2luYXRpb25HZXRDdXJyZW50UGFnZSgpLFxyXG4gICAgICAgIHBhZ2VTaXplOiB0aGlzLmdyaWQuYXBpLnBhZ2luYXRpb25HZXRQYWdlU2l6ZSgpLFxyXG4gICAgICB9IDogbnVsbFxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhcHBseVN0YXRlKCkge1xyXG4gICAgY29uc3Qgc3RhdGUgPSB0aGlzLmdldFN0YXRlPFRhYmxlQ29udHJvbFN0YXRlPigpO1xyXG4gICAgaWYgKHN0YXRlKSB7XHJcbiAgICAgIGlmIChzdGF0ZS5jb2x1bW5zKVxyXG4gICAgICAgIHRoaXMuZ3JpZC5hcGkuYXBwbHlDb2x1bW5TdGF0ZSh7IHN0YXRlOiBzdGF0ZS5jb2x1bW5zLCBhcHBseU9yZGVyOiB0cnVlIH0pO1xyXG4gICAgICBpZiAoc3RhdGUuZmlsdGVyKVxyXG4gICAgICAgIHRoaXMuZ3JpZC5hcGkuc2V0RmlsdGVyTW9kZWwoc3RhdGUuZmlsdGVyKTtcclxuICAgICAgaWYgKHN0YXRlLnBhZ2luYXRpb24pXHJcbiAgICAgICAgdGhpcy5hcHBseVBhZ2luYXRpb24oc3RhdGUucGFnaW5hdGlvbilcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXBwbHlQYWdpbmF0aW9uKHBhZ2luYXRpb246IFRhYmxlUGFnaW5hdGlvblN0YXRlKSB7XHJcbiAgICBpZiAoIXRoaXMucGFnaW5hdGlvbkVuYWJsZWQoKSkgcmV0dXJuO1xyXG4gICAgdGhpcy5hcHBseVBhZ2VTaXplKHBhZ2luYXRpb24ucGFnZVNpemUpO1xyXG4gICAgdGhpcy5hcHBseVBhZ2VOdW1iZXIocGFnaW5hdGlvbi5wYWdlKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXBwbHlQYWdlU2l6ZShwYWdlU2l6ZTogbnVtYmVyKSB7XHJcbiAgICBpZiAodGhpcy5ncmlkLmFwaS5wYWdpbmF0aW9uR2V0UGFnZVNpemUoKSAhPSBwYWdlU2l6ZSlcclxuICAgICAgdGhpcy5ncmlkLmFwaS5zZXRHcmlkT3B0aW9uKCdwYWdpbmF0aW9uUGFnZVNpemUnLCBwYWdlU2l6ZSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFwcGx5UGFnZU51bWJlcihwYWdlTnVtYmVyOiBudW1iZXIsIHN1YnNjcmliZTogYm9vbGVhbiA9IHRydWUpIHtcclxuICAgIGlmICh0aGlzLmdyaWQuYXBpLnBhZ2luYXRpb25HZXRDdXJyZW50UGFnZSgpICE9IHBhZ2VOdW1iZXIpIHtcclxuICAgICAgdGhpcy5ncmlkLmFwaS5wYWdpbmF0aW9uR29Ub1BhZ2UocGFnZU51bWJlcik7XHJcbiAgICAgIGlmIChzdWJzY3JpYmUpIHtcclxuICAgICAgICBzdWJzY3JpYmVPbmNlKHRoaXMuZ3JpZC5maXJzdERhdGFSZW5kZXJlZCwgKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5hcHBseVBhZ2VOdW1iZXIocGFnZU51bWJlciwgZmFsc2UpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9ICAgICAgXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgLy8jcmVnaW9uIFByaXZhdGUgTWVtYmVyc1xyXG5cclxuICBwcml2YXRlIGdldCBncmlkKCk6IEFnR3JpZEFuZ3VsYXIge1xyXG4gICAgY29uc3QgcmVmID0gdGhpcy5nZXRDb21wb25lbnRSZWYoKTtcclxuICAgIGlmICghKHJlZiBpbnN0YW5jZW9mIEFnR3JpZEFuZ3VsYXIpKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcihcclxuICAgICAgICAnQ29tcG9uZW50UmVmIGlzIG5vdCBhIEFnR3JpZEFuZ3VsYXInXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVmO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwYWdpbmF0aW9uRW5hYmxlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmdyaWQuYXBpLmdldEdyaWRPcHRpb24oJ3BhZ2luYXRpb24nKSA9PT0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIC8vI2VuZHJlZ2lvblxyXG59XHJcblxyXG5pbnRlcmZhY2UgVGFibGVDb250cm9sU3RhdGUge1xyXG4gIGNvbHVtbnM6IENvbHVtblN0YXRlW10gfCBudWxsXHJcbiAgZmlsdGVyOiBGaWx0ZXJNb2RlbCB8IG51bGxcclxuICBwYWdpbmF0aW9uOiBUYWJsZVBhZ2luYXRpb25TdGF0ZSB8IG51bGxcclxufVxyXG5cclxuaW50ZXJmYWNlIFRhYmxlUGFnaW5hdGlvblN0YXRlIHtcclxuICBwYWdlOiBudW1iZXIsXHJcbiAgcGFnZVNpemU6IG51bWJlclxyXG59XHJcbiJdfQ==
@@ -1,8 +1,9 @@
1
1
  import { Control } from "./control";
2
2
  export class TextFieldControl extends Control {
3
- setRandomColor = () => {
3
+ setRandomColor() {
4
4
  this.getInput().sirioInput.nativeElement.style.backgroundColor = this.getRandomColor();
5
- };
5
+ }
6
+ //#region Private Methods
6
7
  getInput() {
7
8
  return this.getComponentRef();
8
9
  }
@@ -15,4 +16,4 @@ export class TextFieldControl extends Control {
15
16
  return color;
16
17
  }
17
18
  }
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNpcmlvL3NyYy9saWIvY29udHJvbHMvdGV4dGZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFHcEMsTUFBTSxPQUFPLGdCQUFpQixTQUFRLE9BQU87SUFFbEMsY0FBYyxHQUFHLEdBQVMsRUFBRTtRQUNuQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN6RixDQUFDLENBQUE7SUFFTyxRQUFRO1FBQ2QsT0FBTyxJQUFJLENBQUMsZUFBZSxFQUF5QixDQUFDO0lBQ3ZELENBQUM7SUFFTyxjQUFjO1FBQ3BCLE1BQU0sT0FBTyxHQUFHLGtCQUFrQixDQUFDO1FBQ25DLElBQUksS0FBSyxHQUFHLEdBQUcsQ0FBQztRQUVoQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDM0IsS0FBSyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ25ELENBQUM7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRyb2wgfSBmcm9tIFwiLi9jb250cm9sXCI7XHJcbmltcG9ydCB7IFNpcmlvSW5wdXRDb21wb25lbnQgfSBmcm9tIFwibmd4LXNpcmlvLWxpYlwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIFRleHRGaWVsZENvbnRyb2wgZXh0ZW5kcyBDb250cm9sIHtcclxuXHJcbiAgcmVhZG9ubHkgc2V0UmFuZG9tQ29sb3IgPSAoKTogdm9pZCA9PiB7XHJcbiAgICB0aGlzLmdldElucHV0KCkuc2lyaW9JbnB1dC5uYXRpdmVFbGVtZW50LnN0eWxlLmJhY2tncm91bmRDb2xvciA9IHRoaXMuZ2V0UmFuZG9tQ29sb3IoKTsgICAgXHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldElucHV0KCk6IFNpcmlvSW5wdXRDb21wb25lbnQge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0Q29tcG9uZW50UmVmKCkgYXMgU2lyaW9JbnB1dENvbXBvbmVudDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0UmFuZG9tQ29sb3IoKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGxldHRlcnMgPSAnMDEyMzQ1Njc4OUFCQ0RFRic7XHJcbiAgICBsZXQgY29sb3IgPSAnIyc7XHJcblxyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCA2OyBpKyspIHtcclxuICAgICAgY29sb3IgKz0gbGV0dGVyc1tNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAxNildO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBjb2xvcjtcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNpcmlvL3NyYy9saWIvY29udHJvbHMvdGV4dGZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFHcEMsTUFBTSxPQUFPLGdCQUFpQixTQUFRLE9BQU87SUFFM0MsY0FBYztRQUNaLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3pGLENBQUM7SUFFRCx5QkFBeUI7SUFFakIsUUFBUTtRQUNkLE9BQU8sSUFBSSxDQUFDLGVBQWUsRUFBeUIsQ0FBQztJQUN2RCxDQUFDO0lBRU8sY0FBYztRQUNwQixNQUFNLE9BQU8sR0FBRyxrQkFBa0IsQ0FBQztRQUNuQyxJQUFJLEtBQUssR0FBRyxHQUFHLENBQUM7UUFFaEIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzNCLEtBQUssSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNuRCxDQUFDO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0NBR0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250cm9sIH0gZnJvbSBcIi4vY29udHJvbFwiO1xyXG5pbXBvcnQgeyBTaXJpb0lucHV0Q29tcG9uZW50IH0gZnJvbSBcIm5neC1zaXJpby1saWJcIjtcclxuXHJcbmV4cG9ydCBjbGFzcyBUZXh0RmllbGRDb250cm9sIGV4dGVuZHMgQ29udHJvbCB7XHJcblxyXG4gIHNldFJhbmRvbUNvbG9yKCk6IHZvaWR7XHJcbiAgICB0aGlzLmdldElucHV0KCkuc2lyaW9JbnB1dC5uYXRpdmVFbGVtZW50LnN0eWxlLmJhY2tncm91bmRDb2xvciA9IHRoaXMuZ2V0UmFuZG9tQ29sb3IoKTtcclxuICB9XHJcblxyXG4gIC8vI3JlZ2lvbiBQcml2YXRlIE1ldGhvZHNcclxuXHJcbiAgcHJpdmF0ZSBnZXRJbnB1dCgpOiBTaXJpb0lucHV0Q29tcG9uZW50IHtcclxuICAgIHJldHVybiB0aGlzLmdldENvbXBvbmVudFJlZigpIGFzIFNpcmlvSW5wdXRDb21wb25lbnQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFJhbmRvbUNvbG9yKCk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBsZXR0ZXJzID0gJzAxMjM0NTY3ODlBQkNERUYnO1xyXG4gICAgbGV0IGNvbG9yID0gJyMnO1xyXG5cclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgNjsgaSsrKSB7XHJcbiAgICAgIGNvbG9yICs9IGxldHRlcnNbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTYpXTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gY29sb3I7XHJcbiAgfVxyXG5cclxuICAvLyNlbmRyZWdpb25cclxufVxyXG4iXX0=