verben-ng-ui 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/Verbena-input/verbena-input.component.mjs +186 -0
- package/esm2022/lib/Verbena-input/verbena-input.module.mjs +20 -0
- package/esm2022/lib/components/TemplateDirective.directive.mjs +20 -0
- package/esm2022/lib/components/card/card.component.mjs +62 -0
- package/esm2022/lib/components/card/card.module.mjs +18 -0
- package/esm2022/lib/components/card-data-view/card-data-view-footer/card-data-view-footer.component.mjs +11 -0
- package/esm2022/lib/components/card-data-view/card-data-view-header/card-data-view-header.component.mjs +11 -0
- package/esm2022/lib/components/card-data-view/card-data-view.component.mjs +105 -0
- package/esm2022/lib/components/card-data-view/card-data-view.module.mjs +32 -0
- package/esm2022/lib/components/card-data-view/card-data.mjs +7 -0
- package/esm2022/lib/components/card-data-view/left-card-data/left-card-data.component.mjs +37 -0
- package/esm2022/lib/components/card-data-view/left-card-data-view/left-card-data-view.component.mjs +14 -0
- package/esm2022/lib/components/card-data-view/right-card-data-view/right-card-data-view.component.mjs +11 -0
- package/esm2022/lib/components/chip/ChipChangeEvent.mjs +2 -0
- package/esm2022/lib/components/chip/chip.component.mjs +209 -0
- package/esm2022/lib/components/chip/chip.module.mjs +41 -0
- package/esm2022/lib/components/data-export/data-export.component.mjs +136 -0
- package/esm2022/lib/components/data-export/data-export.module.mjs +20 -0
- package/esm2022/lib/components/data-export/data-export.service.mjs +128 -0
- package/esm2022/lib/components/data-export/data-export.types.mjs +2 -0
- package/esm2022/lib/components/data-table/column.directive.mjs +33 -0
- package/esm2022/lib/components/data-table/data-table.component.mjs +290 -0
- package/esm2022/lib/components/data-table/data-table.module.mjs +19 -0
- package/esm2022/lib/components/data-table/data-table.types.mjs +2 -0
- package/esm2022/lib/components/data-table/style.types.mjs +2 -0
- package/esm2022/lib/components/data-view/data-view-click-outside.directive.mjs +41 -0
- package/esm2022/lib/components/data-view/data-view.component.mjs +167 -0
- package/esm2022/lib/components/data-view/data-view.module.mjs +24 -0
- package/esm2022/lib/components/date-picker/date-picker.component.mjs +140 -0
- package/esm2022/lib/components/date-picker/date-picker.module.mjs +21 -0
- package/esm2022/lib/components/drop-down/DropdownChangeEvent.mjs +2 -0
- package/esm2022/lib/components/drop-down/DropdownLoadEvent.mjs +16 -0
- package/esm2022/lib/components/drop-down/DropdownMenuItem.mjs +2 -0
- package/esm2022/lib/components/drop-down/drop-down-item/drop-down-item.component.mjs +97 -0
- package/esm2022/lib/components/drop-down/drop-down.component.mjs +760 -0
- package/esm2022/lib/components/drop-down/drop-down.module.mjs +43 -0
- package/esm2022/lib/components/image/image.component.mjs +54 -0
- package/esm2022/lib/components/image/image.module.mjs +19 -0
- package/esm2022/lib/components/notification/notification.component.mjs +97 -0
- package/esm2022/lib/components/notification/notification.module.mjs +19 -0
- package/esm2022/lib/components/shared.module.mjs +17 -0
- package/esm2022/lib/components/sort-table/sort-table.component.mjs +225 -0
- package/esm2022/lib/components/sort-table/sort-table.module.mjs +20 -0
- package/esm2022/lib/components/svg/svg.component.mjs +74 -0
- package/esm2022/lib/components/svg/svg.module.mjs +18 -0
- package/esm2022/lib/components/table-filter/table-filter.component.mjs +228 -0
- package/esm2022/lib/components/table-filter/table-filter.module.mjs +44 -0
- package/esm2022/lib/components/tooltip/tooltip.component.mjs +103 -0
- package/esm2022/lib/components/tooltip/tooltip.module.mjs +19 -0
- package/esm2022/lib/components/verben-mail/verben-mail.component.mjs +170 -0
- package/esm2022/lib/components/verben-mail/verben-mail.module.mjs +35 -0
- package/esm2022/lib/components/visible-column/visible-column.component.mjs +130 -0
- package/esm2022/lib/components/visible-column/visible-column.module.mjs +20 -0
- package/esm2022/lib/config.mjs +34 -0
- package/esm2022/lib/control-options/control-options.directive.mjs +162 -0
- package/esm2022/lib/control-options/control-options.module.mjs +18 -0
- package/esm2022/lib/convert-to-integer/convert-to-integer.directive.mjs +38 -0
- package/esm2022/lib/convert-to-integer/convert-to-integer.module.mjs +18 -0
- package/esm2022/lib/convert-to-number/convert-to-number.directive.mjs +36 -0
- package/esm2022/lib/convert-to-number/convert-to-number.module.mjs +16 -0
- package/esm2022/lib/email-validator/email-validator.directive.mjs +31 -0
- package/esm2022/lib/email-validator/email-validator.module.mjs +16 -0
- package/esm2022/lib/models/data-filter.mjs +2 -0
- package/esm2022/lib/models/mail-model.mjs +2 -0
- package/esm2022/lib/models/table-filter.mjs +23 -0
- package/esm2022/lib/number-range/number-range.directive.mjs +42 -0
- package/esm2022/lib/number-range/number-range.module.mjs +18 -0
- package/esm2022/lib/phone-number/phone-number.directive.mjs +32 -0
- package/esm2022/lib/phone-number/phone-number.module.mjs +18 -0
- package/esm2022/lib/required-input/required-input.directive.mjs +31 -0
- package/esm2022/lib/required-input/required-input.module.mjs +16 -0
- package/esm2022/lib/validate/error-message.service.mjs +95 -0
- package/esm2022/lib/validate/validate.directive.mjs +130 -0
- package/esm2022/lib/validate/validate.module.mjs +26 -0
- package/esm2022/lib/validate-input/validate-input.directive.mjs +13 -0
- package/esm2022/lib/validate-input/validate-input.module.mjs +16 -0
- package/esm2022/lib/verbena-badge/verbena-badge.component.mjs +37 -0
- package/esm2022/lib/verbena-badge/verbena-badge.module.mjs +18 -0
- package/esm2022/lib/verbena-button/verbena-button.component.mjs +126 -0
- package/esm2022/lib/verbena-button/verbena-button.module.mjs +19 -0
- package/esm2022/lib/verbena-switch/verbena-switch.component.mjs +45 -0
- package/esm2022/lib/verbena-switch/verbena-switch.module.mjs +18 -0
- package/esm2022/lib/verbena-textarea/verbena-textarea.component.mjs +70 -0
- package/esm2022/lib/verbena-textarea/verbena-textarea.module.mjs +19 -0
- package/esm2022/public-api.mjs +96 -0
- package/esm2022/verben-ng-ui.mjs +5 -0
- package/fesm2022/verben-ng-ui.mjs +4892 -0
- package/fesm2022/verben-ng-ui.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/Verbena-input/verbena-input.component.d.ts +54 -0
- package/lib/Verbena-input/verbena-input.module.d.ts +10 -0
- package/lib/components/TemplateDirective.directive.d.ts +9 -0
- package/lib/components/card/card.component.d.ts +23 -0
- package/lib/components/card/card.module.d.ts +8 -0
- package/lib/components/card-data-view/card-data-view-footer/card-data-view-footer.component.d.ts +5 -0
- package/lib/components/card-data-view/card-data-view-header/card-data-view-header.component.d.ts +5 -0
- package/lib/components/card-data-view/card-data-view.component.d.ts +33 -0
- package/lib/components/card-data-view/card-data-view.module.d.ts +14 -0
- package/lib/components/card-data-view/card-data.d.ts +9 -0
- package/lib/components/card-data-view/left-card-data/left-card-data.component.d.ts +15 -0
- package/lib/components/card-data-view/left-card-data-view/left-card-data-view.component.d.ts +7 -0
- package/lib/components/card-data-view/right-card-data-view/right-card-data-view.component.d.ts +5 -0
- package/lib/components/chip/ChipChangeEvent.d.ts +4 -0
- package/lib/components/chip/chip.component.d.ts +45 -0
- package/lib/components/chip/chip.module.d.ts +7 -0
- package/lib/components/data-export/data-export.component.d.ts +33 -0
- package/lib/components/data-export/data-export.module.d.ts +9 -0
- package/lib/components/data-export/data-export.service.d.ts +26 -0
- package/lib/components/data-export/data-export.types.d.ts +18 -0
- package/lib/components/data-table/column.directive.d.ts +11 -0
- package/lib/components/data-table/data-table.component.d.ts +63 -0
- package/lib/components/data-table/data-table.module.d.ts +9 -0
- package/lib/components/data-table/data-table.types.d.ts +12 -0
- package/lib/components/data-table/style.types.d.ts +53 -0
- package/lib/components/data-view/data-view-click-outside.directive.d.ts +15 -0
- package/lib/components/data-view/data-view.component.d.ts +49 -0
- package/lib/components/data-view/data-view.module.d.ts +14 -0
- package/lib/components/date-picker/date-picker.component.d.ts +36 -0
- package/lib/components/date-picker/date-picker.module.d.ts +11 -0
- package/lib/components/drop-down/DropdownChangeEvent.d.ts +4 -0
- package/lib/components/drop-down/DropdownLoadEvent.d.ts +7 -0
- package/lib/components/drop-down/DropdownMenuItem.d.ts +11 -0
- package/lib/components/drop-down/drop-down-item/drop-down-item.component.d.ts +28 -0
- package/lib/components/drop-down/drop-down.component.d.ts +112 -0
- package/lib/components/drop-down/drop-down.module.d.ts +9 -0
- package/lib/components/image/image.component.d.ts +16 -0
- package/lib/components/image/image.module.d.ts +9 -0
- package/lib/components/notification/notification.component.d.ts +56 -0
- package/lib/components/notification/notification.module.d.ts +9 -0
- package/lib/components/shared.module.d.ts +7 -0
- package/lib/components/sort-table/sort-table.component.d.ts +58 -0
- package/lib/components/sort-table/sort-table.module.d.ts +10 -0
- package/lib/components/svg/svg.component.d.ts +21 -0
- package/lib/components/svg/svg.module.d.ts +8 -0
- package/lib/components/table-filter/table-filter.component.d.ts +60 -0
- package/lib/components/table-filter/table-filter.module.d.ts +14 -0
- package/lib/components/tooltip/tooltip.component.d.ts +43 -0
- package/lib/components/tooltip/tooltip.module.d.ts +9 -0
- package/lib/components/verben-mail/verben-mail.component.d.ts +44 -0
- package/lib/components/verben-mail/verben-mail.module.d.ts +11 -0
- package/lib/components/visible-column/visible-column.component.d.ts +46 -0
- package/lib/components/visible-column/visible-column.module.d.ts +10 -0
- package/lib/config.d.ts +5 -0
- package/lib/control-options/control-options.directive.d.ts +33 -0
- package/lib/control-options/control-options.module.d.ts +8 -0
- package/lib/convert-to-integer/convert-to-integer.directive.d.ts +11 -0
- package/lib/convert-to-integer/convert-to-integer.module.d.ts +8 -0
- package/lib/convert-to-number/convert-to-number.directive.d.ts +11 -0
- package/lib/convert-to-number/convert-to-number.module.d.ts +7 -0
- package/lib/email-validator/email-validator.directive.d.ts +11 -0
- package/lib/email-validator/email-validator.module.d.ts +7 -0
- package/lib/models/data-filter.d.ts +7 -0
- package/lib/models/mail-model.d.ts +8 -0
- package/lib/models/table-filter.d.ts +31 -0
- package/lib/number-range/number-range.directive.d.ts +12 -0
- package/lib/number-range/number-range.module.d.ts +8 -0
- package/lib/phone-number/phone-number.directive.d.ts +11 -0
- package/lib/phone-number/phone-number.module.d.ts +8 -0
- package/lib/required-input/required-input.directive.d.ts +10 -0
- package/lib/required-input/required-input.module.d.ts +7 -0
- package/lib/validate/error-message.service.d.ts +8 -0
- package/lib/validate/validate.directive.d.ts +28 -0
- package/lib/validate/validate.module.d.ts +7 -0
- package/lib/validate-input/validate-input.directive.d.ts +5 -0
- package/lib/validate-input/validate-input.module.d.ts +7 -0
- package/lib/verbena-badge/verbena-badge.component.d.ts +13 -0
- package/lib/verbena-badge/verbena-badge.module.d.ts +8 -0
- package/lib/verbena-button/verbena-button.component.d.ts +35 -0
- package/lib/verbena-button/verbena-button.module.d.ts +9 -0
- package/lib/verbena-switch/verbena-switch.component.d.ts +15 -0
- package/lib/verbena-switch/verbena-switch.module.d.ts +8 -0
- package/lib/verbena-textarea/verbena-textarea.component.d.ts +24 -0
- package/lib/verbena-textarea/verbena-textarea.module.d.ts +9 -0
- package/package.json +14 -8
- package/{src/public-api.ts → public-api.d.ts} +0 -41
- package/ng-package.json +0 -10
- package/src/lib/Verbena-input/error.service.ts +0 -23
- package/src/lib/Verbena-input/verbena-input.component.css +0 -59
- package/src/lib/Verbena-input/verbena-input.component.html +0 -64
- package/src/lib/Verbena-input/verbena-input.component.spec.ts +0 -25
- package/src/lib/Verbena-input/verbena-input.component.ts +0 -162
- package/src/lib/Verbena-input/verbena-input.module.ts +0 -12
- package/src/lib/components/TemplateDirective.directive.ts +0 -10
- package/src/lib/components/card/card.component.css +0 -20
- package/src/lib/components/card/card.component.html +0 -23
- package/src/lib/components/card/card.component.spec.ts +0 -23
- package/src/lib/components/card/card.component.ts +0 -33
- package/src/lib/components/card/card.module.ts +0 -10
- package/src/lib/components/card-data-view/card-data-view-footer/card-data-view-footer.component.css +0 -3
- package/src/lib/components/card-data-view/card-data-view-footer/card-data-view-footer.component.html +0 -1
- package/src/lib/components/card-data-view/card-data-view-footer/card-data-view-footer.component.spec.ts +0 -23
- package/src/lib/components/card-data-view/card-data-view-footer/card-data-view-footer.component.ts +0 -10
- package/src/lib/components/card-data-view/card-data-view-header/card-data-view-header.component.css +0 -7
- package/src/lib/components/card-data-view/card-data-view-header/card-data-view-header.component.html +0 -1
- package/src/lib/components/card-data-view/card-data-view-header/card-data-view-header.component.spec.ts +0 -23
- package/src/lib/components/card-data-view/card-data-view-header/card-data-view-header.component.ts +0 -10
- package/src/lib/components/card-data-view/card-data-view.component.css +0 -39
- package/src/lib/components/card-data-view/card-data-view.component.html +0 -29
- package/src/lib/components/card-data-view/card-data-view.component.spec.ts +0 -23
- package/src/lib/components/card-data-view/card-data-view.component.ts +0 -66
- package/src/lib/components/card-data-view/card-data-view.module.ts +0 -20
- package/src/lib/components/card-data-view/card-data.ts +0 -7
- package/src/lib/components/card-data-view/left-card-data/left-card-data.component.css +0 -15
- package/src/lib/components/card-data-view/left-card-data/left-card-data.component.html +0 -4
- package/src/lib/components/card-data-view/left-card-data/left-card-data.component.spec.ts +0 -23
- package/src/lib/components/card-data-view/left-card-data/left-card-data.component.ts +0 -19
- package/src/lib/components/card-data-view/left-card-data-view/left-card-data-view.component.css +0 -0
- package/src/lib/components/card-data-view/left-card-data-view/left-card-data-view.component.html +0 -4
- package/src/lib/components/card-data-view/left-card-data-view/left-card-data-view.component.spec.ts +0 -23
- package/src/lib/components/card-data-view/left-card-data-view/left-card-data-view.component.ts +0 -12
- package/src/lib/components/card-data-view/right-card-data-view/right-card-data-view.component.css +0 -3
- package/src/lib/components/card-data-view/right-card-data-view/right-card-data-view.component.html +0 -1
- package/src/lib/components/card-data-view/right-card-data-view/right-card-data-view.component.spec.ts +0 -23
- package/src/lib/components/card-data-view/right-card-data-view/right-card-data-view.component.ts +0 -10
- package/src/lib/components/chip/ChipChangeEvent.ts +0 -4
- package/src/lib/components/chip/chip.component.css +0 -94
- package/src/lib/components/chip/chip.component.html +0 -49
- package/src/lib/components/chip/chip.component.spec.ts +0 -23
- package/src/lib/components/chip/chip.component.ts +0 -209
- package/src/lib/components/chip/chip.module.ts +0 -24
- package/src/lib/components/chip/documentation.md +0 -26
- package/src/lib/components/data-export/data-export.component.css +0 -0
- package/src/lib/components/data-export/data-export.component.html +0 -90
- package/src/lib/components/data-export/data-export.component.spec.ts +0 -23
- package/src/lib/components/data-export/data-export.component.ts +0 -158
- package/src/lib/components/data-export/data-export.module.ts +0 -13
- package/src/lib/components/data-export/data-export.service.spec.ts +0 -16
- package/src/lib/components/data-export/data-export.service.ts +0 -152
- package/src/lib/components/data-export/data-export.types.ts +0 -21
- package/src/lib/components/data-table/column.directive.spec.ts +0 -8
- package/src/lib/components/data-table/column.directive.ts +0 -19
- package/src/lib/components/data-table/data-table.component.css +0 -0
- package/src/lib/components/data-table/data-table.component.html +0 -55
- package/src/lib/components/data-table/data-table.component.spec.ts +0 -21
- package/src/lib/components/data-table/data-table.component.ts +0 -336
- package/src/lib/components/data-table/data-table.module.ts +0 -11
- package/src/lib/components/data-table/data-table.types.ts +0 -13
- package/src/lib/components/data-table/style.types.ts +0 -55
- package/src/lib/components/data-view/data-view-click-outside.directive.ts +0 -44
- package/src/lib/components/data-view/data-view.component.css +0 -74
- package/src/lib/components/data-view/data-view.component.html +0 -161
- package/src/lib/components/data-view/data-view.component.spec.ts +0 -23
- package/src/lib/components/data-view/data-view.component.ts +0 -136
- package/src/lib/components/data-view/data-view.module.ts +0 -16
- package/src/lib/components/date-picker/date-picker.component.css +0 -65
- package/src/lib/components/date-picker/date-picker.component.html +0 -60
- package/src/lib/components/date-picker/date-picker.component.specs.ts +0 -23
- package/src/lib/components/date-picker/date-picker.component.ts +0 -143
- package/src/lib/components/date-picker/date-picker.module.ts +0 -12
- package/src/lib/components/drop-down/DropdownChangeEvent.ts +0 -4
- package/src/lib/components/drop-down/DropdownLoadEvent.ts +0 -19
- package/src/lib/components/drop-down/DropdownMenuItem.ts +0 -42
- package/src/lib/components/drop-down/documentation.md +0 -69
- package/src/lib/components/drop-down/drop-down-item/drop-down-item.component.css +0 -123
- package/src/lib/components/drop-down/drop-down-item/drop-down-item.component.html +0 -133
- package/src/lib/components/drop-down/drop-down-item/drop-down-item.component.spec.ts +0 -23
- package/src/lib/components/drop-down/drop-down-item/drop-down-item.component.ts +0 -88
- package/src/lib/components/drop-down/drop-down.component.css +0 -317
- package/src/lib/components/drop-down/drop-down.component.html +0 -177
- package/src/lib/components/drop-down/drop-down.component.spec.ts +0 -23
- package/src/lib/components/drop-down/drop-down.component.ts +0 -757
- package/src/lib/components/drop-down/drop-down.module.ts +0 -24
- package/src/lib/components/image/image.component.css +0 -12
- package/src/lib/components/image/image.component.html +0 -18
- package/src/lib/components/image/image.component.spec.ts +0 -23
- package/src/lib/components/image/image.component.ts +0 -45
- package/src/lib/components/image/image.module.ts +0 -11
- package/src/lib/components/notification/notification.component.css +0 -3
- package/src/lib/components/notification/notification.component.html +0 -19
- package/src/lib/components/notification/notification.component.spec.ts +0 -23
- package/src/lib/components/notification/notification.component.ts +0 -77
- package/src/lib/components/notification/notification.module.ts +0 -14
- package/src/lib/components/shared.module.ts +0 -9
- package/src/lib/components/sort-table/sort-table.component.css +0 -67
- package/src/lib/components/sort-table/sort-table.component.html +0 -164
- package/src/lib/components/sort-table/sort-table.component.spec.ts +0 -23
- package/src/lib/components/sort-table/sort-table.component.ts +0 -204
- package/src/lib/components/sort-table/sort-table.module.ts +0 -11
- package/src/lib/components/svg/svg.component.css +0 -0
- package/src/lib/components/svg/svg.component.html +0 -1
- package/src/lib/components/svg/svg.component.spec.ts +0 -23
- package/src/lib/components/svg/svg.component.ts +0 -64
- package/src/lib/components/svg/svg.module.ts +0 -10
- package/src/lib/components/table-filter/table-filter.component.css +0 -93
- package/src/lib/components/table-filter/table-filter.component.html +0 -293
- package/src/lib/components/table-filter/table-filter.component.spec.ts +0 -23
- package/src/lib/components/table-filter/table-filter.component.ts +0 -221
- package/src/lib/components/table-filter/table-filter.module.ts +0 -25
- package/src/lib/components/tooltip/tooltip.component.css +0 -8
- package/src/lib/components/tooltip/tooltip.component.html +0 -13
- package/src/lib/components/tooltip/tooltip.component.spec.ts +0 -23
- package/src/lib/components/tooltip/tooltip.component.ts +0 -84
- package/src/lib/components/tooltip/tooltip.module.ts +0 -11
- package/src/lib/components/verben-mail/verben-mail.component.config.ts +0 -11
- package/src/lib/components/verben-mail/verben-mail.component.css +0 -71
- package/src/lib/components/verben-mail/verben-mail.component.html +0 -139
- package/src/lib/components/verben-mail/verben-mail.component.ts +0 -151
- package/src/lib/components/verben-mail/verben-mail.module.ts +0 -18
- package/src/lib/components/visible-column/visible-column.component.css +0 -83
- package/src/lib/components/visible-column/visible-column.component.html +0 -77
- package/src/lib/components/visible-column/visible-column.component.spec.ts +0 -23
- package/src/lib/components/visible-column/visible-column.component.ts +0 -106
- package/src/lib/components/visible-column/visible-column.module.ts +0 -11
- package/src/lib/config.ts +0 -37
- package/src/lib/control-options/control-options.directive.ts +0 -129
- package/src/lib/control-options/control-options.module.ts +0 -10
- package/src/lib/convert-to-integer/convert-to-integer.directive.ts +0 -28
- package/src/lib/convert-to-integer/convert-to-integer.module.ts +0 -10
- package/src/lib/convert-to-integer/public-api.ts +0 -1
- package/src/lib/convert-to-number/convert-to-number.directive.ts +0 -22
- package/src/lib/convert-to-number/convert-to-number.module.ts +0 -8
- package/src/lib/convert-to-number/public-api.ts +0 -1
- package/src/lib/email-validator/email-validator.directive.ts +0 -24
- package/src/lib/email-validator/email-validator.module.ts +0 -14
- package/src/lib/models/column-filter.ts +0 -5
- package/src/lib/models/data-filter.ts +0 -8
- package/src/lib/models/mail-model.ts +0 -8
- package/src/lib/models/sort-filter.ts +0 -0
- package/src/lib/models/table-filter.ts +0 -34
- package/src/lib/number-range/number-range.directive.ts +0 -35
- package/src/lib/number-range/number-range.module.ts +0 -11
- package/src/lib/phone-number/phone-number.directive.ts +0 -22
- package/src/lib/phone-number/phone-number.module.ts +0 -10
- package/src/lib/phone-number/public-api.ts +0 -1
- package/src/lib/required-input/required-input.directive.ts +0 -18
- package/src/lib/required-input/required-input.module.ts +0 -8
- package/src/lib/theme-switcher/theme-switcher.directive.spec.ts +0 -8
- package/src/lib/theme-switcher/theme-switcher.directive.ts +0 -70
- package/src/lib/theme-switcher/theme-switcher.module.ts +0 -8
- package/src/lib/validate/error-message.service.ts +0 -104
- package/src/lib/validate/validate.directive.ts +0 -110
- package/src/lib/validate/validate.module.ts +0 -17
- package/src/lib/validate-input/validate-input.directive.ts +0 -8
- package/src/lib/validate-input/validate-input.module.ts +0 -8
- package/src/lib/verben-ng-ui.component.spec.ts +0 -23
- package/src/lib/verben-ng-ui.component.ts +0 -16
- package/src/lib/verben-ng-ui.service.spec.ts +0 -16
- package/src/lib/verben-ng-ui.service.ts +0 -9
- package/src/lib/verbena-badge/verbena-badge.component.css +0 -16
- package/src/lib/verbena-badge/verbena-badge.component.html +0 -13
- package/src/lib/verbena-badge/verbena-badge.component.spec.ts +0 -25
- package/src/lib/verbena-badge/verbena-badge.component.ts +0 -18
- package/src/lib/verbena-badge/verbena-badge.module.ts +0 -10
- package/src/lib/verbena-button/verbena-button.component.css +0 -20
- package/src/lib/verbena-button/verbena-button.component.html +0 -25
- package/src/lib/verbena-button/verbena-button.component.spec.ts +0 -25
- package/src/lib/verbena-button/verbena-button.component.ts +0 -92
- package/src/lib/verbena-button/verbena-button.module.ts +0 -11
- package/src/lib/verbena-switch/verbena-switch.component.css +0 -45
- package/src/lib/verbena-switch/verbena-switch.component.html +0 -8
- package/src/lib/verbena-switch/verbena-switch.component.spec.ts +0 -25
- package/src/lib/verbena-switch/verbena-switch.component.ts +0 -31
- package/src/lib/verbena-switch/verbena-switch.module.ts +0 -10
- package/src/lib/verbena-textarea/verbena-textarea.component.css +0 -0
- package/src/lib/verbena-textarea/verbena-textarea.component.html +0 -19
- package/src/lib/verbena-textarea/verbena-textarea.component.spec.ts +0 -33
- package/src/lib/verbena-textarea/verbena-textarea.component.ts +0 -44
- package/src/lib/verbena-textarea/verbena-textarea.module.ts +0 -11
- package/src/styles.css +0 -103
- package/tsconfig.lib.json +0 -15
- package/tsconfig.lib.prod.json +0 -11
- package/tsconfig.spec.json +0 -15
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
import { Component, Input, Output, EventEmitter, forwardRef } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/common";
|
|
5
|
+
import * as i2 from "@angular/forms";
|
|
6
|
+
import * as i3 from "../components/tooltip/tooltip.component";
|
|
7
|
+
export class VerbenaInputComponent {
|
|
8
|
+
label = '';
|
|
9
|
+
placeHolder = '';
|
|
10
|
+
required = false;
|
|
11
|
+
minLength;
|
|
12
|
+
maxLength;
|
|
13
|
+
type = 'text';
|
|
14
|
+
bgColor = '#f9f9f9';
|
|
15
|
+
border = '1px solid #ccc';
|
|
16
|
+
borderRadius = '5px';
|
|
17
|
+
textColor = '#333';
|
|
18
|
+
value = '';
|
|
19
|
+
labelPosition = 'start';
|
|
20
|
+
labelColor = 'black';
|
|
21
|
+
disable = false;
|
|
22
|
+
min;
|
|
23
|
+
max;
|
|
24
|
+
showBorder = true;
|
|
25
|
+
showErrorMessage = true;
|
|
26
|
+
errorMessageColor = 'red';
|
|
27
|
+
errorBorderColor = 'red';
|
|
28
|
+
errorPosition = 'bottom';
|
|
29
|
+
capitalization = 'none';
|
|
30
|
+
// New property for custom error messages
|
|
31
|
+
customErrorMessages = {};
|
|
32
|
+
valueChange = new EventEmitter();
|
|
33
|
+
errorMessage;
|
|
34
|
+
inputId = '';
|
|
35
|
+
onChange = () => { };
|
|
36
|
+
onTouch = () => { };
|
|
37
|
+
ngOnInit() {
|
|
38
|
+
this.inputId = `verbena-input-${Math.random().toString(36).substr(2, 9)}`;
|
|
39
|
+
}
|
|
40
|
+
onInput(event) {
|
|
41
|
+
const target = event.target;
|
|
42
|
+
this.value = target.value.trim();
|
|
43
|
+
this.value = this.applyCapitalization(this.value, this.capitalization);
|
|
44
|
+
this.validate();
|
|
45
|
+
const sanitizedValue = this.sanitizeValue(this.value);
|
|
46
|
+
this.onChange(sanitizedValue);
|
|
47
|
+
this.valueChange.emit(sanitizedValue);
|
|
48
|
+
}
|
|
49
|
+
applyCapitalization(value, format) {
|
|
50
|
+
switch (format) {
|
|
51
|
+
case 'uppercase': return value.toUpperCase();
|
|
52
|
+
case 'lowercase': return value.toLowerCase();
|
|
53
|
+
case 'sentencecase': return value.charAt(0).toUpperCase() + value.slice(1).toLowerCase();
|
|
54
|
+
case 'pascalcase': return value.replace(/\w+/g, (w) => w[0].toUpperCase() + w.slice(1).toLowerCase());
|
|
55
|
+
case 'camelcase': return value.replace(/(?:^\w|[A-Z]|\b\w|\s+)/g, (match, index) => index === 0 ? match.toLowerCase() : match.toUpperCase()).replace(/\s+/g, '');
|
|
56
|
+
default: return value;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
sanitizeValue(value) {
|
|
60
|
+
if (['number', 'decimal', 'integer'].includes(this.type)) {
|
|
61
|
+
return value.replace(/,/g, '');
|
|
62
|
+
}
|
|
63
|
+
return value;
|
|
64
|
+
}
|
|
65
|
+
validate() {
|
|
66
|
+
this.errorMessage = '';
|
|
67
|
+
if (this.required && !this.value) {
|
|
68
|
+
this.errorMessage = this.customErrorMessages.required || 'This field is required.';
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
if (this.minLength && this.value.length < this.minLength) {
|
|
72
|
+
this.errorMessage = this.customErrorMessages.minLength || `Minimum length is ${this.minLength}.`;
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
if (this.maxLength && this.value.length > this.maxLength) {
|
|
76
|
+
this.errorMessage = this.customErrorMessages.maxLength || `Maximum length is ${this.maxLength}.`;
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
const sanitizedValue = this.sanitizeValue(this.value);
|
|
80
|
+
const numericValue = parseFloat(sanitizedValue);
|
|
81
|
+
if (['integer', 'number', 'decimal'].includes(this.type)) {
|
|
82
|
+
if (this.min !== undefined && numericValue < this.min) {
|
|
83
|
+
this.errorMessage = this.customErrorMessages.minValue || `Minimum value is ${this.min}.`;
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
else if (this.max !== undefined && numericValue > this.max) {
|
|
87
|
+
this.errorMessage = this.customErrorMessages.maxValue || `Maximum value is ${this.max}.`;
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
if (this.type === 'integer' && !/^\d+$/.test(this.value)) {
|
|
92
|
+
this.errorMessage = this.customErrorMessages.integer || 'Please enter a valid integer.';
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
if (this.type === 'number' && !/^\d+(\.\d+)?$/.test(this.value)) {
|
|
96
|
+
this.errorMessage = this.customErrorMessages.number || 'Please enter a valid number.';
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
if (this.type === 'decimal' && !/^\d+(\.\d+)?$/.test(this.value)) {
|
|
100
|
+
this.errorMessage = this.customErrorMessages.decimal || 'Please enter a valid decimal.';
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
if (this.type === 'email' && !/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(this.value)) {
|
|
104
|
+
this.errorMessage = this.customErrorMessages.email || 'Please enter a valid email address.';
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
writeValue(value) {
|
|
108
|
+
this.value = value ? this.applyCapitalization(value.trim(), this.capitalization) : '';
|
|
109
|
+
}
|
|
110
|
+
registerOnChange(fn) {
|
|
111
|
+
this.onChange = fn;
|
|
112
|
+
}
|
|
113
|
+
registerOnTouched(fn) {
|
|
114
|
+
this.onTouch = fn;
|
|
115
|
+
}
|
|
116
|
+
setDisabledState(isDisabled) {
|
|
117
|
+
this.disable = isDisabled;
|
|
118
|
+
}
|
|
119
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: VerbenaInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
120
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: VerbenaInputComponent, selector: "verbena-input", inputs: { label: "label", placeHolder: "placeHolder", required: "required", minLength: "minLength", maxLength: "maxLength", type: "type", bgColor: "bgColor", border: "border", borderRadius: "borderRadius", textColor: "textColor", value: "value", labelPosition: "labelPosition", labelColor: "labelColor", disable: "disable", min: "min", max: "max", showBorder: "showBorder", showErrorMessage: "showErrorMessage", errorMessageColor: "errorMessageColor", errorBorderColor: "errorBorderColor", errorPosition: "errorPosition", capitalization: "capitalization", customErrorMessages: "customErrorMessages" }, outputs: { valueChange: "valueChange" }, providers: [
|
|
121
|
+
{
|
|
122
|
+
provide: NG_VALUE_ACCESSOR,
|
|
123
|
+
useExisting: forwardRef(() => VerbenaInputComponent),
|
|
124
|
+
multi: true
|
|
125
|
+
}
|
|
126
|
+
], ngImport: i0, template: "<div class=\"input-container\"\n [ngStyle]=\"{\n 'display': 'flex',\n 'flex-direction': 'column',\n\n }\"\n>\n <div\n [ngStyle]=\"{\n 'display': 'flex',\n 'justify-content': labelPosition,\n 'color': labelColor,\n 'padding': '0'\n }\"\n class=\"input-field\"\n >\n <label [for]=\"label\">{{ label }}</label>\n </div>\n\n <div class=\"input-wrapper\">\n <input\n [id]=\"label\"\n [attr.type]=\"type\"\n [attr.placeholder]=\"placeHolder\"\n [required]=\"required\"\n [attr.minlength]=\"minLength?.toString()\"\n [attr.maxlength]=\"maxLength?.toString()\"\n (input)=\"onInput($event)\"\n [(ngModel)]=\"value\"\n [ngStyle]=\"{\n 'background-color': bgColor,\n 'border': showBorder ? (errorMessage ? '1px solid ' + errorBorderColor : border) : 'none',\n 'border-radius': borderRadius,\n 'color': textColor\n }\"\n class=\"input-field\"\n />\n\n <!-- Conditional red dot for error when showErrorMessage is false -->\n <verben-tooltip *ngIf=\"errorMessage && !showErrorMessage\"\n [tooltipContent]=\"tooltipTemplate\"\n customClass=\"error-tooltip\">\n <div class=\"error-dot\"\n [ngStyle]=\"{ 'background-color': errorBorderColor }\">\n </div>\n </verben-tooltip>\n\n <!-- Tooltip template for error message -->\n <ng-template #tooltipTemplate>\n {{ errorMessage }}\n </ng-template>\n\n <!-- Conditional error message display -->\n <span *ngIf=\"errorMessage && showErrorMessage\"\n [ngStyle]=\"{ 'color': errorMessageColor }\"\n [ngClass]=\"{'error-message': true,\n 'error-top': errorPosition === 'top',\n 'error-bottom': errorPosition === 'bottom',\n 'error-left': errorPosition === 'left',\n 'error-right': errorPosition === 'right'}\">\n {{ errorMessage }}\n </span>\n </div>\n</div>\n", styles: [".input-container{display:flex;flex-direction:column;gap:5px;position:relative}.input-field{width:100%;padding:6px}.error-message{font-size:12px;margin:0}.error-top{position:absolute;top:0;left:50%}.error-bottom{position:relative;margin-top:5px}.error-left{position:absolute;left:-10px}.error-right{position:absolute;right:-10px;top:0}.input-wrapper{position:relative}.input-field{width:100%;padding:8px}.error-dot{position:absolute;top:0%;right:-10px;transform:translateY(-50%);width:8px;height:8px;border-radius:50%;cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.TooltipComponent, selector: "verben-tooltip", inputs: ["tooltipContent", "customClass", "backgroundColor", "textColor", "padding", "borderRadius", "border", "width", "top", "bottom", "left", "right"] }] });
|
|
127
|
+
}
|
|
128
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: VerbenaInputComponent, decorators: [{
|
|
129
|
+
type: Component,
|
|
130
|
+
args: [{ selector: 'verbena-input', providers: [
|
|
131
|
+
{
|
|
132
|
+
provide: NG_VALUE_ACCESSOR,
|
|
133
|
+
useExisting: forwardRef(() => VerbenaInputComponent),
|
|
134
|
+
multi: true
|
|
135
|
+
}
|
|
136
|
+
], template: "<div class=\"input-container\"\n [ngStyle]=\"{\n 'display': 'flex',\n 'flex-direction': 'column',\n\n }\"\n>\n <div\n [ngStyle]=\"{\n 'display': 'flex',\n 'justify-content': labelPosition,\n 'color': labelColor,\n 'padding': '0'\n }\"\n class=\"input-field\"\n >\n <label [for]=\"label\">{{ label }}</label>\n </div>\n\n <div class=\"input-wrapper\">\n <input\n [id]=\"label\"\n [attr.type]=\"type\"\n [attr.placeholder]=\"placeHolder\"\n [required]=\"required\"\n [attr.minlength]=\"minLength?.toString()\"\n [attr.maxlength]=\"maxLength?.toString()\"\n (input)=\"onInput($event)\"\n [(ngModel)]=\"value\"\n [ngStyle]=\"{\n 'background-color': bgColor,\n 'border': showBorder ? (errorMessage ? '1px solid ' + errorBorderColor : border) : 'none',\n 'border-radius': borderRadius,\n 'color': textColor\n }\"\n class=\"input-field\"\n />\n\n <!-- Conditional red dot for error when showErrorMessage is false -->\n <verben-tooltip *ngIf=\"errorMessage && !showErrorMessage\"\n [tooltipContent]=\"tooltipTemplate\"\n customClass=\"error-tooltip\">\n <div class=\"error-dot\"\n [ngStyle]=\"{ 'background-color': errorBorderColor }\">\n </div>\n </verben-tooltip>\n\n <!-- Tooltip template for error message -->\n <ng-template #tooltipTemplate>\n {{ errorMessage }}\n </ng-template>\n\n <!-- Conditional error message display -->\n <span *ngIf=\"errorMessage && showErrorMessage\"\n [ngStyle]=\"{ 'color': errorMessageColor }\"\n [ngClass]=\"{'error-message': true,\n 'error-top': errorPosition === 'top',\n 'error-bottom': errorPosition === 'bottom',\n 'error-left': errorPosition === 'left',\n 'error-right': errorPosition === 'right'}\">\n {{ errorMessage }}\n </span>\n </div>\n</div>\n", styles: [".input-container{display:flex;flex-direction:column;gap:5px;position:relative}.input-field{width:100%;padding:6px}.error-message{font-size:12px;margin:0}.error-top{position:absolute;top:0;left:50%}.error-bottom{position:relative;margin-top:5px}.error-left{position:absolute;left:-10px}.error-right{position:absolute;right:-10px;top:0}.input-wrapper{position:relative}.input-field{width:100%;padding:8px}.error-dot{position:absolute;top:0%;right:-10px;transform:translateY(-50%);width:8px;height:8px;border-radius:50%;cursor:pointer}\n"] }]
|
|
137
|
+
}], propDecorators: { label: [{
|
|
138
|
+
type: Input
|
|
139
|
+
}], placeHolder: [{
|
|
140
|
+
type: Input
|
|
141
|
+
}], required: [{
|
|
142
|
+
type: Input
|
|
143
|
+
}], minLength: [{
|
|
144
|
+
type: Input
|
|
145
|
+
}], maxLength: [{
|
|
146
|
+
type: Input
|
|
147
|
+
}], type: [{
|
|
148
|
+
type: Input
|
|
149
|
+
}], bgColor: [{
|
|
150
|
+
type: Input
|
|
151
|
+
}], border: [{
|
|
152
|
+
type: Input
|
|
153
|
+
}], borderRadius: [{
|
|
154
|
+
type: Input
|
|
155
|
+
}], textColor: [{
|
|
156
|
+
type: Input
|
|
157
|
+
}], value: [{
|
|
158
|
+
type: Input
|
|
159
|
+
}], labelPosition: [{
|
|
160
|
+
type: Input
|
|
161
|
+
}], labelColor: [{
|
|
162
|
+
type: Input
|
|
163
|
+
}], disable: [{
|
|
164
|
+
type: Input
|
|
165
|
+
}], min: [{
|
|
166
|
+
type: Input
|
|
167
|
+
}], max: [{
|
|
168
|
+
type: Input
|
|
169
|
+
}], showBorder: [{
|
|
170
|
+
type: Input
|
|
171
|
+
}], showErrorMessage: [{
|
|
172
|
+
type: Input
|
|
173
|
+
}], errorMessageColor: [{
|
|
174
|
+
type: Input
|
|
175
|
+
}], errorBorderColor: [{
|
|
176
|
+
type: Input
|
|
177
|
+
}], errorPosition: [{
|
|
178
|
+
type: Input
|
|
179
|
+
}], capitalization: [{
|
|
180
|
+
type: Input
|
|
181
|
+
}], customErrorMessages: [{
|
|
182
|
+
type: Input
|
|
183
|
+
}], valueChange: [{
|
|
184
|
+
type: Output
|
|
185
|
+
}] } });
|
|
186
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyYmVuYS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9WZXJiZW5hLWlucHV0L3ZlcmJlbmEtaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmVyYmVuLW5nLXVpL3NyYy9saWIvVmVyYmVuYS1pbnB1dC92ZXJiZW5hLWlucHV0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQVUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFjekUsTUFBTSxPQUFPLHFCQUFxQjtJQUN2QixLQUFLLEdBQVcsRUFBRSxDQUFDO0lBQ25CLFdBQVcsR0FBVyxFQUFFLENBQUM7SUFDekIsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUMxQixTQUFTLENBQVU7SUFDbkIsU0FBUyxDQUFVO0lBQ25CLElBQUksR0FBaUUsTUFBTSxDQUFDO0lBQzVFLE9BQU8sR0FBVyxTQUFTLENBQUM7SUFDNUIsTUFBTSxHQUFXLGdCQUFnQixDQUFDO0lBQ2xDLFlBQVksR0FBVyxLQUFLLENBQUM7SUFDN0IsU0FBUyxHQUFXLE1BQU0sQ0FBQztJQUMzQixLQUFLLEdBQVcsRUFBRSxDQUFDO0lBQ25CLGFBQWEsR0FBVyxPQUFPLENBQUM7SUFDaEMsVUFBVSxHQUFXLE9BQU8sQ0FBQztJQUM3QixPQUFPLEdBQVksS0FBSyxDQUFDO0lBQ3pCLEdBQUcsQ0FBVTtJQUNiLEdBQUcsQ0FBVTtJQUViLFVBQVUsR0FBWSxJQUFJLENBQUM7SUFDM0IsZ0JBQWdCLEdBQVksSUFBSSxDQUFDO0lBQ2pDLGlCQUFpQixHQUFXLEtBQUssQ0FBQztJQUNsQyxnQkFB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QUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFFRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBRUcsY0FBYztzQkFBdEIsS0FBSztnQkFHRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBWUksV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBPbkluaXQsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmVyYmVuYS1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi92ZXJiZW5hLWlucHV0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdmVyYmVuYS1pbnB1dC5jb21wb25lbnQuY3NzJ10sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVmVyYmVuYUlucHV0Q29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIFZlcmJlbmFJbnB1dENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQge1xuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIHBsYWNlSG9sZGVyOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgbWluTGVuZ3RoPzogbnVtYmVyO1xuICBASW5wdXQoKSBtYXhMZW5ndGg/OiBudW1iZXI7XG4gIEBJbnB1dCgpIHR5cGU6ICd0ZXh0JyB8ICdpbnRlZ2VyJyB8ICdudW1iZXInIHwgJ2RlY2ltYWwnIHwgJ2VtYWlsJyB8ICdkYXRlJyA9ICd0ZXh0JztcbiAgQElucHV0KCkgYmdDb2xvcjogc3RyaW5nID0gJyNmOWY5ZjknO1xuICBASW5wdXQoKSBib3JkZXI6IHN0cmluZyA9ICcxcHggc29saWQgI2NjYyc7XG4gIEBJbnB1dCgpIGJvcmRlclJhZGl1czogc3RyaW5nID0gJzVweCc7XG4gIEBJbnB1dCgpIHRleHRDb2xvcjogc3RyaW5nID0gJyMzMzMnO1xuICBASW5wdXQoKSB2YWx1ZTogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGxhYmVsUG9zaXRpb246IHN0cmluZyA9ICdzdGFydCc7XG4gIEBJbnB1dCgpIGxhYmVsQ29sb3I6IHN0cmluZyA9ICdibGFjayc7XG4gIEBJbnB1dCgpIGRpc2FibGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgbWluPzogbnVtYmVyO1xuICBASW5wdXQoKSBtYXg/OiBudW1iZXI7XG5cbiAgQElucHV0KCkgc2hvd0JvcmRlcjogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIHNob3dFcnJvck1lc3NhZ2U6IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBlcnJvck1lc3NhZ2VDb2xvcjogc3RyaW5nID0gJ3JlZCc7XG4gIEBJbnB1dCgpIGVycm9yQm9yZGVyQ29sb3I6IHN0cmluZyA9ICdyZWQnO1xuICBASW5wdXQoKSBlcnJvclBvc2l0aW9uOiAnbGVmdCcgfCAncmlnaHQnIHwgJ3RvcCcgfCAnYm90dG9tJyA9ICdib3R0b20nO1xuXG4gIEBJbnB1dCgpIGNhcGl0YWxpemF0aW9uOiAnbm9uZScgfCAndXBwZXJjYXNlJyB8ICdsb3dlcmNhc2UnIHwgJ3NlbnRlbmNlY2FzZScgfCAncGFzY2FsY2FzZScgfCAnY2FtZWxjYXNlJyA9ICdub25lJztcblxuICAvLyBOZXcgcHJvcGVydHkgZm9yIGN1c3RvbSBlcnJvciBtZXNzYWdlc1xuICBASW5wdXQoKSBjdXN0b21FcnJvck1lc3NhZ2VzOiB7XG4gICAgcmVxdWlyZWQ/OiBzdHJpbmc7XG4gICAgbWluTGVuZ3RoPzogc3RyaW5nO1xuICAgIG1heExlbmd0aD86IHN0cmluZztcbiAgICBtaW5WYWx1ZT86IHN0cmluZztcbiAgICBtYXhWYWx1ZT86IHN0cmluZztcbiAgICBpbnRlZ2VyPzogc3RyaW5nO1xuICAgIG51bWJlcj86IHN0cmluZztcbiAgICBkZWNpbWFsPzogc3RyaW5nO1xuICAgIGVtYWlsPzogc3RyaW5nO1xuICB9ID0ge307XG5cbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgZXJyb3JNZXNzYWdlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGlucHV0SWQ6IHN0cmluZyA9ICcnO1xuXG4gIG9uQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fTtcbiAgb25Ub3VjaDogYW55ID0gKCkgPT4ge307XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5pbnB1dElkID0gYHZlcmJlbmEtaW5wdXQtJHtNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKDM2KS5zdWJzdHIoMiwgOSl9YDtcbiAgfVxuXG4gIG9uSW5wdXQoZXZlbnQ6IEV2ZW50KSB7XG4gICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgdGhpcy52YWx1ZSA9IHRhcmdldC52YWx1ZS50cmltKCk7XG4gICAgdGhpcy52YWx1ZSA9IHRoaXMuYXBwbHlDYXBpdGFsaXphdGlvbih0aGlzLnZhbHVlLCB0aGlzLmNhcGl0YWxpemF0aW9uKTtcbiAgICB0aGlzLnZhbGlkYXRlKCk7XG4gICAgY29uc3Qgc2FuaXRpemVkVmFsdWUgPSB0aGlzLnNhbml0aXplVmFsdWUodGhpcy52YWx1ZSk7XG4gICAgdGhpcy5vbkNoYW5nZShzYW5pdGl6ZWRWYWx1ZSk7XG4gICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHNhbml0aXplZFZhbHVlKTtcbiAgfVxuXG4gIGFwcGx5Q2FwaXRhbGl6YXRpb24odmFsdWU6IHN0cmluZywgZm9ybWF0OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHN3aXRjaCAoZm9ybWF0KSB7XG4gICAgICBjYXNlICd1cHBlcmNhc2UnOiByZXR1cm4gdmFsdWUudG9VcHBlckNhc2UoKTtcbiAgICAgIGNhc2UgJ2xvd2VyY2FzZSc6IHJldHVybiB2YWx1ZS50b0xvd2VyQ2FzZSgpO1xuICAgICAgY2FzZSAnc2VudGVuY2VjYXNlJzogcmV0dXJuIHZhbHVlLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgdmFsdWUuc2xpY2UoMSkudG9Mb3dlckNhc2UoKTtcbiAgICAgIGNhc2UgJ3Bhc2NhbGNhc2UnOiByZXR1cm4gdmFsdWUucmVwbGFjZSgvXFx3Ky9nLCAodykgPT4gd1swXS50b1VwcGVyQ2FzZSgpICsgdy5zbGljZSgxKS50b0xvd2VyQ2FzZSgpKTtcbiAgICAgIGNhc2UgJ2NhbWVsY2FzZSc6IHJldHVybiB2YWx1ZS5yZXBsYWNlKC8oPzpeXFx3fFtBLVpdfFxcYlxcd3xcXHMrKS9nLCAobWF0Y2gsIGluZGV4KSA9PlxuICAgICAgICBpbmRleCA9PT0gMCA/IG1hdGNoLnRvTG93ZXJDYXNlKCkgOiBtYXRjaC50b1VwcGVyQ2FzZSgpKS5yZXBsYWNlKC9cXHMrL2csICcnKTtcbiAgICAgIGRlZmF1bHQ6IHJldHVybiB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBzYW5pdGl6ZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmIChbJ251bWJlcicsICdkZWNpbWFsJywgJ2ludGVnZXInXS5pbmNsdWRlcyh0aGlzLnR5cGUpKSB7XG4gICAgICByZXR1cm4gdmFsdWUucmVwbGFjZSgvLC9nLCAnJyk7XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuXG4gIHZhbGlkYXRlKCkge1xuICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJyc7XG5cbiAgICBpZiAodGhpcy5yZXF1aXJlZCAmJiAhdGhpcy52YWx1ZSkge1xuICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmN1c3RvbUVycm9yTWVzc2FnZXMucmVxdWlyZWQgfHwgJ1RoaXMgZmllbGQgaXMgcmVxdWlyZWQuJztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5taW5MZW5ndGggJiYgdGhpcy52YWx1ZS5sZW5ndGggPCB0aGlzLm1pbkxlbmd0aCkge1xuICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmN1c3RvbUVycm9yTWVzc2FnZXMubWluTGVuZ3RoIHx8IGBNaW5pbXVtIGxlbmd0aCBpcyAke3RoaXMubWluTGVuZ3RofS5gO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLm1heExlbmd0aCAmJiB0aGlzLnZhbHVlLmxlbmd0aCA+IHRoaXMubWF4TGVuZ3RoKSB7XG4gICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuY3VzdG9tRXJyb3JNZXNzYWdlcy5tYXhMZW5ndGggfHwgYE1heGltdW0gbGVuZ3RoIGlzICR7dGhpcy5tYXhMZW5ndGh9LmA7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgc2FuaXRpemVkVmFsdWUgPSB0aGlzLnNhbml0aXplVmFsdWUodGhpcy52YWx1ZSk7XG4gICAgY29uc3QgbnVtZXJpY1ZhbHVlID0gcGFyc2VGbG9hdChzYW5pdGl6ZWRWYWx1ZSk7XG5cbiAgICBpZiAoWydpbnRlZ2VyJywgJ251bWJlcicsICdkZWNpbWFsJ10uaW5jbHVkZXModGhpcy50eXBlKSkge1xuICAgICAgaWYgKHRoaXMubWluICE9PSB1bmRlZmluZWQgJiYgbnVtZXJpY1ZhbHVlIDwgdGhpcy5taW4pIHtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmN1c3RvbUVycm9yTWVzc2FnZXMubWluVmFsdWUgfHwgYE1pbmltdW0gdmFsdWUgaXMgJHt0aGlzLm1pbn0uYDtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLm1heCAhPT0gdW5kZWZpbmVkICYmIG51bWVyaWNWYWx1ZSA+IHRoaXMubWF4KSB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5jdXN0b21FcnJvck1lc3NhZ2VzLm1heFZhbHVlIHx8IGBNYXhpbXVtIHZhbHVlIGlzICR7dGhpcy5tYXh9LmA7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy50eXBlID09PSAnaW50ZWdlcicgJiYgIS9eXFxkKyQvLnRlc3QodGhpcy52YWx1ZSkpIHtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5jdXN0b21FcnJvck1lc3NhZ2VzLmludGVnZXIgfHwgJ1BsZWFzZSBlbnRlciBhIHZhbGlkIGludGVnZXIuJztcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy50eXBlID09PSAnbnVtYmVyJyAmJiAhL15cXGQrKFxcLlxcZCspPyQvLnRlc3QodGhpcy52YWx1ZSkpIHtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5jdXN0b21FcnJvck1lc3NhZ2VzLm51bWJlciB8fCAnUGxlYXNlIGVudGVyIGEgdmFsaWQgbnVtYmVyLic7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudHlwZSA9PT0gJ2RlY2ltYWwnICYmICEvXlxcZCsoXFwuXFxkKyk/JC8udGVzdCh0aGlzLnZhbHVlKSkge1xuICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB0aGlzLmN1c3RvbUVycm9yTWVzc2FnZXMuZGVjaW1hbCB8fCAnUGxlYXNlIGVudGVyIGEgdmFsaWQgZGVjaW1hbC4nO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICh0aGlzLnR5cGUgPT09ICdlbWFpbCcgJiYgIS9eW15cXHNAXStAW15cXHNAXStcXC5bXlxcc0BdKyQvLnRlc3QodGhpcy52YWx1ZSkpIHtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5jdXN0b21FcnJvck1lc3NhZ2VzLmVtYWlsIHx8ICdQbGVhc2UgZW50ZXIgYSB2YWxpZCBlbWFpbCBhZGRyZXNzLic7XG4gICAgfVxuICB9XG5cbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbHVlID8gdGhpcy5hcHBseUNhcGl0YWxpemF0aW9uKHZhbHVlLnRyaW0oKSwgdGhpcy5jYXBpdGFsaXphdGlvbikgOiAnJztcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2ggPSBmbjtcbiAgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZSA9IGlzRGlzYWJsZWQ7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJpbnB1dC1jb250YWluZXJcIlxuICAgICBbbmdTdHlsZV09XCJ7XG4gICAgICAnZGlzcGxheSc6ICdmbGV4JyxcbiAgICAgICdmbGV4LWRpcmVjdGlvbic6ICdjb2x1bW4nLFxuXG4gICAgIH1cIlxuPlxuICA8ZGl2XG4gICAgW25nU3R5bGVdPVwie1xuICAgICAgJ2Rpc3BsYXknOiAnZmxleCcsXG4gICAgICAnanVzdGlmeS1jb250ZW50JzogbGFiZWxQb3NpdGlvbixcbiAgICAgICdjb2xvcic6IGxhYmVsQ29sb3IsXG4gICAgICAncGFkZGluZyc6ICcwJ1xuICAgIH1cIlxuICAgIGNsYXNzPVwiaW5wdXQtZmllbGRcIlxuICA+XG4gICAgPGxhYmVsIFtmb3JdPVwibGFiZWxcIj57eyBsYWJlbCB9fTwvbGFiZWw+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJpbnB1dC13cmFwcGVyXCI+XG4gICAgPGlucHV0XG4gICAgICBbaWRdPVwibGFiZWxcIlxuICAgICAgW2F0dHIudHlwZV09XCJ0eXBlXCJcbiAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlSG9sZGVyXCJcbiAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgICBbYXR0ci5taW5sZW5ndGhdPVwibWluTGVuZ3RoPy50b1N0cmluZygpXCJcbiAgICAgIFthdHRyLm1heGxlbmd0aF09XCJtYXhMZW5ndGg/LnRvU3RyaW5nKClcIlxuICAgICAgKGlucHV0KT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlXCJcbiAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICAgJ2JhY2tncm91bmQtY29sb3InOiBiZ0NvbG9yLFxuICAgICAgICAnYm9yZGVyJzogc2hvd0JvcmRlciA/IChlcnJvck1lc3NhZ2UgPyAnMXB4IHNvbGlkICcgKyBlcnJvckJvcmRlckNvbG9yIDogYm9yZGVyKSA6ICdub25lJyxcbiAgICAgICAgJ2JvcmRlci1yYWRpdXMnOiBib3JkZXJSYWRpdXMsXG4gICAgICAgICdjb2xvcic6IHRleHRDb2xvclxuICAgICAgfVwiXG4gICAgICBjbGFzcz1cImlucHV0LWZpZWxkXCJcbiAgICAvPlxuXG4gICAgPCEtLSBDb25kaXRpb25hbCByZWQgZG90IGZvciBlcnJvciB3aGVuIHNob3dFcnJvck1lc3NhZ2UgaXMgZmFsc2UgLS0+XG4gICAgPHZlcmJlbi10b29sdGlwICpuZ0lmPVwiZXJyb3JNZXNzYWdlICYmICFzaG93RXJyb3JNZXNzYWdlXCJcbiAgICAgICAgICAgICAgICAgICAgW3Rvb2x0aXBDb250ZW50XT1cInRvb2x0aXBUZW1wbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIGN1c3RvbUNsYXNzPVwiZXJyb3ItdG9vbHRpcFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImVycm9yLWRvdFwiXG4gICAgICAgICAgIFtuZ1N0eWxlXT1cInsgJ2JhY2tncm91bmQtY29sb3InOiBlcnJvckJvcmRlckNvbG9yIH1cIj5cbiAgICAgIDwvZGl2PlxuICAgIDwvdmVyYmVuLXRvb2x0aXA+XG5cbiAgICA8IS0tIFRvb2x0aXAgdGVtcGxhdGUgZm9yIGVycm9yIG1lc3NhZ2UgLS0+XG4gICAgPG5nLXRlbXBsYXRlICN0b29sdGlwVGVtcGxhdGU+XG4gICAgICB7eyBlcnJvck1lc3NhZ2UgfX1cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPCEtLSBDb25kaXRpb25hbCBlcnJvciBtZXNzYWdlIGRpc3BsYXkgLS0+XG4gICAgPHNwYW4gKm5nSWY9XCJlcnJvck1lc3NhZ2UgJiYgc2hvd0Vycm9yTWVzc2FnZVwiXG4gICAgICAgICAgW25nU3R5bGVdPVwieyAnY29sb3InOiBlcnJvck1lc3NhZ2VDb2xvciB9XCJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7J2Vycm9yLW1lc3NhZ2UnOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICdlcnJvci10b3AnOiBlcnJvclBvc2l0aW9uID09PSAndG9wJyxcbiAgICAgICAgICAgICAgICAgICAgICAnZXJyb3ItYm90dG9tJzogZXJyb3JQb3NpdGlvbiA9PT0gJ2JvdHRvbScsXG4gICAgICAgICAgICAgICAgICAgICAgJ2Vycm9yLWxlZnQnOiBlcnJvclBvc2l0aW9uID09PSAnbGVmdCcsXG4gICAgICAgICAgICAgICAgICAgICAgJ2Vycm9yLXJpZ2h0JzogZXJyb3JQb3NpdGlvbiA9PT0gJ3JpZ2h0J31cIj5cbiAgICAgIHt7IGVycm9yTWVzc2FnZSB9fVxuICAgIDwvc3Bhbj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { FormsModule } from '@angular/forms';
|
|
3
|
+
import { CommonModule } from '@angular/common';
|
|
4
|
+
import { TooltipModule } from '../components/tooltip/tooltip.module';
|
|
5
|
+
import { VerbenaInputComponent } from './verbena-input.component';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class VerbenaInputModule {
|
|
8
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: VerbenaInputModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.5", ngImport: i0, type: VerbenaInputModule, declarations: [VerbenaInputComponent], imports: [CommonModule, FormsModule, TooltipModule], exports: [VerbenaInputComponent] });
|
|
10
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: VerbenaInputModule, imports: [CommonModule, FormsModule, TooltipModule] });
|
|
11
|
+
}
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: VerbenaInputModule, decorators: [{
|
|
13
|
+
type: NgModule,
|
|
14
|
+
args: [{
|
|
15
|
+
declarations: [VerbenaInputComponent],
|
|
16
|
+
imports: [CommonModule, FormsModule, TooltipModule],
|
|
17
|
+
exports: [VerbenaInputComponent],
|
|
18
|
+
}]
|
|
19
|
+
}] });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyYmVuYS1pbnB1dC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9WZXJiZW5hLWlucHV0L3ZlcmJlbmEtaW5wdXQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDckUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBT2xFLE1BQU0sT0FBTyxrQkFBa0I7dUdBQWxCLGtCQUFrQjt3R0FBbEIsa0JBQWtCLGlCQUpkLHFCQUFxQixhQUMxQixZQUFZLEVBQUUsV0FBVyxFQUFFLGFBQWEsYUFDeEMscUJBQXFCO3dHQUVwQixrQkFBa0IsWUFIbkIsWUFBWSxFQUFFLFdBQVcsRUFBRSxhQUFhOzsyRkFHdkMsa0JBQWtCO2tCQUw5QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLHFCQUFxQixDQUFDO29CQUNyQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsV0FBVyxFQUFFLGFBQWEsQ0FBQztvQkFDbkQsT0FBTyxFQUFFLENBQUMscUJBQXFCLENBQUM7aUJBQ2pDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICcuLi9jb21wb25lbnRzL3Rvb2x0aXAvdG9vbHRpcC5tb2R1bGUnO1xuaW1wb3J0IHsgVmVyYmVuYUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi92ZXJiZW5hLWlucHV0LmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1ZlcmJlbmFJbnB1dENvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlLCBUb29sdGlwTW9kdWxlXSxcbiAgZXhwb3J0czogW1ZlcmJlbmFJbnB1dENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFZlcmJlbmFJbnB1dE1vZHVsZSB7fVxuIl19
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class TemplateDirective {
|
|
4
|
+
template;
|
|
5
|
+
vTemplate; // The name of the template
|
|
6
|
+
constructor(template) {
|
|
7
|
+
this.template = template;
|
|
8
|
+
}
|
|
9
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: TemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
10
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.5", type: TemplateDirective, selector: "[vTemplate]", inputs: { vTemplate: "vTemplate" }, ngImport: i0 });
|
|
11
|
+
}
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: TemplateDirective, decorators: [{
|
|
13
|
+
type: Directive,
|
|
14
|
+
args: [{
|
|
15
|
+
selector: '[vTemplate]',
|
|
16
|
+
}]
|
|
17
|
+
}], ctorParameters: () => [{ type: i0.TemplateRef }], propDecorators: { vTemplate: [{
|
|
18
|
+
type: Input
|
|
19
|
+
}] } });
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGVtcGxhdGVEaXJlY3RpdmUuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmVyYmVuLW5nLXVpL3NyYy9saWIvY29tcG9uZW50cy9UZW1wbGF0ZURpcmVjdGl2ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWUsTUFBTSxlQUFlLENBQUM7O0FBSzlELE1BQU0sT0FBTyxpQkFBaUI7SUFHVDtJQUZWLFNBQVMsQ0FBVSxDQUFDLDJCQUEyQjtJQUV4RCxZQUFtQixRQUEwQjtRQUExQixhQUFRLEdBQVIsUUFBUSxDQUFrQjtJQUFHLENBQUM7dUdBSHRDLGlCQUFpQjsyRkFBakIsaUJBQWlCOzsyRkFBakIsaUJBQWlCO2tCQUg3QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO2lCQUN4QjtnRkFFVSxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3ZUZW1wbGF0ZV0nLFxufSlcbmV4cG9ydCBjbGFzcyBUZW1wbGF0ZURpcmVjdGl2ZSB7XG4gIEBJbnB1dCgpIHZUZW1wbGF0ZSE6IHN0cmluZzsgLy8gVGhlIG5hbWUgb2YgdGhlIHRlbXBsYXRlXG5cbiAgY29uc3RydWN0b3IocHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+KSB7fVxufVxuIl19
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { Component, ContentChild, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
export class CardComponent {
|
|
5
|
+
hasHeader = false;
|
|
6
|
+
hasFooter = false;
|
|
7
|
+
hasBody = false;
|
|
8
|
+
pd = '10px';
|
|
9
|
+
mg = '0px';
|
|
10
|
+
height;
|
|
11
|
+
width;
|
|
12
|
+
textColor;
|
|
13
|
+
bgColor;
|
|
14
|
+
border;
|
|
15
|
+
borderRadius;
|
|
16
|
+
disabled = false;
|
|
17
|
+
aspectRatio;
|
|
18
|
+
cardHeader;
|
|
19
|
+
cardBody;
|
|
20
|
+
cardFooter;
|
|
21
|
+
ngAfterContentInit() {
|
|
22
|
+
this.hasHeader = !this.cardHeader;
|
|
23
|
+
this.hasBody = !this.cardBody;
|
|
24
|
+
this.hasFooter = !this.cardFooter;
|
|
25
|
+
}
|
|
26
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
27
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: CardComponent, selector: "verben-card", inputs: { pd: "pd", mg: "mg", height: "height", width: "width", textColor: "textColor", bgColor: "bgColor", border: "border", borderRadius: "borderRadius", disabled: "disabled", aspectRatio: "aspectRatio" }, queries: [{ propertyName: "cardHeader", first: true, predicate: ["card-header"], descendants: true }, { propertyName: "cardBody", first: true, predicate: ["card-body"], descendants: true }, { propertyName: "cardFooter", first: true, predicate: ["card-footer"], descendants: true }], ngImport: i0, template: " <div class=\"card\"\n [style.background-color]=\"bgColor\"\n [style.margin]=\"mg\"\n [style.border]=\"border\"\n [style.border-radius]=\"borderRadius\"\n [style.color]=\"textColor\"\n [style.width]=\"width\"\n [style.height]=\"height\"\n [ngClass]=\"disabled?'disable':''\"\n [style.aspect-ratio]=\"aspectRatio\"\n [style.padding]=\"pd\"\n >\n <div class=\"card-header\" *ngIf=\"hasHeader\">\n <ng-content select=\"[card-header]\"></ng-content>\n </div>\n <div class=\"card-body\" *ngIf=\"hasBody\">\n <ng-content select=\"[card-body]\"></ng-content>\n </div>\n <div class=\"card-footer\" *ngIf=\"hasFooter\">\n <ng-content select=\"[card-footer]\"></ng-content>\n </div>\n </div>\n ", styles: [".card{border:1px solid #ddd;border-radius:4px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.card-header{background-color:#f8f9fa;padding:10px 15px;border-bottom:1px solid #ddd}.card-body{padding:15px}.card-footer{background-color:#f8f9fa;padding:10px 15px;border-top:1px solid #ddd}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
28
|
+
}
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CardComponent, decorators: [{
|
|
30
|
+
type: Component,
|
|
31
|
+
args: [{ selector: 'verben-card', template: " <div class=\"card\"\n [style.background-color]=\"bgColor\"\n [style.margin]=\"mg\"\n [style.border]=\"border\"\n [style.border-radius]=\"borderRadius\"\n [style.color]=\"textColor\"\n [style.width]=\"width\"\n [style.height]=\"height\"\n [ngClass]=\"disabled?'disable':''\"\n [style.aspect-ratio]=\"aspectRatio\"\n [style.padding]=\"pd\"\n >\n <div class=\"card-header\" *ngIf=\"hasHeader\">\n <ng-content select=\"[card-header]\"></ng-content>\n </div>\n <div class=\"card-body\" *ngIf=\"hasBody\">\n <ng-content select=\"[card-body]\"></ng-content>\n </div>\n <div class=\"card-footer\" *ngIf=\"hasFooter\">\n <ng-content select=\"[card-footer]\"></ng-content>\n </div>\n </div>\n ", styles: [".card{border:1px solid #ddd;border-radius:4px;overflow:hidden;box-shadow:0 2px 4px #0000001a}.card-header{background-color:#f8f9fa;padding:10px 15px;border-bottom:1px solid #ddd}.card-body{padding:15px}.card-footer{background-color:#f8f9fa;padding:10px 15px;border-top:1px solid #ddd}\n"] }]
|
|
32
|
+
}], propDecorators: { pd: [{
|
|
33
|
+
type: Input
|
|
34
|
+
}], mg: [{
|
|
35
|
+
type: Input
|
|
36
|
+
}], height: [{
|
|
37
|
+
type: Input
|
|
38
|
+
}], width: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}], textColor: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], bgColor: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}], border: [{
|
|
45
|
+
type: Input
|
|
46
|
+
}], borderRadius: [{
|
|
47
|
+
type: Input
|
|
48
|
+
}], disabled: [{
|
|
49
|
+
type: Input
|
|
50
|
+
}], aspectRatio: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}], cardHeader: [{
|
|
53
|
+
type: ContentChild,
|
|
54
|
+
args: ['card-header', { static: false }]
|
|
55
|
+
}], cardBody: [{
|
|
56
|
+
type: ContentChild,
|
|
57
|
+
args: ['card-body', { static: false }]
|
|
58
|
+
}], cardFooter: [{
|
|
59
|
+
type: ContentChild,
|
|
60
|
+
args: ['card-footer', { static: false }]
|
|
61
|
+
}] } });
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2NhcmQvY2FyZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2NhcmQvY2FyZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBZ0MsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFRN0YsTUFBTSxPQUFPLGFBQWE7SUFDeEIsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUNsQixTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ2xCLE9BQU8sR0FBRyxLQUFLLENBQUM7SUFDUCxFQUFFLEdBQUcsTUFBTSxDQUFDO0lBQ1osRUFBRSxHQUFHLEtBQUssQ0FBQztJQUNYLE1BQU0sQ0FBVTtJQUNoQixLQUFLLENBQVU7SUFDZixTQUFTLENBQVU7SUFDbkIsT0FBTyxDQUFVO0lBQ2pCLE1BQU0sQ0FBVTtJQUNoQixZQUFZLENBQVU7SUFDdEIsUUFBUSxHQUFTLEtBQUssQ0FBRTtJQUN4QixXQUFXLENBQVU7SUFDa0IsVUFBVSxDQUF5QjtJQUNyQyxRQUFRLENBQXlCO0lBQy9CLFVBQVUsQ0FBeUI7SUFFbkYsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQ2xDLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3BDLENBQUM7dUdBdEJVLGFBQWE7MkZBQWIsYUFBYSw4aEJDVDFCLDZ0QkFzQkU7OzJGRGJXLGFBQWE7a0JBTnpCLFNBQVM7K0JBQ0UsYUFBYTs4QkFTZCxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csRUFBRTtzQkFBVixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUMwQyxVQUFVO3NCQUF6RCxZQUFZO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ0EsUUFBUTtzQkFBckQsWUFBWTt1QkFBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQUNJLFVBQVU7c0JBQXpELFlBQVk7dUJBQUMsYUFBYSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgRWxlbWVudFJlZiwgQWZ0ZXJDb250ZW50SW5pdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmVyYmVuLWNhcmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NhcmQuY29tcG9uZW50LmNzcyddXG59KVxuXG5leHBvcnQgY2xhc3MgQ2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudEluaXQge1xuICBoYXNIZWFkZXIgPSBmYWxzZTtcbiAgaGFzRm9vdGVyID0gZmFsc2U7XG4gIGhhc0JvZHkgPSBmYWxzZTtcbiAgQElucHV0KCkgcGQgPSAnMTBweCc7XG4gIEBJbnB1dCgpIG1nID0gJzBweCc7XG4gIEBJbnB1dCgpIGhlaWdodD86c3RyaW5nIDtcbiAgQElucHV0KCkgd2lkdGg/OnN0cmluZyA7XG4gIEBJbnB1dCgpIHRleHRDb2xvcj86c3RyaW5nIDtcbiAgQElucHV0KCkgYmdDb2xvcj86c3RyaW5nIDtcbiAgQElucHV0KCkgYm9yZGVyPzpzdHJpbmcgO1xuICBASW5wdXQoKSBib3JkZXJSYWRpdXM/OnN0cmluZyA7XG4gIEBJbnB1dCgpIGRpc2FibGVkOmJvb2xlYW49ZmFsc2UgO1xuICBASW5wdXQoKSBhc3BlY3RSYXRpbz86bnVtYmVyIDtcbiAgQENvbnRlbnRDaGlsZCgnY2FyZC1oZWFkZXInLCB7IHN0YXRpYzogZmFsc2UgfSkgY2FyZEhlYWRlcjogRWxlbWVudFJlZiB8IHVuZGVmaW5lZDtcbiAgQENvbnRlbnRDaGlsZCgnY2FyZC1ib2R5JywgeyBzdGF0aWM6IGZhbHNlIH0pIGNhcmRCb2R5OiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xuICBAQ29udGVudENoaWxkKCdjYXJkLWZvb3RlcicsIHsgc3RhdGljOiBmYWxzZSB9KSBjYXJkRm9vdGVyOiBFbGVtZW50UmVmIHwgdW5kZWZpbmVkO1xuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICB0aGlzLmhhc0hlYWRlciA9ICF0aGlzLmNhcmRIZWFkZXI7XG4gICAgdGhpcy5oYXNCb2R5ID0gIXRoaXMuY2FyZEJvZHk7XG4gICAgdGhpcy5oYXNGb290ZXIgPSAhdGhpcy5jYXJkRm9vdGVyO1xuICB9XG59IiwiICA8ZGl2IGNsYXNzPVwiY2FyZFwiXG4gIFtzdHlsZS5iYWNrZ3JvdW5kLWNvbG9yXT1cImJnQ29sb3JcIlxuICBbc3R5bGUubWFyZ2luXT1cIm1nXCJcbiAgW3N0eWxlLmJvcmRlcl09XCJib3JkZXJcIlxuICBbc3R5bGUuYm9yZGVyLXJhZGl1c109XCJib3JkZXJSYWRpdXNcIlxuICBbc3R5bGUuY29sb3JdPVwidGV4dENvbG9yXCJcbiAgW3N0eWxlLndpZHRoXT1cIndpZHRoXCJcbiAgW3N0eWxlLmhlaWdodF09XCJoZWlnaHRcIlxuICBbbmdDbGFzc109XCJkaXNhYmxlZD8nZGlzYWJsZSc6JydcIlxuICBbc3R5bGUuYXNwZWN0LXJhdGlvXT1cImFzcGVjdFJhdGlvXCJcbiAgW3N0eWxlLnBhZGRpbmddPVwicGRcIlxuICA+XG4gICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyXCIgKm5nSWY9XCJoYXNIZWFkZXJcIj5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltjYXJkLWhlYWRlcl1cIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keVwiICpuZ0lmPVwiaGFzQm9keVwiPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2NhcmQtYm9keV1cIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNhcmQtZm9vdGVyXCIgKm5nSWY9XCJoYXNGb290ZXJcIj5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltjYXJkLWZvb3Rlcl1cIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICAiXX0=
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { CardComponent } from './card.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class CardModule {
|
|
6
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CardModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
7
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.5", ngImport: i0, type: CardModule, declarations: [CardComponent], imports: [CommonModule], exports: [CardComponent] });
|
|
8
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CardModule, imports: [CommonModule] });
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CardModule, decorators: [{
|
|
11
|
+
type: NgModule,
|
|
12
|
+
args: [{
|
|
13
|
+
declarations: [CardComponent],
|
|
14
|
+
imports: [CommonModule],
|
|
15
|
+
exports: [CardComponent]
|
|
16
|
+
}]
|
|
17
|
+
}] });
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2NhcmQvY2FyZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQU9qRCxNQUFNLE9BQU8sVUFBVTt1R0FBVixVQUFVO3dHQUFWLFVBQVUsaUJBSlAsYUFBYSxhQUNoQixZQUFZLGFBQ2IsYUFBYTt3R0FFWixVQUFVLFlBSFYsWUFBWTs7MkZBR1osVUFBVTtrQkFMdEIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUMsQ0FBQyxhQUFhLENBQUM7b0JBQzVCLE9BQU8sRUFBRSxDQUFFLFlBQVksQ0FBQztvQkFDeEIsT0FBTyxFQUFFLENBQUMsYUFBYSxDQUFDO2lCQUN6QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vY2FyZC5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6W0NhcmRDb21wb25lbnRdLFxuICBpbXBvcnRzOiBbIENvbW1vbk1vZHVsZV0sXG4gIGV4cG9ydHM6IFtDYXJkQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBDYXJkTW9kdWxlIHt9XG4iXX0=
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class CardDataViewFooterComponent {
|
|
4
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CardDataViewFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: CardDataViewFooterComponent, selector: "verben-card-data-view-footer", ngImport: i0, template: " <ng-content></ng-content> \n", styles: [":host{padding:0 15px}\n"] });
|
|
6
|
+
}
|
|
7
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CardDataViewFooterComponent, decorators: [{
|
|
8
|
+
type: Component,
|
|
9
|
+
args: [{ selector: 'verben-card-data-view-footer', template: " <ng-content></ng-content> \n", styles: [":host{padding:0 15px}\n"] }]
|
|
10
|
+
}] });
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1kYXRhLXZpZXctZm9vdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZlcmJlbi1uZy11aS9zcmMvbGliL2NvbXBvbmVudHMvY2FyZC1kYXRhLXZpZXcvY2FyZC1kYXRhLXZpZXctZm9vdGVyL2NhcmQtZGF0YS12aWV3LWZvb3Rlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2NhcmQtZGF0YS12aWV3L2NhcmQtZGF0YS12aWV3LWZvb3Rlci9jYXJkLWRhdGEtdmlldy1mb290ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFPMUMsTUFBTSxPQUFPLDJCQUEyQjt1R0FBM0IsMkJBQTJCOzJGQUEzQiwyQkFBMkIsb0VDUHhDLGlDQUNBOzsyRkRNYSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0UsOEJBQThCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZlcmJlbi1jYXJkLWRhdGEtdmlldy1mb290ZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZC1kYXRhLXZpZXctZm9vdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2NhcmQtZGF0YS12aWV3LWZvb3Rlci5jb21wb25lbnQuY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBDYXJkRGF0YVZpZXdGb290ZXJDb21wb25lbnQge1xuXG59XG4iLCIgIDxuZy1jb250ZW50PjwvbmctY29udGVudD4gIFxuIl19
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class CardDataViewHeaderComponent {
|
|
4
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CardDataViewHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: CardDataViewHeaderComponent, selector: "verben-card-data-view-header", ngImport: i0, template: " <ng-content></ng-content> \n", styles: [":host{padding:15px;position:absolute;top:0;width:100%}\n"] });
|
|
6
|
+
}
|
|
7
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CardDataViewHeaderComponent, decorators: [{
|
|
8
|
+
type: Component,
|
|
9
|
+
args: [{ selector: 'verben-card-data-view-header', template: " <ng-content></ng-content> \n", styles: [":host{padding:15px;position:absolute;top:0;width:100%}\n"] }]
|
|
10
|
+
}] });
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1kYXRhLXZpZXctaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3ZlcmJlbi1uZy11aS9zcmMvbGliL2NvbXBvbmVudHMvY2FyZC1kYXRhLXZpZXcvY2FyZC1kYXRhLXZpZXctaGVhZGVyL2NhcmQtZGF0YS12aWV3LWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2NhcmQtZGF0YS12aWV3L2NhcmQtZGF0YS12aWV3LWhlYWRlci9jYXJkLWRhdGEtdmlldy1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFPMUMsTUFBTSxPQUFPLDJCQUEyQjt1R0FBM0IsMkJBQTJCOzJGQUEzQiwyQkFBMkIsb0VDUHhDLGlDQUNBOzsyRkRNYSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0UsOEJBQThCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZlcmJlbi1jYXJkLWRhdGEtdmlldy1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZC1kYXRhLXZpZXctaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2NhcmQtZGF0YS12aWV3LWhlYWRlci5jb21wb25lbnQuY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBDYXJkRGF0YVZpZXdIZWFkZXJDb21wb25lbnQge1xuXG59XG4iLCIgIDxuZy1jb250ZW50PjwvbmctY29udGVudD4gIFxuIl19
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { Component, ContentChild, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "../svg/svg.component";
|
|
5
|
+
export class CardDataViewComponent {
|
|
6
|
+
pd = '10px';
|
|
7
|
+
mg = '0px';
|
|
8
|
+
lHeight = "100%";
|
|
9
|
+
rHeight = "100%";
|
|
10
|
+
rWidth = "70%";
|
|
11
|
+
lWidth = "30%";
|
|
12
|
+
textColor;
|
|
13
|
+
lbgColor;
|
|
14
|
+
rbgColor;
|
|
15
|
+
border;
|
|
16
|
+
display;
|
|
17
|
+
borderRadius = "12px";
|
|
18
|
+
activeCss;
|
|
19
|
+
inActiveCss;
|
|
20
|
+
displayAsRow = true;
|
|
21
|
+
cardDataList = [];
|
|
22
|
+
dataId;
|
|
23
|
+
totalRecords = 0;
|
|
24
|
+
footer = false;
|
|
25
|
+
card;
|
|
26
|
+
// @ContentChild('content') content!: TemplateRef<any>;
|
|
27
|
+
currentItem = {};
|
|
28
|
+
hasCurrentItem() {
|
|
29
|
+
return !!Object.keys(this.currentItem).length;
|
|
30
|
+
}
|
|
31
|
+
clearData() {
|
|
32
|
+
this.currentItem = {};
|
|
33
|
+
this.cardDataList.forEach(_ => {
|
|
34
|
+
_.selected = false;
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
onItemClick(item) {
|
|
38
|
+
item.selected = true;
|
|
39
|
+
this.cardDataList.forEach(element => {
|
|
40
|
+
if (element.data[this.dataId] == item.data[this.dataId]) {
|
|
41
|
+
this.currentItem = item;
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
element.selected = false;
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
return this.currentItem;
|
|
48
|
+
}
|
|
49
|
+
loadMoreClick = new EventEmitter();
|
|
50
|
+
onLoadMoreClick() {
|
|
51
|
+
this.loadMoreClick.emit();
|
|
52
|
+
}
|
|
53
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CardDataViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
54
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: CardDataViewComponent, selector: "verben-card-data-view", inputs: { pd: "pd", mg: "mg", lHeight: "lHeight", rHeight: "rHeight", rWidth: "rWidth", lWidth: "lWidth", textColor: "textColor", lbgColor: "lbgColor", rbgColor: "rbgColor", border: "border", display: "display", borderRadius: "borderRadius", activeCss: "activeCss", inActiveCss: "inActiveCss", displayAsRow: "displayAsRow", cardDataList: "cardDataList", dataId: "dataId", totalRecords: "totalRecords", footer: "footer", onItemClick: "onItemClick" }, outputs: { loadMoreClick: "loadMoreClick" }, queries: [{ propertyName: "card", first: true, predicate: ["card"], descendants: true }], ngImport: i0, template: "\n<div class=\"container flex-col\" [style.display]=\"'flex'\" [style.margin]=\"mg\" > \n <!-- Header -->\n <ng-container ngProjectAs=\"verben-card-data-view-header\">\n <ng-content select='verben-card-data-view-header'></ng-content>\n </ng-container>\n\n <div [style.padding]=\"pd\" [ngClass]=\"!hasCurrentItem()?'master-only-container':'master-detail-container'\" >\n <!-- Card and Footer -->\n <div [style.borderRadius]=\"borderRadius\" [style.backgroundColor]=\"lbgColor\" class=\"flex-col \">\n <!-- Card section -->\n <ng-container ngProjectAs=\"verben-left-card-data-view\">\n <ng-content select='verben-left-card-data-view'></ng-content>\n </ng-container>\n\n <!-- Footer-->\n <ng-container ngProjectAs=\"verben-card-data-view-footer\">\n <ng-content select='verben-card-data-view-footer'></ng-content>\n </ng-container>\n </div>\n <!-- Detail Section-->\n <div [style.backgroundColor]=\"rbgColor\" *ngIf=\"hasCurrentItem()\" [style.borderRadius]=\"borderRadius\">\n <verben-svg (click)=\"clearData()\" class=\"cursor-pointer toRight\" icon=\"close\" [width]=\"20\" [height]=\"20\" color=\"black\"></verben-svg> \n <ng-container ngProjectAs=\"verben-right-card-data-view\">\n <ng-content select='verben-right-card-data-view'></ng-content>\n </ng-container>\n </div>\n </div>\n</div>", styles: [".container{gap:10px;min-height:100vh}:host{border-radius:12px}.master-detail-container{display:grid;grid-template-columns:30% 70%;gap:15px;justify-content:center;margin-top:20px}.master-only-container{display:grid;grid-template-columns:100%;justify-content:center;margin-top:20px}.paginator-text{margin-left:auto;margin-right:auto}.cursor-pointer{cursor:pointer}.toRight{float:right;margin:5px 10px 0 0}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.SvgComponent, selector: "verben-svg", inputs: ["icon", "width", "height", "fill", "stroke"] }] });
|
|
55
|
+
}
|
|
56
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CardDataViewComponent, decorators: [{
|
|
57
|
+
type: Component,
|
|
58
|
+
args: [{ selector: 'verben-card-data-view', template: "\n<div class=\"container flex-col\" [style.display]=\"'flex'\" [style.margin]=\"mg\" > \n <!-- Header -->\n <ng-container ngProjectAs=\"verben-card-data-view-header\">\n <ng-content select='verben-card-data-view-header'></ng-content>\n </ng-container>\n\n <div [style.padding]=\"pd\" [ngClass]=\"!hasCurrentItem()?'master-only-container':'master-detail-container'\" >\n <!-- Card and Footer -->\n <div [style.borderRadius]=\"borderRadius\" [style.backgroundColor]=\"lbgColor\" class=\"flex-col \">\n <!-- Card section -->\n <ng-container ngProjectAs=\"verben-left-card-data-view\">\n <ng-content select='verben-left-card-data-view'></ng-content>\n </ng-container>\n\n <!-- Footer-->\n <ng-container ngProjectAs=\"verben-card-data-view-footer\">\n <ng-content select='verben-card-data-view-footer'></ng-content>\n </ng-container>\n </div>\n <!-- Detail Section-->\n <div [style.backgroundColor]=\"rbgColor\" *ngIf=\"hasCurrentItem()\" [style.borderRadius]=\"borderRadius\">\n <verben-svg (click)=\"clearData()\" class=\"cursor-pointer toRight\" icon=\"close\" [width]=\"20\" [height]=\"20\" color=\"black\"></verben-svg> \n <ng-container ngProjectAs=\"verben-right-card-data-view\">\n <ng-content select='verben-right-card-data-view'></ng-content>\n </ng-container>\n </div>\n </div>\n</div>", styles: [".container{gap:10px;min-height:100vh}:host{border-radius:12px}.master-detail-container{display:grid;grid-template-columns:30% 70%;gap:15px;justify-content:center;margin-top:20px}.master-only-container{display:grid;grid-template-columns:100%;justify-content:center;margin-top:20px}.paginator-text{margin-left:auto;margin-right:auto}.cursor-pointer{cursor:pointer}.toRight{float:right;margin:5px 10px 0 0}\n"] }]
|
|
59
|
+
}], propDecorators: { pd: [{
|
|
60
|
+
type: Input
|
|
61
|
+
}], mg: [{
|
|
62
|
+
type: Input
|
|
63
|
+
}], lHeight: [{
|
|
64
|
+
type: Input
|
|
65
|
+
}], rHeight: [{
|
|
66
|
+
type: Input
|
|
67
|
+
}], rWidth: [{
|
|
68
|
+
type: Input
|
|
69
|
+
}], lWidth: [{
|
|
70
|
+
type: Input
|
|
71
|
+
}], textColor: [{
|
|
72
|
+
type: Input
|
|
73
|
+
}], lbgColor: [{
|
|
74
|
+
type: Input
|
|
75
|
+
}], rbgColor: [{
|
|
76
|
+
type: Input
|
|
77
|
+
}], border: [{
|
|
78
|
+
type: Input
|
|
79
|
+
}], display: [{
|
|
80
|
+
type: Input
|
|
81
|
+
}], borderRadius: [{
|
|
82
|
+
type: Input
|
|
83
|
+
}], activeCss: [{
|
|
84
|
+
type: Input
|
|
85
|
+
}], inActiveCss: [{
|
|
86
|
+
type: Input
|
|
87
|
+
}], displayAsRow: [{
|
|
88
|
+
type: Input
|
|
89
|
+
}], cardDataList: [{
|
|
90
|
+
type: Input
|
|
91
|
+
}], dataId: [{
|
|
92
|
+
type: Input
|
|
93
|
+
}], totalRecords: [{
|
|
94
|
+
type: Input
|
|
95
|
+
}], footer: [{
|
|
96
|
+
type: Input
|
|
97
|
+
}], card: [{
|
|
98
|
+
type: ContentChild,
|
|
99
|
+
args: ['card']
|
|
100
|
+
}], onItemClick: [{
|
|
101
|
+
type: Input
|
|
102
|
+
}], loadMoreClick: [{
|
|
103
|
+
type: Output
|
|
104
|
+
}] } });
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1kYXRhLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmVyYmVuLW5nLXVpL3NyYy9saWIvY29tcG9uZW50cy9jYXJkLWRhdGEtdmlldy9jYXJkLWRhdGEtdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92ZXJiZW4tbmctdWkvc3JjL2xpYi9jb21wb25lbnRzL2NhcmQtZGF0YS12aWV3L2NhcmQtZGF0YS12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0IsU0FBUyxFQUFFLFlBQVksRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBMEIsTUFBTSxlQUFlLENBQUM7Ozs7QUFVM0ksTUFBTSxPQUFPLHFCQUFxQjtJQUN2QixFQUFFLEdBQUcsTUFBTSxDQUFDO0lBQ1osRUFBRSxHQUFHLEtBQUssQ0FBQztJQUNYLE9BQU8sR0FBUyxNQUFNLENBQUM7SUFDdkIsT0FBTyxHQUFTLE1BQU0sQ0FBQztJQUN2QixNQUFNLEdBQVMsS0FBSyxDQUFDO0lBQ3JCLE1BQU0sR0FBUyxLQUFLLENBQUM7SUFDckIsU0FBUyxDQUFVO0lBQ25CLFFBQVEsQ0FBVTtJQUNsQixRQUFRLENBQVU7SUFDbEIsTUFBTSxDQUFVO0lBQ2hCLE9BQU8sQ0FBVTtJQUNqQixZQUFZLEdBQVMsTUFBTSxDQUFDO0lBQzVCLFNBQVMsQ0FBVTtJQUNuQixXQUFXLENBQVU7SUFDckIsWUFBWSxHQUFXLElBQUksQ0FBQztJQUM1QixZQUFZLEdBQVksRUFBRSxDQUFDO0lBQzNCLE1BQU0sQ0FBUztJQUNmLFlBQVksR0FBUSxDQUFDLENBQUM7SUFDdEIsTUFBTSxHQUFTLEtBQUssQ0FBQztJQUdSLElBQUksQ0FBb0I7SUFDOUMsdURBQXVEO0lBQ3ZELFdBQVcsR0FBSyxFQUFFLENBQUM7SUFDbkIsY0FBYztRQUVaLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU0sQ0FBQTtJQUMvQyxDQUFDO0lBQ0QsU0FBUztRQUVQLElBQUksQ0FBQyxXQUFXLEdBQUMsRUFBYyxDQUFBO1FBQy9CLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQSxFQUFFO1lBQzNCLENBQUMsQ0FBQyxRQUFRLEdBQUMsS0FBSyxDQUFDO1FBQ25CLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUNPLFdBQVcsQ0FBQyxJQUFhO1FBQ2hDLElBQUksQ0FBQyxRQUFRLEdBQUUsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ2xDLElBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQ3BELENBQUM7Z0JBQ0MsSUFBSSxDQUFDLFdBQVcsR0FBRSxJQUFJLENBQUM7WUFDekIsQ0FBQztpQkFFRCxDQUFDO2dCQUNDLE9BQU8sQ0FBQyxRQUFRLEdBQUMsS0FBSyxDQUFDO1lBQ3pCLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQTtJQUN6QixDQUFDO0lBQ1MsYUFBYSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFDN0MsZUFBZTtRQUViLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUIsQ0FBQzt1R0F0RFUscUJBQXFCOzJGQUFyQixxQkFBcUIsc29CQ1ZsQywrN0NBNEJNOzsyRkRsQk8scUJBQXFCO2tCQU5qQyxTQUFTOytCQUNFLHVCQUF1Qjs4QkFNeEIsRUFBRTtzQkFBVixLQUFLO2dCQUNHLEVBQUU7c0JBQVYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUdnQixJQUFJO3NCQUF6QixZQUFZO3VCQUFDLE1BQU07Z0JBY1gsV0FBVztzQkFBbkIsS0FBSztnQkFjSSxhQUFhO3NCQUF0QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2FyZERhdGEgfSBmcm9tICcuL2NhcmQtZGF0YSc7XG5pbXBvcnQgeyBUaXRsZSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2ZXJiZW4tY2FyZC1kYXRhLXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2FyZC1kYXRhLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vY2FyZC1kYXRhLXZpZXcuY29tcG9uZW50LmNzcydcbn0pXG5cbmV4cG9ydCBjbGFzcyBDYXJkRGF0YVZpZXdDb21wb25lbnQgIHtcbiAgQElucHV0KCkgcGQgPSAnMTBweCc7XG4gIEBJbnB1dCgpIG1nID0gJzBweCc7XG4gIEBJbnB1dCgpIGxIZWlnaHQ/OnN0cmluZz1cIjEwMCVcIjtcbiAgQElucHV0KCkgckhlaWdodD86c3RyaW5nPVwiMTAwJVwiO1xuICBASW5wdXQoKSByV2lkdGg/OnN0cmluZz1cIjcwJVwiO1xuICBASW5wdXQoKSBsV2lkdGg/OnN0cmluZz1cIjMwJVwiO1xuICBASW5wdXQoKSB0ZXh0Q29sb3I/OnN0cmluZyA7XG4gIEBJbnB1dCgpIGxiZ0NvbG9yPzpzdHJpbmcgO1xuICBASW5wdXQoKSByYmdDb2xvcj86c3RyaW5nIDtcbiAgQElucHV0KCkgYm9yZGVyPzpzdHJpbmcgO1xuICBASW5wdXQoKSBkaXNwbGF5PzpzdHJpbmcgO1xuICBASW5wdXQoKSBib3JkZXJSYWRpdXM/OnN0cmluZz1cIjEycHhcIjtcbiAgQElucHV0KCkgYWN0aXZlQ3NzPzpzdHJpbmcgO1xuICBASW5wdXQoKSBpbkFjdGl2ZUNzcz86c3RyaW5nIDtcbiAgQElucHV0KCkgZGlzcGxheUFzUm93Pzpib29sZWFuID10cnVlO1xuICBASW5wdXQoKSBjYXJkRGF0YUxpc3Q6Q2FyZERhdGFbXT1bXTtcbiAgQElucHV0KCkgZGF0YUlkITpzdHJpbmc7XG4gIEBJbnB1dCgpIHRvdGFsUmVjb3JkczpudW1iZXI9MDtcbiAgQElucHV0KCkgZm9vdGVyOmJvb2xlYW49ZmFsc2U7XG5cblxuICBAQ29udGVudENoaWxkKCdjYXJkJykgY2FyZCE6IFRlbXBsYXRlUmVmPGFueT47XG4gIC8vIEBDb250ZW50Q2hpbGQoJ2NvbnRlbnQnKSBjb250ZW50ITogVGVtcGxhdGVSZWY8YW55PjtcbiAgY3VycmVudEl0ZW06YW55PXt9O1xuICBoYXNDdXJyZW50SXRlbSgpXG4gIHtcbiAgICByZXR1cm4gISFPYmplY3Qua2V5cyh0aGlzLmN1cnJlbnRJdGVtKS5sZW5ndGhcbiAgfVxuICBjbGVhckRhdGEoKVxuICAge1xuICAgIHRoaXMuY3VycmVudEl0ZW09e30gYXMgQ2FyZERhdGFcbiAgICB0aGlzLmNhcmREYXRhTGlzdC5mb3JFYWNoKF89PntcbiAgICAgIF8uc2VsZWN0ZWQ9ZmFsc2U7XG4gICAgfSk7XG4gICB9XG4gIEBJbnB1dCgpIG9uSXRlbUNsaWNrKGl0ZW06Q2FyZERhdGEpe1xuICAgIGl0ZW0uc2VsZWN0ZWQ9IHRydWU7XG4gICAgdGhpcy5jYXJkRGF0YUxpc3QuZm9yRWFjaChlbGVtZW50ID0+IHtcbiAgICAgIGlmKGVsZW1lbnQuZGF0YVt0aGlzLmRhdGFJZF09PWl0ZW0uZGF0YVt0aGlzLmRhdGFJZF0pXG4gICAgICB7XG4gICAgICAgIHRoaXMuY3VycmVudEl0ZW09IGl0ZW07XG4gICAgICB9XG4gICAgICBlbHNlXG4gICAgICB7XG4gICAgICAgIGVsZW1lbnQuc2VsZWN0ZWQ9ZmFsc2U7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudEl0ZW1cbiAgfVxuICBAT3V0cHV0KCkgbG9hZE1vcmVDbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgb25Mb2FkTW9yZUNsaWNrKClcbiAge1xuICAgIHRoaXMubG9hZE1vcmVDbGljay5lbWl0KCk7XG4gIH1cbn1cbiIsIlxuPGRpdiBjbGFzcz1cImNvbnRhaW5lciBmbGV4LWNvbFwiIFtzdHlsZS5kaXNwbGF5XT1cIidmbGV4J1wiIFtzdHlsZS5tYXJnaW5dPVwibWdcIiA+IFxuICAgICA8IS0tIEhlYWRlciAtLT5cbiAgICAgPG5nLWNvbnRhaW5lciBuZ1Byb2plY3RBcz1cInZlcmJlbi1jYXJkLWRhdGEtdmlldy1oZWFkZXJcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PSd2ZXJiZW4tY2FyZC1kYXRhLXZpZXctaGVhZGVyJz48L25nLWNvbnRlbnQ+XG4gICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgIDxkaXYgW3N0eWxlLnBhZGRpbmddPVwicGRcIiAgW25nQ2xhc3NdPVwiIWhhc0N1cnJlbnRJdGVtKCk/J21hc3Rlci1vbmx5LWNvbnRhaW5lcic6J21hc3Rlci1kZXRhaWwtY29udGFpbmVyJ1wiICA+XG4gICAgICA8IS0tIENhcmQgYW5kIEZvb3RlciAtLT5cbiAgICAgICAgPGRpdiBbc3R5bGUuYm9yZGVyUmFkaXVzXT1cImJvcmRlclJhZGl1c1wiIFtzdHlsZS5iYWNrZ3JvdW5kQ29sb3JdPVwibGJnQ29sb3JcIiBjbGFzcz1cImZsZXgtY29sIFwiPlxuICAgICAgICAgIDwhLS0gQ2FyZCBzZWN0aW9uIC0tPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgbmdQcm9qZWN0QXM9XCJ2ZXJiZW4tbGVmdC1jYXJkLWRhdGEtdmlld1wiPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PSd2ZXJiZW4tbGVmdC1jYXJkLWRhdGEtdmlldyc+PC9uZy1jb250ZW50PlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgPCEtLSBGb290ZXItLT5cbiAgICAgICAgICA8bmctY29udGFpbmVyIG5nUHJvamVjdEFzPVwidmVyYmVuLWNhcmQtZGF0YS12aWV3LWZvb3RlclwiPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PSd2ZXJiZW4tY2FyZC1kYXRhLXZpZXctZm9vdGVyJz48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPCEtLSBEZXRhaWwgU2VjdGlvbi0tPlxuICAgICAgIDxkaXYgW3N0eWxlLmJhY2tncm91bmRDb2xvcl09XCJyYmdDb2xvclwiICpuZ0lmPVwiaGFzQ3VycmVudEl0ZW0oKVwiIFtzdHlsZS5ib3JkZXJSYWRpdXNdPVwiYm9yZGVyUmFkaXVzXCI+XG4gICAgICAgICA8dmVyYmVuLXN2ZyAgKGNsaWNrKT1cImNsZWFyRGF0YSgpXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlciB0b1JpZ2h0XCIgaWNvbj1cImNsb3NlXCIgW3dpZHRoXT1cIjIwXCIgW2hlaWdodF09XCIyMFwiICBjb2xvcj1cImJsYWNrXCI+PC92ZXJiZW4tc3ZnPiBcbiAgICAgICAgIDxuZy1jb250YWluZXIgICBuZ1Byb2plY3RBcz1cInZlcmJlbi1yaWdodC1jYXJkLWRhdGEtdmlld1wiPlxuICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9J3ZlcmJlbi1yaWdodC1jYXJkLWRhdGEtdmlldyc+PC9uZy1jb250ZW50PlxuICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgPC9kaXY+XG4gICAgIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { CardDataViewComponent } from './card-data-view.component';
|
|
4
|
+
import { LeftCardDataComponent } from './left-card-data/left-card-data.component';
|
|
5
|
+
import { LeftCardDataViewComponent } from './left-card-data-view/left-card-data-view.component';
|
|
6
|
+
import { RightCardDataViewComponent } from './right-card-data-view/right-card-data-view.component';
|
|
7
|
+
import { CardDataViewFooterComponent } from './card-data-view-footer/card-data-view-footer.component';
|
|
8
|
+
import { CardDataViewHeaderComponent } from './card-data-view-header/card-data-view-header.component';
|
|
9
|
+
import { SvgModule } from "../svg/svg.module";
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
export class CardDataViewModule {
|
|
12
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CardDataViewModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
13
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.5", ngImport: i0, type: CardDataViewModule, declarations: [CardDataViewComponent, LeftCardDataComponent,
|
|
14
|
+
LeftCardDataViewComponent, RightCardDataViewComponent, CardDataViewFooterComponent,
|
|
15
|
+
CardDataViewHeaderComponent], imports: [CommonModule, SvgModule], exports: [CardDataViewComponent, LeftCardDataComponent,
|
|
16
|
+
LeftCardDataViewComponent, RightCardDataViewComponent, CardDataViewFooterComponent,
|
|
17
|
+
CardDataViewHeaderComponent] });
|
|
18
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CardDataViewModule, imports: [CommonModule, SvgModule] });
|
|
19
|
+
}
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: CardDataViewModule, decorators: [{
|
|
21
|
+
type: NgModule,
|
|
22
|
+
args: [{
|
|
23
|
+
declarations: [CardDataViewComponent, LeftCardDataComponent,
|
|
24
|
+
LeftCardDataViewComponent, RightCardDataViewComponent, CardDataViewFooterComponent,
|
|
25
|
+
CardDataViewHeaderComponent],
|
|
26
|
+
imports: [CommonModule, SvgModule],
|
|
27
|
+
exports: [CardDataViewComponent, LeftCardDataComponent,
|
|
28
|
+
LeftCardDataViewComponent, RightCardDataViewComponent, CardDataViewFooterComponent,
|
|
29
|
+
CardDataViewHeaderComponent]
|
|
30
|
+
}]
|
|
31
|
+
}] });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1kYXRhLXZpZXcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmVyYmVuLW5nLXVpL3NyYy9saWIvY29tcG9uZW50cy9jYXJkLWRhdGEtdmlldy9jYXJkLWRhdGEtdmlldy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDaEcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sdURBQXVELENBQUM7QUFDbkcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDdEcsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDdEcsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1CQUFtQixDQUFDOztBQVc5QyxNQUFNLE9BQU8sa0JBQWtCO3VHQUFsQixrQkFBa0I7d0dBQWxCLGtCQUFrQixpQkFSZixxQkFBcUIsRUFBQyxxQkFBcUI7WUFDdkQseUJBQXlCLEVBQUMsMEJBQTBCLEVBQUMsMkJBQTJCO1lBQ2hGLDJCQUEyQixhQUNuQixZQUFZLEVBQUUsU0FBUyxhQUN2QixxQkFBcUIsRUFBQyxxQkFBcUI7WUFDbkQseUJBQXlCLEVBQUMsMEJBQTBCLEVBQUMsMkJBQTJCO1lBQ2hGLDJCQUEyQjt3R0FFbEIsa0JBQWtCLFlBTG5CLFlBQVksRUFBRSxTQUFTOzsyRkFLdEIsa0JBQWtCO2tCQVQ5QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBQyxDQUFDLHFCQUFxQixFQUFDLHFCQUFxQjt3QkFDdkQseUJBQXlCLEVBQUMsMEJBQTBCLEVBQUMsMkJBQTJCO3dCQUNoRiwyQkFBMkIsQ0FBQztvQkFDOUIsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFNBQVMsQ0FBQztvQkFDbEMsT0FBTyxFQUFFLENBQUMscUJBQXFCLEVBQUMscUJBQXFCO3dCQUNuRCx5QkFBeUIsRUFBQywwQkFBMEIsRUFBQywyQkFBMkI7d0JBQ2hGLDJCQUEyQixDQUFDO2lCQUMvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2FyZERhdGFWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9jYXJkLWRhdGEtdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGVmdENhcmREYXRhQ29tcG9uZW50IH0gZnJvbSAnLi9sZWZ0LWNhcmQtZGF0YS9sZWZ0LWNhcmQtZGF0YS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTGVmdENhcmREYXRhVmlld0NvbXBvbmVudCB9IGZyb20gJy4vbGVmdC1jYXJkLWRhdGEtdmlldy9sZWZ0LWNhcmQtZGF0YS12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSaWdodENhcmREYXRhVmlld0NvbXBvbmVudCB9IGZyb20gJy4vcmlnaHQtY2FyZC1kYXRhLXZpZXcvcmlnaHQtY2FyZC1kYXRhLXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IENhcmREYXRhVmlld0Zvb3RlckNvbXBvbmVudCB9IGZyb20gJy4vY2FyZC1kYXRhLXZpZXctZm9vdGVyL2NhcmQtZGF0YS12aWV3LWZvb3Rlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FyZERhdGFWaWV3SGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jYXJkLWRhdGEtdmlldy1oZWFkZXIvY2FyZC1kYXRhLXZpZXctaGVhZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTdmdNb2R1bGUgfSBmcm9tIFwiLi4vc3ZnL3N2Zy5tb2R1bGVcIjtcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOltDYXJkRGF0YVZpZXdDb21wb25lbnQsTGVmdENhcmREYXRhQ29tcG9uZW50LFxuICAgIExlZnRDYXJkRGF0YVZpZXdDb21wb25lbnQsUmlnaHRDYXJkRGF0YVZpZXdDb21wb25lbnQsQ2FyZERhdGFWaWV3Rm9vdGVyQ29tcG9uZW50LFxuICAgIENhcmREYXRhVmlld0hlYWRlckNvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFN2Z01vZHVsZV0sXG4gIGV4cG9ydHM6IFtDYXJkRGF0YVZpZXdDb21wb25lbnQsTGVmdENhcmREYXRhQ29tcG9uZW50LFxuICAgIExlZnRDYXJkRGF0YVZpZXdDb21wb25lbnQsUmlnaHRDYXJkRGF0YVZpZXdDb21wb25lbnQsQ2FyZERhdGFWaWV3Rm9vdGVyQ29tcG9uZW50LFxuICAgIENhcmREYXRhVmlld0hlYWRlckNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgQ2FyZERhdGFWaWV3TW9kdWxlIHt9XG4iXX0=
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export class CardData {
|
|
2
|
+
selected = false;
|
|
3
|
+
title = '';
|
|
4
|
+
body = [];
|
|
5
|
+
data;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC1kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdmVyYmVuLW5nLXVpL3NyYy9saWIvY29tcG9uZW50cy9jYXJkLWRhdGEtdmlldy9jYXJkLWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLFFBQVE7SUFFbkIsUUFBUSxHQUFTLEtBQUssQ0FBQztJQUN2QixLQUFLLEdBQVEsRUFBRSxDQUFDO0lBQ2hCLElBQUksR0FBK0IsRUFBRSxDQUFDO0lBQ3RDLElBQUksQ0FBTTtDQUNYIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIENhcmREYXRhXG57XG4gIHNlbGVjdGVkOmJvb2xlYW49ZmFsc2U7XG4gIHRpdGxlOnN0cmluZz0nJztcbiAgYm9keTp7dGl0bGU6c3RyaW5nLHZhbHVlOnN0cmluZ31bXT1bXTtcbiAgZGF0YT86YW55O1xufSJdfQ==
|