@theseam/ui-common 0.4.20 → 0.4.22

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.
@@ -52,14 +52,14 @@ export class TheSeamFramework extends Framework {
52
52
  'divider': TheSeamSchemaFormDividerComponent,
53
53
  'tel': TheSeamSchemaFormTelComponent,
54
54
  'tiled-select': TheSeamSchemaFormTiledSelectComponent
55
- // 'file': // TODO: Implement
56
55
  // 'date': // TODO: Implement
57
- // 'map': // TODO: Implement
58
- // 'wizard': // TODO: Implement
56
+ // 'file': // TODO: Implement
59
57
  // 'image': // TODO: Implement
58
+ // 'richtext': // TODO: Implement
60
59
  // 'tabs': // TODO: Implement
60
+ // 'wizard': // TODO: Implement
61
61
  // 'card': // TODO: Implement
62
- // 'richtext': // TODO: Implement
62
+ // 'map': // TODO: Implement
63
63
  };
64
64
  // console.log('TheSeamFramework', _overrides, this)
65
65
  if (_overrides) {
@@ -82,4 +82,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
82
82
  type: Inject,
83
83
  args: [THESEAM_SCHEMA_FRAMEWORK_OVERRIDES]
84
84
  }] }]; } });
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLWZvcm0tZnJhbWV3b3JrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9zY2hlbWEtZm9ybS9zY2hlbWEtZm9ybS1mcmFtZXdvcmsudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFFcEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUV0QyxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSw2RUFBNkUsQ0FBQTtBQUNoSSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx1RUFBdUUsQ0FBQTtBQUN2SCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQTtBQUMxSCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQTtBQUMxSCxPQUFPLEVBQUUscUNBQXFDLEVBQUUsTUFBTSxxRkFBcUYsQ0FBQTtBQUUzSSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSwyRUFBMkUsQ0FBQTtBQUM3SCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQTtBQUNqSCxPQUFPLEVBQUUscUNBQXFDLEVBQUUsTUFBTSxxRkFBcUYsQ0FBQTtBQUUzSSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUN2RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUE7O0FBSXRELE1BQU0sQ0FBQyxNQUFNLGtDQUFrQyxHQUFHLElBQUksY0FBYyxDQUFzQyxvQ0FBb0MsQ0FBQyxDQUFBO0FBRS9JLE1BQU0sVUFBVSxlQUFlLENBQUMsUUFBbUIsRUFBRSxxQkFBeUM7SUFDNUYsa0VBQWtFO0lBQ2xFLE1BQU0sVUFBVSxHQUF1QixNQUFNLENBQUMsU0FBUyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUF1QixDQUFBO0lBQ2xHLE1BQU0sU0FBUyxHQUFHLE9BQU8scUJBQXFCLEtBQUssUUFBUTtRQUN6RCxDQUFDLENBQUMsQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxxQkFBcUIsQ0FBQztRQUNsRSxDQUFDLENBQUMsQ0FBRSxxQkFBcUIsQ0FBRSxDQUFBO0lBRTdCLHFDQUFxQztJQUVyQyxJQUFJLFNBQVMsRUFBRTtRQUNiLEtBQUssTUFBTSxRQUFRLElBQUksU0FBUyxFQUFFO1lBQ2hDLG9DQUFvQztZQUNwQyxJQUFJLFdBQVcsQ0FBQyxRQUFRLEVBQUUsV0FBVyxDQUFDLEVBQUU7Z0JBQ3RDLFFBQVEsQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQTthQUN4QztZQUVELElBQUksV0FBVyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsRUFBRTtnQkFDcEMsUUFBUSxDQUFDLE9BQU8sR0FBRyxFQUFFLEdBQUcsUUFBUSxDQUFDLE9BQU8sRUFBRSxHQUFHLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQTthQUNoRTtZQUVELElBQUksV0FBVyxDQUFDLFFBQVEsRUFBRSxhQUFhLENBQUMsRUFBRTtnQkFDeEMsUUFBUSxDQUFDLFdBQVcsR0FBRyxFQUFFLEdBQUcsUUFBUSxDQUFDLFdBQVcsRUFBRSxHQUFHLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQTthQUM1RTtZQUVELElBQUksV0FBVyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsRUFBRTtnQkFDcEMsUUFBUSxDQUFDLE9BQU8sR0FBRyxFQUFFLEdBQUcsUUFBUSxDQUFDLE9BQU8sRUFBRSxHQUFHLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQTthQUNoRTtTQUNGO0tBQ0Y7QUFDSCxDQUFDO0FBR0QsTUFBTSxPQUFPLGdCQUFpQixTQUFRLFNBQVM7SUEwQjdDLFlBQzBELFVBQWtEO1FBRTFHLEtBQUssRUFBRSxDQUFBO1FBNUJULFNBQUksR0FBRyxnQkFBZ0IsQ0FBQTtRQUV2QixjQUFTLEdBQUcsbUNBQW1DLENBQUE7UUFFL0MsWUFBTyxHQUFHO1lBQ1IsVUFBVSxFQUFFLGtDQUFrQztZQUM5Qyw4Q0FBOEM7WUFDOUMsUUFBUSxFQUFFLHFDQUFxQztZQUMvQyxNQUFNLEVBQUUsK0JBQStCO1lBQ3ZDLFFBQVEsRUFBRSxnQ0FBZ0M7WUFDMUMsUUFBUSxFQUFFLGdDQUFnQztZQUMxQyxTQUFTLEVBQUUsaUNBQWlDO1lBQzVDLEtBQUssRUFBRSw2QkFBNkI7WUFDcEMsY0FBYyxFQUFFLHFDQUFxQztZQUVyRCw2QkFBNkI7WUFDN0IsNkJBQTZCO1lBQzdCLDRCQUE0QjtZQUM1QiwrQkFBK0I7WUFDL0IsOEJBQThCO1lBQzlCLDZCQUE2QjtZQUM3Qiw2QkFBNkI7WUFDN0IsaUNBQWlDO1NBQ2xDLENBQUE7UUFPQyxvREFBb0Q7UUFFcEQsSUFBSSxVQUFVLEVBQUU7WUFDZCxLQUFLLE1BQU0sUUFBUSxJQUFJLFVBQVUsRUFBRTtnQkFDakMsb0NBQW9DO2dCQUNwQyxJQUFJLFdBQVcsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLEVBQUU7b0JBQ3BDLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUE7aUJBQ3hEO2FBQ0Y7U0FDRjtJQUNILENBQUM7OzZHQXpDVSxnQkFBZ0Isa0JBMkJMLGtDQUFrQztpSEEzQjdDLGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVOzswQkE0Qk4sUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxrQ0FBa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIEluamVjdGlvblRva2VuLCBPcHRpb25hbCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuaW1wb3J0IHsgRnJhbWV3b3JrIH0gZnJvbSAnQGFqc2YvY29yZSdcblxuaW1wb3J0IHsgVGhlU2VhbVNjaGVtYUZvcm1DaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4uL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLWNoZWNrYm94L3NjaGVtYS1mb3JtLWNoZWNrYm94LmNvbXBvbmVudCdcbmltcG9ydCB7IFRoZVNlYW1TY2hlbWFGb3JtSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1pbnB1dC9zY2hlbWEtZm9ybS1pbnB1dC5jb21wb25lbnQnXG5pbXBvcnQgeyBUaGVTZWFtU2NoZW1hRm9ybU51bWJlckNvbXBvbmVudCB9IGZyb20gJy4uL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLW51bWJlci9zY2hlbWEtZm9ybS1udW1iZXIuY29tcG9uZW50J1xuaW1wb3J0IHsgVGhlU2VhbVNjaGVtYUZvcm1TZWxlY3RDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1zZWxlY3Qvc2NoZW1hLWZvcm0tc2VsZWN0LmNvbXBvbmVudCdcbmltcG9ydCB7IFRoZVNlYW1TY2hlbWFGb3JtU3VibWl0U3BsaXRDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1zdWJtaXQtc3BsaXQvc2NoZW1hLWZvcm0tc3VibWl0LXNwbGl0LmNvbXBvbmVudCdcbmltcG9ydCB7IFRoZVNlYW1TY2hlbWFGb3JtU3VibWl0Q29tcG9uZW50IH0gZnJvbSAnLi4vc2NoZW1hLWZvcm0tY29udHJvbHMvc2NoZW1hLWZvcm0tc3VibWl0L3NjaGVtYS1mb3JtLXN1Ym1pdC5jb21wb25lbnQnXG5pbXBvcnQgeyBUaGVTZWFtU2NoZW1hRm9ybURpdmlkZXJDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1kaXZpZGVyL3NjaGVtYS1mb3JtLWRpdmlkZXIuY29tcG9uZW50J1xuaW1wb3J0IHsgVGhlU2VhbVNjaGVtYUZvcm1UZWxDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS10ZWwvc2NoZW1hLWZvcm0tdGVsLmNvbXBvbmVudCdcbmltcG9ydCB7IFRoZVNlYW1TY2hlbWFGb3JtVGlsZWRTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS10aWxlZC1zZWxlY3Qvc2NoZW1hLWZvcm0tdGlsZWQtc2VsZWN0LmNvbXBvbmVudCdcblxuaW1wb3J0IHsgVGhlU2VhbVNjaGVtYUZvcm1GcmFtZXdvcmtDb21wb25lbnQgfSBmcm9tICcuL3NjaGVtYS1mb3JtLWZyYW1ld29yay5jb21wb25lbnQnXG5pbXBvcnQgeyBoYXNQcm9wZXJ0eSB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi91dGlscydcblxuZXhwb3J0IHR5cGUgVGhlU2VhbVNjaGVtYUZvcm1GcmFtZXdvcmtPdmVycmlkZXMgPSBPbWl0PEZyYW1ld29yaywgJ25hbWUnIHwgJ2ZyYW1ld29yaycgfCAnc3R5bGVzaGVldCcgfCAnc2NyaXB0cyc+XG5cbmV4cG9ydCBjb25zdCBUSEVTRUFNX1NDSEVNQV9GUkFNRVdPUktfT1ZFUlJJREVTID0gbmV3IEluamVjdGlvblRva2VuPFRoZVNlYW1TY2hlbWFGb3JtRnJhbWV3b3JrT3ZlcnJpZGVzPignVEhFU0VBTV9TQ0hFTUFfRlJBTUVXT1JLX09WRVJSSURFUycpXG5cbmV4cG9ydCBmdW5jdGlvbiBleHRlbmRGcmFtZXdvcmsodG9FeHRlbmQ6IEZyYW1ld29yaywgZXh0ZW5kRnJhbWV3b3JrT3JOYW1lOiBGcmFtZXdvcmsgfCBzdHJpbmcpOiB2b2lkIHtcbiAgLy8gY29uc29sZS5sb2coJ2V4dGVuZEZyYW1ld29yaycsIHRvRXh0ZW5kLCBleHRlbmRGcmFtZXdvcmtPck5hbWUpXG4gIGNvbnN0IF9vdmVycmlkZXM6IEZyYW1ld29ya1tdIHwgbnVsbCA9IGluamVjdChGcmFtZXdvcmssIHsgb3B0aW9uYWw6IHRydWUgfSkgYXMgRnJhbWV3b3JrW10gfCBudWxsXG4gIGNvbnN0IG92ZXJyaWRlcyA9IHR5cGVvZiBleHRlbmRGcmFtZXdvcmtPck5hbWUgPT09ICdzdHJpbmcnXG4gICAgPyAoX292ZXJyaWRlcyB8fCBbXSkuZmlsdGVyKHggPT4geC5uYW1lID09PSBleHRlbmRGcmFtZXdvcmtPck5hbWUpXG4gICAgOiBbIGV4dGVuZEZyYW1ld29ya09yTmFtZSBdXG5cbiAgLy8gY29uc29sZS5sb2coX292ZXJyaWRlcywgb3ZlcnJpZGVzKVxuXG4gIGlmIChvdmVycmlkZXMpIHtcbiAgICBmb3IgKGNvbnN0IG92ZXJyaWRlIG9mIG92ZXJyaWRlcykge1xuICAgICAgLy8gY29uc29sZS5sb2coJ292ZXJyaWRlJywgb3ZlcnJpZGUpXG4gICAgICBpZiAoaGFzUHJvcGVydHkob3ZlcnJpZGUsICdmcmFtZXdvcmsnKSkge1xuICAgICAgICB0b0V4dGVuZC5mcmFtZXdvcmsgPSBvdmVycmlkZS5mcmFtZXdvcmtcbiAgICAgIH1cblxuICAgICAgaWYgKGhhc1Byb3BlcnR5KG92ZXJyaWRlLCAnd2lkZ2V0cycpKSB7XG4gICAgICAgIHRvRXh0ZW5kLndpZGdldHMgPSB7IC4uLnRvRXh0ZW5kLndpZGdldHMsIC4uLm92ZXJyaWRlLndpZGdldHMgfVxuICAgICAgfVxuXG4gICAgICBpZiAoaGFzUHJvcGVydHkob3ZlcnJpZGUsICdzdHlsZXNoZWV0cycpKSB7XG4gICAgICAgIHRvRXh0ZW5kLnN0eWxlc2hlZXRzID0geyAuLi50b0V4dGVuZC5zdHlsZXNoZWV0cywgLi4ub3ZlcnJpZGUuc3R5bGVzaGVldHMgfVxuICAgICAgfVxuXG4gICAgICBpZiAoaGFzUHJvcGVydHkob3ZlcnJpZGUsICdzY3JpcHRzJykpIHtcbiAgICAgICAgdG9FeHRlbmQuc2NyaXB0cyA9IHsgLi4udG9FeHRlbmQuc2NyaXB0cywgLi4ub3ZlcnJpZGUuc2NyaXB0cyB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUaGVTZWFtRnJhbWV3b3JrIGV4dGVuZHMgRnJhbWV3b3JrIHtcbiAgbmFtZSA9ICdzZWFtLWZyYW1ld29yaydcblxuICBmcmFtZXdvcmsgPSBUaGVTZWFtU2NoZW1hRm9ybUZyYW1ld29ya0NvbXBvbmVudFxuXG4gIHdpZGdldHMgPSB7XG4gICAgJ2NoZWNrYm94JzogVGhlU2VhbVNjaGVtYUZvcm1DaGVja2JveENvbXBvbmVudCxcbiAgICAvLyAnc3VibWl0JzogVGhlU2VhbVNjaGVtYUZvcm1TdWJtaXRDb21wb25lbnQsXG4gICAgJ3N1Ym1pdCc6IFRoZVNlYW1TY2hlbWFGb3JtU3VibWl0U3BsaXRDb21wb25lbnQsXG4gICAgJ3RleHQnOiBUaGVTZWFtU2NoZW1hRm9ybUlucHV0Q29tcG9uZW50LFxuICAgICdudW1iZXInOiBUaGVTZWFtU2NoZW1hRm9ybU51bWJlckNvbXBvbmVudCxcbiAgICAnc2VsZWN0JzogVGhlU2VhbVNjaGVtYUZvcm1TZWxlY3RDb21wb25lbnQsXG4gICAgJ2RpdmlkZXInOiBUaGVTZWFtU2NoZW1hRm9ybURpdmlkZXJDb21wb25lbnQsXG4gICAgJ3RlbCc6IFRoZVNlYW1TY2hlbWFGb3JtVGVsQ29tcG9uZW50LFxuICAgICd0aWxlZC1zZWxlY3QnOiBUaGVTZWFtU2NoZW1hRm9ybVRpbGVkU2VsZWN0Q29tcG9uZW50XG5cbiAgICAvLyAnZmlsZSc6IC8vIFRPRE86IEltcGxlbWVudFxuICAgIC8vICdkYXRlJzogLy8gVE9ETzogSW1wbGVtZW50XG4gICAgLy8gJ21hcCc6IC8vIFRPRE86IEltcGxlbWVudFxuICAgIC8vICd3aXphcmQnOiAvLyBUT0RPOiBJbXBsZW1lbnRcbiAgICAvLyAnaW1hZ2UnOiAvLyBUT0RPOiBJbXBsZW1lbnRcbiAgICAvLyAndGFicyc6IC8vIFRPRE86IEltcGxlbWVudFxuICAgIC8vICdjYXJkJzogLy8gVE9ETzogSW1wbGVtZW50XG4gICAgLy8gJ3JpY2h0ZXh0JzogLy8gVE9ETzogSW1wbGVtZW50XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFRIRVNFQU1fU0NIRU1BX0ZSQU1FV09SS19PVkVSUklERVMpIF9vdmVycmlkZXM/OiBUaGVTZWFtU2NoZW1hRm9ybUZyYW1ld29ya092ZXJyaWRlc1tdXG4gICkge1xuICAgIHN1cGVyKClcblxuICAgIC8vIGNvbnNvbGUubG9nKCdUaGVTZWFtRnJhbWV3b3JrJywgX292ZXJyaWRlcywgdGhpcylcblxuICAgIGlmIChfb3ZlcnJpZGVzKSB7XG4gICAgICBmb3IgKGNvbnN0IG92ZXJyaWRlIG9mIF9vdmVycmlkZXMpIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ292ZXJyaWRlJywgb3ZlcnJpZGUpXG4gICAgICAgIGlmIChoYXNQcm9wZXJ0eShvdmVycmlkZSwgJ3dpZGdldHMnKSkge1xuICAgICAgICAgIHRoaXMud2lkZ2V0cyA9IHsgLi4udGhpcy53aWRnZXRzLCAuLi5vdmVycmlkZS53aWRnZXRzIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLWZvcm0tZnJhbWV3b3JrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9zY2hlbWEtZm9ybS9zY2hlbWEtZm9ybS1mcmFtZXdvcmsudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFFcEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUV0QyxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSw2RUFBNkUsQ0FBQTtBQUNoSSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSx1RUFBdUUsQ0FBQTtBQUN2SCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQTtBQUMxSCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx5RUFBeUUsQ0FBQTtBQUMxSCxPQUFPLEVBQUUscUNBQXFDLEVBQUUsTUFBTSxxRkFBcUYsQ0FBQTtBQUUzSSxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSwyRUFBMkUsQ0FBQTtBQUM3SCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQTtBQUNqSCxPQUFPLEVBQUUscUNBQXFDLEVBQUUsTUFBTSxxRkFBcUYsQ0FBQTtBQUUzSSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUN2RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUE7O0FBSXRELE1BQU0sQ0FBQyxNQUFNLGtDQUFrQyxHQUFHLElBQUksY0FBYyxDQUFzQyxvQ0FBb0MsQ0FBQyxDQUFBO0FBRS9JLE1BQU0sVUFBVSxlQUFlLENBQUMsUUFBbUIsRUFBRSxxQkFBeUM7SUFDNUYsa0VBQWtFO0lBQ2xFLE1BQU0sVUFBVSxHQUF1QixNQUFNLENBQUMsU0FBUyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUF1QixDQUFBO0lBQ2xHLE1BQU0sU0FBUyxHQUFHLE9BQU8scUJBQXFCLEtBQUssUUFBUTtRQUN6RCxDQUFDLENBQUMsQ0FBQyxVQUFVLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxxQkFBcUIsQ0FBQztRQUNsRSxDQUFDLENBQUMsQ0FBRSxxQkFBcUIsQ0FBRSxDQUFBO0lBRTdCLHFDQUFxQztJQUVyQyxJQUFJLFNBQVMsRUFBRTtRQUNiLEtBQUssTUFBTSxRQUFRLElBQUksU0FBUyxFQUFFO1lBQ2hDLG9DQUFvQztZQUNwQyxJQUFJLFdBQVcsQ0FBQyxRQUFRLEVBQUUsV0FBVyxDQUFDLEVBQUU7Z0JBQ3RDLFFBQVEsQ0FBQyxTQUFTLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQTthQUN4QztZQUVELElBQUksV0FBVyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsRUFBRTtnQkFDcEMsUUFBUSxDQUFDLE9BQU8sR0FBRyxFQUFFLEdBQUcsUUFBUSxDQUFDLE9BQU8sRUFBRSxHQUFHLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQTthQUNoRTtZQUVELElBQUksV0FBVyxDQUFDLFFBQVEsRUFBRSxhQUFhLENBQUMsRUFBRTtnQkFDeEMsUUFBUSxDQUFDLFdBQVcsR0FBRyxFQUFFLEdBQUcsUUFBUSxDQUFDLFdBQVcsRUFBRSxHQUFHLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQTthQUM1RTtZQUVELElBQUksV0FBVyxDQUFDLFFBQVEsRUFBRSxTQUFTLENBQUMsRUFBRTtnQkFDcEMsUUFBUSxDQUFDLE9BQU8sR0FBRyxFQUFFLEdBQUcsUUFBUSxDQUFDLE9BQU8sRUFBRSxHQUFHLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQTthQUNoRTtTQUNGO0tBQ0Y7QUFDSCxDQUFDO0FBR0QsTUFBTSxPQUFPLGdCQUFpQixTQUFRLFNBQVM7SUEwQjdDLFlBQzBELFVBQWtEO1FBRTFHLEtBQUssRUFBRSxDQUFBO1FBNUJULFNBQUksR0FBRyxnQkFBZ0IsQ0FBQTtRQUV2QixjQUFTLEdBQUcsbUNBQW1DLENBQUE7UUFFL0MsWUFBTyxHQUFHO1lBQ1IsVUFBVSxFQUFFLGtDQUFrQztZQUM5Qyw4Q0FBOEM7WUFDOUMsUUFBUSxFQUFFLHFDQUFxQztZQUMvQyxNQUFNLEVBQUUsK0JBQStCO1lBQ3ZDLFFBQVEsRUFBRSxnQ0FBZ0M7WUFDMUMsUUFBUSxFQUFFLGdDQUFnQztZQUMxQyxTQUFTLEVBQUUsaUNBQWlDO1lBQzVDLEtBQUssRUFBRSw2QkFBNkI7WUFDcEMsY0FBYyxFQUFFLHFDQUFxQztZQUVyRCw2QkFBNkI7WUFDN0IsNkJBQTZCO1lBQzdCLDhCQUE4QjtZQUM5QixpQ0FBaUM7WUFDakMsNkJBQTZCO1lBQzdCLCtCQUErQjtZQUMvQiw2QkFBNkI7WUFDN0IsNEJBQTRCO1NBQzdCLENBQUE7UUFPQyxvREFBb0Q7UUFFcEQsSUFBSSxVQUFVLEVBQUU7WUFDZCxLQUFLLE1BQU0sUUFBUSxJQUFJLFVBQVUsRUFBRTtnQkFDakMsb0NBQW9DO2dCQUNwQyxJQUFJLFdBQVcsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLEVBQUU7b0JBQ3BDLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxRQUFRLENBQUMsT0FBTyxFQUFFLENBQUE7aUJBQ3hEO2FBQ0Y7U0FDRjtJQUNILENBQUM7OzZHQXpDVSxnQkFBZ0Isa0JBMkJMLGtDQUFrQztpSEEzQjdDLGdCQUFnQjsyRkFBaEIsZ0JBQWdCO2tCQUQ1QixVQUFVOzswQkE0Qk4sUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxrQ0FBa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIEluamVjdGlvblRva2VuLCBPcHRpb25hbCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcblxuaW1wb3J0IHsgRnJhbWV3b3JrIH0gZnJvbSAnQGFqc2YvY29yZSdcblxuaW1wb3J0IHsgVGhlU2VhbVNjaGVtYUZvcm1DaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4uL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLWNoZWNrYm94L3NjaGVtYS1mb3JtLWNoZWNrYm94LmNvbXBvbmVudCdcbmltcG9ydCB7IFRoZVNlYW1TY2hlbWFGb3JtSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1pbnB1dC9zY2hlbWEtZm9ybS1pbnB1dC5jb21wb25lbnQnXG5pbXBvcnQgeyBUaGVTZWFtU2NoZW1hRm9ybU51bWJlckNvbXBvbmVudCB9IGZyb20gJy4uL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLW51bWJlci9zY2hlbWEtZm9ybS1udW1iZXIuY29tcG9uZW50J1xuaW1wb3J0IHsgVGhlU2VhbVNjaGVtYUZvcm1TZWxlY3RDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1zZWxlY3Qvc2NoZW1hLWZvcm0tc2VsZWN0LmNvbXBvbmVudCdcbmltcG9ydCB7IFRoZVNlYW1TY2hlbWFGb3JtU3VibWl0U3BsaXRDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1zdWJtaXQtc3BsaXQvc2NoZW1hLWZvcm0tc3VibWl0LXNwbGl0LmNvbXBvbmVudCdcbmltcG9ydCB7IFRoZVNlYW1TY2hlbWFGb3JtU3VibWl0Q29tcG9uZW50IH0gZnJvbSAnLi4vc2NoZW1hLWZvcm0tY29udHJvbHMvc2NoZW1hLWZvcm0tc3VibWl0L3NjaGVtYS1mb3JtLXN1Ym1pdC5jb21wb25lbnQnXG5pbXBvcnQgeyBUaGVTZWFtU2NoZW1hRm9ybURpdmlkZXJDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1kaXZpZGVyL3NjaGVtYS1mb3JtLWRpdmlkZXIuY29tcG9uZW50J1xuaW1wb3J0IHsgVGhlU2VhbVNjaGVtYUZvcm1UZWxDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS10ZWwvc2NoZW1hLWZvcm0tdGVsLmNvbXBvbmVudCdcbmltcG9ydCB7IFRoZVNlYW1TY2hlbWFGb3JtVGlsZWRTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuLi9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS10aWxlZC1zZWxlY3Qvc2NoZW1hLWZvcm0tdGlsZWQtc2VsZWN0LmNvbXBvbmVudCdcblxuaW1wb3J0IHsgVGhlU2VhbVNjaGVtYUZvcm1GcmFtZXdvcmtDb21wb25lbnQgfSBmcm9tICcuL3NjaGVtYS1mb3JtLWZyYW1ld29yay5jb21wb25lbnQnXG5pbXBvcnQgeyBoYXNQcm9wZXJ0eSB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi91dGlscydcblxuZXhwb3J0IHR5cGUgVGhlU2VhbVNjaGVtYUZvcm1GcmFtZXdvcmtPdmVycmlkZXMgPSBPbWl0PEZyYW1ld29yaywgJ25hbWUnIHwgJ2ZyYW1ld29yaycgfCAnc3R5bGVzaGVldCcgfCAnc2NyaXB0cyc+XG5cbmV4cG9ydCBjb25zdCBUSEVTRUFNX1NDSEVNQV9GUkFNRVdPUktfT1ZFUlJJREVTID0gbmV3IEluamVjdGlvblRva2VuPFRoZVNlYW1TY2hlbWFGb3JtRnJhbWV3b3JrT3ZlcnJpZGVzPignVEhFU0VBTV9TQ0hFTUFfRlJBTUVXT1JLX09WRVJSSURFUycpXG5cbmV4cG9ydCBmdW5jdGlvbiBleHRlbmRGcmFtZXdvcmsodG9FeHRlbmQ6IEZyYW1ld29yaywgZXh0ZW5kRnJhbWV3b3JrT3JOYW1lOiBGcmFtZXdvcmsgfCBzdHJpbmcpOiB2b2lkIHtcbiAgLy8gY29uc29sZS5sb2coJ2V4dGVuZEZyYW1ld29yaycsIHRvRXh0ZW5kLCBleHRlbmRGcmFtZXdvcmtPck5hbWUpXG4gIGNvbnN0IF9vdmVycmlkZXM6IEZyYW1ld29ya1tdIHwgbnVsbCA9IGluamVjdChGcmFtZXdvcmssIHsgb3B0aW9uYWw6IHRydWUgfSkgYXMgRnJhbWV3b3JrW10gfCBudWxsXG4gIGNvbnN0IG92ZXJyaWRlcyA9IHR5cGVvZiBleHRlbmRGcmFtZXdvcmtPck5hbWUgPT09ICdzdHJpbmcnXG4gICAgPyAoX292ZXJyaWRlcyB8fCBbXSkuZmlsdGVyKHggPT4geC5uYW1lID09PSBleHRlbmRGcmFtZXdvcmtPck5hbWUpXG4gICAgOiBbIGV4dGVuZEZyYW1ld29ya09yTmFtZSBdXG5cbiAgLy8gY29uc29sZS5sb2coX292ZXJyaWRlcywgb3ZlcnJpZGVzKVxuXG4gIGlmIChvdmVycmlkZXMpIHtcbiAgICBmb3IgKGNvbnN0IG92ZXJyaWRlIG9mIG92ZXJyaWRlcykge1xuICAgICAgLy8gY29uc29sZS5sb2coJ292ZXJyaWRlJywgb3ZlcnJpZGUpXG4gICAgICBpZiAoaGFzUHJvcGVydHkob3ZlcnJpZGUsICdmcmFtZXdvcmsnKSkge1xuICAgICAgICB0b0V4dGVuZC5mcmFtZXdvcmsgPSBvdmVycmlkZS5mcmFtZXdvcmtcbiAgICAgIH1cblxuICAgICAgaWYgKGhhc1Byb3BlcnR5KG92ZXJyaWRlLCAnd2lkZ2V0cycpKSB7XG4gICAgICAgIHRvRXh0ZW5kLndpZGdldHMgPSB7IC4uLnRvRXh0ZW5kLndpZGdldHMsIC4uLm92ZXJyaWRlLndpZGdldHMgfVxuICAgICAgfVxuXG4gICAgICBpZiAoaGFzUHJvcGVydHkob3ZlcnJpZGUsICdzdHlsZXNoZWV0cycpKSB7XG4gICAgICAgIHRvRXh0ZW5kLnN0eWxlc2hlZXRzID0geyAuLi50b0V4dGVuZC5zdHlsZXNoZWV0cywgLi4ub3ZlcnJpZGUuc3R5bGVzaGVldHMgfVxuICAgICAgfVxuXG4gICAgICBpZiAoaGFzUHJvcGVydHkob3ZlcnJpZGUsICdzY3JpcHRzJykpIHtcbiAgICAgICAgdG9FeHRlbmQuc2NyaXB0cyA9IHsgLi4udG9FeHRlbmQuc2NyaXB0cywgLi4ub3ZlcnJpZGUuc2NyaXB0cyB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBUaGVTZWFtRnJhbWV3b3JrIGV4dGVuZHMgRnJhbWV3b3JrIHtcbiAgbmFtZSA9ICdzZWFtLWZyYW1ld29yaydcblxuICBmcmFtZXdvcmsgPSBUaGVTZWFtU2NoZW1hRm9ybUZyYW1ld29ya0NvbXBvbmVudFxuXG4gIHdpZGdldHMgPSB7XG4gICAgJ2NoZWNrYm94JzogVGhlU2VhbVNjaGVtYUZvcm1DaGVja2JveENvbXBvbmVudCxcbiAgICAvLyAnc3VibWl0JzogVGhlU2VhbVNjaGVtYUZvcm1TdWJtaXRDb21wb25lbnQsXG4gICAgJ3N1Ym1pdCc6IFRoZVNlYW1TY2hlbWFGb3JtU3VibWl0U3BsaXRDb21wb25lbnQsXG4gICAgJ3RleHQnOiBUaGVTZWFtU2NoZW1hRm9ybUlucHV0Q29tcG9uZW50LFxuICAgICdudW1iZXInOiBUaGVTZWFtU2NoZW1hRm9ybU51bWJlckNvbXBvbmVudCxcbiAgICAnc2VsZWN0JzogVGhlU2VhbVNjaGVtYUZvcm1TZWxlY3RDb21wb25lbnQsXG4gICAgJ2RpdmlkZXInOiBUaGVTZWFtU2NoZW1hRm9ybURpdmlkZXJDb21wb25lbnQsXG4gICAgJ3RlbCc6IFRoZVNlYW1TY2hlbWFGb3JtVGVsQ29tcG9uZW50LFxuICAgICd0aWxlZC1zZWxlY3QnOiBUaGVTZWFtU2NoZW1hRm9ybVRpbGVkU2VsZWN0Q29tcG9uZW50XG5cbiAgICAvLyAnZGF0ZSc6IC8vIFRPRE86IEltcGxlbWVudFxuICAgIC8vICdmaWxlJzogLy8gVE9ETzogSW1wbGVtZW50XG4gICAgLy8gJ2ltYWdlJzogLy8gVE9ETzogSW1wbGVtZW50XG4gICAgLy8gJ3JpY2h0ZXh0JzogLy8gVE9ETzogSW1wbGVtZW50XG4gICAgLy8gJ3RhYnMnOiAvLyBUT0RPOiBJbXBsZW1lbnRcbiAgICAvLyAnd2l6YXJkJzogLy8gVE9ETzogSW1wbGVtZW50XG4gICAgLy8gJ2NhcmQnOiAvLyBUT0RPOiBJbXBsZW1lbnRcbiAgICAvLyAnbWFwJzogLy8gVE9ETzogSW1wbGVtZW50XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFRIRVNFQU1fU0NIRU1BX0ZSQU1FV09SS19PVkVSUklERVMpIF9vdmVycmlkZXM/OiBUaGVTZWFtU2NoZW1hRm9ybUZyYW1ld29ya092ZXJyaWRlc1tdXG4gICkge1xuICAgIHN1cGVyKClcblxuICAgIC8vIGNvbnNvbGUubG9nKCdUaGVTZWFtRnJhbWV3b3JrJywgX292ZXJyaWRlcywgdGhpcylcblxuICAgIGlmIChfb3ZlcnJpZGVzKSB7XG4gICAgICBmb3IgKGNvbnN0IG92ZXJyaWRlIG9mIF9vdmVycmlkZXMpIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ292ZXJyaWRlJywgb3ZlcnJpZGUpXG4gICAgICAgIGlmIChoYXNQcm9wZXJ0eShvdmVycmlkZSwgJ3dpZGdldHMnKSkge1xuICAgICAgICAgIHRoaXMud2lkZ2V0cyA9IHsgLi4udGhpcy53aWRnZXRzLCAuLi5vdmVycmlkZS53aWRnZXRzIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
@@ -24,7 +24,7 @@ export class TheSeamSchemaFormInputComponent {
24
24
  }
