@testgorilla/tgo-ui 2.24.9999 → 2.25.0
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/components/accordion/accordion.component.d.ts +100 -0
- package/components/accordion/accordion.component.module.d.ts +12 -0
- package/components/accordion/accordion.model.d.ts +2 -0
- package/components/autocomplete/autocomplete.component.d.ts +294 -0
- package/components/autocomplete/autocomplete.component.module.d.ts +23 -0
- package/components/autocomplete/autocomplete.model.d.ts +22 -0
- package/components/autocomplete/includes.pipe.d.ts +12 -0
- package/components/autocomplete/prevent-input.directive.d.ts +7 -0
- package/components/autocomplete/transform-Item.pipe.d.ts +11 -0
- package/components/button/button.component.d.ts +8 -1
- package/components/checklist/checklist.component.d.ts +78 -0
- package/components/checklist/checklist.model.d.ts +7 -0
- package/components/confirm-dialog/confirm-dialog.component.d.ts +29 -0
- package/components/confirm-dialog/confirm-dialog.component.module.d.ts +12 -0
- package/components/confirm-dialog/confirm-dialog.model.d.ts +11 -0
- package/components/datepicker/date-adapter.d.ts +30 -0
- package/components/datepicker/datepicker.component.d.ts +214 -0
- package/components/datepicker/datepicker.component.module.d.ts +18 -0
- package/components/datepicker/datepicker.service.d.ts +8 -0
- package/components/datepicker/no-date-format.directive.d.ts +11 -0
- package/components/deprecated-paginator/deprecated-paginator.component.d.ts +38 -0
- package/components/deprecated-paginator/deprecated-paginator.component.module.d.ts +9 -0
- package/components/deprecated-table/deprecated-table.component.d.ts +91 -0
- package/components/deprecated-table/deprecated-table.component.module.d.ts +14 -0
- package/components/deprecated-table/deprecated-table.model.d.ts +45 -0
- package/components/deprecated-table/directives/dynamic-component.directive.d.ts +13 -0
- package/components/dialog/dialog.component.d.ts +147 -0
- package/components/dialog/dialog.component.module.d.ts +11 -0
- package/components/dialog/dialog.service.d.ts +13 -0
- package/components/divider/divider.component.d.ts +39 -0
- package/components/divider/divider.component.module.d.ts +9 -0
- package/components/divider/divider.model.d.ts +1 -0
- package/components/dropdown/dropdown.component.d.ts +189 -0
- package/components/dropdown/dropdown.component.module.d.ts +17 -0
- package/components/dropdown/dropdown.model.d.ts +5 -0
- package/components/elevation-shadow/elevation-shadow.component.d.ts +26 -0
- package/components/elevation-shadow/elevation-shadow.component.module.d.ts +8 -0
- package/components/elevation-shadow/elevation-shadow.constant.d.ts +8 -0
- package/components/empty-state/empty-state.component.d.ts +118 -0
- package/components/empty-state/empty-state.component.module.d.ts +11 -0
- package/components/empty-state/empty-state.model.d.ts +3 -0
- package/components/file-upload/file-upload.component.d.ts +120 -0
- package/components/file-upload/file-upload.component.module.d.ts +14 -0
- package/components/icon-label/icon-label.component.d.ts +39 -0
- package/components/icon-label/icon-label.component.module.d.ts +9 -0
- package/components/media-card/media-card.component.d.ts +32 -0
- package/components/multi-input/multi-input.component.d.ts +164 -0
- package/components/multi-input/multi-input.component.module.d.ts +18 -0
- package/components/multi-input/multi-input.model.d.ts +1 -0
- package/components/navbar/mobile-navbar-side-sheet/mobile-navbar-side-sheet.component.d.ts +25 -0
- package/components/navbar/navbar.component.d.ts +119 -0
- package/components/navbar/navbar.component.module.d.ts +21 -0
- package/components/navbar/navbar.model.d.ts +21 -0
- package/components/overflow-menu/overflow-menu.component.d.ts +86 -0
- package/components/overflow-menu/overflow-menu.component.module.d.ts +15 -0
- package/components/overflow-menu/overflow-menu.model.d.ts +20 -0
- package/components/page-header/page-header.component.d.ts +38 -0
- package/components/page-header/page-header.component.module.d.ts +10 -0
- package/components/paginator/paginator.component.d.ts +58 -0
- package/components/paginator/paginator.component.module.d.ts +9 -0
- package/components/password-criteria/password.component.d.ts +42 -0
- package/components/password-criteria/password.component.module.d.ts +13 -0
- package/components/password-strength/password-strength.component.d.ts +45 -0
- package/components/password-strength/password-strength.component.module.d.ts +11 -0
- package/components/phone-input/join-strings.pipe.d.ts +7 -0
- package/components/phone-input/phone-input.component.d.ts +147 -0
- package/components/phone-input/phone-input.component.module.d.ts +20 -0
- package/components/phone-input/phone-input.model.d.ts +8 -0
- package/components/progress-bar/progress-bar.component.d.ts +73 -0
- package/components/progress-bar/progress-bar.component.module.d.ts +10 -0
- package/components/radial-progress/radial-progress.component.d.ts +68 -0
- package/components/radial-progress/radial-progress.component.module.d.ts +10 -0
- package/components/radial-progress/radial-progress.model.d.ts +10 -0
- package/components/rating/half-star.pipe.d.ts +14 -0
- package/components/rating/rating.component.d.ts +64 -0
- package/components/rating/rating.component.module.d.ts +10 -0
- package/components/scale/scale.component.d.ts +53 -0
- package/components/scale/scale.component.module.d.ts +8 -0
- package/components/segmented-bar/segmented-bar.component.d.ts +63 -0
- package/components/segmented-bar/segmented-bar.component.module.d.ts +13 -0
- package/components/segmented-bar/segmented-bar.model.d.ts +12 -0
- package/components/segmented-button/segmented-button.component.d.ts +55 -0
- package/components/segmented-button/segmented-button.component.module.d.ts +11 -0
- package/components/segmented-button/segmented-button.model.d.ts +8 -0
- package/components/side-panel/side-panel.component.d.ts +1 -1
- package/components/side-sheet/side-sheet.component.d.ts +43 -0
- package/components/side-sheet/side-sheet.component.module.d.ts +14 -0
- package/components/side-sheet/side-sheet.model.d.ts +10 -0
- package/components/side-sheet/side-sheet.service.d.ts +14 -0
- package/components/skeleton/skeleton.component.d.ts +26 -0
- package/components/skeleton/skeleton.model.d.ts +2 -0
- package/components/slider/slider.component.d.ts +105 -0
- package/components/slider/slider.component.module.d.ts +14 -0
- package/components/slider/slider.model.d.ts +5 -0
- package/components/spider-chart/spider-chart.component.d.ts +88 -0
- package/components/spider-chart/spider-chart.model.d.ts +12 -0
- package/components/spider-chart/spider-chart.module.d.ts +12 -0
- package/components/step/step.component.d.ts +161 -0
- package/components/step/step.component.module.d.ts +10 -0
- package/components/stepper/stepper.component.d.ts +86 -0
- package/components/stepper/stepper.component.module.d.ts +15 -0
- package/components/stepper/stepper.model.d.ts +22 -0
- package/components/table/sentence-case.pipe.d.ts +7 -0
- package/components/table/table.component.d.ts +96 -0
- package/components/table/table.component.module.d.ts +20 -0
- package/components/table/table.model.d.ts +94 -0
- package/components/tabs/tab.directive.d.ts +24 -0
- package/components/tabs/tabs.component.d.ts +73 -0
- package/components/tabs/tabs.component.module.d.ts +11 -0
- package/components/tabs/tabs.model.d.ts +15 -0
- package/components/tag/tag.component.d.ts +131 -0
- package/components/tag/tag.component.module.d.ts +13 -0
- package/components/tag/tag.model.d.ts +1 -0
- package/components/toggle/toggle.component.d.ts +113 -0
- package/components/toggle/toggle.component.module.d.ts +14 -0
- package/components/toggle/toggle.model.d.ts +1 -0
- package/components/universal-skills-report/universal-skills-report.component.d.ts +33 -0
- package/components/universal-skills-report/universal-skills-report.component.module.d.ts +14 -0
- package/components/universal-skills-report/universal-skills-report.model.d.ts +33 -0
- package/directives/drag-drop.directive.d.ts +12 -0
- package/directives/select-text.directive.d.ts +19 -0
- package/directives/step-line-element.directive.d.ts +17 -0
- package/esm2022/assets/i18n/da-dk.json +62 -1
- package/esm2022/assets/i18n/de.json +62 -1
- package/esm2022/assets/i18n/es.json +62 -1
- package/esm2022/assets/i18n/fr.json +62 -1
- package/esm2022/assets/i18n/it-it.json +62 -1
- package/esm2022/assets/i18n/ja-jp.json +62 -1
- package/esm2022/assets/i18n/nb-no.json +62 -1
- package/esm2022/assets/i18n/nl.json +62 -1
- package/esm2022/assets/i18n/pl-pl.json +62 -1
- package/esm2022/assets/i18n/pt-br.json +62 -1
- package/esm2022/assets/i18n/sv-se.json +62 -1
- package/esm2022/components/accordion/accordion.component.mjs +135 -0
- package/esm2022/components/accordion/accordion.component.module.mjs +40 -0
- package/esm2022/components/accordion/accordion.model.mjs +2 -0
- package/esm2022/components/alert-banner/alert-banner.component.mjs +2 -2
- package/esm2022/components/autocomplete/autocomplete.component.mjs +720 -0
- package/esm2022/components/autocomplete/autocomplete.component.module.mjs +73 -0
- package/esm2022/components/autocomplete/autocomplete.model.mjs +25 -0
- package/esm2022/components/autocomplete/includes.pipe.mjs +25 -0
- package/esm2022/components/autocomplete/prevent-input.directive.mjs +27 -0
- package/esm2022/components/autocomplete/transform-Item.pipe.mjs +32 -0
- package/esm2022/components/avatar/avatar.component.mjs +1 -1
- package/esm2022/components/button/button.component.mjs +15 -3
- package/esm2022/components/checklist/checklist.component.mjs +147 -0
- package/esm2022/components/checklist/checklist.model.mjs +2 -0
- package/esm2022/components/confirm-dialog/confirm-dialog.component.mjs +54 -0
- package/esm2022/components/confirm-dialog/confirm-dialog.component.module.mjs +29 -0
- package/esm2022/components/confirm-dialog/confirm-dialog.model.mjs +2 -0
- package/esm2022/components/datepicker/date-adapter.mjs +30 -0
- package/esm2022/components/datepicker/datepicker.component.mjs +333 -0
- package/esm2022/components/datepicker/datepicker.component.module.mjs +60 -0
- package/esm2022/components/datepicker/datepicker.service.mjs +20 -0
- package/esm2022/components/datepicker/no-date-format.directive.mjs +56 -0
- package/esm2022/components/deprecated-paginator/deprecated-paginator.component.mjs +55 -0
- package/esm2022/components/deprecated-paginator/deprecated-paginator.component.module.mjs +20 -0
- package/esm2022/components/deprecated-table/deprecated-table.component.mjs +158 -0
- package/esm2022/components/deprecated-table/deprecated-table.component.module.mjs +43 -0
- package/esm2022/components/deprecated-table/deprecated-table.model.mjs +13 -0
- package/esm2022/components/deprecated-table/directives/dynamic-component.directive.mjs +40 -0
- package/esm2022/components/dialog/dialog.component.mjs +253 -0
- package/esm2022/components/dialog/dialog.component.module.mjs +23 -0
- package/esm2022/components/dialog/dialog.service.mjs +35 -0
- package/esm2022/components/divider/divider.component.mjs +65 -0
- package/esm2022/components/divider/divider.component.module.mjs +19 -0
- package/esm2022/components/divider/divider.model.mjs +2 -0
- package/esm2022/components/dropdown/dropdown.component.mjs +351 -0
- package/esm2022/components/dropdown/dropdown.component.module.mjs +57 -0
- package/esm2022/components/dropdown/dropdown.model.mjs +2 -0
- package/esm2022/components/elevation-shadow/elevation-shadow.component.mjs +45 -0
- package/esm2022/components/elevation-shadow/elevation-shadow.component.module.mjs +18 -0
- package/esm2022/components/elevation-shadow/elevation-shadow.constant.mjs +9 -0
- package/esm2022/components/empty-state/empty-state.component.mjs +186 -0
- package/esm2022/components/empty-state/empty-state.component.module.mjs +21 -0
- package/esm2022/components/empty-state/empty-state.model.mjs +2 -0
- package/esm2022/components/field/field.component.mjs +1 -1
- package/esm2022/components/file-upload/file-upload.component.mjs +282 -0
- package/esm2022/components/file-upload/file-upload.component.module.mjs +40 -0
- package/esm2022/components/icon-label/icon-label.component.mjs +53 -0
- package/esm2022/components/icon-label/icon-label.component.module.mjs +20 -0
- package/esm2022/components/media-card/media-card.component.mjs +47 -0
- package/esm2022/components/multi-input/multi-input.component.mjs +318 -0
- package/esm2022/components/multi-input/multi-input.component.module.mjs +58 -0
- package/esm2022/components/multi-input/multi-input.model.mjs +2 -0
- package/esm2022/components/navbar/mobile-navbar-side-sheet/mobile-navbar-side-sheet.component.mjs +82 -0
- package/esm2022/components/navbar/navbar.component.mjs +209 -0
- package/esm2022/components/navbar/navbar.component.module.mjs +71 -0
- package/esm2022/components/navbar/navbar.model.mjs +2 -0
- package/esm2022/components/overflow-menu/overflow-menu.component.mjs +195 -0
- package/esm2022/components/overflow-menu/overflow-menu.component.module.mjs +25 -0
- package/esm2022/components/overflow-menu/overflow-menu.model.mjs +2 -0
- package/esm2022/components/page-header/page-header.component.mjs +71 -0
- package/esm2022/components/page-header/page-header.component.module.mjs +20 -0
- package/esm2022/components/paginator/paginator.component.mjs +87 -0
- package/esm2022/components/paginator/paginator.component.module.mjs +19 -0
- package/esm2022/components/password-criteria/password.component.mjs +105 -0
- package/esm2022/components/password-criteria/password.component.module.mjs +39 -0
- package/esm2022/components/password-strength/password-strength.component.mjs +93 -0
- package/esm2022/components/password-strength/password-strength.component.module.mjs +21 -0
- package/esm2022/components/phone-input/join-strings.pipe.mjs +14 -0
- package/esm2022/components/phone-input/phone-input.component.mjs +353 -0
- package/esm2022/components/phone-input/phone-input.component.module.mjs +63 -0
- package/esm2022/components/phone-input/phone-input.model.mjs +2 -0
- package/esm2022/components/progress-bar/progress-bar.component.mjs +103 -0
- package/esm2022/components/progress-bar/progress-bar.component.module.mjs +21 -0
- package/esm2022/components/radial-progress/radial-progress.component.mjs +106 -0
- package/esm2022/components/radial-progress/radial-progress.component.module.mjs +20 -0
- package/esm2022/components/radial-progress/radial-progress.model.mjs +11 -0
- package/esm2022/components/rating/half-star.pipe.mjs +23 -0
- package/esm2022/components/rating/rating.component.mjs +92 -0
- package/esm2022/components/rating/rating.component.module.mjs +20 -0
- package/esm2022/components/scale/scale.component.mjs +124 -0
- package/esm2022/components/scale/scale.component.module.mjs +18 -0
- package/esm2022/components/segmented-bar/segmented-bar.component.mjs +106 -0
- package/esm2022/components/segmented-bar/segmented-bar.component.module.mjs +23 -0
- package/esm2022/components/segmented-bar/segmented-bar.model.mjs +2 -0
- package/esm2022/components/segmented-button/segmented-button.component.mjs +104 -0
- package/esm2022/components/segmented-button/segmented-button.component.module.mjs +21 -0
- package/esm2022/components/segmented-button/segmented-button.model.mjs +2 -0
- package/esm2022/components/side-panel/side-panel.component.mjs +2 -2
- package/esm2022/components/side-sheet/side-sheet.component.mjs +105 -0
- package/esm2022/components/side-sheet/side-sheet.component.module.mjs +43 -0
- package/esm2022/components/side-sheet/side-sheet.model.mjs +2 -0
- package/esm2022/components/side-sheet/side-sheet.service.mjs +31 -0
- package/esm2022/components/skeleton/skeleton.component.mjs +71 -0
- package/esm2022/components/skeleton/skeleton.model.mjs +2 -0
- package/esm2022/components/slider/slider.component.mjs +198 -0
- package/esm2022/components/slider/slider.component.module.mjs +43 -0
- package/esm2022/components/slider/slider.model.mjs +2 -0
- package/esm2022/components/snackbar/snackbar.component.mjs +2 -2
- package/esm2022/components/spider-chart/spider-chart.component.mjs +425 -0
- package/esm2022/components/spider-chart/spider-chart.model.mjs +4 -0
- package/esm2022/components/spider-chart/spider-chart.module.mjs +41 -0
- package/esm2022/components/step/step.component.mjs +149 -0
- package/esm2022/components/step/step.component.module.mjs +20 -0
- package/esm2022/components/stepper/stepper.component.mjs +150 -0
- package/esm2022/components/stepper/stepper.component.module.mjs +44 -0
- package/esm2022/components/stepper/stepper.model.mjs +2 -0
- package/esm2022/components/table/sentence-case.pipe.mjs +19 -0
- package/esm2022/components/table/table.component.mjs +237 -0
- package/esm2022/components/table/table.component.module.mjs +61 -0
- package/esm2022/components/table/table.model.mjs +13 -0
- package/esm2022/components/tabs/tab.directive.mjs +54 -0
- package/esm2022/components/tabs/tabs.component.mjs +188 -0
- package/esm2022/components/tabs/tabs.component.module.mjs +21 -0
- package/esm2022/components/tabs/tabs.model.mjs +2 -0
- package/esm2022/components/tag/tag.component.mjs +212 -0
- package/esm2022/components/tag/tag.component.module.mjs +24 -0
- package/esm2022/components/tag/tag.model.mjs +2 -0
- package/esm2022/components/toggle/toggle.component.mjs +190 -0
- package/esm2022/components/toggle/toggle.component.module.mjs +24 -0
- package/esm2022/components/toggle/toggle.model.mjs +2 -0
- package/esm2022/components/universal-skills-report/universal-skills-report.component.mjs +115 -0
- package/esm2022/components/universal-skills-report/universal-skills-report.component.module.mjs +43 -0
- package/esm2022/components/universal-skills-report/universal-skills-report.model.mjs +19 -0
- package/esm2022/directives/drag-drop.directive.mjs +55 -0
- package/esm2022/directives/select-text.directive.mjs +40 -0
- package/esm2022/directives/step-line-element.directive.mjs +51 -0
- package/esm2022/models/keyboard-events.model.mjs +13 -0
- package/esm2022/models/screen-breakpoints.model.mjs +6 -0
- package/esm2022/pipes/data-property-getter.mjs +33 -0
- package/esm2022/pipes/ui-ordinal-suffix.pipe.mjs +31 -0
- package/esm2022/providers/is-mobile.mjs +11 -0
- package/esm2022/public-api.mjs +214 -184
- package/esm2022/utils/autocomplete-utils.mjs +78 -0
- package/esm2022/utils/hex-to-rgb.mjs +9 -0
- package/esm2022/utils/table.utils.mjs +19 -0
- package/fesm2022/testgorilla-tgo-ui.mjs +12106 -3000
- package/fesm2022/testgorilla-tgo-ui.mjs.map +1 -1
- package/models/keyboard-events.model.d.ts +11 -0
- package/models/screen-breakpoints.model.d.ts +4 -0
- package/package.json +2 -3
- package/pipes/data-property-getter.d.ts +8 -0
- package/pipes/ui-ordinal-suffix.pipe.d.ts +7 -0
- package/projects/tgo-canopy-ui/assets/i18n/da-dk.json +62 -1
- package/projects/tgo-canopy-ui/assets/i18n/de.json +62 -1
- package/projects/tgo-canopy-ui/assets/i18n/es.json +62 -1
- package/projects/tgo-canopy-ui/assets/i18n/fr.json +62 -1
- package/projects/tgo-canopy-ui/assets/i18n/it-it.json +62 -1
- package/projects/tgo-canopy-ui/assets/i18n/ja-jp.json +62 -1
- package/projects/tgo-canopy-ui/assets/i18n/nb-no.json +62 -1
- package/projects/tgo-canopy-ui/assets/i18n/nl.json +62 -1
- package/projects/tgo-canopy-ui/assets/i18n/pl-pl.json +62 -1
- package/projects/tgo-canopy-ui/assets/i18n/pt-br.json +62 -1
- package/projects/tgo-canopy-ui/assets/i18n/sv-se.json +62 -1
- package/providers/is-mobile.d.ts +2 -0
- package/public-api.d.ts +151 -14
- package/utils/autocomplete-utils.d.ts +12 -0
- package/utils/hex-to-rgb.d.ts +1 -0
- package/utils/table.utils.d.ts +6 -0
- package/components/alert-banner/index.d.ts +0 -1
- package/components/alert-banner/public-api.d.ts +0 -2
- package/components/avatar/index.d.ts +0 -1
- package/components/avatar/public-api.d.ts +0 -3
- package/components/badge/index.d.ts +0 -1
- package/components/badge/public-api.d.ts +0 -3
- package/components/button/index.d.ts +0 -1
- package/components/button/public-api.d.ts +0 -3
- package/components/card/index.d.ts +0 -1
- package/components/card/public-api.d.ts +0 -3
- package/components/checkbox/index.d.ts +0 -1
- package/components/checkbox/public-api.d.ts +0 -2
- package/components/field/index.d.ts +0 -1
- package/components/field/public-api.d.ts +0 -3
- package/components/icon/index.d.ts +0 -1
- package/components/icon/public-api.d.ts +0 -3
- package/components/logo/index.d.ts +0 -1
- package/components/logo/public-api.d.ts +0 -3
- package/components/radio-button/index.d.ts +0 -1
- package/components/radio-button/public-api.d.ts +0 -2
- package/components/side-panel/index.d.ts +0 -1
- package/components/side-panel/public-api.d.ts +0 -3
- package/components/snackbar/index.d.ts +0 -1
- package/components/snackbar/public-api.d.ts +0 -4
- package/components/spinner/index.d.ts +0 -1
- package/components/spinner/public-api.d.ts +0 -3
- package/components/tooltip/index.d.ts +0 -1
- package/components/tooltip/public-api.d.ts +0 -3
- package/esm2022/components/alert-banner/index.mjs +0 -2
- package/esm2022/components/alert-banner/public-api.mjs +0 -3
- package/esm2022/components/avatar/index.mjs +0 -2
- package/esm2022/components/avatar/public-api.mjs +0 -4
- package/esm2022/components/badge/index.mjs +0 -2
- package/esm2022/components/badge/public-api.mjs +0 -4
- package/esm2022/components/button/index.mjs +0 -2
- package/esm2022/components/button/public-api.mjs +0 -4
- package/esm2022/components/card/index.mjs +0 -2
- package/esm2022/components/card/public-api.mjs +0 -4
- package/esm2022/components/checkbox/index.mjs +0 -2
- package/esm2022/components/checkbox/public-api.mjs +0 -3
- package/esm2022/components/field/index.mjs +0 -2
- package/esm2022/components/field/public-api.mjs +0 -4
- package/esm2022/components/icon/index.mjs +0 -2
- package/esm2022/components/icon/public-api.mjs +0 -4
- package/esm2022/components/logo/index.mjs +0 -2
- package/esm2022/components/logo/public-api.mjs +0 -4
- package/esm2022/components/radio-button/index.mjs +0 -2
- package/esm2022/components/radio-button/public-api.mjs +0 -3
- package/esm2022/components/side-panel/index.mjs +0 -2
- package/esm2022/components/side-panel/public-api.mjs +0 -4
- package/esm2022/components/snackbar/index.mjs +0 -2
- package/esm2022/components/snackbar/public-api.mjs +0 -5
- package/esm2022/components/spinner/index.mjs +0 -2
- package/esm2022/components/spinner/public-api.mjs +0 -4
- package/esm2022/components/tooltip/index.mjs +0 -2
- package/esm2022/components/tooltip/public-api.mjs +0 -4
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
import { animate, style, transition, trigger } from '@angular/animations';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, Output, ViewEncapsulation, forwardRef, Optional, Inject, ViewChild } from '@angular/core';
|
|
3
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
import * as i2 from "../icon/icon.component";
|
|
7
|
+
import * as i3 from "../progress-bar/progress-bar.component";
|
|
8
|
+
import * as i4 from "../../directives/drag-drop.directive";
|
|
9
|
+
import * as i5 from "../../pipes/ui-translate.pipe";
|
|
10
|
+
export class FileUploadComponent {
|
|
11
|
+
constructor(defaultAppTheme) {
|
|
12
|
+
this.defaultAppTheme = defaultAppTheme;
|
|
13
|
+
this.class = 'ui-file-upload';
|
|
14
|
+
/**
|
|
15
|
+
* File upload disabled
|
|
16
|
+
*
|
|
17
|
+
* @type {boolean}
|
|
18
|
+
* @memberof FileUploadComponent
|
|
19
|
+
*/
|
|
20
|
+
this.disabled = false;
|
|
21
|
+
/**
|
|
22
|
+
* Existing file information
|
|
23
|
+
*
|
|
24
|
+
* @type {(File | null)}
|
|
25
|
+
* @memberof FileUploadComponent
|
|
26
|
+
*/
|
|
27
|
+
this.file = null;
|
|
28
|
+
/**
|
|
29
|
+
* Color of the file upload.
|
|
30
|
+
* Defaults to Test Gorilla primary color.
|
|
31
|
+
*
|
|
32
|
+
* @type {string}
|
|
33
|
+
* @memberof FileUploadComponent
|
|
34
|
+
*/
|
|
35
|
+
this.companyColor = '';
|
|
36
|
+
/**
|
|
37
|
+
*
|
|
38
|
+
* Defines the application theme
|
|
39
|
+
*
|
|
40
|
+
* @type {ApplicationTheme}
|
|
41
|
+
* @memberof FileUploadComponent
|
|
42
|
+
*/
|
|
43
|
+
this.applicationTheme = 'light';
|
|
44
|
+
/**
|
|
45
|
+
* A string representing the ARIA requirement for accessibility.
|
|
46
|
+
* This attribute is used to indicate whether an input field is required for form submission.
|
|
47
|
+
* @type {boolean}
|
|
48
|
+
* @memberof FileUploadComponent
|
|
49
|
+
*/
|
|
50
|
+
this.ariaRequired = false;
|
|
51
|
+
this.OnDrop = new EventEmitter();
|
|
52
|
+
this.translationContext = 'FILE_UPLOAD.';
|
|
53
|
+
/**
|
|
54
|
+
* @ignore
|
|
55
|
+
*/
|
|
56
|
+
this.onChange = (_) => {
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* @ignore
|
|
60
|
+
*/
|
|
61
|
+
this.onTouch = () => {
|
|
62
|
+
};
|
|
63
|
+
this.isMissedMinSize = false;
|
|
64
|
+
this.progress = false;
|
|
65
|
+
this.success = false;
|
|
66
|
+
this.isCanceled = false;
|
|
67
|
+
if (defaultAppTheme) {
|
|
68
|
+
this.applicationTheme = defaultAppTheme;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
ngOnInit() {
|
|
72
|
+
this.browse = true;
|
|
73
|
+
}
|
|
74
|
+
//When file is dropped
|
|
75
|
+
onFileDropped(files) {
|
|
76
|
+
this.emitFile(files);
|
|
77
|
+
}
|
|
78
|
+
//When input changes
|
|
79
|
+
onChangeUpload(event) {
|
|
80
|
+
this.isCanceled = false;
|
|
81
|
+
const element = event.currentTarget;
|
|
82
|
+
this.emitFile(element.files || new FileList());
|
|
83
|
+
}
|
|
84
|
+
//Emit drop file
|
|
85
|
+
emitFile(files) {
|
|
86
|
+
const [file] = Array.from(files);
|
|
87
|
+
this.file = file;
|
|
88
|
+
this.errors = null;
|
|
89
|
+
this.onTouch();
|
|
90
|
+
this.isMissedMinSize =
|
|
91
|
+
!file?.size && !this.minFileSizeMB ? true : this.fileSizeToMB(file?.size ?? 0) <= this.minFileSizeMB;
|
|
92
|
+
if (!this.isMissedMinSize) {
|
|
93
|
+
this.onChange(this.file);
|
|
94
|
+
this.OnDrop.emit(file);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
//Show progress-bar
|
|
98
|
+
showProgress() {
|
|
99
|
+
this.browse = false;
|
|
100
|
+
return !!(this.file && !this.errors && !this.isMissedMinSize);
|
|
101
|
+
}
|
|
102
|
+
//Show success elements
|
|
103
|
+
showSuccess() {
|
|
104
|
+
return !!(this.file && this.uploadProgress === 100 && !this.errors && !this.isMissedMinSize);
|
|
105
|
+
}
|
|
106
|
+
//Show browse when there are error
|
|
107
|
+
showBrowse() {
|
|
108
|
+
return !!(this.errors || this.isMissedMinSize);
|
|
109
|
+
}
|
|
110
|
+
ngOnChanges(changes) {
|
|
111
|
+
if (!this.isCanceled) {
|
|
112
|
+
if (changes['uploadProgress'] || changes['file']) {
|
|
113
|
+
this.progress = this.showProgress();
|
|
114
|
+
this.success = this.showSuccess();
|
|
115
|
+
this.browse = this.showBrowse();
|
|
116
|
+
}
|
|
117
|
+
if (changes['errors']) {
|
|
118
|
+
this.progress = this.showProgress();
|
|
119
|
+
this.success = this.showSuccess();
|
|
120
|
+
this.browse = this.showBrowse();
|
|
121
|
+
}
|
|
122
|
+
if (changes['applicationTheme']) {
|
|
123
|
+
this.compColor = this.getCompanyColor();
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
writeValue(value) {
|
|
128
|
+
if (value) {
|
|
129
|
+
this.file = value || null;
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
this.file = null;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
registerOnChange(fn) {
|
|
136
|
+
this.onChange = fn;
|
|
137
|
+
}
|
|
138
|
+
registerOnTouched(fn) {
|
|
139
|
+
this.onTouch = fn;
|
|
140
|
+
}
|
|
141
|
+
setDisabledState(isDisabled) {
|
|
142
|
+
this.disabled = isDisabled;
|
|
143
|
+
}
|
|
144
|
+
getCompanyColor() {
|
|
145
|
+
return this.companyColor || (this.applicationTheme === 'classic' ? '#46A997' : '#D410AA');
|
|
146
|
+
}
|
|
147
|
+
fileSizeToMB(fileSize) {
|
|
148
|
+
return fileSize / 1024 / 1024;
|
|
149
|
+
}
|
|
150
|
+
onKeydown(ev) {
|
|
151
|
+
if (ev.key === 'Enter' || ev.key === ' ') {
|
|
152
|
+
this.fileDrop.nativeElement.click();
|
|
153
|
+
}
|
|
154
|
+
else if (ev.key === 'Escape') {
|
|
155
|
+
this.file = null;
|
|
156
|
+
this.success = false;
|
|
157
|
+
this.progress = false;
|
|
158
|
+
this.errors = null;
|
|
159
|
+
this.isMissedMinSize = false;
|
|
160
|
+
this.browse = true;
|
|
161
|
+
this.isCanceled = true;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FileUploadComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
165
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FileUploadComponent, selector: "ui-file-upload", inputs: { maxFileSizeMB: "maxFileSizeMB", minFileSizeMB: "minFileSizeMB", supportedFileTypes: "supportedFileTypes", uploadProgress: "uploadProgress", errors: "errors", disabled: "disabled", file: "file", companyColor: "companyColor", applicationTheme: "applicationTheme", ariaLabel: "ariaLabel", ariaRequired: "ariaRequired" }, outputs: { OnDrop: "OnDrop" }, host: { properties: { "class": "this.class", "style.--color": "this.compColor" } }, providers: [
|
|
166
|
+
{
|
|
167
|
+
provide: NG_VALUE_ACCESSOR,
|
|
168
|
+
useExisting: forwardRef(() => FileUploadComponent),
|
|
169
|
+
multi: true,
|
|
170
|
+
},
|
|
171
|
+
], viewQueries: [{ propertyName: "fileDrop", first: true, predicate: ["fileDrop"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container>\n <div\n class=\"upload-file-container\"\n uiDragDrop\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-required]=\"ariaRequired\"\n [attr.theme]=\"applicationTheme\"\n [ngClass]=\"{ 'upload-errors': !!errors || isMissedMinSize, 'upload-file-container-disabled': disabled }\"\n (fileDropped)=\"onFileDropped($event)\"\n [tabIndex]=\"0\"\n (keydown)=\"onKeydown($event)\"\n (click)=\"fileDrop.nativeElement.click()\"\n >\n <span style=\"position: absolute; left: -9999px;\" [attr.aria-live]=\"'polite'\">\n {{ success ? ('FILE_UPLOAD.FILE_UPLOADING_SUCCESS' | uiTranslate | async) : progress ? ('FILE_UPLOAD.UPLOADING' | uiTranslate | async) : '' }}\n </span>\n <div *ngIf=\"(browse && !(success && !!file && progress))\" [@inOutAnimation] class=\"upload-files\">\n <div class=\"upload-browse\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n\n <div class=\"errors\" *ngIf=\"!!errors || isMissedMinSize\" role=\"alert\">\n <ng-container *ngIf=\"!!errors\">\n <span *ngFor=\"let error of errors\"><ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ error }}</span>\n </ng-container>\n\n <span *ngIf=\"isMissedMinSize\">\n <ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ translationContext + 'MIN_SIZE_ERROR' | uiTranslate : { min: minFileSizeMB } | async }}\n </span>\n </div>\n <input\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"'upload-supported-files'\"\n [tabIndex]=\"-1\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"file\"\n [accept]=\"supportedFileTypes\"\n [disabled]=\"disabled\"\n (change)=\"onChangeUpload($event)\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate | async }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate | async }}\n <span\n class=\"semibold\"> {{ (translationContext + 'BROWSE') | uiTranslate | async | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate | async }}\n </p>\n <span class=\"upload-text\">{{ maxFileSizeMB }}{{ (translationContext + 'MAX_SIZE') | uiTranslate | async }}</span>\n <span *ngIf=\"minFileSizeMB\" class=\"upload-text\">{{ minFileSizeMB }}{{ (translationContext + 'MIN_SIZE') | uiTranslate | async }}</span>\n </div>\n </div>\n <div class=\"upload-change\" [@inOutAnimationChange] *ngIf=\"!!success && !!file && !!progress\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n <input\n [tabIndex]=\"-1\"\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"success || progress ? '' : 'supported-file-types'\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"fileTest\"\n [accept]=\"supportedFileTypes\"\n (change)=\"onChangeUpload($event)\"\n [disabled]=\"disabled\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate | async }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate | async }} <span\n class=\"semibold\">{{ (translationContext + 'CHANGE') | uiTranslate | async | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate | async }}\n </p>\n <span class=\"upload-text\"\n ><strong>{{ file.name }}</strong></span\n >\n </div>\n <div class=\"upload-progress\" [@inOutAnimationProgress] *ngIf=\"!!progress && !!file && !success\">\n <p>{{ file.name }}</p>\n <ui-progress-bar [progress]=\"uploadProgress\"\n [companyColor]=\"compColor\"\n [applicationTheme]=\"applicationTheme\"></ui-progress-bar>\n <p class=\"upload-text\">\n {{ (translationContext + 'UPLOADING') | uiTranslate | async }} <span>{{ uploadProgress }}</span\n >%\n </p>\n </div>\n\n <ng-template #iconTpl>\n <ui-icon *ngIf=\"applicationTheme === 'classic'; else rebrandedIconTpl\" class=\"upload-icon\"\n name=\"File-upload\"></ui-icon>\n <ng-template #rebrandedIconTpl>\n <ui-icon class=\"upload-icon\"\n name=\"Upload\"\n [size]=\"'24'\"\n [applicationTheme]=\"applicationTheme\"></ui-icon>\n </ng-template>\n </ng-template>\n <ng-template #rebrandedDnDCopyTpl>\n <p id=\"'drag-and-drop'\">{{ (translationContext + 'DRAG_AND_DROP') | uiTranslate | async }}</p>\n </ng-template>\n\n <div\n *ngIf=\"!!supportedFileTypes\"\n [attr.theme]=\"applicationTheme\"\n class=\"upload-supported-files\"\n id=\"upload-supported-files\">\n <span >{{ (translationContext + 'SUPPORTED_FILE_TYPES') | uiTranslate | async }}</span>{{ supportedFileTypes }}\n </div>\n </div>\n</ng-container>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.upload-file-container{border-radius:8px;border:1px dashed #888888;background:#fff;display:flex;justify-content:center;align-items:center;height:196px;flex-flow:column;position:relative;max-width:563px;cursor:pointer}.upload-file-container:focus-visible{outline-offset:2px;outline:2px solid #242424;animation:focus-ring-animation .4s forwards}@keyframes focus-ring-animation{0%{outline-width:4px}to{outline-width:2px}}.upload-file-container.upload-errors{border:1px dashed #cb7b7a}.upload-file-container .upload-files{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;height:196px}.upload-file-container .upload-change,.upload-file-container .upload-browse{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;position:relative;height:196px}.upload-file-container .upload-change ui-icon.upload-icon,.upload-file-container .upload-browse ui-icon.upload-icon{margin-bottom:16px}.upload-file-container .upload-change ui-icon.upload-icon mat-icon.size-16 svg,.upload-file-container .upload-browse ui-icon.upload-icon mat-icon.size-16 svg{width:32px;height:32px}.upload-file-container .upload-change input,.upload-file-container .upload-browse input{visibility:hidden;position:absolute;z-index:2;width:100%;height:100%;cursor:pointer}.upload-file-container .upload-change .upload-text,.upload-file-container .upload-browse .upload-text{margin-top:20px}.upload-file-container .upload-change p,.upload-file-container .upload-browse p{margin:0}.upload-file-container .upload-change p .semibold,.upload-file-container .upload-browse p .semibold{font-weight:400;text-decoration:underline;color:var(--color)}.upload-file-container .upload-change .errors,.upload-file-container .upload-browse .errors{width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;margin-bottom:20px;font-size:12px;line-height:16px;color:#cb7b7a}.upload-file-container .upload-change .errors span,.upload-file-container .upload-browse .errors span{display:flex;align-items:center;margin-bottom:5px}.upload-file-container .upload-change .errors span:last-child,.upload-file-container .upload-browse .errors span:last-child{margin-bottom:0}.upload-file-container .upload-change .errors .error-icon,.upload-file-container .upload-browse .errors .error-icon{margin-right:4px}.upload-file-container .upload-change .errors .error-icon svg,.upload-file-container .upload-browse .errors .error-icon svg{color:#cb7b7a}.upload-file-container .upload-change .errors .error-icon mat-icon.size-16 svg,.upload-file-container .upload-browse .errors .error-icon mat-icon.size-16 svg{width:16px;height:16px}.upload-file-container .upload-progress{padding:0 32px;width:100%}.upload-file-container .upload-text{text-align:right}.upload-file-container[theme=dark],.upload-file-container[theme=light]{border-radius:10px;border-color:#242424}.upload-file-container[theme=dark].upload-file-container-disabled,.upload-file-container[theme=light].upload-file-container-disabled{border-color:#919191;color:#919191;background-color:#f4f4f4}.upload-file-container[theme=dark].upload-file-container-disabled .upload-icon svg,.upload-file-container[theme=light].upload-file-container-disabled .upload-icon svg{color:#919191}.upload-file-container[theme=dark].upload-errors,.upload-file-container[theme=light].upload-errors{border-color:#e02800}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):hover,.upload-file-container[theme=light]:not(.upload-file-container-disabled):hover{background:#f4f4f4;border-style:solid}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):active,.upload-file-container[theme=light]:not(.upload-file-container-disabled):active{background:#f4f4f4;transform:scale(.98)}.upload-file-container[theme=dark] .errors,.upload-file-container[theme=light] .errors{color:#e02800;font-size:14px}.upload-file-container[theme=dark] .errors .error-icon svg,.upload-file-container[theme=light] .errors .error-icon svg{color:#e02800}.upload-supported-files{left:0;position:absolute;top:100%;font-size:12px;line-height:16px;margin-top:8px;width:100%}.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:563px}.upload-supported-files span{font-weight:700;margin-right:5px}@media (max-width: 600px){.upload-file-container,.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:100%}}.transparent{opacity:0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "applicationTheme", "useFullIconName"] }, { kind: "component", type: i3.ProgressBarComponent, selector: "ui-progress-bar", inputs: ["companyColor", "progress", "mode", "buffer", "applicationTheme", "ariaLabel", "ariaDescribedBy", "showPercentage"] }, { kind: "directive", type: i4.DragDropDirective, selector: "[uiDragDrop]", outputs: ["fileDropped"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.LowerCasePipe, name: "lowercase" }, { kind: "pipe", type: i5.UiTranslatePipe, name: "uiTranslate" }], animations: [
|
|
172
|
+
trigger('inOutAnimation', [
|
|
173
|
+
transition(':enter', [
|
|
174
|
+
style({ opacity: 0, height: 0 }),
|
|
175
|
+
animate('0.2s ease-out', style({ opacity: 1, height: '196px' }))
|
|
176
|
+
]),
|
|
177
|
+
transition(':leave', [
|
|
178
|
+
style({ opacity: 1, height: '196px' }),
|
|
179
|
+
animate('0.2s ease-in', style({ opacity: 0, height: 0 }))
|
|
180
|
+
])
|
|
181
|
+
]),
|
|
182
|
+
trigger('inOutAnimationProgress', [
|
|
183
|
+
transition(':enter', [
|
|
184
|
+
style({ opacity: 0, height: 0 }),
|
|
185
|
+
animate('0.2s ease-out', style({ opacity: 1, height: '196px' }))
|
|
186
|
+
]),
|
|
187
|
+
transition(':leave', [
|
|
188
|
+
style({ opacity: 1, height: '196px' }),
|
|
189
|
+
animate('0.2s ease-in', style({ opacity: 0, height: 0 }))
|
|
190
|
+
])
|
|
191
|
+
]),
|
|
192
|
+
trigger('inOutAnimationChange', [
|
|
193
|
+
transition(':enter', [
|
|
194
|
+
style({ opacity: 0, height: 0 }),
|
|
195
|
+
animate('0.2s ease-out', style({ opacity: 1, height: '196px' }))
|
|
196
|
+
]),
|
|
197
|
+
transition(':leave', [
|
|
198
|
+
style({ opacity: 1, height: '196px' }),
|
|
199
|
+
animate('0.2s ease-in', style({ opacity: 0, height: 0 }))
|
|
200
|
+
])
|
|
201
|
+
])
|
|
202
|
+
], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
203
|
+
}
|
|
204
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FileUploadComponent, decorators: [{
|
|
205
|
+
type: Component,
|
|
206
|
+
args: [{ selector: 'ui-file-upload', encapsulation: ViewEncapsulation.None, providers: [
|
|
207
|
+
{
|
|
208
|
+
provide: NG_VALUE_ACCESSOR,
|
|
209
|
+
useExisting: forwardRef(() => FileUploadComponent),
|
|
210
|
+
multi: true,
|
|
211
|
+
},
|
|
212
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, animations: [
|
|
213
|
+
trigger('inOutAnimation', [
|
|
214
|
+
transition(':enter', [
|
|
215
|
+
style({ opacity: 0, height: 0 }),
|
|
216
|
+
animate('0.2s ease-out', style({ opacity: 1, height: '196px' }))
|
|
217
|
+
]),
|
|
218
|
+
transition(':leave', [
|
|
219
|
+
style({ opacity: 1, height: '196px' }),
|
|
220
|
+
animate('0.2s ease-in', style({ opacity: 0, height: 0 }))
|
|
221
|
+
])
|
|
222
|
+
]),
|
|
223
|
+
trigger('inOutAnimationProgress', [
|
|
224
|
+
transition(':enter', [
|
|
225
|
+
style({ opacity: 0, height: 0 }),
|
|
226
|
+
animate('0.2s ease-out', style({ opacity: 1, height: '196px' }))
|
|
227
|
+
]),
|
|
228
|
+
transition(':leave', [
|
|
229
|
+
style({ opacity: 1, height: '196px' }),
|
|
230
|
+
animate('0.2s ease-in', style({ opacity: 0, height: 0 }))
|
|
231
|
+
])
|
|
232
|
+
]),
|
|
233
|
+
trigger('inOutAnimationChange', [
|
|
234
|
+
transition(':enter', [
|
|
235
|
+
style({ opacity: 0, height: 0 }),
|
|
236
|
+
animate('0.2s ease-out', style({ opacity: 1, height: '196px' }))
|
|
237
|
+
]),
|
|
238
|
+
transition(':leave', [
|
|
239
|
+
style({ opacity: 1, height: '196px' }),
|
|
240
|
+
animate('0.2s ease-in', style({ opacity: 0, height: 0 }))
|
|
241
|
+
])
|
|
242
|
+
])
|
|
243
|
+
], template: "<ng-container>\n <div\n class=\"upload-file-container\"\n uiDragDrop\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-required]=\"ariaRequired\"\n [attr.theme]=\"applicationTheme\"\n [ngClass]=\"{ 'upload-errors': !!errors || isMissedMinSize, 'upload-file-container-disabled': disabled }\"\n (fileDropped)=\"onFileDropped($event)\"\n [tabIndex]=\"0\"\n (keydown)=\"onKeydown($event)\"\n (click)=\"fileDrop.nativeElement.click()\"\n >\n <span style=\"position: absolute; left: -9999px;\" [attr.aria-live]=\"'polite'\">\n {{ success ? ('FILE_UPLOAD.FILE_UPLOADING_SUCCESS' | uiTranslate | async) : progress ? ('FILE_UPLOAD.UPLOADING' | uiTranslate | async) : '' }}\n </span>\n <div *ngIf=\"(browse && !(success && !!file && progress))\" [@inOutAnimation] class=\"upload-files\">\n <div class=\"upload-browse\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n\n <div class=\"errors\" *ngIf=\"!!errors || isMissedMinSize\" role=\"alert\">\n <ng-container *ngIf=\"!!errors\">\n <span *ngFor=\"let error of errors\"><ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ error }}</span>\n </ng-container>\n\n <span *ngIf=\"isMissedMinSize\">\n <ui-icon name=\"Error\" class=\"error-icon\"></ui-icon>\n {{ translationContext + 'MIN_SIZE_ERROR' | uiTranslate : { min: minFileSizeMB } | async }}\n </span>\n </div>\n <input\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"'upload-supported-files'\"\n [tabIndex]=\"-1\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"file\"\n [accept]=\"supportedFileTypes\"\n [disabled]=\"disabled\"\n (change)=\"onChangeUpload($event)\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate | async }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate | async }}\n <span\n class=\"semibold\"> {{ (translationContext + 'BROWSE') | uiTranslate | async | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate | async }}\n </p>\n <span class=\"upload-text\">{{ maxFileSizeMB }}{{ (translationContext + 'MAX_SIZE') | uiTranslate | async }}</span>\n <span *ngIf=\"minFileSizeMB\" class=\"upload-text\">{{ minFileSizeMB }}{{ (translationContext + 'MIN_SIZE') | uiTranslate | async }}</span>\n </div>\n </div>\n <div class=\"upload-change\" [@inOutAnimationChange] *ngIf=\"!!success && !!file && !!progress\">\n <ng-container [ngTemplateOutlet]=\"iconTpl\"></ng-container>\n <input\n [tabIndex]=\"-1\"\n [attr.aria-labelledby]=\"success || progress ? '' : 'drag-and-drop'\"\n [attr.aria-describedby]=\"success || progress ? '' : 'supported-file-types'\"\n class=\"form-control\"\n #fileDrop\n type=\"file\"\n id=\"fileTest\"\n [accept]=\"supportedFileTypes\"\n (change)=\"onChangeUpload($event)\"\n [disabled]=\"disabled\"\n />\n <label for=\"file\" class=\"transparent\">{{ !!file && success ? '' : (translationContext + 'CHOOSE_FILE') | uiTranslate | async }}</label>\n <p\n *ngIf=\"applicationTheme === 'classic'; else rebrandedDnDCopyTpl\">{{ (translationContext + 'DRAG_AND_DROP_OR') | uiTranslate | async }} <span\n class=\"semibold\">{{ (translationContext + 'CHANGE') | uiTranslate | async | lowercase }}</span> {{ (translationContext + 'YOUR_FILES') | uiTranslate | async }}\n </p>\n <span class=\"upload-text\"\n ><strong>{{ file.name }}</strong></span\n >\n </div>\n <div class=\"upload-progress\" [@inOutAnimationProgress] *ngIf=\"!!progress && !!file && !success\">\n <p>{{ file.name }}</p>\n <ui-progress-bar [progress]=\"uploadProgress\"\n [companyColor]=\"compColor\"\n [applicationTheme]=\"applicationTheme\"></ui-progress-bar>\n <p class=\"upload-text\">\n {{ (translationContext + 'UPLOADING') | uiTranslate | async }} <span>{{ uploadProgress }}</span\n >%\n </p>\n </div>\n\n <ng-template #iconTpl>\n <ui-icon *ngIf=\"applicationTheme === 'classic'; else rebrandedIconTpl\" class=\"upload-icon\"\n name=\"File-upload\"></ui-icon>\n <ng-template #rebrandedIconTpl>\n <ui-icon class=\"upload-icon\"\n name=\"Upload\"\n [size]=\"'24'\"\n [applicationTheme]=\"applicationTheme\"></ui-icon>\n </ng-template>\n </ng-template>\n <ng-template #rebrandedDnDCopyTpl>\n <p id=\"'drag-and-drop'\">{{ (translationContext + 'DRAG_AND_DROP') | uiTranslate | async }}</p>\n </ng-template>\n\n <div\n *ngIf=\"!!supportedFileTypes\"\n [attr.theme]=\"applicationTheme\"\n class=\"upload-supported-files\"\n id=\"upload-supported-files\">\n <span >{{ (translationContext + 'SUPPORTED_FILE_TYPES') | uiTranslate | async }}</span>{{ supportedFileTypes }}\n </div>\n </div>\n</ng-container>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}.upload-file-container{border-radius:8px;border:1px dashed #888888;background:#fff;display:flex;justify-content:center;align-items:center;height:196px;flex-flow:column;position:relative;max-width:563px;cursor:pointer}.upload-file-container:focus-visible{outline-offset:2px;outline:2px solid #242424;animation:focus-ring-animation .4s forwards}@keyframes focus-ring-animation{0%{outline-width:4px}to{outline-width:2px}}.upload-file-container.upload-errors{border:1px dashed #cb7b7a}.upload-file-container .upload-files{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;height:196px}.upload-file-container .upload-change,.upload-file-container .upload-browse{display:flex;flex-flow:column;align-items:center;justify-content:center;width:100%;position:relative;height:196px}.upload-file-container .upload-change ui-icon.upload-icon,.upload-file-container .upload-browse ui-icon.upload-icon{margin-bottom:16px}.upload-file-container .upload-change ui-icon.upload-icon mat-icon.size-16 svg,.upload-file-container .upload-browse ui-icon.upload-icon mat-icon.size-16 svg{width:32px;height:32px}.upload-file-container .upload-change input,.upload-file-container .upload-browse input{visibility:hidden;position:absolute;z-index:2;width:100%;height:100%;cursor:pointer}.upload-file-container .upload-change .upload-text,.upload-file-container .upload-browse .upload-text{margin-top:20px}.upload-file-container .upload-change p,.upload-file-container .upload-browse p{margin:0}.upload-file-container .upload-change p .semibold,.upload-file-container .upload-browse p .semibold{font-weight:400;text-decoration:underline;color:var(--color)}.upload-file-container .upload-change .errors,.upload-file-container .upload-browse .errors{width:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;margin-bottom:20px;font-size:12px;line-height:16px;color:#cb7b7a}.upload-file-container .upload-change .errors span,.upload-file-container .upload-browse .errors span{display:flex;align-items:center;margin-bottom:5px}.upload-file-container .upload-change .errors span:last-child,.upload-file-container .upload-browse .errors span:last-child{margin-bottom:0}.upload-file-container .upload-change .errors .error-icon,.upload-file-container .upload-browse .errors .error-icon{margin-right:4px}.upload-file-container .upload-change .errors .error-icon svg,.upload-file-container .upload-browse .errors .error-icon svg{color:#cb7b7a}.upload-file-container .upload-change .errors .error-icon mat-icon.size-16 svg,.upload-file-container .upload-browse .errors .error-icon mat-icon.size-16 svg{width:16px;height:16px}.upload-file-container .upload-progress{padding:0 32px;width:100%}.upload-file-container .upload-text{text-align:right}.upload-file-container[theme=dark],.upload-file-container[theme=light]{border-radius:10px;border-color:#242424}.upload-file-container[theme=dark].upload-file-container-disabled,.upload-file-container[theme=light].upload-file-container-disabled{border-color:#919191;color:#919191;background-color:#f4f4f4}.upload-file-container[theme=dark].upload-file-container-disabled .upload-icon svg,.upload-file-container[theme=light].upload-file-container-disabled .upload-icon svg{color:#919191}.upload-file-container[theme=dark].upload-errors,.upload-file-container[theme=light].upload-errors{border-color:#e02800}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):hover,.upload-file-container[theme=light]:not(.upload-file-container-disabled):hover{background:#f4f4f4;border-style:solid}.upload-file-container[theme=dark]:not(.upload-file-container-disabled):active,.upload-file-container[theme=light]:not(.upload-file-container-disabled):active{background:#f4f4f4;transform:scale(.98)}.upload-file-container[theme=dark] .errors,.upload-file-container[theme=light] .errors{color:#e02800;font-size:14px}.upload-file-container[theme=dark] .errors .error-icon svg,.upload-file-container[theme=light] .errors .error-icon svg{color:#e02800}.upload-supported-files{left:0;position:absolute;top:100%;font-size:12px;line-height:16px;margin-top:8px;width:100%}.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:563px}.upload-supported-files span{font-weight:700;margin-right:5px}@media (max-width: 600px){.upload-file-container,.upload-supported-files[theme=dark],.upload-supported-files[theme=light]{max-width:100%}}.transparent{opacity:0}\n"] }]
|
|
244
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
245
|
+
type: Optional
|
|
246
|
+
}, {
|
|
247
|
+
type: Inject,
|
|
248
|
+
args: ['CANOPYUI_DEFAULT_APPLICATION_THEME']
|
|
249
|
+
}] }], propDecorators: { class: [{
|
|
250
|
+
type: HostBinding
|
|
251
|
+
}], maxFileSizeMB: [{
|
|
252
|
+
type: Input
|
|
253
|
+
}], minFileSizeMB: [{
|
|
254
|
+
type: Input
|
|
255
|
+
}], supportedFileTypes: [{
|
|
256
|
+
type: Input
|
|
257
|
+
}], uploadProgress: [{
|
|
258
|
+
type: Input
|
|
259
|
+
}], errors: [{
|
|
260
|
+
type: Input
|
|
261
|
+
}], disabled: [{
|
|
262
|
+
type: Input
|
|
263
|
+
}], file: [{
|
|
264
|
+
type: Input
|
|
265
|
+
}], companyColor: [{
|
|
266
|
+
type: Input
|
|
267
|
+
}], compColor: [{
|
|
268
|
+
type: HostBinding,
|
|
269
|
+
args: ['style.--color']
|
|
270
|
+
}], applicationTheme: [{
|
|
271
|
+
type: Input
|
|
272
|
+
}], ariaLabel: [{
|
|
273
|
+
type: Input
|
|
274
|
+
}], ariaRequired: [{
|
|
275
|
+
type: Input
|
|
276
|
+
}], OnDrop: [{
|
|
277
|
+
type: Output
|
|
278
|
+
}], fileDrop: [{
|
|
279
|
+
type: ViewChild,
|
|
280
|
+
args: ['fileDrop']
|
|
281
|
+
}] } });
|
|
282
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGdvLWNhbm9weS11aS9jb21wb25lbnRzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUUsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBR0wsTUFBTSxFQUVOLGlCQUFpQixFQUNqQixVQUFVLEVBQ1YsUUFBUSxFQUNSLE1BQU0sRUFDTixTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7O0FBaUR6RSxNQUFNLE9BQU8sbUJBQW1CO0lBc0g5QixZQUM2RSxlQUFpQztRQUFqQyxvQkFBZSxHQUFmLGVBQWUsQ0FBa0I7UUF0SC9GLFVBQUssR0FBRyxnQkFBZ0IsQ0FBQztRQXdDeEM7Ozs7O1dBS0c7UUFDTSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRTFCOzs7OztXQUtHO1FBQ00sU0FBSSxHQUFnQixJQUFJLENBQUM7UUFFbEM7Ozs7OztXQU1HO1FBQ00saUJBQVksR0FBa0IsRUFBRSxDQUFDO1FBSzFDOzs7Ozs7V0FNRztRQUNNLHFCQUFnQixHQUFxQixPQUFPLENBQUM7UUFVdEQ7Ozs7O1dBS0c7UUFDTSxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUVwQixXQUFNLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFJN0MsdUJBQWtCLEdBQUcsY0FBYyxDQUFDO1FBRXZEOztXQUVHO1FBQ0gsYUFBUSxHQUFHLENBQUMsQ0FBTSxFQUFFLEVBQUU7UUFDdEIsQ0FBQyxDQUFDO1FBRUY7O1dBRUc7UUFDSCxZQUFPLEdBQUcsR0FBRyxFQUFFO1FBQ2YsQ0FBQyxDQUFDO1FBRUYsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFDeEIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRWhCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFLakIsSUFBSSxlQUFlLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZUFBZSxDQUFDO1FBQzFDLENBQUM7SUFDSCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxzQkFBc0I7SUFDdEIsYUFBYSxDQUFDLEtBQWU7UUFDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBRUQsb0JBQW9CO0lBQ3BCLGNBQWMsQ0FBQyxLQUFZO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxhQUFpQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxJQUFJLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELGdCQUFnQjtJQUNoQixRQUFRLENBQUMsS0FBZTtRQUN0QixNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNuQixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDZixJQUFJLENBQUMsZUFBZTtZQUNsQixDQUFDLElBQUksRUFBRSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ3ZHLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekIsQ0FBQztJQUNILENBQUM7SUFFRCxtQkFBbUI7SUFDbkIsWUFBWTtRQUNWLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVELHVCQUF1QjtJQUN2QixXQUFXO1FBQ1QsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxjQUFjLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMvRixDQUFDO0lBRUQsa0NBQWtDO0lBQ2xDLFVBQVU7UUFDUixPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNyQixJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO2dCQUNqRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDcEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2xDLENBQUM7WUFDRCxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO2dCQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDcEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2xDLENBQUM7WUFDRCxJQUFJLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQzFDLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFZO1FBQ3JCLElBQUksS0FBSyxFQUFFLENBQUM7WUFDVixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssSUFBSSxJQUFJLENBQUM7UUFDNUIsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNuQixDQUFDO0lBQ0gsQ0FBQztJQUVELGdCQUFnQixDQUFDLEVBQU87UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELGdCQUFnQixDQUFDLFVBQW1CO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO0lBQzdCLENBQUM7SUFFTyxlQUFlO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDNUYsQ0FBQztJQUVPLFlBQVksQ0FBQyxRQUFnQjtRQUNuQyxPQUFPLFFBQVEsR0FBRyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxTQUFTLENBQUMsRUFBaUI7UUFDekIsSUFBSSxFQUFFLENBQUMsR0FBRyxLQUFLLE9BQU8sSUFBSSxFQUFFLENBQUMsR0FBRyxLQUFLLEdBQUcsRUFBRSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFBO1FBQ3JDLENBQUM7YUFBTSxJQUFLLEVBQUUsQ0FBQyxHQUFHLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7WUFDakIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7WUFDdEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7WUFDbkIsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7WUFDN0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7WUFDbkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7UUFDekIsQ0FBQztJQUNILENBQUM7K0dBdE9VLG1CQUFtQixrQkF1SFIsb0NBQW9DO21HQXZIL0MsbUJBQW1CLG9lQXpDbkI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1CQUFtQixDQUFDO2dCQUNsRCxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YscUpDaENILHd2S0E4R0Esa25QRDVFYztZQUNWLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRTtnQkFDeEIsVUFBVSxDQUFDLFFBQVEsRUFBRTtvQkFDbkIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7b0JBQ2hDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztpQkFDakUsQ0FBQztnQkFDRixVQUFVLENBQUMsUUFBUSxFQUFFO29CQUNuQixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQztvQkFDdEMsT0FBTyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2lCQUMxRCxDQUFDO2FBQ0gsQ0FBQztZQUNGLE9BQU8sQ0FBQyx3QkFBd0IsRUFBRTtnQkFDaEMsVUFBVSxDQUFDLFFBQVEsRUFBRTtvQkFDbkIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7b0JBQ2hDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztpQkFDakUsQ0FBQztnQkFDRixVQUFVLENBQUMsUUFBUSxFQUFFO29CQUNuQixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQztvQkFDdEMsT0FBTyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2lCQUMxRCxDQUFDO2FBQ0gsQ0FBQztZQUNGLE9BQU8sQ0FBQyxzQkFBc0IsRUFBRTtnQkFDOUIsVUFBVSxDQUFDLFFBQVEsRUFBRTtvQkFDbkIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7b0JBQ2hDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztpQkFDakUsQ0FBQztnQkFDRixVQUFVLENBQUMsUUFBUSxFQUFFO29CQUNuQixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQztvQkFDdEMsT0FBTyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO2lCQUMxRCxDQUFDO2FBQ0gsQ0FBQztTQUNIOzs0RkFFVSxtQkFBbUI7a0JBOUMvQixTQUFTOytCQUNFLGdCQUFnQixpQkFHWCxpQkFBaUIsQ0FBQyxJQUFJLGFBQzFCO3dCQUNUOzRCQUNFLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLG9CQUFvQixDQUFDOzRCQUNsRCxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTSxjQUNuQzt3QkFDVixPQUFPLENBQUMsZ0JBQWdCLEVBQUU7NEJBQ3hCLFVBQVUsQ0FBQyxRQUFRLEVBQUU7Z0NBQ25CLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDO2dDQUNoQyxPQUFPLENBQUMsZUFBZSxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7NkJBQ2pFLENBQUM7NEJBQ0YsVUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDbkIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUM7Z0NBQ3RDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQzs2QkFDMUQsQ0FBQzt5QkFDSCxDQUFDO3dCQUNGLE9BQU8sQ0FBQyx3QkFBd0IsRUFBRTs0QkFDaEMsVUFBVSxDQUFDLFFBQVEsRUFBRTtnQ0FDbkIsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUM7Z0NBQ2hDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQzs2QkFDakUsQ0FBQzs0QkFDRixVQUFVLENBQUMsUUFBUSxFQUFFO2dDQUNuQixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQztnQ0FDdEMsT0FBTyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDOzZCQUMxRCxDQUFDO3lCQUNILENBQUM7d0JBQ0YsT0FBTyxDQUFDLHNCQUFzQixFQUFFOzRCQUM5QixVQUFVLENBQUMsUUFBUSxFQUFFO2dDQUNuQixLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsQ0FBQztnQ0FDaEMsT0FBTyxDQUFDLGVBQWUsRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDOzZCQUNqRSxDQUFDOzRCQUNGLFVBQVUsQ0FBQyxRQUFRLEVBQUU7Z0NBQ25CLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxDQUFDO2dDQUN0QyxPQUFPLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7NkJBQzFELENBQUM7eUJBQ0gsQ0FBQztxQkFDSDs7MEJBeUhFLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsb0NBQW9DO3lDQXRIM0MsS0FBSztzQkFBbkIsV0FBVztnQkFPSCxhQUFhO3NCQUFyQixLQUFLO2dCQU9HLGFBQWE7c0JBQXJCLEtBQUs7Z0JBUUcsa0JBQWtCO3NCQUExQixLQUFLO2dCQVFHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBUUcsTUFBTTtzQkFBZCxLQUFLO2dCQVFHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBUUcsSUFBSTtzQkFBWixLQUFLO2dCQVNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBR04sU0FBUztzQkFEUixXQUFXO3VCQUFDLGVBQWU7Z0JBVW5CLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFRRyxTQUFTO3NCQUFqQixLQUFLO2dCQVFHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRUksTUFBTTtzQkFBZixNQUFNO2dCQUVnQixRQUFRO3NCQUE5QixTQUFTO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhbmltYXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBmb3J3YXJkUmVmLFxuICBPcHRpb25hbCxcbiAgSW5qZWN0LFxuICBWaWV3Q2hpbGQsXG4gIEVsZW1lbnRSZWZcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvblRoZW1lIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FwcGxpY2F0aW9uLXRoZW1lLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndWktZmlsZS11cGxvYWQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmlsZS11cGxvYWQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9maWxlLXVwbG9hZC5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEZpbGVVcGxvYWRDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdpbk91dEFuaW1hdGlvbicsIFtcbiAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAwLCBoZWlnaHQ6IDAgfSksXG4gICAgICAgIGFuaW1hdGUoJzAuMnMgZWFzZS1vdXQnLCBzdHlsZSh7IG9wYWNpdHk6IDEsIGhlaWdodDogJzE5NnB4JyB9KSlcbiAgICAgIF0pLFxuICAgICAgdHJhbnNpdGlvbignOmxlYXZlJywgW1xuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDEsIGhlaWdodDogJzE5NnB4JyB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMC4ycyBlYXNlLWluJywgc3R5bGUoeyBvcGFjaXR5OiAwLCBoZWlnaHQ6IDAgfSkpXG4gICAgICBdKVxuICAgIF0pLFxuICAgIHRyaWdnZXIoJ2luT3V0QW5pbWF0aW9uUHJvZ3Jlc3MnLCBbXG4gICAgICB0cmFuc2l0aW9uKCc6ZW50ZXInLCBbXG4gICAgICAgIHN0eWxlKHsgb3BhY2l0eTogMCwgaGVpZ2h0OiAwIH0pLFxuICAgICAgICBhbmltYXRlKCcwLjJzIGVhc2Utb3V0Jywgc3R5bGUoeyBvcGFjaXR5OiAxLCBoZWlnaHQ6ICcxOTZweCcgfSkpXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAxLCBoZWlnaHQ6ICcxOTZweCcgfSksXG4gICAgICAgIGFuaW1hdGUoJzAuMnMgZWFzZS1pbicsIHN0eWxlKHsgb3BhY2l0eTogMCwgaGVpZ2h0OiAwIH0pKVxuICAgICAgXSlcbiAgICBdKSxcbiAgICB0cmlnZ2VyKCdpbk91dEFuaW1hdGlvbkNoYW5nZScsIFtcbiAgICAgIHRyYW5zaXRpb24oJzplbnRlcicsIFtcbiAgICAgICAgc3R5bGUoeyBvcGFjaXR5OiAwLCBoZWlnaHQ6IDAgfSksXG4gICAgICAgIGFuaW1hdGUoJzAuMnMgZWFzZS1vdXQnLCBzdHlsZSh7IG9wYWNpdHk6IDEsIGhlaWdodDogJzE5NnB4JyB9KSlcbiAgICAgIF0pLFxuICAgICAgdHJhbnNpdGlvbignOmxlYXZlJywgW1xuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6IDEsIGhlaWdodDogJzE5NnB4JyB9KSxcbiAgICAgICAgYW5pbWF0ZSgnMC4ycyBlYXNlLWluJywgc3R5bGUoeyBvcGFjaXR5OiAwLCBoZWlnaHQ6IDAgfSkpXG4gICAgICBdKVxuICAgIF0pXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRmlsZVVwbG9hZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIEBIb3N0QmluZGluZygpIGNsYXNzID0gJ3VpLWZpbGUtdXBsb2FkJztcblxuICAvKipcbiAgICpcbiAgICogQHR5cGUge251bWJlcn1cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIG1heEZpbGVTaXplTUI6IG51bWJlcjtcblxuICAvKipcbiAgICpcbiAgICogQHR5cGUge251bWJlcn1cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIG1pbkZpbGVTaXplTUI6IG51bWJlcjtcblxuICAvKipcbiAgICogU3VwcG9ydGVkIGZpbGVzIGZvciBpbnB1dCBmaWVsZFxuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgc3VwcG9ydGVkRmlsZVR5cGVzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVcGxvYWQgcHJvZ3Jlc3NcbiAgICpcbiAgICogQHR5cGUge251bWJlcn1cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIHVwbG9hZFByb2dyZXNzOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEZpbGUgdXBsb2FkIGVycm9yc1xuICAgKlxuICAgKiBAdHlwZSB7c3RyaW5nW119XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBlcnJvcnM/OiBzdHJpbmdbXSB8IG51bGw7XG5cbiAgLyoqXG4gICAqIEZpbGUgdXBsb2FkIGRpc2FibGVkXG4gICAqXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAbWVtYmVyb2YgRmlsZVVwbG9hZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAvKipcbiAgICogRXhpc3RpbmcgZmlsZSBpbmZvcm1hdGlvblxuICAgKlxuICAgKiBAdHlwZSB7KEZpbGUgfCBudWxsKX1cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGZpbGU6IEZpbGUgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogQ29sb3Igb2YgdGhlIGZpbGUgdXBsb2FkLlxuICAgKiBEZWZhdWx0cyB0byBUZXN0IEdvcmlsbGEgcHJpbWFyeSBjb2xvci5cbiAgICpcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGNvbXBhbnlDb2xvcjogc3RyaW5nIHwgbnVsbCA9ICcnO1xuXG4gIEBIb3N0QmluZGluZygnc3R5bGUuLS1jb2xvcicpXG4gIGNvbXBDb2xvcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKlxuICAgKiBEZWZpbmVzIHRoZSBhcHBsaWNhdGlvbiB0aGVtZVxuICAgKlxuICAgKiBAdHlwZSB7QXBwbGljYXRpb25UaGVtZX1cbiAgICogQG1lbWJlcm9mIEZpbGVVcGxvYWRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGFwcGxpY2F0aW9uVGhlbWU6IEFwcGxpY2F0aW9uVGhlbWUgPSAnbGlnaHQnO1xuXG4gIC8qKlxuICAgKiBBIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIEFSSUEgbGFiZWwgZm9yIGFjY2Vzc2liaWxpdHkuXG4gICAqIFRoaXMgbGFiZWwgaXMgdXNlZCB0byBwcm92aWRlIGFuIGFjY2Vzc2libGUgbmFtZSBmb3IgdGhlIGlucHV0IGVsZW1lbnQuXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhcmlhTGFiZWw6IHN0cmluZztcblxuICAvKipcbiAgICogQSBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBBUklBIHJlcXVpcmVtZW50IGZvciBhY2Nlc3NpYmlsaXR5LlxuICAgKiBUaGlzIGF0dHJpYnV0ZSBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXRoZXIgYW4gaW5wdXQgZmllbGQgaXMgcmVxdWlyZWQgZm9yIGZvcm0gc3VibWlzc2lvbi5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBtZW1iZXJvZiBGaWxlVXBsb2FkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoKSBhcmlhUmVxdWlyZWQgPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgT25Ecm9wOiBFdmVudEVtaXR0ZXI8RmlsZT4gPSBuZXcgRXZlbnRFbWl0dGVyPEZpbGU+KCk7XG5cbiAgQFZpZXdDaGlsZCgnZmlsZURyb3AnKSBmaWxlRHJvcDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdHJhbnNsYXRpb25Db250ZXh0ID0gJ0ZJTEVfVVBMT0FELic7XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIG9uQ2hhbmdlID0gKF86IGFueSkgPT4ge1xuICB9O1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBvblRvdWNoID0gKCkgPT4ge1xuICB9O1xuXG4gIGlzTWlzc2VkTWluU2l6ZSA9IGZhbHNlO1xuICBwcm9ncmVzcyA9IGZhbHNlO1xuICBzdWNjZXNzID0gZmFsc2U7XG4gIGJyb3dzZTogYm9vbGVhbjtcbiAgaXNDYW5jZWxlZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoJ0NBTk9QWVVJX0RFRkFVTFRfQVBQTElDQVRJT05fVEhFTUUnKSBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRBcHBUaGVtZTogQXBwbGljYXRpb25UaGVtZSxcbiAgKSB7XG4gICAgaWYgKGRlZmF1bHRBcHBUaGVtZSkge1xuICAgICAgdGhpcy5hcHBsaWNhdGlvblRoZW1lID0gZGVmYXVsdEFwcFRoZW1lO1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYnJvd3NlID0gdHJ1ZTtcbiAgfVxuXG4gIC8vV2hlbiBmaWxlIGlzIGRyb3BwZWRcbiAgb25GaWxlRHJvcHBlZChmaWxlczogRmlsZUxpc3QpIHtcbiAgICB0aGlzLmVtaXRGaWxlKGZpbGVzKTtcbiAgfVxuXG4gIC8vV2hlbiBpbnB1dCBjaGFuZ2VzXG4gIG9uQ2hhbmdlVXBsb2FkKGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuaXNDYW5jZWxlZCA9IGZhbHNlO1xuICAgIGNvbnN0IGVsZW1lbnQgPSBldmVudC5jdXJyZW50VGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgdGhpcy5lbWl0RmlsZShlbGVtZW50LmZpbGVzIHx8IG5ldyBGaWxlTGlzdCgpKTtcbiAgfVxuXG4gIC8vRW1pdCBkcm9wIGZpbGVcbiAgZW1pdEZpbGUoZmlsZXM6IEZpbGVMaXN0KSB7XG4gICAgY29uc3QgW2ZpbGVdID0gQXJyYXkuZnJvbShmaWxlcyk7XG4gICAgdGhpcy5maWxlID0gZmlsZTtcbiAgICB0aGlzLmVycm9ycyA9IG51bGw7XG4gICAgdGhpcy5vblRvdWNoKCk7XG4gICAgdGhpcy5pc01pc3NlZE1pblNpemUgPVxuICAgICAgIWZpbGU/LnNpemUgJiYgIXRoaXMubWluRmlsZVNpemVNQiA/IHRydWUgOiB0aGlzLmZpbGVTaXplVG9NQihmaWxlPy5zaXplID8/IDApIDw9IHRoaXMubWluRmlsZVNpemVNQjtcbiAgICBpZiAoIXRoaXMuaXNNaXNzZWRNaW5TaXplKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMuZmlsZSk7XG4gICAgICB0aGlzLk9uRHJvcC5lbWl0KGZpbGUpO1xuICAgIH1cbiAgfVxuXG4gIC8vU2hvdyBwcm9ncmVzcy1iYXJcbiAgc2hvd1Byb2dyZXNzKCk6IGJvb2xlYW4ge1xuICAgIHRoaXMuYnJvd3NlID0gZmFsc2U7XG4gICAgcmV0dXJuICEhKHRoaXMuZmlsZSAmJiAhdGhpcy5lcnJvcnMgJiYgIXRoaXMuaXNNaXNzZWRNaW5TaXplKTtcbiAgfVxuXG4gIC8vU2hvdyBzdWNjZXNzIGVsZW1lbnRzXG4gIHNob3dTdWNjZXNzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhISh0aGlzLmZpbGUgJiYgdGhpcy51cGxvYWRQcm9ncmVzcyA9PT0gMTAwICYmICF0aGlzLmVycm9ycyAmJiAhdGhpcy5pc01pc3NlZE1pblNpemUpO1xuICB9XG5cbiAgLy9TaG93IGJyb3dzZSB3aGVuIHRoZXJlIGFyZSBlcnJvclxuICBzaG93QnJvd3NlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhISh0aGlzLmVycm9ycyB8fCB0aGlzLmlzTWlzc2VkTWluU2l6ZSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKCF0aGlzLmlzQ2FuY2VsZWQpIHtcbiAgICAgIGlmIChjaGFuZ2VzWyd1cGxvYWRQcm9ncmVzcyddIHx8IGNoYW5nZXNbJ2ZpbGUnXSkge1xuICAgICAgICB0aGlzLnByb2dyZXNzID0gdGhpcy5zaG93UHJvZ3Jlc3MoKTtcbiAgICAgICAgdGhpcy5zdWNjZXNzID0gdGhpcy5zaG93U3VjY2VzcygpO1xuICAgICAgICB0aGlzLmJyb3dzZSA9IHRoaXMuc2hvd0Jyb3dzZSgpO1xuICAgICAgfVxuICAgICAgaWYgKGNoYW5nZXNbJ2Vycm9ycyddKSB7XG4gICAgICAgIHRoaXMucHJvZ3Jlc3MgPSB0aGlzLnNob3dQcm9ncmVzcygpO1xuICAgICAgICB0aGlzLnN1Y2Nlc3MgPSB0aGlzLnNob3dTdWNjZXNzKCk7XG4gICAgICAgIHRoaXMuYnJvd3NlID0gdGhpcy5zaG93QnJvd3NlKCk7XG4gICAgICB9XG4gICAgICBpZiAoY2hhbmdlc1snYXBwbGljYXRpb25UaGVtZSddKSB7XG4gICAgICAgIHRoaXMuY29tcENvbG9yID0gdGhpcy5nZXRDb21wYW55Q29sb3IoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlPzogRmlsZSk6IHZvaWQge1xuICAgIGlmICh2YWx1ZSkge1xuICAgICAgdGhpcy5maWxlID0gdmFsdWUgfHwgbnVsbDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5maWxlID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoID0gZm47XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29tcGFueUNvbG9yKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY29tcGFueUNvbG9yIHx8ICh0aGlzLmFwcGxpY2F0aW9uVGhlbWUgPT09ICdjbGFzc2ljJyA/ICcjNDZBOTk3JyA6ICcjRDQxMEFBJyk7XG4gIH1cblxuICBwcml2YXRlIGZpbGVTaXplVG9NQihmaWxlU2l6ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgICByZXR1cm4gZmlsZVNpemUgLyAxMDI0IC8gMTAyNDtcbiAgfVxuXG4gIG9uS2V5ZG93bihldjogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmIChldi5rZXkgPT09ICdFbnRlcicgfHwgZXYua2V5ID09PSAnICcpIHtcbiAgICAgIHRoaXMuZmlsZURyb3AubmF0aXZlRWxlbWVudC5jbGljaygpXG4gICAgfSBlbHNlIGlmICAoZXYua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgdGhpcy5maWxlID0gbnVsbDtcbiAgICAgIHRoaXMuc3VjY2VzcyA9IGZhbHNlO1xuICAgICAgdGhpcy5wcm9ncmVzcyA9IGZhbHNlO1xuICAgICAgdGhpcy5lcnJvcnMgPSBudWxsO1xuICAgICAgdGhpcy5pc01pc3NlZE1pblNpemUgPSBmYWxzZTtcbiAgICAgIHRoaXMuYnJvd3NlID0gdHJ1ZTtcbiAgICAgIHRoaXMuaXNDYW5jZWxlZCA9IHRydWU7XG4gICAgfVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJ1cGxvYWQtZmlsZS1jb250YWluZXJcIlxuICAgIHVpRHJhZ0Ryb3BcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgW2F0dHIuYXJpYS1yZXF1aXJlZF09XCJhcmlhUmVxdWlyZWRcIlxuICAgIFthdHRyLnRoZW1lXT1cImFwcGxpY2F0aW9uVGhlbWVcIlxuICAgIFtuZ0NsYXNzXT1cInsgJ3VwbG9hZC1lcnJvcnMnOiAhIWVycm9ycyB8fCBpc01pc3NlZE1pblNpemUsICd1cGxvYWQtZmlsZS1jb250YWluZXItZGlzYWJsZWQnOiBkaXNhYmxlZCB9XCJcbiAgICAoZmlsZURyb3BwZWQpPVwib25GaWxlRHJvcHBlZCgkZXZlbnQpXCJcbiAgICBbdGFiSW5kZXhdPVwiMFwiXG4gICAgKGtleWRvd24pPVwib25LZXlkb3duKCRldmVudClcIlxuICAgIChjbGljayk9XCJmaWxlRHJvcC5uYXRpdmVFbGVtZW50LmNsaWNrKClcIlxuICA+XG4gICAgPHNwYW4gc3R5bGU9XCJwb3NpdGlvbjogYWJzb2x1dGU7IGxlZnQ6IC05OTk5cHg7XCIgW2F0dHIuYXJpYS1saXZlXT1cIidwb2xpdGUnXCI+XG4gICAgICB7eyBzdWNjZXNzID8gKCdGSUxFX1VQTE9BRC5GSUxFX1VQTE9BRElOR19TVUNDRVNTJyB8IHVpVHJhbnNsYXRlIHwgYXN5bmMpIDogcHJvZ3Jlc3MgPyAoJ0ZJTEVfVVBMT0FELlVQTE9BRElORycgfCB1aVRyYW5zbGF0ZSB8IGFzeW5jKSA6ICcnIH19XG4gICAgPC9zcGFuPlxuICAgIDxkaXYgKm5nSWY9XCIoYnJvd3NlICYmICEoc3VjY2VzcyAmJiAhIWZpbGUgJiYgcHJvZ3Jlc3MpKVwiIFtAaW5PdXRBbmltYXRpb25dIGNsYXNzPVwidXBsb2FkLWZpbGVzXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwidXBsb2FkLWJyb3dzZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImljb25UcGxcIj48L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiZXJyb3JzXCIgKm5nSWY9XCIhIWVycm9ycyB8fCBpc01pc3NlZE1pblNpemVcIiByb2xlPVwiYWxlcnRcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiISFlcnJvcnNcIj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0Zvcj1cImxldCBlcnJvciBvZiBlcnJvcnNcIj48dWktaWNvbiBuYW1lPVwiRXJyb3JcIiBjbGFzcz1cImVycm9yLWljb25cIj48L3VpLWljb24+XG4gICAgICAgICAgICAgIHt7IGVycm9yIH19PC9zcGFuPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgPHNwYW4gKm5nSWY9XCJpc01pc3NlZE1pblNpemVcIj5cbiAgICAgICAgICAgIDx1aS1pY29uIG5hbWU9XCJFcnJvclwiIGNsYXNzPVwiZXJyb3ItaWNvblwiPjwvdWktaWNvbj5cbiAgICAgICAgICAgIHt7IHRyYW5zbGF0aW9uQ29udGV4dCArICdNSU5fU0laRV9FUlJPUicgfCB1aVRyYW5zbGF0ZSA6IHsgbWluOiBtaW5GaWxlU2l6ZU1CIH0gfCBhc3luYyB9fVxuICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJzdWNjZXNzIHx8IHByb2dyZXNzID8gJycgOiAnZHJhZy1hbmQtZHJvcCdcIlxuICAgICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiJ3VwbG9hZC1zdXBwb3J0ZWQtZmlsZXMnXCJcbiAgICAgICAgICBbdGFiSW5kZXhdPVwiLTFcIlxuICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgICAjZmlsZURyb3BcbiAgICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgICAgaWQ9XCJmaWxlXCJcbiAgICAgICAgICBbYWNjZXB0XT1cInN1cHBvcnRlZEZpbGVUeXBlc1wiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAoY2hhbmdlKT1cIm9uQ2hhbmdlVXBsb2FkKCRldmVudClcIlxuICAgICAgICAvPlxuICAgICAgICA8bGFiZWwgZm9yPVwiZmlsZVwiIGNsYXNzPVwidHJhbnNwYXJlbnRcIj57eyAhIWZpbGUgJiYgc3VjY2VzcyA/ICcnIDogKHRyYW5zbGF0aW9uQ29udGV4dCArICdDSE9PU0VfRklMRScpIHwgdWlUcmFuc2xhdGUgfCBhc3luYyB9fTwvbGFiZWw+XG4gICAgICAgIDxwXG4gICAgICAgICAgKm5nSWY9XCJhcHBsaWNhdGlvblRoZW1lID09PSAnY2xhc3NpYyc7IGVsc2UgcmVicmFuZGVkRG5EQ29weVRwbFwiPnt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnRFJBR19BTkRfRFJPUF9PUicpIHwgdWlUcmFuc2xhdGUgfCBhc3luYyB9fVxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwic2VtaWJvbGRcIj4ge3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdCUk9XU0UnKSB8IHVpVHJhbnNsYXRlIHwgYXN5bmMgfCBsb3dlcmNhc2UgfX08L3NwYW4+IHt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnWU9VUl9GSUxFUycpIHwgdWlUcmFuc2xhdGUgfCBhc3luYyB9fVxuICAgICAgICA8L3A+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwidXBsb2FkLXRleHRcIj57eyBtYXhGaWxlU2l6ZU1CIH19e3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdNQVhfU0laRScpIHwgdWlUcmFuc2xhdGUgfCBhc3luYyB9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJtaW5GaWxlU2l6ZU1CXCIgY2xhc3M9XCJ1cGxvYWQtdGV4dFwiPnt7IG1pbkZpbGVTaXplTUIgfX17eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ01JTl9TSVpFJykgfCB1aVRyYW5zbGF0ZSB8IGFzeW5jIH19PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInVwbG9hZC1jaGFuZ2VcIiBbQGluT3V0QW5pbWF0aW9uQ2hhbmdlXSAqbmdJZj1cIiEhc3VjY2VzcyAmJiAhIWZpbGUgJiYgISFwcm9ncmVzc1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJpY29uVHBsXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8aW5wdXRcbiAgICAgICAgW3RhYkluZGV4XT1cIi0xXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cInN1Y2Nlc3MgfHwgcHJvZ3Jlc3MgPyAnJyA6ICdkcmFnLWFuZC1kcm9wJ1wiXG4gICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwic3VjY2VzcyB8fCBwcm9ncmVzcyA/ICcnIDogJ3N1cHBvcnRlZC1maWxlLXR5cGVzJ1wiXG4gICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcbiAgICAgICAgI2ZpbGVEcm9wXG4gICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgaWQ9XCJmaWxlVGVzdFwiXG4gICAgICAgIFthY2NlcHRdPVwic3VwcG9ydGVkRmlsZVR5cGVzXCJcbiAgICAgICAgKGNoYW5nZSk9XCJvbkNoYW5nZVVwbG9hZCgkZXZlbnQpXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIC8+XG4gICAgICA8bGFiZWwgZm9yPVwiZmlsZVwiIGNsYXNzPVwidHJhbnNwYXJlbnRcIj57eyAhIWZpbGUgJiYgc3VjY2VzcyA/ICcnIDogKHRyYW5zbGF0aW9uQ29udGV4dCArICdDSE9PU0VfRklMRScpIHwgdWlUcmFuc2xhdGUgfCBhc3luYyB9fTwvbGFiZWw+XG4gICAgICA8cFxuICAgICAgICAqbmdJZj1cImFwcGxpY2F0aW9uVGhlbWUgPT09ICdjbGFzc2ljJzsgZWxzZSByZWJyYW5kZWREbkRDb3B5VHBsXCI+e3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdEUkFHX0FORF9EUk9QX09SJykgfCB1aVRyYW5zbGF0ZSB8IGFzeW5jIH19Jm5ic3A7PHNwYW5cbiAgICAgICAgY2xhc3M9XCJzZW1pYm9sZFwiPnt7ICh0cmFuc2xhdGlvbkNvbnRleHQgKyAnQ0hBTkdFJykgfCB1aVRyYW5zbGF0ZSB8IGFzeW5jIHwgbG93ZXJjYXNlIH19PC9zcGFuPiB7eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ1lPVVJfRklMRVMnKSB8IHVpVHJhbnNsYXRlIHwgYXN5bmMgfX1cbiAgICAgIDwvcD5cbiAgICAgIDxzcGFuIGNsYXNzPVwidXBsb2FkLXRleHRcIlxuICAgICAgPjxzdHJvbmc+e3sgZmlsZS5uYW1lIH19PC9zdHJvbmc+PC9zcGFuXG4gICAgICA+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInVwbG9hZC1wcm9ncmVzc1wiIFtAaW5PdXRBbmltYXRpb25Qcm9ncmVzc10gKm5nSWY9XCIhIXByb2dyZXNzICYmICEhZmlsZSAmJiAhc3VjY2Vzc1wiPlxuICAgICAgPHA+e3sgZmlsZS5uYW1lIH19PC9wPlxuICAgICAgPHVpLXByb2dyZXNzLWJhciBbcHJvZ3Jlc3NdPVwidXBsb2FkUHJvZ3Jlc3NcIlxuICAgICAgICAgICAgICAgICAgICAgICBbY29tcGFueUNvbG9yXT1cImNvbXBDb2xvclwiXG4gICAgICAgICAgICAgICAgICAgICAgIFthcHBsaWNhdGlvblRoZW1lXT1cImFwcGxpY2F0aW9uVGhlbWVcIj48L3VpLXByb2dyZXNzLWJhcj5cbiAgICAgIDxwIGNsYXNzPVwidXBsb2FkLXRleHRcIj5cbiAgICAgICAge3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdVUExPQURJTkcnKSB8IHVpVHJhbnNsYXRlIHwgYXN5bmMgfX0gPHNwYW4+e3sgdXBsb2FkUHJvZ3Jlc3MgfX08L3NwYW5cbiAgICAgID4lXG4gICAgICA8L3A+XG4gICAgPC9kaXY+XG5cbiAgICA8bmctdGVtcGxhdGUgI2ljb25UcGw+XG4gICAgICA8dWktaWNvbiAqbmdJZj1cImFwcGxpY2F0aW9uVGhlbWUgPT09ICdjbGFzc2ljJzsgZWxzZSByZWJyYW5kZWRJY29uVHBsXCIgY2xhc3M9XCJ1cGxvYWQtaWNvblwiXG4gICAgICAgICAgICAgICBuYW1lPVwiRmlsZS11cGxvYWRcIj48L3VpLWljb24+XG4gICAgICA8bmctdGVtcGxhdGUgI3JlYnJhbmRlZEljb25UcGw+XG4gICAgICAgIDx1aS1pY29uIGNsYXNzPVwidXBsb2FkLWljb25cIlxuICAgICAgICAgICAgICAgICBuYW1lPVwiVXBsb2FkXCJcbiAgICAgICAgICAgICAgICAgW3NpemVdPVwiJzI0J1wiXG4gICAgICAgICAgICAgICAgIFthcHBsaWNhdGlvblRoZW1lXT1cImFwcGxpY2F0aW9uVGhlbWVcIj48L3VpLWljb24+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNyZWJyYW5kZWREbkRDb3B5VHBsPlxuICAgICAgPHAgaWQ9XCInZHJhZy1hbmQtZHJvcCdcIj57eyAodHJhbnNsYXRpb25Db250ZXh0ICsgJ0RSQUdfQU5EX0RST1AnKSB8IHVpVHJhbnNsYXRlIHwgYXN5bmMgfX08L3A+XG4gICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwiISFzdXBwb3J0ZWRGaWxlVHlwZXNcIlxuICAgICAgW2F0dHIudGhlbWVdPVwiYXBwbGljYXRpb25UaGVtZVwiXG4gICAgICBjbGFzcz1cInVwbG9hZC1zdXBwb3J0ZWQtZmlsZXNcIlxuICAgICAgaWQ9XCJ1cGxvYWQtc3VwcG9ydGVkLWZpbGVzXCI+XG4gICAgICA8c3BhbiA+e3sgKHRyYW5zbGF0aW9uQ29udGV4dCArICdTVVBQT1JURURfRklMRV9UWVBFUycpIHwgdWlUcmFuc2xhdGUgfCBhc3luYyB9fTwvc3Bhbj57eyBzdXBwb3J0ZWRGaWxlVHlwZXMgfX1cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
4
|
+
import { MatInputModule } from '@angular/material/input';
|
|
5
|
+
import { DragDropDirective } from '../../directives/drag-drop.directive';
|
|
6
|
+
import { IconComponentModule } from '../icon/icon.component.module';
|
|
7
|
+
import { ProgressBarComponentModule } from '../progress-bar/progress-bar.component.module';
|
|
8
|
+
import { FileUploadComponent } from './file-upload.component';
|
|
9
|
+
import { UiTranslatePipe } from '../../pipes/ui-translate.pipe';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
export class FileUploadComponentModule {
|
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FileUploadComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
13
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: FileUploadComponentModule, declarations: [FileUploadComponent, DragDropDirective], imports: [CommonModule,
|
|
14
|
+
MatFormFieldModule,
|
|
15
|
+
MatInputModule,
|
|
16
|
+
IconComponentModule,
|
|
17
|
+
ProgressBarComponentModule,
|
|
18
|
+
UiTranslatePipe], exports: [FileUploadComponent] }); }
|
|
19
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FileUploadComponentModule, imports: [CommonModule,
|
|
20
|
+
MatFormFieldModule,
|
|
21
|
+
MatInputModule,
|
|
22
|
+
IconComponentModule,
|
|
23
|
+
ProgressBarComponentModule] }); }
|
|
24
|
+
}
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FileUploadComponentModule, decorators: [{
|
|
26
|
+
type: NgModule,
|
|
27
|
+
args: [{
|
|
28
|
+
declarations: [FileUploadComponent, DragDropDirective],
|
|
29
|
+
imports: [
|
|
30
|
+
CommonModule,
|
|
31
|
+
MatFormFieldModule,
|
|
32
|
+
MatInputModule,
|
|
33
|
+
IconComponentModule,
|
|
34
|
+
ProgressBarComponentModule,
|
|
35
|
+
UiTranslatePipe,
|
|
36
|
+
],
|
|
37
|
+
exports: [FileUploadComponent],
|
|
38
|
+
}]
|
|
39
|
+
}] });
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUMzRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBY2hFLE1BQU0sT0FBTyx5QkFBeUI7K0dBQXpCLHlCQUF5QjtnSEFBekIseUJBQXlCLGlCQVhyQixtQkFBbUIsRUFBRSxpQkFBaUIsYUFFbkQsWUFBWTtZQUNaLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2QsbUJBQW1CO1lBQ25CLDBCQUEwQjtZQUMxQixlQUFlLGFBRVAsbUJBQW1CO2dIQUVsQix5QkFBeUIsWUFUbEMsWUFBWTtZQUNaLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2QsbUJBQW1CO1lBQ25CLDBCQUEwQjs7NEZBS2pCLHlCQUF5QjtrQkFackMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxtQkFBbUIsRUFBRSxpQkFBaUIsQ0FBQztvQkFDdEQsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLG1CQUFtQjt3QkFDbkIsMEJBQTBCO3dCQUMxQixlQUFlO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztpQkFDL0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBEcmFnRHJvcERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvZHJhZy1kcm9wLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBJY29uQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vaWNvbi9pY29uLmNvbXBvbmVudC5tb2R1bGUnO1xuaW1wb3J0IHsgUHJvZ3Jlc3NCYXJDb21wb25lbnRNb2R1bGUgfSBmcm9tICcuLi9wcm9ncmVzcy1iYXIvcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5tb2R1bGUnO1xuaW1wb3J0IHsgRmlsZVVwbG9hZENvbXBvbmVudCB9IGZyb20gJy4vZmlsZS11cGxvYWQuY29tcG9uZW50JztcbmltcG9ydCB7IFVpVHJhbnNsYXRlUGlwZSB9IGZyb20gJy4uLy4uL3BpcGVzL3VpLXRyYW5zbGF0ZS5waXBlJztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbRmlsZVVwbG9hZENvbXBvbmVudCwgRHJhZ0Ryb3BEaXJlY3RpdmVdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICBJY29uQ29tcG9uZW50TW9kdWxlLFxuICAgIFByb2dyZXNzQmFyQ29tcG9uZW50TW9kdWxlLFxuICAgIFVpVHJhbnNsYXRlUGlwZSxcbiAgXSxcbiAgZXhwb3J0czogW0ZpbGVVcGxvYWRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBGaWxlVXBsb2FkQ29tcG9uZW50TW9kdWxlIHt9XG4iXX0=
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Component, Inject, Input, Optional } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../icon/icon.component";
|
|
4
|
+
export class IconLabelComponent {
|
|
5
|
+
constructor(defaultAppTheme) {
|
|
6
|
+
this.defaultAppTheme = defaultAppTheme;
|
|
7
|
+
/**
|
|
8
|
+
* Icon size
|
|
9
|
+
*
|
|
10
|
+
* @type {IconSize}
|
|
11
|
+
* @memberof IconLabelComponent
|
|
12
|
+
*/
|
|
13
|
+
this.iconSize = '16';
|
|
14
|
+
/**
|
|
15
|
+
* Label
|
|
16
|
+
*
|
|
17
|
+
* @memberof IconLabelComponent
|
|
18
|
+
*/
|
|
19
|
+
this.text = '';
|
|
20
|
+
/**
|
|
21
|
+
*
|
|
22
|
+
* Defines the application theme
|
|
23
|
+
*
|
|
24
|
+
* @type {ApplicationTheme}
|
|
25
|
+
* @memberof IconLabelComponent
|
|
26
|
+
*/
|
|
27
|
+
this.applicationTheme = 'light';
|
|
28
|
+
if (defaultAppTheme) {
|
|
29
|
+
this.applicationTheme = defaultAppTheme;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
ngOnInit() { }
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IconLabelComponent, deps: [{ token: 'CANOPYUI_DEFAULT_APPLICATION_THEME', optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
34
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: IconLabelComponent, selector: "ui-icon-label", inputs: { iconSize: "iconSize", iconName: "iconName", text: "text", applicationTheme: "applicationTheme" }, ngImport: i0, template: "<ui-icon [name]=\"iconName\" [size]=\"iconSize\" aria-hidden=\"true\"></ui-icon>\n<span>{{ text }}</span>\n", styles: [":host{display:flex;align-items:center}:host ui-icon{margin-right:8px}\n"], dependencies: [{ kind: "component", type: i1.IconComponent, selector: "ui-icon", inputs: ["size", "cssClass", "name", "color", "filled", "applicationTheme", "useFullIconName"] }] }); }
|
|
35
|
+
}
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IconLabelComponent, decorators: [{
|
|
37
|
+
type: Component,
|
|
38
|
+
args: [{ selector: 'ui-icon-label', template: "<ui-icon [name]=\"iconName\" [size]=\"iconSize\" aria-hidden=\"true\"></ui-icon>\n<span>{{ text }}</span>\n", styles: [":host{display:flex;align-items:center}:host ui-icon{margin-right:8px}\n"] }]
|
|
39
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
40
|
+
type: Optional
|
|
41
|
+
}, {
|
|
42
|
+
type: Inject,
|
|
43
|
+
args: ['CANOPYUI_DEFAULT_APPLICATION_THEME']
|
|
44
|
+
}] }], propDecorators: { iconSize: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], iconName: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}], text: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], applicationTheme: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}] } });
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1sYWJlbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Z28tY2Fub3B5LXVpL2NvbXBvbmVudHMvaWNvbi1sYWJlbC9pY29uLWxhYmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9pY29uLWxhYmVsL2ljb24tbGFiZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUzNFLE1BQU0sT0FBTyxrQkFBa0I7SUFrQzdCLFlBQzZFLGVBQWlDO1FBQWpDLG9CQUFlLEdBQWYsZUFBZSxDQUFrQjtRQWpDOUc7Ozs7O1dBS0c7UUFDTSxhQUFRLEdBQWEsSUFBSSxDQUFDO1FBVW5DOzs7O1dBSUc7UUFDTSxTQUFJLEdBQUcsRUFBRSxDQUFDO1FBRW5COzs7Ozs7V0FNRztRQUNNLHFCQUFnQixHQUFxQixPQUFPLENBQUM7UUFLcEQsSUFBSSxlQUFlLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsZUFBZSxDQUFDO1FBQzFDLENBQUM7SUFDSCxDQUFDO0lBRUQsUUFBUSxLQUFVLENBQUM7K0dBMUNSLGtCQUFrQixrQkFtQ1Asb0NBQW9DO21HQW5DL0Msa0JBQWtCLGlLQ1QvQiw2R0FFQTs7NEZET2Esa0JBQWtCO2tCQUw5QixTQUFTOytCQUNFLGVBQWU7OzBCQXVDdEIsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxvQ0FBb0M7eUNBM0JqRCxRQUFRO3NCQUFoQixLQUFLO2dCQVFHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBT0csSUFBSTtzQkFBWixLQUFLO2dCQVNHLGdCQUFnQjtzQkFBeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBJbnB1dCwgT25Jbml0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSWNvbk5hbWUsIEljb25TaXplIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9pY29uL2ljb24ubW9kZWwnO1xuaW1wb3J0IHsgQXBwbGljYXRpb25UaGVtZSB9IGZyb20gXCIuLi8uLi9tb2RlbHMvYXBwbGljYXRpb24tdGhlbWUubW9kZWxcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndWktaWNvbi1sYWJlbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9pY29uLWxhYmVsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaWNvbi1sYWJlbC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEljb25MYWJlbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgLyoqXG4gICAqIEljb24gc2l6ZVxuICAgKlxuICAgKiBAdHlwZSB7SWNvblNpemV9XG4gICAqIEBtZW1iZXJvZiBJY29uTGFiZWxDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGljb25TaXplOiBJY29uU2l6ZSA9ICcxNic7XG5cbiAgLyoqXG4gICAqIEljb24gbmFtZVxuICAgKlxuICAgKiBAdHlwZSB7SWNvbk5hbWV9XG4gICAqIEBtZW1iZXJvZiBJY29uTGFiZWxDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCgpIGljb25OYW1lOiBJY29uTmFtZTtcblxuICAvKipcbiAgICogTGFiZWxcbiAgICpcbiAgICogQG1lbWJlcm9mIEljb25MYWJlbENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgdGV4dCA9ICcnO1xuXG4gIC8qKlxuICAgKlxuICAgKiBEZWZpbmVzIHRoZSBhcHBsaWNhdGlvbiB0aGVtZVxuICAgKlxuICAgKiBAdHlwZSB7QXBwbGljYXRpb25UaGVtZX1cbiAgICogQG1lbWJlcm9mIEljb25MYWJlbENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KCkgYXBwbGljYXRpb25UaGVtZTogQXBwbGljYXRpb25UaGVtZSA9ICdsaWdodCc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdCgnQ0FOT1BZVUlfREVGQVVMVF9BUFBMSUNBVElPTl9USEVNRScpIHByaXZhdGUgcmVhZG9ubHkgZGVmYXVsdEFwcFRoZW1lOiBBcHBsaWNhdGlvblRoZW1lLFxuICApIHtcbiAgICBpZiAoZGVmYXVsdEFwcFRoZW1lKSB7XG4gICAgICB0aGlzLmFwcGxpY2F0aW9uVGhlbWUgPSBkZWZhdWx0QXBwVGhlbWU7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxufVxuIiwiPHVpLWljb24gW25hbWVdPVwiaWNvbk5hbWVcIiBbc2l6ZV09XCJpY29uU2l6ZVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvdWktaWNvbj5cbjxzcGFuPnt7IHRleHQgfX08L3NwYW4+XG4iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { IconComponentModule } from '../icon/icon.component.module';
|
|
4
|
+
import { IconLabelComponent } from './icon-label.component';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class IconLabelComponentModule {
|
|
7
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IconLabelComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
8
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: IconLabelComponentModule, declarations: [IconLabelComponent], imports: [CommonModule, IconComponentModule], exports: [IconLabelComponent] }); }
|
|
9
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IconLabelComponentModule, imports: [CommonModule, IconComponentModule] }); }
|
|
10
|
+
}
|
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: IconLabelComponentModule, decorators: [{
|
|
12
|
+
type: NgModule,
|
|
13
|
+
args: [{
|
|
14
|
+
declarations: [IconLabelComponent],
|
|
15
|
+
imports: [CommonModule, IconComponentModule],
|
|
16
|
+
exports: [IconLabelComponent],
|
|
17
|
+
providers: [],
|
|
18
|
+
}]
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1sYWJlbC5jb21wb25lbnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGdvLWNhbm9weS11aS9jb21wb25lbnRzL2ljb24tbGFiZWwvaWNvbi1sYWJlbC5jb21wb25lbnQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDOztBQVE1RCxNQUFNLE9BQU8sd0JBQXdCOytHQUF4Qix3QkFBd0I7Z0hBQXhCLHdCQUF3QixpQkFMcEIsa0JBQWtCLGFBQ3ZCLFlBQVksRUFBRSxtQkFBbUIsYUFDakMsa0JBQWtCO2dIQUdqQix3QkFBd0IsWUFKekIsWUFBWSxFQUFFLG1CQUFtQjs7NEZBSWhDLHdCQUF3QjtrQkFOcEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztvQkFDbEMsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLG1CQUFtQixDQUFDO29CQUM1QyxPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztvQkFDN0IsU0FBUyxFQUFFLEVBQUU7aUJBQ2QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEljb25Db21wb25lbnRNb2R1bGUgfSBmcm9tICcuLi9pY29uL2ljb24uY29tcG9uZW50Lm1vZHVsZSc7XG5pbXBvcnQgeyBJY29uTGFiZWxDb21wb25lbnQgfSBmcm9tICcuL2ljb24tbGFiZWwuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbSWNvbkxhYmVsQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSWNvbkNvbXBvbmVudE1vZHVsZV0sXG4gIGV4cG9ydHM6IFtJY29uTGFiZWxDb21wb25lbnRdLFxuICBwcm92aWRlcnM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBJY29uTGFiZWxDb21wb25lbnRNb2R1bGUge31cbiJdfQ==
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { DividerComponentModule } from "../divider/divider.component.module";
|
|
3
|
+
import { EllipseTextDirective } from "../../directives/ellipse-text.directive";
|
|
4
|
+
import { MatTooltipModule } from "@angular/material/tooltip";
|
|
5
|
+
import { ButtonComponentModule } from '../button/button.component.module';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../divider/divider.component";
|
|
8
|
+
import * as i2 from "../button/button.component";
|
|
9
|
+
import * as i3 from "@angular/material/tooltip";
|
|
10
|
+
export class MediaCardComponent {
|
|
11
|
+
constructor() {
|
|
12
|
+
/**
|
|
13
|
+
* The label of the button
|
|
14
|
+
* @type {string}
|
|
15
|
+
* @memberof MediaCardComponent
|
|
16
|
+
*/
|
|
17
|
+
this.buttonLabel = '';
|
|
18
|
+
this.buttonClick = new EventEmitter();
|
|
19
|
+
this.showTitleTooltip = false;
|
|
20
|
+
}
|
|
21
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MediaCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
22
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: MediaCardComponent, isStandalone: true, selector: "ui-media-card", inputs: { title: "title", description: "description", image: "image", buttonLabel: "buttonLabel" }, outputs: { buttonClick: "buttonClick" }, ngImport: i0, template: "<img [attr.src]=\"image\" alt=\"card image\">\n\n<div class=\"media-card-content\">\n <div class=\"media-card-title\" [isMultiline]=\"true\" [matTooltip]=\"showTitleTooltip ? title : ''\" uiEllipseText (onChangeTextState)=\"showTitleTooltip = $event\">\n {{ title }}\n </div>\n\n <div class=\"media-card-description\">\n {{ description }}\n </div>\n</div>\n\n<ui-divider [size]=\"'small'\"></ui-divider>\n\n<div class=\"media-card-action\">\n <ui-button [variant]=\"'ghost'\" [label]=\"buttonLabel\" (buttonClickEvent)=\"buttonClick.emit()\"></ui-button>\n</div>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}h1,h2,h3,.h1,.h2,.h3{font-weight:400;margin:0}h4,h5,h6,.h4,:host .media-card-content .media-card-title,.h5,.h6{font-weight:700;margin:0}h1,.h1{font-size:40px;line-height:60px;font-weight:700}h2,.h2{font-size:24px;line-height:36px}h2.bold,.h2.bold{font-weight:700}h3,.h3{font-size:20px;line-height:28px}h3.bold,.h3.bold{font-weight:700}h4,.h4,:host .media-card-content .media-card-title{font-size:16px;line-height:24px}h5,.h5{font-size:14px;line-height:20px}h6,.h6{font-size:12px;line-height:16px;text-transform:uppercase}body{font-size:14px;line-height:20px}strong,b{font-weight:700}.featured{font-size:16px;line-height:24px}p .semibold,.featured .semibold,.caption .semibold{font-weight:600;color:#46a997}small{font-size:8px;line-height:12px}caption,.caption{font-size:12px;line-height:16px;display:inline-block}*[theme=dark] h1,*[theme=dark] .h1,*[theme=light] h1,*[theme=light] .h1{color:#242424;font-size:32px;line-height:48px;font-weight:400}*[theme=dark] h1.black,*[theme=dark] .h1.black,*[theme=light] h1.black,*[theme=light] .h1.black{font-family:ModernGothic,sans-serif!important;font-weight:900}*[theme=dark] h2,*[theme=dark] .h2,*[theme=light] h2,*[theme=light] .h2{color:#242424;font-size:24px;line-height:30px;font-weight:900;font-family:ModernGothic,sans-serif!important}*[theme=dark] h3,*[theme=dark] .h3,*[theme=light] h3,*[theme=light] .h3{font-size:20px;line-height:26px;font-weight:400;color:#242424}*[theme=dark] h3.bold,*[theme=dark] .h3.bold,*[theme=light] h3.bold,*[theme=light] .h3.bold{font-family:ModernGothic,sans-serif!important;font-weight:700}*[theme=dark] h4,*[theme=dark] .h4,:host *[theme=dark] .media-card-content .media-card-title,:host .media-card-content *[theme=dark] .media-card-title,*[theme=light] h4,*[theme=light] .h4,:host *[theme=light] .media-card-content .media-card-title,:host .media-card-content *[theme=light] .media-card-title{font-size:16px;line-height:20px;font-weight:700;color:#242424;font-family:ModernGothic,sans-serif!important}*[theme=dark] h5,*[theme=dark] .h5,*[theme=light] h5,*[theme=light] .h5{font-size:14px;line-height:18px;font-weight:700;color:#242424;font-family:ModernGothic,sans-serif!important}*[theme=dark] .body-large,*[theme=light] .body-large{font-weight:700;font-size:14px;line-height:22px}*[theme=dark] .body-large-bold,*[theme=light] .body-large-bold{font-weight:700;font-size:16px;line-height:24px}*[theme=dark] .body-large-regular,*[theme=light] .body-large-regular{font-weight:400;font-size:16px;line-height:24px}*[theme=dark] .body-small-bold,*[theme=light] .body-small-bold{font-weight:700;font-size:12px;line-height:16px}*[theme=dark] .hyperlink-large,*[theme=light] .hyperlink-large{font-weight:500;font-size:16px;line-height:24px}*[theme=dark] .hyperlink,*[theme=light] .hyperlink{font-weight:500;font-size:14px;line-height:22px}*[theme=dark] .hyperlink-small,*[theme=light] .hyperlink-small{font-weight:500;font-size:12px;line-height:16px}*[theme=dark] .button-label,*[theme=light] .button-label{font-weight:500;font-size:14px;font-feature-settings:\"capb\"}*[theme=dark] .label,*[theme=light] .label{font-weight:400;font-size:14px;font-feature-settings:\"capb\"}*[theme=dark] .large-hover-state,*[theme=light] .large-hover-state{font-weight:700;text-decoration:underline;font-size:16px;line-height:24px}*[theme=dark] .hover-state,*[theme=light] .hover-state{font-weight:700;text-decoration:underline;font-size:14px;line-height:22px}*[theme=dark] h1,*[theme=dark] .h1,*[theme=dark] h2,*[theme=dark] .h2,*[theme=dark] h3,*[theme=dark] .h3,*[theme=dark] h4,*[theme=dark] .h4,:host *[theme=dark] .media-card-content .media-card-title,:host .media-card-content *[theme=dark] .media-card-title,*[theme=dark] h5,*[theme=dark] .h5{color:#fff}:host{display:flex;flex-direction:column;border:1px solid #D3D3D3;border-radius:10px;max-width:568px;min-width:288px;background:#fff}:host img{aspect-ratio:16/9;width:100%;border-radius:10px 10px 0 0}:host .media-card-content{display:flex;flex-direction:column;padding:24px 24px 24px 16px}:host .media-card-content .media-card-title{overflow:hidden;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;text-overflow:ellipsis;white-space:normal;color:#242424;margin-bottom:8px}:host .media-card-content .media-card-description{height:62px;color:#666;font-size:14px;overflow:auto}:host .media-card-action{display:flex;justify-content:flex-end;padding:16px 24px}\n"], dependencies: [{ kind: "ngmodule", type: DividerComponentModule }, { kind: "component", type: i1.DividerComponent, selector: "ui-divider", inputs: ["size", "companyColor", "applicationTheme", "label"] }, { kind: "ngmodule", type: ButtonComponentModule }, { kind: "component", type: i2.ButtonComponent, selector: "ui-button", inputs: ["size", "variant", "label", "iconPosition", "justIcon", "iconName", "disabled", "loading", "fullWidth", "url", "urlTarget", "value", "tooltip", "isPremium", "type", "companyColor", "buttonBadgeConfig", "applicationTheme", "disabledScaleOnClick", "ariaLabel", "ariaRequired", "ariaLabelledby", "ariaDescribedby", "preventDefault", "transparent", "tooltipPosition"], outputs: ["buttonClickEvent", "buttonHoverEvent"] }, { kind: "directive", type: EllipseTextDirective, selector: "[uiEllipseText]", inputs: ["isMultiline", "maxDiffPixels", "refresh"], outputs: ["onChangeTextState"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] }); }
|
|
23
|
+
}
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MediaCardComponent, decorators: [{
|
|
25
|
+
type: Component,
|
|
26
|
+
args: [{ selector: 'ui-media-card', standalone: true, imports: [
|
|
27
|
+
DividerComponentModule,
|
|
28
|
+
ButtonComponentModule,
|
|
29
|
+
EllipseTextDirective,
|
|
30
|
+
MatTooltipModule
|
|
31
|
+
], template: "<img [attr.src]=\"image\" alt=\"card image\">\n\n<div class=\"media-card-content\">\n <div class=\"media-card-title\" [isMultiline]=\"true\" [matTooltip]=\"showTitleTooltip ? title : ''\" uiEllipseText (onChangeTextState)=\"showTitleTooltip = $event\">\n {{ title }}\n </div>\n\n <div class=\"media-card-description\">\n {{ description }}\n </div>\n</div>\n\n<ui-divider [size]=\"'small'\"></ui-divider>\n\n<div class=\"media-card-action\">\n <ui-button [variant]=\"'ghost'\" [label]=\"buttonLabel\" (buttonClickEvent)=\"buttonClick.emit()\"></ui-button>\n</div>\n", styles: [".bg-teal-60b{background:#1c443c}.bg-teal-30b{background:#31766a}.bg-teal-default{background:#46a997}.bg-teal-30w{background:#7ec3b6}.bg-teal-60w{background:#b5ddd5}.bg-teal-secondary{background:#cbd6cb}.bg-teal-90w{background:#ecf6f5}.bg-petrol-60b{background:#102930}.bg-petrol-30b{background:#1b4754}.bg-petrol-default{background:#276678}.bg-petrol-30w{background:#6894a0}.bg-petrol-60w{background:#a9c2c9}.bg-petrol-secondary{background:#c8d7de}.bg-petrol-90w{background:#e9f0f1}.bg-error-60b{background:#513131}.bg-error-30b{background:#8e5655}.bg-error-60w{background:#e3c3c6}.bg-error-secondary{background:#f0dad9}.bg-error-default{background:#cb7b7a}.bg-warning-secondary{background:#f0d6bb}.bg-warning-default{background:#cca45f}.bg-black{background:#000}.bg-dark{background:#888}.bg-medium{background:#e0e0e0}.bg-grey{background:#ededed}.bg-light{background:#f6f6f6}.bg-white{background:#fff}.bg-box-shadow{background:#00000014}.bg-navigation-subtitle{background:#528593}.bgc-teal-60b{background-color:#1c443c}.bgc-teal-30b{background-color:#31766a}.bgc-teal-default{background-color:#46a997}.bgc-teal-30w{background-color:#7ec3b6}.bgc-teal-60w{background-color:#b5ddd5}.bgc-teal-secondary{background-color:#cbd6cb}.bgc-teal-90w{background-color:#ecf6f5}.bgc-petrol-60b{background-color:#102930}.bgc-petrol-30b{background-color:#1b4754}.bgc-petrol-default{background-color:#276678}.bgc-petrol-30w{background-color:#6894a0}.bgc-petrol-60w{background-color:#a9c2c9}.bgc-petrol-secondary{background-color:#c8d7de}.bgc-petrol-90w{background-color:#e9f0f1}.bgc-error-60b{background-color:#513131}.bgc-error-30b{background-color:#8e5655}.bgc-error-60w{background-color:#e3c3c6}.bgc-error-secondary{background-color:#f0dad9}.bgc-error-default{background-color:#cb7b7a}.bgc-warning-secondary{background-color:#f0d6bb}.bgc-warning-default{background-color:#cca45f}.bgc-black{background-color:#000}.bgc-dark{background-color:#888}.bgc-medium{background-color:#e0e0e0}.bgc-grey{background-color:#ededed}.bgc-light{background-color:#f6f6f6}.bgc-white{background-color:#fff}.bgc-box-shadow{background-color:#00000014}.bgc-navigation-subtitle{background-color:#528593}h1,h2,h3,.h1,.h2,.h3{font-weight:400;margin:0}h4,h5,h6,.h4,:host .media-card-content .media-card-title,.h5,.h6{font-weight:700;margin:0}h1,.h1{font-size:40px;line-height:60px;font-weight:700}h2,.h2{font-size:24px;line-height:36px}h2.bold,.h2.bold{font-weight:700}h3,.h3{font-size:20px;line-height:28px}h3.bold,.h3.bold{font-weight:700}h4,.h4,:host .media-card-content .media-card-title{font-size:16px;line-height:24px}h5,.h5{font-size:14px;line-height:20px}h6,.h6{font-size:12px;line-height:16px;text-transform:uppercase}body{font-size:14px;line-height:20px}strong,b{font-weight:700}.featured{font-size:16px;line-height:24px}p .semibold,.featured .semibold,.caption .semibold{font-weight:600;color:#46a997}small{font-size:8px;line-height:12px}caption,.caption{font-size:12px;line-height:16px;display:inline-block}*[theme=dark] h1,*[theme=dark] .h1,*[theme=light] h1,*[theme=light] .h1{color:#242424;font-size:32px;line-height:48px;font-weight:400}*[theme=dark] h1.black,*[theme=dark] .h1.black,*[theme=light] h1.black,*[theme=light] .h1.black{font-family:ModernGothic,sans-serif!important;font-weight:900}*[theme=dark] h2,*[theme=dark] .h2,*[theme=light] h2,*[theme=light] .h2{color:#242424;font-size:24px;line-height:30px;font-weight:900;font-family:ModernGothic,sans-serif!important}*[theme=dark] h3,*[theme=dark] .h3,*[theme=light] h3,*[theme=light] .h3{font-size:20px;line-height:26px;font-weight:400;color:#242424}*[theme=dark] h3.bold,*[theme=dark] .h3.bold,*[theme=light] h3.bold,*[theme=light] .h3.bold{font-family:ModernGothic,sans-serif!important;font-weight:700}*[theme=dark] h4,*[theme=dark] .h4,:host *[theme=dark] .media-card-content .media-card-title,:host .media-card-content *[theme=dark] .media-card-title,*[theme=light] h4,*[theme=light] .h4,:host *[theme=light] .media-card-content .media-card-title,:host .media-card-content *[theme=light] .media-card-title{font-size:16px;line-height:20px;font-weight:700;color:#242424;font-family:ModernGothic,sans-serif!important}*[theme=dark] h5,*[theme=dark] .h5,*[theme=light] h5,*[theme=light] .h5{font-size:14px;line-height:18px;font-weight:700;color:#242424;font-family:ModernGothic,sans-serif!important}*[theme=dark] .body-large,*[theme=light] .body-large{font-weight:700;font-size:14px;line-height:22px}*[theme=dark] .body-large-bold,*[theme=light] .body-large-bold{font-weight:700;font-size:16px;line-height:24px}*[theme=dark] .body-large-regular,*[theme=light] .body-large-regular{font-weight:400;font-size:16px;line-height:24px}*[theme=dark] .body-small-bold,*[theme=light] .body-small-bold{font-weight:700;font-size:12px;line-height:16px}*[theme=dark] .hyperlink-large,*[theme=light] .hyperlink-large{font-weight:500;font-size:16px;line-height:24px}*[theme=dark] .hyperlink,*[theme=light] .hyperlink{font-weight:500;font-size:14px;line-height:22px}*[theme=dark] .hyperlink-small,*[theme=light] .hyperlink-small{font-weight:500;font-size:12px;line-height:16px}*[theme=dark] .button-label,*[theme=light] .button-label{font-weight:500;font-size:14px;font-feature-settings:\"capb\"}*[theme=dark] .label,*[theme=light] .label{font-weight:400;font-size:14px;font-feature-settings:\"capb\"}*[theme=dark] .large-hover-state,*[theme=light] .large-hover-state{font-weight:700;text-decoration:underline;font-size:16px;line-height:24px}*[theme=dark] .hover-state,*[theme=light] .hover-state{font-weight:700;text-decoration:underline;font-size:14px;line-height:22px}*[theme=dark] h1,*[theme=dark] .h1,*[theme=dark] h2,*[theme=dark] .h2,*[theme=dark] h3,*[theme=dark] .h3,*[theme=dark] h4,*[theme=dark] .h4,:host *[theme=dark] .media-card-content .media-card-title,:host .media-card-content *[theme=dark] .media-card-title,*[theme=dark] h5,*[theme=dark] .h5{color:#fff}:host{display:flex;flex-direction:column;border:1px solid #D3D3D3;border-radius:10px;max-width:568px;min-width:288px;background:#fff}:host img{aspect-ratio:16/9;width:100%;border-radius:10px 10px 0 0}:host .media-card-content{display:flex;flex-direction:column;padding:24px 24px 24px 16px}:host .media-card-content .media-card-title{overflow:hidden;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;text-overflow:ellipsis;white-space:normal;color:#242424;margin-bottom:8px}:host .media-card-content .media-card-description{height:62px;color:#666;font-size:14px;overflow:auto}:host .media-card-action{display:flex;justify-content:flex-end;padding:16px 24px}\n"] }]
|
|
32
|
+
}], propDecorators: { title: [{
|
|
33
|
+
type: Input,
|
|
34
|
+
args: [{ required: true }]
|
|
35
|
+
}], description: [{
|
|
36
|
+
type: Input,
|
|
37
|
+
args: [{ required: true }]
|
|
38
|
+
}], image: [{
|
|
39
|
+
type: Input,
|
|
40
|
+
args: [{ required: true }]
|
|
41
|
+
}], buttonLabel: [{
|
|
42
|
+
type: Input,
|
|
43
|
+
args: [{ required: true }]
|
|
44
|
+
}], buttonClick: [{
|
|
45
|
+
type: Output
|
|
46
|
+
}] } });
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVkaWEtY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90Z28tY2Fub3B5LXVpL2NvbXBvbmVudHMvbWVkaWEtY2FyZC9tZWRpYS1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rnby1jYW5vcHktdWkvY29tcG9uZW50cy9tZWRpYS1jYXJkL21lZGlhLWNhcmQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUMvRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7Ozs7QUFjMUUsTUFBTSxPQUFPLGtCQUFrQjtJQVovQjtRQStCRTs7OztXQUlHO1FBQ3dCLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ2xDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUN2QyxxQkFBZ0IsR0FBRyxLQUFLLENBQUM7S0FDcEM7K0dBM0JZLGtCQUFrQjttR0FBbEIsa0JBQWtCLHNOQ2xCL0IsaWtCQWlCQSw2OU1EUEksc0JBQXNCLHVLQUN0QixxQkFBcUIsZ2hCQUNyQixvQkFBb0IsZ0pBQ3BCLGdCQUFnQjs7NEZBS1Asa0JBQWtCO2tCQVo5QixTQUFTOytCQUNFLGVBQWUsY0FDYixJQUFJLFdBQ1A7d0JBQ1Asc0JBQXNCO3dCQUN0QixxQkFBcUI7d0JBQ3JCLG9CQUFvQjt3QkFDcEIsZ0JBQWdCO3FCQUNqQjs4QkFVMEIsS0FBSztzQkFBL0IsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBTUUsV0FBVztzQkFBckMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBTUUsS0FBSztzQkFBL0IsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBTUUsV0FBVztzQkFBckMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ2YsV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEaXZpZGVyQ29tcG9uZW50TW9kdWxlIH0gZnJvbSBcIi4uL2RpdmlkZXIvZGl2aWRlci5jb21wb25lbnQubW9kdWxlXCI7XG5pbXBvcnQgeyBFbGxpcHNlVGV4dERpcmVjdGl2ZSB9IGZyb20gXCIuLi8uLi9kaXJlY3RpdmVzL2VsbGlwc2UtdGV4dC5kaXJlY3RpdmVcIjtcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcFwiO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50TW9kdWxlIH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQubW9kdWxlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndWktbWVkaWEtY2FyZCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBEaXZpZGVyQ29tcG9uZW50TW9kdWxlLFxuICAgIEJ1dHRvbkNvbXBvbmVudE1vZHVsZSxcbiAgICBFbGxpcHNlVGV4dERpcmVjdGl2ZSxcbiAgICBNYXRUb29sdGlwTW9kdWxlXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9tZWRpYS1jYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL21lZGlhLWNhcmQuY29tcG9uZW50LnNjc3MnXG59KVxuZXhwb3J0IGNsYXNzIE1lZGlhQ2FyZENvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBUaGUgdGl0bGUgb2YgdGhlIGNhcmRcbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQG1lbWJlcm9mIE1lZGlhQ2FyZENvbXBvbmVudFxuICAgKi9cbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgdGl0bGU6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgY2FyZFxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgTWVkaWFDYXJkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGltYWdlIG9mIHRoZSBjYXJkXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBtZW1iZXJvZiBNZWRpYUNhcmRDb21wb25lbnRcbiAgICovXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGltYWdlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgbGFiZWwgb2YgdGhlIGJ1dHRvblxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAbWVtYmVyb2YgTWVkaWFDYXJkQ29tcG9uZW50XG4gICAqL1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBidXR0b25MYWJlbCA9ICcnO1xuICBAT3V0cHV0KCkgYnV0dG9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIHByb3RlY3RlZCBzaG93VGl0bGVUb29sdGlwID0gZmFsc2U7XG59XG4iLCI8aW1nIFthdHRyLnNyY109XCJpbWFnZVwiIGFsdD1cImNhcmQgaW1hZ2VcIj5cblxuPGRpdiBjbGFzcz1cIm1lZGlhLWNhcmQtY29udGVudFwiPlxuICA8ZGl2IGNsYXNzPVwibWVkaWEtY2FyZC10aXRsZVwiIFtpc011bHRpbGluZV09XCJ0cnVlXCIgW21hdFRvb2x0aXBdPVwic2hvd1RpdGxlVG9vbHRpcCA/IHRpdGxlIDogJydcIiB1aUVsbGlwc2VUZXh0IChvbkNoYW5nZVRleHRTdGF0ZSk9XCJzaG93VGl0bGVUb29sdGlwID0gJGV2ZW50XCI+XG4gICAge3sgdGl0bGUgfX1cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cIm1lZGlhLWNhcmQtZGVzY3JpcHRpb25cIj5cbiAgICB7eyBkZXNjcmlwdGlvbiB9fVxuICA8L2Rpdj5cbjwvZGl2PlxuXG48dWktZGl2aWRlciBbc2l6ZV09XCInc21hbGwnXCI+PC91aS1kaXZpZGVyPlxuXG48ZGl2IGNsYXNzPVwibWVkaWEtY2FyZC1hY3Rpb25cIj5cbiAgPHVpLWJ1dHRvbiBbdmFyaWFudF09XCInZ2hvc3QnXCIgW2xhYmVsXT1cImJ1dHRvbkxhYmVsXCIgKGJ1dHRvbkNsaWNrRXZlbnQpPVwiYnV0dG9uQ2xpY2suZW1pdCgpXCI+PC91aS1idXR0b24+XG48L2Rpdj5cbiJdfQ==
|