ngx-render-material-forms 0.0.4 → 0.0.7

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 (73) hide show
  1. package/esm2020/lib/FormioControl.js +36 -0
  2. package/esm2020/lib/components/Base.js +32 -0
  3. package/esm2020/lib/components/MaterialComponent.js +145 -0
  4. package/esm2020/lib/components/MaterialNestedComponent.js +38 -0
  5. package/esm2020/lib/components/Webform.js +19 -0
  6. package/esm2020/lib/components/button/button.component.mjs +4 -4
  7. package/esm2020/lib/components/calendar/calendar.component.mjs +4 -4
  8. package/esm2020/lib/components/checkbox/checkbox.component.mjs +4 -4
  9. package/esm2020/lib/components/columns/columns.component.mjs +4 -4
  10. package/esm2020/lib/components/container/container.component.mjs +4 -4
  11. package/esm2020/lib/components/content/content.component.mjs +4 -4
  12. package/esm2020/lib/components/currency/currency.component.mjs +4 -4
  13. package/esm2020/lib/components/datagrid/datagrid.component.mjs +4 -4
  14. package/esm2020/lib/components/date/date.component.mjs +4 -4
  15. package/esm2020/lib/components/day/day.component.mjs +4 -4
  16. package/esm2020/lib/components/editgrid/editgrid.component.mjs +4 -4
  17. package/esm2020/lib/components/email/email.component.mjs +4 -4
  18. package/esm2020/lib/components/fieldset/fieldset.component.mjs +4 -4
  19. package/esm2020/lib/components/formio-form-field/formio-form-field.component.mjs +4 -4
  20. package/esm2020/lib/components/formio.wizard.js +88 -0
  21. package/esm2020/lib/components/hidden/hidden.component.mjs +4 -4
  22. package/esm2020/lib/components/html/html.component.mjs +4 -4
  23. package/esm2020/lib/components/index.js +125 -0
  24. package/esm2020/lib/components/label/label.component.mjs +4 -4
  25. package/esm2020/lib/components/number/number.component.mjs +4 -4
  26. package/esm2020/lib/components/panel/panel.component.mjs +4 -4
  27. package/esm2020/lib/components/password/password.component.mjs +4 -4
  28. package/esm2020/lib/components/phonenumber/phonenumber.component.mjs +4 -4
  29. package/esm2020/lib/components/radio/radio.component.mjs +4 -4
  30. package/esm2020/lib/components/select/select.component.mjs +4 -4
  31. package/esm2020/lib/components/selectboxes/selectboxes.component.mjs +4 -4
  32. package/esm2020/lib/components/signature/signature.component.mjs +4 -4
  33. package/esm2020/lib/components/survey/survey.component.mjs +4 -4
  34. package/esm2020/lib/components/table/table.component.mjs +4 -4
  35. package/esm2020/lib/components/tabs/tabs.component.mjs +4 -4
  36. package/esm2020/lib/components/tags/tags.component.mjs +4 -4
  37. package/esm2020/lib/components/textarea/textarea.component.mjs +4 -4
  38. package/esm2020/lib/components/textfield/textfield.component.mjs +4 -4
  39. package/esm2020/lib/components/time/time.component.mjs +4 -4
  40. package/esm2020/lib/components/url/url.component.mjs +4 -4
  41. package/esm2020/lib/components/well/well.component.mjs +4 -4
  42. package/esm2020/lib/const/ButtonsThemes.js +17 -0
  43. package/esm2020/lib/const/LabelPositions.js +10 -0
  44. package/esm2020/lib/directives/mask.directive.js +65 -0
  45. package/esm2020/lib/formio.component.js +80 -0
  46. package/esm2020/lib/ngx-render-material-forms.component.js +22 -0
  47. package/esm2020/lib/ngx-render-material-forms.module.js +344 -0
  48. package/esm2020/lib/ngx-render-material-forms.service.js +14 -0
  49. package/esm2020/lib/renderer.js +13 -0
  50. package/esm2020/ngx-render-material-forms.js +5 -0
  51. package/esm2020/public-api.js +7 -0
  52. package/fesm2015/{ngx-render-material-forms.mjs → ngx-render-material-forms.js} +129 -129
  53. package/fesm2015/ngx-render-material-forms.mjs.map +1 -1
  54. package/fesm2020/ngx-render-material-forms.mjs +129 -129
  55. package/fesm2020/ngx-render-material-forms.mjs.map +1 -1
  56. package/package.json +17 -17
  57. package/esm2020/lib/FormioControl.mjs +0 -36
  58. package/esm2020/lib/components/Base.mjs +0 -32
  59. package/esm2020/lib/components/MaterialComponent.mjs +0 -145
  60. package/esm2020/lib/components/MaterialNestedComponent.mjs +0 -38
  61. package/esm2020/lib/components/Webform.mjs +0 -19
  62. package/esm2020/lib/components/formio.wizard.mjs +0 -88
  63. package/esm2020/lib/components/index.mjs +0 -125
  64. package/esm2020/lib/const/ButtonsThemes.mjs +0 -17
  65. package/esm2020/lib/const/LabelPositions.mjs +0 -10
  66. package/esm2020/lib/directives/mask.directive.mjs +0 -65
  67. package/esm2020/lib/formio.component.mjs +0 -80
  68. package/esm2020/lib/ngx-render-material-forms.component.mjs +0 -22
  69. package/esm2020/lib/ngx-render-material-forms.module.mjs +0 -344
  70. package/esm2020/lib/ngx-render-material-forms.service.mjs +0 -14
  71. package/esm2020/lib/renderer.mjs +0 -13
  72. package/esm2020/ngx-render-material-forms.mjs +0 -5
  73. package/esm2020/public-api.mjs +0 -7
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "ngx-render-material-forms",
3
- "version": "0.0.4",
3
+ "version": "0.0.7",
4
4
  "peerDependencies": {
5
- "@angular/cdk": "^10.0.0 | ^11.0.0",
6
- "@angular/common": "^10.0.0 | ^11.0.0",
7
- "@angular/core": "^10.0.0 | ^11.0.0",
8
- "@angular/flex-layout": "^10.0.0 | ^11.0.0",
9
- "@angular/forms": "^10.0.0 | ^11.0.0",
10
- "@angular/material": "^10.0.0 | ^11.0.0",
5
+ "@angular/common": "^10.2.4",
6
+ "@angular/core": "^10.2.4",
7
+ "@angular/cdk": "^10.2.7",
8
+ "@angular/flex-layout": "^11.0.0-beta.33",
9
+ "@angular/forms": "^10.2.4",
10
+ "@angular/material": "^10.2.7",
11
11
  "@formio/angular": "^5.0.0-rc.4",
12
12
  "formiojs": "^4.12.4-rc.3",
13
13
  "angular-formio": "^5.0.0-rc.4",
@@ -25,11 +25,11 @@
25
25
  "module": "10.2.4",
26
26
  "typings": "10.2.4"
27
27
  },
28
- "module": "fesm2015/ngx-render-material-forms.mjs",
29
- "es2020": "fesm2020/ngx-render-material-forms.mjs",
30
- "esm2020": "esm2020/ngx-render-material-forms.mjs",
31
- "fesm2020": "fesm2020/ngx-render-material-forms.mjs",
32
- "fesm2015": "fesm2015/ngx-render-material-forms.mjs",
28
+ "module": "fesm2015/ngx-render-material-forms.js",
29
+ "es2020": "fesm2020/ngx-render-material-forms.js",
30
+ "esm2020": "esm2020/ngx-render-material-forms.js",
31
+ "fesm2020": "fesm2020/ngx-render-material-forms.js",
32
+ "fesm2015": "fesm2015/ngx-render-material-forms.js",
33
33
  "typings": "index.d.ts",
34
34
  "exports": {
35
35
  "./package.json": {
@@ -37,11 +37,11 @@
37
37
  },
38
38
  ".": {
39
39
  "types": "./index.d.ts",
40
- "esm2020": "./esm2020/ngx-render-material-forms.mjs",
41
- "es2020": "./fesm2020/ngx-render-material-forms.mjs",
42
- "es2015": "./fesm2015/ngx-render-material-forms.mjs",
43
- "node": "./fesm2015/ngx-render-material-forms.mjs",
44
- "default": "./fesm2020/ngx-render-material-forms.mjs"
40
+ "esm2020": "./esm2020/ngx-render-material-forms.js",
41
+ "es2020": "./fesm2020/ngx-render-material-forms.js",
42
+ "es2015": "./fesm2015/ngx-render-material-forms.js",
43
+ "node": "./fesm2015/ngx-render-material-forms.js",
44
+ "default": "./fesm2020/ngx-render-material-forms.js"
45
45
  }
46
46
  },
47
47
  "sideEffects": false