25
25
  }
26
26
  TheSeamSchemaFormInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamSchemaFormInputComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
27
- TheSeamSchemaFormInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamSchemaFormInputComponent, isStandalone: true, selector: "seam-schema-form-input", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\"\n [disabled]=\"controlDisabled\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: JsonSchemaFormModule }, { kind: "ngmodule", type: TheSeamFormFieldModule }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
27
+ TheSeamSchemaFormInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamSchemaFormInputComponent, isStandalone: true, selector: "seam-schema-form-input", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<div [class]=\"options?.htmlClass || ''\">\n <seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n </seam-form-field>\n\n <seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\"\n [disabled]=\"controlDisabled\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n </seam-form-field>\n</div>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: JsonSchemaFormModule }, { kind: "ngmodule", type: TheSeamFormFieldModule }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
28
28
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamSchemaFormInputComponent, decorators: [{
29
29
  type: Component,
30
30
  args: [{ selector: 'seam-schema-form-input', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
@@ -32,7 +32,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
32
32
  ReactiveFormsModule,
33
33
  JsonSchemaFormModule,
34
34
  TheSeamFormFieldModule,
35
- ], template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\"\n [disabled]=\"controlDisabled\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n", styles: [":host{display:block}\n"] }]
35
+ ], template: "<div [class]=\"options?.htmlClass || ''\">\n <seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n </seam-form-field>\n\n <seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\"\n [disabled]=\"controlDisabled\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n </seam-form-field>\n</div>\n", styles: [":host{display:block}\n"] }]
36
36
  }], ctorParameters: function () { return [{ type: i1.JsonSchemaFormService }]; }, propDecorators: { layoutNode: [{
37
37
  type: Input
38
38
  }], layoutIndex: [{
@@ -40,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
40
40
  }], dataIndex: [{
41
41
  type: Input
42
42
  }] } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLWZvcm0taW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1pbnB1dC9zY2hlbWEtZm9ybS1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZnJhbWV3b3JrL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLWlucHV0L3NjaGVtYS1mb3JtLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFBO0FBQ2pGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQW1CLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFckUsT0FBTyxFQUFFLG9CQUFvQixFQUF5QixNQUFNLFlBQVksQ0FBQTtBQUV4RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTs7Ozs7O0FBZXRFLE1BQU0sT0FBTywrQkFBK0I7SUFlMUMsWUFDbUIsSUFBMkI7UUFBM0IsU0FBSSxHQUFKLElBQUksQ0FBdUI7UUFYOUMsb0JBQWUsR0FBRyxLQUFLLENBQUE7UUFDdkIsaUJBQVksR0FBRyxLQUFLLENBQUE7UUFPcEIscUJBQWdCLEdBQWEsRUFBRSxDQUFBO0lBSTNCLENBQUM7SUFFTCxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sSUFBSSxFQUE4QyxDQUFBO1FBQ3pGLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDbkMsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFVO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ2pELENBQUM7OzRIQTFCVSwrQkFBK0I7Z0hBQS9CLCtCQUErQiw0S0NyQjVDLDIrRUF5REEsK0VEMUNJLFlBQVksNlZBQ1osbUJBQW1CLGs5Q0FDbkIsb0JBQW9CLDhCQUNwQixzQkFBc0I7MkZBR2IsK0JBQStCO2tCQWIzQyxTQUFTOytCQUNFLHdCQUF3QixtQkFHakIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIsc0JBQXNCO3FCQUN2Qjs0R0FXUSxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5cbmltcG9ydCB7IEpzb25TY2hlbWFGb3JtTW9kdWxlLCBKc29uU2NoZW1hRm9ybVNlcnZpY2UgfSBmcm9tICdAYWpzZi9jb3JlJ1xuaW1wb3J0IHsgVGhlU2VhbVNjaGVtYUZvcm1Db250cm9sV2lkZ2V0LCBUaGVTZWFtU2NoZW1hRm9ybVdpZGdldExheW91dE5vZGVPcHRpb25zIH0gZnJvbSAnLi4vLi4vc2NoZW1hLWZvcm0nXG5pbXBvcnQgeyBUaGVTZWFtRm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2Zvcm0tZmllbGQnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tc2NoZW1hLWZvcm0taW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2NoZW1hLWZvcm0taW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zY2hlbWEtZm9ybS1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEpzb25TY2hlbWFGb3JtTW9kdWxlLFxuICAgIFRoZVNlYW1Gb3JtRmllbGRNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1TY2hlbWFGb3JtSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIFRoZVNlYW1TY2hlbWFGb3JtQ29udHJvbFdpZGdldCB7XG5cbiAgZm9ybUNvbnRyb2w/OiBBYnN0cmFjdENvbnRyb2xcbiAgY29udHJvbE5hbWU/OiBzdHJpbmdcbiAgY29udHJvbFZhbHVlPzogYW55XG4gIGNvbnRyb2xEaXNhYmxlZCA9IGZhbHNlXG4gIGJvdW5kQ29udHJvbCA9IGZhbHNlXG4gIG9wdGlvbnM/OiBUaGVTZWFtU2NoZW1hRm9ybVdpZGdldExheW91dE5vZGVPcHRpb25zXG5cbiAgQElucHV0KCkgbGF5b3V0Tm9kZTogVGhlU2VhbVNjaGVtYUZvcm1Db250cm9sV2lkZ2V0WydsYXlvdXROb2RlJ11cbiAgQElucHV0KCkgbGF5b3V0SW5kZXg6IFRoZVNlYW1TY2hlbWFGb3JtQ29udHJvbFdpZGdldFsnbGF5b3V0SW5kZXgnXVxuICBASW5wdXQoKSBkYXRhSW5kZXg6IFRoZVNlYW1TY2hlbWFGb3JtQ29udHJvbFdpZGdldFsnZGF0YUluZGV4J11cblxuICBhdXRvQ29tcGxldGVMaXN0OiBzdHJpbmdbXSA9IFtdXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBfanNmOiBKc29uU2NoZW1hRm9ybVNlcnZpY2VcbiAgKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmxheW91dE5vZGU/Lm9wdGlvbnMgfHwge30gYXMgVGhlU2VhbVNjaGVtYUZvcm1XaWRnZXRMYXlvdXROb2RlT3B0aW9uc1xuICAgIHRoaXMuX2pzZi5pbml0aWFsaXplQ29udHJvbCh0aGlzKVxuICB9XG5cbiAgdXBkYXRlVmFsdWUoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuX2pzZi51cGRhdGVWYWx1ZSh0aGlzLCBldmVudC50YXJnZXQudmFsdWUpXG4gIH1cblxufVxuIiwiPHNlYW0tZm9ybS1maWVsZCAqbmdJZj1cImJvdW5kQ29udHJvbFwiPlxuICA8bmctdGVtcGxhdGUgc2VhbUZvcm1GaWVsZExhYmVsVHBsIGxldC1yZXF1aXJlZD1cInJlcXVpcmVkXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFvcHRpb25zPy5ub3RpdGxlXCI+XG4gICAgICB7eyBvcHRpb25zPy50aXRsZSB9fTxzZWFtLWZvcm0tZmllbGQtcmVxdWlyZWQtaW5kaWNhdG9yIGNsYXNzPVwicGwtMVwiIFtyZXF1aXJlZF09XCJvcHRpb25zPy5yZXF1aXJlZFwiPjwvc2VhbS1mb3JtLWZpZWxkLXJlcXVpcmVkLWluZGljYXRvcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbiAgPGlucHV0IHNlYW1JbnB1dFxuICAgIFtmb3JtQ29udHJvbF09XCIkYW55KGZvcm1Db250cm9sKVwiXG4gICAgW25nQ2xhc3NdPVwib3B0aW9ucz8uZmllbGRIdG1sQ2xhc3NcIlxuICAgIFtpZF09XCInY29udHJvbCcgKyBsYXlvdXROb2RlPy5faWRcIlxuICAgIFtuYW1lXT1cImNvbnRyb2xOYW1lXCJcbiAgICBbcmVxdWlyZWRdPVwib3B0aW9ucz8ucmVxdWlyZWRcIlxuXG4gICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCInY29udHJvbCcgKyBsYXlvdXROb2RlPy5faWQgKyAnU3RhdHVzJ1wiXG4gICAgW2F0dHIubGlzdF09XCInY29udHJvbCcgKyBsYXlvdXROb2RlPy5faWQgKyAnQXV0b2NvbXBsZXRlJ1wiXG4gICAgW2F0dHIubWF4bGVuZ3RoXT1cIm9wdGlvbnM/Lm1heExlbmd0aFwiXG4gICAgW2F0dHIubWlubGVuZ3RoXT1cIm9wdGlvbnM/Lm1pbkxlbmd0aFwiXG4gICAgW2F0dHIucGF0dGVybl09XCJvcHRpb25zPy5wYXR0ZXJuXCJcbiAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJvcHRpb25zPy5wbGFjZWhvbGRlclwiXG4gICAgW2F0dHIucmVxdWlyZWRdPVwib3B0aW9ucz8ucmVxdWlyZWRcIlxuICAgIFtyZWFkb25seV09XCJvcHRpb25zPy5yZWFkb25seSA/ICdyZWFkb25seScgOiBudWxsXCJcbiAgICBbdHlwZV09XCJsYXlvdXROb2RlPy50eXBlXCI+XG4gIDxkYXRhbGlzdCAqbmdJZj1cIm9wdGlvbnM/LnR5cGVhaGVhZD8uc291cmNlXCJcbiAgICBbaWRdPVwiJ2NvbnRyb2wnICsgbGF5b3V0Tm9kZT8uX2lkICsgJ0F1dG9jb21wbGV0ZSdcIj5cbiAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCB3b3JkIG9mIG9wdGlvbnM/LnR5cGVhaGVhZD8uc291cmNlXCIgW3ZhbHVlXT1cIndvcmRcIj5cbiAgPC9kYXRhbGlzdD5cbjwvc2VhbS1mb3JtLWZpZWxkPlxuXG48c2VhbS1mb3JtLWZpZWxkICpuZ0lmPVwiIWJvdW5kQ29udHJvbFwiPlxuICA8bmctdGVtcGxhdGUgc2VhbUZvcm1GaWVsZExhYmVsVHBsIGxldC1yZXF1aXJlZD1cInJlcXVpcmVkXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFvcHRpb25zPy5ub3RpdGxlXCI+XG4gICAgICB7eyBvcHRpb25zPy50aXRsZSB9fTxzZWFtLWZvcm0tZmllbGQtcmVxdWlyZWQtaW5kaWNhdG9yIGNsYXNzPVwicGwtMVwiIFtyZXF1aXJlZF09XCJvcHRpb25zPy5yZXF1aXJlZFwiPjwvc2VhbS1mb3JtLWZpZWxkLXJlcXVpcmVkLWluZGljYXRvcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9uZy10ZW1wbGF0ZT5cbiAgPGlucHV0IHNlYW1JbnB1dFxuICAgIFtuZ0NsYXNzXT1cIm9wdGlvbnM/LmZpZWxkSHRtbENsYXNzXCJcbiAgICBbaWRdPVwiJ2NvbnRyb2wnICsgbGF5b3V0Tm9kZT8uX2lkXCJcbiAgICBbbmFtZV09XCJjb250cm9sTmFtZVwiXG4gICAgW3JlcXVpcmVkXT1cIm9wdGlvbnM/LnJlcXVpcmVkXCJcbiAgICBbdmFsdWVdPVwiY29udHJvbFZhbHVlXCJcbiAgICAoaW5wdXQpPVwidXBkYXRlVmFsdWUoJGV2ZW50KVwiXG5cbiAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cIidjb250cm9sJyArIGxheW91dE5vZGU/Ll9pZCArICdTdGF0dXMnXCJcbiAgICBbYXR0ci5saXN0XT1cIidjb250cm9sJyArIGxheW91dE5vZGU/Ll9pZCArICdBdXRvY29tcGxldGUnXCJcbiAgICBbYXR0ci5tYXhsZW5ndGhdPVwib3B0aW9ucz8ubWF4TGVuZ3RoXCJcbiAgICBbYXR0ci5taW5sZW5ndGhdPVwib3B0aW9ucz8ubWluTGVuZ3RoXCJcbiAgICBbYXR0ci5wYXR0ZXJuXT1cIm9wdGlvbnM/LnBhdHRlcm5cIlxuICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cIm9wdGlvbnM/LnBsYWNlaG9sZGVyXCJcbiAgICBbYXR0ci5yZXF1aXJlZF09XCJvcHRpb25zPy5yZXF1aXJlZFwiXG4gICAgW3JlYWRvbmx5XT1cIm9wdGlvbnM/LnJlYWRvbmx5ID8gJ3JlYWRvbmx5JyA6IG51bGxcIlxuICAgIFt0eXBlXT1cImxheW91dE5vZGU/LnR5cGVcIlxuICAgIFtkaXNhYmxlZF09XCJjb250cm9sRGlzYWJsZWRcIj5cbiAgPGRhdGFsaXN0ICpuZ0lmPVwib3B0aW9ucz8udHlwZWFoZWFkPy5zb3VyY2VcIlxuICAgIFtpZF09XCInY29udHJvbCcgKyBsYXlvdXROb2RlPy5faWQgKyAnQXV0b2NvbXBsZXRlJ1wiPlxuICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IHdvcmQgb2Ygb3B0aW9ucz8udHlwZWFoZWFkPy5zb3VyY2VcIiBbdmFsdWVdPVwid29yZFwiPlxuICA8L2RhdGFsaXN0PlxuPC9zZWFtLWZvcm0tZmllbGQ+XG4iXX0=
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLWZvcm0taW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2ZyYW1ld29yay9zY2hlbWEtZm9ybS1jb250cm9scy9zY2hlbWEtZm9ybS1pbnB1dC9zY2hlbWEtZm9ybS1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZnJhbWV3b3JrL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLWlucHV0L3NjaGVtYS1mb3JtLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFBO0FBQ2pGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQTtBQUM5QyxPQUFPLEVBQW1CLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFckUsT0FBTyxFQUFFLG9CQUFvQixFQUF5QixNQUFNLFlBQVksQ0FBQTtBQUV4RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTs7Ozs7O0FBZXRFLE1BQU0sT0FBTywrQkFBK0I7SUFlMUMsWUFDbUIsSUFBMkI7UUFBM0IsU0FBSSxHQUFKLElBQUksQ0FBdUI7UUFYOUMsb0JBQWUsR0FBRyxLQUFLLENBQUE7UUFDdkIsaUJBQVksR0FBRyxLQUFLLENBQUE7UUFPcEIscUJBQWdCLEdBQWEsRUFBRSxDQUFBO0lBSTNCLENBQUM7SUFFTCxRQUFRO1FBQ04sSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sSUFBSSxFQUE4QyxDQUFBO1FBQ3pGLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDbkMsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFVO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ2pELENBQUM7OzRIQTFCVSwrQkFBK0I7Z0hBQS9CLCtCQUErQiw0S0NyQjVDLDJvRkEyREEsK0VENUNJLFlBQVksNlZBQ1osbUJBQW1CLGs5Q0FDbkIsb0JBQW9CLDhCQUNwQixzQkFBc0I7MkZBR2IsK0JBQStCO2tCQWIzQyxTQUFTOytCQUNFLHdCQUF3QixtQkFHakIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLG9CQUFvQjt3QkFDcEIsc0JBQXNCO3FCQUN2Qjs0R0FXUSxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5cbmltcG9ydCB7IEpzb25TY2hlbWFGb3JtTW9kdWxlLCBKc29uU2NoZW1hRm9ybVNlcnZpY2UgfSBmcm9tICdAYWpzZi9jb3JlJ1xuaW1wb3J0IHsgVGhlU2VhbVNjaGVtYUZvcm1Db250cm9sV2lkZ2V0LCBUaGVTZWFtU2NoZW1hRm9ybVdpZGdldExheW91dE5vZGVPcHRpb25zIH0gZnJvbSAnLi4vLi4vc2NoZW1hLWZvcm0nXG5pbXBvcnQgeyBUaGVTZWFtRm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2Zvcm0tZmllbGQnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tc2NoZW1hLWZvcm0taW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2NoZW1hLWZvcm0taW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zY2hlbWEtZm9ybS1pbnB1dC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEpzb25TY2hlbWFGb3JtTW9kdWxlLFxuICAgIFRoZVNlYW1Gb3JtRmllbGRNb2R1bGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1TY2hlbWFGb3JtSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIFRoZVNlYW1TY2hlbWFGb3JtQ29udHJvbFdpZGdldCB7XG5cbiAgZm9ybUNvbnRyb2w/OiBBYnN0cmFjdENvbnRyb2xcbiAgY29udHJvbE5hbWU/OiBzdHJpbmdcbiAgY29udHJvbFZhbHVlPzogYW55XG4gIGNvbnRyb2xEaXNhYmxlZCA9IGZhbHNlXG4gIGJvdW5kQ29udHJvbCA9IGZhbHNlXG4gIG9wdGlvbnM/OiBUaGVTZWFtU2NoZW1hRm9ybVdpZGdldExheW91dE5vZGVPcHRpb25zXG5cbiAgQElucHV0KCkgbGF5b3V0Tm9kZTogVGhlU2VhbVNjaGVtYUZvcm1Db250cm9sV2lkZ2V0WydsYXlvdXROb2RlJ11cbiAgQElucHV0KCkgbGF5b3V0SW5kZXg6IFRoZVNlYW1TY2hlbWFGb3JtQ29udHJvbFdpZGdldFsnbGF5b3V0SW5kZXgnXVxuICBASW5wdXQoKSBkYXRhSW5kZXg6IFRoZVNlYW1TY2hlbWFGb3JtQ29udHJvbFdpZGdldFsnZGF0YUluZGV4J11cblxuICBhdXRvQ29tcGxldGVMaXN0OiBzdHJpbmdbXSA9IFtdXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBfanNmOiBKc29uU2NoZW1hRm9ybVNlcnZpY2VcbiAgKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmxheW91dE5vZGU/Lm9wdGlvbnMgfHwge30gYXMgVGhlU2VhbVNjaGVtYUZvcm1XaWRnZXRMYXlvdXROb2RlT3B0aW9uc1xuICAgIHRoaXMuX2pzZi5pbml0aWFsaXplQ29udHJvbCh0aGlzKVxuICB9XG5cbiAgdXBkYXRlVmFsdWUoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuX2pzZi51cGRhdGVWYWx1ZSh0aGlzLCBldmVudC50YXJnZXQudmFsdWUpXG4gIH1cblxufVxuIiwiPGRpdiBbY2xhc3NdPVwib3B0aW9ucz8uaHRtbENsYXNzIHx8ICcnXCI+XG4gIDxzZWFtLWZvcm0tZmllbGQgKm5nSWY9XCJib3VuZENvbnRyb2xcIj5cbiAgICA8bmctdGVtcGxhdGUgc2VhbUZvcm1GaWVsZExhYmVsVHBsIGxldC1yZXF1aXJlZD1cInJlcXVpcmVkXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIW9wdGlvbnM/Lm5vdGl0bGVcIj5cbiAgICAgICAge3sgb3B0aW9ucz8udGl0bGUgfX08c2VhbS1mb3JtLWZpZWxkLXJlcXVpcmVkLWluZGljYXRvciBjbGFzcz1cInBsLTFcIiBbcmVxdWlyZWRdPVwib3B0aW9ucz8ucmVxdWlyZWRcIj48L3NlYW0tZm9ybS1maWVsZC1yZXF1aXJlZC1pbmRpY2F0b3I+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxpbnB1dCBzZWFtSW5wdXRcbiAgICAgIFtmb3JtQ29udHJvbF09XCIkYW55KGZvcm1Db250cm9sKVwiXG4gICAgICBbbmdDbGFzc109XCJvcHRpb25zPy5maWVsZEh0bWxDbGFzc1wiXG4gICAgICBbaWRdPVwiJ2NvbnRyb2wnICsgbGF5b3V0Tm9kZT8uX2lkXCJcbiAgICAgIFtuYW1lXT1cImNvbnRyb2xOYW1lXCJcbiAgICAgIFtyZXF1aXJlZF09XCJvcHRpb25zPy5yZXF1aXJlZFwiXG5cbiAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiJ2NvbnRyb2wnICsgbGF5b3V0Tm9kZT8uX2lkICsgJ1N0YXR1cydcIlxuICAgICAgW2F0dHIubGlzdF09XCInY29udHJvbCcgKyBsYXlvdXROb2RlPy5faWQgKyAnQXV0b2NvbXBsZXRlJ1wiXG4gICAgICBbYXR0ci5tYXhsZW5ndGhdPVwib3B0aW9ucz8ubWF4TGVuZ3RoXCJcbiAgICAgIFthdHRyLm1pbmxlbmd0aF09XCJvcHRpb25zPy5taW5MZW5ndGhcIlxuICAgICAgW2F0dHIucGF0dGVybl09XCJvcHRpb25zPy5wYXR0ZXJuXCJcbiAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cIm9wdGlvbnM/LnBsYWNlaG9sZGVyXCJcbiAgICAgIFthdHRyLnJlcXVpcmVkXT1cIm9wdGlvbnM/LnJlcXVpcmVkXCJcbiAgICAgIFtyZWFkb25seV09XCJvcHRpb25zPy5yZWFkb25seSA/ICdyZWFkb25seScgOiBudWxsXCJcbiAgICAgIFt0eXBlXT1cImxheW91dE5vZGU/LnR5cGVcIj5cbiAgICA8ZGF0YWxpc3QgKm5nSWY9XCJvcHRpb25zPy50eXBlYWhlYWQ/LnNvdXJjZVwiXG4gICAgICBbaWRdPVwiJ2NvbnRyb2wnICsgbGF5b3V0Tm9kZT8uX2lkICsgJ0F1dG9jb21wbGV0ZSdcIj5cbiAgICAgIDxvcHRpb24gKm5nRm9yPVwibGV0IHdvcmQgb2Ygb3B0aW9ucz8udHlwZWFoZWFkPy5zb3VyY2VcIiBbdmFsdWVdPVwid29yZFwiPlxuICAgIDwvZGF0YWxpc3Q+XG4gIDwvc2VhbS1mb3JtLWZpZWxkPlxuXG4gIDxzZWFtLWZvcm0tZmllbGQgKm5nSWY9XCIhYm91bmRDb250cm9sXCI+XG4gICAgPG5nLXRlbXBsYXRlIHNlYW1Gb3JtRmllbGRMYWJlbFRwbCBsZXQtcmVxdWlyZWQ9XCJyZXF1aXJlZFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFvcHRpb25zPy5ub3RpdGxlXCI+XG4gICAgICAgIHt7IG9wdGlvbnM/LnRpdGxlIH19PHNlYW0tZm9ybS1maWVsZC1yZXF1aXJlZC1pbmRpY2F0b3IgY2xhc3M9XCJwbC0xXCIgW3JlcXVpcmVkXT1cIm9wdGlvbnM/LnJlcXVpcmVkXCI+PC9zZWFtLWZvcm0tZmllbGQtcmVxdWlyZWQtaW5kaWNhdG9yPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8aW5wdXQgc2VhbUlucHV0XG4gICAgICBbbmdDbGFzc109XCJvcHRpb25zPy5maWVsZEh0bWxDbGFzc1wiXG4gICAgICBbaWRdPVwiJ2NvbnRyb2wnICsgbGF5b3V0Tm9kZT8uX2lkXCJcbiAgICAgIFtuYW1lXT1cImNvbnRyb2xOYW1lXCJcbiAgICAgIFtyZXF1aXJlZF09XCJvcHRpb25zPy5yZXF1aXJlZFwiXG4gICAgICBbdmFsdWVdPVwiY29udHJvbFZhbHVlXCJcbiAgICAgIChpbnB1dCk9XCJ1cGRhdGVWYWx1ZSgkZXZlbnQpXCJcblxuICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCInY29udHJvbCcgKyBsYXlvdXROb2RlPy5faWQgKyAnU3RhdHVzJ1wiXG4gICAgICBbYXR0ci5saXN0XT1cIidjb250cm9sJyArIGxheW91dE5vZGU/Ll9pZCArICdBdXRvY29tcGxldGUnXCJcbiAgICAgIFthdHRyLm1heGxlbmd0aF09XCJvcHRpb25zPy5tYXhMZW5ndGhcIlxuICAgICAgW2F0dHIubWlubGVuZ3RoXT1cIm9wdGlvbnM/Lm1pbkxlbmd0aFwiXG4gICAgICBbYXR0ci5wYXR0ZXJuXT1cIm9wdGlvbnM/LnBhdHRlcm5cIlxuICAgICAgW2F0dHIucGxhY2Vob2xkZXJdPVwib3B0aW9ucz8ucGxhY2Vob2xkZXJcIlxuICAgICAgW2F0dHIucmVxdWlyZWRdPVwib3B0aW9ucz8ucmVxdWlyZWRcIlxuICAgICAgW3JlYWRvbmx5XT1cIm9wdGlvbnM/LnJlYWRvbmx5ID8gJ3JlYWRvbmx5JyA6IG51bGxcIlxuICAgICAgW3R5cGVdPVwibGF5b3V0Tm9kZT8udHlwZVwiXG4gICAgICBbZGlzYWJsZWRdPVwiY29udHJvbERpc2FibGVkXCI+XG4gICAgPGRhdGFsaXN0ICpuZ0lmPVwib3B0aW9ucz8udHlwZWFoZWFkPy5zb3VyY2VcIlxuICAgICAgW2lkXT1cIidjb250cm9sJyArIGxheW91dE5vZGU/Ll9pZCArICdBdXRvY29tcGxldGUnXCI+XG4gICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCB3b3JkIG9mIG9wdGlvbnM/LnR5cGVhaGVhZD8uc291cmNlXCIgW3ZhbHVlXT1cIndvcmRcIj5cbiAgICA8L2RhdGFsaXN0PlxuICA8L3NlYW0tZm9ybS1maWVsZD5cbjwvZGl2PlxuIl19
@@ -28,7 +28,7 @@ export class TheSeamSchemaFormSelectComponent {
28
28
  }
