@ng-formworks/core 18.0.0 → 18.5.1
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.
- package/README.md +23 -16
- package/esm2022/lib/framework-library/framework-library.service.mjs +11 -14
- package/esm2022/lib/framework-library/framework.mjs +4 -4
- package/esm2022/lib/framework-library/no-framework.component.mjs +12 -13
- package/esm2022/lib/framework-library/no-framework.module.mjs +5 -5
- package/esm2022/lib/framework-library/no.framework.mjs +4 -4
- package/esm2022/lib/json-schema-form.component.mjs +152 -158
- package/esm2022/lib/json-schema-form.module.mjs +5 -5
- package/esm2022/lib/json-schema-form.service.mjs +74 -55
- package/esm2022/lib/shared/form-group.functions.mjs +16 -14
- package/esm2022/lib/shared/jsonpointer.functions.mjs +4 -4
- package/esm2022/lib/widget-library/add-reference.component.mjs +20 -23
- package/esm2022/lib/widget-library/button.component.mjs +19 -22
- package/esm2022/lib/widget-library/checkbox.component.mjs +26 -29
- package/esm2022/lib/widget-library/checkboxes.component.mjs +24 -26
- package/esm2022/lib/widget-library/file.component.mjs +13 -16
- package/esm2022/lib/widget-library/hidden.component.mjs +19 -22
- package/esm2022/lib/widget-library/input.component.mjs +36 -39
- package/esm2022/lib/widget-library/message.component.mjs +15 -18
- package/esm2022/lib/widget-library/none.component.mjs +11 -12
- package/esm2022/lib/widget-library/number.component.mjs +33 -36
- package/esm2022/lib/widget-library/one-of.component.mjs +13 -16
- package/esm2022/lib/widget-library/orderable.directive.mjs +22 -25
- package/esm2022/lib/widget-library/radios.component.mjs +32 -34
- package/esm2022/lib/widget-library/root.component.mjs +32 -38
- package/esm2022/lib/widget-library/section.component.mjs +31 -34
- package/esm2022/lib/widget-library/select-framework.component.mjs +17 -24
- package/esm2022/lib/widget-library/select-widget.component.mjs +17 -21
- package/esm2022/lib/widget-library/select.component.mjs +26 -29
- package/esm2022/lib/widget-library/submit.component.mjs +19 -22
- package/esm2022/lib/widget-library/tab.component.mjs +21 -24
- package/esm2022/lib/widget-library/tabs.component.mjs +32 -34
- package/esm2022/lib/widget-library/template.component.mjs +18 -21
- package/esm2022/lib/widget-library/textarea.component.mjs +26 -29
- package/esm2022/lib/widget-library/widget-library.module.mjs +5 -5
- package/esm2022/lib/widget-library/widget-library.service.mjs +4 -4
- package/fesm2022/ng-formworks-core.mjs +1571 -1631
- package/fesm2022/ng-formworks-core.mjs.map +1 -1
- package/lib/framework-library/framework-library.service.d.ts +1 -3
- package/lib/framework-library/no-framework.component.d.ts +4 -4
- package/lib/json-schema-form.component.d.ts +29 -31
- package/lib/json-schema-form.service.d.ts +29 -18
- package/lib/shared/validator.functions.d.ts +1 -1
- package/lib/widget-library/add-reference.component.d.ts +4 -6
- package/lib/widget-library/button.component.d.ts +4 -6
- package/lib/widget-library/checkbox.component.d.ts +4 -6
- package/lib/widget-library/checkboxes.component.d.ts +5 -6
- package/lib/widget-library/file.component.d.ts +4 -6
- package/lib/widget-library/hidden.component.d.ts +4 -6
- package/lib/widget-library/index.d.ts +1 -21
- package/lib/widget-library/input.component.d.ts +4 -6
- package/lib/widget-library/message.component.d.ts +4 -6
- package/lib/widget-library/none.component.d.ts +4 -4
- package/lib/widget-library/number.component.d.ts +4 -6
- package/lib/widget-library/one-of.component.d.ts +4 -6
- package/lib/widget-library/orderable.directive.d.ts +6 -8
- package/lib/widget-library/radios.component.d.ts +4 -6
- package/lib/widget-library/root.component.d.ts +6 -8
- package/lib/widget-library/section.component.d.ts +4 -6
- package/lib/widget-library/select-framework.component.d.ts +6 -8
- package/lib/widget-library/select-widget.component.d.ts +6 -8
- package/lib/widget-library/select.component.d.ts +4 -6
- package/lib/widget-library/submit.component.d.ts +4 -6
- package/lib/widget-library/tab.component.d.ts +4 -6
- package/lib/widget-library/tabs.component.d.ts +4 -6
- package/lib/widget-library/template.component.d.ts +6 -8
- package/lib/widget-library/textarea.component.d.ts +4 -6
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -31,33 +31,36 @@ A [JSON Schema](http://json-schema.org) Form builder for Angular, similar to, an
|
|
|
31
31
|
|
|
32
32
|
## Versions
|
|
33
33
|
|
|
34
|
+
### NB the version of ng-formworks to be installed, should correspond to the Angular version being used.
|
|
34
35
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
|
38
|
-
|
|
39
|
-
|
|
|
40
|
-
|
|
|
36
|
+
Below is a table of the corresponding ng-formworks versions that's needed for the Angular version installed. It also lists the installation command if choosing to use the Material Design Framework, but installing other frameworks should have a similar command, have a look at their READMES for specific details.
|
|
37
|
+
|
|
38
|
+
| Angular | ng-formworks | installation (for Material Design)
|
|
39
|
+
|--|--|--|
|
|
40
|
+
| 18.x.x |18.x.x|```npm install @ng-formworks/core@^18.0.0 @ng-formworks/cssframework@^18.0.0 @ng-formworks/material@^18.0.0```|
|
|
41
|
+
| 17.x.x |17.x.x|```npm install @ng-formworks/core@^17.0.0 @ng-formworks/cssframework@^17.0.0 @ng-formworks/material@^17.0.0```|
|
|
42
|
+
| 16.x.x |16.x.x|```npm install @ng-formworks/core@^16.0.0 @ng-formworks/cssframework@^16.0.0 @ng-formworks/material@^16.0.0```|
|
|
43
|
+
| 15.x.x |15.x.x|```npm install @ng-formworks/core@^15.0.0 @ng-formworks/cssframework@^15.0.0 @ng-formworks/material@^15.0.0```|
|
|
41
44
|
|
|
42
45
|
|
|
43
46
|
## Packages
|
|
44
47
|
|
|
45
|
-
* [`@ng-formworks/core`][gh_core_project] [![npm version][npm_core_badge]][npm_core_ver]
|
|
48
|
+
* [`@ng-formworks/core`][gh_core_project] [![npm version][npm_core_badge]][npm_core_ver]
|
|
46
49
|
|
|
47
|
-
* [`@ng-formworks/cssframework`][gh_cssframework_project] [![npm version][npm_cssframework_badge]][npm_cssframework_ver]
|
|
50
|
+
* [`@ng-formworks/cssframework`][gh_cssframework_project] [![npm version][npm_cssframework_badge]][npm_cssframework_ver]
|
|
48
51
|
|
|
49
|
-
* [`@ng-formworks/bootstrap3`][gh_bootstrap3_project] [![npm version][npm_bootstrap3_badge]][npm_bootstrap3_ver]
|
|
52
|
+
* [`@ng-formworks/bootstrap3`][gh_bootstrap3_project] [![npm version][npm_bootstrap3_badge]][npm_bootstrap3_ver]
|
|
50
53
|
|
|
51
|
-
* [`@ng-formworks/bootstrap4`][gh_bootstrap4_project] [![npm version][npm_bootstrap4_badge]][npm_bootstrap4_ver]
|
|
54
|
+
* [`@ng-formworks/bootstrap4`][gh_bootstrap4_project] [![npm version][npm_bootstrap4_badge]][npm_bootstrap4_ver]
|
|
52
55
|
|
|
53
56
|
|
|
54
|
-
* [`@ng-formworks/bootstrap5`][gh_bootstrap5_project] [![npm version][npm_bootstrap5_badge]][npm_bootstrap5_ver]
|
|
57
|
+
* [`@ng-formworks/bootstrap5`][gh_bootstrap5_project] [![npm version][npm_bootstrap5_badge]][npm_bootstrap5_ver]
|
|
55
58
|
|
|
56
59
|
|
|
57
|
-
* [`@ng-formworks/daisyui`][gh_daisyui_project] [![npm version][npm_daisyui_badge]][npm_daisyui_ver]
|
|
60
|
+
* [`@ng-formworks/daisyui`][gh_daisyui_project] [![npm version][npm_daisyui_badge]][npm_daisyui_ver]
|
|
58
61
|
|
|
59
62
|
|
|
60
|
-
* [`@ng-formworks/material`][gh_material_project] [![npm version][npm_material_badge]][npm_material_ver]
|
|
63
|
+
* [`@ng-formworks/material`][gh_material_project] [![npm version][npm_material_badge]][npm_material_ver]
|
|
61
64
|
|
|
62
65
|
## Check out the live demo and play with the examples
|
|
63
66
|
|
|
@@ -92,12 +95,12 @@ For example if you'd like to try the material design based framework, [install @
|
|
|
92
95
|
|
|
93
96
|
|
|
94
97
|
```shell
|
|
95
|
-
npm install @ng-formworks/core
|
|
98
|
+
npm install @ng-formworks/core @ng-formworks/cssframework @ng-formworks/material
|
|
96
99
|
```
|
|
97
100
|
|
|
98
101
|
With YARN, run the following:
|
|
99
102
|
```shell
|
|
100
|
-
yarn add @ng-formworks/core
|
|
103
|
+
yarn add @ng-formworks/core @ng-formworks/cssframework @ng-formworks/material
|
|
101
104
|
```
|
|
102
105
|
|
|
103
106
|
include the themes scss in your applications sass file(typically "styles.scss" under "src" folder -see angular docs for more details)
|
|
@@ -690,7 +693,7 @@ currently the following built-in themes are available(per framework):
|
|
|
690
693
|
* Bootstrap 3:"bootstrap3_default"
|
|
691
694
|
* Bootstrap 4:"bootstrap4_default"
|
|
692
695
|
* Bootstrap 5:"bootstrap5_default" | "light" | "dark"
|
|
693
|
-
* Material design:"material_default" | "indigo-pink" | "purple-green" | "deeppurple-amber" | "pink-bluegrey"
|
|
696
|
+
* Material design:"material_default" | "azure-blue" | "rose-red" | "cyan-orange" | "magenta-violet" | "indigo-pink" | "purple-green" | "deeppurple-amber" | "pink-bluegrey"
|
|
694
697
|
* DaisyUi: "daisyui_default" | "light" | "dark" | "cupcake" | "cmyk" | "pastel" |"daisyui_leaf"
|
|
695
698
|
|
|
696
699
|
| Framework Values | Theme values |
|
|
@@ -700,6 +703,10 @@ currently the following built-in themes are available(per framework):
|
|
|
700
703
|
| "bootstrap-5" | "light" |
|
|
701
704
|
| | "dark" |
|
|
702
705
|
| "material-design" | "material_default" |
|
|
706
|
+
| | "azure-blue" |
|
|
707
|
+
| | "rose-red" |
|
|
708
|
+
| | "cyan-orange" |
|
|
709
|
+
| | "magenta-violet" |
|
|
703
710
|
| | "indigo-pink" |
|
|
704
711
|
| | "purple-green" |
|
|
705
712
|
| | "deeppurple-amber" |
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { HttpClient } from '@angular/common/http';
|
|
2
|
+
import { Inject, Injectable, inject } from '@angular/core';
|
|
2
3
|
import { Subject, lastValueFrom } from 'rxjs';
|
|
3
4
|
import { hasOwn } from '../shared/utility.functions';
|
|
4
5
|
import { WidgetLibraryService } from '../widget-library/widget-library.service';
|
|
5
6
|
import { Framework } from './framework';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@angular/common/http";
|
|
8
|
-
import * as i2 from "../widget-library/widget-library.service";
|
|
9
8
|
// Possible future frameworks:
|
|
10
9
|
// - Foundation 6:
|
|
11
10
|
// http://justindavis.co/2017/06/15/using-foundation-6-in-angular-4/
|
|
@@ -14,10 +13,11 @@ import * as i2 from "../widget-library/widget-library.service";
|
|
|
14
13
|
// https://github.com/edcarroll/ng2-semantic-ui
|
|
15
14
|
// https://github.com/vladotesanovic/ngSemantic
|
|
16
15
|
export class FrameworkLibraryService {
|
|
17
|
-
constructor(frameworks
|
|
16
|
+
constructor(frameworks) {
|
|
18
17
|
this.frameworks = frameworks;
|
|
19
|
-
|
|
20
|
-
this.
|
|
18
|
+
//private frameworks = inject(Framework);
|
|
19
|
+
this.widgetLibrary = inject(WidgetLibraryService);
|
|
20
|
+
this.http = inject(HttpClient);
|
|
21
21
|
this.activeFramework = null;
|
|
22
22
|
this.loadExternalAssets = false;
|
|
23
23
|
this.frameworkLibrary = {};
|
|
@@ -157,10 +157,10 @@ export class FrameworkLibraryService {
|
|
|
157
157
|
return actFramework.unregisterTheme(name);
|
|
158
158
|
}
|
|
159
159
|
}
|
|
160
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
161
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.
|
|
160
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FrameworkLibraryService, deps: [{ token: Framework }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
161
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FrameworkLibraryService, providedIn: 'root' }); }
|
|
162
162
|
}
|
|
163
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
163
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FrameworkLibraryService, decorators: [{
|
|
164
164
|
type: Injectable,
|
|
165
165
|
args: [{
|
|
166
166
|
providedIn: 'root',
|
|
@@ -168,8 +168,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
168
168
|
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
169
169
|
type: Inject,
|
|
170
170
|
args: [Framework]
|
|
171
|
-
}] }
|
|
172
|
-
type: Inject,
|
|
173
|
-
args: [WidgetLibraryService]
|
|
174
|
-
}] }, { type: i1.HttpClient }] });
|
|
175
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhbWV3b3JrLWxpYnJhcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1jb3JlL3NyYy9saWIvZnJhbWV3b3JrLWxpYnJhcnkvZnJhbWV3b3JrLWxpYnJhcnkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQWMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDaEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7OztBQUV4Qyw4QkFBOEI7QUFDOUIsa0JBQWtCO0FBQ2xCLHNFQUFzRTtBQUN0RSw2Q0FBNkM7QUFDN0MsaUJBQWlCO0FBQ2pCLGlEQUFpRDtBQUNqRCxpREFBaUQ7QUFLakQsTUFBTSxPQUFPLHVCQUF1QjtJQVlsQyxZQUM2QixVQUFpQixFQUNOLGFBQW1DLEVBQ2pFLElBQWdCO1FBRkcsZUFBVSxHQUFWLFVBQVUsQ0FBTztRQUNOLGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtRQUNqRSxTQUFJLEdBQUosSUFBSSxDQUFZO1FBZDFCLG9CQUFlLEdBQWMsSUFBSSxDQUFDO1FBR2xDLHVCQUFrQixHQUFHLEtBQUssQ0FBQztRQUUzQixxQkFBZ0IsR0FBa0MsRUFBRSxDQUFDO1FBV25ELElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQ2xDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsU0FBUyxDQUNsRCxDQUFDO1FBQ0YsSUFBSSxDQUFDLGdCQUFnQixHQUFH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QUFZLENBQUMsYUFBYSxFQUFDLENBQUM7WUFDN0IsT0FBTyxZQUFZLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVDLENBQUM7SUFDSCxDQUFDOzhHQS9LUSx1QkFBdUIsa0JBYXhCLFNBQVMsYUFDVCxvQkFBb0I7a0hBZG5CLHVCQUF1QixjQUZ0QixNQUFNOzsyRkFFUCx1QkFBdUI7a0JBSG5DLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFjSSxNQUFNOzJCQUFDLFNBQVM7OzBCQUNoQixNQUFNOzJCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBsYXN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGhhc093biB9IGZyb20gJy4uL3NoYXJlZC91dGlsaXR5LmZ1bmN0aW9ucyc7XHJcbmltcG9ydCB7IFdpZGdldExpYnJhcnlTZXJ2aWNlIH0gZnJvbSAnLi4vd2lkZ2V0LWxpYnJhcnkvd2lkZ2V0LWxpYnJhcnkuc2VydmljZSc7XHJcbmltcG9ydCB7IEZyYW1ld29yayB9IGZyb20gJy4vZnJhbWV3b3JrJztcclxuXHJcbi8vIFBvc3NpYmxlIGZ1dHVyZSBmcmFtZXdvcmtzOlxyXG4vLyAtIEZvdW5kYXRpb24gNjpcclxuLy8gICBodHRwOi8vanVzdGluZGF2aXMuY28vMjAxNy8wNi8xNS91c2luZy1mb3VuZGF0aW9uLTYtaW4tYW5ndWxhci00L1xyXG4vLyAgIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXNcclxuLy8gLSBTZW1hbnRpYyBVSTpcclxuLy8gICBodHRwczovL2dpdGh1Yi5jb20vZWRjYXJyb2xsL25nMi1zZW1hbnRpYy11aVxyXG4vLyAgIGh0dHBzOi8vZ2l0aHViLmNvbS92bGFkb3Rlc2Fub3ZpYy9uZ1NlbWFudGljXHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRnJhbWV3b3JrTGlicmFyeVNlcnZpY2Uge1xyXG4gIGFjdGl2ZUZyYW1ld29yazogRnJhbWV3b3JrID0gbnVsbDtcclxuICBzdHlsZXNoZWV0czogKEhUTUxTdHlsZUVsZW1lbnR8SFRNTExpbmtFbGVtZW50KVtdO1xyXG4gIHNjcmlwdHM6IEhUTUxTY3JpcHRFbGVtZW50W107XHJcbiAgbG9hZEV4dGVybmFsQXNzZXRzID0gZmFsc2U7XHJcbiAgZGVmYXVsdEZyYW1ld29yazogc3RyaW5nO1xyXG4gIGZyYW1ld29ya0xpYnJhcnk6IHsgW25hbWU6IHN0cmluZ106IEZyYW1ld29yayB9ID0ge307XHJcblxyXG4gIGFjdGl2ZUZyYW1ld29ya05hbWUkOiBPYnNlcnZhYmxlPHN0cmluZz47XHJcbiAgcHJpdmF0ZSBhY3RpdmVGcmFtZXdvcmtOYW1lU3ViamVjdDogU3ViamVjdDxzdHJpbmc+O1xyXG4gIHByaXZhdGUgYWN0aXZlRnJhbWV3b3JrTmFtZTpzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEluamVjdChGcmFtZXdvcmspIHByaXZhdGUgZnJhbWV3b3JrczogYW55W10sXHJcbiAgICBASW5qZWN0KFdpZGdldExpYnJhcnlTZXJ2aWNlKSBwcml2YXRlIHdpZGdldExpYnJhcnk6IFdpZGdldExpYnJhcnlTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICkge1xyXG4gICAgdGhpcy5mcmFtZXdvcmtzLmZvckVhY2goZnJhbWV3b3JrID0+XHJcbiAgICAgIHRoaXMuZnJhbWV3b3JrTGlicmFyeVtmcmFtZXdvcmsubmFtZV0gPSBmcmFtZXdvcmtcclxuICAgICk7XHJcbiAgICB0aGlzLmRlZmF1bHRGcmFtZXdvcmsgPSB0aGlzLmZyYW1ld29ya3NbMF0ubmFtZTtcclxuICAgIC8vdGhpcy5zZXRGcmFtZXdvcmsodGhpcy5kZWZhdWx0RnJhbWV3b3JrKTtcclxuICAgIFxyXG4gICAgdGhpcy5hY3RpdmVGcmFtZXdvcmtOYW1lPXRoaXMuZGVmYXVsdEZyYW1ld29yaztcclxuICAgIHRoaXMuYWN0aXZlRnJhbWV3b3JrTmFtZVN1YmplY3QgPSBuZXcgU3ViamVjdDxzdHJpbmc+KCk7XHJcbiAgICB0aGlzLmFjdGl2ZUZyYW1ld29ya05hbWUkID0gdGhpcy5hY3RpdmVGcmFtZXdvcmtOYW1lU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICAgIHRoaXMuc2V0RnJhbWV3b3JrKHRoaXMuZGVmYXVsdEZyYW1ld29yayk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0TG9hZEV4dGVybmFsQXNzZXRzKGxvYWRFeHRlcm5hbEFzc2V0cyA9IHRydWUpOiB2b2lkIHtcclxuICAgIHRoaXMubG9hZEV4dGVybmFsQXNzZXRzID0gISFsb2FkRXh0ZXJuYWxBc3NldHM7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0RnJhbWV3b3JrKFxyXG4gICAgZnJhbWV3b3JrOiBzdHJpbmd8RnJhbWV3b3JrID0gdGhpcy5kZWZhdWx0RnJhbWV3b3JrLFxyXG4gICAgbG9hZEV4dGVybmFsQXNzZXRzID0gdGhpcy5sb2FkRXh0ZXJuYWxBc3NldHNcclxuICApOiBib29sZWFuIHtcclxuICAgIHRoaXMuYWN0aXZlRnJhbWV3b3JrID1cclxuICAgICAgdHlwZW9mIGZyYW1ld29yayA9PT0gJ3N0cmluZycgJiYgdGhpcy5oYXNGcmFtZXdvcmsoZnJhbWV3b3JrKSA/XHJcbiAgICAgICAgdGhpcy5mcmFtZXdvcmtMaWJyYXJ5W2ZyYW1ld29ya10gOlxyXG4gICAgICB0eXBlb2YgZnJhbWV3b3JrID09PSAnb2JqZWN0JyAmJiBoYXNPd24oZnJhbWV3b3JrLCAnZnJhbWV3b3JrJykgP1xyXG4gICAgICAgIGZyYW1ld29yayA6XHJcbiAgICAgICAgdGhpcy5mcmFtZXdvcmtMaWJyYXJ5W3RoaXMuZGVmYXVsdEZyYW1ld29ya107XHJcbiAgICBpZih0aGlzLmFjdGl2ZUZyYW1ld29yay5uYW1lICE9dGhpcy5hY3RpdmVGcmFtZXdvcmtOYW1lKXtcclxuICAgICAgdGhpcy5hY3RpdmVGcmFtZXdvcmtOYW1lPXRoaXMuYWN0aXZlRnJhbWV3b3JrLm5hbWU7XHJcbiAgICAgIHRoaXMuYWN0aXZlRnJhbWV3b3JrTmFtZVN1YmplY3QubmV4dCh0aGlzLmFjdGl2ZUZyYW1ld29ya05hbWUpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMucmVnaXN0ZXJGcmFtZXdvcmtXaWRnZXRzKHRoaXMuYWN0aXZlRnJhbWV3b3JrKTtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyRnJhbWV3b3JrV2lkZ2V0cyhmcmFtZXdvcms6IEZyYW1ld29yayk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIGhhc093bihmcmFtZXdvcmssICd3aWRnZXRzJykgP1xyXG4gICAgICB0aGlzLndpZGdldExpYnJhcnkucmVnaXN0ZXJGcmFtZXdvcmtXaWRnZXRzKGZyYW1ld29yay53aWRnZXRzKSA6XHJcbiAgICAgIHRoaXMud2lkZ2V0TGlicmFyeS51blJlZ2lzdGVyRnJhbWV3b3JrV2lkZ2V0cygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhc0ZyYW1ld29yayh0eXBlOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBoYXNPd24odGhpcy5mcmFtZXdvcmtMaWJyYXJ5LCB0eXBlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRGcmFtZXdvcmsoKTogYW55IHtcclxuICAgIGlmICghdGhpcy5hY3RpdmVGcmFtZXdvcmspIHsgdGhpcy5zZXRGcmFtZXdvcmsoJ2RlZmF1bHQnLCB0cnVlKTsgfVxyXG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlRnJhbWV3b3JrLmZyYW1ld29yaztcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRGcmFtZXdvcmtMaXN0KCk6e25hbWU6c3RyaW5nLHRleHQ6c3RyaW5nfVtdIHtcclxuICAgIHJldHVybiB0aGlzLmZyYW1ld29ya3MubWFwKGZ3PT57XHJcbiAgICAgIHJldHVybiB7bmFtZTpmdy5uYW1lLHRleHQ6ZncudGV4dH07XHJcbiAgICB9KVxyXG4gICAgXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0RnJhbWV3b3JrV2lkZ2V0cygpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlRnJhbWV3b3JrLndpZGdldHMgfHwge307XHJcbiAgfVxyXG5cclxuICBcclxuXHJcbiAgcHVibGljIGdldEZyYW1ld29ya1N0eWxlc2hlZXRzKGxvYWQ6IGJvb2xlYW4gPSB0aGlzLmxvYWRFeHRlcm5hbEFzc2V0cyk6IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiAobG9hZCAmJiB0aGlzLmFjdGl2ZUZyYW1ld29yay5zdHlsZXNoZWV0cykgfHwgW107XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0RnJhbWV3b3JrU2NyaXB0cyhsb2FkOiBib29sZWFuID0gdGhpcy5sb2FkRXh0ZXJuYWxBc3NldHMpOiBzdHJpbmdbXSB7XHJcbiAgICByZXR1cm4gKGxvYWQgJiYgdGhpcy5hY3RpdmVGcmFtZXdvcmsuc2NyaXB0cykgfHwgW107XHJcbiAgfVxyXG5cclxuICAvL2FwcGxpZXMgdG8gQ3NzRnJhbWV3b3JrIGNsYXNzZXNcclxuICBwdWJsaWMgZ2V0RnJhbWV3b3JrQ29uZmlnKGV4aXN0aW5nRnJhbWV3b3JrPzphbnkpOiBhbnkge1xyXG4gICAgbGV0IGFjdEZyYW1ld29yazpGcmFtZXdvcmsmIHsgW2tleTogc3RyaW5nXTogYW55OyB9PWV4aXN0aW5nRnJhbWV3b3JrfHx0aGlzLmFjdGl2ZUZyYW1ld29yaztcclxuICAgIHJldHVybiBhY3RGcmFtZXdvcmsuY29uZmlnO1xyXG4gIH1cclxuXHJcbiAgLy90aGlzIHdpbGwgbG9hZCB0aGUgbGlzdCBvZiBhc3NldHMgdG8gYmUgbG9hZGVkIGF0IHJ1bnRpbWUgaW4gY2FzZSB0aGUgZGVwZW5kZW50IGZyYW1ld29ya1xyXG4gIC8vc2NyaXB0cyBhbmQgc3R5bGVzIGFyZSBpbmNsdWRlIGxvY2FsbHkgd2l0aCB0aGUgcGFyZW50IGFwcFxyXG4gIHB1YmxpYyBnZXRGcmFtZXdvcmtBc3NldENvbmZpZyhleGlzdGluZ0ZyYW1ld29yaz86YW55LHVzZUFzc2V0UmVsUGF0aD10cnVlKTpQcm9taXNlPHtzdHlsZXNoZWV0czpzdHJpbmdbXSxzY3JpcHRzOnN0cmluZ1tdfT57XHJcbiAgICBsZXQgYWN0RnJhbWV3b3JrOkZyYW1ld29yayYgeyBba2V5OiBzdHJpbmddOiBhbnk7IH09ZXhpc3RpbmdGcmFtZXdvcmt8fHRoaXMuYWN0aXZlRnJhbWV3b3JrO1xyXG4gICAgLy9UT0RPIG1vdmUgdGhpcyBpbnRvIGNvbmZpZ1xyXG4gICAgY29uc3QgYXNzZXRDb25maWdQYXRoID0gYGFzc2V0cy8ke2FjdEZyYW1ld29yay5uYW1lfS9jc3NmcmFtZXdvcmtgXHJcbiAgICBjb25zdCBhc3NldENvbmZpZ1VSTCA9IGAke2Fzc2V0Q29uZmlnUGF0aH0vYXNzZXRzLmpzb25gO1xyXG4gICAgbGV0IHN1YnM9dGhpcy5odHRwXHJcbiAgICAgIC5nZXQoYXNzZXRDb25maWdVUkwsIHsgcmVzcG9uc2VUeXBlOiAndGV4dCcgfSlcclxuICAgICAgLy8uc3Vic2NyaWJlKGFzc2V0Q29uZmlnID0+IHtcclxuICAgICAgLy8gIGFzc2V0Q29uZmlnXHJcbiAgICAgIC8vfSlcclxuICAgICAgXHJcbiAgICAgIHJldHVybiBsYXN0VmFsdWVGcm9tKHN1YnMpLnRoZW4oYXNzZXRDZmdUZXh0PT57XHJcbiAgICAgICAgbGV0IGFzc2V0Q2ZnPUpTT04ucGFyc2UoYXNzZXRDZmdUZXh0KTtcclxuICAgICAgICBpZih1c2VBc3NldFJlbFBhdGgpe1xyXG4gICAgICAgICAgYXNzZXRDZmcuc3R5bGVzaGVldHM9YXNzZXRDZmcuc3R5bGVzaGVldHMubWFwKHN0eWxlTGluaz0+e1xyXG4gICAgICAgICAgICAvL2lnbm9yZSByZWxhdGl2ZSBwYXRoIGlmIHVybCBzdGFydHMgd2l0aCBrbm93biBwcm90b2NvbCBvciAvL1xyXG4gICAgICAgICAgICBsZXQgbm9uUmVsUHJlZml4ZXM9W1wiL1wiLFwiLy9cIixcImh0dHA6XCIsXCJodHRwczpcIl07Ly9cIi8vXCIgbGlzdCBmb3IgY29tcGxldGVuZXNzIFxyXG4gICAgICAgICAgICBsZXQgaXNOb25SZWw9ZmFsc2U7XHJcbiAgICAgICAgICAgIG5vblJlbFByZWZpeGVzLmZvckVhY2gocHJlZml4PT57XHJcbiAgICAgICAgICAgICAgaXNOb25SZWw9aXNOb25SZWx8fHN0eWxlTGluay5pbmRleE9mKHByZWZpeCk9PTA7XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIGlmKGlzTm9uUmVsKXtcclxuICAgICAgICAgICAgICByZXR1cm4gc3R5bGVMaW5rO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiBgJHthc3NldENvbmZpZ1BhdGh9LyR7c3R5bGVMaW5rfWA7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICAgYXNzZXRDZmcuc2NyaXB0cz1hc3NldENmZy5zY3JpcHRzLm1hcChzY3JpcHRMaW5rPT57XHJcbiAgICAgICAgICAgIHJldHVybiBgJHthc3NldENvbmZpZ1BhdGh9LyR7c2NyaXB0TGlua31gO1xyXG4gICAgICAgICAgfSlcclxuICAgICAgICB9ICAgXHJcbiAgICAgICAgcmV0dXJuIGFzc2V0Q2ZnXHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLy9hcHBsaWVzIHRvIENzc0ZyYW1ld29yayBjbGFzc2VzXHJcbiAgcHVibGljIGdldEZyYW1ld29ya1RoZW1lcygpOntuYW1lOnN0cmluZyx0ZXh0OnN0cmluZ31bXSB7XHJcbiAgICBsZXQgY3NzZndDb25maWc9dGhpcy5nZXRGcmFtZXdvcmtDb25maWcoKTtcclxuICAgIGxldCB0aGVtZXM7XHJcbiAgICBpZihjc3Nmd0NvbmZpZyl7XHJcbiAgICAgIHRoZW1lcz1jc3Nmd0NvbmZpZz8ud2lkZ2V0c3R5bGVzPy5fX3RoZW1lc19ffHxbXVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoZW1lc1xyXG4gIH1cclxuXHJcbiAgLy9hcHBsaWVzIHRvIENzc0ZyYW1ld29yayBjbGFzc2VzXHJcbiAgcHVibGljIHJlcXVlc3RUaGVtZUNoYW5nZShuYW1lOnN0cmluZyx2YWxpZGF0ZVRoZW1lRXhpc3RzOmJvb2xlYW49ZmFsc2UsZXhpc3RpbmdGcmFtZXdvcms/OmFueSl7XHJcbiAgICBsZXQgYWN0RnJhbWV3b3JrOkZyYW1ld29yayYgeyBba2V5OiBzdHJpbmddOiBhbnk7IH09ZXhpc3RpbmdGcmFtZXdvcmt8fHRoaXMuYWN0aXZlRnJhbWV3b3JrO1xyXG4gICAgaWYoYWN0RnJhbWV3b3JrLnJlcXVlc3RUaGVtZUNoYW5nZSl7XHJcbiAgICAgIGlmKHZhbGlkYXRlVGhlbWVFeGlzdHMpeyAgXHJcbiAgICAgICAgbGV0IHRoZW1lcz10aGlzLmdldEZyYW1ld29ya1RoZW1lcygpO1xyXG4gICAgICAgIGxldCBmb3VuZFRoZW1lcz10aGVtZXMuZmlsdGVyKHRobT0+e3JldHVybiB0aG0ubmFtZT09bmFtZX0pO1xyXG4gICAgICAgIGlmKCFmb3VuZFRoZW1lc3x8IGZvdW5kVGhlbWVzLmxlbmd0aD09MCl7XHJcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGFjdEZyYW1ld29yay5yZXF1ZXN0VGhlbWVDaGFuZ2UobmFtZSk7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuICAvL2FwcGxpZXMgdG8gQ3NzRnJhbWV3b3JrIGNsYXNzZXNcclxuICBwdWJsaWMgZ2V0QWN0aXZlVGhlbWUoZXhpc3RpbmdGcmFtZXdvcms/OmFueSk6e25hbWU6c3RyaW5nLHRleHQ6c3RyaW5nfXtcclxuICAgIGxldCBhY3RGcmFtZXdvcms6RnJhbWV3b3JrJiB7IFtrZXk6IHN0cmluZ106IGFueTsgfT1leGlzdGluZ0ZyYW1ld29ya3x8dGhpcy5hY3RpdmVGcmFtZXdvcms7XHJcbiAgICBpZihhY3RGcmFtZXdvcmsuZ2V0QWN0aXZlVGhlbWUpe1xyXG4gICAgICByZXR1cm4gYWN0RnJhbWV3b3JrLmdldEFjdGl2ZVRoZW1lKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvL2FwcGxpZXMgdG8gQ3NzRnJhbWV3b3JrIGNsYXNzZXNcclxuICBwdWJsaWMgcmVnaXN0ZXJUaGVtZShuZXdUaGVtZTp7bmFtZTpzdHJpbmcsdGV4dDpzdHJpbmd9LGV4aXN0aW5nRnJhbWV3b3JrPzphbnkpOmJvb2xlYW57XHJcbiAgICBsZXQgYWN0RnJhbWV3b3JrOkZyYW1ld29yayYgeyBba2V5OiBzdHJpbmddOiBhbnk7IH09ZXhpc3RpbmdGcmFtZXdvcmt8fHRoaXMuYWN0aXZlRnJhbWV3b3JrO1xyXG4gICAgaWYoYWN0RnJhbWV3b3JrLnJlZ2lzdGVyVGhlbWUpe1xyXG4gICAgICByZXR1cm4gYWN0RnJhbWV3b3JrLnJlZ2lzdGVyVGhlbWUobmV3VGhlbWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgICAvL2FwcGxpZXMgdG8gQ3NzRnJhbWV3b3JrIGNsYXNzZXNcclxuICAgIHB1YmxpYyB1bnJlZ2lzdGVyVGhlbWUobmFtZTpzdHJpbmcsZXhpc3RpbmdGcmFtZXdvcms/OmFueSk6Ym9vbGVhbntcclxuICAgICAgbGV0IGFjdEZyYW1ld29yazpGcmFtZXdvcmsmIHsgW2tleTogc3RyaW5nXTogYW55OyB9PWV4aXN0aW5nRnJhbWV3b3JrfHx0aGlzLmFjdGl2ZUZyYW1ld29yaztcclxuICAgICAgaWYoYWN0RnJhbWV3b3JrLnJlZ2lzdGVyVGhlbWUpe1xyXG4gICAgICAgIHJldHVybiBhY3RGcmFtZXdvcmsudW5yZWdpc3RlclRoZW1lKG5hbWUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
171
|
+
}] }] });
|
|
172
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhbWV3b3JrLWxpYnJhcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1jb3JlL3NyYy9saWIvZnJhbWV3b3JrLWxpYnJhcnkvZnJhbWV3b3JrLWxpYnJhcnkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBYyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNoRixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQUV4Qyw4QkFBOEI7QUFDOUIsa0JBQWtCO0FBQ2xCLHNFQUFzRTtBQUN0RSw2Q0FBNkM7QUFDN0MsaUJBQWlCO0FBQ2pCLGlEQUFpRDtBQUNqRCxpREFBaUQ7QUFLakQsTUFBTSxPQUFPLHVCQUF1QjtJQWdCbEMsWUFBdUMsVUFBaUI7UUFBakIsZUFBVSxHQUFWLFVBQVUsQ0FBTztRQWZ4RCx5Q0FBeUM7UUFDakMsa0JBQWEsR0FBRyxNQUFNLENBQXVCLG9CQUFvQixDQUFDLENBQUM7UUFDbkUsU0FBSSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVsQyxvQkFBZSxHQUFjLElBQUksQ0FBQztRQUdsQyx1QkFBa0IsR0FBRyxLQUFLLENBQUM7UUFFM0IscUJBQWdCLEdBQWtDLEVBQUUsQ0FBQztRQU9uRCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUNsQyxJQUFJLENBQUMsZ0JB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QUMsaUJBQXNCO1FBQ3ZELElBQUksWUFBWSxHQUFvQyxpQkFBaUIsSUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQzVGLElBQUcsWUFBWSxDQUFDLGFBQWEsRUFBQyxDQUFDO1lBQzdCLE9BQU8sWUFBWSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QyxDQUFDO0lBQ0gsQ0FBQzsrR0EvS1EsdUJBQXVCLGtCQWdCZCxTQUFTO21IQWhCbEIsdUJBQXVCLGNBRnRCLE1BQU07OzRGQUVQLHVCQUF1QjtrQkFIbkMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQWlCYyxNQUFNOzJCQUFDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0LCBsYXN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGhhc093biB9IGZyb20gJy4uL3NoYXJlZC91dGlsaXR5LmZ1bmN0aW9ucyc7XHJcbmltcG9ydCB7IFdpZGdldExpYnJhcnlTZXJ2aWNlIH0gZnJvbSAnLi4vd2lkZ2V0LWxpYnJhcnkvd2lkZ2V0LWxpYnJhcnkuc2VydmljZSc7XHJcbmltcG9ydCB7IEZyYW1ld29yayB9IGZyb20gJy4vZnJhbWV3b3JrJztcclxuXHJcbi8vIFBvc3NpYmxlIGZ1dHVyZSBmcmFtZXdvcmtzOlxyXG4vLyAtIEZvdW5kYXRpb24gNjpcclxuLy8gICBodHRwOi8vanVzdGluZGF2aXMuY28vMjAxNy8wNi8xNS91c2luZy1mb3VuZGF0aW9uLTYtaW4tYW5ndWxhci00L1xyXG4vLyAgIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXNcclxuLy8gLSBTZW1hbnRpYyBVSTpcclxuLy8gICBodHRwczovL2dpdGh1Yi5jb20vZWRjYXJyb2xsL25nMi1zZW1hbnRpYy11aVxyXG4vLyAgIGh0dHBzOi8vZ2l0aHViLmNvbS92bGFkb3Rlc2Fub3ZpYy9uZ1NlbWFudGljXHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRnJhbWV3b3JrTGlicmFyeVNlcnZpY2Uge1xyXG4gIC8vcHJpdmF0ZSBmcmFtZXdvcmtzID0gaW5qZWN0KEZyYW1ld29yayk7XHJcbiAgcHJpdmF0ZSB3aWRnZXRMaWJyYXJ5ID0gaW5qZWN0PFdpZGdldExpYnJhcnlTZXJ2aWNlPihXaWRnZXRMaWJyYXJ5U2VydmljZSk7XHJcbiAgcHJpdmF0ZSBodHRwID0gaW5qZWN0KEh0dHBDbGllbnQpO1xyXG5cclxuICBhY3RpdmVGcmFtZXdvcms6IEZyYW1ld29yayA9IG51bGw7XHJcbiAgc3R5bGVzaGVldHM6IChIVE1MU3R5bGVFbGVtZW50fEhUTUxMaW5rRWxlbWVudClbXTtcclxuICBzY3JpcHRzOiBIVE1MU2NyaXB0RWxlbWVudFtdO1xyXG4gIGxvYWRFeHRlcm5hbEFzc2V0cyA9IGZhbHNlO1xyXG4gIGRlZmF1bHRGcmFtZXdvcms6IHN0cmluZztcclxuICBmcmFtZXdvcmtMaWJyYXJ5OiB7IFtuYW1lOiBzdHJpbmddOiBGcmFtZXdvcmsgfSA9IHt9O1xyXG5cclxuICBhY3RpdmVGcmFtZXdvcmtOYW1lJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xyXG4gIHByaXZhdGUgYWN0aXZlRnJhbWV3b3JrTmFtZVN1YmplY3Q6IFN1YmplY3Q8c3RyaW5nPjtcclxuICBwcml2YXRlIGFjdGl2ZUZyYW1ld29ya05hbWU6c3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEZyYW1ld29yaykgcHJpdmF0ZSBmcmFtZXdvcmtzOiBhbnlbXSwpIHtcclxuICAgIHRoaXMuZnJhbWV3b3Jrcy5mb3JFYWNoKGZyYW1ld29yayA9PlxyXG4gICAgICB0aGlzLmZyYW1ld29ya0xpYnJhcnlbZnJhbWV3b3JrLm5hbWVdID0gZnJhbWV3b3JrXHJcbiAgICApO1xyXG4gICAgdGhpcy5kZWZhdWx0RnJhbWV3b3JrID0gdGhpcy5mcmFtZXdvcmtzWzBdLm5hbWU7XHJcbiAgICAvL3RoaXMuc2V0RnJhbWV3b3JrKHRoaXMuZGVmYXVsdEZyYW1ld29yayk7XHJcbiAgICBcclxuICAgIHRoaXMuYWN0aXZlRnJhbWV3b3JrTmFtZT10aGlzLmRlZmF1bHRGcmFtZXdvcms7XHJcbiAgICB0aGlzLmFjdGl2ZUZyYW1ld29ya05hbWVTdWJqZWN0ID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xyXG4gICAgdGhpcy5hY3RpdmVGcmFtZXdvcmtOYW1lJCA9IHRoaXMuYWN0aXZlRnJhbWV3b3JrTmFtZVN1YmplY3QuYXNPYnNlcnZhYmxlKCk7XHJcbiAgICB0aGlzLnNldEZyYW1ld29yayh0aGlzLmRlZmF1bHRGcmFtZXdvcmspO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldExvYWRFeHRlcm5hbEFzc2V0cyhsb2FkRXh0ZXJuYWxBc3NldHMgPSB0cnVlKTogdm9pZCB7XHJcbiAgICB0aGlzLmxvYWRFeHRlcm5hbEFzc2V0cyA9ICEhbG9hZEV4dGVybmFsQXNzZXRzO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldEZyYW1ld29yayhcclxuICAgIGZyYW1ld29yazogc3RyaW5nfEZyYW1ld29yayA9IHRoaXMuZGVmYXVsdEZyYW1ld29yayxcclxuICAgIGxvYWRFeHRlcm5hbEFzc2V0cyA9IHRoaXMubG9hZEV4dGVybmFsQXNzZXRzXHJcbiAgKTogYm9vbGVhbiB7XHJcbiAgICB0aGlzLmFjdGl2ZUZyYW1ld29yayA9XHJcbiAgICAgIHR5cGVvZiBmcmFtZXdvcmsgPT09ICdzdHJpbmcnICYmIHRoaXMuaGFzRnJhbWV3b3JrKGZyYW1ld29yaykgP1xyXG4gICAgICAgIHRoaXMuZnJhbWV3b3JrTGlicmFyeVtmcmFtZXdvcmtdIDpcclxuICAgICAgdHlwZW9mIGZyYW1ld29yayA9PT0gJ29iamVjdCcgJiYgaGFzT3duKGZyYW1ld29yaywgJ2ZyYW1ld29yaycpID9cclxuICAgICAgICBmcmFtZXdvcmsgOlxyXG4gICAgICAgIHRoaXMuZnJhbWV3b3JrTGlicmFyeVt0aGlzLmRlZmF1bHRGcmFtZXdvcmtdO1xyXG4gICAgaWYodGhpcy5hY3RpdmVGcmFtZXdvcmsubmFtZSAhPXRoaXMuYWN0aXZlRnJhbWV3b3JrTmFtZSl7XHJcbiAgICAgIHRoaXMuYWN0aXZlRnJhbWV3b3JrTmFtZT10aGlzLmFjdGl2ZUZyYW1ld29yay5uYW1lO1xyXG4gICAgICB0aGlzLmFjdGl2ZUZyYW1ld29ya05hbWVTdWJqZWN0Lm5leHQodGhpcy5hY3RpdmVGcmFtZXdvcmtOYW1lKTtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLnJlZ2lzdGVyRnJhbWV3b3JrV2lkZ2V0cyh0aGlzLmFjdGl2ZUZyYW1ld29yayk7XHJcbiAgfVxyXG5cclxuICByZWdpc3RlckZyYW1ld29ya1dpZGdldHMoZnJhbWV3b3JrOiBGcmFtZXdvcmspOiBib29sZWFuIHtcclxuICAgIHJldHVybiBoYXNPd24oZnJhbWV3b3JrLCAnd2lkZ2V0cycpID9cclxuICAgICAgdGhpcy53aWRnZXRMaWJyYXJ5LnJlZ2lzdGVyRnJhbWV3b3JrV2lkZ2V0cyhmcmFtZXdvcmsud2lkZ2V0cykgOlxyXG4gICAgICB0aGlzLndpZGdldExpYnJhcnkudW5SZWdpc3RlckZyYW1ld29ya1dpZGdldHMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBoYXNGcmFtZXdvcmsodHlwZTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gaGFzT3duKHRoaXMuZnJhbWV3b3JrTGlicmFyeSwgdHlwZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0RnJhbWV3b3JrKCk6IGFueSB7XHJcbiAgICBpZiAoIXRoaXMuYWN0aXZlRnJhbWV3b3JrKSB7IHRoaXMuc2V0RnJhbWV3b3JrKCdkZWZhdWx0JywgdHJ1ZSk7IH1cclxuICAgIHJldHVybiB0aGlzLmFjdGl2ZUZyYW1ld29yay5mcmFtZXdvcms7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0RnJhbWV3b3JrTGlzdCgpOntuYW1lOnN0cmluZyx0ZXh0OnN0cmluZ31bXSB7XHJcbiAgICByZXR1cm4gdGhpcy5mcmFtZXdvcmtzLm1hcChmdz0+e1xyXG4gICAgICByZXR1cm4ge25hbWU6ZncubmFtZSx0ZXh0OmZ3LnRleHR9O1xyXG4gICAgfSlcclxuICAgIFxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldEZyYW1ld29ya1dpZGdldHMoKTogYW55IHtcclxuICAgIHJldHVybiB0aGlzLmFjdGl2ZUZyYW1ld29yay53aWRnZXRzIHx8IHt9O1xyXG4gIH1cclxuXHJcbiAgXHJcblxyXG4gIHB1YmxpYyBnZXRGcmFtZXdvcmtTdHlsZXNoZWV0cyhsb2FkOiBib29sZWFuID0gdGhpcy5sb2FkRXh0ZXJuYWxBc3NldHMpOiBzdHJpbmdbXSB7XHJcbiAgICByZXR1cm4gKGxvYWQgJiYgdGhpcy5hY3RpdmVGcmFtZXdvcmsuc3R5bGVzaGVldHMpIHx8IFtdO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldEZyYW1ld29ya1NjcmlwdHMobG9hZDogYm9vbGVhbiA9IHRoaXMubG9hZEV4dGVybmFsQXNzZXRzKTogc3RyaW5nW10ge1xyXG4gICAgcmV0dXJuIChsb2FkICYmIHRoaXMuYWN0aXZlRnJhbWV3b3JrLnNjcmlwdHMpIHx8IFtdO1xyXG4gIH1cclxuXHJcbiAgLy9hcHBsaWVzIHRvIENzc0ZyYW1ld29yayBjbGFzc2VzXHJcbiAgcHVibGljIGdldEZyYW1ld29ya0NvbmZpZyhleGlzdGluZ0ZyYW1ld29yaz86YW55KTogYW55IHtcclxuICAgIGxldCBhY3RGcmFtZXdvcms6RnJhbWV3b3JrJiB7IFtrZXk6IHN0cmluZ106IGFueTsgfT1leGlzdGluZ0ZyYW1ld29ya3x8dGhpcy5hY3RpdmVGcmFtZXdvcms7XHJcbiAgICByZXR1cm4gYWN0RnJhbWV3b3JrLmNvbmZpZztcclxuICB9XHJcblxyXG4gIC8vdGhpcyB3aWxsIGxvYWQgdGhlIGxpc3Qgb2YgYXNzZXRzIHRvIGJlIGxvYWRlZCBhdCBydW50aW1lIGluIGNhc2UgdGhlIGRlcGVuZGVudCBmcmFtZXdvcmtcclxuICAvL3NjcmlwdHMgYW5kIHN0eWxlcyBhcmUgaW5jbHVkZSBsb2NhbGx5IHdpdGggdGhlIHBhcmVudCBhcHBcclxuICBwdWJsaWMgZ2V0RnJhbWV3b3JrQXNzZXRDb25maWcoZXhpc3RpbmdGcmFtZXdvcms/OmFueSx1c2VBc3NldFJlbFBhdGg9dHJ1ZSk6UHJvbWlzZTx7c3R5bGVzaGVldHM6c3RyaW5nW10sc2NyaXB0czpzdHJpbmdbXX0+e1xyXG4gICAgbGV0IGFjdEZyYW1ld29yazpGcmFtZXdvcmsmIHsgW2tleTogc3RyaW5nXTogYW55OyB9PWV4aXN0aW5nRnJhbWV3b3JrfHx0aGlzLmFjdGl2ZUZyYW1ld29yaztcclxuICAgIC8vVE9ETyBtb3ZlIHRoaXMgaW50byBjb25maWdcclxuICAgIGNvbnN0IGFzc2V0Q29uZmlnUGF0aCA9IGBhc3NldHMvJHthY3RGcmFtZXdvcmsubmFtZX0vY3NzZnJhbWV3b3JrYFxyXG4gICAgY29uc3QgYXNzZXRDb25maWdVUkwgPSBgJHthc3NldENvbmZpZ1BhdGh9L2Fzc2V0cy5qc29uYDtcclxuICAgIGxldCBzdWJzPXRoaXMuaHR0cFxyXG4gICAgICAuZ2V0KGFzc2V0Q29uZmlnVVJMLCB7IHJlc3BvbnNlVHlwZTogJ3RleHQnIH0pXHJcbiAgICAgIC8vLnN1YnNjcmliZShhc3NldENvbmZpZyA9PiB7XHJcbiAgICAgIC8vICBhc3NldENvbmZpZ1xyXG4gICAgICAvL30pXHJcbiAgICAgIFxyXG4gICAgICByZXR1cm4gbGFzdFZhbHVlRnJvbShzdWJzKS50aGVuKGFzc2V0Q2ZnVGV4dD0+e1xyXG4gICAgICAgIGxldCBhc3NldENmZz1KU09OLnBhcnNlKGFzc2V0Q2ZnVGV4dCk7XHJcbiAgICAgICAgaWYodXNlQXNzZXRSZWxQYXRoKXtcclxuICAgICAgICAgIGFzc2V0Q2ZnLnN0eWxlc2hlZXRzPWFzc2V0Q2ZnLnN0eWxlc2hlZXRzLm1hcChzdHlsZUxpbms9PntcclxuICAgICAgICAgICAgLy9pZ25vcmUgcmVsYXRpdmUgcGF0aCBpZiB1cmwgc3RhcnRzIHdpdGgga25vd24gcHJvdG9jb2wgb3IgLy9cclxuICAgICAgICAgICAgbGV0IG5vblJlbFByZWZpeGVzPVtcIi9cIixcIi8vXCIsXCJodHRwOlwiLFwiaHR0cHM6XCJdOy8vXCIvL1wiIGxpc3QgZm9yIGNvbXBsZXRlbmVzcyBcclxuICAgICAgICAgICAgbGV0IGlzTm9uUmVsPWZhbHNlO1xyXG4gICAgICAgICAgICBub25SZWxQcmVmaXhlcy5mb3JFYWNoKHByZWZpeD0+e1xyXG4gICAgICAgICAgICAgIGlzTm9uUmVsPWlzTm9uUmVsfHxzdHlsZUxpbmsuaW5kZXhPZihwcmVmaXgpPT0wO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICBpZihpc05vblJlbCl7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIHN0eWxlTGluaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gYCR7YXNzZXRDb25maWdQYXRofS8ke3N0eWxlTGlua31gO1xyXG4gICAgICAgICAgfSlcclxuICAgICAgICAgIGFzc2V0Q2ZnLnNjcmlwdHM9YXNzZXRDZmcuc2NyaXB0cy5tYXAoc2NyaXB0TGluaz0+e1xyXG4gICAgICAgICAgICByZXR1cm4gYCR7YXNzZXRDb25maWdQYXRofS8ke3NjcmlwdExpbmt9YDtcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgfSAgIFxyXG4gICAgICAgIHJldHVybiBhc3NldENmZ1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIC8vYXBwbGllcyB0byBDc3NGcmFtZXdvcmsgY2xhc3Nlc1xyXG4gIHB1YmxpYyBnZXRGcmFtZXdvcmtUaGVtZXMoKTp7bmFtZTpzdHJpbmcsdGV4dDpzdHJpbmd9W10ge1xyXG4gICAgbGV0IGNzc2Z3Q29uZmlnPXRoaXMuZ2V0RnJhbWV3b3JrQ29uZmlnKCk7XHJcbiAgICBsZXQgdGhlbWVzO1xyXG4gICAgaWYoY3NzZndDb25maWcpe1xyXG4gICAgICB0aGVtZXM9Y3NzZndDb25maWc/LndpZGdldHN0eWxlcz8uX190aGVtZXNfX3x8W11cclxuICAgIH1cclxuICAgIHJldHVybiB0aGVtZXNcclxuICB9XHJcblxyXG4gIC8vYXBwbGllcyB0byBDc3NGcmFtZXdvcmsgY2xhc3Nlc1xyXG4gIHB1YmxpYyByZXF1ZXN0VGhlbWVDaGFuZ2UobmFtZTpzdHJpbmcsdmFsaWRhdGVUaGVtZUV4aXN0czpib29sZWFuPWZhbHNlLGV4aXN0aW5nRnJhbWV3b3JrPzphbnkpe1xyXG4gICAgbGV0IGFjdEZyYW1ld29yazpGcmFtZXdvcmsmIHsgW2tleTogc3RyaW5nXTogYW55OyB9PWV4aXN0aW5nRnJhbWV3b3JrfHx0aGlzLmFjdGl2ZUZyYW1ld29yaztcclxuICAgIGlmKGFjdEZyYW1ld29yay5yZXF1ZXN0VGhlbWVDaGFuZ2Upe1xyXG4gICAgICBpZih2YWxpZGF0ZVRoZW1lRXhpc3RzKXsgIFxyXG4gICAgICAgIGxldCB0aGVtZXM9dGhpcy5nZXRGcmFtZXdvcmtUaGVtZXMoKTtcclxuICAgICAgICBsZXQgZm91bmRUaGVtZXM9dGhlbWVzLmZpbHRlcih0aG09PntyZXR1cm4gdGhtLm5hbWU9PW5hbWV9KTtcclxuICAgICAgICBpZighZm91bmRUaGVtZXN8fCBmb3VuZFRoZW1lcy5sZW5ndGg9PTApe1xyXG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBhY3RGcmFtZXdvcmsucmVxdWVzdFRoZW1lQ2hhbmdlKG5hbWUpO1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcbiAgLy9hcHBsaWVzIHRvIENzc0ZyYW1ld29yayBjbGFzc2VzXHJcbiAgcHVibGljIGdldEFjdGl2ZVRoZW1lKGV4aXN0aW5nRnJhbWV3b3JrPzphbnkpOntuYW1lOnN0cmluZyx0ZXh0OnN0cmluZ317XHJcbiAgICBsZXQgYWN0RnJhbWV3b3JrOkZyYW1ld29yayYgeyBba2V5OiBzdHJpbmddOiBhbnk7IH09ZXhpc3RpbmdGcmFtZXdvcmt8fHRoaXMuYWN0aXZlRnJhbWV3b3JrO1xyXG4gICAgaWYoYWN0RnJhbWV3b3JrLmdldEFjdGl2ZVRoZW1lKXtcclxuICAgICAgcmV0dXJuIGFjdEZyYW1ld29yay5nZXRBY3RpdmVUaGVtZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy9hcHBsaWVzIHRvIENzc0ZyYW1ld29yayBjbGFzc2VzXHJcbiAgcHVibGljIHJlZ2lzdGVyVGhlbWUobmV3VGhlbWU6e25hbWU6c3RyaW5nLHRleHQ6c3RyaW5nfSxleGlzdGluZ0ZyYW1ld29yaz86YW55KTpib29sZWFue1xyXG4gICAgbGV0IGFjdEZyYW1ld29yazpGcmFtZXdvcmsmIHsgW2tleTogc3RyaW5nXTogYW55OyB9PWV4aXN0aW5nRnJhbWV3b3JrfHx0aGlzLmFjdGl2ZUZyYW1ld29yaztcclxuICAgIGlmKGFjdEZyYW1ld29yay5yZWdpc3RlclRoZW1lKXtcclxuICAgICAgcmV0dXJuIGFjdEZyYW1ld29yay5yZWdpc3RlclRoZW1lKG5ld1RoZW1lKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICAgLy9hcHBsaWVzIHRvIENzc0ZyYW1ld29yayBjbGFzc2VzXHJcbiAgICBwdWJsaWMgdW5yZWdpc3RlclRoZW1lKG5hbWU6c3RyaW5nLGV4aXN0aW5nRnJhbWV3b3JrPzphbnkpOmJvb2xlYW57XHJcbiAgICAgIGxldCBhY3RGcmFtZXdvcms6RnJhbWV3b3JrJiB7IFtrZXk6IHN0cmluZ106IGFueTsgfT1leGlzdGluZ0ZyYW1ld29ya3x8dGhpcy5hY3RpdmVGcmFtZXdvcms7XHJcbiAgICAgIGlmKGFjdEZyYW1ld29yay5yZWdpc3RlclRoZW1lKXtcclxuICAgICAgICByZXR1cm4gYWN0RnJhbWV3b3JrLnVucmVnaXN0ZXJUaGVtZShuYW1lKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -6,10 +6,10 @@ export class Framework {
|
|
|
6
6
|
this.stylesheets = [];
|
|
7
7
|
this.scripts = [];
|
|
8
8
|
}
|
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
10
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: Framework, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
10
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: Framework }); }
|
|
11
11
|
}
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: Framework, decorators: [{
|
|
13
13
|
type: Injectable
|
|
14
14
|
}] });
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhbWV3b3JrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZm9ybXdvcmtzLWNvcmUvc3JjL2xpYi9mcmFtZXdvcmstbGlicmFyeS9mcmFtZXdvcmsudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHM0MsTUFBTSxPQUFPLFNBQVM7SUFEdEI7UUFLRSxZQUFPLEdBQTRCLEVBQUUsQ0FBQztRQUN0QyxnQkFBVyxHQUFjLEVBQUUsQ0FBQztRQUM1QixZQUFPLEdBQWMsRUFBRSxDQUFDO0tBQ3pCOytHQVBZLFNBQVM7bUhBQVQsU0FBUzs7NEZBQVQsU0FBUztrQkFEckIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEZyYW1ld29yayB7XHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIHRleHQ6c3RyaW5nO1xyXG4gIGZyYW1ld29yazogYW55O1xyXG4gIHdpZGdldHM/OiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0ge307XHJcbiAgc3R5bGVzaGVldHM/OiBzdHJpbmdbXSA9IFtdO1xyXG4gIHNjcmlwdHM/OiBzdHJpbmdbXSA9IFtdO1xyXG59XHJcbiJdfQ==
|
|
@@ -1,18 +1,17 @@
|
|
|
1
|
-
import { Component,
|
|
1
|
+
import { Component, input } from '@angular/core';
|
|
2
2
|
import * as i0 from "@angular/core";
|
|
3
3
|
import * as i1 from "../widget-library/select-widget.component";
|
|
4
4
|
export class NoFrameworkComponent {
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
constructor() {
|
|
6
|
+
this.layoutNode = input(undefined);
|
|
7
|
+
this.layoutIndex = input(undefined);
|
|
8
|
+
this.dataIndex = input(undefined);
|
|
9
|
+
}
|
|
10
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NoFrameworkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
11
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: NoFrameworkComponent, selector: "no-framework", inputs: { layoutNode: { classPropertyName: "layoutNode", publicName: "layoutNode", isSignal: true, isRequired: false, transformFunction: null }, layoutIndex: { classPropertyName: "layoutIndex", publicName: "layoutIndex", isSignal: true, isRequired: false, transformFunction: null }, dataIndex: { classPropertyName: "dataIndex", publicName: "dataIndex", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<select-widget-widget [dataIndex]=\"dataIndex()\" [layoutIndex]=\"layoutIndex()\" [layoutNode]=\"layoutNode()\">\r\n</select-widget-widget>", dependencies: [{ kind: "component", type: i1.SelectWidgetComponent, selector: "select-widget-widget", inputs: ["layoutNode", "layoutIndex", "dataIndex"] }] }); }
|
|
7
12
|
}
|
|
8
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NoFrameworkComponent, decorators: [{
|
|
9
14
|
type: Component,
|
|
10
|
-
args: [{ selector: 'no-framework', template: "<select-widget-widget [dataIndex]=\"dataIndex\" [layoutIndex]=\"layoutIndex\" [layoutNode]=\"layoutNode\">\r\n</select-widget-widget>" }]
|
|
11
|
-
}]
|
|
12
|
-
|
|
13
|
-
}], layoutIndex: [{
|
|
14
|
-
type: Input
|
|
15
|
-
}], dataIndex: [{
|
|
16
|
-
type: Input
|
|
17
|
-
}] } });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm8tZnJhbWV3b3JrLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1jb3JlL3NyYy9saWIvZnJhbWV3b3JrLWxpYnJhcnkvbm8tZnJhbWV3b3JrLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1jb3JlL3NyYy9saWIvZnJhbWV3b3JrLWxpYnJhcnkvbm8tZnJhbWV3b3JrLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNakQsTUFBTSxPQUFPLG9CQUFvQjs4R0FBcEIsb0JBQW9CO2tHQUFwQixvQkFBb0IsOElDTmpDLHVJQUN1Qjs7MkZES1Ysb0JBQW9CO2tCQUpoQyxTQUFTOytCQUNFLGNBQWM7OEJBSWYsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ25vLWZyYW1ld29yaycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL25vLWZyYW1ld29yay5jb21wb25lbnQuaHRtbCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOb0ZyYW1ld29ya0NvbXBvbmVudCB7XHJcbiAgQElucHV0KCkgbGF5b3V0Tm9kZTogYW55O1xyXG4gIEBJbnB1dCgpIGxheW91dEluZGV4OiBudW1iZXJbXTtcclxuICBASW5wdXQoKSBkYXRhSW5kZXg6IG51bWJlcltdO1xyXG59XHJcbiIsIjxzZWxlY3Qtd2lkZ2V0LXdpZGdldCBbZGF0YUluZGV4XT1cImRhdGFJbmRleFwiIFtsYXlvdXRJbmRleF09XCJsYXlvdXRJbmRleFwiIFtsYXlvdXROb2RlXT1cImxheW91dE5vZGVcIj5cclxuPC9zZWxlY3Qtd2lkZ2V0LXdpZGdldD4iXX0=
|
|
15
|
+
args: [{ selector: 'no-framework', template: "<select-widget-widget [dataIndex]=\"dataIndex()\" [layoutIndex]=\"layoutIndex()\" [layoutNode]=\"layoutNode()\">\r\n</select-widget-widget>" }]
|
|
16
|
+
}] });
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm8tZnJhbWV3b3JrLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1jb3JlL3NyYy9saWIvZnJhbWV3b3JrLWxpYnJhcnkvbm8tZnJhbWV3b3JrLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1jb3JlL3NyYy9saWIvZnJhbWV3b3JrLWxpYnJhcnkvbm8tZnJhbWV3b3JrLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNakQsTUFBTSxPQUFPLG9CQUFvQjtJQUpqQztRQUtXLGVBQVUsR0FBRyxLQUFLLENBQU0sU0FBUyxDQUFDLENBQUM7UUFDbkMsZ0JBQVcsR0FBRyxLQUFLLENBQVcsU0FBUyxDQUFDLENBQUM7UUFDekMsY0FBUyxHQUFHLEtBQUssQ0FBVyxTQUFTLENBQUMsQ0FBQztLQUNqRDsrR0FKWSxvQkFBb0I7bUdBQXBCLG9CQUFvQixxZENOakMsNklBQ3VCOzs0RkRLVixvQkFBb0I7a0JBSmhDLFNBQVM7K0JBQ0UsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnbm8tZnJhbWV3b3JrJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vbm8tZnJhbWV3b3JrLmNvbXBvbmVudC5odG1sJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIE5vRnJhbWV3b3JrQ29tcG9uZW50IHtcclxuICByZWFkb25seSBsYXlvdXROb2RlID0gaW5wdXQ8YW55Pih1bmRlZmluZWQpO1xyXG4gIHJlYWRvbmx5IGxheW91dEluZGV4ID0gaW5wdXQ8bnVtYmVyW10+KHVuZGVmaW5lZCk7XHJcbiAgcmVhZG9ubHkgZGF0YUluZGV4ID0gaW5wdXQ8bnVtYmVyW10+KHVuZGVmaW5lZCk7XHJcbn1cclxuIiwiPHNlbGVjdC13aWRnZXQtd2lkZ2V0IFtkYXRhSW5kZXhdPVwiZGF0YUluZGV4KClcIiBbbGF5b3V0SW5kZXhdPVwibGF5b3V0SW5kZXgoKVwiIFtsYXlvdXROb2RlXT1cImxheW91dE5vZGUoKVwiPlxyXG48L3NlbGVjdC13aWRnZXQtd2lkZ2V0PiJdfQ==
|
|
@@ -7,13 +7,13 @@ import { WidgetLibraryModule } from '../widget-library/widget-library.module';
|
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
// No framework - plain HTML controls (styles from form layout only)
|
|
9
9
|
export class NoFrameworkModule {
|
|
10
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
11
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.
|
|
12
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.
|
|
10
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NoFrameworkModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
11
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: NoFrameworkModule, declarations: [NoFrameworkComponent], imports: [CommonModule, WidgetLibraryModule], exports: [NoFrameworkComponent] }); }
|
|
12
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NoFrameworkModule, providers: [
|
|
13
13
|
{ provide: Framework, useClass: NoFramework, multi: true }
|
|
14
14
|
], imports: [CommonModule, WidgetLibraryModule] }); }
|
|
15
15
|
}
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NoFrameworkModule, decorators: [{
|
|
17
17
|
type: NgModule,
|
|
18
18
|
args: [{
|
|
19
19
|
imports: [CommonModule, WidgetLibraryModule],
|
|
@@ -24,4 +24,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
24
24
|
]
|
|
25
25
|
}]
|
|
26
26
|
}] });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm8tZnJhbWV3b3JrLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWZvcm13b3Jrcy1jb3JlL3NyYy9saWIvZnJhbWV3b3JrLWxpYnJhcnkvbm8tZnJhbWV3b3JrLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN4QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7QUFFOUUsb0VBQW9FO0FBVXBFLE1BQU0sT0FBTyxpQkFBaUI7K0dBQWpCLGlCQUFpQjtnSEFBakIsaUJBQWlCLGlCQU5YLG9CQUFvQixhQUR6QixZQUFZLEVBQUUsbUJBQW1CLGFBRWpDLG9CQUFvQjtnSEFLckIsaUJBQWlCLGFBSmY7WUFDUCxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO1NBQzdELFlBTFMsWUFBWSxFQUFFLG1CQUFtQjs7NEZBT2xDLGlCQUFpQjtrQkFSN0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLENBQUM7b0JBQzVDLFlBQVksRUFBRSxDQUFDLG9CQUFvQixDQUFDO29CQUNwQyxPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDL0IsU0FBUyxFQUFFO3dCQUNQLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7cUJBQzdEO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRnJhbWV3b3JrIH0gZnJvbSAnLi9mcmFtZXdvcmsnO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOb0ZyYW1ld29yayB9IGZyb20gJy4vbm8uZnJhbWV3b3JrJztcclxuaW1wb3J0IHsgTm9GcmFtZXdvcmtDb21wb25lbnQgfSBmcm9tICcuL25vLWZyYW1ld29yay5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBXaWRnZXRMaWJyYXJ5TW9kdWxlIH0gZnJvbSAnLi4vd2lkZ2V0LWxpYnJhcnkvd2lkZ2V0LWxpYnJhcnkubW9kdWxlJztcclxuXHJcbi8vIE5vIGZyYW1ld29yayAtIHBsYWluIEhUTUwgY29udHJvbHMgKHN0eWxlcyBmcm9tIGZvcm0gbGF5b3V0IG9ubHkpXHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgV2lkZ2V0TGlicmFyeU1vZHVsZV0sXHJcbiAgICBkZWNsYXJhdGlvbnM6IFtOb0ZyYW1ld29ya0NvbXBvbmVudF0sXHJcbiAgICBleHBvcnRzOiBbTm9GcmFtZXdvcmtDb21wb25lbnRdLFxyXG4gICAgcHJvdmlkZXJzOiBbXHJcbiAgICAgICAgeyBwcm92aWRlOiBGcmFtZXdvcmssIHVzZUNsYXNzOiBOb0ZyYW1ld29yaywgbXVsdGk6IHRydWUgfVxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTm9GcmFtZXdvcmtNb2R1bGUgeyB9XHJcbiJdfQ==
|
|
@@ -10,10 +10,10 @@ export class NoFramework extends Framework {
|
|
|
10
10
|
this.text = 'None (plain HTML)';
|
|
11
11
|
this.framework = NoFrameworkComponent;
|
|
12
12
|
}
|
|
13
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
14
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.
|
|
13
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NoFramework, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
14
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NoFramework }); }
|
|
15
15
|
}
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NoFramework, decorators: [{
|
|
17
17
|
type: Injectable
|
|
18
18
|
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm8uZnJhbWV3b3JrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZm9ybXdvcmtzLWNvcmUvc3JjL2xpYi9mcmFtZXdvcmstbGlicmFyeS9uby5mcmFtZXdvcmsudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQUNoRSxvRUFBb0U7QUFHcEUsTUFBTSxPQUFPLFdBQVksU0FBUSxTQUFTO0lBRDFDOztRQUVFLFNBQUksR0FBRyxjQUFjLENBQUM7UUFDdEIsU0FBSSxHQUFFLG1CQUFtQixDQUFDO1FBQzFCLGNBQVMsR0FBRyxvQkFBb0IsQ0FBQztLQUNsQzsrR0FKWSxXQUFXO21IQUFYLFdBQVc7OzRGQUFYLFdBQVc7a0JBRHZCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZyYW1ld29yayB9IGZyb20gJy4vZnJhbWV3b3JrJztcclxuaW1wb3J0IHsgTm9GcmFtZXdvcmtDb21wb25lbnQgfSBmcm9tICcuL25vLWZyYW1ld29yay5jb21wb25lbnQnO1xyXG4vLyBObyBmcmFtZXdvcmsgLSBwbGFpbiBIVE1MIGNvbnRyb2xzIChzdHlsZXMgZnJvbSBmb3JtIGxheW91dCBvbmx5KVxyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgTm9GcmFtZXdvcmsgZXh0ZW5kcyBGcmFtZXdvcmsge1xyXG4gIG5hbWUgPSAnbm8tZnJhbWV3b3JrJztcclxuICB0ZXh0ID0nTm9uZSAocGxhaW4gSFRNTCknO1xyXG4gIGZyYW1ld29yayA9IE5vRnJhbWV3b3JrQ29tcG9uZW50O1xyXG59XHJcbiJdfQ==
|