@@ -1,36 +0,0 @@
1
- import { FormControl } from '@angular/forms';
2
- import unescape from 'lodash/unescape';
3
- // @dynamic
4
- export class FormioControl extends FormControl {
5
- constructor(...args) {
6
- super(args[0], [], [FormioControl.customValidator.bind(FormioControl)]);
7
- }
8
- static customValidator(control) {
9
- return new Promise((resolve) => {
10
- if (control.instance) {
11
- control.instance.validateResolve = resolve;
12
- }
13
- else {
14
- resolve(null);
15
- }
16
- });
17
- }
18
- setInstance(instance) {
19
- this.instance = instance;
20
- const setCustomValidity = instance.setCustomValidity;
21
- instance.setCustomValidity = (message, dirty, external, isWarning = false) => {
22
- let decodedMessage = message;
23
- if (Array.isArray(message)) {
24
- decodedMessage = message.map(msg => Object.assign(msg, { message: unescape(msg.message) }));
25
- }
26
- else if (message) {
27
- decodedMessage = unescape(message);
28
- }
29
- setCustomValidity.call(instance, decodedMessage, dirty, external, isWarning);
30
- if (instance.validateResolve) {
31
- instance.validateResolve(decodedMessage ? { custom: true } : null);
32
- }
33
- };
34
- }
35
- }
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRm9ybWlvQ29udHJvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1yZW5kZXItbWF0ZXJpYWwtZm9ybXMvc3JjL2xpYi9Gb3JtaW9Db250cm9sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQW9CLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0QsT0FBTyxRQUFRLE1BQU0saUJBQWlCLENBQUM7QUFFdkMsV0FBVztBQUNYLE1BQU0sT0FBTyxhQUFjLFNBQVEsV0FBVztJQWE1QyxZQUFZLEdBQUcsSUFBSTtRQUNqQixLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBWkQsTUFBTSxDQUFDLGVBQWUsQ0FBQyxPQUFzQjtRQUMzQyxPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDN0IsSUFBSSxPQUFPLENBQUMsUUFBUSxFQUFFO2dCQUNwQixPQUFPLENBQUMsUUFBUSxDQUFDLGVBQWUsR0FBRyxPQUFPLENBQUM7YUFDNUM7aUJBQU07Z0JBQ0wsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ2Y7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFNRCxXQUFXLENBQUMsUUFBYTtRQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixNQUFNLGlCQUFpQixHQUFHLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQztRQUNyRCxRQUFRLENBQUMsaUJBQWlCLEdBQUcsQ0FBQyxPQUFZLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxTQUFTLEdBQUcsS0FBSyxFQUFFLEVBQUU7WUFDaEYsSUFBSSxjQUFjLEdBQUcsT0FBTyxDQUFDO1lBQzdCLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDMUIsY0FBYyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2FBQzdGO2lCQUNJLElBQUksT0FBTyxFQUFFO2dCQUNoQixjQUFjLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQ3BDO1lBRUQsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUM3RSxJQUFJLFFBQVEsQ0FBQyxlQUFlLEVBQUU7Z0JBQzVCLFFBQVEsQ0FBQyxlQUFlLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDbEU7UUFDSCxDQUFDLENBQUM7SUFDSixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtQ29udHJvbCwgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB1bmVzY2FwZSBmcm9tICdsb2Rhc2gvdW5lc2NhcGUnO1xuXG4vLyBAZHluYW1pY1xuZXhwb3J0IGNsYXNzIEZvcm1pb0NvbnRyb2wgZXh0ZW5kcyBGb3JtQ29udHJvbCB7XG4gIHB1YmxpYyBpbnN0YW5jZTogYW55O1xuXG4gIHN0YXRpYyBjdXN0b21WYWxpZGF0b3IoY29udHJvbDogRm9ybWlvQ29udHJvbCk6IFByb21pc2U8VmFsaWRhdGlvbkVycm9ycz4ge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgaWYgKGNvbnRyb2wuaW5zdGFuY2UpIHtcbiAgICAgICAgY29udHJvbC5pbnN0YW5jZS52YWxpZGF0ZVJlc29sdmUgPSByZXNvbHZlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzb2x2ZShudWxsKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKC4uLmFyZ3MpIHtcbiAgICBzdXBlcihhcmdzWzBdLCBbXSwgW0Zvcm1pb0NvbnRyb2wuY3VzdG9tVmFsaWRhdG9yLmJpbmQoRm9ybWlvQ29udHJvbCldKTtcbiAgfVxuXG4gIHNldEluc3RhbmNlKGluc3RhbmNlOiBhbnkpIHtcbiAgICB0aGlzLmluc3RhbmNlID0gaW5zdGFuY2U7XG4gICAgY29uc3Qgc2V0Q3VzdG9tVmFsaWRpdHkgPSBpbnN0YW5jZS5zZXRDdXN0b21WYWxpZGl0eTtcbiAgICBpbnN0YW5jZS5zZXRDdXN0b21WYWxpZGl0eSA9IChtZXNzYWdlOiBhbnksIGRpcnR5LCBleHRlcm5hbCwgaXNXYXJuaW5nID0gZmFsc2UpID0+IHtcbiAgICAgIGxldCBkZWNvZGVkTWVzc2FnZSA9IG1lc3NhZ2U7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShtZXNzYWdlKSkge1xuICAgICAgICBkZWNvZGVkTWVzc2FnZSA9IG1lc3NhZ2UubWFwKG1zZyA9PiBPYmplY3QuYXNzaWduKG1zZywgeyBtZXNzYWdlOiB1bmVzY2FwZShtc2cubWVzc2FnZSkgfSkpO1xuICAgICAgfVxuICAgICAgZWxzZSBpZiAobWVzc2FnZSkge1xuICAgICAgICBkZWNvZGVkTWVzc2FnZSA9IHVuZXNjYXBlKG1lc3NhZ2UpO1xuICAgICAgfVxuXG4gICAgICBzZXRDdXN0b21WYWxpZGl0eS5jYWxsKGluc3RhbmNlLCBkZWNvZGVkTWVzc2FnZSwgZGlydHksIGV4dGVybmFsLCBpc1dhcm5pbmcpO1xuICAgICAgaWYgKGluc3RhbmNlLnZhbGlkYXRlUmVzb2x2ZSkge1xuICAgICAgICBpbnN0YW5jZS52YWxpZGF0ZVJlc29sdmUoZGVjb2RlZE1lc3NhZ2UgPyB7Y3VzdG9tOiB0cnVlfSA6IG51bGwpO1xuICAgICAgfVxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -1,32 +0,0 @@
1
- import FormioComponent from 'formiojs/components/_classes/component/Component.js';
2
- export default (() => {
3
- const beforeSubmit = FormioComponent.prototype.beforeSubmit;
4
- FormioComponent.prototype.beforeSubmit = function (...args) {
5
- if (this.materialComponent) {
6
- this.materialComponent.beforeSubmit();
7
- }
8
- return beforeSubmit.call(this, ...args);
9
- };
10
- Object.defineProperty(FormioComponent.prototype, 'disabled', {
11
- set(disabled) {
12
- this._disabled = disabled;
13
- if (this.materialComponent) {
14
- this.materialComponent.setDisabled(disabled);
15
- }
16
- }
17
- });
18
- Object.defineProperty(FormioComponent.prototype, 'visible', {
19
- set(visible) {
20
- if (this._visible !== visible) {
21
- this._visible = visible;
22
- this.clearOnHide();
23
- this.redraw();
24
- }
25
- if (this.materialComponent) {
26
- this.materialComponent.setVisible(visible);
27
- }
28
- }
29
- });
30
- return FormioComponent;
31
- })();
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZW5kZXItbWF0ZXJpYWwtZm9ybXMvc3JjL2xpYi9jb21wb25lbnRzL0Jhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxlQUFlLE1BQU0scURBQXFELENBQUM7QUFFbEYsZUFBZSxDQUFDLEdBQUcsRUFBRTtJQUNuQixNQUFNLFlBQVksR0FBRyxlQUFlLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQztJQUM1RCxlQUFlLENBQUMsU0FBUyxDQUFDLFlBQVksR0FBRyxVQUFTLEdBQUcsSUFBSTtRQUN2RCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDdkM7UUFDRCxPQUFPLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7SUFDMUMsQ0FBQyxDQUFDO0lBRUYsTUFBTSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRTtRQUMzRCxHQUFHLENBQUMsUUFBUTtZQUNWLElBQUksQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDO1lBQzFCLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO2dCQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQzlDO1FBQ0gsQ0FBQztLQUNGLENBQUMsQ0FBQztJQUVILE1BQU0sQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUU7UUFDMUQsR0FBRyxDQUFDLE9BQU87WUFDVCxJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssT0FBTyxFQUFFO2dCQUM3QixJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztnQkFDeEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2dCQUNuQixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7YUFDZjtZQUNELElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO2dCQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQzVDO1FBQ0gsQ0FBQztLQUNGLENBQUMsQ0FBQztJQUNILE9BQU8sZUFBZSxDQUFDO0FBQ3pCLENBQUMsQ0FBQyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgRm9ybWlvQ29tcG9uZW50IGZyb20gJ2Zvcm1pb2pzL2NvbXBvbmVudHMvX2NsYXNzZXMvY29tcG9uZW50L0NvbXBvbmVudC5qcyc7XG5cbmV4cG9ydCBkZWZhdWx0ICgoKSA9PiB7XG4gIGNvbnN0IGJlZm9yZVN1Ym1pdCA9IEZvcm1pb0NvbXBvbmVudC5wcm90b3R5cGUuYmVmb3JlU3VibWl0O1xuICBGb3JtaW9Db21wb25lbnQucHJvdG90eXBlLmJlZm9yZVN1Ym1pdCA9IGZ1bmN0aW9uKC4uLmFyZ3MpIHtcbiAgICBpZiAodGhpcy5tYXRlcmlhbENvbXBvbmVudCkge1xuICAgICAgdGhpcy5tYXRlcmlhbENvbXBvbmVudC5iZWZvcmVTdWJtaXQoKTtcbiAgICB9XG4gICAgcmV0dXJuIGJlZm9yZVN1Ym1pdC5jYWxsKHRoaXMsIC4uLmFyZ3MpO1xuICB9O1xuXG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShGb3JtaW9Db21wb25lbnQucHJvdG90eXBlLCAnZGlzYWJsZWQnLCB7XG4gICAgc2V0KGRpc2FibGVkKSB7XG4gICAgICB0aGlzLl9kaXNhYmxlZCA9IGRpc2FibGVkO1xuICAgICAgaWYgKHRoaXMubWF0ZXJpYWxDb21wb25lbnQpIHtcbiAgICAgICAgdGhpcy5tYXRlcmlhbENvbXBvbmVudC5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgICB9XG4gICAgfVxuICB9KTtcblxuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoRm9ybWlvQ29tcG9uZW50LnByb3RvdHlwZSwgJ3Zpc2libGUnLCB7XG4gICAgc2V0KHZpc2libGUpIHtcbiAgICAgIGlmICh0aGlzLl92aXNpYmxlICE9PSB2aXNpYmxlKSB7XG4gICAgICAgIHRoaXMuX3Zpc2libGUgPSB2aXNpYmxlO1xuICAgICAgICB0aGlzLmNsZWFyT25IaWRlKCk7XG4gICAgICAgIHRoaXMucmVkcmF3KCk7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5tYXRlcmlhbENvbXBvbmVudCkge1xuICAgICAgICB0aGlzLm1hdGVyaWFsQ29tcG9uZW50LnNldFZpc2libGUodmlzaWJsZSk7XG4gICAgICB9XG4gICAgfVxuICB9KTtcbiAgcmV0dXJuIEZvcm1pb0NvbXBvbmVudDtcbn0pKCk7XG5cbiJdfQ==
@@ -1,145 +0,0 @@
1
- import { Component, Input, ViewChild } from '@angular/core';
2
- import FormioComponent from './Base';
3
- import Validator from 'formiojs/validator/Validator.js';
4
- import { FormioControl } from '../FormioControl';
5
- import get from 'lodash/get';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/material/card";
8
- export class MaterialComponent {
9
- constructor(element, ref) {
10
- this.element = element;
11
- this.ref = ref;
12
- this.control = new FormioControl();
13
- }
14
- setInstance(instance) {
15
- this.control.setInstance(instance);
16
- instance.materialComponent = this;
17
- this.instance = instance;
18
- this.instance.disabled = this.instance.shouldDisabled;
19
- this.setVisible(this.instance.visible);
20
- this.renderComponents();
21
- }
22
- ngOnInit() {
23
- if (this.instance) {
24
- if (this.shouldValidateOnInit()) {
25
- this.storeFormData();
26
- this.validateOnInit();
27
- }
28
- this.instance.component.defaultValue ? this.setValue(this.instance.component.defaultValue) : '';
29
- }
30
- }
31
- validateOnInit() {
32
- const { key } = this.instance.component;
33
- const validationValue = this.getFormValue(this.instance.path);
34
- if (validationValue === null) {
35
- return;
36
- }
37
- this.instance.setPristine(false);
38
- const validationResult = Validator.checkComponent(this.instance, { [key]: validationValue }, { [key]: validationValue });
39
- if (validationResult.length) {
40
- this.instance.setCustomValidity(validationResult, false);
41
- if (!!validationValue) {
42
- this.control.markAsTouched();
43
- }
44
- this.ref.detectChanges();
45
- }
46
- }
47
- storeFormData() {
48
- if (this.instance.parent && this.instance.parent.submission && this.instance.parent.submission.data) {
49
- sessionStorage.setItem('formData', JSON.stringify(this.instance.parent.submission.data));
50
- }
51
- }
52
- getFormValue(path) {
53
- const formData = JSON.parse(sessionStorage.getItem('formData'));
54
- if (!formData) {
55
- return null;
56
- }
57
- return get(formData, path);
58
- }
59
- renderComponents() { }
60
- onChange(keepInputRaw) {
61
- let value = this.getValue();
62
- if (value === undefined || value === null) {
63
- value = this.instance.emptyValue;
64
- }
65
- if (this.input && this.input.nativeElement.mask && value && !keepInputRaw) {
66
- this.input.nativeElement.mask.textMaskInputElement.update(value);
67
- this.control.setValue(this.input.nativeElement.value);
68
- value = this.getValue();
69
- }
70
- this.instance.updateValue(value, { modified: true });
71
- }
72
- getValue() {
73
- return this.control.value;
74
- }
75
- setValue(value) {
76
- this.control.setValue(value);
77
- }
78
- beforeSubmit() {
79
- this.control.markAsTouched();
80
- }
81
- hasError() {
82
- return !!this.instance && !!this.instance.error;
83
- }
84
- shouldValidateOnInit() {
85
- if (!this.instance) {
86
- return;
87
- }
88
- return this.instance.options.validateOnInit
89
- || this.instance.parent.options.validateOnInit;
90
- }
91
- setDisabled(disabled) {
92
- if (disabled) {
93
- this.control.disable();
94
- }
95
- else {
96
- this.control.enable();
97
- }
98
- }
99
- setVisible(visible) {
100
- if (this.element && this.element.nativeElement) {
101
- if (visible) {
102
- this.element.nativeElement.removeAttribute('hidden');
103
- this.element.nativeElement.style.visibility = 'visible';
104
- this.element.nativeElement.style.position = 'relative';
105
- }
106
- else {
107
- this.element.nativeElement.setAttribute('hidden', true);
108
- this.element.nativeElement.style.visibility = 'hidden';
109
- this.element.nativeElement.style.position = 'absolute';
110
- }
111
- }
112
- }
113
- ngAfterViewInit() {
114
- if (this.element && this.element.nativeElement && this.instance) {
115
- // Add custom classes to elements.
116
- if (this.instance.component.customClass) {
117
- this.element.nativeElement.classList.add(this.instance.component.customClass);
118
- }
119
- }
120
- if (this.input) {
121
- // Set the input masks.
122
- this.instance.setInputMask(this.input.nativeElement);
123
- this.instance.addFocusBlurEvents(this.input.nativeElement);
124
- }
125
- }
126
- }
127
- MaterialComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: MaterialComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
128
- MaterialComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: MaterialComponent, selector: "mat-formio-comp", inputs: { instance: "instance", control: "control" }, viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true }], ngImport: i0, template: '<mat-card>Unknown Component: {{ instance.component.type }}</mat-card>', isInline: true, dependencies: [{ kind: "component", type: i1.MatCard, selector: "mat-card", exportAs: ["matCard"] }] });
129
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: MaterialComponent, decorators: [{
130
- type: Component,
131
- args: [{
132
- selector: 'mat-formio-comp',
133
- template: '<mat-card>Unknown Component: {{ instance.component.type }}</mat-card>'
134
- }]
135
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { instance: [{
136
- type: Input
137
- }], input: [{
138
- type: ViewChild,
139
- args: ['input']
140
- }], control: [{
141
- type: Input
142
- }] } });
143
- FormioComponent.MaterialComponent = MaterialComponent;
144
- export { FormioComponent };
145
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWF0ZXJpYWxDb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmVuZGVyLW1hdGVyaWFsLWZvcm1zL3NyYy9saWIvY29tcG9uZW50cy9NYXRlcmlhbENvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQXVELE1BQU0sZUFBZSxDQUFDO0FBQ2hILE9BQU8sZUFBZSxNQUFNLFFBQVEsQ0FBQztBQUNyQyxPQUFPLFNBQVMsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxHQUFHLE1BQU0sWUFBWSxDQUFDOzs7QUFNN0IsTUFBTSxPQUFPLGlCQUFpQjtJQUk1QixZQUFtQixPQUFtQixFQUFTLEdBQXNCO1FBQWxELFlBQU8sR0FBUCxPQUFPLENBQVk7UUFBUyxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUQ1RCxZQUFPLEdBQWtCLElBQUksYUFBYSxFQUFFLENBQUM7SUFDa0IsQ0FBQztJQUV6RSxXQUFXLENBQUMsUUFBYTtRQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNuQyxRQUFRLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDO1FBQ3RELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN2QyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixJ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R0FBakIsaUJBQWlCLDZNQUZsQix1RUFBdUU7MkZBRXRFLGlCQUFpQjtrQkFKN0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsaUJBQWlCO29CQUMzQixRQUFRLEVBQUUsdUVBQXVFO2lCQUNsRjtpSUFFVSxRQUFRO3NCQUFoQixLQUFLO2dCQUNjLEtBQUs7c0JBQXhCLFNBQVM7dUJBQUMsT0FBTztnQkFDVCxPQUFPO3NCQUFmLEtBQUs7O0FBK0lSLGVBQWUsQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXQsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgQ2hhbmdlRGV0ZWN0b3JSZWYsIEFmdGVyVmlld0luaXQsIE9uSW5pdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgRm9ybWlvQ29tcG9uZW50IGZyb20gJy4vQmFzZSc7XG5pbXBvcnQgVmFsaWRhdG9yIGZyb20gJ2Zvcm1pb2pzL3ZhbGlkYXRvci9WYWxpZGF0b3IuanMnO1xuaW1wb3J0IHsgRm9ybWlvQ29udHJvbCB9IGZyb20gJy4uL0Zvcm1pb0NvbnRyb2wnO1xuaW1wb3J0IGdldCBmcm9tICdsb2Rhc2gvZ2V0JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWF0LWZvcm1pby1jb21wJyxcbiAgdGVtcGxhdGU6ICc8bWF0LWNhcmQ+VW5rbm93biBDb21wb25lbnQ6IHt7IGluc3RhbmNlLmNvbXBvbmVudC50eXBlIH19PC9tYXQtY2FyZD4nXG59KVxuZXhwb3J0IGNsYXNzIE1hdGVyaWFsQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25Jbml0IHtcbiAgQElucHV0KCkgaW5zdGFuY2U6IGFueTtcbiAgQFZpZXdDaGlsZCgnaW5wdXQnKSBpbnB1dDogRWxlbWVudFJlZjtcbiAgQElucHV0KCkgY29udHJvbDogRm9ybWlvQ29udHJvbCA9IG5ldyBGb3JtaW9Db250cm9sKCk7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBlbGVtZW50OiBFbGVtZW50UmVmLCBwdWJsaWMgcmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICBzZXRJbnN0YW5jZShpbnN0YW5jZTogYW55KSB7XG4gICAgdGhpcy5jb250cm9sLnNldEluc3RhbmNlKGluc3RhbmNlKTtcbiAgICBpbnN0YW5jZS5tYXRlcmlhbENvbXBvbmVudCA9IHRoaXM7XG4gICAgdGhpcy5pbnN0YW5jZSA9IGluc3RhbmNlO1xuICAgIHRoaXMuaW5zdGFuY2UuZGlzYWJsZWQgPSB0aGlzLmluc3RhbmNlLnNob3VsZERpc2FibGVkO1xuICAgIHRoaXMuc2V0VmlzaWJsZSh0aGlzLmluc3RhbmNlLnZpc2libGUpO1xuICAgIHRoaXMucmVuZGVyQ29tcG9uZW50cygpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMuaW5zdGFuY2UpIHtcbiAgICAgIGlmICh0aGlzLnNob3VsZFZhbGlkYXRlT25Jbml0KCkpIHtcbiAgICAgICAgdGhpcy5zdG9yZUZvcm1EYXRhKCk7XG4gICAgICAgIHRoaXMudmFsaWRhdGVPbkluaXQoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuaW5zdGFuY2UuY29tcG9uZW50LmRlZmF1bHRWYWx1ZSA/IHRoaXMuc2V0VmFsdWUodGhpcy5pbnN0YW5jZS5jb21wb25lbnQuZGVmYXVsdFZhbHVlKSA6ICcnO1xuICAgIH1cbiAgfVxuXG4gIHZhbGlkYXRlT25Jbml0KCkge1xuICAgIGNvbnN0IHtrZXl9ID0gdGhpcy5pbnN0YW5jZS5jb21wb25lbnQ7XG4gICAgY29uc3QgdmFsaWRhdGlvblZhbHVlID0gdGhpcy5nZXRGb3JtVmFsdWUodGhpcy5pbnN0YW5jZS5wYXRoKTtcblxuICAgIGlmICh2YWxpZGF0aW9uVmFsdWUgPT09IG51bGwpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmluc3RhbmNlLnNldFByaXN0aW5lKGZhbHNlKTtcblxuICAgIGNvbnN0IHZhbGlkYXRpb25SZXN1bHQgPSBWYWxpZGF0b3IuY2hlY2tDb21wb25lbnQoXG4gICAgICB0aGlzLmluc3RhbmNlLFxuICAgICAge1trZXldOiB2YWxpZGF0aW9uVmFsdWV9LFxuICAgICAge1trZXldOiB2YWxpZGF0aW9uVmFsdWV9XG4gICAgKTtcblxuICAgIGlmICh2YWxpZGF0aW9uUmVzdWx0Lmxlbmd0aCkge1xuICAgICAgdGhpcy5pbnN0YW5jZS5zZXRDdXN0b21WYWxpZGl0eSh2YWxpZGF0aW9uUmVzdWx0LCBmYWxzZSk7XG4gICAgICBpZiAoISF2YWxpZGF0aW9uVmFsdWUpIHtcbiAgICAgICAgdGhpcy5jb250cm9sLm1hcmtBc1RvdWNoZWQoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMucmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG4gIH1cblxuICBzdG9yZUZvcm1EYXRhKCkge1xuICAgIGlmICh0aGlzLmluc3RhbmNlLnBhcmVudCAmJiB0aGlzLmluc3RhbmNlLnBhcmVudC5zdWJtaXNzaW9uICYmIHRoaXMuaW5zdGFuY2UucGFyZW50LnN1Ym1pc3Npb24uZGF0YSkge1xuICAgICAgc2Vzc2lvblN0b3JhZ2Uuc2V0SXRlbSgnZm9ybURhdGEnLCBKU09OLnN0cmluZ2lmeSh0aGlzLmluc3RhbmNlLnBhcmVudC5zdWJtaXNzaW9uLmRhdGEpKTtcbiAgICB9XG4gIH1cblxuICBnZXRGb3JtVmFsdWUocGF0aCkge1xuICAgIGNvbnN0IGZvcm1EYXRhID0gSlNPTi5wYXJzZShzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCdmb3JtRGF0YScpKTtcblxuICAgIGlmICghZm9ybURhdGEpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHJldHVybiBnZXQoZm9ybURhdGEsIHBhdGgpO1xuICB9XG5cbiAgcmVuZGVyQ29tcG9uZW50cygpIHt9XG5cbiAgb25DaGFuZ2Uoa2VlcElucHV0UmF3PzogYm9vbGVhbikge1xuICAgIGxldCB2YWx1ZSA9IHRoaXMuZ2V0VmFsdWUoKTtcblxuICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSBudWxsKSB7XG4gICAgICB2YWx1ZSA9IHRoaXMuaW5zdGFuY2UuZW1wdHlWYWx1ZTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pbnB1dCAmJiB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQubWFzayAmJiB2YWx1ZSAmJiAha2VlcElucHV0UmF3KSB7XG4gICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQubWFzay50ZXh0TWFza0lucHV0RWxlbWVudC51cGRhdGUodmFsdWUpO1xuICAgICAgdGhpcy5jb250cm9sLnNldFZhbHVlKHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSk7XG4gICAgICB2YWx1ZSA9IHRoaXMuZ2V0VmFsdWUoKTtcbiAgICB9XG4gICAgdGhpcy5pbnN0YW5jZS51cGRhdGVWYWx1ZSh2YWx1ZSwge21vZGlmaWVkOiB0cnVlfSk7XG4gIH1cblxuICBnZXRWYWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb250cm9sLnZhbHVlO1xuICB9XG5cbiAgc2V0VmFsdWUodmFsdWUpIHtcbiAgICB0aGlzLmNvbnRyb2wuc2V0VmFsdWUodmFsdWUpO1xuICB9XG5cbiAgYmVmb3JlU3VibWl0KCkge1xuICAgIHRoaXMuY29udHJvbC5tYXJrQXNUb3VjaGVkKCk7XG4gIH1cblxuICBoYXNFcnJvcigpIHtcbiAgICByZXR1cm4gISF0aGlzLmluc3RhbmNlICYmICEhdGhpcy5pbnN0YW5jZS5lcnJvcjtcbiAgfVxuXG4gIHNob3VsZFZhbGlkYXRlT25Jbml0KCkge1xuICAgIGlmICghdGhpcy5pbnN0YW5jZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmluc3RhbmNlLm9wdGlvbnMudmFsaWRhdGVPbkluaXRcbiAgICAgIHx8IHRoaXMuaW5zdGFuY2UucGFyZW50Lm9wdGlvbnMudmFsaWRhdGVPbkluaXQ7XG4gIH1cblxuICBzZXREaXNhYmxlZChkaXNhYmxlZCkge1xuICAgIGlmIChkaXNhYmxlZCkge1xuICAgICAgdGhpcy5jb250cm9sLmRpc2FibGUoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jb250cm9sLmVuYWJsZSgpO1xuICAgIH1cbiAgfVxuXG4gIHNldFZpc2libGUodmlzaWJsZSkge1xuICAgIGlmICh0aGlzLmVsZW1lbnQgJiYgdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgIGlmICh2aXNpYmxlKSB7XG4gICAgICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnJlbW92ZUF0dHJpYnV0ZSgnaGlkZGVuJyk7XG4gICAgICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnN0eWxlLnZpc2liaWxpdHkgPSAndmlzaWJsZSc7XG4gICAgICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnN0eWxlLnBvc2l0aW9uID0gJ3JlbGF0aXZlJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnNldEF0dHJpYnV0ZSgnaGlkZGVuJywgdHJ1ZSk7XG4gICAgICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LnN0eWxlLnZpc2liaWxpdHkgPSAnaGlkZGVuJztcbiAgICAgICAgdGhpcy5lbGVtZW50Lm5hdGl2ZUVsZW1lbnQuc3R5bGUucG9zaXRpb24gPSAnYWJzb2x1dGUnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAodGhpcy5lbGVtZW50ICYmIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50ICYmIHRoaXMuaW5zdGFuY2UpIHtcbiAgICAgIC8vIEFkZCBjdXN0b20gY2xhc3NlcyB0byBlbGVtZW50cy5cbiAgICAgIGlmICh0aGlzLmluc3RhbmNlLmNvbXBvbmVudC5jdXN0b21DbGFzcykge1xuICAgICAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKHRoaXMuaW5zdGFuY2UuY29tcG9uZW50LmN1c3RvbUNsYXNzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5pbnB1dCkge1xuICAgICAgLy8gU2V0IHRoZSBpbnB1dCBtYXNrcy5cbiAgICAgIHRoaXMuaW5zdGFuY2Uuc2V0SW5wdXRNYXNrKHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudCk7XG4gICAgICB0aGlzLmluc3RhbmNlLmFkZEZvY3VzQmx1ckV2ZW50cyh0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cbiAgfVxufVxuXG5Gb3JtaW9Db21wb25lbnQuTWF0ZXJpYWxDb21wb25lbnQgPSBNYXRlcmlhbENvbXBvbmVudDtcbmV4cG9ydCB7IEZvcm1pb0NvbXBvbmVudCB9O1xuIl19
@@ -1,38 +0,0 @@
1
- import { Component, ViewChildren, ViewContainerRef } from '@angular/core';
2
- import { MaterialComponent } from './MaterialComponent';
3
- import * as i0 from "@angular/core";
4
- export class MaterialNestedComponent extends MaterialComponent {
5
- setInstance(instance) {
6
- instance.viewContainer = () => {
7
- return this.viewContainers ? this.viewContainers[0] : null;
8
- };
9
- super.setInstance(instance);
10
- }
11
- renderComponents() {
12
- if (this.instance.renderComponents) {
13
- this.instance.renderComponents();
14
- }
15
- }
16
- render() {
17
- this.viewContainers = this.components.toArray();
18
- this.renderComponents();
19
- this.ref.detectChanges();
20
- }
21
- ngAfterViewInit() {
22
- this.components.changes.subscribe(() => this.render());
23
- this.render();
24
- }
25
- }
26
- MaterialNestedComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: MaterialNestedComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
27
- MaterialNestedComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: MaterialNestedComponent, selector: "mat-formio-nested", viewQueries: [{ propertyName: "components", predicate: ["components"], descendants: true, read: ViewContainerRef }], usesInheritance: true, ngImport: i0, template: '<ng-template #components></ng-template>', isInline: true });
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: MaterialNestedComponent, decorators: [{
29
- type: Component,
30
- args: [{
31
- selector: 'mat-formio-nested',
32
- template: '<ng-template #components></ng-template>'
33
- }]
34
- }], propDecorators: { components: [{
35
- type: ViewChildren,
36
- args: ['components', { read: ViewContainerRef }]
37
- }] } });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWF0ZXJpYWxOZXN0ZWRDb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmVuZGVyLW1hdGVyaWFsLWZvcm1zL3NyYy9saWIvY29tcG9uZW50cy9NYXRlcmlhbE5lc3RlZENvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBYSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7O0FBTXhELE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxpQkFBaUI7SUFHNUQsV0FBVyxDQUFDLFFBQWE7UUFDdkIsUUFBUSxDQUFDLGFBQWEsR0FBRyxHQUFHLEVBQUU7WUFDNUIsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDN0QsQ0FBQyxDQUFDO1FBQ0YsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixFQUFFO1lBQ2xDLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztTQUNsQztJQUNILENBQUM7SUFFRCxNQUFNO1FBQ0osSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2hELElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7O29IQXpCVSx1QkFBdUI7d0dBQXZCLHVCQUF1QixpSUFFQyxnQkFBZ0Isb0RBSnpDLHlDQUF5QzsyRkFFeEMsdUJBQXVCO2tCQUpuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFFBQVEsRUFBRSx5Q0FBeUM7aUJBQ3BEOzhCQUd1RCxVQUFVO3NCQUEvRCxZQUFZO3VCQUFDLFlBQVksRUFBRSxFQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgUXVlcnlMaXN0LCBWaWV3Q2hpbGRyZW4sIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdGVyaWFsQ29tcG9uZW50IH0gZnJvbSAnLi9NYXRlcmlhbENvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hdC1mb3JtaW8tbmVzdGVkJyxcbiAgdGVtcGxhdGU6ICc8bmctdGVtcGxhdGUgI2NvbXBvbmVudHM+PC9uZy10ZW1wbGF0ZT4nXG59KVxuZXhwb3J0IGNsYXNzIE1hdGVyaWFsTmVzdGVkQ29tcG9uZW50IGV4dGVuZHMgTWF0ZXJpYWxDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgcHVibGljIHZpZXdDb250YWluZXJzO1xuICBAVmlld0NoaWxkcmVuKCdjb21wb25lbnRzJywge3JlYWQ6IFZpZXdDb250YWluZXJSZWZ9KSBjb21wb25lbnRzOiBRdWVyeUxpc3Q8Vmlld0NvbnRhaW5lclJlZj47XG4gIHNldEluc3RhbmNlKGluc3RhbmNlOiBhbnkpIHtcbiAgICBpbnN0YW5jZS52aWV3Q29udGFpbmVyID0gKCkgPT4ge1xuICAgICAgcmV0dXJuIHRoaXMudmlld0NvbnRhaW5lcnMgPyB0aGlzLnZpZXdDb250YWluZXJzWzBdIDogbnVsbDtcbiAgICB9O1xuICAgIHN1cGVyLnNldEluc3RhbmNlKGluc3RhbmNlKTtcbiAgfVxuXG4gIHJlbmRlckNvbXBvbmVudHMoKSB7XG4gICAgaWYgKHRoaXMuaW5zdGFuY2UucmVuZGVyQ29tcG9uZW50cykge1xuICAgICAgdGhpcy5pbnN0YW5jZS5yZW5kZXJDb21wb25lbnRzKCk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIHRoaXMudmlld0NvbnRhaW5lcnMgPSB0aGlzLmNvbXBvbmVudHMudG9BcnJheSgpO1xuICAgIHRoaXMucmVuZGVyQ29tcG9uZW50cygpO1xuICAgIHRoaXMucmVmLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmNvbXBvbmVudHMuY2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4gdGhpcy5yZW5kZXIoKSk7XG4gICAgdGhpcy5yZW5kZXIoKTtcbiAgfVxufVxuIl19
@@ -1,19 +0,0 @@
1
- import Webform from 'formiojs/Webform.js';
2
- console.log('Webform=>', Webform);
3
- Webform.prototype.redraw = function () {
4
- return this.render();
5
- };
6
- Webform.prototype.clear = function () {
7
- const viewContainer = this.viewContainer ? this.viewContainer() : null;
8
- if (viewContainer) {
9
- viewContainer.clear();
10
- }
11
- };
12
- Webform.prototype.render = function () {
13
- if (this.viewContainer && this.viewContainer()) {
14
- this.clear();
15
- this.renderComponents();
16
- this.setValue(this._submission);
17
- }
18
- };
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2ViZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZW5kZXItbWF0ZXJpYWwtZm9ybXMvc3JjL2xpYi9jb21wb25lbnRzL1dlYmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxPQUFPLE1BQU0scUJBQXFCLENBQUM7QUFDMUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLENBQUE7QUFDakMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUc7SUFDekIsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7QUFDdkIsQ0FBQyxDQUFDO0FBQ0YsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEdBQUc7SUFDeEIsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDdkUsSUFBSSxhQUFhLEVBQUU7UUFDakIsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0tBQ3ZCO0FBQ0gsQ0FBQyxDQUFDO0FBQ0YsT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUc7SUFDekIsSUFBSSxJQUFJLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsRUFBRTtRQUM5QyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDYixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztLQUNqQztBQUNILENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBXZWJmb3JtIGZyb20gJ2Zvcm1pb2pzL1dlYmZvcm0uanMnO1xuY29uc29sZS5sb2coJ1dlYmZvcm09PicsIFdlYmZvcm0pXG5XZWJmb3JtLnByb3RvdHlwZS5yZWRyYXcgPSBmdW5jdGlvbigpIHtcbiAgcmV0dXJuIHRoaXMucmVuZGVyKCk7XG59O1xuV2ViZm9ybS5wcm90b3R5cGUuY2xlYXIgPSBmdW5jdGlvbigpIHtcbiAgY29uc3Qgdmlld0NvbnRhaW5lciA9IHRoaXMudmlld0NvbnRhaW5lciA/IHRoaXMudmlld0NvbnRhaW5lcigpIDogbnVsbDtcbiAgaWYgKHZpZXdDb250YWluZXIpIHtcbiAgICB2aWV3Q29udGFpbmVyLmNsZWFyKCk7IFxuICB9XG59O1xuV2ViZm9ybS5wcm90b3R5cGUucmVuZGVyID0gZnVuY3Rpb24oKSB7XG4gIGlmICh0aGlzLnZpZXdDb250YWluZXIgJiYgdGhpcy52aWV3Q29udGFpbmVyKCkpIHtcbiAgICB0aGlzLmNsZWFyKCk7XG4gICAgdGhpcy5yZW5kZXJDb21wb25lbnRzKCk7XG4gICAgdGhpcy5zZXRWYWx1ZSh0aGlzLl9zdWJtaXNzaW9uKTtcbiAgfVxufTtcbiJdfQ==
@@ -1,88 +0,0 @@
1
- import { Component, ViewChild } from '@angular/core';
2
- import Wizard from 'formiojs/Wizard';
3
- import Displays from 'formiojs/displays/Displays';
4
- import { MaterialNestedComponent } from './MaterialNestedComponent';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common";
7
- import * as i2 from "@angular/material/button";
8
- import * as i3 from "@angular/material/stepper";
9
- export class MaterialWizardComponent extends MaterialNestedComponent {
10
- constructor() {
11
- super(...arguments);
12
- this.isLinear = true;
13
- this.prevNumOfPages = 0;
14
- }
15
- setInstance(instance) {
16
- this.isLinear = (instance.options &&
17
- instance.options.breadcrumbSettings &&
18
- instance.options.breadcrumbSettings.clickable) ? false : true;
19
- this.updatePages(instance);
20
- instance.on('pagesChanged', () => this.updatePages());
21
- super.setInstance(instance);
22
- }
23
- updatePages(instance = this.instance) {
24
- if (this.prevNumOfPages !== instance.pages.length) {
25
- instance.pages.forEach((page, pageIndex) => {
26
- page.viewContainer = () => {
27
- return this.viewContainers ? this.viewContainers[pageIndex] : null;
28
- };
29
- });
30
- this.prevNumOfPages = instance.pages.length;
31
- }
32
- }
33
- resetWizard() {
34
- this.instance.cancel();
35
- this.stepper.reset();
36
- }
37
- nextPage() {
38
- this.instance.nextPage().then(() => this.stepper.next());
39
- }
40
- prevPage() {
41
- this.instance.prevPage().then(() => this.stepper.previous());
42
- }
43
- submit() {
44
- this.instance.submit();
45
- }
46
- renderComponents() {
47
- if (this.instance.renderComponents && this.instance.pages) {
48
- this.instance.renderComponents(this.instance.pages.reduce((comps, page) => {
49
- return comps.concat(page.components);
50
- }, []));
51
- }
52
- }
53
- }
54
- MaterialWizardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: MaterialWizardComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
55
- MaterialWizardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.2", type: MaterialWizardComponent, selector: "mat-formio-wizard", viewQueries: [{ propertyName: "stepper", first: true, predicate: ["stepper"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: `
56
- <mat-horizontal-stepper [linear]="isLinear" #stepper>
57
- <mat-step *ngFor="let page of instance.pages" [label]="page.component.title">
58
- <ng-template #components></ng-template>
59
- <div class="navigation-button-row">
60
- <button *ngIf="instance.hasButton('cancel')" mat-raised-button (click)="resetWizard()">Cancel</button>
61
- <button *ngIf="instance.hasButton('previous')" mat-raised-button color="primary" (click)="prevPage()">Previous</button>
62
- <button *ngIf="instance.hasButton('next')" mat-raised-button color="primary" (click)="nextPage()">Next</button>
63
- <button *ngIf="instance.hasButton('submit')" mat-raised-button color="primary" (click)="submit()">Submit</button>
64
- </div>
65
- </mat-step>
66
- </mat-horizontal-stepper>`, isInline: true, styles: [":host .navigation-button-row{margin-top:8px}\n", ":host .navigation-button-row button{margin-right:8px}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i3.MatStep, selector: "mat-step", inputs: ["color"], exportAs: ["matStep"] }, { kind: "component", type: i3.MatStepper, selector: "mat-stepper, mat-vertical-stepper, mat-horizontal-stepper, [matStepper]", inputs: ["selectedIndex", "disableRipple", "color", "labelPosition", "headerPosition", "animationDuration"], outputs: ["animationDone"], exportAs: ["matStepper", "matVerticalStepper", "matHorizontalStepper"] }] });
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.2", ngImport: i0, type: MaterialWizardComponent, decorators: [{
68
- type: Component,
69
- args: [{ selector: 'mat-formio-wizard', template: `
70
- <mat-horizontal-stepper [linear]="isLinear" #stepper>
71
- <mat-step *ngFor="let page of instance.pages" [label]="page.component.title">
72
- <ng-template #components></ng-template>
73
- <div class="navigation-button-row">
74
- <button *ngIf="instance.hasButton('cancel')" mat-raised-button (click)="resetWizard()">Cancel</button>
75
- <button *ngIf="instance.hasButton('previous')" mat-raised-button color="primary" (click)="prevPage()">Previous</button>
76
- <button *ngIf="instance.hasButton('next')" mat-raised-button color="primary" (click)="nextPage()">Next</button>
77
- <button *ngIf="instance.hasButton('submit')" mat-raised-button color="primary" (click)="submit()">Submit</button>
78
- </div>
79
- </mat-step>
80
- </mat-horizontal-stepper>`, styles: [":host .navigation-button-row{margin-top:8px}\n", ":host .navigation-button-row button{margin-right:8px}\n"] }]
81
- }], propDecorators: { stepper: [{
82
- type: ViewChild,
83
- args: ['stepper', { static: true }]
84
- }] } });
85
- Wizard.MaterialComponent = MaterialWizardComponent;
86
- Displays.addDisplay('wizard', Wizard);
87
- export { Wizard };
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWlvLndpemFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZW5kZXItbWF0ZXJpYWwtZm9ybXMvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1pby53aXphcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckQsT0FBTyxNQUFNLE1BQU0saUJBQWlCLENBQUM7QUFDckMsT0FBTyxRQUFRLE1BQU0sNEJBQTRCLENBQUM7QUFDbEQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7O0FBcUJwRSxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsdUJBQXVCO0lBbkJwRTs7UUFxQlMsYUFBUSxHQUFHLElBQUksQ0FBQztRQUNmLG1CQUFjLEdBQUcsQ0FBQyxDQUFDO0tBa0Q1QjtJQWhEQyxXQUFXLENBQUMsUUFBYTtRQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLENBQ2QsUUFBUSxDQUFDLE9BQU87WUFDaEIsUUFBUSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0I7WUFDbkMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQzlDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBRWpCLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0IsUUFBUSxDQUFDLEVBQUUsQ0FBQyxjQUFjLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFFdEQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsV0FBVyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUTtRQUNsQyxJQUFJLElBQUksQ0FBQyxjQUFjLEtBQUssUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7WUFDakQsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLEVBQUU7Z0JBQ3pDLElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxFQUFFO29CQUN4QixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztnQkFDckUsQ0FBQyxDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsY0FBYyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO1NBQzdDO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVELE1BQU07UUFDSixJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUU7WUFDekQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7Z0JBQ3hFLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDdkMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDVDtJQUNILENBQUM7O29IQXBEVSx1QkFBdUI7d0dBQXZCLHVCQUF1QixrTUFieEI7Ozs7Ozs7Ozs7OzhCQVdrQjsyRkFFakIsdUJBQXVCO2tCQW5CbkMsU0FBUzsrQkFDRSxtQkFBbUIsWUFLbkI7Ozs7Ozs7Ozs7OzhCQVdrQjs4QkFHVSxPQUFPO3NCQUE1QyxTQUFTO3VCQUFDLFNBQVMsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUM7O0FBcUR0QyxNQUFNLENBQUMsaUJBQWlCLEdBQUcsdUJBQXVCLENBQUM7QUFDbkQsUUFBUSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDdEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFN0ZXBwZXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zdGVwcGVyJztcbmltcG9ydCBXaXphcmQgZnJvbSAnZm9ybWlvanMvV2l6YXJkJztcbmltcG9ydCBEaXNwbGF5cyBmcm9tICdmb3JtaW9qcy9kaXNwbGF5cy9EaXNwbGF5cyc7XG5pbXBvcnQgeyBNYXRlcmlhbE5lc3RlZENvbXBvbmVudCB9IGZyb20gJy4vTWF0ZXJpYWxOZXN0ZWRDb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYXQtZm9ybWlvLXdpemFyZCcsXG4gIHN0eWxlczogW1xuICAgICc6aG9zdCAubmF2aWdhdGlvbi1idXR0b24tcm93IHsgbWFyZ2luLXRvcDogOHB4OyB9JyxcbiAgICAnOmhvc3QgLm5hdmlnYXRpb24tYnV0dG9uLXJvdyBidXR0b24geyBtYXJnaW4tcmlnaHQ6IDhweDsgfSdcbiAgXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bWF0LWhvcml6b250YWwtc3RlcHBlciBbbGluZWFyXT1cImlzTGluZWFyXCIgI3N0ZXBwZXI+XG4gICAgICA8bWF0LXN0ZXAgKm5nRm9yPVwibGV0IHBhZ2Ugb2YgaW5zdGFuY2UucGFnZXNcIiBbbGFiZWxdPVwicGFnZS5jb21wb25lbnQudGl0bGVcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNjb21wb25lbnRzPjwvbmctdGVtcGxhdGU+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJuYXZpZ2F0aW9uLWJ1dHRvbi1yb3dcIj5cbiAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiaW5zdGFuY2UuaGFzQnV0dG9uKCdjYW5jZWwnKVwiIG1hdC1yYWlzZWQtYnV0dG9uIChjbGljayk9XCJyZXNldFdpemFyZCgpXCI+Q2FuY2VsPC9idXR0b24+XG4gICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cImluc3RhbmNlLmhhc0J1dHRvbigncHJldmlvdXMnKVwiIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJwcmV2UGFnZSgpXCI+UHJldmlvdXM8L2J1dHRvbj5cbiAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiaW5zdGFuY2UuaGFzQnV0dG9uKCduZXh0JylcIiBtYXQtcmFpc2VkLWJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwibmV4dFBhZ2UoKVwiPk5leHQ8L2J1dHRvbj5cbiAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiaW5zdGFuY2UuaGFzQnV0dG9uKCdzdWJtaXQnKVwiIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJzdWJtaXQoKVwiPlN1Ym1pdDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbWF0LXN0ZXA+XG4gICAgPC9tYXQtaG9yaXpvbnRhbC1zdGVwcGVyPmBcbn0pXG5leHBvcnQgY2xhc3MgTWF0ZXJpYWxXaXphcmRDb21wb25lbnQgZXh0ZW5kcyBNYXRlcmlhbE5lc3RlZENvbXBvbmVudCB7XG4gIEBWaWV3Q2hpbGQoJ3N0ZXBwZXInLCB7c3RhdGljOiB0cnVlfSkgc3RlcHBlcjogTWF0U3RlcHBlcjtcbiAgcHVibGljIGlzTGluZWFyID0gdHJ1ZTtcbiAgcHJpdmF0ZSBwcmV2TnVtT2ZQYWdlcyA9IDA7XG5cbiAgc2V0SW5zdGFuY2UoaW5zdGFuY2U6IGFueSkge1xuICAgIHRoaXMuaXNMaW5lYXIgPSAoXG4gICAgICBpbnN0YW5jZS5vcHRpb25zICYmXG4gICAgICBpbnN0YW5jZS5vcHRpb25zLmJyZWFkY3J1bWJTZXR0aW5ncyAmJlxuICAgICAgaW5zdGFuY2Uub3B0aW9ucy5icmVhZGNydW1iU2V0dGluZ3MuY2xpY2thYmxlXG4gICAgKSA/IGZhbHNlIDogdHJ1ZTtcblxuICAgIHRoaXMudXBkYXRlUGFnZXMoaW5zdGFuY2UpO1xuICAgIGluc3RhbmNlLm9uKCdwYWdlc0NoYW5nZWQnLCAoKSA9PiB0aGlzLnVwZGF0ZVBhZ2VzKCkpO1xuXG4gICAgc3VwZXIuc2V0SW5zdGFuY2UoaW5zdGFuY2UpO1xuICB9XG5cbiAgdXBkYXRlUGFnZXMoaW5zdGFuY2UgPSB0aGlzLmluc3RhbmNlKSB7XG4gICAgaWYgKHRoaXMucHJldk51bU9mUGFnZXMgIT09IGluc3RhbmNlLnBhZ2VzLmxlbmd0aCkge1xuICAgICAgaW5zdGFuY2UucGFnZXMuZm9yRWFjaCgocGFnZSwgcGFnZUluZGV4KSA9PiB7XG4gICAgICAgIHBhZ2Uudmlld0NvbnRhaW5lciA9ICgpID0+IHtcbiAgICAgICAgICByZXR1cm4gdGhpcy52aWV3Q29udGFpbmVycyA/IHRoaXMudmlld0NvbnRhaW5lcnNbcGFnZUluZGV4XSA6IG51bGw7XG4gICAgICAgIH07XG4gICAgICB9KTtcbiAgICAgIHRoaXMucHJldk51bU9mUGFnZXMgPSBpbnN0YW5jZS5wYWdlcy5sZW5ndGg7XG4gICAgfVxuICB9XG5cbiAgcmVzZXRXaXphcmQoKSB7XG4gICAgdGhpcy5pbnN0YW5jZS5jYW5jZWwoKTtcbiAgICB0aGlzLnN0ZXBwZXIucmVzZXQoKTtcbiAgfVxuXG4gIG5leHRQYWdlKCkge1xuICAgIHRoaXMuaW5zdGFuY2UubmV4dFBhZ2UoKS50aGVuKCgpID0+IHRoaXMuc3RlcHBlci5uZXh0KCkpO1xuICB9XG5cbiAgcHJldlBhZ2UoKSB7XG4gICAgdGhpcy5pbnN0YW5jZS5wcmV2UGFnZSgpLnRoZW4oKCkgPT4gdGhpcy5zdGVwcGVyLnByZXZpb3VzKCkpO1xuICB9XG5cbiAgc3VibWl0KCkge1xuICAgIHRoaXMuaW5zdGFuY2Uuc3VibWl0KCk7XG4gIH1cblxuICByZW5kZXJDb21wb25lbnRzKCkge1xuICAgIGlmICh0aGlzLmluc3RhbmNlLnJlbmRlckNvbXBvbmVudHMgJiYgdGhpcy5pbnN0YW5jZS5wYWdlcykge1xuICAgICAgdGhpcy5pbnN0YW5jZS5yZW5kZXJDb21wb25lbnRzKHRoaXMuaW5zdGFuY2UucGFnZXMucmVkdWNlKChjb21wcywgcGFnZSkgPT4ge1xuICAgICAgICByZXR1cm4gY29tcHMuY29uY2F0KHBhZ2UuY29tcG9uZW50cyk7XG4gICAgICB9LCBbXSkpO1xuICAgIH1cbiAgfVxufVxuV2l6YXJkLk1hdGVyaWFsQ29tcG9uZW50ID0gTWF0ZXJpYWxXaXphcmRDb21wb25lbnQ7XG5EaXNwbGF5cy5hZGREaXNwbGF5KCd3aXphcmQnLCBXaXphcmQpO1xuZXhwb3J0IHsgV2l6YXJkIH07XG4iXX0=
@@ -1,125 +0,0 @@
1
- const Components = require('formiojs/components/Components').default;
2
- import Component from 'formiojs/components/_classes/component/Component.js';
3
- import { TextFieldComponent } from './textfield/textfield.component';
4
- import { PasswordComponent } from './password/password.component';
5
- import { EmailComponent } from './email/email.component';
6
- import { UrlComponent } from './url/url.component';
7
- import { PhoneNumberComponent } from './phonenumber/phonenumber.component';
8
- import { NumberComponent } from './number/number.component';
9
- import { CurrencyComponent } from './currency/currency.component';
10
- import { DayComponent } from './day/day.component';
11
- import { HiddenComponent } from './hidden/hidden.component';
12
- import { HtmlComponent } from './html/html.component';
13
- import { TagsComponent } from './tags/tags.component';
14
- import { ButtonComponent } from './button/button.component';
15
- import { TextAreaComponent } from './textarea/textarea.component';
16
- import { PanelComponent } from './panel/panel.component';
17
- import { ColumnsComponent } from './columns/columns.component';
18
- import { ContainerComponent } from './container/container.component';
19
- import { TabsComponent } from './tabs/tabs.component';
20
- import { DateTimeComponent } from './date/date.component';
21
- import { CheckboxComponent } from './checkbox/checkbox.component';
22
- import { FieldsetComponent } from './fieldset/fieldset.component';
23
- import { ContentComponent } from './content/content.component';
24
- import { SignatureComponent } from './signature/signature.component';
25
- import { SurveyComponent } from './survey/survey.component';
26
- import { SelectBoxesComponent } from './selectboxes/selectboxes.component';
27
- import { RadioComponent } from './radio/radio.component';
28
- import { SelectComponent } from './select/select.component';
29
- import { WellComponent } from './well/well.component';
30
- import { DataGridComponent } from './datagrid/datagrid.component';
31
- import { EditGridComponent } from './editgrid/editgrid.component';
32
- import { TableComponent } from './table/table.component';
33
- import { FormioComponent } from './MaterialComponent';
34
- import { Wizard } from './formio.wizard';
35
- import { TimeComponent } from './time/time.component';
36
- // Set the components.
37
- const components = {
38
- textfield: TextFieldComponent,
39
- password: PasswordComponent,
40
- url: UrlComponent,
41
- checkbox: CheckboxComponent,
42
- email: EmailComponent,
43
- phoneNumber: PhoneNumberComponent,
44
- number: NumberComponent,
45
- currency: CurrencyComponent,
46
- day: DayComponent,
47
- hidden: HiddenComponent,
48
- htmlelement: HtmlComponent,
49
- tags: TagsComponent,
50
- textarea: TextAreaComponent,
51
- button: ButtonComponent,
52
- datetime: DateTimeComponent,
53
- panel: PanelComponent,
54
- columns: ColumnsComponent,
55
- tabs: TabsComponent,
56
- table: TableComponent,
57
- well: WellComponent,
58
- fieldset: FieldsetComponent,
59
- content: ContentComponent,
60
- signature: SignatureComponent,
61
- survey: SurveyComponent,
62
- selectboxes: SelectBoxesComponent,
63
- radio: RadioComponent,
64
- select: SelectComponent,
65
- container: ContainerComponent,
66
- datagrid: DataGridComponent,
67
- editgrid: EditGridComponent,
68
- unknown: FormioComponent,
69
- time: TimeComponent,
70
- wizard: Wizard
71
- };
72
- export function getComponents() {
73
- for (const type of Object.keys(components)) {
74
- const CompClass = components[type];
75
- CompClass.prototype.render = (function () {
76
- if (this.materialComponent) {
77
- return this.materialComponent.renderComponents();
78
- }
79
- const viewContainer = this.parent ? this.parent.viewContainer(this) : this.viewContainer(this);
80
- if (!viewContainer) {
81
- return;
82
- }
83
- const factory = this.options.viewResolver.resolveComponentFactory(CompClass.MaterialComponent);
84
- const componentRef = viewContainer.createComponent(factory);
85
- componentRef.instance.setInstance(this);
86
- });
87
- const setValue = CompClass.prototype.setValue;
88
- CompClass.prototype.setValue = (function (...args) {
89
- if (this.materialComponent) {
90
- this.materialComponent.setValue(args[0]);
91
- }
92
- return setValue.call(this, ...args);
93
- });
94
- components[type] = CompClass;
95
- }
96
- return components;
97
- }
98
- export function registerComponent(name, CompClass) {
99
- class DummyComponent extends Component {
100
- }
101
- ;
102
- const formIOComp = DummyComponent;
103
- formIOComp.MaterialComponent = CompClass;
104
- formIOComp.prototype.render = (function () {
105
- if (this.materialComponent) {
106
- return this.materialComponent;
107
- }
108
- const viewContainer = this.parent ? this.parent.viewContainer(this) : this.viewContainer(this);
109
- if (!viewContainer) {
110
- return;
111
- }
112
- const factory = this.options.viewResolver.resolveComponentFactory(formIOComp.MaterialComponent);
113
- const componentRef = viewContainer.createComponent(factory);
114
- componentRef.instance.setInstance(this);
115
- });
116
- const setValue = formIOComp.prototype.setValue;
117
- formIOComp.prototype.setValue = (function (...args) {
118
- if (this.materialComponent) {
119
- this.materialComponent.setValue(args[0]);
120
- }
121
- return setValue.call(this, ...args);
122
- });
123
- Components.addComponent(name, formIOComp);
124
- }
125
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtcmVuZGVyLW1hdGVyaWFsLWZvcm1zL3NyYy9saWIvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUMsZ0NBQWdDLENBQUMsQ0FBQyxPQUFPLENBQUM7QUFDckUsT0FBTyxTQUFTLE1BQU0scURBQXFELENBQUM7QUFFNUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDckUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZC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LENBQUM7QUFFNUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImNvbnN0IENvbXBvbmVudHMgPSByZXF1aXJlKCdmb3JtaW9qcy9jb21wb25lbnRzL0NvbXBvbmVudHMnKS5kZWZhdWx0O1xuaW1wb3J0IENvbXBvbmVudCBmcm9tICdmb3JtaW9qcy9jb21wb25lbnRzL19jbGFzc2VzL2NvbXBvbmVudC9Db21wb25lbnQuanMnO1xuXG5pbXBvcnQgeyBUZXh0RmllbGRDb21wb25lbnQgfSBmcm9tICcuL3RleHRmaWVsZC90ZXh0ZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IFBhc3N3b3JkQ29tcG9uZW50IH0gZnJvbSAnLi9wYXNzd29yZC9wYXNzd29yZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRW1haWxDb21wb25lbnQgfSBmcm9tICcuL2VtYWlsL2VtYWlsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVcmxDb21wb25lbnQgfSBmcm9tICcuL3VybC91cmwuY29tcG9uZW50JztcbmltcG9ydCB7IFBob25lTnVtYmVyQ29tcG9uZW50IH0gZnJvbSAnLi9waG9uZW51bWJlci9waG9uZW51bWJlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTnVtYmVyQ29tcG9uZW50IH0gZnJvbSAnLi9udW1iZXIvbnVtYmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdXJyZW5jeUNvbXBvbmVudCB9IGZyb20gJy4vY3VycmVuY3kvY3VycmVuY3kuY29tcG9uZW50JztcbmltcG9ydCB7IERheUNvbXBvbmVudCB9IGZyb20gJy4vZGF5L2RheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgSGlkZGVuQ29tcG9uZW50IH0gZnJvbSAnLi9oaWRkZW4vaGlkZGVuLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIdG1sQ29tcG9uZW50IH0gZnJvbSAnLi9odG1sL2h0bWwuY29tcG9uZW50JztcbmltcG9ydCB7IFRhZ3NDb21wb25lbnQgfSBmcm9tICcuL3RhZ3MvdGFncy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUZXh0QXJlYUNvbXBvbmVudCB9IGZyb20gJy4vdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50JztcbmltcG9ydCB7IFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi9wYW5lbC9wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29sdW1uc0NvbXBvbmVudCB9IGZyb20gJy4vY29sdW1ucy9jb2x1bW5zLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbnRhaW5lci9jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYnNDb21wb25lbnQgfSBmcm9tICcuL3RhYnMvdGFicy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGF0ZVRpbWVDb21wb25lbnQgfSBmcm9tICcuL2RhdGUvZGF0ZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGaWVsZHNldENvbXBvbmVudCB9IGZyb20gJy4vZmllbGRzZXQvZmllbGRzZXQuY29tcG9uZW50JztcbmltcG9ydCB7IENvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbnRlbnQvY29udGVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2lnbmF0dXJlQ29tcG9uZW50IH0gZnJvbSAnLi9zaWduYXR1cmUvc2lnbmF0dXJlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTdXJ2ZXlDb21wb25lbnQgfSBmcm9tICcuL3N1cnZleS9zdXJ2ZXkuY29tcG9uZW50JztcbmltcG9ydCB7IFNlbGVjdEJveGVzQ29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3Rib3hlcy9zZWxlY3Rib3hlcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmFkaW9Db21wb25lbnQgfSBmcm9tICcuL3JhZGlvL3JhZGlvLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50JztcbmltcG9ydCB7IFdlbGxDb21wb25lbnQgfSBmcm9tICcuL3dlbGwvd2VsbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGF0YUdyaWRDb21wb25lbnQgfSBmcm9tICcuL2RhdGFncmlkL2RhdGFncmlkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFZGl0R3JpZENvbXBvbmVudCB9IGZyb20gJy4vZWRpdGdyaWQvZWRpdGdyaWQuY29tcG9uZW50JztcbmltcG9ydCB7IFRhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi90YWJsZS90YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybWlvQ29tcG9uZW50IH0gZnJvbSAnLi9NYXRlcmlhbENvbXBvbmVudCc7XG5pbXBvcnQgeyBXaXphcmQgfSBmcm9tICcuL2Zvcm1pby53aXphcmQnO1xuaW1wb3J0IHsgVGltZUNvbXBvbmVudCB9IGZyb20gJy4vdGltZS90aW1lLmNvbXBvbmVudCdcblxuLy8gU2V0IHRoZSBjb21wb25lbnRzLlxuY29uc3QgY29tcG9uZW50czogYW55ID0ge1xuICB0ZXh0ZmllbGQ6IFRleHRGaWVsZENvbXBvbmVudCxcbiAgcGFzc3dvcmQ6IFBhc3N3b3JkQ29tcG9uZW50LFxuICB1cmw6IFVybENvbXBvbmVudCxcbiAgY2hlY2tib3g6IENoZWNrYm94Q29tcG9uZW50LFxuICBlbWFpbDogRW1haWxDb21wb25lbnQsXG4gIHBob25lTnVtYmVyOiBQaG9uZU51bWJlckNvbXBvbmVudCxcbiAgbnVtYmVyOiBOdW1iZXJDb21wb25lbnQsXG4gIGN1cnJlbmN5OiBDdXJyZW5jeUNvbXBvbmVudCxcbiAgZGF5OiBEYXlDb21wb25lbnQsXG4gIGhpZGRlbjogSGlkZGVuQ29tcG9uZW50LFxuICBodG1sZWxlbWVudDogSHRtbENvbXBvbmVudCxcbiAgdGFnczogVGFnc0NvbXBvbmVudCxcbiAgdGV4dGFyZWE6IFRleHRBcmVhQ29tcG9uZW50LFxuICBidXR0b246IEJ1dHRvbkNvbXBvbmVudCxcbiAgZGF0ZXRpbWU6IERhdGVUaW1lQ29tcG9uZW50LFxuICBwYW5lbDogUGFuZWxDb21wb25lbnQsXG4gIGNvbHVtbnM6IENvbHVtbnNDb21wb25lbnQsXG4gIHRhYnM6IFRhYnNDb21wb25lbnQsXG4gIHRhYmxlOiBUYWJsZUNvbXBvbmVudCxcbiAgd2VsbDogV2VsbENvbXBvbmVudCxcbiAgZmllbGRzZXQ6IEZpZWxkc2V0Q29tcG9uZW50LFxuICBjb250ZW50OiBDb250ZW50Q29tcG9uZW50LFxuICBzaWduYXR1cmU6IFNpZ25hdHVyZUNvbXBvbmVudCxcbiAgc3VydmV5OiBTdXJ2ZXlDb21wb25lbnQsXG4gIHNlbGVjdGJveGVzOiBTZWxlY3RCb3hlc0NvbXBvbmVudCxcbiAgcmFkaW86IFJhZGlvQ29tcG9uZW50LFxuICBzZWxlY3Q6IFNlbGVjdENvbXBvbmVudCxcbiAgY29udGFpbmVyOiBDb250YWluZXJDb21wb25lbnQsXG4gIGRhdGFncmlkOiBEYXRhR3JpZENvbXBvbmVudCxcbiAgZWRpdGdyaWQ6IEVkaXRHcmlkQ29tcG9uZW50LFxuICB1bmtub3duOiBGb3JtaW9Db21wb25lbnQsXG4gIHRpbWU6IFRpbWVDb21wb25lbnQsXG4gIHdpemFyZDogV2l6YXJkXG59O1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29tcG9uZW50cygpIHtcbiAgZm9yIChjb25zdCB0eXBlIG9mIE9iamVjdC5rZXlzKGNvbXBvbmVudHMpKSB7XG4gICAgY29uc3QgQ29tcENsYXNzID0gY29tcG9uZW50c1t0eXBlXTtcbiAgICBDb21wQ2xhc3MucHJvdG90eXBlLnJlbmRlciA9IChmdW5jdGlvbiAoKSB7XG4gICAgICBpZiAodGhpcy5tYXRlcmlhbENvbXBvbmVudCkge1xuICAgICAgICByZXR1cm4gdGhpcy5tYXRlcmlhbENvbXBvbmVudC5yZW5kZXJDb21wb25lbnRzKCk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHZpZXdDb250YWluZXIgPSB0aGlzLnBhcmVudCA/IHRoaXMucGFyZW50LnZpZXdDb250YWluZXIodGhpcykgOiB0aGlzLnZpZXdDb250YWluZXIodGhpcyk7XG4gICAgICBpZiAoIXZpZXdDb250YWluZXIpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMub3B0aW9ucy52aWV3UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoQ29tcENsYXNzLk1hdGVyaWFsQ29tcG9uZW50KTtcbiAgICAgIGNvbnN0IGNvbXBvbmVudFJlZiA9IHZpZXdDb250YWluZXIuY3JlYXRlQ29tcG9uZW50KGZhY3RvcnkpO1xuICAgICAgKGNvbXBvbmVudFJlZi5pbnN0YW5jZSBhcyBhbnkpLnNldEluc3RhbmNlKHRoaXMpO1xuICAgIH0pO1xuXG4gICAgY29uc3Qgc2V0VmFsdWUgPSBDb21wQ2xhc3MucHJvdG90eXBlLnNldFZhbHVlO1xuICAgIENvbXBDbGFzcy5wcm90b3R5cGUuc2V0VmFsdWUgPSAoZnVuY3Rpb24gKC4uLmFyZ3MpIHtcbiAgICAgIGlmICh0aGlzLm1hdGVyaWFsQ29tcG9uZW50KSB7XG4gICAgICAgIHRoaXMubWF0ZXJpYWxDb21wb25lbnQuc2V0VmFsdWUoYXJnc1swXSk7XG4gICAgICB9XG4gICAgICByZXR1cm4gc2V0VmFsdWUuY2FsbCh0aGlzLCAuLi5hcmdzKTtcbiAgICB9KTtcblxuICAgIGNvbXBvbmVudHNbdHlwZV0gPSBDb21wQ2xhc3M7XG4gIH1cblxuICByZXR1cm4gY29tcG9uZW50cztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyQ29tcG9uZW50KG5hbWU6IHN0cmluZywgQ29tcENsYXNzOiBhbnkpIHtcblxuICBjbGFzcyBEdW1teUNvbXBvbmVudCBleHRlbmRzIENvbXBvbmVudCB7fTtcbiAgY29uc3QgZm9ybUlPQ29tcCA9IChEdW1teUNvbXBvbmVudCBhcyBhbnkpO1xuXG4gIGZvcm1JT0NvbXAuTWF0ZXJpYWxDb21wb25lbnQgPSBDb21wQ2xhc3M7XG4gIGZvcm1JT0NvbXAucHJvdG90eXBlLnJlbmRlciA9IChmdW5jdGlvbiAoKSB7XG4gICAgaWYgKHRoaXMubWF0ZXJpYWxDb21wb25lbnQpIHtcbiAgICAgIHJldHVybiB0aGlzLm1hdGVyaWFsQ29tcG9uZW50O1xuICAgIH1cbiAgICBjb25zdCB2aWV3Q29udGFpbmVyID0gdGhpcy5wYXJlbnQgPyB0aGlzLnBhcmVudC52aWV3Q29udGFpbmVyKHRoaXMpIDogdGhpcy52aWV3Q29udGFpbmVyKHRoaXMpO1xuICAgIGlmICghdmlld0NvbnRhaW5lcikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBmYWN0b3J5ID0gdGhpcy5vcHRpb25zLnZpZXdSZXNvbHZlci5yZXNvbHZlQ29tcG9uZW50RmFjdG9yeShmb3JtSU9Db21wLk1hdGVyaWFsQ29tcG9uZW50KTtcbiAgICBjb25zdCBjb21wb25lbnRSZWYgPSB2aWV3Q29udGFpbmVyLmNyZWF0ZUNvbXBvbmVudChmYWN0b3J5KTtcbiAgICAoY29tcG9uZW50UmVmLmluc3RhbmNlIGFzIGFueSkuc2V0SW5zdGFuY2UodGhpcyk7XG4gIH0pO1xuXG4gIGNvbnN0IHNldFZhbHVlID0gZm9ybUlPQ29tcC5wcm90b3R5cGUuc2V0VmFsdWU7XG4gIGZvcm1JT0NvbXAucHJvdG90eXBlLnNldFZhbHVlID0gKGZ1bmN0aW9uICguLi5hcmdzKSB7XG4gICAgaWYgKHRoaXMubWF0ZXJpYWxDb21wb25lbnQpIHtcbiAgICAgIHRoaXMubWF0ZXJpYWxDb21wb25lbnQuc2V0VmFsdWUoYXJnc1swXSk7XG4gICAgfVxuICAgIHJldHVybiBzZXRWYWx1ZS5jYWxsKHRoaXMsIC4uLmFyZ3MpO1xuICB9KTtcblxuICBDb21wb25lbnRzLmFkZENvbXBvbmVudChuYW1lLCBmb3JtSU9Db21wKTtcblxufVxuIl19