29
29
  }
30
30
  TheSeamSchemaFormSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamSchemaFormSelectComponent, deps: [{ token: i1.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
31
- TheSeamSchemaFormSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamSchemaFormSelectComponent, isStandalone: true, selector: "seam-schema-form-select", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\">\n <ng-template ng-label-tmp let-item=\"item\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n (change)=\"updateValue($event)\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\"\n [disabled]=\"controlDisabled\">\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: JsonSchemaFormModule }, { kind: "ngmodule", type: TheSeamFormFieldModule }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }, { kind: "ngmodule", type: NgSelectModule }, { kind: "component", type: i5.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: i5.ɵf, selector: "[ng-option-tmp]" }, { kind: "directive", type: i5.ɵh, selector: "[ng-label-tmp]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
31
+ TheSeamSchemaFormSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamSchemaFormSelectComponent, isStandalone: true, selector: "seam-schema-form-select", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<div [class]=\"options?.htmlClass || ''\">\n <seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\">\n <ng-template ng-label-tmp let-item=\"item\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n </seam-form-field>\n\n <seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n (change)=\"updateValue($event)\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\"\n [disabled]=\"controlDisabled\">\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n </seam-form-field>\n</div>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: JsonSchemaFormModule }, { kind: "ngmodule", type: TheSeamFormFieldModule }, { kind: "component", type: i4.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }, { kind: "ngmodule", type: NgSelectModule }, { kind: "component", type: i5.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: i5.ɵf, selector: "[ng-option-tmp]" }, { kind: "directive", type: i5.ɵh, selector: "[ng-label-tmp]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
32
32
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamSchemaFormSelectComponent, decorators: [{
33
33
  type: Component,
34
34
  args: [{ selector: 'seam-schema-form-select', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
@@ -37,7 +37,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
37
37
  JsonSchemaFormModule,
38
38
  TheSeamFormFieldModule,
39
39
  NgSelectModule,
40
- ], template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\">\n <ng-template ng-label-tmp let-item=\"item\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n (change)=\"updateValue($event)\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\"\n [disabled]=\"controlDisabled\">\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n", styles: [":host{display:block}\n"] }]
40
+ ], template: "<div [class]=\"options?.htmlClass || ''\">\n <seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\">\n <ng-template ng-label-tmp let-item=\"item\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n </seam-form-field>\n\n <seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n (change)=\"updateValue($event)\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\"\n [disabled]=\"controlDisabled\">\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n </seam-form-field>\n</div>\n", styles: [":host{display:block}\n"] }]
41
41
  }], ctorParameters: function () { return [{ type: i1.JsonSchemaFormService }]; }, propDecorators: { layoutNode: [{
42
42
  type: Input
43
43
  }], layoutIndex: [{
@@ -45,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
45
45
  }], dataIndex: [{
46
46
  type: Input
47
47
  }] } });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLWZvcm0tc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9mcmFtZXdvcmsvc2NoZW1hLWZvcm0tY29udHJvbHMvc2NoZW1hLWZvcm0tc2VsZWN0L3NjaGVtYS1mb3JtLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZnJhbWV3b3JrL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLXNlbGVjdC9zY2hlbWEtZm9ybS1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUE7QUFDakYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBbUIsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUVyRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBeUIsTUFBTSxZQUFZLENBQUE7QUFFaEcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFBOzs7Ozs7O0FBZ0JyRCxNQUFNLE9BQU8sZ0NBQWdDO0lBZ0IzQyxZQUNtQixJQUEyQjtRQUEzQixTQUFJLEdBQUosSUFBSSxDQUF1QjtRQVo5QyxvQkFBZSxHQUFHLEtBQUssQ0FBQTtRQUN2QixpQkFBWSxHQUFHLEtBQUssQ0FBQTtRQU9wQixlQUFVLEdBQVUsRUFBRSxDQUFBO1FBQ3RCLFlBQU8sR0FBRyxPQUFPLENBQUE7SUFJYixDQUFDO0lBRUwsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxPQUFPLElBQUksRUFBOEMsQ0FBQTtRQUN6RixJQUFJLENBQUMsVUFBVSxHQUFHLGFBQWEsQ0FDN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQy9DLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQ3BFLENBQUE7UUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ25DLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBVTtRQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQzFDLENBQUM7OzZIQWhDVSxnQ0FBZ0M7aUhBQWhDLGdDQUFnQyw2S0N2QjdDLGlwRUF5REEsK0VEekNJLFlBQVksZ09BQ1osbUJBQW1CLHNoQkFDbkIsb0JBQW9CLDhCQUNwQixzQkFBc0IsNjBCQUN0QixjQUFjOzJGQUdMLGdDQUFnQztrQkFkNUMsU0FBUzsrQkFDRSx5QkFBeUIsbUJBR2xCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixvQkFBb0I7d0JBQ3BCLHNCQUFzQjt3QkFDdEIsY0FBYztxQkFDZjs0R0FXUSxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5cbmltcG9ydCB7IGJ1aWxkVGl0bGVNYXAsIGlzQXJyYXksIEpzb25TY2hlbWFGb3JtTW9kdWxlLCBKc29uU2NoZW1hRm9ybVNlcnZpY2UgfSBmcm9tICdAYWpzZi9jb3JlJ1xuaW1wb3J0IHsgVGhlU2VhbVNjaGVtYUZvcm1Db250cm9sV2lkZ2V0LCBUaGVTZWFtU2NoZW1hRm9ybVdpZGdldExheW91dE5vZGVPcHRpb25zIH0gZnJvbSAnLi4vLi4vc2NoZW1hLWZvcm0nXG5pbXBvcnQgeyBUaGVTZWFtRm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2Zvcm0tZmllbGQnXG5pbXBvcnQgeyBOZ1NlbGVjdE1vZHVsZSB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0J1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLXNjaGVtYS1mb3JtLXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zY2hlbWEtZm9ybS1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zY2hlbWEtZm9ybS1zZWxlY3QuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBKc29uU2NoZW1hRm9ybU1vZHVsZSxcbiAgICBUaGVTZWFtRm9ybUZpZWxkTW9kdWxlLFxuICAgIE5nU2VsZWN0TW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUaGVTZWFtU2NoZW1hRm9ybVNlbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgVGhlU2VhbVNjaGVtYUZvcm1Db250cm9sV2lkZ2V0IHtcblxuICBmb3JtQ29udHJvbD86IEFic3RyYWN0Q29udHJvbFxuICBjb250cm9sTmFtZT86IHN0cmluZ1xuICBjb250cm9sVmFsdWU/OiBhbnlcbiAgY29udHJvbERpc2FibGVkID0gZmFsc2VcbiAgYm91bmRDb250cm9sID0gZmFsc2VcbiAgb3B0aW9ucz86IFRoZVNlYW1TY2hlbWFGb3JtV2lkZ2V0TGF5b3V0Tm9kZU9wdGlvbnNcblxuICBASW5wdXQoKSBsYXlvdXROb2RlOiBUaGVTZWFtU2NoZW1hRm9ybUNvbnRyb2xXaWRnZXRbJ2xheW91dE5vZGUnXVxuICBASW5wdXQoKSBsYXlvdXRJbmRleDogVGhlU2VhbVNjaGVtYUZvcm1Db250cm9sV2lkZ2V0WydsYXlvdXRJbmRleCddXG4gIEBJbnB1dCgpIGRhdGFJbmRleDogVGhlU2VhbVNjaGVtYUZvcm1Db250cm9sV2lkZ2V0WydkYXRhSW5kZXgnXVxuXG4gIHNlbGVjdExpc3Q6IGFueVtdID0gW11cbiAgaXNBcnJheSA9IGlzQXJyYXlcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9qc2Y6IEpzb25TY2hlbWFGb3JtU2VydmljZVxuICApIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMub3B0aW9ucyA9IHRoaXMubGF5b3V0Tm9kZT8ub3B0aW9ucyB8fCB7fSBhcyBUaGVTZWFtU2NoZW1hRm9ybVdpZGdldExheW91dE5vZGVPcHRpb25zXG4gICAgdGhpcy5zZWxlY3RMaXN0ID0gYnVpbGRUaXRsZU1hcChcbiAgICAgIHRoaXMub3B0aW9ucy50aXRsZU1hcCB8fCB0aGlzLm9wdGlvbnMuZW51bU5hbWVzLFxuICAgICAgdGhpcy5vcHRpb25zLmVudW0sICEhdGhpcy5vcHRpb25zLnJlcXVpcmVkLCAhIXRoaXMub3B0aW9ucy5mbGF0TGlzdFxuICAgIClcblxuICAgIHRoaXMuX2pzZi5pbml0aWFsaXplQ29udHJvbCh0aGlzKVxuICB9XG5cbiAgdXBkYXRlVmFsdWUoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuX2pzZi51cGRhdGVWYWx1ZSh0aGlzLCBldmVudC52YWx1ZSlcbiAgfVxuXG59XG4iLCI8c2VhbS1mb3JtLWZpZWxkICpuZ0lmPVwiYm91bmRDb250cm9sXCI+XG4gIDxuZy10ZW1wbGF0ZSBzZWFtRm9ybUZpZWxkTGFiZWxUcGwgbGV0LXJlcXVpcmVkPVwicmVxdWlyZWRcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIW9wdGlvbnM/Lm5vdGl0bGVcIj5cbiAgICAgIHt7IG9wdGlvbnM/LnRpdGxlIH19PHNlYW0tZm9ybS1maWVsZC1yZXF1aXJlZC1pbmRpY2F0b3IgY2xhc3M9XCJwbC0xXCI+PC9zZWFtLWZvcm0tZmllbGQtcmVxdWlyZWQtaW5kaWNhdG9yPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L25nLXRlbXBsYXRlPlxuICA8bmctc2VsZWN0IHNlYW1JbnB1dFxuICAgIFtmb3JtQ29udHJvbF09XCIkYW55KGZvcm1Db250cm9sKVwiXG4gICAgW25nQ2xhc3NdPVwib3B0aW9ucz8uZmllbGRIdG1sQ2xhc3NcIlxuICAgIFtpZF09XCInY29udHJvbCcgKyBsYXlvdXROb2RlPy5faWRcIlxuICAgIFtyZXF1aXJlZF09XCJvcHRpb25zPy5yZXF1aXJlZFwiXG4gICAgW2l0ZW1zXT1cInNlbGVjdExpc3RcIlxuICAgIGJpbmRMYWJlbD1cIm5hbWVcIlxuICAgIGJpbmRWYWx1ZT1cInZhbHVlXCJcbiAgICBbY2xlYXJhYmxlXT1cImZhbHNlXCJcbiAgICBhcHBlbmRUbz1cImJvZHlcIlxuXG4gICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCInY29udHJvbCcgKyBsYXlvdXROb2RlPy5faWQgKyAnU3RhdHVzJ1wiXG4gICAgW2F0dHIucGxhY2Vob2xkZXJdPVwib3B0aW9ucz8ucGxhY2Vob2xkZXJcIlxuICAgIFthdHRyLnJlcXVpcmVkXT1cIm9wdGlvbnM/LnJlcXVpcmVkXCJcbiAgICBbcmVhZG9ubHldPVwib3B0aW9ucz8ucmVhZG9ubHkgPyB0cnVlIDogZmFsc2VcIj5cbiAgICA8bmctdGVtcGxhdGUgbmctbGFiZWwtdG1wIGxldC1pdGVtPVwiaXRlbVwiPlxuICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJpdGVtLm5hbWVcIj48L3NwYW4+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgbmctb3B0aW9uLXRtcCBsZXQtaXRlbT1cIml0ZW1cIiBsZXQtaW5kZXg9XCJpbmRleFwiPlxuICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJpdGVtLm5hbWVcIj48L3NwYW4+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy1zZWxlY3Q+XG48L3NlYW0tZm9ybS1maWVsZD5cblxuPHNlYW0tZm9ybS1maWVsZCAqbmdJZj1cIiFib3VuZENvbnRyb2xcIj5cbiAgPG5nLXRlbXBsYXRlIHNlYW1Gb3JtRmllbGRMYWJlbFRwbCBsZXQtcmVxdWlyZWQ9XCJyZXF1aXJlZFwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhb3B0aW9ucz8ubm90aXRsZVwiPlxuICAgICAge3sgb3B0aW9ucz8udGl0bGUgfX08c2VhbS1mb3JtLWZpZWxkLXJlcXVpcmVkLWluZGljYXRvciBjbGFzcz1cInBsLTFcIj48L3NlYW0tZm9ybS1maWVsZC1yZXF1aXJlZC1pbmRpY2F0b3I+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvbmctdGVtcGxhdGU+XG4gIDxuZy1zZWxlY3Qgc2VhbUlucHV0XG4gICAgW25nQ2xhc3NdPVwib3B0aW9ucz8uZmllbGRIdG1sQ2xhc3NcIlxuICAgIFtpZF09XCInY29udHJvbCcgKyBsYXlvdXROb2RlPy5faWRcIlxuICAgIFtyZXF1aXJlZF09XCJvcHRpb25zPy5yZXF1aXJlZFwiXG4gICAgW2l0ZW1zXT1cInNlbGVjdExpc3RcIlxuICAgIGJpbmRMYWJlbD1cIm5hbWVcIlxuICAgIGJpbmRWYWx1ZT1cInZhbHVlXCJcbiAgICBbY2xlYXJhYmxlXT1cImZhbHNlXCJcbiAgICAoY2hhbmdlKT1cInVwZGF0ZVZhbHVlKCRldmVudClcIlxuICAgIGFwcGVuZFRvPVwiYm9keVwiXG5cbiAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cIidjb250cm9sJyArIGxheW91dE5vZGU/Ll9pZCArICdTdGF0dXMnXCJcbiAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJvcHRpb25zPy5wbGFjZWhvbGRlclwiXG4gICAgW2F0dHIucmVxdWlyZWRdPVwib3B0aW9ucz8ucmVxdWlyZWRcIlxuICAgIFtyZWFkb25seV09XCJvcHRpb25zPy5yZWFkb25seSA/IHRydWUgOiBmYWxzZVwiXG4gICAgW2Rpc2FibGVkXT1cImNvbnRyb2xEaXNhYmxlZFwiPlxuICAgIDxuZy10ZW1wbGF0ZSBuZy1vcHRpb24tdG1wIGxldC1pdGVtPVwiaXRlbVwiIGxldC1pbmRleD1cImluZGV4XCI+XG4gICAgICA8c3BhbiBbaW5uZXJIVE1MXT1cIml0ZW0ubmFtZVwiPjwvc3Bhbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLXNlbGVjdD5cbjwvc2VhbS1mb3JtLWZpZWxkPlxuIl19
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLWZvcm0tc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9mcmFtZXdvcmsvc2NoZW1hLWZvcm0tY29udHJvbHMvc2NoZW1hLWZvcm0tc2VsZWN0L3NjaGVtYS1mb3JtLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vZnJhbWV3b3JrL3NjaGVtYS1mb3JtLWNvbnRyb2xzL3NjaGVtYS1mb3JtLXNlbGVjdC9zY2hlbWEtZm9ybS1zZWxlY3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUE7QUFDakYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQzlDLE9BQU8sRUFBbUIsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUVyRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxvQkFBb0IsRUFBeUIsTUFBTSxZQUFZLENBQUE7QUFFaEcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFBOzs7Ozs7O0FBZ0JyRCxNQUFNLE9BQU8sZ0NBQWdDO0lBZ0IzQyxZQUNtQixJQUEyQjtRQUEzQixTQUFJLEdBQUosSUFBSSxDQUF1QjtRQVo5QyxvQkFBZSxHQUFHLEtBQUssQ0FBQTtRQUN2QixpQkFBWSxHQUFHLEtBQUssQ0FBQTtRQU9wQixlQUFVLEdBQVUsRUFBRSxDQUFBO1FBQ3RCLFlBQU8sR0FBRyxPQUFPLENBQUE7SUFJYixDQUFDO0lBRUwsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxPQUFPLElBQUksRUFBOEMsQ0FBQTtRQUN6RixJQUFJLENBQUMsVUFBVSxHQUFHLGFBQWEsQ0FDN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQy9DLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQ3BFLENBQUE7UUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ25DLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBVTtRQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQzFDLENBQUM7OzZIQWhDVSxnQ0FBZ0M7aUhBQWhDLGdDQUFnQyw2S0N2QjdDLGl6RUEyREEsK0VEM0NJLFlBQVksZ09BQ1osbUJBQW1CLHNoQkFDbkIsb0JBQW9CLDhCQUNwQixzQkFBc0IsNjBCQUN0QixjQUFjOzJGQUdMLGdDQUFnQztrQkFkNUMsU0FBUzsrQkFDRSx5QkFBeUIsbUJBR2xCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixvQkFBb0I7d0JBQ3BCLHNCQUFzQjt3QkFDdEIsY0FBYztxQkFDZjs0R0FXUSxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5cbmltcG9ydCB7IGJ1aWxkVGl0bGVNYXAsIGlzQXJyYXksIEpzb25TY2hlbWFGb3JtTW9kdWxlLCBKc29uU2NoZW1hRm9ybVNlcnZpY2UgfSBmcm9tICdAYWpzZi9jb3JlJ1xuaW1wb3J0IHsgVGhlU2VhbVNjaGVtYUZvcm1Db250cm9sV2lkZ2V0LCBUaGVTZWFtU2NoZW1hRm9ybVdpZGdldExheW91dE5vZGVPcHRpb25zIH0gZnJvbSAnLi4vLi4vc2NoZW1hLWZvcm0nXG5pbXBvcnQgeyBUaGVTZWFtRm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2Zvcm0tZmllbGQnXG5pbXBvcnQgeyBOZ1NlbGVjdE1vZHVsZSB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0J1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLXNjaGVtYS1mb3JtLXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zY2hlbWEtZm9ybS1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zY2hlbWEtZm9ybS1zZWxlY3QuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBKc29uU2NoZW1hRm9ybU1vZHVsZSxcbiAgICBUaGVTZWFtRm9ybUZpZWxkTW9kdWxlLFxuICAgIE5nU2VsZWN0TW9kdWxlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUaGVTZWFtU2NoZW1hRm9ybVNlbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgVGhlU2VhbVNjaGVtYUZvcm1Db250cm9sV2lkZ2V0IHtcblxuICBmb3JtQ29udHJvbD86IEFic3RyYWN0Q29udHJvbFxuICBjb250cm9sTmFtZT86IHN0cmluZ1xuICBjb250cm9sVmFsdWU/OiBhbnlcbiAgY29udHJvbERpc2FibGVkID0gZmFsc2VcbiAgYm91bmRDb250cm9sID0gZmFsc2VcbiAgb3B0aW9ucz86IFRoZVNlYW1TY2hlbWFGb3JtV2lkZ2V0TGF5b3V0Tm9kZU9wdGlvbnNcblxuICBASW5wdXQoKSBsYXlvdXROb2RlOiBUaGVTZWFtU2NoZW1hRm9ybUNvbnRyb2xXaWRnZXRbJ2xheW91dE5vZGUnXVxuICBASW5wdXQoKSBsYXlvdXRJbmRleDogVGhlU2VhbVNjaGVtYUZvcm1Db250cm9sV2lkZ2V0WydsYXlvdXRJbmRleCddXG4gIEBJbnB1dCgpIGRhdGFJbmRleDogVGhlU2VhbVNjaGVtYUZvcm1Db250cm9sV2lkZ2V0WydkYXRhSW5kZXgnXVxuXG4gIHNlbGVjdExpc3Q6IGFueVtdID0gW11cbiAgaXNBcnJheSA9IGlzQXJyYXlcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9qc2Y6IEpzb25TY2hlbWFGb3JtU2VydmljZVxuICApIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMub3B0aW9ucyA9IHRoaXMubGF5b3V0Tm9kZT8ub3B0aW9ucyB8fCB7fSBhcyBUaGVTZWFtU2NoZW1hRm9ybVdpZGdldExheW91dE5vZGVPcHRpb25zXG4gICAgdGhpcy5zZWxlY3RMaXN0ID0gYnVpbGRUaXRsZU1hcChcbiAgICAgIHRoaXMub3B0aW9ucy50aXRsZU1hcCB8fCB0aGlzLm9wdGlvbnMuZW51bU5hbWVzLFxuICAgICAgdGhpcy5vcHRpb25zLmVudW0sICEhdGhpcy5vcHRpb25zLnJlcXVpcmVkLCAhIXRoaXMub3B0aW9ucy5mbGF0TGlzdFxuICAgIClcblxuICAgIHRoaXMuX2pzZi5pbml0aWFsaXplQ29udHJvbCh0aGlzKVxuICB9XG5cbiAgdXBkYXRlVmFsdWUoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuX2pzZi51cGRhdGVWYWx1ZSh0aGlzLCBldmVudC52YWx1ZSlcbiAgfVxuXG59XG4iLCI8ZGl2IFtjbGFzc109XCJvcHRpb25zPy5odG1sQ2xhc3MgfHwgJydcIj5cbiAgPHNlYW0tZm9ybS1maWVsZCAqbmdJZj1cImJvdW5kQ29udHJvbFwiPlxuICAgIDxuZy10ZW1wbGF0ZSBzZWFtRm9ybUZpZWxkTGFiZWxUcGwgbGV0LXJlcXVpcmVkPVwicmVxdWlyZWRcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhb3B0aW9ucz8ubm90aXRsZVwiPlxuICAgICAgICB7eyBvcHRpb25zPy50aXRsZSB9fTxzZWFtLWZvcm0tZmllbGQtcmVxdWlyZWQtaW5kaWNhdG9yIGNsYXNzPVwicGwtMVwiPjwvc2VhbS1mb3JtLWZpZWxkLXJlcXVpcmVkLWluZGljYXRvcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXNlbGVjdCBzZWFtSW5wdXRcbiAgICAgIFtmb3JtQ29udHJvbF09XCIkYW55KGZvcm1Db250cm9sKVwiXG4gICAgICBbbmdDbGFzc109XCJvcHRpb25zPy5maWVsZEh0bWxDbGFzc1wiXG4gICAgICBbaWRdPVwiJ2NvbnRyb2wnICsgbGF5b3V0Tm9kZT8uX2lkXCJcbiAgICAgIFtyZXF1aXJlZF09XCJvcHRpb25zPy5yZXF1aXJlZFwiXG4gICAgICBbaXRlbXNdPVwic2VsZWN0TGlzdFwiXG4gICAgICBiaW5kTGFiZWw9XCJuYW1lXCJcbiAgICAgIGJpbmRWYWx1ZT1cInZhbHVlXCJcbiAgICAgIFtjbGVhcmFibGVdPVwiZmFsc2VcIlxuICAgICAgYXBwZW5kVG89XCJib2R5XCJcblxuICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCInY29udHJvbCcgKyBsYXlvdXROb2RlPy5faWQgKyAnU3RhdHVzJ1wiXG4gICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJvcHRpb25zPy5wbGFjZWhvbGRlclwiXG4gICAgICBbYXR0ci5yZXF1aXJlZF09XCJvcHRpb25zPy5yZXF1aXJlZFwiXG4gICAgICBbcmVhZG9ubHldPVwib3B0aW9ucz8ucmVhZG9ubHkgPyB0cnVlIDogZmFsc2VcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSBuZy1sYWJlbC10bXAgbGV0LWl0ZW09XCJpdGVtXCI+XG4gICAgICAgIDxzcGFuIFtpbm5lckhUTUxdPVwiaXRlbS5uYW1lXCI+PC9zcGFuPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxuZy10ZW1wbGF0ZSBuZy1vcHRpb24tdG1wIGxldC1pdGVtPVwiaXRlbVwiIGxldC1pbmRleD1cImluZGV4XCI+XG4gICAgICAgIDxzcGFuIFtpbm5lckhUTUxdPVwiaXRlbS5uYW1lXCI+PC9zcGFuPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLXNlbGVjdD5cbiAgPC9zZWFtLWZvcm0tZmllbGQ+XG5cbiAgPHNlYW0tZm9ybS1maWVsZCAqbmdJZj1cIiFib3VuZENvbnRyb2xcIj5cbiAgICA8bmctdGVtcGxhdGUgc2VhbUZvcm1GaWVsZExhYmVsVHBsIGxldC1yZXF1aXJlZD1cInJlcXVpcmVkXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIW9wdGlvbnM/Lm5vdGl0bGVcIj5cbiAgICAgICAge3sgb3B0aW9ucz8udGl0bGUgfX08c2VhbS1mb3JtLWZpZWxkLXJlcXVpcmVkLWluZGljYXRvciBjbGFzcz1cInBsLTFcIj48L3NlYW0tZm9ybS1maWVsZC1yZXF1aXJlZC1pbmRpY2F0b3I+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy1zZWxlY3Qgc2VhbUlucHV0XG4gICAgICBbbmdDbGFzc109XCJvcHRpb25zPy5maWVsZEh0bWxDbGFzc1wiXG4gICAgICBbaWRdPVwiJ2NvbnRyb2wnICsgbGF5b3V0Tm9kZT8uX2lkXCJcbiAgICAgIFtyZXF1aXJlZF09XCJvcHRpb25zPy5yZXF1aXJlZFwiXG4gICAgICBbaXRlbXNdPVwic2VsZWN0TGlzdFwiXG4gICAgICBiaW5kTGFiZWw9XCJuYW1lXCJcbiAgICAgIGJpbmRWYWx1ZT1cInZhbHVlXCJcbiAgICAgIFtjbGVhcmFibGVdPVwiZmFsc2VcIlxuICAgICAgKGNoYW5nZSk9XCJ1cGRhdGVWYWx1ZSgkZXZlbnQpXCJcbiAgICAgIGFwcGVuZFRvPVwiYm9keVwiXG5cbiAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiJ2NvbnRyb2wnICsgbGF5b3V0Tm9kZT8uX2lkICsgJ1N0YXR1cydcIlxuICAgICAgW2F0dHIucGxhY2Vob2xkZXJdPVwib3B0aW9ucz8ucGxhY2Vob2xkZXJcIlxuICAgICAgW2F0dHIucmVxdWlyZWRdPVwib3B0aW9ucz8ucmVxdWlyZWRcIlxuICAgICAgW3JlYWRvbmx5XT1cIm9wdGlvbnM/LnJlYWRvbmx5ID8gdHJ1ZSA6IGZhbHNlXCJcbiAgICAgIFtkaXNhYmxlZF09XCJjb250cm9sRGlzYWJsZWRcIj5cbiAgICAgIDxuZy10ZW1wbGF0ZSBuZy1vcHRpb24tdG1wIGxldC1pdGVtPVwiaXRlbVwiIGxldC1pbmRleD1cImluZGV4XCI+XG4gICAgICAgIDxzcGFuIFtpbm5lckhUTUxdPVwiaXRlbS5uYW1lXCI+PC9zcGFuPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLXNlbGVjdD5cbiAgPC9zZWFtLWZvcm0tZmllbGQ+XG48L2Rpdj5cbiJdfQ==
@@ -58,6 +58,7 @@ export class ToggleGroupDirective {
58
58
  .pipe(tap(opt => { this._updateDirectiveState(opt); }))))
