@gravitee/ui-particles-angular 15.13.0-angular-20-4a9d88b → 15.13.0-fix-cron-e0271bb
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/gio-asciidoctor/gio-asciidoctor.component.mjs +104 -0
- package/esm2022/gio-asciidoctor/gio-asciidoctor.module.mjs +33 -0
- package/esm2022/gio-asciidoctor/gio-asciidoctor.service.mjs +48 -0
- package/esm2022/gio-asciidoctor/gravitee-ui-particles-angular-gio-asciidoctor.mjs +5 -0
- package/esm2022/gio-asciidoctor/public-api.mjs +19 -0
- package/esm2022/gio-el/gio-el-editor/gio-el-editor-condition-group/gio-el-editor-condition-group.component.mjs +127 -0
- package/esm2022/gio-el/gio-el-editor/gio-el-editor-condition-group/gio-el-editor-condition-group.harness.mjs +158 -0
- package/esm2022/gio-el/gio-el-editor/gio-el-editor.component.mjs +131 -0
- package/esm2022/gio-el/gio-el-editor/gio-el-editor.harness.mjs +28 -0
- package/esm2022/gio-el/gio-el-editor/gio-el-field/gio-el-field.component.mjs +271 -0
- package/esm2022/gio-el/gio-el-editor/gio-el-field/gio-el-field.harness.mjs +53 -0
- package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-boolean/gio-el-editor-type-boolean.component.mjs +57 -0
- package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-boolean/gio-el-editor-type-boolean.harness.mjs +31 -0
- package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-date/gio-el-editor-type-date.component.mjs +74 -0
- package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-date/gio-el-editor-type-date.harness.mjs +29 -0
- package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-number/gio-el-editor-type-number.component.mjs +70 -0
- package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-number/gio-el-editor-type-number.harness.mjs +29 -0
- package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-string/gio-el-editor-type-string.component.mjs +73 -0
- package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-string/gio-el-editor-type-string.harness.mjs +29 -0
- package/esm2022/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type.harness.mjs +38 -0
- package/esm2022/gio-el/gravitee-ui-particles-angular-gio-el.mjs +5 -0
- package/esm2022/gio-el/models/Condition.mjs +9 -0
- package/esm2022/gio-el/models/ConditionGroup.mjs +7 -0
- package/esm2022/gio-el/models/ConditionModel.mjs +17 -0
- package/esm2022/gio-el/models/ConditionsModel.mjs +4 -0
- package/esm2022/gio-el/models/ExpressionLanguageBuilder.mjs +97 -0
- package/esm2022/gio-el/models/Operator.mjs +2 -0
- package/esm2022/gio-el/models/public-api.mjs +21 -0
- package/esm2022/gio-el/public-api.mjs +19 -0
- package/esm2022/gravitee-ui-particles-angular.mjs +5 -0
- package/esm2022/lib/gio-avatar/gio-avatar.component.mjs +74 -0
- package/esm2022/lib/gio-avatar/gio-avatar.module.mjs +33 -0
- package/esm2022/lib/gio-avatar/index.mjs +18 -0
- package/esm2022/lib/gio-banner/gio-banner.component.mjs +120 -0
- package/esm2022/lib/gio-banner/gio-banner.module.mjs +64 -0
- package/esm2022/lib/gio-breadcrumb/gio-breadcrumb-item.directive.mjs +32 -0
- package/esm2022/lib/gio-breadcrumb/gio-breadcrumb.component.mjs +32 -0
- package/esm2022/lib/gio-breadcrumb/gio-breadcrumb.module.mjs +35 -0
- package/esm2022/lib/gio-breadcrumb/index.mjs +19 -0
- package/esm2022/lib/gio-card-empty-state/gio-card-empty-state.component.mjs +35 -0
- package/esm2022/lib/gio-card-empty-state/gio-card-empty-state.module.mjs +36 -0
- package/esm2022/lib/gio-card-empty-state/index.mjs +18 -0
- package/esm2022/lib/gio-clipboard/gio-clipboard-copy-icon.component.mjs +67 -0
- package/esm2022/lib/gio-clipboard/gio-clipboard-copy-wrapper.component.mjs +71 -0
- package/esm2022/lib/gio-clipboard/gio-clipboard.base.component.mjs +64 -0
- package/esm2022/lib/gio-clipboard/gio-clipboard.module.mjs +39 -0
- package/esm2022/lib/gio-confirm-and-validate-dialog/gio-confirm-and-validate-dialog.component.mjs +61 -0
- package/esm2022/lib/gio-confirm-and-validate-dialog/gio-confirm-and-validate-dialog.harness.mjs +40 -0
- package/esm2022/lib/gio-confirm-and-validate-dialog/gio-confirm-and-validate-dialog.module.mjs +40 -0
- package/esm2022/lib/gio-confirm-dialog/gio-confirm-dialog.component.mjs +54 -0
- package/esm2022/lib/gio-confirm-dialog/gio-confirm-dialog.harness.mjs +34 -0
- package/esm2022/lib/gio-confirm-dialog/gio-confirm-dialog.module.mjs +36 -0
- package/esm2022/lib/gio-dialog/gio-dialog.constant.mjs +21 -0
- package/esm2022/lib/gio-el/gio-el-assistant/gio-el-assistant.component.mjs +62 -0
- package/esm2022/lib/gio-el/gio-el-prompt/gio-el-prompt.component.mjs +112 -0
- package/esm2022/lib/gio-el/gio-el.service.mjs +60 -0
- package/esm2022/lib/gio-el/index.mjs +20 -0
- package/esm2022/lib/gio-el/models/ElAiPromptState.mjs +23 -0
- package/esm2022/lib/gio-el/public-api.mjs +20 -0
- package/esm2022/lib/gio-form-cron/gio-form-cron-hint.component.mjs +30 -0
- package/esm2022/lib/gio-form-cron/gio-form-cron-label.component.mjs +30 -0
- package/esm2022/lib/gio-form-cron/gio-form-cron.adapter.mjs +249 -0
- package/esm2022/lib/gio-form-cron/gio-form-cron.component.mjs +211 -0
- package/esm2022/lib/gio-form-cron/gio-form-cron.harness.mjs +77 -0
- package/esm2022/lib/gio-form-cron/gio-form-cron.module.mjs +69 -0
- package/esm2022/lib/gio-form-file-picker/gio-form-file-picker-add-button/gio-form-file-picker-add-button.component.mjs +29 -0
- package/esm2022/lib/gio-form-file-picker/gio-form-file-picker-empty/gio-form-file-picker-empty.component.mjs +27 -0
- package/esm2022/lib/gio-form-file-picker/gio-form-file-picker-label/gio-form-file-picker-label.component.mjs +26 -0
- package/esm2022/lib/gio-form-file-picker/gio-form-file-picker.component.harness.mjs +95 -0
- package/esm2022/lib/gio-form-file-picker/gio-form-file-picker.component.mjs +167 -0
- package/esm2022/lib/gio-form-file-picker/gio-form-file-picker.model.mjs +23 -0
- package/esm2022/lib/gio-form-file-picker/gio-form-file-picker.module.mjs +57 -0
- package/esm2022/lib/gio-form-file-picker/index.mjs +23 -0
- package/esm2022/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid-ignore.directive.mjs +31 -0
- package/esm2022/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid.directive.mjs +96 -0
- package/esm2022/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid.module.mjs +32 -0
- package/esm2022/lib/gio-form-headers/gio-form-headers-label.component.mjs +30 -0
- package/esm2022/lib/gio-form-headers/gio-form-headers.component.mjs +284 -0
- package/esm2022/lib/gio-form-headers/gio-form-headers.harness.mjs +73 -0
- package/esm2022/lib/gio-form-headers/gio-form-headers.module.mjs +77 -0
- package/esm2022/lib/gio-form-json-schema/gio-form-json-schema.component.mjs +209 -0
- package/esm2022/lib/gio-form-json-schema/gio-form-json-schema.module.mjs +244 -0
- package/esm2022/lib/gio-form-json-schema/gio-formly-json-schema.service.mjs +261 -0
- package/esm2022/lib/gio-form-json-schema/model/GioJsonSchema.mjs +17 -0
- package/esm2022/lib/gio-form-json-schema/model/GioJsonSchemaContext.mjs +2 -0
- package/esm2022/lib/gio-form-json-schema/type-component/array-type.component.mjs +109 -0
- package/esm2022/lib/gio-form-json-schema/type-component/code-editor-type.component.mjs +47 -0
- package/esm2022/lib/gio-form-json-schema/type-component/cron-type.component.mjs +42 -0
- package/esm2022/lib/gio-form-json-schema/type-component/headers-type.component.mjs +108 -0
- package/esm2022/lib/gio-form-json-schema/type-component/multischema-type.component.mjs +66 -0
- package/esm2022/lib/gio-form-json-schema/type-component/null-type.component.mjs +31 -0
- package/esm2022/lib/gio-form-json-schema/type-component/object-type.component.mjs +62 -0
- package/esm2022/lib/gio-form-json-schema/type-component/toggle-type.component.mjs +60 -0
- package/esm2022/lib/gio-form-json-schema/util/validation-message.util.mjs +38 -0
- package/esm2022/lib/gio-form-json-schema/wrappers/gio-banner-extension.mjs +10 -0
- package/esm2022/lib/gio-form-json-schema/wrappers/gio-banner-wrapper.component.mjs +28 -0
- package/esm2022/lib/gio-form-json-schema/wrappers/gio-el-helper-wrapper.component.mjs +61 -0
- package/esm2022/lib/gio-form-json-schema/wrappers/gio-password-eye.component.mjs +74 -0
- package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline-card-content/gio-form-selection-inline-card-content.component.mjs +79 -0
- package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline-card.component.mjs +86 -0
- package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline-card.harness.mjs +44 -0
- package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline.component.mjs +103 -0
- package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline.harness.mjs +65 -0
- package/esm2022/lib/gio-form-selection-inline/gio-form-selection-inline.module.mjs +59 -0
- package/esm2022/lib/gio-form-selection-inline/public-api.mjs +22 -0
- package/esm2022/lib/gio-form-slide-toggle/gio-form-label.directive.mjs +52 -0
- package/esm2022/lib/gio-form-slide-toggle/gio-form-slide-toggle.component.mjs +69 -0
- package/esm2022/lib/gio-form-slide-toggle/gio-form-slide-toggle.module.mjs +34 -0
- package/esm2022/lib/gio-form-tags-input/gio-form-tags-input.component.mjs +316 -0
- package/esm2022/lib/gio-form-tags-input/gio-form-tags-input.harness.mjs +82 -0
- package/esm2022/lib/gio-form-tags-input/gio-form-tags-input.module.mjs +67 -0
- package/esm2022/lib/gio-icons/gio-icons.module.mjs +37 -0
- package/esm2022/lib/gio-license/gio-license-dialog/gio-license-dialog.component.mjs +43 -0
- package/esm2022/lib/gio-license/gio-license-dialog/gio-license-dialog.module.mjs +37 -0
- package/esm2022/lib/gio-license/gio-license.directive.mjs +92 -0
- package/esm2022/lib/gio-license/gio-license.module.mjs +35 -0
- package/esm2022/lib/gio-license/gio-license.service.mjs +101 -0
- package/esm2022/lib/gio-license/gio-license.testing.module.mjs +107 -0
- package/esm2022/lib/gio-license-expiration-notification/gio-license-expiration-notification.component.mjs +77 -0
- package/esm2022/lib/gio-license-expiration-notification/gio-license-expiration-notification.harness.mjs +44 -0
- package/esm2022/lib/gio-license-expiration-notification/gio-license-expiration-notification.module.mjs +36 -0
- package/esm2022/lib/gio-loader/gio-loader.component.mjs +27 -0
- package/esm2022/lib/gio-loader/gio-loader.module.mjs +34 -0
- package/esm2022/lib/gio-mat-config/gio-mat-config.module.mjs +30 -0
- package/esm2022/lib/gio-mat-config/index.mjs +17 -0
- package/esm2022/lib/gio-monaco-editor/gio-monaco-clipboard-copy.component.mjs +44 -0
- package/esm2022/lib/gio-monaco-editor/gio-monaco-editor-form-field.directive.mjs +150 -0
- package/esm2022/lib/gio-monaco-editor/gio-monaco-editor.component.mjs +314 -0
- package/esm2022/lib/gio-monaco-editor/gio-monaco-editor.harness.mjs +70 -0
- package/esm2022/lib/gio-monaco-editor/gio-monaco-editor.module.mjs +60 -0
- package/esm2022/lib/gio-monaco-editor/gio-monaco-editor.testing.component.mjs +42 -0
- package/esm2022/lib/gio-monaco-editor/models/GioMonacoEditorConfig.mjs +18 -0
- package/esm2022/lib/gio-monaco-editor/models/JSONSchemaAutoComplete.mjs +115 -0
- package/esm2022/lib/gio-monaco-editor/models/MonacoEditorTheme.mjs +2 -0
- package/esm2022/lib/gio-monaco-editor/services/gio-language-el.service.mjs +226 -0
- package/esm2022/lib/gio-monaco-editor/services/gio-language-json.service.mjs +72 -0
- package/esm2022/lib/gio-monaco-editor/services/gio-monaco-editor.service.mjs +72 -0
- package/esm2022/lib/gio-pipe/gio.pipe.module.mjs +32 -0
- package/esm2022/lib/gio-pipe/safe.pipe.mjs +53 -0
- package/esm2022/lib/gio-popover/gio-popover-trigger.directive.mjs +46 -0
- package/esm2022/lib/gio-popover/gio-popover.component.mjs +83 -0
- package/esm2022/lib/gio-popover/index.mjs +18 -0
- package/esm2022/lib/gio-popover/public-api.mjs +18 -0
- package/esm2022/lib/gio-prismjs/gio-prismjs.service.mjs +80 -0
- package/esm2022/lib/gio-save-bar/gio-save-bar.component.mjs +142 -0
- package/esm2022/lib/gio-save-bar/gio-save-bar.harness.mjs +54 -0
- package/esm2022/lib/gio-save-bar/gio-save-bar.module.mjs +35 -0
- package/esm2022/lib/oem-theme/gio-menu/gio-menu-footer/gio-menu-footer.component.mjs +26 -0
- package/esm2022/lib/oem-theme/gio-menu/gio-menu-header/gio-menu-header.component.mjs +26 -0
- package/esm2022/lib/oem-theme/gio-menu/gio-menu-item/gio-menu-item.component.mjs +85 -0
- package/esm2022/lib/oem-theme/gio-menu/gio-menu-license-expiration-notification/gio-menu-license-expiration-notification.component.mjs +26 -0
- package/esm2022/lib/oem-theme/gio-menu/gio-menu-list/gio-menu-list.component.mjs +26 -0
- package/esm2022/lib/oem-theme/gio-menu/gio-menu-search/gio-menu-search.component.mjs +62 -0
- package/esm2022/lib/oem-theme/gio-menu/gio-menu-search/gio-menu-search.harness.mjs +41 -0
- package/esm2022/lib/oem-theme/gio-menu/gio-menu-search/gio-menu-search.service.mjs +41 -0
- package/esm2022/lib/oem-theme/gio-menu/gio-menu-selector/gio-menu-selector.component.mjs +49 -0
- package/esm2022/lib/oem-theme/gio-menu/gio-menu-selector/gio-menu-selector.harness.mjs +41 -0
- package/esm2022/lib/oem-theme/gio-menu/gio-menu.component.mjs +50 -0
- package/esm2022/lib/oem-theme/gio-menu/gio-menu.module.mjs +78 -0
- package/esm2022/lib/oem-theme/gio-menu/gio-menu.service.mjs +45 -0
- package/esm2022/lib/oem-theme/gio-menu/index.mjs +29 -0
- package/esm2022/lib/oem-theme/gio-submenu/gio-submenu-group/gio-submenu-group.component.mjs +34 -0
- package/esm2022/lib/oem-theme/gio-submenu/gio-submenu-item/gio-submenu-item.component.mjs +46 -0
- package/esm2022/lib/oem-theme/gio-submenu/gio-submenu.component.mjs +112 -0
- package/esm2022/lib/oem-theme/gio-submenu/gio-submenu.module.mjs +37 -0
- package/esm2022/lib/oem-theme/gio-submenu/index.mjs +20 -0
- package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-content/gio-top-bar-content.component.mjs +35 -0
- package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-link/gio-top-bar-link.component.mjs +35 -0
- package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-link/gio-top-bar-link.module.mjs +35 -0
- package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-menu/gio-top-bar-menu.component.mjs +26 -0
- package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar-menu/gio-top-bar-menu.module.mjs +33 -0
- package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar.component.mjs +34 -0
- package/esm2022/lib/oem-theme/gio-top-bar/gio-top-bar.module.mjs +36 -0
- package/esm2022/lib/oem-theme/gio-top-bar/index.mjs +23 -0
- package/esm2022/lib/oem-theme/oem-theme.service.mjs +83 -0
- package/esm2022/lib/oem-theme/public-api.mjs +20 -0
- package/esm2022/lib/public-api.mjs +85 -0
- package/esm2022/public-api.mjs +20 -0
- package/esm2022/testing/gravitee-ui-particles-angular-testing.mjs +5 -0
- package/esm2022/testing/harnesses/div.harness.mjs +42 -0
- package/esm2022/testing/harnesses/index.mjs +18 -0
- package/esm2022/testing/harnesses/span.harness.mjs +42 -0
- package/esm2022/testing/public-api.mjs +17 -0
- package/fesm2022/gravitee-ui-particles-angular-gio-asciidoctor.mjs +11 -11
- package/fesm2022/gravitee-ui-particles-angular-gio-asciidoctor.mjs.map +1 -1
- package/fesm2022/gravitee-ui-particles-angular-gio-el.mjs +80 -74
- package/fesm2022/gravitee-ui-particles-angular-gio-el.mjs.map +1 -1
- package/fesm2022/gravitee-ui-particles-angular-testing.mjs.map +1 -1
- package/fesm2022/gravitee-ui-particles-angular.mjs +568 -637
- package/fesm2022/gravitee-ui-particles-angular.mjs.map +1 -1
- package/gio-asciidoctor/gio-asciidoctor.component.d.ts +26 -0
- package/gio-asciidoctor/gio-asciidoctor.module.d.ts +8 -0
- package/gio-asciidoctor/gio-asciidoctor.service.d.ts +14 -0
- package/gio-asciidoctor/index.d.ts +5 -49
- package/gio-asciidoctor/public-api.d.ts +3 -0
- package/gio-el/gio-el-editor/gio-el-editor-condition-group/gio-el-editor-condition-group.component.d.ts +25 -0
- package/gio-el/gio-el-editor/gio-el-editor-condition-group/gio-el-editor-condition-group.harness.d.ts +36 -0
- package/gio-el/gio-el-editor/gio-el-editor.component.d.ts +25 -0
- package/gio-el/gio-el-editor/gio-el-editor.harness.d.ts +7 -0
- package/gio-el/gio-el-editor/gio-el-field/gio-el-field.component.d.ts +70 -0
- package/gio-el/gio-el-editor/gio-el-field/gio-el-field.harness.d.ts +14 -0
- package/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-boolean/gio-el-editor-type-boolean.component.d.ts +15 -0
- package/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-boolean/gio-el-editor-type-boolean.harness.d.ts +6 -0
- package/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-date/gio-el-editor-type-date.component.d.ts +17 -0
- package/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-date/gio-el-editor-type-date.harness.d.ts +6 -0
- package/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-number/gio-el-editor-type-number.component.d.ts +17 -0
- package/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-number/gio-el-editor-type-number.harness.d.ts +6 -0
- package/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-string/gio-el-editor-type-string.component.d.ts +23 -0
- package/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type-string/gio-el-editor-type-string.harness.d.ts +6 -0
- package/gio-el/gio-el-editor/gio-el-type/gio-el-editor-type.harness.d.ts +10 -0
- package/gio-el/index.d.ts +5 -146
- package/gio-el/models/Condition.d.ts +19 -0
- package/gio-el/models/ConditionGroup.d.ts +7 -0
- package/gio-el/models/ConditionModel.d.ts +32 -0
- package/gio-el/models/ConditionsModel.d.ts +8 -0
- package/gio-el/models/ExpressionLanguageBuilder.d.ts +12 -0
- package/gio-el/models/Operator.d.ts +1 -0
- package/gio-el/models/public-api.d.ts +5 -0
- package/gio-el/public-api.d.ts +3 -0
- package/index.d.ts +3 -1822
- package/lib/gio-avatar/gio-avatar.component.d.ts +21 -0
- package/lib/gio-avatar/gio-avatar.module.d.ts +8 -0
- package/lib/gio-avatar/index.d.ts +2 -0
- package/lib/gio-banner/gio-banner.component.d.ts +43 -0
- package/lib/gio-banner/gio-banner.module.d.ts +11 -0
- package/lib/gio-breadcrumb/gio-breadcrumb-item.directive.d.ts +8 -0
- package/lib/gio-breadcrumb/gio-breadcrumb.component.d.ts +8 -0
- package/lib/gio-breadcrumb/gio-breadcrumb.module.d.ts +10 -0
- package/lib/gio-breadcrumb/index.d.ts +3 -0
- package/lib/gio-card-empty-state/gio-card-empty-state.component.d.ts +8 -0
- package/lib/gio-card-empty-state/gio-card-empty-state.module.d.ts +11 -0
- package/lib/gio-card-empty-state/index.d.ts +2 -0
- package/lib/gio-clipboard/gio-clipboard-copy-icon.component.d.ts +6 -0
- package/lib/gio-clipboard/gio-clipboard-copy-wrapper.component.d.ts +6 -0
- package/lib/gio-clipboard/gio-clipboard.base.component.d.ts +18 -0
- package/lib/gio-clipboard/gio-clipboard.module.d.ts +14 -0
- package/lib/gio-confirm-and-validate-dialog/gio-confirm-and-validate-dialog.component.d.ts +33 -0
- package/lib/gio-confirm-and-validate-dialog/gio-confirm-and-validate-dialog.harness.d.ts +9 -0
- package/lib/gio-confirm-and-validate-dialog/gio-confirm-and-validate-dialog.module.d.ts +15 -0
- package/lib/gio-confirm-dialog/gio-confirm-dialog.component.d.ts +29 -0
- package/lib/gio-confirm-dialog/gio-confirm-dialog.harness.d.ts +8 -0
- package/lib/gio-confirm-dialog/gio-confirm-dialog.module.d.ts +11 -0
- package/lib/gio-dialog/gio-dialog.constant.d.ts +5 -0
- package/lib/gio-el/gio-el-assistant/gio-el-assistant.component.d.ts +7 -0
- package/lib/gio-el/gio-el-prompt/gio-el-prompt.component.d.ts +28 -0
- package/lib/gio-el/gio-el.service.d.ts +19 -0
- package/lib/gio-el/index.d.ts +4 -0
- package/lib/gio-el/models/ElAiPromptState.d.ts +15 -0
- package/lib/gio-el/public-api.d.ts +4 -0
- package/lib/gio-form-cron/gio-form-cron-hint.component.d.ts +5 -0
- package/lib/gio-form-cron/gio-form-cron-label.component.d.ts +5 -0
- package/lib/gio-form-cron/gio-form-cron.adapter.d.ts +18 -0
- package/lib/gio-form-cron/gio-form-cron.component.d.ts +42 -0
- package/lib/gio-form-cron/gio-form-cron.harness.d.ts +23 -0
- package/lib/gio-form-cron/gio-form-cron.module.d.ts +18 -0
- package/lib/gio-form-file-picker/gio-form-file-picker-add-button/gio-form-file-picker-add-button.component.d.ts +5 -0
- package/lib/gio-form-file-picker/gio-form-file-picker-empty/gio-form-file-picker-empty.component.d.ts +5 -0
- package/lib/gio-form-file-picker/gio-form-file-picker-label/gio-form-file-picker-label.component.d.ts +5 -0
- package/lib/gio-form-file-picker/gio-form-file-picker.component.d.ts +43 -0
- package/lib/gio-form-file-picker/gio-form-file-picker.component.harness.d.ts +30 -0
- package/lib/gio-form-file-picker/gio-form-file-picker.model.d.ts +6 -0
- package/lib/gio-form-file-picker/gio-form-file-picker.module.d.ts +16 -0
- package/lib/gio-form-file-picker/index.d.ts +7 -0
- package/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid-ignore.directive.d.ts +6 -0
- package/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid.directive.d.ts +22 -0
- package/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid.module.d.ts +8 -0
- package/lib/gio-form-headers/gio-form-headers-label.component.d.ts +5 -0
- package/lib/gio-form-headers/gio-form-headers.component.d.ts +46 -0
- package/lib/gio-form-headers/gio-form-headers.harness.d.ts +39 -0
- package/lib/gio-form-headers/gio-form-headers.module.d.ts +20 -0
- package/lib/gio-form-json-schema/gio-form-json-schema.component.d.ts +43 -0
- package/lib/gio-form-json-schema/gio-form-json-schema.module.d.ts +35 -0
- package/lib/gio-form-json-schema/gio-formly-json-schema.service.d.ts +26 -0
- package/lib/gio-form-json-schema/model/GioJsonSchema.d.ts +47 -0
- package/lib/gio-form-json-schema/model/GioJsonSchemaContext.d.ts +1 -0
- package/lib/gio-form-json-schema/type-component/array-type.component.d.ts +10 -0
- package/lib/gio-form-json-schema/type-component/code-editor-type.component.d.ts +16 -0
- package/lib/gio-form-json-schema/type-component/cron-type.component.d.ts +9 -0
- package/lib/gio-form-json-schema/type-component/headers-type.component.d.ts +18 -0
- package/lib/gio-form-json-schema/type-component/multischema-type.component.d.ts +13 -0
- package/lib/gio-form-json-schema/type-component/null-type.component.d.ts +6 -0
- package/lib/gio-form-json-schema/type-component/object-type.component.d.ts +9 -0
- package/lib/gio-form-json-schema/type-component/toggle-type.component.d.ts +8 -0
- package/lib/gio-form-json-schema/util/validation-message.util.d.ts +15 -0
- package/lib/gio-form-json-schema/wrappers/gio-banner-extension.d.ts +2 -0
- package/lib/gio-form-json-schema/wrappers/gio-banner-wrapper.component.d.ts +6 -0
- package/lib/gio-form-json-schema/wrappers/gio-el-helper-wrapper.component.d.ts +11 -0
- package/lib/gio-form-json-schema/wrappers/gio-password-eye.component.d.ts +12 -0
- package/lib/gio-form-selection-inline/gio-form-selection-inline-card-content/gio-form-selection-inline-card-content.component.d.ts +15 -0
- package/lib/gio-form-selection-inline/gio-form-selection-inline-card.component.d.ts +17 -0
- package/lib/gio-form-selection-inline/gio-form-selection-inline-card.harness.d.ts +19 -0
- package/lib/gio-form-selection-inline/gio-form-selection-inline.component.d.ts +20 -0
- package/lib/gio-form-selection-inline/gio-form-selection-inline.harness.d.ts +26 -0
- package/lib/gio-form-selection-inline/gio-form-selection-inline.module.d.ts +14 -0
- package/lib/gio-form-selection-inline/public-api.d.ts +6 -0
- package/lib/gio-form-slide-toggle/gio-form-label.directive.d.ts +13 -0
- package/lib/gio-form-slide-toggle/gio-form-slide-toggle.component.d.ts +15 -0
- package/lib/gio-form-slide-toggle/gio-form-slide-toggle.module.d.ts +9 -0
- package/lib/gio-form-tags-input/gio-form-tags-input.component.d.ts +95 -0
- package/lib/gio-form-tags-input/gio-form-tags-input.harness.d.ts +23 -0
- package/lib/gio-form-tags-input/gio-form-tags-input.module.d.ts +16 -0
- package/lib/gio-icons/gio-icons.module.d.ts +11 -0
- package/lib/gio-license/gio-license-dialog/gio-license-dialog.component.d.ts +16 -0
- package/lib/gio-license/gio-license-dialog/gio-license-dialog.module.d.ts +12 -0
- package/lib/gio-license/gio-license.directive.d.ts +24 -0
- package/lib/gio-license/gio-license.module.d.ts +10 -0
- package/lib/gio-license/gio-license.service.d.ts +58 -0
- package/lib/gio-license/gio-license.testing.module.d.ts +24 -0
- package/lib/gio-license-expiration-notification/gio-license-expiration-notification.component.d.ts +17 -0
- package/lib/gio-license-expiration-notification/gio-license-expiration-notification.harness.d.ts +13 -0
- package/lib/gio-license-expiration-notification/gio-license-expiration-notification.module.d.ts +11 -0
- package/lib/gio-loader/gio-loader.component.d.ts +5 -0
- package/lib/gio-loader/gio-loader.module.d.ts +9 -0
- package/lib/gio-mat-config/gio-mat-config.module.d.ts +6 -0
- package/lib/gio-mat-config/index.d.ts +1 -0
- package/lib/gio-monaco-editor/gio-monaco-clipboard-copy.component.d.ts +7 -0
- package/lib/gio-monaco-editor/gio-monaco-editor-form-field.directive.d.ts +45 -0
- package/lib/gio-monaco-editor/gio-monaco-editor.component.d.ts +67 -0
- package/lib/gio-monaco-editor/gio-monaco-editor.harness.d.ts +19 -0
- package/lib/gio-monaco-editor/gio-monaco-editor.module.d.ts +20 -0
- package/lib/gio-monaco-editor/gio-monaco-editor.testing.component.d.ts +12 -0
- package/lib/gio-monaco-editor/models/GioMonacoEditorConfig.d.ts +7 -0
- package/lib/gio-monaco-editor/models/JSONSchemaAutoComplete.d.ts +39 -0
- package/lib/gio-monaco-editor/models/MonacoEditorTheme.d.ts +1 -0
- package/lib/gio-monaco-editor/services/gio-language-el.service.d.ts +18 -0
- package/lib/gio-monaco-editor/services/gio-language-json.service.d.ts +18 -0
- package/lib/gio-monaco-editor/services/gio-monaco-editor.service.d.ts +19 -0
- package/lib/gio-pipe/gio.pipe.module.d.ts +7 -0
- package/lib/gio-pipe/safe.pipe.d.ts +10 -0
- package/lib/gio-popover/gio-popover-trigger.directive.d.ts +12 -0
- package/lib/gio-popover/gio-popover.component.d.ts +15 -0
- package/lib/gio-popover/index.d.ts +2 -0
- package/lib/gio-popover/public-api.d.ts +2 -0
- package/lib/gio-prismjs/gio-prismjs.service.d.ts +14 -0
- package/lib/gio-save-bar/gio-save-bar.component.d.ts +30 -0
- package/lib/gio-save-bar/gio-save-bar.harness.d.ts +15 -0
- package/lib/gio-save-bar/gio-save-bar.module.d.ts +10 -0
- package/lib/oem-theme/gio-menu/gio-menu-footer/gio-menu-footer.component.d.ts +5 -0
- package/lib/oem-theme/gio-menu/gio-menu-header/gio-menu-header.component.d.ts +5 -0
- package/lib/oem-theme/gio-menu/gio-menu-item/gio-menu-item.component.d.ts +19 -0
- package/lib/oem-theme/gio-menu/gio-menu-license-expiration-notification/gio-menu-license-expiration-notification.component.d.ts +5 -0
- package/lib/oem-theme/gio-menu/gio-menu-list/gio-menu-list.component.d.ts +5 -0
- package/lib/oem-theme/gio-menu/gio-menu-search/gio-menu-search.component.d.ts +25 -0
- package/lib/oem-theme/gio-menu/gio-menu-search/gio-menu-search.harness.d.ts +10 -0
- package/lib/oem-theme/gio-menu/gio-menu-search/gio-menu-search.service.d.ts +9 -0
- package/lib/oem-theme/gio-menu/gio-menu-selector/gio-menu-selector.component.d.ts +17 -0
- package/lib/oem-theme/gio-menu/gio-menu-selector/gio-menu-selector.harness.d.ts +8 -0
- package/lib/oem-theme/gio-menu/gio-menu.component.d.ts +14 -0
- package/lib/oem-theme/gio-menu/gio-menu.module.d.ts +21 -0
- package/lib/oem-theme/gio-menu/gio-menu.service.d.ts +18 -0
- package/lib/oem-theme/gio-menu/index.d.ts +13 -0
- package/lib/oem-theme/gio-submenu/gio-submenu-group/gio-submenu-group.component.d.ts +8 -0
- package/lib/oem-theme/gio-submenu/gio-submenu-item/gio-submenu-item.component.d.ts +9 -0
- package/lib/oem-theme/gio-submenu/gio-submenu.component.d.ts +28 -0
- package/lib/oem-theme/gio-submenu/gio-submenu.module.d.ts +12 -0
- package/lib/oem-theme/gio-submenu/index.d.ts +4 -0
- package/lib/oem-theme/gio-top-bar/gio-top-bar-content/gio-top-bar-content.component.d.ts +8 -0
- package/lib/oem-theme/gio-top-bar/gio-top-bar-link/gio-top-bar-link.component.d.ts +7 -0
- package/lib/oem-theme/gio-top-bar/gio-top-bar-link/gio-top-bar-link.module.d.ts +10 -0
- package/lib/oem-theme/gio-top-bar/gio-top-bar-menu/gio-top-bar-menu.component.d.ts +5 -0
- package/lib/oem-theme/gio-top-bar/gio-top-bar-menu/gio-top-bar-menu.module.d.ts +8 -0
- package/lib/oem-theme/gio-top-bar/gio-top-bar.component.d.ts +8 -0
- package/lib/oem-theme/gio-top-bar/gio-top-bar.module.d.ts +11 -0
- package/lib/oem-theme/gio-top-bar/index.d.ts +7 -0
- package/lib/oem-theme/oem-theme.service.d.ts +22 -0
- package/lib/oem-theme/public-api.d.ts +4 -0
- package/lib/public-api.d.ts +66 -0
- package/package.json +15 -7
- package/public-api.d.ts +1 -0
- package/src/scss/gio-mat-theme.scss +1 -2
- package/testing/harnesses/div.harness.d.ts +21 -0
- package/testing/harnesses/index.d.ts +2 -0
- package/testing/harnesses/span.harness.d.ts +21 -0
- package/testing/index.d.ts +5 -47
- package/testing/public-api.d.ts +1 -0
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (C) 2015 The Gravitee team (http://gravitee.io)
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import { ChangeDetectionStrategy, Component, Input, Optional, Self } from '@angular/core';
|
|
17
|
+
import { isArray, isNil, remove } from 'lodash';
|
|
18
|
+
import { ReadMode } from 'ngx-file-helpers';
|
|
19
|
+
import { tap } from 'rxjs/operators';
|
|
20
|
+
import { NewFile } from './gio-form-file-picker.model';
|
|
21
|
+
import * as i0 from "@angular/core";
|
|
22
|
+
import * as i1 from "@angular/forms";
|
|
23
|
+
import * as i2 from "@angular/common";
|
|
24
|
+
import * as i3 from "ngx-file-helpers";
|
|
25
|
+
import * as i4 from "@angular/material/icon";
|
|
26
|
+
import * as i5 from "./gio-form-file-picker-add-button/gio-form-file-picker-add-button.component";
|
|
27
|
+
import * as i6 from "./gio-form-file-picker-empty/gio-form-file-picker-empty.component";
|
|
28
|
+
export class GioFormFilePickerComponent {
|
|
29
|
+
set disabled(disabled) {
|
|
30
|
+
this.setDisabledState(disabled);
|
|
31
|
+
}
|
|
32
|
+
constructor(changeDetectorRef, ngControl) {
|
|
33
|
+
this.changeDetectorRef = changeDetectorRef;
|
|
34
|
+
this.ngControl = ngControl;
|
|
35
|
+
this.multiple = false;
|
|
36
|
+
this.accept = '*';
|
|
37
|
+
this.fileValues = [];
|
|
38
|
+
this.readMode = ReadMode.DataURL;
|
|
39
|
+
this.dragHover = false;
|
|
40
|
+
this.isDisabled = false;
|
|
41
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
42
|
+
this.onChangeCallback = () => { };
|
|
43
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
44
|
+
this.onTouchedCallback = () => { };
|
|
45
|
+
if (ngControl) {
|
|
46
|
+
// Setting the value accessor directly (instead of using
|
|
47
|
+
// the providers `NG_VALUE_ACCESSOR`) to avoid running into a circular import.
|
|
48
|
+
ngControl.valueAccessor = this;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
ngOnInit() {
|
|
52
|
+
if (this.ngControl && this.ngControl.statusChanges) {
|
|
53
|
+
// As the change detection is OnPush we have to markForCheck the component after a validation change because no input/output or values have changed
|
|
54
|
+
this.ngControl.statusChanges.pipe(tap(() => this.changeDetectorRef.markForCheck())).subscribe();
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
get isComplete() {
|
|
58
|
+
return (!this.multiple && this.fileValues.length === 1) || false;
|
|
59
|
+
}
|
|
60
|
+
get isValid() {
|
|
61
|
+
return !this.ngControl || !this.ngControl.touched || this.ngControl.valid;
|
|
62
|
+
}
|
|
63
|
+
// implement by ControlValueAccessor
|
|
64
|
+
async writeValue(inputs) {
|
|
65
|
+
if (isNil(inputs) || !isArray(inputs)) {
|
|
66
|
+
this.fileValues = [];
|
|
67
|
+
return Promise.resolve();
|
|
68
|
+
}
|
|
69
|
+
this.fileValues = await Promise.all(inputs.map(async (input) => ({
|
|
70
|
+
isNew: false,
|
|
71
|
+
name: input,
|
|
72
|
+
dataUrl: input,
|
|
73
|
+
isImage: await isImgUrl(input),
|
|
74
|
+
})));
|
|
75
|
+
this.changeDetectorRef.markForCheck();
|
|
76
|
+
}
|
|
77
|
+
// implement by ControlValueAccessor
|
|
78
|
+
registerOnChange(fn) {
|
|
79
|
+
this.onChangeCallback = fn;
|
|
80
|
+
}
|
|
81
|
+
// implement by ControlValueAccessor
|
|
82
|
+
registerOnTouched(fn) {
|
|
83
|
+
this.onTouchedCallback = fn;
|
|
84
|
+
}
|
|
85
|
+
// implement by ControlValueAccessor
|
|
86
|
+
setDisabledState(isDisabled) {
|
|
87
|
+
this.isDisabled = isDisabled;
|
|
88
|
+
}
|
|
89
|
+
onFilePicked(event) {
|
|
90
|
+
this.handleReceivedFileEvent(event);
|
|
91
|
+
}
|
|
92
|
+
onFileDropped(event) {
|
|
93
|
+
this.handleReceivedFileEvent(event);
|
|
94
|
+
}
|
|
95
|
+
onRemoveFile(file) {
|
|
96
|
+
this.onTouchedCallback();
|
|
97
|
+
this.dragHover = false;
|
|
98
|
+
remove(this.fileValues, { name: file.name });
|
|
99
|
+
this.emitFileValue();
|
|
100
|
+
}
|
|
101
|
+
onTouched() {
|
|
102
|
+
this.onTouchedCallback();
|
|
103
|
+
this.dragHover = false;
|
|
104
|
+
}
|
|
105
|
+
onDragEnter($event) {
|
|
106
|
+
const el = $event.target;
|
|
107
|
+
if (el) {
|
|
108
|
+
this.dragHover = true;
|
|
109
|
+
this.onTouchedCallback();
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
onDragOver($event) {
|
|
113
|
+
const el = $event.target;
|
|
114
|
+
if (el) {
|
|
115
|
+
this.dragHover = false;
|
|
116
|
+
this.onTouchedCallback();
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
handleReceivedFileEvent(event) {
|
|
120
|
+
this.onTouchedCallback();
|
|
121
|
+
this.dragHover = false;
|
|
122
|
+
if (!this.multiple) {
|
|
123
|
+
this.fileValues = [];
|
|
124
|
+
}
|
|
125
|
+
this.fileValues.push({
|
|
126
|
+
name: event.name,
|
|
127
|
+
isNew: true,
|
|
128
|
+
dataUrl: event.content,
|
|
129
|
+
file: event.underlyingFile,
|
|
130
|
+
isImage: event.type.startsWith('image/'),
|
|
131
|
+
});
|
|
132
|
+
this.emitFileValue();
|
|
133
|
+
}
|
|
134
|
+
emitFileValue() {
|
|
135
|
+
this.onChangeCallback(this.fileValues.map(fileValue => fileValue.isNew ? new NewFile(fileValue.name, fileValue.dataUrl, fileValue.file) : fileValue.dataUrl));
|
|
136
|
+
}
|
|
137
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormFilePickerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
138
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.4", type: GioFormFilePickerComponent, isStandalone: false, selector: "gio-form-file-picker", inputs: { multiple: "multiple", accept: "accept", disabled: "disabled" }, ngImport: i0, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<ng-content select=\"gio-form-file-picker-label\"></ng-content>\n<div\n *ngIf=\"!isDisabled; else disabledTpl\"\n class=\"file-picker\"\n ngxFileDropzone\n [readMode]=\"readMode\"\n (fileDrop)=\"onFileDropped($event)\"\n (dragenter)=\"onDragEnter($event)\"\n (dragleave)=\"onDragOver($event)\"\n (blur)=\"dragHover = false\"\n>\n <div\n *ngIf=\"!isComplete\"\n class=\"file-picker__add-button\"\n [class.complete]=\"isComplete\"\n [class.error]=\"!isValid\"\n [class.drag-hover]=\"dragHover\"\n ngxFilePicker\n [accept]=\"accept\"\n [readMode]=\"readMode\"\n [multiple]=\"multiple\"\n (filePick)=\"onFilePicked($event)\"\n (click)=\"onTouched()\"\n >\n <div #addButton class=\"file-picker__add-button__content\"><ng-content select=\"gio-form-file-picker-add-button\"></ng-content></div>\n <gio-form-file-picker-add-button *ngIf=\"addButton.children.length === 0\"></gio-form-file-picker-add-button>\n </div>\n <div *ngFor=\"let fileValue of fileValues\" class=\"file-picker__preview\" [class.drag-hover]=\"dragHover\" [class.error]=\"!isValid\">\n <a class=\"file-picker__preview__delete\" (click)=\"onRemoveFile(fileValue)\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </a>\n\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: fileValue }\"></ng-container>\n </div>\n</div>\n\n<ng-template #disabledTpl>\n <div class=\"file-picker disabled\">\n <ng-container *ngIf=\"fileValues.length === 0\">\n <span class=\"file-picker__preview-empty disabled\">\n <gio-form-file-picker-empty\n *ngIf=\"previewEmpty.children.length === 0\"\n class=\"file-picker__preview-empty__default\"\n ></gio-form-file-picker-empty>\n <span #previewEmpty><ng-content select=\"gio-form-file-picker-empty\"></ng-content></span>\n </span>\n </ng-container>\n\n <div class=\"file-picker__preview disabled\" *ngFor=\"let fileValue of fileValues\">\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: fileValue }\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #filePreview let-fileValue=\"fileValue\">\n <div class=\"file-picker__preview__image\" *ngIf=\"fileValue.isImage\" [style.background-image]=\"'url(' + fileValue.dataUrl + ')'\"></div>\n <div class=\"file-picker__preview__file\" *ngIf=\"!fileValue.isImage\">\n <span class=\"file-picker__preview__file__name\">{{ fileValue.name }}</span>\n </div>\n</ng-template>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #ffc2ac);color:var(--gio-oem-palette--active-contrast, #1e1b1b)}:host{display:inline-flex;flex-direction:column}.file-picker{display:inline-flex;flex:1 1 auto;flex-flow:row wrap;justify-content:center;padding:4px 0;gap:8px}.file-picker__add-button{min-width:130px;min-height:130px;flex:1 1 auto;border:2px dashed #322f2f;border-radius:6px;margin:4px 0;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #ffa685;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px 0;border:none}.file-picker__add-button.error{border:2px dashed #dd1d1f}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px 0;border:2px solid #322f2f;border-radius:6px;margin:4px 0;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-items:center;place-content:center center;text-align:center;font-size:12px;font-weight:400;line-height:16px;font-family:Manrope,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font-size:12px;font-weight:400;line-height:16px;font-family:Manrope,sans-serif;letter-spacing:normal}.file-picker__preview__file__name,.file-picker__preview-empty__file__name{position:absolute;padding:4px;overflow-wrap:anywhere}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid rgba(0,0,0,.12)}.file-picker__preview.error{border:2px solid #dd1d1f}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f7f8b3;color:#1e1b1b;cursor:pointer}.file-picker__preview__delete:hover{color:#ff8a00}.file-picker__preview-empty__default{text-align:center}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.FileDropzoneDirective, selector: "[ngxFileDropzone]", outputs: ["fileDrop"], exportAs: ["ngxFileDropzone"] }, { kind: "directive", type: i3.FilePickerDirective, selector: "[ngxFilePicker]", inputs: ["accept", "multiple"], outputs: ["filePick"], exportAs: ["ngxFilePicker"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.GioFormFilePickerAddButtonComponent, selector: "gio-form-file-picker-add-button" }, { kind: "component", type: i6.GioFormFilePickerEmptyComponent, selector: "gio-form-file-picker-empty" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
139
|
+
}
|
|
140
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormFilePickerComponent, decorators: [{
|
|
141
|
+
type: Component,
|
|
142
|
+
args: [{ selector: 'gio-form-file-picker', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<!--\n\n Copyright (C) 2015 The Gravitee team (http://gravitee.io)\n \n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n \n http://www.apache.org/licenses/LICENSE-2.0\n \n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n-->\n<ng-content select=\"gio-form-file-picker-label\"></ng-content>\n<div\n *ngIf=\"!isDisabled; else disabledTpl\"\n class=\"file-picker\"\n ngxFileDropzone\n [readMode]=\"readMode\"\n (fileDrop)=\"onFileDropped($event)\"\n (dragenter)=\"onDragEnter($event)\"\n (dragleave)=\"onDragOver($event)\"\n (blur)=\"dragHover = false\"\n>\n <div\n *ngIf=\"!isComplete\"\n class=\"file-picker__add-button\"\n [class.complete]=\"isComplete\"\n [class.error]=\"!isValid\"\n [class.drag-hover]=\"dragHover\"\n ngxFilePicker\n [accept]=\"accept\"\n [readMode]=\"readMode\"\n [multiple]=\"multiple\"\n (filePick)=\"onFilePicked($event)\"\n (click)=\"onTouched()\"\n >\n <div #addButton class=\"file-picker__add-button__content\"><ng-content select=\"gio-form-file-picker-add-button\"></ng-content></div>\n <gio-form-file-picker-add-button *ngIf=\"addButton.children.length === 0\"></gio-form-file-picker-add-button>\n </div>\n <div *ngFor=\"let fileValue of fileValues\" class=\"file-picker__preview\" [class.drag-hover]=\"dragHover\" [class.error]=\"!isValid\">\n <a class=\"file-picker__preview__delete\" (click)=\"onRemoveFile(fileValue)\">\n <mat-icon svgIcon=\"gio:cancel\"></mat-icon>\n </a>\n\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: fileValue }\"></ng-container>\n </div>\n</div>\n\n<ng-template #disabledTpl>\n <div class=\"file-picker disabled\">\n <ng-container *ngIf=\"fileValues.length === 0\">\n <span class=\"file-picker__preview-empty disabled\">\n <gio-form-file-picker-empty\n *ngIf=\"previewEmpty.children.length === 0\"\n class=\"file-picker__preview-empty__default\"\n ></gio-form-file-picker-empty>\n <span #previewEmpty><ng-content select=\"gio-form-file-picker-empty\"></ng-content></span>\n </span>\n </ng-container>\n\n <div class=\"file-picker__preview disabled\" *ngFor=\"let fileValue of fileValues\">\n <ng-container *ngTemplateOutlet=\"filePreview; context: { fileValue: fileValue }\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #filePreview let-fileValue=\"fileValue\">\n <div class=\"file-picker__preview__image\" *ngIf=\"fileValue.isImage\" [style.background-image]=\"'url(' + fileValue.dataUrl + ')'\"></div>\n <div class=\"file-picker__preview__file\" *ngIf=\"!fileValue.isImage\">\n <span class=\"file-picker__preview__file__name\">{{ fileValue.name }}</span>\n </div>\n</ng-template>\n", styles: ["@charset \"UTF-8\";.gio-top-bar-menu .gio-badge-accent{background-color:var(--gio-oem-palette--active, #ffc2ac);color:var(--gio-oem-palette--active-contrast, #1e1b1b)}:host{display:inline-flex;flex-direction:column}.file-picker{display:inline-flex;flex:1 1 auto;flex-flow:row wrap;justify-content:center;padding:4px 0;gap:8px}.file-picker__add-button{min-width:130px;min-height:130px;flex:1 1 auto;border:2px dashed #322f2f;border-radius:6px;margin:4px 0;cursor:pointer}.file-picker__add-button:hover,.file-picker__add-button.drag-hover{border:2px dashed #ffa685;background-color:#0000000a}.file-picker__add-button.drag-hover{pointer-events:none}.file-picker__add-button.complete{padding:6px 0;border:none}.file-picker__add-button.error{border:2px dashed #dd1d1f}.file-picker__preview,.file-picker__preview-empty{position:relative;display:flex;min-width:130px;min-height:130px;flex:0 0 130px;flex-flow:column nowrap;justify-content:space-between;padding:6px 0;border:2px solid #322f2f;border-radius:6px;margin:4px 0;inline-size:fit-content}.file-picker__preview.drag-hover,.file-picker__preview-empty.drag-hover{pointer-events:none}.file-picker__preview__image,.file-picker__preview-empty__image{width:100%;height:100%;background-position-x:center;background-position-y:center;background-repeat:no-repeat;background-size:contain}.file-picker__preview__file,.file-picker__preview-empty__file{display:flex;flex:1 1 auto;flex-direction:column;align-items:center;place-content:center center;text-align:center;font-size:12px;font-weight:400;line-height:16px;font-family:Manrope,sans-serif;letter-spacing:normal}.file-picker__preview__file code,.file-picker__preview-empty__file code{font-size:12px;font-weight:400;line-height:16px;font-family:Manrope,sans-serif;letter-spacing:normal}.file-picker__preview__file__name,.file-picker__preview-empty__file__name{position:absolute;padding:4px;overflow-wrap:anywhere}.file-picker__preview.disabled,.file-picker__preview-empty.disabled{border:2px solid rgba(0,0,0,.12)}.file-picker__preview.error{border:2px solid #dd1d1f}.file-picker__preview__delete{position:absolute;z-index:200;top:0;right:0;width:24px;height:24px;border-radius:3px;background-color:#f7f7f8b3;color:#1e1b1b;cursor:pointer}.file-picker__preview__delete:hover{color:#ff8a00}.file-picker__preview-empty__default{text-align:center}\n"] }]
|
|
143
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.NgControl, decorators: [{
|
|
144
|
+
type: Self
|
|
145
|
+
}, {
|
|
146
|
+
type: Optional
|
|
147
|
+
}] }], propDecorators: { multiple: [{
|
|
148
|
+
type: Input
|
|
149
|
+
}], accept: [{
|
|
150
|
+
type: Input
|
|
151
|
+
}], disabled: [{
|
|
152
|
+
type: Input
|
|
153
|
+
}] } });
|
|
154
|
+
const isImgUrl = (url) => {
|
|
155
|
+
try {
|
|
156
|
+
const img = new Image();
|
|
157
|
+
img.src = url;
|
|
158
|
+
return new Promise(resolve => {
|
|
159
|
+
img.onerror = () => resolve(false);
|
|
160
|
+
img.onload = () => resolve(true);
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
catch (error) {
|
|
164
|
+
return Promise.resolve(false);
|
|
165
|
+
}
|
|
166
|
+
};
|
|
167
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWZvcm0tZmlsZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktcGFydGljbGVzLWFuZ3VsYXIvc3JjL2xpYi9naW8tZm9ybS1maWxlLXBpY2tlci9naW8tZm9ybS1maWxlLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1mb3JtLWZpbGUtcGlja2VyL2dpby1mb3JtLWZpbGUtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUFFLHVCQUF1QixFQUFxQixTQUFTLEVBQUUsS0FBSyxFQUFVLFFBQVEsRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckgsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ2hELE9BQU8sRUFBWSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7Ozs7OztBQWlCdkQsTUFBTSxPQUFPLDBCQUEwQjtJQU9yQyxJQUNXLFFBQVEsQ0FBQyxRQUFpQjtRQUNuQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQVlELFlBQ1UsaUJBQW9DLEVBQ2pCLFNBQXFCO1FBRHhDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDakIsY0FBUyxHQUFULFNBQVMsQ0FBWTtRQXRCM0MsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUdqQixXQUFNLEdBQUcsR0FBRyxDQUFDO1FBT2IsZUFBVSxHQUFnQixFQUFFLENBQUM7UUFDN0IsYUFBUSxHQUFhLFFBQVEsQ0FBQyxPQUFPLENBQUM7UUFDdEMsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBRTFCLGdFQUFnRTtRQUN4RCxxQkFBZ0IsR0FBMEMsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQzNFLGdFQUFnRTtRQUN4RCxzQkFBaUIsR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFNbkMsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUNkLHdEQUF3RDtZQUN4RCw4RUFBOEU7WUFDOUUsU0FBUyxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7UUFDakMsQ0FBQztJQUNILENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDbkQsbUpBQW1KO1lBQ25KLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNsRyxDQUFDO0lBQ0gsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNuQixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQztJQUNuRSxDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7SUFDNUUsQ0FBQztJQUVELG9DQUFvQztJQUM3QixLQUFLLENBQUMsVUFBVSxDQUFDLE1BQWlCO1FBQ3ZDLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDdEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7WUFDckIsT0FBTyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDM0IsQ0FBQztRQUVELElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUNqQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBQyxLQUFLLEVBQUMsRUFBRSxDQUFDLENBQUM7WUFDekIsS0FBSyxFQUFFLEtBQUs7WUFDWixJQUFJLEVBQUUsS0FBSztZQUNYLE9BQU8sRUFBRSxLQUFLO1lBQ2QsT0FBTyxFQUFFLE1BQU0sUUFBUSxDQUFDLEtBQUssQ0FBQztTQUMvQixDQUFDLENBQUMsQ0FDSixDQUFDO1FBQ0YsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxvQ0FBb0M7SUFDN0IsZ0JBQWdCLENBQUMsRUFBd0I7UUFDOUMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsb0NBQW9DO0lBQzdCLGlCQUFpQixDQUFDLEVBQWM7UUFDckMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsb0NBQW9DO0lBQzdCLGdCQUFnQixDQUFDLFVBQW1CO1FBQ3pDLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFFTSxZQUFZLENBQUMsS0FBZTtRQUNqQyxJQUFJLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVNLGFBQWEsQ0FBQyxLQUFlO1FBQ2xDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRU0sWUFBWSxDQUFDLElBQWU7UUFDakMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFFdkIsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFFN0MsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxTQUFTO1FBQ2QsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDekIsQ0FBQztJQUVNLFdBQVcsQ0FBQyxNQUFpQjtRQUNsQyxNQUFNLEVBQUUsR0FBRyxNQUFNLENBQUMsTUFBNEIsQ0FBQztRQUMvQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ1AsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7WUFDdEIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDM0IsQ0FBQztJQUNILENBQUM7SUFFTSxVQUFVLENBQUMsTUFBaUI7UUFDakMsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLE1BQTRCLENBQUM7UUFFL0MsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUNQLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQzNCLENBQUM7SUFDSCxDQUFDO0lBRU8sdUJBQXVCLENBQUMsS0FBZTtRQUM3QyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUV6QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUV2QixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLENBQUM7UUFFRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztZQUNuQixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7WUFDaEIsS0FBSyxFQUFFLElBQUk7WUFDWCxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87WUFDdEIsSUFBSSxFQUFFLEtBQUssQ0FBQyxjQUFjO1lBQzFCLE9BQU8sRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUM7U0FDekMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFTyxhQUFhO1FBQ25CLElBQUksQ0FBQyxnQkFBZ0IsQ0FDbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FDOUIsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FDckcsQ0FDRixDQUFDO0lBQ0osQ0FBQzs4R0FsSlUsMEJBQTBCO2tHQUExQiwwQkFBMEIsMkpDdEN2QyxtbUdBNkVBOzsyRkR2Q2EsMEJBQTBCO2tCQVB0QyxTQUFTOytCQUNFLHNCQUFzQixtQkFHZix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLEtBQUs7OzBCQTBCZCxJQUFJOzswQkFBSSxRQUFRO3lDQXRCWixRQUFRO3NCQURkLEtBQUs7Z0JBSUMsTUFBTTtzQkFEWixLQUFLO2dCQUlLLFFBQVE7c0JBRGxCLEtBQUs7O0FBOElSLE1BQU0sUUFBUSxHQUFHLENBQUMsR0FBVyxFQUFvQixFQUFFO0lBQ2pELElBQUksQ0FBQztRQUNILE1BQU0sR0FBRyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7UUFDeEIsR0FBRyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZCxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQzNCLEdBQUcsQ0FBQyxPQUFPLEdBQUcsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ25DLEdBQUcsQ0FBQyxNQUFNLEdBQUcsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7UUFDZixPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsQ0FBQztBQUNILENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgT3B0aW9uYWwsIFNlbGYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBpc0FycmF5LCBpc05pbCwgcmVtb3ZlIH0gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IFJlYWRGaWxlLCBSZWFkTW9kZSB9IGZyb20gJ25neC1maWxlLWhlbHBlcnMnO1xuaW1wb3J0IHsgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBOZXdGaWxlIH0gZnJvbSAnLi9naW8tZm9ybS1maWxlLXBpY2tlci5tb2RlbCc7XG5cbnR5cGUgRmlsZVZhbHVlID0ge1xuICBuYW1lOiBzdHJpbmc7XG4gIGlzTmV3OiBib29sZWFuO1xuICBkYXRhVXJsOiBzdHJpbmc7XG4gIGZpbGU/OiBGaWxlO1xuICBpc0ltYWdlOiBib29sZWFuO1xufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ2lvLWZvcm0tZmlsZS1waWNrZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZ2lvLWZvcm0tZmlsZS1waWNrZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9naW8tZm9ybS1maWxlLXBpY2tlci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIEdpb0Zvcm1GaWxlUGlja2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtdWx0aXBsZSA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhY2NlcHQgPSAnKic7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBkaXNhYmxlZChkaXNhYmxlZDogYm9vbGVhbikge1xuICAgIHRoaXMuc2V0RGlzYWJsZWRTdGF0ZShkaXNhYmxlZCk7XG4gIH1cblxuICBwdWJsaWMgZmlsZVZhbHVlczogRmlsZVZhbHVlW10gPSBbXTtcbiAgcHVibGljIHJlYWRNb2RlOiBSZWFkTW9kZSA9IFJlYWRNb2RlLkRhdGFVUkw7XG4gIHB1YmxpYyBkcmFnSG92ZXIgPSBmYWxzZTtcbiAgcHVibGljIGlzRGlzYWJsZWQgPSBmYWxzZTtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIHByaXZhdGUgb25DaGFuZ2VDYWxsYmFjazogKGZpbGVzOiAoc3RyaW5nIHwgTmV3RmlsZSlbXSkgPT4gdm9pZCA9ICgpID0+IHt9O1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG4gIHByaXZhdGUgb25Ub3VjaGVkQ2FsbGJhY2sgPSAoKSA9PiB7fTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBAU2VsZigpIEBPcHRpb25hbCgpIHB1YmxpYyBuZ0NvbnRyb2w/OiBOZ0NvbnRyb2wsXG4gICkge1xuICAgIGlmIChuZ0NvbnRyb2wpIHtcbiAgICAgIC8vIFNldHRpbmcgdGhlIHZhbHVlIGFjY2Vzc29yIGRpcmVjdGx5IChpbnN0ZWFkIG9mIHVzaW5nXG4gICAgICAvLyB0aGUgcHJvdmlkZXJzIGBOR19WQUxVRV9BQ0NFU1NPUmApIHRvIGF2b2lkIHJ1bm5pbmcgaW50byBhIGNpcmN1bGFyIGltcG9ydC5cbiAgICAgIG5nQ29udHJvbC52YWx1ZUFjY2Vzc29yID0gdGhpcztcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubmdDb250cm9sICYmIHRoaXMubmdDb250cm9sLnN0YXR1c0NoYW5nZXMpIHtcbiAgICAgIC8vIEFzIHRoZSBjaGFuZ2UgZGV0ZWN0aW9uIGlzIE9uUHVzaCB3ZSBoYXZlIHRvIG1hcmtGb3JDaGVjayB0aGUgY29tcG9uZW50IGFmdGVyIGEgdmFsaWRhdGlvbiBjaGFuZ2UgYmVjYXVzZSBubyBpbnB1dC9vdXRwdXQgb3IgdmFsdWVzIGhhdmUgY2hhbmdlZFxuICAgICAgdGhpcy5uZ0NvbnRyb2wuc3RhdHVzQ2hhbmdlcy5waXBlKHRhcCgoKSA9PiB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpKSkuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBpc0NvbXBsZXRlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAoIXRoaXMubXVsdGlwbGUgJiYgdGhpcy5maWxlVmFsdWVzLmxlbmd0aCA9PT0gMSkgfHwgZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzVmFsaWQoKTogYm9vbGVhbiB8IG51bGwge1xuICAgIHJldHVybiAhdGhpcy5uZ0NvbnRyb2wgfHwgIXRoaXMubmdDb250cm9sLnRvdWNoZWQgfHwgdGhpcy5uZ0NvbnRyb2wudmFsaWQ7XG4gIH1cblxuICAvLyBpbXBsZW1lbnQgYnkgQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgcHVibGljIGFzeW5jIHdyaXRlVmFsdWUoaW5wdXRzPzogc3RyaW5nW10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoaXNOaWwoaW5wdXRzKSB8fCAhaXNBcnJheShpbnB1dHMpKSB7XG4gICAgICB0aGlzLmZpbGVWYWx1ZXMgPSBbXTtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICB9XG5cbiAgICB0aGlzLmZpbGVWYWx1ZXMgPSBhd2FpdCBQcm9taXNlLmFsbChcbiAgICAgIGlucHV0cy5tYXAoYXN5bmMgaW5wdXQgPT4gKHtcbiAgICAgICAgaXNOZXc6IGZhbHNlLFxuICAgICAgICBuYW1lOiBpbnB1dCxcbiAgICAgICAgZGF0YVVybDogaW5wdXQsXG4gICAgICAgIGlzSW1hZ2U6IGF3YWl0IGlzSW1nVXJsKGlucHV0KSxcbiAgICAgIH0pKSxcbiAgICApO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICAvLyBpbXBsZW1lbnQgYnkgQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2OiB1bmtub3duKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrID0gZm47XG4gIH1cblxuICAvLyBpbXBsZW1lbnQgYnkgQ29udHJvbFZhbHVlQWNjZXNzb3JcbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWRDYWxsYmFjayA9IGZuO1xuICB9XG5cbiAgLy8gaW1wbGVtZW50IGJ5IENvbnRyb2xWYWx1ZUFjY2Vzc29yXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmlzRGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG5cbiAgcHVibGljIG9uRmlsZVBpY2tlZChldmVudDogUmVhZEZpbGUpOiB2b2lkIHtcbiAgICB0aGlzLmhhbmRsZVJlY2VpdmVkRmlsZUV2ZW50KGV2ZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBvbkZpbGVEcm9wcGVkKGV2ZW50OiBSZWFkRmlsZSk6IHZvaWQge1xuICAgIHRoaXMuaGFuZGxlUmVjZWl2ZWRGaWxlRXZlbnQoZXZlbnQpO1xuICB9XG5cbiAgcHVibGljIG9uUmVtb3ZlRmlsZShmaWxlOiBGaWxlVmFsdWUpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrKCk7XG4gICAgdGhpcy5kcmFnSG92ZXIgPSBmYWxzZTtcblxuICAgIHJlbW92ZSh0aGlzLmZpbGVWYWx1ZXMsIHsgbmFtZTogZmlsZS5uYW1lIH0pO1xuXG4gICAgdGhpcy5lbWl0RmlsZVZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgb25Ub3VjaGVkKCk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2soKTtcbiAgICB0aGlzLmRyYWdIb3ZlciA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIG9uRHJhZ0VudGVyKCRldmVudDogRHJhZ0V2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgZWwgPSAkZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50IHwgbnVsbDtcbiAgICBpZiAoZWwpIHtcbiAgICAgIHRoaXMuZHJhZ0hvdmVyID0gdHJ1ZTtcbiAgICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2soKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25EcmFnT3ZlcigkZXZlbnQ6IERyYWdFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGVsID0gJGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCB8IG51bGw7XG5cbiAgICBpZiAoZWwpIHtcbiAgICAgIHRoaXMuZHJhZ0hvdmVyID0gZmFsc2U7XG4gICAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVSZWNlaXZlZEZpbGVFdmVudChldmVudDogUmVhZEZpbGUpIHtcbiAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrKCk7XG5cbiAgICB0aGlzLmRyYWdIb3ZlciA9IGZhbHNlO1xuXG4gICAgaWYgKCF0aGlzLm11bHRpcGxlKSB7XG4gICAgICB0aGlzLmZpbGVWYWx1ZXMgPSBbXTtcbiAgICB9XG5cbiAgICB0aGlzLmZpbGVWYWx1ZXMucHVzaCh7XG4gICAgICBuYW1lOiBldmVudC5uYW1lLFxuICAgICAgaXNOZXc6IHRydWUsXG4gICAgICBkYXRhVXJsOiBldmVudC5jb250ZW50LFxuICAgICAgZmlsZTogZXZlbnQudW5kZXJseWluZ0ZpbGUsXG4gICAgICBpc0ltYWdlOiBldmVudC50eXBlLnN0YXJ0c1dpdGgoJ2ltYWdlLycpLFxuICAgIH0pO1xuXG4gICAgdGhpcy5lbWl0RmlsZVZhbHVlKCk7XG4gIH1cblxuICBwcml2YXRlIGVtaXRGaWxlVmFsdWUoKSB7XG4gICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrKFxuICAgICAgdGhpcy5maWxlVmFsdWVzLm1hcChmaWxlVmFsdWUgPT5cbiAgICAgICAgZmlsZVZhbHVlLmlzTmV3ID8gbmV3IE5ld0ZpbGUoZmlsZVZhbHVlLm5hbWUsIGZpbGVWYWx1ZS5kYXRhVXJsLCBmaWxlVmFsdWUuZmlsZSkgOiBmaWxlVmFsdWUuZGF0YVVybCxcbiAgICAgICksXG4gICAgKTtcbiAgfVxufVxuXG5jb25zdCBpc0ltZ1VybCA9ICh1cmw6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4gPT4ge1xuICB0cnkge1xuICAgIGNvbnN0IGltZyA9IG5ldyBJbWFnZSgpO1xuICAgIGltZy5zcmMgPSB1cmw7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xuICAgICAgaW1nLm9uZXJyb3IgPSAoKSA9PiByZXNvbHZlKGZhbHNlKTtcbiAgICAgIGltZy5vbmxvYWQgPSAoKSA9PiByZXNvbHZlKHRydWUpO1xuICAgIH0pO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoZmFsc2UpO1xuICB9XG59O1xuIiwiPCEtLVxuXG4gICAgQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gICAgXG4gICAgTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAgICB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gICAgWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gICAgXG4gICAgICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAgICBcbiAgICBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gICAgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICAgIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICAgIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAgICBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cblxuLS0+XG48bmctY29udGVudCBzZWxlY3Q9XCJnaW8tZm9ybS1maWxlLXBpY2tlci1sYWJlbFwiPjwvbmctY29udGVudD5cbjxkaXZcbiAgKm5nSWY9XCIhaXNEaXNhYmxlZDsgZWxzZSBkaXNhYmxlZFRwbFwiXG4gIGNsYXNzPVwiZmlsZS1waWNrZXJcIlxuICBuZ3hGaWxlRHJvcHpvbmVcbiAgW3JlYWRNb2RlXT1cInJlYWRNb2RlXCJcbiAgKGZpbGVEcm9wKT1cIm9uRmlsZURyb3BwZWQoJGV2ZW50KVwiXG4gIChkcmFnZW50ZXIpPVwib25EcmFnRW50ZXIoJGV2ZW50KVwiXG4gIChkcmFnbGVhdmUpPVwib25EcmFnT3ZlcigkZXZlbnQpXCJcbiAgKGJsdXIpPVwiZHJhZ0hvdmVyID0gZmFsc2VcIlxuPlxuICA8ZGl2XG4gICAgKm5nSWY9XCIhaXNDb21wbGV0ZVwiXG4gICAgY2xhc3M9XCJmaWxlLXBpY2tlcl9fYWRkLWJ1dHRvblwiXG4gICAgW2NsYXNzLmNvbXBsZXRlXT1cImlzQ29tcGxldGVcIlxuICAgIFtjbGFzcy5lcnJvcl09XCIhaXNWYWxpZFwiXG4gICAgW2NsYXNzLmRyYWctaG92ZXJdPVwiZHJhZ0hvdmVyXCJcbiAgICBuZ3hGaWxlUGlja2VyXG4gICAgW2FjY2VwdF09XCJhY2NlcHRcIlxuICAgIFtyZWFkTW9kZV09XCJyZWFkTW9kZVwiXG4gICAgW211bHRpcGxlXT1cIm11bHRpcGxlXCJcbiAgICAoZmlsZVBpY2spPVwib25GaWxlUGlja2VkKCRldmVudClcIlxuICAgIChjbGljayk9XCJvblRvdWNoZWQoKVwiXG4gID5cbiAgICA8ZGl2ICNhZGRCdXR0b24gY2xhc3M9XCJmaWxlLXBpY2tlcl9fYWRkLWJ1dHRvbl9fY29udGVudFwiPjxuZy1jb250ZW50IHNlbGVjdD1cImdpby1mb3JtLWZpbGUtcGlja2VyLWFkZC1idXR0b25cIj48L25nLWNvbnRlbnQ+PC9kaXY+XG4gICAgPGdpby1mb3JtLWZpbGUtcGlja2VyLWFkZC1idXR0b24gKm5nSWY9XCJhZGRCdXR0b24uY2hpbGRyZW4ubGVuZ3RoID09PSAwXCI+PC9naW8tZm9ybS1maWxlLXBpY2tlci1hZGQtYnV0dG9uPlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdGb3I9XCJsZXQgZmlsZVZhbHVlIG9mIGZpbGVWYWx1ZXNcIiBjbGFzcz1cImZpbGUtcGlja2VyX19wcmV2aWV3XCIgW2NsYXNzLmRyYWctaG92ZXJdPVwiZHJhZ0hvdmVyXCIgW2NsYXNzLmVycm9yXT1cIiFpc1ZhbGlkXCI+XG4gICAgPGEgY2xhc3M9XCJmaWxlLXBpY2tlcl9fcHJldmlld19fZGVsZXRlXCIgKGNsaWNrKT1cIm9uUmVtb3ZlRmlsZShmaWxlVmFsdWUpXCI+XG4gICAgICA8bWF0LWljb24gc3ZnSWNvbj1cImdpbzpjYW5jZWxcIj48L21hdC1pY29uPlxuICAgIDwvYT5cblxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmaWxlUHJldmlldzsgY29udGV4dDogeyBmaWxlVmFsdWU6IGZpbGVWYWx1ZSB9XCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjZGlzYWJsZWRUcGw+XG4gIDxkaXYgY2xhc3M9XCJmaWxlLXBpY2tlciBkaXNhYmxlZFwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmaWxlVmFsdWVzLmxlbmd0aCA9PT0gMFwiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJmaWxlLXBpY2tlcl9fcHJldmlldy1lbXB0eSBkaXNhYmxlZFwiPlxuICAgICAgICA8Z2lvLWZvcm0tZmlsZS1waWNrZXItZW1wdHlcbiAgICAgICAgICAqbmdJZj1cInByZXZpZXdFbXB0eS5jaGlsZHJlbi5sZW5ndGggPT09IDBcIlxuICAgICAgICAgIGNsYXNzPVwiZmlsZS1waWNrZXJfX3ByZXZpZXctZW1wdHlfX2RlZmF1bHRcIlxuICAgICAgICA+PC9naW8tZm9ybS1maWxlLXBpY2tlci1lbXB0eT5cbiAgICAgICAgPHNwYW4gI3ByZXZpZXdFbXB0eT48bmctY29udGVudCBzZWxlY3Q9XCJnaW8tZm9ybS1maWxlLXBpY2tlci1lbXB0eVwiPjwvbmctY29udGVudD48L3NwYW4+XG4gICAgICA8L3NwYW4+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZmlsZS1waWNrZXJfX3ByZXZpZXcgZGlzYWJsZWRcIiAqbmdGb3I9XCJsZXQgZmlsZVZhbHVlIG9mIGZpbGVWYWx1ZXNcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmaWxlUHJldmlldzsgY29udGV4dDogeyBmaWxlVmFsdWU6IGZpbGVWYWx1ZSB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNmaWxlUHJldmlldyBsZXQtZmlsZVZhbHVlPVwiZmlsZVZhbHVlXCI+XG4gIDxkaXYgY2xhc3M9XCJmaWxlLXBpY2tlcl9fcHJldmlld19faW1hZ2VcIiAqbmdJZj1cImZpbGVWYWx1ZS5pc0ltYWdlXCIgW3N0eWxlLmJhY2tncm91bmQtaW1hZ2VdPVwiJ3VybCgnICsgZmlsZVZhbHVlLmRhdGFVcmwgKyAnKSdcIj48L2Rpdj5cbiAgPGRpdiBjbGFzcz1cImZpbGUtcGlja2VyX19wcmV2aWV3X19maWxlXCIgKm5nSWY9XCIhZmlsZVZhbHVlLmlzSW1hZ2VcIj5cbiAgICA8c3BhbiBjbGFzcz1cImZpbGUtcGlja2VyX19wcmV2aWV3X19maWxlX19uYW1lXCI+e3sgZmlsZVZhbHVlLm5hbWUgfX08L3NwYW4+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (C) 2015 The Gravitee team (http://gravitee.io)
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
export class NewFile {
|
|
17
|
+
constructor(name, dataUrl, file) {
|
|
18
|
+
this.name = name;
|
|
19
|
+
this.dataUrl = dataUrl;
|
|
20
|
+
this.file = file;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWZvcm0tZmlsZS1waWNrZXIubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1mb3JtLWZpbGUtcGlja2VyL2dpby1mb3JtLWZpbGUtcGlja2VyLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBRUgsTUFBTSxPQUFPLE9BQU87SUFDbEIsWUFDa0IsSUFBWSxFQUNaLE9BQWUsRUFDZixJQUFXO1FBRlgsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZixTQUFJLEdBQUosSUFBSSxDQUFPO0lBQzFCLENBQUM7Q0FDTCIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmV4cG9ydCBjbGFzcyBOZXdGaWxlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IG5hbWU6IHN0cmluZyxcbiAgICBwdWJsaWMgcmVhZG9ubHkgZGF0YVVybDogc3RyaW5nLFxuICAgIHB1YmxpYyByZWFkb25seSBmaWxlPzogRmlsZSxcbiAgKSB7fVxufVxuIl19
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (C) 2015 The Gravitee team (http://gravitee.io)
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import { CommonModule } from '@angular/common';
|
|
17
|
+
import { NgModule } from '@angular/core';
|
|
18
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
19
|
+
import { MatRippleModule } from '@angular/material/core';
|
|
20
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
21
|
+
import { NgxFileHelpersModule } from 'ngx-file-helpers';
|
|
22
|
+
import { GioIconsModule } from '../gio-icons/gio-icons.module';
|
|
23
|
+
import { GioFormFilePickerAddButtonComponent } from './gio-form-file-picker-add-button/gio-form-file-picker-add-button.component';
|
|
24
|
+
import { GioFormFilePickerEmptyComponent } from './gio-form-file-picker-empty/gio-form-file-picker-empty.component';
|
|
25
|
+
import { GioFormFilePickerLabelComponent } from './gio-form-file-picker-label/gio-form-file-picker-label.component';
|
|
26
|
+
import { GioFormFilePickerComponent } from './gio-form-file-picker.component';
|
|
27
|
+
import * as i0 from "@angular/core";
|
|
28
|
+
export class GioFormFilePickerModule {
|
|
29
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormFilePickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
30
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.4", ngImport: i0, type: GioFormFilePickerModule, declarations: [GioFormFilePickerComponent,
|
|
31
|
+
GioFormFilePickerAddButtonComponent,
|
|
32
|
+
GioFormFilePickerEmptyComponent,
|
|
33
|
+
GioFormFilePickerLabelComponent], imports: [CommonModule, ReactiveFormsModule, NgxFileHelpersModule, MatRippleModule, MatIconModule, GioIconsModule], exports: [GioFormFilePickerComponent,
|
|
34
|
+
GioFormFilePickerAddButtonComponent,
|
|
35
|
+
GioFormFilePickerEmptyComponent,
|
|
36
|
+
GioFormFilePickerLabelComponent] }); }
|
|
37
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormFilePickerModule, imports: [CommonModule, ReactiveFormsModule, NgxFileHelpersModule, MatRippleModule, MatIconModule, GioIconsModule] }); }
|
|
38
|
+
}
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormFilePickerModule, decorators: [{
|
|
40
|
+
type: NgModule,
|
|
41
|
+
args: [{
|
|
42
|
+
declarations: [
|
|
43
|
+
GioFormFilePickerComponent,
|
|
44
|
+
GioFormFilePickerAddButtonComponent,
|
|
45
|
+
GioFormFilePickerEmptyComponent,
|
|
46
|
+
GioFormFilePickerLabelComponent,
|
|
47
|
+
],
|
|
48
|
+
exports: [
|
|
49
|
+
GioFormFilePickerComponent,
|
|
50
|
+
GioFormFilePickerAddButtonComponent,
|
|
51
|
+
GioFormFilePickerEmptyComponent,
|
|
52
|
+
GioFormFilePickerLabelComponent,
|
|
53
|
+
],
|
|
54
|
+
imports: [CommonModule, ReactiveFormsModule, NgxFileHelpersModule, MatRippleModule, MatIconModule, GioIconsModule],
|
|
55
|
+
}]
|
|
56
|
+
}] });
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWZvcm0tZmlsZS1waWNrZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktcGFydGljbGVzLWFuZ3VsYXIvc3JjL2xpYi9naW8tZm9ybS1maWxlLXBpY2tlci9naW8tZm9ybS1maWxlLXBpY2tlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRXhELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUUvRCxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSw2RUFBNkUsQ0FBQztBQUNsSSxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUNwSCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxtRUFBbUUsQ0FBQztBQUNwSCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFpQjlFLE1BQU0sT0FBTyx1QkFBdUI7OEdBQXZCLHVCQUF1QjsrR0FBdkIsdUJBQXVCLGlCQWJoQywwQkFBMEI7WUFDMUIsbUNBQW1DO1lBQ25DLCtCQUErQjtZQUMvQiwrQkFBK0IsYUFRdkIsWUFBWSxFQUFFLG1CQUFtQixFQUFFLG9CQUFvQixFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsY0FBYyxhQUwvRywwQkFBMEI7WUFDMUIsbUNBQW1DO1lBQ25DLCtCQUErQjtZQUMvQiwrQkFBK0I7K0dBSXRCLHVCQUF1QixZQUZ4QixZQUFZLEVBQUUsbUJBQW1CLEVBQUUsb0JBQW9CLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxjQUFjOzsyRkFFdEcsdUJBQXVCO2tCQWZuQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWiwwQkFBMEI7d0JBQzFCLG1DQUFtQzt3QkFDbkMsK0JBQStCO3dCQUMvQiwrQkFBK0I7cUJBQ2hDO29CQUNELE9BQU8sRUFBRTt3QkFDUCwwQkFBMEI7d0JBQzFCLG1DQUFtQzt3QkFDbkMsK0JBQStCO3dCQUMvQiwrQkFBK0I7cUJBQ2hDO29CQUNELE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxvQkFBb0IsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLGNBQWMsQ0FBQztpQkFDbkgiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0UmlwcGxlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBOZ3hGaWxlSGVscGVyc01vZHVsZSB9IGZyb20gJ25neC1maWxlLWhlbHBlcnMnO1xuXG5pbXBvcnQgeyBHaW9JY29uc01vZHVsZSB9IGZyb20gJy4uL2dpby1pY29ucy9naW8taWNvbnMubW9kdWxlJztcblxuaW1wb3J0IHsgR2lvRm9ybUZpbGVQaWNrZXJBZGRCdXR0b25Db21wb25lbnQgfSBmcm9tICcuL2dpby1mb3JtLWZpbGUtcGlja2VyLWFkZC1idXR0b24vZ2lvLWZvcm0tZmlsZS1waWNrZXItYWRkLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgR2lvRm9ybUZpbGVQaWNrZXJFbXB0eUNvbXBvbmVudCB9IGZyb20gJy4vZ2lvLWZvcm0tZmlsZS1waWNrZXItZW1wdHkvZ2lvLWZvcm0tZmlsZS1waWNrZXItZW1wdHkuY29tcG9uZW50JztcbmltcG9ydCB7IEdpb0Zvcm1GaWxlUGlja2VyTGFiZWxDb21wb25lbnQgfSBmcm9tICcuL2dpby1mb3JtLWZpbGUtcGlja2VyLWxhYmVsL2dpby1mb3JtLWZpbGUtcGlja2VyLWxhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHaW9Gb3JtRmlsZVBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vZ2lvLWZvcm0tZmlsZS1waWNrZXIuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgR2lvRm9ybUZpbGVQaWNrZXJDb21wb25lbnQsXG4gICAgR2lvRm9ybUZpbGVQaWNrZXJBZGRCdXR0b25Db21wb25lbnQsXG4gICAgR2lvRm9ybUZpbGVQaWNrZXJFbXB0eUNvbXBvbmVudCxcbiAgICBHaW9Gb3JtRmlsZVBpY2tlckxhYmVsQ29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgR2lvRm9ybUZpbGVQaWNrZXJDb21wb25lbnQsXG4gICAgR2lvRm9ybUZpbGVQaWNrZXJBZGRCdXR0b25Db21wb25lbnQsXG4gICAgR2lvRm9ybUZpbGVQaWNrZXJFbXB0eUNvbXBvbmVudCxcbiAgICBHaW9Gb3JtRmlsZVBpY2tlckxhYmVsQ29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBOZ3hGaWxlSGVscGVyc01vZHVsZSwgTWF0UmlwcGxlTW9kdWxlLCBNYXRJY29uTW9kdWxlLCBHaW9JY29uc01vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIEdpb0Zvcm1GaWxlUGlja2VyTW9kdWxlIHt9XG4iXX0=
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (C) 2015 The Gravitee team (http://gravitee.io)
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
export * from './gio-form-file-picker.module';
|
|
17
|
+
export * from './gio-form-file-picker.component';
|
|
18
|
+
export * from './gio-form-file-picker.model';
|
|
19
|
+
export * from './gio-form-file-picker-add-button/gio-form-file-picker-add-button.component';
|
|
20
|
+
export * from './gio-form-file-picker-empty/gio-form-file-picker-empty.component';
|
|
21
|
+
export * from './gio-form-file-picker-label/gio-form-file-picker-label.component';
|
|
22
|
+
export * from './gio-form-file-picker.component.harness';
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1mb3JtLWZpbGUtcGlja2VyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw2RUFBNkUsQ0FBQztBQUM1RixjQUFjLG1FQUFtRSxDQUFDO0FBQ2xGLGNBQWMsbUVBQW1FLENBQUM7QUFFbEYsY0FBYywwQ0FBMEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5leHBvcnQgKiBmcm9tICcuL2dpby1mb3JtLWZpbGUtcGlja2VyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2dpby1mb3JtLWZpbGUtcGlja2VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2dpby1mb3JtLWZpbGUtcGlja2VyLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vZ2lvLWZvcm0tZmlsZS1waWNrZXItYWRkLWJ1dHRvbi9naW8tZm9ybS1maWxlLXBpY2tlci1hZGQtYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2dpby1mb3JtLWZpbGUtcGlja2VyLWVtcHR5L2dpby1mb3JtLWZpbGUtcGlja2VyLWVtcHR5LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2dpby1mb3JtLWZpbGUtcGlja2VyLWxhYmVsL2dpby1mb3JtLWZpbGUtcGlja2VyLWxhYmVsLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZ2lvLWZvcm0tZmlsZS1waWNrZXIuY29tcG9uZW50Lmhhcm5lc3MnO1xuIl19
|
package/esm2022/lib/gio-form-focus-first-invalid/gio-form-focus-first-invalid-ignore.directive.mjs
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (C) 2015 The Gravitee team (http://gravitee.io)
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import { Directive } from '@angular/core';
|
|
17
|
+
import * as i0 from "@angular/core";
|
|
18
|
+
export const GIO_FORM_FOCUS_INVALID_IGNORE_SELECTOR = 'gioFormFocusInvalidIgnore';
|
|
19
|
+
export class GioFormFocusInvalidIgnoreDirective {
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormFocusInvalidIgnoreDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
21
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.4", type: GioFormFocusInvalidIgnoreDirective, isStandalone: false, selector: "[gioFormFocusInvalidIgnore]", ngImport: i0 }); }
|
|
22
|
+
}
|
|
23
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormFocusInvalidIgnoreDirective, decorators: [{
|
|
24
|
+
type: Directive,
|
|
25
|
+
args: [{
|
|
26
|
+
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
27
|
+
selector: `[${GIO_FORM_FOCUS_INVALID_IGNORE_SELECTOR}]`,
|
|
28
|
+
standalone: false,
|
|
29
|
+
}]
|
|
30
|
+
}] });
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWZvcm0tZm9jdXMtZmlyc3QtaW52YWxpZC1pZ25vcmUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktcGFydGljbGVzLWFuZ3VsYXIvc3JjL2xpYi9naW8tZm9ybS1mb2N1cy1maXJzdC1pbnZhbGlkL2dpby1mb3JtLWZvY3VzLWZpcnN0LWludmFsaWQtaWdub3JlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7R0FjRztBQUNILE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTFDLE1BQU0sQ0FBQyxNQUFNLHNDQUFzQyxHQUFHLDJCQUEyQixDQUFDO0FBT2xGLE1BQU0sT0FBTyxrQ0FBa0M7OEdBQWxDLGtDQUFrQztrR0FBbEMsa0NBQWtDOzsyRkFBbEMsa0NBQWtDO2tCQUw5QyxTQUFTO21CQUFDO29CQUNULDhEQUE4RDtvQkFDOUQsUUFBUSxFQUFFLElBQUksc0NBQXNDLEdBQUc7b0JBQ3ZELFVBQVUsRUFBRSxLQUFLO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNvbnN0IEdJT19GT1JNX0ZPQ1VTX0lOVkFMSURfSUdOT1JFX1NFTEVDVE9SID0gJ2dpb0Zvcm1Gb2N1c0ludmFsaWRJZ25vcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgc2VsZWN0b3I6IGBbJHtHSU9fRk9STV9GT0NVU19JTlZBTElEX0lHTk9SRV9TRUxFQ1RPUn1dYCxcbiAgc3RhbmRhbG9uZTogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIEdpb0Zvcm1Gb2N1c0ludmFsaWRJZ25vcmVEaXJlY3RpdmUge31cbiJdfQ==
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (C) 2015 The Gravitee team (http://gravitee.io)
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import { Directive, HostListener, Optional } from '@angular/core';
|
|
17
|
+
import { GIO_FORM_FOCUS_INVALID_IGNORE_SELECTOR } from './gio-form-focus-first-invalid-ignore.directive';
|
|
18
|
+
import * as i0 from "@angular/core";
|
|
19
|
+
import * as i1 from "@angular/forms";
|
|
20
|
+
export class GioBaseFormFocusInvalidDirective {
|
|
21
|
+
constructor(hostElement, formGroupDirective) {
|
|
22
|
+
this.hostElement = hostElement;
|
|
23
|
+
this.formGroupDirective = formGroupDirective;
|
|
24
|
+
}
|
|
25
|
+
focusOnFirstInvalid() {
|
|
26
|
+
const selector = '.ng-invalid[formControlName],input.ng-invalid,mat-select.ng-invalid,textarea.ng-invalid,.gio-ng-invalid';
|
|
27
|
+
try {
|
|
28
|
+
// Mark all controls as touched to display errors
|
|
29
|
+
if (this.formGroupDirective) {
|
|
30
|
+
this.formGroupDirective.control.markAllAsTouched();
|
|
31
|
+
this.formGroupDirective.control.updateValueAndValidity();
|
|
32
|
+
}
|
|
33
|
+
const parentForm = this.hostElement.nativeElement.closest('form');
|
|
34
|
+
const invalidFieldElements = parentForm?.querySelectorAll(selector);
|
|
35
|
+
const invalidControl = this.getFirstInvalidControl(invalidFieldElements);
|
|
36
|
+
if (invalidControl) {
|
|
37
|
+
invalidControl.scrollIntoView({ behavior: 'smooth', block: 'center' });
|
|
38
|
+
invalidControl.focus({ preventScroll: true });
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
catch (error) {
|
|
42
|
+
// Best effort. If the focus doesn't work it's not very important
|
|
43
|
+
// 🧪 Useful to avoid som error in tests
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
getFirstInvalidControl(invalidFieldElements, index = 0) {
|
|
47
|
+
let invalidControl = invalidFieldElements?.item(index);
|
|
48
|
+
const hasIgnoreAttribute = invalidControl?.attributes?.getNamedItem(GIO_FORM_FOCUS_INVALID_IGNORE_SELECTOR);
|
|
49
|
+
if (hasIgnoreAttribute) {
|
|
50
|
+
invalidControl = this.getFirstInvalidControl(invalidFieldElements, index + 1);
|
|
51
|
+
}
|
|
52
|
+
return invalidControl;
|
|
53
|
+
}
|
|
54
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioBaseFormFocusInvalidDirective, deps: [{ token: i0.ElementRef }, { token: i1.FormGroupDirective, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
55
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.4", type: GioBaseFormFocusInvalidDirective, isStandalone: true, ngImport: i0 }); }
|
|
56
|
+
}
|
|
57
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioBaseFormFocusInvalidDirective, decorators: [{
|
|
58
|
+
type: Directive
|
|
59
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FormGroupDirective, decorators: [{
|
|
60
|
+
type: Optional
|
|
61
|
+
}] }] });
|
|
62
|
+
export class GioFormFocusInvalidFormDirective extends GioBaseFormFocusInvalidDirective {
|
|
63
|
+
onFormSubmit() {
|
|
64
|
+
this.focusOnFirstInvalid();
|
|
65
|
+
}
|
|
66
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormFocusInvalidFormDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
67
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.4", type: GioFormFocusInvalidFormDirective, isStandalone: false, selector: "form[gioFormFocusInvalid]", host: { listeners: { "submit": "onFormSubmit()" } }, usesInheritance: true, ngImport: i0 }); }
|
|
68
|
+
}
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormFocusInvalidFormDirective, decorators: [{
|
|
70
|
+
type: Directive,
|
|
71
|
+
args: [{
|
|
72
|
+
selector: 'form[gioFormFocusInvalid]',
|
|
73
|
+
standalone: false,
|
|
74
|
+
}]
|
|
75
|
+
}], propDecorators: { onFormSubmit: [{
|
|
76
|
+
type: HostListener,
|
|
77
|
+
args: ['submit']
|
|
78
|
+
}] } });
|
|
79
|
+
export class GioButtonFocusInvalidButtonDirective extends GioBaseFormFocusInvalidDirective {
|
|
80
|
+
onClick() {
|
|
81
|
+
this.focusOnFirstInvalid();
|
|
82
|
+
}
|
|
83
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioButtonFocusInvalidButtonDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
|
|
84
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.4", type: GioButtonFocusInvalidButtonDirective, isStandalone: false, selector: "button[gioFormFocusInvalid]", host: { listeners: { "click": "onClick()" } }, usesInheritance: true, ngImport: i0 }); }
|
|
85
|
+
}
|
|
86
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioButtonFocusInvalidButtonDirective, decorators: [{
|
|
87
|
+
type: Directive,
|
|
88
|
+
args: [{
|
|
89
|
+
selector: 'button[gioFormFocusInvalid]',
|
|
90
|
+
standalone: false,
|
|
91
|
+
}]
|
|
92
|
+
}], propDecorators: { onClick: [{
|
|
93
|
+
type: HostListener,
|
|
94
|
+
args: ['click']
|
|
95
|
+
}] } });
|
|
96
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWZvcm0tZm9jdXMtZmlyc3QtaW52YWxpZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1mb3JtLWZvY3VzLWZpcnN0LWludmFsaWQvZ2lvLWZvcm0tZm9jdXMtZmlyc3QtaW52YWxpZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQWMsTUFBTSxlQUFlLENBQUM7QUFHOUUsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0saURBQWlELENBQUM7OztBQUd6RyxNQUFNLE9BQU8sZ0NBQWdDO0lBQzNDLFlBQ21CLFdBQXVCLEVBQ1Qsa0JBQXNDO1FBRHBELGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ1QsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtJQUNwRSxDQUFDO0lBRU0sbUJBQW1CO1FBQzNCLE1BQU0sUUFBUSxHQUFHLHlHQUF5RyxDQUFDO1FBRTNILElBQUksQ0FBQztZQUNILGlEQUFpRDtZQUNqRCxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO2dCQUM1QixJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ25ELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztZQUMzRCxDQUFDO1lBRUQsTUFBTSxVQUFVLEdBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUF5QixDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMvRSxNQUFNLG9CQUFvQixHQUFHLFVBQVUsRUFBRSxnQkFBZ0IsQ0FBYyxRQUFRLENBQUMsQ0FBQztZQUNqRixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztZQUV6RSxJQUFJLGNBQWMsRUFBRSxDQUFDO2dCQUNuQixjQUFjLENBQUMsY0FBYyxDQUFDLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztnQkFDdkUsY0FBYyxDQUFDLEtBQUssQ0FBQyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQ2hELENBQUM7UUFDSCxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLGlFQUFpRTtZQUNqRSx3Q0FBd0M7UUFDMUMsQ0FBQztJQUNILENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxvQkFBeUQsRUFBRSxLQUFLLEdBQUcsQ0FBQztRQUNqRyxJQUFJLGNBQWMsR0FBRyxvQkFBb0IsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkQsTUFBTSxrQkFBa0IsR0FBSSxjQUFtQyxFQUFFLFVBQVUsRUFBRSxZQUFZLENBQUMsc0NBQXNDLENBQUMsQ0FBQztRQUNsSSxJQUFJLGtCQUFrQixFQUFFLENBQUM7WUFDdkIsY0FBYyxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxvQkFBb0IsRUFBRSxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDaEYsQ0FBQztRQUNELE9BQU8sY0FBYyxDQUFDO0lBQ3hCLENBQUM7OEdBckNVLGdDQUFnQztrR0FBaEMsZ0NBQWdDOzsyRkFBaEMsZ0NBQWdDO2tCQUQ1QyxTQUFTOzswQkFJTCxRQUFROztBQXlDYixNQUFNLE9BQU8sZ0NBQWlDLFNBQVEsZ0NBQWdDO0lBRTdFLFlBQVk7UUFDakIsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDN0IsQ0FBQzs4R0FKVSxnQ0FBZ0M7a0dBQWhDLGdDQUFnQzs7MkZBQWhDLGdDQUFnQztrQkFKNUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyxVQUFVLEVBQUUsS0FBSztpQkFDbEI7OEJBR1EsWUFBWTtzQkFEbEIsWUFBWTt1QkFBQyxRQUFROztBQVV4QixNQUFNLE9BQU8sb0NBQXFDLFNBQVEsZ0NBQWdDO0lBRWpGLE9BQU87UUFDWixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM3QixDQUFDOzhHQUpVLG9DQUFvQztrR0FBcEMsb0NBQW9DOzsyRkFBcEMsb0NBQW9DO2tCQUpoRCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw2QkFBNkI7b0JBQ3ZDLFVBQVUsRUFBRSxLQUFLO2lCQUNsQjs4QkFHUSxPQUFPO3NCQURiLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciwgT3B0aW9uYWwsIEVsZW1lbnRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Hcm91cERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgR0lPX0ZPUk1fRk9DVVNfSU5WQUxJRF9JR05PUkVfU0VMRUNUT1IgfSBmcm9tICcuL2dpby1mb3JtLWZvY3VzLWZpcnN0LWludmFsaWQtaWdub3JlLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGNsYXNzIEdpb0Jhc2VGb3JtRm9jdXNJbnZhbGlkRGlyZWN0aXZlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBob3N0RWxlbWVudDogRWxlbWVudFJlZixcbiAgICBAT3B0aW9uYWwoKSBwcm90ZWN0ZWQgcmVhZG9ubHkgZm9ybUdyb3VwRGlyZWN0aXZlOiBGb3JtR3JvdXBEaXJlY3RpdmUsXG4gICkge31cblxuICBwcm90ZWN0ZWQgZm9jdXNPbkZpcnN0SW52YWxpZCgpIHtcbiAgICBjb25zdCBzZWxlY3RvciA9ICcubmctaW52YWxpZFtmb3JtQ29udHJvbE5hbWVdLGlucHV0Lm5nLWludmFsaWQsbWF0LXNlbGVjdC5uZy1pbnZhbGlkLHRleHRhcmVhLm5nLWludmFsaWQsLmdpby1uZy1pbnZhbGlkJztcblxuICAgIHRyeSB7XG4gICAgICAvLyBNYXJrIGFsbCBjb250cm9scyBhcyB0b3VjaGVkIHRvIGRpc3BsYXkgZXJyb3JzXG4gICAgICBpZiAodGhpcy5mb3JtR3JvdXBEaXJlY3RpdmUpIHtcbiAgICAgICAgdGhpcy5mb3JtR3JvdXBEaXJlY3RpdmUuY29udHJvbC5tYXJrQWxsQXNUb3VjaGVkKCk7XG4gICAgICAgIHRoaXMuZm9ybUdyb3VwRGlyZWN0aXZlLmNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBwYXJlbnRGb3JtID0gKHRoaXMuaG9zdEVsZW1lbnQubmF0aXZlRWxlbWVudCBhcyBFbGVtZW50KS5jbG9zZXN0KCdmb3JtJyk7XG4gICAgICBjb25zdCBpbnZhbGlkRmllbGRFbGVtZW50cyA9IHBhcmVudEZvcm0/LnF1ZXJ5U2VsZWN0b3JBbGw8SFRNTEVsZW1lbnQ+KHNlbGVjdG9yKTtcbiAgICAgIGNvbnN0IGludmFsaWRDb250cm9sID0gdGhpcy5nZXRGaXJzdEludmFsaWRDb250cm9sKGludmFsaWRGaWVsZEVsZW1lbnRzKTtcblxuICAgICAgaWYgKGludmFsaWRDb250cm9sKSB7XG4gICAgICAgIGludmFsaWRDb250cm9sLnNjcm9sbEludG9WaWV3KHsgYmVoYXZpb3I6ICdzbW9vdGgnLCBibG9jazogJ2NlbnRlcicgfSk7XG4gICAgICAgIGludmFsaWRDb250cm9sLmZvY3VzKHsgcHJldmVudFNjcm9sbDogdHJ1ZSB9KTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgLy8gQmVzdCBlZmZvcnQuIElmIHRoZSBmb2N1cyBkb2Vzbid0IHdvcmsgaXQncyBub3QgdmVyeSBpbXBvcnRhbnRcbiAgICAgIC8vIPCfp6ogVXNlZnVsIHRvIGF2b2lkIHNvbSBlcnJvciBpbiB0ZXN0c1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZ2V0Rmlyc3RJbnZhbGlkQ29udHJvbChpbnZhbGlkRmllbGRFbGVtZW50czogTm9kZUxpc3RPZjxIVE1MRWxlbWVudD4gfCB1bmRlZmluZWQsIGluZGV4ID0gMCk6IEhUTUxFbGVtZW50IHwgdW5kZWZpbmVkIHtcbiAgICBsZXQgaW52YWxpZENvbnRyb2wgPSBpbnZhbGlkRmllbGRFbGVtZW50cz8uaXRlbShpbmRleCk7XG4gICAgY29uc3QgaGFzSWdub3JlQXR0cmlidXRlID0gKGludmFsaWRDb250cm9sIGFzIEhUTUxJbnB1dEVsZW1lbnQpPy5hdHRyaWJ1dGVzPy5nZXROYW1lZEl0ZW0oR0lPX0ZPUk1fRk9DVVNfSU5WQUxJRF9JR05PUkVfU0VMRUNUT1IpO1xuICAgIGlmIChoYXNJZ25vcmVBdHRyaWJ1dGUpIHtcbiAgICAgIGludmFsaWRDb250cm9sID0gdGhpcy5nZXRGaXJzdEludmFsaWRDb250cm9sKGludmFsaWRGaWVsZEVsZW1lbnRzLCBpbmRleCArIDEpO1xuICAgIH1cbiAgICByZXR1cm4gaW52YWxpZENvbnRyb2w7XG4gIH1cbn1cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnZm9ybVtnaW9Gb3JtRm9jdXNJbnZhbGlkXScsXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBHaW9Gb3JtRm9jdXNJbnZhbGlkRm9ybURpcmVjdGl2ZSBleHRlbmRzIEdpb0Jhc2VGb3JtRm9jdXNJbnZhbGlkRGlyZWN0aXZlIHtcbiAgQEhvc3RMaXN0ZW5lcignc3VibWl0JylcbiAgcHVibGljIG9uRm9ybVN1Ym1pdCgpIHtcbiAgICB0aGlzLmZvY3VzT25GaXJzdEludmFsaWQoKTtcbiAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdidXR0b25bZ2lvRm9ybUZvY3VzSW52YWxpZF0nLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgR2lvQnV0dG9uRm9jdXNJbnZhbGlkQnV0dG9uRGlyZWN0aXZlIGV4dGVuZHMgR2lvQmFzZUZvcm1Gb2N1c0ludmFsaWREaXJlY3RpdmUge1xuICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gIHB1YmxpYyBvbkNsaWNrKCkge1xuICAgIHRoaXMuZm9jdXNPbkZpcnN0SW52YWxpZCgpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (C) 2015 The Gravitee team (http://gravitee.io)
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import { NgModule } from '@angular/core';
|
|
17
|
+
import { GioFormFocusInvalidIgnoreDirective } from './gio-form-focus-first-invalid-ignore.directive';
|
|
18
|
+
import { GioFormFocusInvalidFormDirective, GioButtonFocusInvalidButtonDirective } from './gio-form-focus-first-invalid.directive';
|
|
19
|
+
import * as i0 from "@angular/core";
|
|
20
|
+
export class GioFormFocusInvalidModule {
|
|
21
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormFocusInvalidModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
22
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.4", ngImport: i0, type: GioFormFocusInvalidModule, declarations: [GioFormFocusInvalidFormDirective, GioButtonFocusInvalidButtonDirective, GioFormFocusInvalidIgnoreDirective], exports: [GioFormFocusInvalidFormDirective, GioButtonFocusInvalidButtonDirective, GioFormFocusInvalidIgnoreDirective] }); }
|
|
23
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormFocusInvalidModule }); }
|
|
24
|
+
}
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormFocusInvalidModule, decorators: [{
|
|
26
|
+
type: NgModule,
|
|
27
|
+
args: [{
|
|
28
|
+
declarations: [GioFormFocusInvalidFormDirective, GioButtonFocusInvalidButtonDirective, GioFormFocusInvalidIgnoreDirective],
|
|
29
|
+
exports: [GioFormFocusInvalidFormDirective, GioButtonFocusInvalidButtonDirective, GioFormFocusInvalidIgnoreDirective],
|
|
30
|
+
}]
|
|
31
|
+
}] });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWZvcm0tZm9jdXMtZmlyc3QtaW52YWxpZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1mb3JtLWZvY3VzLWZpcnN0LWludmFsaWQvZ2lvLWZvcm0tZm9jdXMtZmlyc3QtaW52YWxpZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOztBQU1sSSxNQUFNLE9BQU8seUJBQXlCOzhHQUF6Qix5QkFBeUI7K0dBQXpCLHlCQUF5QixpQkFIckIsZ0NBQWdDLEVBQUUsb0NBQW9DLEVBQUUsa0NBQWtDLGFBQy9HLGdDQUFnQyxFQUFFLG9DQUFvQyxFQUFFLGtDQUFrQzsrR0FFekcseUJBQXlCOzsyRkFBekIseUJBQXlCO2tCQUpyQyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGdDQUFnQyxFQUFFLG9DQUFvQyxFQUFFLGtDQUFrQyxDQUFDO29CQUMxSCxPQUFPLEVBQUUsQ0FBQyxnQ0FBZ0MsRUFBRSxvQ0FBb0MsRUFBRSxrQ0FBa0MsQ0FBQztpQkFDdEgiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChDKSAyMDE1IFRoZSBHcmF2aXRlZSB0ZWFtIChodHRwOi8vZ3Jhdml0ZWUuaW8pXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgR2lvRm9ybUZvY3VzSW52YWxpZElnbm9yZURpcmVjdGl2ZSB9IGZyb20gJy4vZ2lvLWZvcm0tZm9jdXMtZmlyc3QtaW52YWxpZC1pZ25vcmUuZGlyZWN0aXZlJztcbmltcG9ydCB7IEdpb0Zvcm1Gb2N1c0ludmFsaWRGb3JtRGlyZWN0aXZlLCBHaW9CdXR0b25Gb2N1c0ludmFsaWRCdXR0b25EaXJlY3RpdmUgfSBmcm9tICcuL2dpby1mb3JtLWZvY3VzLWZpcnN0LWludmFsaWQuZGlyZWN0aXZlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbR2lvRm9ybUZvY3VzSW52YWxpZEZvcm1EaXJlY3RpdmUsIEdpb0J1dHRvbkZvY3VzSW52YWxpZEJ1dHRvbkRpcmVjdGl2ZSwgR2lvRm9ybUZvY3VzSW52YWxpZElnbm9yZURpcmVjdGl2ZV0sXG4gIGV4cG9ydHM6IFtHaW9Gb3JtRm9jdXNJbnZhbGlkRm9ybURpcmVjdGl2ZSwgR2lvQnV0dG9uRm9jdXNJbnZhbGlkQnV0dG9uRGlyZWN0aXZlLCBHaW9Gb3JtRm9jdXNJbnZhbGlkSWdub3JlRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgR2lvRm9ybUZvY3VzSW52YWxpZE1vZHVsZSB7fVxuIl19
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (C) 2015 The Gravitee team (http://gravitee.io)
|
|
3
|
+
*
|
|
4
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5
|
+
* you may not use this file except in compliance with the License.
|
|
6
|
+
* You may obtain a copy of the License at
|
|
7
|
+
*
|
|
8
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9
|
+
*
|
|
10
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
12
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13
|
+
* See the License for the specific language governing permissions and
|
|
14
|
+
* limitations under the License.
|
|
15
|
+
*/
|
|
16
|
+
import { Component } from '@angular/core';
|
|
17
|
+
import * as i0 from "@angular/core";
|
|
18
|
+
export class GioFormHeadersLabelComponent {
|
|
19
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormHeadersLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
20
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.4", type: GioFormHeadersLabelComponent, isStandalone: false, selector: "gio-form-headers-label", ngImport: i0, template: `<ng-content></ng-content>`, isInline: true }); }
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: GioFormHeadersLabelComponent, decorators: [{
|
|
23
|
+
type: Component,
|
|
24
|
+
args: [{
|
|
25
|
+
selector: 'gio-form-headers-label',
|
|
26
|
+
template: `<ng-content></ng-content>`,
|
|
27
|
+
standalone: false,
|
|
28
|
+
}]
|
|
29
|
+
}] });
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lvLWZvcm0taGVhZGVycy1sYWJlbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1wYXJ0aWNsZXMtYW5ndWxhci9zcmMvbGliL2dpby1mb3JtLWhlYWRlcnMvZ2lvLWZvcm0taGVhZGVycy1sYWJlbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFDSCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU8xQyxNQUFNLE9BQU8sNEJBQTRCOzhHQUE1Qiw0QkFBNEI7a0dBQTVCLDRCQUE0QixtRkFIN0IsMkJBQTJCOzsyRkFHMUIsNEJBQTRCO2tCQUx4QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFVBQVUsRUFBRSxLQUFLO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBDb3B5cmlnaHQgKEMpIDIwMTUgVGhlIEdyYXZpdGVlIHRlYW0gKGh0dHA6Ly9ncmF2aXRlZS5pbylcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ2lvLWZvcm0taGVhZGVycy1sYWJlbCcsXG4gIHRlbXBsYXRlOiBgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PmAsXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBHaW9Gb3JtSGVhZGVyc0xhYmVsQ29tcG9uZW50IHt9XG4iXX0=
|