59
59
  .subscribe();
60
60
  });
61
+ this.optionDirectives?.changes.subscribe(() => this._updateDirectiveStates());
61
62
  }
62
63
  get value() {
63
64
  return this.val;
@@ -195,4 +196,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
195
196
  type: ContentChildren,
196
197
  args: [ToggleGroupOptionDirective]
197
198
  }] } });
198
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLWdyb3VwLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90b2dnbGUtZ3JvdXAvdG9nZ2xlLWdyb3VwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFnQixXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNqRSxPQUFPLEVBQWlCLGVBQWUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFhLE1BQU0sZUFBZSxDQUFBO0FBQ3hJLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ25FLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRWxGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUV0RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTs7QUFFNUUsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQVE7SUFDOUMsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG9CQUFvQixDQUFDO0lBQ25ELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQTtBQU9ELE1BQU0sT0FBTyxvQkFBb0I7SUFMakM7UUFVbUIsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFBO1FBSzVCLGFBQVEsR0FBRyxLQUFLLENBQUE7UUFDaEIsYUFBUSxHQUFHLEtBQUssQ0FBQTtRQUNoQix3QkFBbUIsR0FBRyxJQUFJLENBQUE7UUFFbkQsNkVB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RjtJQUNILENBQUM7O2lIQWhMVSxvQkFBb0I7cUdBQXBCLG9CQUFvQixzTUFGcEIsQ0FBRSwyQkFBMkIsQ0FBRSwyREFxQnpCLDBCQUEwQjtBQVRsQjtJQUFmLFlBQVksRUFBRTtzREFBaUI7QUFDaEI7SUFBZixZQUFZLEVBQUU7c0RBQWlCO0FBQ2hCO0lBQWYsWUFBWSxFQUFFO2lFQUEyQjsyRkFaeEMsb0JBQW9CO2tCQUxoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFNBQVMsRUFBRSxDQUFFLDJCQUEyQixDQUFFO2lCQUMzQzs4QkFTaUIsR0FBRztzQkFBbEIsS0FBSzt1QkFBQyxPQUFPO2dCQUVXLFFBQVE7c0JBQWhDLEtBQUs7Z0JBQ21CLFFBQVE7c0JBQWhDLEtBQUs7Z0JBQ21CLG1CQUFtQjtzQkFBM0MsS0FBSztnQkFLYSxNQUFNO3NCQUF4QixNQUFNO2dCQUVzQyxnQkFBZ0I7c0JBQTVELGVBQWU7dUJBQUMsMEJBQTBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQm9vbGVhbklucHV0LCBjb2VyY2VBcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbidcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbnRlbnRDaGlsZHJlbiwgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIE91dHB1dCwgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgZnJvbSwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyBJbnB1dEJvb2xlYW4gfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vY29yZSdcblxuaW1wb3J0IHsgVG9nZ2xlR3JvdXBPcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuL3RvZ2dsZS1ncm91cC1vcHRpb24uZGlyZWN0aXZlJ1xuXG5leHBvcnQgY29uc3QgVE9HR0xFX0dST1VQX1ZBTFVFX0FDQ0VTU09SOiBhbnkgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUb2dnbGVHcm91cERpcmVjdGl2ZSksXG4gIG11bHRpOiB0cnVlLFxufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbc2VhbVRvZ2dsZUdyb3VwXScsXG4gIGV4cG9ydEFzOiAnc2VhbVRvZ2dsZUdyb3VwJyxcbiAgcHJvdmlkZXJzOiBbIFRPR0dMRV9HUk9VUF9WQUxVRV9BQ0NFU1NPUiBdXG59KVxuZXhwb3J0IGNsYXNzIFRvZ2dsZUdyb3VwRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95LCBBZnRlclZpZXdJbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9kaXNhYmxlZDogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9tdWx0aXBsZTogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9zZWxlY3Rpb25Ub2dnbGVhYmxlOiBCb29sZWFuSW5wdXRcblxuICBwcml2YXRlIHJlYWRvbmx5IF9uZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3Q8dm9pZD4oKVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taW5wdXQtcmVuYW1lXG4gIEBJbnB1dCgndmFsdWUnKSB2YWw6IHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkIHwgbnVsbFxuXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBkaXNhYmxlZCA9IGZhbHNlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBtdWx0aXBsZSA9IGZhbHNlXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBzZWxlY3Rpb25Ub2dnbGVhYmxlID0gdHJ1ZVxuXG4gIC8vIFRPRE86IEFkZCBtaW4vbWF4IHNlbGVjdGVkIGlucHV0cyB0byBtYWtlIHRvZ2dsaW5nIGJldHRlciBmb3IgbXVsdGkgc2VsZWN0XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtbmF0aXZlXG4gIEBPdXRwdXQoKSByZWFkb25seSBjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkIHwgbnVsbD4oKVxuXG4gIEBDb250ZW50Q2hpbGRyZW4oVG9nZ2xlR3JvdXBPcHRpb25EaXJlY3RpdmUpIG9wdGlvbkRpcmVjdGl2ZXM/OiBRdWVyeUxpc3Q8VG9nZ2xlR3JvdXBPcHRpb25EaXJlY3RpdmU+XG5cbiAgcHVibGljIG9wdGlvbnM/OiBPYnNlcnZhYmxlPFRvZ2dsZUdyb3VwT3B0aW9uRGlyZWN0aXZlW10+XG5cbiAgb25DaGFuZ2U6IGFueVxuICBvblRvdWNoZWQ6IGFueVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX25nVW5zdWJzY3JpYmUubmV4dCgpXG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpXG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLl91cGRhdGVEaXJlY3RpdmVTdGF0ZXMoKVxuXG4gICAgICBpZiAodGhpcy5vcHRpb25EaXJlY3RpdmVzKSB7XG4gICAgICAgIHRoaXMub3B0aW9ucyA9IHRoaXMub3B0aW9uRGlyZWN0aXZlcy5jaGFuZ2VzXG4gICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAgIC5waXBlKHN0YXJ0V2l0aCh0aGlzLm9wdGlvbkRpcmVjdGl2ZXMpKVxuICAgICAgICAgIC5waXBlKG1hcCh2ID0+IHYudG9BcnJheSgpIGFzIFRvZ2dsZUdyb3VwT3B0aW9uRGlyZWN0aXZlW10pKVxuXG4gICAgICAgIHRoaXMub3B0aW9ucy5waXBlKHN3aXRjaE1hcChvcHRzID0+IHtcbiAgICAgICAgICBjb25zdCBfdG1wID0gb2YodW5kZWZpbmVkKVxuICAgICAgICAgIGlmIChvcHRzKSB7XG4gICAgICAgICAgICBjb25zdCBfdjogT2JzZXJ2YWJsZTxib29sZWFuPltdID0gW11cbiAgICAgICAgICAgIGZvciAoY29uc3Qgb3B0IG9mIG9wdHMpIHtcbiAgICAgICAgICAgICAgX3YucHVzaChvcHQuc2VsZWN0aW9uQ2hhbmdlLnBpcGUoXG4gICAgICAgICAgICAgICAgZmlsdGVyKHYgPT4gb3B0LnNlbGVjdGVkICE9PSB0aGlzLmlzU2VsZWN0ZWQob3B0LnZhbHVlKSksXG4gICAgICAgICAgICAgICAgdGFwKHYgPT4ge1xuICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaXNTZWxlY3RlZChvcHQudmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudW5zZWxlY3RWYWx1ZShvcHQudmFsdWUpXG4gICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdFZhbHVlKG9wdC52YWx1ZSlcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICApKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGNvbWJpbmVMYXRlc3QoX3YpXG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiBfdG1wXG4gICAgICAgIH0pKS5zdWJzY3JpYmUoKVxuICAgICAgfVxuXG4gICAgICB0aGlzLmNoYW5nZVxuICAgICAgICAucGlwZShzd2l0Y2hNYXAoXyA9PiBmcm9tKHRoaXMub3B0aW9uRGlyZWN0aXZlcz8udG9BcnJheSgpIHx8IFtdKVxuICAgICAgICAgIC5waXBlKHRhcChvcHQgPT4geyB0aGlzLl91cGRhdGVEaXJlY3RpdmVTdGF0ZShvcHQpIH0pKVxuICAgICAgICApKVxuICAgICAgICAuc3Vic2NyaWJlKClcbiAgICB9KVxuICB9XG5cbiAgZ2V0IHZhbHVlKCk6IHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMudmFsXG4gIH1cblxuICBzZXQgdmFsdWUodmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkIHwgbnVsbCkge1xuICAgIGNvbnN0IF92YWx1ZSA9IHRoaXMubXVsdGlwbGVcbiAgICAgID8gdmFsdWUgIT09IG51bGwgJiYgdmFsdWUgIT09IHVuZGVmaW5lZFxuICAgICAgICA/IGNvZXJjZUFycmF5KHZhbHVlKVxuICAgICAgICA6IHZhbHVlXG4gICAgICA6IHZhbHVlXG5cbiAgICB0aGlzLnZhbCA9ICh0aGlzLm11bHRpcGxlKSA/IFsgLi4uKF92YWx1ZSBhcyBzdHJpbmdbXSB8fCBbXSkgXSA6IF92YWx1ZSB8fCAnJ1xuICAgIHRoaXMuY2hhbmdlLmVtaXQodGhpcy52YWwpXG4gICAgaWYgKHRoaXMub25DaGFuZ2UpIHsgdGhpcy5vbkNoYW5nZShfdmFsdWUpIH1cbiAgICBpZiAodGhpcy5vblRvdWNoZWQpIHsgdGhpcy5vblRvdWNoZWQoKSB9XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWVcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmblxuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm5cbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkXG4gIH1cblxuICBpc1NlbGVjdGVkKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsKSB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIGNvbnN0IGlkeCA9ICh0aGlzLnZhbHVlIGFzIHN0cmluZ1tdIHx8IFtdKS5maW5kSW5kZXgodiA9PiB2ID09PSB2YWx1ZSlcbiAgICAgIHJldHVybiBpZHggIT09IC0xXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFRPRE86IENsZWFuIHRoaXMgdXAgd2hlbiB0aGUgZGlyZWN0aXZlIG5vIGxvbmdlciBhbGxvd3MgYXJyYXkgdmFsdWUgdHlwZSB3aGVuIG11bHRpcGxlIGlzIGZhbHNlXG4gICAgICBjb25zdCB2ID0gQXJyYXkuaXNBcnJheSh0aGlzLnZhbHVlKSAmJiB0aGlzLnZhbHVlLmxlbmd0aCA9PT0gMVxuICAgICAgICA/IHRoaXMudmFsdWVbMF1cbiAgICAgICAgOiB0aGlzLnZhbHVlXG4gICAgICByZXR1cm4gdiA9PT0gdmFsdWVcbiAgICB9XG4gIH1cblxuICB1bnNlbGVjdFZhbHVlKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsKSB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIHRoaXMudmFsdWUgPSAodGhpcy52YWx1ZSBhcyBzdHJpbmdbXSB8fCBbXSkuZmlsdGVyKHYgPT4gdiAhPT0gdmFsdWUpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsdWUgPSB1bmRlZmluZWRcbiAgICB9XG4gIH1cblxuICBzZWxlY3RWYWx1ZSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCkge1xuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICBjb25zdCBfdmFsdWUgPSBbIC4uLih0aGlzLnZhbHVlIGFzIHN0cmluZ1tdIHx8IFtdKSBdXG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWUgPyBbIC4uLl92YWx1ZSwgdmFsdWUgXSA6IF92YWx1ZVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWVcbiAgICB9XG4gIH1cblxuICBnZXRPcHRpb25EaXJlY3RpdmVCeVZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICBpZiAoIXRoaXMub3B0aW9uRGlyZWN0aXZlcyB8fCB0aGlzLm9wdGlvbkRpcmVjdGl2ZXMubGVuZ3RoIDwgMSkge1xuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5vcHRpb25EaXJlY3RpdmVzLnRvQXJyYXkoKVxuICAgICAgLmZpbmQob3B0ID0+IG9wdC52YWx1ZSA9PT0gdmFsdWUpXG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVEaXJlY3RpdmVTdGF0ZXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMub3B0aW9uRGlyZWN0aXZlcykge1xuICAgICAgZm9yIChjb25zdCBvcHQgb2YgdGhpcy5vcHRpb25EaXJlY3RpdmVzLnRvQXJyYXkoKSkge1xuICAgICAgICB0aGlzLl91cGRhdGVEaXJlY3RpdmVTdGF0ZShvcHQpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlRGlyZWN0aXZlU3RhdGUob3B0OiBUb2dnbGVHcm91cE9wdGlvbkRpcmVjdGl2ZSk6IHZvaWQge1xuICAgIGNvbnN0IHNlbGVjdGVkID0gdGhpcy5pc1NlbGVjdGVkKG9wdC52YWx1ZSlcbiAgICBpZiAob3B0LnNlbGVjdGVkICE9PSBzZWxlY3RlZCkge1xuICAgICAgaWYgKCFvcHQuX2NhblVuc2VsZWN0KSB7XG4gICAgICAgIG9wdC5fY2FuVW5zZWxlY3QgPSB0cnVlXG4gICAgICB9XG4gICAgICBvcHQuc2VsZWN0ZWQgPSBzZWxlY3RlZFxuICAgIH1cbiAgICBpZiAoIXRoaXMuc2VsZWN0aW9uVG9nZ2xlYWJsZSkge1xuICAgICAgaWYgKCF0aGlzLm11bHRpcGxlIHx8ICh0aGlzLnZhbHVlICYmIHRoaXMudmFsdWUubGVuZ3RoIDw9IDEpKSB7XG4gICAgICAgIGlmIChvcHQuc2VsZWN0ZWQpIHtcbiAgICAgICAgICBpZiAob3B0Ll9jYW5VbnNlbGVjdCkge1xuICAgICAgICAgICAgb3B0Ll9jYW5VbnNlbGVjdCA9IGZhbHNlXG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmICghb3B0Ll9jYW5VbnNlbGVjdCkge1xuICAgICAgICAgICAgb3B0Ll9jYW5VbnNlbGVjdCA9IHRydWVcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICghb3B0Ll9jYW5VbnNlbGVjdCkge1xuICAgICAgICAgIG9wdC5fY2FuVW5zZWxlY3QgPSB0cnVlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuIl19
199
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLWdyb3VwLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi90b2dnbGUtZ3JvdXAvdG9nZ2xlLWdyb3VwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFnQixXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUNqRSxPQUFPLEVBQWlCLGVBQWUsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQWEsTUFBTSxFQUFhLE1BQU0sZUFBZSxDQUFBO0FBQ3hJLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUN4RSxPQUFPLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ25FLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRWxGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUV0RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQTs7QUFFNUUsTUFBTSxDQUFDLE1BQU0sMkJBQTJCLEdBQVE7SUFDOUMsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG9CQUFvQixDQUFDO0lBQ25ELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQTtBQU9ELE1BQU0sT0FBTyxvQkFBb0I7SUFMakM7UUFVbUIsbUJBQWMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFBO1FBSzVCLGFBQVEsR0FBRyxLQUFLLENBQUE7UUFDaEIsYUFBUSxHQUFHLEtBQUssQ0FBQTtRQUNoQix3QkFBbUIsR0FBRyxJQUFJLENBQUE7UUFFbkQsNkVB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O2lCQUFNO2dCQUNMLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFO29CQUNyQixHQUFHLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQTtpQkFDeEI7YUFDRjtTQUNGO0lBQ0gsQ0FBQzs7aUhBbExVLG9CQUFvQjtxR0FBcEIsb0JBQW9CLHNNQUZwQixDQUFFLDJCQUEyQixDQUFFLDJEQXFCekIsMEJBQTBCO0FBVGxCO0lBQWYsWUFBWSxFQUFFO3NEQUFpQjtBQUNoQjtJQUFmLFlBQVksRUFBRTtzREFBaUI7QUFDaEI7SUFBZixZQUFZLEVBQUU7aUVBQTJCOzJGQVp4QyxvQkFBb0I7a0JBTGhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsU0FBUyxFQUFFLENBQUUsMkJBQTJCLENBQUU7aUJBQzNDOzhCQVNpQixHQUFHO3NCQUFsQixLQUFLO3VCQUFDLE9BQU87Z0JBRVcsUUFBUTtzQkFBaEMsS0FBSztnQkFDbUIsUUFBUTtzQkFBaEMsS0FBSztnQkFDbUIsbUJBQW1CO3NCQUEzQyxLQUFLO2dCQUthLE1BQU07c0JBQXhCLE1BQU07Z0JBRXNDLGdCQUFnQjtzQkFBNUQsZUFBZTt1QkFBQywwQkFBMEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUFycmF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJ1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29udGVudENoaWxkcmVuLCBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uRGVzdHJveSwgT3V0cHV0LCBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBmcm9tLCBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgc3RhcnRXaXRoLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IElucHV0Qm9vbGVhbiB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9jb3JlJ1xuXG5pbXBvcnQgeyBUb2dnbGVHcm91cE9wdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4vdG9nZ2xlLWdyb3VwLW9wdGlvbi5kaXJlY3RpdmUnXG5cbmV4cG9ydCBjb25zdCBUT0dHTEVfR1JPVVBfVkFMVUVfQUNDRVNTT1I6IGFueSA9IHtcbiAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFRvZ2dsZUdyb3VwRGlyZWN0aXZlKSxcbiAgbXVsdGk6IHRydWUsXG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tzZWFtVG9nZ2xlR3JvdXBdJyxcbiAgZXhwb3J0QXM6ICdzZWFtVG9nZ2xlR3JvdXAnLFxuICBwcm92aWRlcnM6IFsgVE9HR0xFX0dST1VQX1ZBTFVFX0FDQ0VTU09SIF1cbn0pXG5leHBvcnQgY2xhc3MgVG9nZ2xlR3JvdXBEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX2Rpc2FibGVkOiBCb29sZWFuSW5wdXRcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX211bHRpcGxlOiBCb29sZWFuSW5wdXRcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3NlbGVjdGlvblRvZ2dsZWFibGU6IEJvb2xlYW5JbnB1dFxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX25nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpXG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCd2YWx1ZScpIHZhbDogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQgfCBudWxsXG5cbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIGRpc2FibGVkID0gZmFsc2VcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIG11bHRpcGxlID0gZmFsc2VcbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHNlbGVjdGlvblRvZ2dsZWFibGUgPSB0cnVlXG5cbiAgLy8gVE9ETzogQWRkIG1pbi9tYXggc2VsZWN0ZWQgaW5wdXRzIHRvIG1ha2UgdG9nZ2xpbmcgYmV0dGVyIGZvciBtdWx0aSBzZWxlY3RcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcbiAgQE91dHB1dCgpIHJlYWRvbmx5IGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQgfCBudWxsPigpXG5cbiAgQENvbnRlbnRDaGlsZHJlbihUb2dnbGVHcm91cE9wdGlvbkRpcmVjdGl2ZSkgb3B0aW9uRGlyZWN0aXZlcz86IFF1ZXJ5TGlzdDxUb2dnbGVHcm91cE9wdGlvbkRpcmVjdGl2ZT5cblxuICBwdWJsaWMgb3B0aW9ucz86IE9ic2VydmFibGU8VG9nZ2xlR3JvdXBPcHRpb25EaXJlY3RpdmVbXT5cblxuICBvbkNoYW5nZTogYW55XG4gIG9uVG91Y2hlZDogYW55XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5uZXh0KClcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKClcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuX3VwZGF0ZURpcmVjdGl2ZVN0YXRlcygpXG5cbiAgICAgIGlmICh0aGlzLm9wdGlvbkRpcmVjdGl2ZXMpIHtcbiAgICAgICAgdGhpcy5vcHRpb25zID0gdGhpcy5vcHRpb25EaXJlY3RpdmVzLmNoYW5nZXNcbiAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAgICAgLnBpcGUoc3RhcnRXaXRoKHRoaXMub3B0aW9uRGlyZWN0aXZlcykpXG4gICAgICAgICAgLnBpcGUobWFwKHYgPT4gdi50b0FycmF5KCkgYXMgVG9nZ2xlR3JvdXBPcHRpb25EaXJlY3RpdmVbXSkpXG5cbiAgICAgICAgdGhpcy5vcHRpb25zLnBpcGUoc3dpdGNoTWFwKG9wdHMgPT4ge1xuICAgICAgICAgIGNvbnN0IF90bXAgPSBvZih1bmRlZmluZWQpXG4gICAgICAgICAgaWYgKG9wdHMpIHtcbiAgICAgICAgICAgIGNvbnN0IF92OiBPYnNlcnZhYmxlPGJvb2xlYW4+W10gPSBbXVxuICAgICAgICAgICAgZm9yIChjb25zdCBvcHQgb2Ygb3B0cykge1xuICAgICAgICAgICAgICBfdi5wdXNoKG9wdC5zZWxlY3Rpb25DaGFuZ2UucGlwZShcbiAgICAgICAgICAgICAgICBmaWx0ZXIodiA9PiBvcHQuc2VsZWN0ZWQgIT09IHRoaXMuaXNTZWxlY3RlZChvcHQudmFsdWUpKSxcbiAgICAgICAgICAgICAgICB0YXAodiA9PiB7XG4gICAgICAgICAgICAgICAgICBpZiAodGhpcy5pc1NlbGVjdGVkKG9wdC52YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy51bnNlbGVjdFZhbHVlKG9wdC52YWx1ZSlcbiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0VmFsdWUob3B0LnZhbHVlKVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICkpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gY29tYmluZUxhdGVzdChfdilcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIF90bXBcbiAgICAgICAgfSkpLnN1YnNjcmliZSgpXG4gICAgICB9XG5cbiAgICAgIHRoaXMuY2hhbmdlXG4gICAgICAgIC5waXBlKHN3aXRjaE1hcChfID0+IGZyb20odGhpcy5vcHRpb25EaXJlY3RpdmVzPy50b0FycmF5KCkgfHwgW10pXG4gICAgICAgICAgLnBpcGUodGFwKG9wdCA9PiB7IHRoaXMuX3VwZGF0ZURpcmVjdGl2ZVN0YXRlKG9wdCkgfSkpXG4gICAgICAgICkpXG4gICAgICAgIC5zdWJzY3JpYmUoKVxuICAgIH0pXG5cbiAgICB0aGlzLm9wdGlvbkRpcmVjdGl2ZXM/LmNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHRoaXMuX3VwZGF0ZURpcmVjdGl2ZVN0YXRlcygpKVxuICB9XG5cbiAgZ2V0IHZhbHVlKCk6IHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMudmFsXG4gIH1cblxuICBzZXQgdmFsdWUodmFsdWU6IHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkIHwgbnVsbCkge1xuICAgIGNvbnN0IF92YWx1ZSA9IHRoaXMubXVsdGlwbGVcbiAgICAgID8gdmFsdWUgIT09IG51bGwgJiYgdmFsdWUgIT09IHVuZGVmaW5lZFxuICAgICAgICA/IGNvZXJjZUFycmF5KHZhbHVlKVxuICAgICAgICA6IHZhbHVlXG4gICAgICA6IHZhbHVlXG5cbiAgICB0aGlzLnZhbCA9ICh0aGlzLm11bHRpcGxlKSA/IFsgLi4uKF92YWx1ZSBhcyBzdHJpbmdbXSB8fCBbXSkgXSA6IF92YWx1ZSB8fCAnJ1xuICAgIHRoaXMuY2hhbmdlLmVtaXQodGhpcy52YWwpXG4gICAgaWYgKHRoaXMub25DaGFuZ2UpIHsgdGhpcy5vbkNoYW5nZShfdmFsdWUpIH1cbiAgICBpZiAodGhpcy5vblRvdWNoZWQpIHsgdGhpcy5vblRvdWNoZWQoKSB9XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsdWVcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmblxuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkID0gZm5cbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkXG4gIH1cblxuICBpc1NlbGVjdGVkKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsKSB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIGNvbnN0IGlkeCA9ICh0aGlzLnZhbHVlIGFzIHN0cmluZ1tdIHx8IFtdKS5maW5kSW5kZXgodiA9PiB2ID09PSB2YWx1ZSlcbiAgICAgIHJldHVybiBpZHggIT09IC0xXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFRPRE86IENsZWFuIHRoaXMgdXAgd2hlbiB0aGUgZGlyZWN0aXZlIG5vIGxvbmdlciBhbGxvd3MgYXJyYXkgdmFsdWUgdHlwZSB3aGVuIG11bHRpcGxlIGlzIGZhbHNlXG4gICAgICBjb25zdCB2ID0gQXJyYXkuaXNBcnJheSh0aGlzLnZhbHVlKSAmJiB0aGlzLnZhbHVlLmxlbmd0aCA9PT0gMVxuICAgICAgICA/IHRoaXMudmFsdWVbMF1cbiAgICAgICAgOiB0aGlzLnZhbHVlXG4gICAgICByZXR1cm4gdiA9PT0gdmFsdWVcbiAgICB9XG4gIH1cblxuICB1bnNlbGVjdFZhbHVlKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsKSB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIHRoaXMudmFsdWUgPSAodGhpcy52YWx1ZSBhcyBzdHJpbmdbXSB8fCBbXSkuZmlsdGVyKHYgPT4gdiAhPT0gdmFsdWUpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsdWUgPSB1bmRlZmluZWRcbiAgICB9XG4gIH1cblxuICBzZWxlY3RWYWx1ZSh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCkge1xuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICBjb25zdCBfdmFsdWUgPSBbIC4uLih0aGlzLnZhbHVlIGFzIHN0cmluZ1tdIHx8IFtdKSBdXG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWUgPyBbIC4uLl92YWx1ZSwgdmFsdWUgXSA6IF92YWx1ZVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWVcbiAgICB9XG4gIH1cblxuICBnZXRPcHRpb25EaXJlY3RpdmVCeVZhbHVlKHZhbHVlOiBzdHJpbmcpIHtcbiAgICBpZiAoIXRoaXMub3B0aW9uRGlyZWN0aXZlcyB8fCB0aGlzLm9wdGlvbkRpcmVjdGl2ZXMubGVuZ3RoIDwgMSkge1xuICAgICAgcmV0dXJuIG51bGxcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5vcHRpb25EaXJlY3RpdmVzLnRvQXJyYXkoKVxuICAgICAgLmZpbmQob3B0ID0+IG9wdC52YWx1ZSA9PT0gdmFsdWUpXG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVEaXJlY3RpdmVTdGF0ZXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMub3B0aW9uRGlyZWN0aXZlcykge1xuICAgICAgZm9yIChjb25zdCBvcHQgb2YgdGhpcy5vcHRpb25EaXJlY3RpdmVzLnRvQXJyYXkoKSkge1xuICAgICAgICB0aGlzLl91cGRhdGVEaXJlY3RpdmVTdGF0ZShvcHQpXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfdXBkYXRlRGlyZWN0aXZlU3RhdGUob3B0OiBUb2dnbGVHcm91cE9wdGlvbkRpcmVjdGl2ZSk6IHZvaWQge1xuICAgIGNvbnN0IHNlbGVjdGVkID0gdGhpcy5pc1NlbGVjdGVkKG9wdC52YWx1ZSlcbiAgICBpZiAob3B0LnNlbGVjdGVkICE9PSBzZWxlY3RlZCkge1xuICAgICAgaWYgKCFvcHQuX2NhblVuc2VsZWN0KSB7XG4gICAgICAgIG9wdC5fY2FuVW5zZWxlY3QgPSB0cnVlXG4gICAgICB9XG4gICAgICBvcHQuc2VsZWN0ZWQgPSBzZWxlY3RlZFxuICAgIH1cbiAgICBpZiAoIXRoaXMuc2VsZWN0aW9uVG9nZ2xlYWJsZSkge1xuICAgICAgaWYgKCF0aGlzLm11bHRpcGxlIHx8ICh0aGlzLnZhbHVlICYmIHRoaXMudmFsdWUubGVuZ3RoIDw9IDEpKSB7XG4gICAgICAgIGlmIChvcHQuc2VsZWN0ZWQpIHtcbiAgICAgICAgICBpZiAob3B0Ll9jYW5VbnNlbGVjdCkge1xuICAgICAgICAgICAgb3B0Ll9jYW5VbnNlbGVjdCA9IGZhbHNlXG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmICghb3B0Ll9jYW5VbnNlbGVjdCkge1xuICAgICAgICAgICAgb3B0Ll9jYW5VbnNlbGVjdCA9IHRydWVcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICghb3B0Ll9jYW5VbnNlbGVjdCkge1xuICAgICAgICAgIG9wdC5fY2FuVW5zZWxlY3QgPSB0cnVlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuIl19
@@ -2633,7 +2633,7 @@ class TheSeamSchemaFormInputComponent {
2633
2633
  }
2634
2634
  }
2635
2635
  TheSeamSchemaFormInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamSchemaFormInputComponent, deps: [{ token: i1$3.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
2636
- TheSeamSchemaFormInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamSchemaFormInputComponent, isStandalone: true, selector: "seam-schema-form-input", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\"\n [disabled]=\"controlDisabled\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3$3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3$3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3$3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3$3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: JsonSchemaFormModule }, { kind: "ngmodule", type: TheSeamFormFieldModule }, { kind: "component", type: i4$3.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4$3.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4$3.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4$3.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2636
+ TheSeamSchemaFormInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamSchemaFormInputComponent, isStandalone: true, selector: "seam-schema-form-input", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<div [class]=\"options?.htmlClass || ''\">\n <seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n </seam-form-field>\n\n <seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\"\n [disabled]=\"controlDisabled\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n </seam-form-field>\n</div>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3$3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i3$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3$3.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i3$3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3$3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: JsonSchemaFormModule }, { kind: "ngmodule", type: TheSeamFormFieldModule }, { kind: "component", type: i4$3.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4$3.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4$3.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4$3.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2637
2637
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamSchemaFormInputComponent, decorators: [{
2638
2638
  type: Component,
2639
2639
  args: [{ selector: 'seam-schema-form-input', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
@@ -2641,7 +2641,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
2641
2641
  ReactiveFormsModule,
2642
2642
  JsonSchemaFormModule,
2643
2643
  TheSeamFormFieldModule,
2644
- ], template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\"\n [disabled]=\"controlDisabled\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n</seam-form-field>\n", styles: [":host{display:block}\n"] }]
2644
+ ], template: "<div [class]=\"options?.htmlClass || ''\">\n <seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n </seam-form-field>\n\n <seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\" [required]=\"options?.required\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <input seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [name]=\"controlName\"\n [required]=\"options?.required\"\n [value]=\"controlValue\"\n (input)=\"updateValue($event)\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.list]=\"'control' + layoutNode?._id + 'Autocomplete'\"\n [attr.maxlength]=\"options?.maxLength\"\n [attr.minlength]=\"options?.minLength\"\n [attr.pattern]=\"options?.pattern\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? 'readonly' : null\"\n [type]=\"layoutNode?.type\"\n [disabled]=\"controlDisabled\">\n <datalist *ngIf=\"options?.typeahead?.source\"\n [id]=\"'control' + layoutNode?._id + 'Autocomplete'\">\n <option *ngFor=\"let word of options?.typeahead?.source\" [value]=\"word\">\n </datalist>\n </seam-form-field>\n</div>\n", styles: [":host{display:block}\n"] }]
2645
2645
  }], ctorParameters: function () { return [{ type: i1$3.JsonSchemaFormService }]; }, propDecorators: { layoutNode: [{
2646
2646
  type: Input
2647
2647
  }], layoutIndex: [{
@@ -2709,7 +2709,7 @@ class TheSeamSchemaFormSelectComponent {
2709
2709
  }
2710
2710
  }
2711
2711
  TheSeamSchemaFormSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamSchemaFormSelectComponent, deps: [{ token: i1$3.JsonSchemaFormService }], target: i0.ɵɵFactoryTarget.Component });
2712
- TheSeamSchemaFormSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamSchemaFormSelectComponent, isStandalone: true, selector: "seam-schema-form-select", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\">\n <ng-template ng-label-tmp let-item=\"item\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n (change)=\"updateValue($event)\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\"\n [disabled]=\"controlDisabled\">\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: JsonSchemaFormModule }, { kind: "ngmodule", type: TheSeamFormFieldModule }, { kind: "component", type: i4$3.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4$3.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4$3.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4$3.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }, { kind: "ngmodule", type: NgSelectModule }, { kind: "component", type: i5$1.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: i5$1.ɵf, selector: "[ng-option-tmp]" }, { kind: "directive", type: i5$1.ɵh, selector: "[ng-label-tmp]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2712
+ TheSeamSchemaFormSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.7", type: TheSeamSchemaFormSelectComponent, isStandalone: true, selector: "seam-schema-form-select", inputs: { layoutNode: "layoutNode", layoutIndex: "layoutIndex", dataIndex: "dataIndex" }, ngImport: i0, template: "<div [class]=\"options?.htmlClass || ''\">\n <seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\">\n <ng-template ng-label-tmp let-item=\"item\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n </seam-form-field>\n\n <seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n (change)=\"updateValue($event)\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\"\n [disabled]=\"controlDisabled\">\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n </seam-form-field>\n</div>\n", styles: [":host{display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3$3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: JsonSchemaFormModule }, { kind: "ngmodule", type: TheSeamFormFieldModule }, { kind: "component", type: i4$3.TheSeamFormFieldComponent, selector: "seam-form-field", inputs: ["inline", "label", "labelPosition", "labelClass", "maxErrors", "numPaddingErrors", "labelId", "helpText", "helpTextId"] }, { kind: "directive", type: i4$3.InputDirective, selector: "input[seamInput], textarea[seamInput], ng-select[seamInput], seam-checkbox[seamInput] [ngbRadioGroup], seam-tel-input[seamInput], quill-editor[seamInput], seam-google-maps[seamInput]", inputs: ["seamInputSize", "id", "type", "placeholder", "required", "disabled", "readonly"], exportAs: ["seamInput"] }, { kind: "directive", type: i4$3.FormFieldLabelTplDirective, selector: "[seamFormFieldLabelTpl]" }, { kind: "component", type: i4$3.FormFieldRequiredIndicatorComponent, selector: "seam-form-field-required-indicator", inputs: ["required"] }, { kind: "ngmodule", type: NgSelectModule }, { kind: "component", type: i5$1.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: i5$1.ɵf, selector: "[ng-option-tmp]" }, { kind: "directive", type: i5$1.ɵh, selector: "[ng-label-tmp]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2713
2713
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: TheSeamSchemaFormSelectComponent, decorators: [{
2714
2714
  type: Component,
2715
2715
  args: [{ selector: 'seam-schema-form-select', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
@@ -2718,7 +2718,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
2718
2718
  JsonSchemaFormModule,
2719
2719
  TheSeamFormFieldModule,
2720
2720
  NgSelectModule,
2721
- ], template: "<seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\">\n <ng-template ng-label-tmp let-item=\"item\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n\n<seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n (change)=\"updateValue($event)\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\"\n [disabled]=\"controlDisabled\">\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n</seam-form-field>\n", styles: [":host{display:block}\n"] }]
2721
+ ], template: "<div [class]=\"options?.htmlClass || ''\">\n <seam-form-field *ngIf=\"boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [formControl]=\"$any(formControl)\"\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\">\n <ng-template ng-label-tmp let-item=\"item\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n </seam-form-field>\n\n <seam-form-field *ngIf=\"!boundControl\">\n <ng-template seamFormFieldLabelTpl let-required=\"required\">\n <ng-container *ngIf=\"!options?.notitle\">\n {{ options?.title }}<seam-form-field-required-indicator class=\"pl-1\"></seam-form-field-required-indicator>\n </ng-container>\n </ng-template>\n <ng-select seamInput\n [ngClass]=\"options?.fieldHtmlClass\"\n [id]=\"'control' + layoutNode?._id\"\n [required]=\"options?.required\"\n [items]=\"selectList\"\n bindLabel=\"name\"\n bindValue=\"value\"\n [clearable]=\"false\"\n (change)=\"updateValue($event)\"\n appendTo=\"body\"\n\n [attr.aria-describedby]=\"'control' + layoutNode?._id + 'Status'\"\n [attr.placeholder]=\"options?.placeholder\"\n [attr.required]=\"options?.required\"\n [readonly]=\"options?.readonly ? true : false\"\n [disabled]=\"controlDisabled\">\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <span [innerHTML]=\"item.name\"></span>\n </ng-template>\n </ng-select>\n </seam-form-field>\n</div>\n", styles: [":host{display:block}\n"] }]
2722
2722
  }], ctorParameters: function () { return [{ type: i1$3.JsonSchemaFormService }]; }, propDecorators: { layoutNode: [{
2723
2723
  type: Input
2724
2724
  }], layoutIndex: [{
@@ -3030,14 +3030,14 @@ class TheSeamFramework extends Framework {
3030
3030
  'divider': TheSeamSchemaFormDividerComponent,
3031
3031
  'tel': TheSeamSchemaFormTelComponent,
3032
3032
  'tiled-select': TheSeamSchemaFormTiledSelectComponent
3033
- // 'file': // TODO: Implement
3034
3033
  // 'date': // TODO: Implement
3035
- // 'map': // TODO: Implement
3036
- // 'wizard': // TODO: Implement
3034
+ // 'file': // TODO: Implement
3037
3035
  // 'image': // TODO: Implement
3036
+ // 'richtext': // TODO: Implement
3038
3037
  // 'tabs': // TODO: Implement
3038
+ // 'wizard': // TODO: Implement
3039
3039
  // 'card': // TODO: Implement
3040
- // 'richtext': // TODO: Implement
3040
+ // 'map': // TODO: Implement
3041
3041
  };
3042
3042
  // console.log('TheSeamFramework', _overrides, this)
3043
3043
  if (_overrides) {