cmat 0.0.3
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/README.md +3 -0
- package/animations/defaults.d.ts +11 -0
- package/animations/drop.d.ts +2 -0
- package/animations/expand-collapse.d.ts +2 -0
- package/animations/fade.d.ts +11 -0
- package/animations/index.d.ts +5 -0
- package/animations/public-api.d.ts +1 -0
- package/animations/shake.d.ts +2 -0
- package/animations/slide.d.ts +9 -0
- package/animations/transform.d.ts +2 -0
- package/animations/zoom.d.ts +3 -0
- package/components/adapter/datetime-adapter.d.ts +45 -0
- package/components/adapter/datetime-formats.d.ts +22 -0
- package/components/adapter/dayjs-date-adapter.d.ts +63 -0
- package/components/adapter/dayjs-date-formats.d.ts +2 -0
- package/components/adapter/dayjs-datetime-adapter.d.ts +22 -0
- package/components/adapter/dayjs-datetime-formats.d.ts +2 -0
- package/components/adapter/index.d.ts +5 -0
- package/components/adapter/native-datetime-adapter.d.ts +31 -0
- package/components/adapter/native-datetime-formats.d.ts +2 -0
- package/components/adapter/public-api.d.ts +8 -0
- package/components/breadcrumb/breadcrumb-item.directive.d.ts +10 -0
- package/components/breadcrumb/breadcrumb.component.d.ts +57 -0
- package/components/breadcrumb/breadcrumb.component.scss +18 -0
- package/components/breadcrumb/breadcrumb.service.d.ts +126 -0
- package/components/breadcrumb/index.d.ts +5 -0
- package/components/breadcrumb/public-api.d.ts +3 -0
- package/components/breadcrumb/types/breadcrumb.config.d.ts +33 -0
- package/components/breadcrumb/types/breadcrumb.d.ts +23 -0
- package/components/card/card.component.d.ts +20 -0
- package/components/card/card.component.scss +63 -0
- package/components/card/card.types.d.ts +1 -0
- package/components/card/index.d.ts +5 -0
- package/components/card/public-api.d.ts +1 -0
- package/components/cascade/cascade-bottom-sheet/cascade-bottom-sheet.component.d.ts +14 -0
- package/components/cascade/cascade-bottom-sheet/cascade-bottom-sheet.component.scss +43 -0
- package/components/cascade/cascade-list/cascade-list.component.d.ts +52 -0
- package/components/cascade/cascade-list/cascade-list.component.scss +22 -0
- package/components/cascade/cascade-menu/cascade-menu.component.d.ts +10 -0
- package/components/cascade/cascade-menu/cascade-menu.component.scss +48 -0
- package/components/cascade/index.d.ts +5 -0
- package/components/cascade/options.interface.d.ts +8 -0
- package/components/cascade/public-api.d.ts +2 -0
- package/components/date-range/date-range.component.d.ts +134 -0
- package/components/date-range/date-range.component.scss +232 -0
- package/components/date-range/index.d.ts +5 -0
- package/components/date-range/public-api.d.ts +1 -0
- package/components/drawer/drawer.component.d.ts +75 -0
- package/components/drawer/drawer.component.scss +133 -0
- package/components/drawer/drawer.service.d.ts +26 -0
- package/components/drawer/drawer.types.d.ts +2 -0
- package/components/drawer/index.d.ts +5 -0
- package/components/drawer/public-api.d.ts +3 -0
- package/components/fullscreen/fullscreen.component.d.ts +18 -0
- package/components/fullscreen/fullscreen.types.d.ts +13 -0
- package/components/fullscreen/index.d.ts +5 -0
- package/components/fullscreen/public-api.d.ts +2 -0
- package/components/highlight/highlight.component.d.ts +21 -0
- package/components/highlight/highlight.component.scss +3 -0
- package/components/highlight/highlight.service.d.ts +7 -0
- package/components/highlight/index.d.ts +5 -0
- package/components/highlight/public-api.d.ts +2 -0
- package/components/masonry/index.d.ts +5 -0
- package/components/masonry/masonry.component.d.ts +13 -0
- package/components/masonry/public-api.d.ts +1 -0
- package/components/material-color-picker/base-color.d.ts +1 -0
- package/components/material-color-picker/index.d.ts +5 -0
- package/components/material-color-picker/material-color-picker.component.d.ts +35 -0
- package/components/material-color-picker/material-color-picker.component.scss +5 -0
- package/components/material-color-picker/public-api.d.ts +2 -0
- package/components/material-color-picker/selected-color.d.ts +5 -0
- package/components/material-datetimepicker/calendar-body.d.ts +43 -0
- package/components/material-datetimepicker/calendar-body.scss +58 -0
- package/components/material-datetimepicker/calendar.d.ts +146 -0
- package/components/material-datetimepicker/calendar.scss +194 -0
- package/components/material-datetimepicker/clock.d.ts +74 -0
- package/components/material-datetimepicker/clock.scss +90 -0
- package/components/material-datetimepicker/datetimepicker-animations.d.ts +4 -0
- package/components/material-datetimepicker/datetimepicker-content.scss +151 -0
- package/components/material-datetimepicker/datetimepicker-errors.d.ts +1 -0
- package/components/material-datetimepicker/datetimepicker-filtertype.d.ts +5 -0
- package/components/material-datetimepicker/datetimepicker-input.d.ts +106 -0
- package/components/material-datetimepicker/datetimepicker-intl.d.ts +51 -0
- package/components/material-datetimepicker/datetimepicker-toggle.d.ts +40 -0
- package/components/material-datetimepicker/datetimepicker-types.d.ts +13 -0
- package/components/material-datetimepicker/datetimepicker.d.ts +195 -0
- package/components/material-datetimepicker/datetimepicker.scss +145 -0
- package/components/material-datetimepicker/index.d.ts +5 -0
- package/components/material-datetimepicker/month-view.d.ts +64 -0
- package/components/material-datetimepicker/multi-year-view.d.ts +74 -0
- package/components/material-datetimepicker/public-api.d.ts +9 -0
- package/components/material-datetimepicker/time.d.ts +129 -0
- package/components/material-datetimepicker/time.scss +82 -0
- package/components/material-datetimepicker/year-view.d.ts +56 -0
- package/components/navigation/horizontal/components/basic/basic.component.d.ts +27 -0
- package/components/navigation/horizontal/components/branch/branch.component.d.ts +39 -0
- package/components/navigation/horizontal/components/divider/divider.component.d.ts +23 -0
- package/components/navigation/horizontal/components/spacer/spacer.component.d.ts +23 -0
- package/components/navigation/horizontal/horizontal.component.d.ts +43 -0
- package/components/navigation/horizontal/horizontal.component.scss +167 -0
- package/components/navigation/index.d.ts +5 -0
- package/components/navigation/navigation.service.d.ts +71 -0
- package/components/navigation/navigation.types.d.ts +34 -0
- package/components/navigation/public-api.d.ts +4 -0
- package/components/navigation/vertical/components/aside/aside.component.d.ts +63 -0
- package/components/navigation/vertical/components/basic/basic.component.d.ts +30 -0
- package/components/navigation/vertical/components/collapsable/collapsable.component.d.ts +74 -0
- package/components/navigation/vertical/components/divider/divider.component.d.ts +26 -0
- package/components/navigation/vertical/components/group/group.component.d.ts +36 -0
- package/components/navigation/vertical/components/spacer/spacer.component.d.ts +26 -0
- package/components/navigation/vertical/styles/appearances/compact.scss +103 -0
- package/components/navigation/vertical/styles/appearances/default.scss +550 -0
- package/components/navigation/vertical/styles/appearances/dense.scss +171 -0
- package/components/navigation/vertical/styles/appearances/thin.scss +91 -0
- package/components/navigation/vertical/vertical.component.d.ts +176 -0
- package/components/navigation/vertical/vertical.component.scss +4 -0
- package/components/pagination/index.d.ts +5 -0
- package/components/pagination/pagination.component.d.ts +24 -0
- package/components/pagination/pagination.directive.d.ts +40 -0
- package/components/pagination/pagination.instance.d.ts +11 -0
- package/components/pagination/pagination.pipe.d.ts +29 -0
- package/components/pagination/pagination.service.d.ts +20 -0
- package/components/pagination/public-api.d.ts +4 -0
- package/components/password-strength/animations/index.d.ts +4 -0
- package/components/password-strength/enum.d.ts +13 -0
- package/components/password-strength/index.d.ts +5 -0
- package/components/password-strength/mat-pass-toggle-visibility/mat-pass-toggle-visibility.component.d.ts +11 -0
- package/components/password-strength/mat-password-strength/mat-password-strength.component.d.ts +52 -0
- package/components/password-strength/mat-password-strength-info/mat-password-strength-info.component.d.ts +16 -0
- package/components/password-strength/mat-password-strength-info/mat-password-strength-info.component.scss +19 -0
- package/components/password-strength/mat-password-strength-validator.d.ts +6 -0
- package/components/password-strength/public-api.d.ts +3 -0
- package/components/password-strength/regexp.class.d.ts +6 -0
- package/components/popover/index.d.ts +5 -0
- package/components/popover/popover.component.d.ts +139 -0
- package/components/popover/popover.component.scss +174 -0
- package/components/popover/popover.errors.d.ts +14 -0
- package/components/popover/popover.interfaces.d.ts +44 -0
- package/components/popover/popover.type.d.ts +5 -0
- package/components/popover/public-api.d.ts +1 -0
- package/components/progress-bar/index.d.ts +5 -0
- package/components/progress-bar/progress-bar.component.d.ts +17 -0
- package/components/progress-bar/progress-bar.component.scss +7 -0
- package/components/progress-bar/public-api.d.ts +1 -0
- package/components/rating/index.d.ts +5 -0
- package/components/rating/public-api.d.ts +1 -0
- package/components/rating/rating.component.d.ts +28 -0
- package/components/rating/rating.component.scss +33 -0
- package/components/select-search/default-options.d.ts +8 -0
- package/components/select-search/index.d.ts +5 -0
- package/components/select-search/public-api.d.ts +2 -0
- package/components/select-search/select-no-entries-found.directive.d.ts +5 -0
- package/components/select-search/select-search-clear.directive.d.ts +5 -0
- package/components/select-search/select-search.component.d.ts +91 -0
- package/components/select-search/select-search.component.scss +126 -0
- package/components/select-tree/index.d.ts +5 -0
- package/components/select-tree/public-api.d.ts +1 -0
- package/components/select-tree/select-tree.component.d.ts +85 -0
- package/components/select-tree/select-tree.component.scss +54 -0
- package/components/select-tree/select-tree.flatnode.d.ts +6 -0
- package/components/select-tree/select-tree.node.d.ts +5 -0
- package/components/timeline/index.d.ts +5 -0
- package/components/timeline/public-api.d.ts +2 -0
- package/components/timeline/timeline-item/timeline-item.component.d.ts +25 -0
- package/components/timeline/timeline-item/timeline-item.component.scss +329 -0
- package/components/timeline/timeline.component.d.ts +32 -0
- package/components/timeline/timeline.component.scss +42 -0
- package/components/toast/index.d.ts +5 -0
- package/components/toast/models/global-config.model.d.ts +12 -0
- package/components/toast/models/toast.model.d.ts +6 -0
- package/components/toast/models/type.model.d.ts +12 -0
- package/components/toast/public-api.d.ts +2 -0
- package/components/toast/toast-modal.component.d.ts +18 -0
- package/components/toast/toast-modal.component.scss +119 -0
- package/components/toast/toast.component.d.ts +17 -0
- package/components/toast/toast.component.scss +62 -0
- package/components/toast/toast.service.d.ts +26 -0
- package/components/transfer-picker/filter/filter.component.d.ts +24 -0
- package/components/transfer-picker/filter/filter.component.scss +40 -0
- package/components/transfer-picker/index.d.ts +5 -0
- package/components/transfer-picker/interface.d.ts +42 -0
- package/components/transfer-picker/public-api.d.ts +7 -0
- package/components/transfer-picker/search/search.component.d.ts +14 -0
- package/components/transfer-picker/search/search.component.scss +7 -0
- package/components/transfer-picker/transfer-picker-source/transfer-picker-source.component.d.ts +49 -0
- package/components/transfer-picker/transfer-picker-source/transfer-picker-source.component.scss +25 -0
- package/components/transfer-picker/transfer-picker-target/transfer-picker-target.component.d.ts +12 -0
- package/components/transfer-picker/transfer-picker-target/transfer-picker-target.component.scss +27 -0
- package/components/transfer-picker/transfer-picker.component.d.ts +28 -0
- package/components/transfer-picker/transfer-picker.component.scss +8 -0
- package/components/transfer-picker/transfer-picker.service.d.ts +31 -0
- package/directives/animate-on-scroll/animate-on-scroll.directive.d.ts +29 -0
- package/directives/animate-on-scroll/index.d.ts +5 -0
- package/directives/animate-on-scroll/public-api.d.ts +1 -0
- package/directives/animate-on-scroll/scroll.service.d.ts +15 -0
- package/directives/autofocus/autofocus.directive.d.ts +10 -0
- package/directives/autofocus/index.d.ts +5 -0
- package/directives/autofocus/public-api.d.ts +1 -0
- package/directives/debounce/abstract-debounce.directive.d.ts +15 -0
- package/directives/debounce/debounce-click.directive.d.ts +8 -0
- package/directives/debounce/debounce-keyup.directive.d.ts +8 -0
- package/directives/debounce/index.d.ts +5 -0
- package/directives/debounce/public-api.d.ts +2 -0
- package/directives/digit-only/digit-only.directive.d.ts +34 -0
- package/directives/digit-only/index.d.ts +5 -0
- package/directives/digit-only/mask.directive.d.ts +14 -0
- package/directives/digit-only/public-api.d.ts +2 -0
- package/directives/equal-validator/equal-validator.directive.d.ts +14 -0
- package/directives/equal-validator/index.d.ts +5 -0
- package/directives/equal-validator/public-api.d.ts +1 -0
- package/esm2022/animations/cmat-animations.mjs +5 -0
- package/esm2022/animations/defaults.mjs +12 -0
- package/esm2022/animations/drop.mjs +26 -0
- package/esm2022/animations/expand-collapse.mjs +17 -0
- package/esm2022/animations/fade.mjs +170 -0
- package/esm2022/animations/public-api.mjs +19 -0
- package/esm2022/animations/shake.mjs +59 -0
- package/esm2022/animations/slide.mjs +124 -0
- package/esm2022/animations/transform.mjs +16 -0
- package/esm2022/animations/zoom.mjs +38 -0
- package/esm2022/cmat.mjs +5 -0
- package/esm2022/components/adapter/cmat-components-adapter.mjs +5 -0
- package/esm2022/components/adapter/datetime-adapter.mjs +127 -0
- package/esm2022/components/adapter/datetime-formats.mjs +3 -0
- package/esm2022/components/adapter/dayjs-date-adapter.mjs +198 -0
- package/esm2022/components/adapter/dayjs-date-formats.mjs +12 -0
- package/esm2022/components/adapter/dayjs-datetime-adapter.mjs +100 -0
- package/esm2022/components/adapter/dayjs-datetime-formats.mjs +21 -0
- package/esm2022/components/adapter/native-datetime-adapter.mjs +130 -0
- package/esm2022/components/adapter/native-datetime-formats.mjs +15 -0
- package/esm2022/components/adapter/public-api.mjs +9 -0
- package/esm2022/components/breadcrumb/breadcrumb-item.directive.mjs +19 -0
- package/esm2022/components/breadcrumb/breadcrumb.component.mjs +95 -0
- package/esm2022/components/breadcrumb/breadcrumb.service.mjs +336 -0
- package/esm2022/components/breadcrumb/cmat-components-breadcrumb.mjs +5 -0
- package/esm2022/components/breadcrumb/public-api.mjs +4 -0
- package/esm2022/components/breadcrumb/types/breadcrumb.config.mjs +2 -0
- package/esm2022/components/breadcrumb/types/breadcrumb.mjs +2 -0
- package/esm2022/components/card/card.component.mjs +58 -0
- package/esm2022/components/card/card.types.mjs +2 -0
- package/esm2022/components/card/cmat-components-card.mjs +5 -0
- package/esm2022/components/card/public-api.mjs +2 -0
- package/esm2022/components/cascade/cascade-bottom-sheet/cascade-bottom-sheet.component.mjs +53 -0
- package/esm2022/components/cascade/cascade-list/cascade-list.component.mjs +263 -0
- package/esm2022/components/cascade/cascade-menu/cascade-menu.component.mjs +29 -0
- package/esm2022/components/cascade/cmat-components-cascade.mjs +5 -0
- package/esm2022/components/cascade/options.interface.mjs +2 -0
- package/esm2022/components/cascade/public-api.mjs +3 -0
- package/esm2022/components/date-range/cmat-components-date-range.mjs +5 -0
- package/esm2022/components/date-range/date-range.component.mjs +540 -0
- package/esm2022/components/date-range/public-api.mjs +2 -0
- package/esm2022/components/drawer/cmat-components-drawer.mjs +5 -0
- package/esm2022/components/drawer/drawer.component.mjs +301 -0
- package/esm2022/components/drawer/drawer.service.mjs +41 -0
- package/esm2022/components/drawer/drawer.types.mjs +2 -0
- package/esm2022/components/drawer/public-api.mjs +4 -0
- package/esm2022/components/fullscreen/cmat-components-fullscreen.mjs +5 -0
- package/esm2022/components/fullscreen/fullscreen.component.mjs +101 -0
- package/esm2022/components/fullscreen/fullscreen.types.mjs +2 -0
- package/esm2022/components/fullscreen/public-api.mjs +3 -0
- package/esm2022/components/highlight/cmat-components-highlight.mjs +5 -0
- package/esm2022/components/highlight/highlight.component.mjs +80 -0
- package/esm2022/components/highlight/highlight.service.mjs +47 -0
- package/esm2022/components/highlight/public-api.mjs +3 -0
- package/esm2022/components/masonry/cmat-components-masonry.mjs +5 -0
- package/esm2022/components/masonry/masonry.component.mjs +54 -0
- package/esm2022/components/masonry/public-api.mjs +2 -0
- package/esm2022/components/material-color-picker/base-color.mjs +13 -0
- package/esm2022/components/material-color-picker/cmat-components-material-color-picker.mjs +5 -0
- package/esm2022/components/material-color-picker/material-color-picker.component.mjs +138 -0
- package/esm2022/components/material-color-picker/public-api.mjs +3 -0
- package/esm2022/components/material-color-picker/selected-color.mjs +3 -0
- package/esm2022/components/material-datetimepicker/calendar-body.mjs +80 -0
- package/esm2022/components/material-datetimepicker/calendar.mjs +678 -0
- package/esm2022/components/material-datetimepicker/clock.mjs +293 -0
- package/esm2022/components/material-datetimepicker/cmat-components-material-datetimepicker.mjs +5 -0
- package/esm2022/components/material-datetimepicker/datetimepicker-animations.mjs +34 -0
- package/esm2022/components/material-datetimepicker/datetimepicker-errors.mjs +6 -0
- package/esm2022/components/material-datetimepicker/datetimepicker-filtertype.mjs +8 -0
- package/esm2022/components/material-datetimepicker/datetimepicker-input.mjs +340 -0
- package/esm2022/components/material-datetimepicker/datetimepicker-intl.mjs +63 -0
- package/esm2022/components/material-datetimepicker/datetimepicker-toggle.mjs +88 -0
- package/esm2022/components/material-datetimepicker/datetimepicker-types.mjs +2 -0
- package/esm2022/components/material-datetimepicker/datetimepicker.mjs +534 -0
- package/esm2022/components/material-datetimepicker/month-view.mjs +146 -0
- package/esm2022/components/material-datetimepicker/multi-year-view.mjs +198 -0
- package/esm2022/components/material-datetimepicker/public-api.mjs +10 -0
- package/esm2022/components/material-datetimepicker/time.mjs +456 -0
- package/esm2022/components/material-datetimepicker/year-view.mjs +125 -0
- package/esm2022/components/navigation/cmat-components-navigation.mjs +5 -0
- package/esm2022/components/navigation/horizontal/components/basic/basic.component.mjs +70 -0
- package/esm2022/components/navigation/horizontal/components/branch/branch.component.mjs +83 -0
- package/esm2022/components/navigation/horizontal/components/divider/divider.component.mjs +47 -0
- package/esm2022/components/navigation/horizontal/components/spacer/spacer.component.mjs +47 -0
- package/esm2022/components/navigation/horizontal/horizontal.component.mjs +88 -0
- package/esm2022/components/navigation/navigation.service.mjs +140 -0
- package/esm2022/components/navigation/navigation.types.mjs +3 -0
- package/esm2022/components/navigation/public-api.mjs +5 -0
- package/esm2022/components/navigation/vertical/components/aside/aside.component.mjs +162 -0
- package/esm2022/components/navigation/vertical/components/basic/basic.component.mjs +76 -0
- package/esm2022/components/navigation/vertical/components/collapsable/collapsable.component.mjs +279 -0
- package/esm2022/components/navigation/vertical/components/divider/divider.component.mjs +56 -0
- package/esm2022/components/navigation/vertical/components/group/group.component.mjs +79 -0
- package/esm2022/components/navigation/vertical/components/spacer/spacer.component.mjs +56 -0
- package/esm2022/components/navigation/vertical/vertical.component.mjs +586 -0
- package/esm2022/components/pagination/cmat-components-pagination.mjs +5 -0
- package/esm2022/components/pagination/pagination.component.mjs +71 -0
- package/esm2022/components/pagination/pagination.directive.mjs +197 -0
- package/esm2022/components/pagination/pagination.instance.mjs +2 -0
- package/esm2022/components/pagination/pagination.pipe.mjs +100 -0
- package/esm2022/components/pagination/pagination.service.mjs +90 -0
- package/esm2022/components/pagination/public-api.mjs +5 -0
- package/esm2022/components/password-strength/animations/index.mjs +48 -0
- package/esm2022/components/password-strength/cmat-components-password-strength.mjs +5 -0
- package/esm2022/components/password-strength/enum.mjs +17 -0
- package/esm2022/components/password-strength/mat-pass-toggle-visibility/mat-pass-toggle-visibility.component.mjs +27 -0
- package/esm2022/components/password-strength/mat-password-strength/mat-password-strength.component.mjs +206 -0
- package/esm2022/components/password-strength/mat-password-strength-info/mat-password-strength-info.component.mjs +151 -0
- package/esm2022/components/password-strength/mat-password-strength-validator.mjs +36 -0
- package/esm2022/components/password-strength/public-api.mjs +4 -0
- package/esm2022/components/password-strength/regexp.class.mjs +8 -0
- package/esm2022/components/popover/cmat-components-popover.mjs +5 -0
- package/esm2022/components/popover/popover.component.mjs +350 -0
- package/esm2022/components/popover/popover.errors.mjs +27 -0
- package/esm2022/components/popover/popover.interfaces.mjs +2 -0
- package/esm2022/components/popover/popover.type.mjs +2 -0
- package/esm2022/components/popover/public-api.mjs +2 -0
- package/esm2022/components/progress-bar/cmat-components-progress-bar.mjs +5 -0
- package/esm2022/components/progress-bar/progress-bar.component.mjs +55 -0
- package/esm2022/components/progress-bar/public-api.mjs +2 -0
- package/esm2022/components/rating/cmat-components-rating.mjs +5 -0
- package/esm2022/components/rating/public-api.mjs +2 -0
- package/esm2022/components/rating/rating.component.mjs +91 -0
- package/esm2022/components/select-search/cmat-components-select-search.mjs +5 -0
- package/esm2022/components/select-search/default-options.mjs +16 -0
- package/esm2022/components/select-search/public-api.mjs +3 -0
- package/esm2022/components/select-search/select-no-entries-found.directive.mjs +14 -0
- package/esm2022/components/select-search/select-search-clear.directive.mjs +14 -0
- package/esm2022/components/select-search/select-search.component.mjs +488 -0
- package/esm2022/components/select-tree/cmat-components-select-tree.mjs +5 -0
- package/esm2022/components/select-tree/public-api.mjs +2 -0
- package/esm2022/components/select-tree/select-tree.component.mjs +458 -0
- package/esm2022/components/select-tree/select-tree.flatnode.mjs +3 -0
- package/esm2022/components/select-tree/select-tree.node.mjs +3 -0
- package/esm2022/components/timeline/cmat-components-timeline.mjs +5 -0
- package/esm2022/components/timeline/public-api.mjs +3 -0
- package/esm2022/components/timeline/timeline-item/timeline-item.component.mjs +68 -0
- package/esm2022/components/timeline/timeline.component.mjs +114 -0
- package/esm2022/components/toast/cmat-components-toast.mjs +5 -0
- package/esm2022/components/toast/models/global-config.model.mjs +2 -0
- package/esm2022/components/toast/models/toast.model.mjs +2 -0
- package/esm2022/components/toast/models/type.model.mjs +2 -0
- package/esm2022/components/toast/public-api.mjs +3 -0
- package/esm2022/components/toast/toast-modal.component.mjs +53 -0
- package/esm2022/components/toast/toast.component.mjs +30 -0
- package/esm2022/components/toast/toast.service.mjs +122 -0
- package/esm2022/components/transfer-picker/cmat-components-transfer-picker.mjs +5 -0
- package/esm2022/components/transfer-picker/filter/filter.component.mjs +85 -0
- package/esm2022/components/transfer-picker/interface.mjs +17 -0
- package/esm2022/components/transfer-picker/public-api.mjs +8 -0
- package/esm2022/components/transfer-picker/search/search.component.mjs +34 -0
- package/esm2022/components/transfer-picker/transfer-picker-source/transfer-picker-source.component.mjs +178 -0
- package/esm2022/components/transfer-picker/transfer-picker-target/transfer-picker-target.component.mjs +34 -0
- package/esm2022/components/transfer-picker/transfer-picker.component.mjs +82 -0
- package/esm2022/components/transfer-picker/transfer-picker.service.mjs +134 -0
- package/esm2022/directives/animate-on-scroll/animate-on-scroll.directive.mjs +126 -0
- package/esm2022/directives/animate-on-scroll/cmat-directives-animate-on-scroll.mjs +5 -0
- package/esm2022/directives/animate-on-scroll/public-api.mjs +2 -0
- package/esm2022/directives/animate-on-scroll/scroll.service.mjs +38 -0
- package/esm2022/directives/autofocus/autofocus.directive.mjs +20 -0
- package/esm2022/directives/autofocus/cmat-directives-autofocus.mjs +5 -0
- package/esm2022/directives/autofocus/public-api.mjs +2 -0
- package/esm2022/directives/debounce/abstract-debounce.directive.mjs +34 -0
- package/esm2022/directives/debounce/cmat-directives-debounce.mjs +5 -0
- package/esm2022/directives/debounce/debounce-click.directive.mjs +25 -0
- package/esm2022/directives/debounce/debounce-keyup.directive.mjs +25 -0
- package/esm2022/directives/debounce/public-api.mjs +3 -0
- package/esm2022/directives/digit-only/cmat-directives-digit-only.mjs +5 -0
- package/esm2022/directives/digit-only/digit-only.directive.mjs +282 -0
- package/esm2022/directives/digit-only/mask.directive.mjs +69 -0
- package/esm2022/directives/digit-only/public-api.mjs +3 -0
- package/esm2022/directives/equal-validator/cmat-directives-equal-validator.mjs +5 -0
- package/esm2022/directives/equal-validator/equal-validator.directive.mjs +54 -0
- package/esm2022/directives/equal-validator/public-api.mjs +2 -0
- package/esm2022/lib/mock-api/cmat-lib-mock-api.mjs +5 -0
- package/esm2022/lib/mock-api/mock-api.constants.mjs +3 -0
- package/esm2022/lib/mock-api/mock-api.interceptor.mjs +73 -0
- package/esm2022/lib/mock-api/mock-api.request-handler.mjs +48 -0
- package/esm2022/lib/mock-api/mock-api.service.mjs +93 -0
- package/esm2022/lib/mock-api/mock-api.types.mjs +2 -0
- package/esm2022/lib/mock-api/mock-api.utils.mjs +17 -0
- package/esm2022/lib/mock-api/public-api.mjs +6 -0
- package/esm2022/pipes/bytes/bytes.pipe.mjs +25 -0
- package/esm2022/pipes/bytes/cmat-pipes-bytes.mjs +5 -0
- package/esm2022/pipes/bytes/public-api.mjs +2 -0
- package/esm2022/pipes/date-format/cmat-pipes-date-format.mjs +5 -0
- package/esm2022/pipes/date-format/date-format.pipe.mjs +18 -0
- package/esm2022/pipes/date-format/public-api.mjs +2 -0
- package/esm2022/pipes/find-by-key/cmat-pipes-find-by-key.mjs +5 -0
- package/esm2022/pipes/find-by-key/find-by-key.pipe.mjs +23 -0
- package/esm2022/pipes/find-by-key/public-api.mjs +2 -0
- package/esm2022/pipes/group-by/cmat-pipes-group-by.mjs +5 -0
- package/esm2022/pipes/group-by/group-by.pipe.mjs +29 -0
- package/esm2022/pipes/group-by/public-api.mjs +2 -0
- package/esm2022/pipes/keys/cmat-pipes-keys.mjs +5 -0
- package/esm2022/pipes/keys/keys.pipe.mjs +26 -0
- package/esm2022/pipes/keys/public-api.mjs +2 -0
- package/esm2022/pipes/secure/cmat-pipes-secure.mjs +5 -0
- package/esm2022/pipes/secure/public-api.mjs +2 -0
- package/esm2022/pipes/secure/secure-pipe.mjs +43 -0
- package/esm2022/pipes/uppercase/cmat-pipes-uppercase.mjs +5 -0
- package/esm2022/pipes/uppercase/public-api.mjs +2 -0
- package/esm2022/pipes/uppercase/uppercase.pipe.mjs +17 -0
- package/esm2022/public-api.mjs +2 -0
- package/esm2022/services/alert/alert.dialog.mjs +12 -0
- package/esm2022/services/alert/alert.message.mjs +9 -0
- package/esm2022/services/alert/alert.service.mjs +165 -0
- package/esm2022/services/alert/cmat-services-alert.mjs +5 -0
- package/esm2022/services/alert/enum.mjs +15 -0
- package/esm2022/services/alert/public-api.mjs +5 -0
- package/esm2022/services/config/cmat-services-config.mjs +5 -0
- package/esm2022/services/config/config.constants.mjs +3 -0
- package/esm2022/services/config/config.service.mjs +35 -0
- package/esm2022/services/config/public-api.mjs +4 -0
- package/esm2022/services/config/urlStateConfig.service.mjs +30 -0
- package/esm2022/services/confirmation/cmat-services-confirmation.mjs +5 -0
- package/esm2022/services/confirmation/confirmation.service.mjs +51 -0
- package/esm2022/services/confirmation/confirmation.types.mjs +2 -0
- package/esm2022/services/confirmation/dialog/dialog.component.mjs +25 -0
- package/esm2022/services/confirmation/public-api.mjs +3 -0
- package/esm2022/services/data/cmat-services-data.mjs +5 -0
- package/esm2022/services/data/data.service.mjs +169 -0
- package/esm2022/services/data/public-api.mjs +2 -0
- package/esm2022/services/loading/cmat-services-loading.mjs +5 -0
- package/esm2022/services/loading/loading.interceptor.mjs +29 -0
- package/esm2022/services/loading/loading.service.mjs +72 -0
- package/esm2022/services/loading/public-api.mjs +3 -0
- package/esm2022/services/local-storage/cmat-services-local-storage.mjs +5 -0
- package/esm2022/services/local-storage/local-storage.service.mjs +22 -0
- package/esm2022/services/local-storage/public-api.mjs +2 -0
- package/esm2022/services/media-watcher/cmat-services-media-watcher.mjs +5 -0
- package/esm2022/services/media-watcher/media-watcher.service.mjs +55 -0
- package/esm2022/services/media-watcher/public-api.mjs +2 -0
- package/esm2022/services/platform/cmat-services-platform.mjs +5 -0
- package/esm2022/services/platform/platform.service.mjs +46 -0
- package/esm2022/services/platform/public-api.mjs +2 -0
- package/esm2022/services/splash-screen/cmat-services-splash-screen.mjs +5 -0
- package/esm2022/services/splash-screen/public-api.mjs +2 -0
- package/esm2022/services/splash-screen/splash-screen.service.mjs +42 -0
- package/esm2022/services/title/cmat-services-title.mjs +5 -0
- package/esm2022/services/title/public-api.mjs +2 -0
- package/esm2022/services/title/title.service.mjs +46 -0
- package/esm2022/services/translation/cmat-services-translation.mjs +5 -0
- package/esm2022/services/translation/public-api.mjs +2 -0
- package/esm2022/services/translation/translation.service.mjs +62 -0
- package/esm2022/services/utils/cmat-services-utils.mjs +5 -0
- package/esm2022/services/utils/public-api.mjs +2 -0
- package/esm2022/services/utils/utils.service.mjs +391 -0
- package/esm2022/validators/cmat-validators.mjs +5 -0
- package/esm2022/validators/public-api.mjs +2 -0
- package/esm2022/validators/validators.mjs +33 -0
- package/esm2022/version/cmat-version.mjs +5 -0
- package/esm2022/version/public-api.mjs +2 -0
- package/esm2022/version/version.mjs +11 -0
- package/fesm2022/cmat-animations.mjs +466 -0
- package/fesm2022/cmat-animations.mjs.map +1 -0
- package/fesm2022/cmat-components-adapter.mjs +600 -0
- package/fesm2022/cmat-components-adapter.mjs.map +1 -0
- package/fesm2022/cmat-components-breadcrumb.mjs +449 -0
- package/fesm2022/cmat-components-breadcrumb.mjs.map +1 -0
- package/fesm2022/cmat-components-card.mjs +65 -0
- package/fesm2022/cmat-components-card.mjs.map +1 -0
- package/fesm2022/cmat-components-cascade.mjs +334 -0
- package/fesm2022/cmat-components-cascade.mjs.map +1 -0
- package/fesm2022/cmat-components-date-range.mjs +547 -0
- package/fesm2022/cmat-components-date-range.mjs.map +1 -0
- package/fesm2022/cmat-components-drawer.mjs +346 -0
- package/fesm2022/cmat-components-drawer.mjs.map +1 -0
- package/fesm2022/cmat-components-fullscreen.mjs +108 -0
- package/fesm2022/cmat-components-fullscreen.mjs.map +1 -0
- package/fesm2022/cmat-components-highlight.mjs +131 -0
- package/fesm2022/cmat-components-highlight.mjs.map +1 -0
- package/fesm2022/cmat-components-masonry.mjs +61 -0
- package/fesm2022/cmat-components-masonry.mjs.map +1 -0
- package/fesm2022/cmat-components-material-color-picker.mjs +160 -0
- package/fesm2022/cmat-components-material-color-picker.mjs.map +1 -0
- package/fesm2022/cmat-components-material-datetimepicker.mjs +2976 -0
- package/fesm2022/cmat-components-material-datetimepicker.mjs.map +1 -0
- package/fesm2022/cmat-components-navigation.mjs +1656 -0
- package/fesm2022/cmat-components-navigation.mjs.map +1 -0
- package/fesm2022/cmat-components-pagination.mjs +455 -0
- package/fesm2022/cmat-components-pagination.mjs.map +1 -0
- package/fesm2022/cmat-components-password-strength.mjs +489 -0
- package/fesm2022/cmat-components-password-strength.mjs.map +1 -0
- package/fesm2022/cmat-components-popover.mjs +383 -0
- package/fesm2022/cmat-components-popover.mjs.map +1 -0
- package/fesm2022/cmat-components-progress-bar.mjs +62 -0
- package/fesm2022/cmat-components-progress-bar.mjs.map +1 -0
- package/fesm2022/cmat-components-rating.mjs +98 -0
- package/fesm2022/cmat-components-rating.mjs.map +1 -0
- package/fesm2022/cmat-components-select-search.mjs +531 -0
- package/fesm2022/cmat-components-select-search.mjs.map +1 -0
- package/fesm2022/cmat-components-select-tree.mjs +467 -0
- package/fesm2022/cmat-components-select-tree.mjs.map +1 -0
- package/fesm2022/cmat-components-timeline.mjs +186 -0
- package/fesm2022/cmat-components-timeline.mjs.map +1 -0
- package/fesm2022/cmat-components-toast.mjs +205 -0
- package/fesm2022/cmat-components-toast.mjs.map +1 -0
- package/fesm2022/cmat-components-transfer-picker.mjs +536 -0
- package/fesm2022/cmat-components-transfer-picker.mjs.map +1 -0
- package/fesm2022/cmat-directives-animate-on-scroll.mjs +166 -0
- package/fesm2022/cmat-directives-animate-on-scroll.mjs.map +1 -0
- package/fesm2022/cmat-directives-autofocus.mjs +27 -0
- package/fesm2022/cmat-directives-autofocus.mjs.map +1 -0
- package/fesm2022/cmat-directives-debounce.mjs +85 -0
- package/fesm2022/cmat-directives-debounce.mjs.map +1 -0
- package/fesm2022/cmat-directives-digit-only.mjs +356 -0
- package/fesm2022/cmat-directives-digit-only.mjs.map +1 -0
- package/fesm2022/cmat-directives-equal-validator.mjs +61 -0
- package/fesm2022/cmat-directives-equal-validator.mjs.map +1 -0
- package/fesm2022/cmat-lib-mock-api.mjs +232 -0
- package/fesm2022/cmat-lib-mock-api.mjs.map +1 -0
- package/fesm2022/cmat-pipes-bytes.mjs +32 -0
- package/fesm2022/cmat-pipes-bytes.mjs.map +1 -0
- package/fesm2022/cmat-pipes-date-format.mjs +25 -0
- package/fesm2022/cmat-pipes-date-format.mjs.map +1 -0
- package/fesm2022/cmat-pipes-find-by-key.mjs +30 -0
- package/fesm2022/cmat-pipes-find-by-key.mjs.map +1 -0
- package/fesm2022/cmat-pipes-group-by.mjs +36 -0
- package/fesm2022/cmat-pipes-group-by.mjs.map +1 -0
- package/fesm2022/cmat-pipes-keys.mjs +33 -0
- package/fesm2022/cmat-pipes-keys.mjs.map +1 -0
- package/fesm2022/cmat-pipes-secure.mjs +50 -0
- package/fesm2022/cmat-pipes-secure.mjs.map +1 -0
- package/fesm2022/cmat-pipes-uppercase.mjs +24 -0
- package/fesm2022/cmat-pipes-uppercase.mjs.map +1 -0
- package/fesm2022/cmat-services-alert.mjs +207 -0
- package/fesm2022/cmat-services-alert.mjs.map +1 -0
- package/fesm2022/cmat-services-config.mjs +69 -0
- package/fesm2022/cmat-services-config.mjs.map +1 -0
- package/fesm2022/cmat-services-confirmation.mjs +79 -0
- package/fesm2022/cmat-services-confirmation.mjs.map +1 -0
- package/fesm2022/cmat-services-data.mjs +176 -0
- package/fesm2022/cmat-services-data.mjs.map +1 -0
- package/fesm2022/cmat-services-loading.mjs +104 -0
- package/fesm2022/cmat-services-loading.mjs.map +1 -0
- package/fesm2022/cmat-services-local-storage.mjs +29 -0
- package/fesm2022/cmat-services-local-storage.mjs.map +1 -0
- package/fesm2022/cmat-services-media-watcher.mjs +62 -0
- package/fesm2022/cmat-services-media-watcher.mjs.map +1 -0
- package/fesm2022/cmat-services-platform.mjs +53 -0
- package/fesm2022/cmat-services-platform.mjs.map +1 -0
- package/fesm2022/cmat-services-splash-screen.mjs +49 -0
- package/fesm2022/cmat-services-splash-screen.mjs.map +1 -0
- package/fesm2022/cmat-services-title.mjs +53 -0
- package/fesm2022/cmat-services-title.mjs.map +1 -0
- package/fesm2022/cmat-services-translation.mjs +69 -0
- package/fesm2022/cmat-services-translation.mjs.map +1 -0
- package/fesm2022/cmat-services-utils.mjs +398 -0
- package/fesm2022/cmat-services-utils.mjs.map +1 -0
- package/fesm2022/cmat-validators.mjs +39 -0
- package/fesm2022/cmat-validators.mjs.map +1 -0
- package/fesm2022/cmat-version.mjs +17 -0
- package/fesm2022/cmat-version.mjs.map +1 -0
- package/fesm2022/cmat.mjs +4 -0
- package/fesm2022/cmat.mjs.map +1 -0
- package/icons/CSV.svg +3 -0
- package/icons/EXCEL.svg +3 -0
- package/icons/FILE.svg +3 -0
- package/icons/GIF.svg +3 -0
- package/icons/JPG.svg +3 -0
- package/icons/PDF.svg +3 -0
- package/icons/PNG.svg +3 -0
- package/icons/PPT.svg +3 -0
- package/icons/TEXT.svg +3 -0
- package/icons/VIDEO.svg +3 -0
- package/icons/WORD.svg +3 -0
- package/icons/ZIP.svg +3 -0
- package/icons/arrow-cursor.svg +3 -0
- package/icons/material-icons/heroicons-outline.svg +893 -0
- package/icons/material-icons/heroicons-solid.svg +958 -0
- package/icons/material-icons/material-outline.svg +3586 -0
- package/icons/material-icons/material-solid.svg +3586 -0
- package/index.d.ts +5 -0
- package/lib/mock-api/index.d.ts +5 -0
- package/lib/mock-api/mock-api.constants.d.ts +2 -0
- package/lib/mock-api/mock-api.interceptor.d.ts +12 -0
- package/lib/mock-api/mock-api.request-handler.d.ts +18 -0
- package/lib/mock-api/mock-api.service.d.ts +22 -0
- package/lib/mock-api/mock-api.types.d.ts +9 -0
- package/lib/mock-api/mock-api.utils.d.ts +3 -0
- package/lib/mock-api/public-api.d.ts +5 -0
- package/package.json +344 -0
- package/pipes/bytes/bytes.pipe.d.ts +7 -0
- package/pipes/bytes/index.d.ts +5 -0
- package/pipes/bytes/public-api.d.ts +1 -0
- package/pipes/date-format/date-format.pipe.d.ts +7 -0
- package/pipes/date-format/index.d.ts +5 -0
- package/pipes/date-format/public-api.d.ts +1 -0
- package/pipes/find-by-key/find-by-key.pipe.d.ts +7 -0
- package/pipes/find-by-key/index.d.ts +5 -0
- package/pipes/find-by-key/public-api.d.ts +1 -0
- package/pipes/group-by/group-by.pipe.d.ts +7 -0
- package/pipes/group-by/index.d.ts +5 -0
- package/pipes/group-by/public-api.d.ts +1 -0
- package/pipes/keys/index.d.ts +5 -0
- package/pipes/keys/keys.pipe.d.ts +7 -0
- package/pipes/keys/public-api.d.ts +1 -0
- package/pipes/secure/index.d.ts +5 -0
- package/pipes/secure/public-api.d.ts +1 -0
- package/pipes/secure/secure-pipe.d.ts +18 -0
- package/pipes/uppercase/index.d.ts +5 -0
- package/pipes/uppercase/public-api.d.ts +1 -0
- package/pipes/uppercase/uppercase.pipe.d.ts +7 -0
- package/public-api.d.ts +1 -0
- package/services/alert/alert.dialog.d.ts +11 -0
- package/services/alert/alert.message.d.ts +8 -0
- package/services/alert/alert.service.d.ts +37 -0
- package/services/alert/enum.d.ts +12 -0
- package/services/alert/index.d.ts +5 -0
- package/services/alert/public-api.d.ts +4 -0
- package/services/config/config.constants.d.ts +6 -0
- package/services/config/config.service.d.ts +11 -0
- package/services/config/index.d.ts +5 -0
- package/services/config/public-api.d.ts +3 -0
- package/services/config/urlStateConfig.service.d.ts +10 -0
- package/services/confirmation/confirmation.service.d.ts +12 -0
- package/services/confirmation/confirmation.types.d.ts +21 -0
- package/services/confirmation/dialog/dialog.component.d.ts +10 -0
- package/services/confirmation/index.d.ts +5 -0
- package/services/confirmation/public-api.d.ts +2 -0
- package/services/data/data.service.d.ts +20 -0
- package/services/data/index.d.ts +5 -0
- package/services/data/public-api.d.ts +1 -0
- package/services/loading/index.d.ts +5 -0
- package/services/loading/loading.interceptor.d.ts +12 -0
- package/services/loading/loading.service.d.ts +24 -0
- package/services/loading/public-api.d.ts +2 -0
- package/services/local-storage/index.d.ts +5 -0
- package/services/local-storage/local-storage.service.d.ts +8 -0
- package/services/local-storage/public-api.d.ts +1 -0
- package/services/media-watcher/index.d.ts +5 -0
- package/services/media-watcher/media-watcher.service.d.ts +20 -0
- package/services/media-watcher/public-api.d.ts +1 -0
- package/services/platform/index.d.ts +5 -0
- package/services/platform/platform.service.d.ts +9 -0
- package/services/platform/public-api.d.ts +1 -0
- package/services/splash-screen/index.d.ts +5 -0
- package/services/splash-screen/public-api.d.ts +1 -0
- package/services/splash-screen/splash-screen.service.d.ts +14 -0
- package/services/title/index.d.ts +5 -0
- package/services/title/public-api.d.ts +1 -0
- package/services/title/title.service.d.ts +13 -0
- package/services/translation/index.d.ts +5 -0
- package/services/translation/public-api.d.ts +1 -0
- package/services/translation/translation.service.d.ts +20 -0
- package/services/utils/index.d.ts +5 -0
- package/services/utils/public-api.d.ts +1 -0
- package/services/utils/utils.service.d.ts +57 -0
- package/styles/components/input.scss +42 -0
- package/styles/main.scss +9 -0
- package/styles/overrides/angular-material.scss +1403 -0
- package/styles/overrides/fullcalendar.scss +550 -0
- package/styles/overrides/highlightjs.scss +81 -0
- package/styles/styles.scss +3 -0
- package/styles/tailwind.scss +86 -0
- package/styles/themes.scss +164 -0
- package/styles/user-themes.scss +1 -0
- package/tailwind/plugins/icon-size.js +49 -0
- package/tailwind/plugins/theming.js +256 -0
- package/tailwind/plugins/utilities.js +66 -0
- package/tailwind/utils/generate-contrasts.js +29 -0
- package/tailwind/utils/generate-palette.js +100 -0
- package/tailwind/utils/json-to-sass-map.js +67 -0
- package/validators/index.d.ts +5 -0
- package/validators/public-api.d.ts +1 -0
- package/validators/validators.d.ts +5 -0
- package/version/index.d.ts +5 -0
- package/version/public-api.d.ts +1 -0
- package/version/version.d.ts +9 -0
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
.cmat-timeline {
|
|
2
|
+
margin: 0;
|
|
3
|
+
padding: 0;
|
|
4
|
+
width: 100%;
|
|
5
|
+
display: flex;
|
|
6
|
+
justify-content: stretch;
|
|
7
|
+
align-items: stretch;
|
|
8
|
+
overflow: auto;
|
|
9
|
+
|
|
10
|
+
&-content {
|
|
11
|
+
margin: 0;
|
|
12
|
+
padding: 0;
|
|
13
|
+
width: 100%;
|
|
14
|
+
display: flex;
|
|
15
|
+
justify-content: stretch;
|
|
16
|
+
align-items: stretch;
|
|
17
|
+
min-width: min-content;
|
|
18
|
+
min-height: min-content;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.cmat-timeline-center>.cmat-timeline-content,
|
|
24
|
+
.cmat-timeline-center-alt>.cmat-timeline-content {
|
|
25
|
+
align-items: center;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.cmat-timeline-vertical>.cmat-timeline-content {
|
|
29
|
+
flex-direction: column;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.cmat-timeline-vertical.cmat-timeline-reverse>.cmat-timeline-content {
|
|
33
|
+
flex-direction: column-reverse;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.cmat-timeline-horizontal>.cmat-timeline-content {
|
|
37
|
+
flex-direction: row;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.cmat-timeline-horizontal.cmat-timeline-reverse>.cmat-timeline-content {
|
|
41
|
+
flex-direction: row-reverse;
|
|
42
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { GlobalTheme, GlobalPosition } from './type.model';
|
|
2
|
+
export interface GlobalConfigModel {
|
|
3
|
+
id?: number;
|
|
4
|
+
title?: string;
|
|
5
|
+
showClose?: boolean;
|
|
6
|
+
showDuration?: boolean;
|
|
7
|
+
theme?: GlobalTheme;
|
|
8
|
+
timeout?: number;
|
|
9
|
+
position?: GlobalPosition;
|
|
10
|
+
limit?: number;
|
|
11
|
+
isCountdown?: boolean;
|
|
12
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { CmatToastModel } from './toast.model';
|
|
2
|
+
type Prefixable = keyof Pick<CmatToastModel, 'theme' | 'position' | 'type'>;
|
|
3
|
+
export type ToastAPrefix<Key extends Prefixable> = `toasta-${Key}`;
|
|
4
|
+
export type Theme = 'material';
|
|
5
|
+
export type GlobalTheme = `${ToastAPrefix<'theme'>}-${Theme}` | Theme;
|
|
6
|
+
export type PositionY = 'bottom' | 'top';
|
|
7
|
+
export type PositionX = 'right' | 'left' | 'center' | 'fullwidth';
|
|
8
|
+
export type Position = `${PositionY}-${PositionX}` | 'center-center';
|
|
9
|
+
export type GlobalPosition = `${ToastAPrefix<'position'>}-${Position}` | Position;
|
|
10
|
+
export type Type = 'error' | 'info' | 'success' | 'wait' | 'warning';
|
|
11
|
+
export type GlobalType = `${ToastAPrefix<'type'>}-${Type}` | Type;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { EventEmitter, AfterViewInit, ChangeDetectorRef } from '@angular/core';
|
|
2
|
+
import { CmatToastModel } from './models/toast.model';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export declare class CmatToastModalComponent implements AfterViewInit {
|
|
5
|
+
private _ref;
|
|
6
|
+
toast: CmatToastModel;
|
|
7
|
+
closeToastEvent: EventEmitter<number>;
|
|
8
|
+
progressPercent: number;
|
|
9
|
+
timeout: number;
|
|
10
|
+
private _progressInterval;
|
|
11
|
+
private _startTime;
|
|
12
|
+
constructor(_ref: ChangeDetectorRef);
|
|
13
|
+
ngAfterViewInit(): void;
|
|
14
|
+
handleProgress(): void;
|
|
15
|
+
close(toast: CmatToastModel): void;
|
|
16
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CmatToastModalComponent, never>;
|
|
17
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<CmatToastModalComponent, "cmat-toast-modal", ["cmatToastModal"], { "toast": { "alias": "toast"; "required": false; }; }, { "closeToastEvent": "closeToastEvent"; }, never, never, true, never>;
|
|
18
|
+
}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
.toast {
|
|
2
|
+
cursor: pointer;
|
|
3
|
+
margin: 0 0 6px;
|
|
4
|
+
padding: 0;
|
|
5
|
+
width: 285px;
|
|
6
|
+
height: 65px;
|
|
7
|
+
display: table;
|
|
8
|
+
background-size: 24px 24px;
|
|
9
|
+
background-position: 15px center;
|
|
10
|
+
background-repeat: no-repeat;
|
|
11
|
+
box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.25);
|
|
12
|
+
opacity: 0.9;
|
|
13
|
+
position: relative;
|
|
14
|
+
|
|
15
|
+
.close-button {
|
|
16
|
+
padding: 0;
|
|
17
|
+
cursor: pointer;
|
|
18
|
+
background: transparent;
|
|
19
|
+
border: 0;
|
|
20
|
+
appearance: none;
|
|
21
|
+
position: absolute;
|
|
22
|
+
right: 10px;
|
|
23
|
+
top: 3px;
|
|
24
|
+
opacity: 0.5;
|
|
25
|
+
filter: alpha(opacity=50);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.close-button:hover,
|
|
29
|
+
.close-button:focus {
|
|
30
|
+
text-decoration: none;
|
|
31
|
+
cursor: pointer;
|
|
32
|
+
opacity: 1;
|
|
33
|
+
filter: alpha(opacity=100);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.toast-text {
|
|
37
|
+
padding: 5px 20px 5px 60px;
|
|
38
|
+
display: table-cell;
|
|
39
|
+
vertical-align: middle;
|
|
40
|
+
|
|
41
|
+
.toast-title {
|
|
42
|
+
font-weight: bold;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
a:hover,
|
|
46
|
+
label:hover {
|
|
47
|
+
text-decoration: none;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.durationbackground {
|
|
52
|
+
bottom: 0px;
|
|
53
|
+
height: 4px;
|
|
54
|
+
left: 0px;
|
|
55
|
+
position: absolute;
|
|
56
|
+
width: 100%;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.durationbackground .durationbar {
|
|
60
|
+
background-color: #9e9e9e;
|
|
61
|
+
height: 4px;
|
|
62
|
+
width: 0%;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.toast.toasta-theme-material {
|
|
67
|
+
font-size: 12px;
|
|
68
|
+
background-color: #323232;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.toast.toasta-theme-material .close-button:after {
|
|
72
|
+
content: 'x';
|
|
73
|
+
color: #ffffff;
|
|
74
|
+
font-size: 17px;
|
|
75
|
+
font-weight: 300;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.toast.toasta-theme-material .toast-text {
|
|
79
|
+
color: #ffffff;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.toast.toasta-theme-material .toast-text .toast-title {
|
|
83
|
+
text-transform: uppercase;
|
|
84
|
+
font-size: 13px;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
.toast.toasta-theme-material .toast-text a,
|
|
88
|
+
.toast.toasta-theme-material .toast-text label {
|
|
89
|
+
color: #ffffff;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
.toast.toasta-theme-material .toast-text a:hover,
|
|
93
|
+
.toast.toasta-theme-material .toast-text label:hover {
|
|
94
|
+
color: #f2f2f2;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.toast.toasta-theme-material.toasta-type-default {
|
|
98
|
+
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NTc3MiwgMjAxNC8wMS8xMy0xOTo0NDowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RjdGQ0YwNTUzMjJFMTFFNUI4QjZEQkFEN0Q5RUExNzAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RjdGQ0YwNTYzMjJFMTFFNUI4QjZEQkFEN0Q5RUExNzAiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGN0ZDRjA1MzMyMkUxMUU1QjhCNkRCQUQ3RDlFQTE3MCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGN0ZDRjA1NDMyMkUxMUU1QjhCNkRCQUQ3RDlFQTE3MCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PvdUzSUAAADVSURBVHja7NixDcIwFIThGFGDoCYzQM100FAyCEzAGHQMQA0iDGDOElWUYKfiPeW3dE2K6L7YjqOEGGPleUwq5wOAVUCtnJRGiX9O8+1SdxUNHZt4pVyVpbGH/VS2yi03A0eD5dNYKIeSGXgpM6NLPi2neQ5g/WAIvEYBAAAAAAAAAAAAAAAAAAAAAABGB2i8Ay7tC57+zD2UtXL3NgNv5axs2uXTmA682V7Zed3E5soPAZgsXwowW74EYLp8DmC+/C+Ai/J9ADfl+05iPuYAjAnwEWAAlI5MOXu7aeEAAAAASUVORK5CYII=") !important;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.toast.toasta-theme-material.toasta-type-info {
|
|
102
|
+
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NTc3MiwgMjAxNC8wMS8xMy0xOTo0NDowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QTY3QkFBRDYzMjMwMTFFNUI4QjZEQkFEN0Q5RUExNzAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QTY3QkFBRDczMjMwMTFFNUI4QjZEQkFEN0Q5RUExNzAiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpBNjdCQUFENDMyMzAxMUU1QjhCNkRCQUQ3RDlFQTE3MCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpBNjdCQUFENTMyMzAxMUU1QjhCNkRCQUQ3RDlFQTE3MCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pqvvb2MAAAJWSURBVHja7JlBSwJBFMfXKA+FJ70EQlCReM46hnSOQAhKugYdsr5BRPQNsgIhb4YFncRzRMeyD2BUEAhe8iR1sND+Q28hlnV31pndnSUf/JmL7Px/82adN29DvV5PC3KMaAGPIYDfMSr6gNm7V30hFqBlaB6ag+LQBP3sA2pAT9AjdAM9QN3npWmh+UMiLzHMM5M5aJMMOwkGdAGdAKLhKQCMxzAcQltQWDCJHegcOgDIu+sAMJ/FcAzFJG9nZn4PEGVXAGB8DEMe2nb5vSywbQmQb2kAMD+O4Qpa8ejPpQqtA+JTGIBW/hpa9fgfsgKtAeJL9BzI+2BeoznzQhnA6m9gKGv+RhZZuHQMAPNRDHUo6jNAC0oAouV0Cx0Jmg8ZNGhEyQt/BuiEfRE8pIymRep2dtjNmJ3Y/TKwI+GElRlh8mSfAaw+g3oboLZxMwN67TSFLHTtMrAowbxu+K9EI07ebLdQWuHyP80DkFIYIMUDkFAYIMFzI5uUNJnsl9jUm1kGIgpnIPIvuhJthf22eQCaCgM0eQDqCgPUeQBqCgPUeABuFQa45QG4p8JJtWiQN2sAqvZKCgKUjJWo1TlwSpcIVaJDnviulHTzKSoEUOzXP7U6iffpQu33faBFXjRHANQFyCmw+rl+HQnbWoj6MQUfzResekK8xdyu9tvm8zoqNLcmBEC9SdZSr3pons2VteuLcpfT1CXOeLSd2BwZns60aVvFLlT7wOH4QkMTJKEzSYddh56VdGp+oAwYshHMj3wGCD2TwfvMquqdeAgwBHAQPwIMAIRS2XfVn5FFAAAAAElFTkSuQmCC") !important;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.toast.toasta-theme-material.toasta-type-wait {
|
|
106
|
+
background-image: url("data:image/gif;base64,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") !important;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.toast.toasta-theme-material.toasta-type-error {
|
|
110
|
+
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NTc3MiwgMjAxNC8wMS8xMy0xOTo0NDowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QTY3QkFBREEzMjMwMTFFNUI4QjZEQkFEN0Q5RUExNzAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6REZBRTRCMkMzMjMxMTFFNUI4QjZEQkFEN0Q5RUExNzAiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpBNjdCQUFEODMyMzAxMUU1QjhCNkRCQUQ3RDlFQTE3MCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpBNjdCQUFEOTMyMzAxMUU1QjhCNkRCQUQ3RDlFQTE3MCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pu2cWHAAAADmSURBVHja7JlNCsIwEEYTcWsXrvUGBbvqFep59Bz2Il7AXsGd4A103UV7gHQwXQkRGqFJ6PvgC5QUOq+TX0YbY1TKWqnEBQAASwdY/+zNy720F/FRvJk5tl58E5/V8/5yvaSdy2he7qR9iLeBf3IrPgjEe+oQqiMIXo0x1D5zoIpoqFc+AFlEABnLKABB9oH/pL+eDRkAAAAAAAAAAAAWdBYyZAAA7gPcBwBgHyADACQM0EUUZ+cD0EQE0PgAnJQtLoRWO8YyEcBWRArxVdlyz9zqx28XrurM57xCpR4AAAAIqkGAAQAoXCj9X4moZwAAAABJRU5ErkJggg==") !important;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
.toast.toasta-theme-material.toasta-type-success {
|
|
114
|
+
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAYAAADhAJiYAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NTc3MiwgMjAxNC8wMS8xMy0xOTo0NDowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RjdGQ0YwNTEzMjJFMTFFNUI4QjZEQkFEN0Q5RUExNzAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RjdGQ0YwNTIzMjJFMTFFNUI4QjZEQkFEN0Q5RUExNzAiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDoyRDJBQjdENDMyMkIxMUU1QjhCNkRCQUQ3RDlFQTE3MCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGN0ZDRjA1MDMyMkUxMUU1QjhCNkRCQUQ3RDlFQTE3MCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pp4tcFEAAAEgSURBVHja7NjPCcIwFAZwK9LexAE8dBS9WQURPLiBNwfwZLuBUyhebHEBXUVwCi/1C7yClCZN2sQUzIOPGsH4I38eopfnea9L1e91rBzIgRzIdA3aTjC+bVQ/4iNr5MwGr+XF6goxzBU5IQfbW8YwKbKgcYxMbIEKzPzrvQR52ADxMLGNLVPCaLllNZgMiWQxJleoEcYUqDHGBKgVRniG0IFDPPbIDt30LTFXQAe4MYa7QoS5I1v2JRj7v8CItmyFhPSaXdlMgNKG4YKwRUeatKiIUEFpJbVihIcaqLgClRYoemY6MbW3TIAaEmamEyN17TmopwmMdB+qQI1MYJQaYwVKO0a5U5dQCY3t/sgnxNQEhpXn/mxwIAf6N9BHgAEA0JpdHXf3fp4AAAAASUVORK5CYII=") !important;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
.toast.toasta-theme-material.toasta-type-warning {
|
|
118
|
+
background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NTc3MiwgMjAxNC8wMS8xMy0xOTo0NDowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6REZBRTRCMkYzMjMxMTFFNUI4QjZEQkFEN0Q5RUExNzAiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6REZBRTRCMzAzMjMxMTFFNUI4QjZEQkFEN0Q5RUExNzAiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpERkFFNEIyRDMyMzExMUU1QjhCNkRCQUQ3RDlFQTE3MCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpERkFFNEIyRTMyMzExMUU1QjhCNkRCQUQ3RDlFQTE3MCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Po80HzoAAAIcSURBVHja7Fm7agJBFHWX2NhY2doFDAwBIa3kA5La9H7AdtrZWohNPmP62KQLtgEhBCKks7WysRHc3IEr8bGPOztzZ3dhDxzUndGZs2d29p7VC8OwVmZ4lYBKQN4CpEhqfcLXeWyPl2+j4W8YT04dOMP378A9xyA+o4AA2EEGXINwCWgBxyefx3isNAImwObJ5yYeK4WALnAQcXyAbYUW4AFfY37XxzavyAL6wF5Cew/7FFJAAzgl9Jti38IJGALbhH5t7FsoAWpSI43+I6JYZwJ0lwV1uTkRkPXCTLvgHRRzUqgT8Gmwvy+BD1DQHfJywPTmFHfTc+CAFKo8+LVQ42yAt+DC1rUDaQWad0Fq4efAASlUifyFNX+SgFMkDaSywj24sHLlwCxl8ibhh9kBKVRMfCMWdlQHjngGF+Z8AqSo49LpMAlY4VLacy2hgDj5rNCOn3QHpGjhttnUyAa6DihscVvd2HZgojF5E2jFT5oDUnSxZPBrbnDAEmNpLkAKtRQ+bBRemlgAH0FEaLqE+jlMnlzlJjsgharbf2yFjwxYA+/AhV1WB4YGk6fWQkbxM94BKdp49hsGArJso5fYoQtrXQesPj3getoR7YAUPdx5TB5C2XLg+F21Iy3SBZjHRC5Exk+fISZyITJ+njtgLyZy4Sp++poxMW9cxc9/B2gxsQg4i58+Y0zkwln8rP5mrQRUAioB+eJPgAEAEga0oSjgsNgAAAAASUVORK5CYII=") !important;
|
|
119
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { OnInit } from '@angular/core';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { CmatToastService } from './toast.service';
|
|
4
|
+
import { CmatToastModel } from './models/toast.model';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export declare class CmaToastComponent implements OnInit {
|
|
7
|
+
private _cmatToastService;
|
|
8
|
+
toasts$: Observable<CmatToastModel[]>;
|
|
9
|
+
position$: Observable<string>;
|
|
10
|
+
constructor(_cmatToastService: CmatToastService);
|
|
11
|
+
ngOnInit(): void;
|
|
12
|
+
listenForToastEvent(): void;
|
|
13
|
+
clearToast(toastId: any): void;
|
|
14
|
+
trackByFn(index: number, item: CmatToastModel): any;
|
|
15
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CmaToastComponent, never>;
|
|
16
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<CmaToastComponent, "cmat-toast", ["cmatToast"], {}, {}, never, never, true, never>;
|
|
17
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
.toast-wrapper {
|
|
2
|
+
position: fixed;
|
|
3
|
+
z-index: 999999;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.toast-wrapper.toasta-position-top-left {
|
|
7
|
+
top: 12px;
|
|
8
|
+
left: 12px;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.toast-wrapper.toasta-position-top-right {
|
|
12
|
+
top: 12px;
|
|
13
|
+
right: 12px;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.toast-wrapper.toasta-position-bottom-right {
|
|
17
|
+
bottom: 12px;
|
|
18
|
+
right: 12px;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.toast-wrapper.toasta-position-bottom-left {
|
|
22
|
+
bottom: 12px;
|
|
23
|
+
left: 12px;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.toast-wrapper.toasta-position-top-fullwidth {
|
|
27
|
+
top: 12px;
|
|
28
|
+
width: 100%;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.toast-wrapper.toasta-position-bottom-fullwidth {
|
|
32
|
+
bottom: 12px;
|
|
33
|
+
width: 100%;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.toast-wrapper.toasta-position-top-fullwidth .toast,
|
|
37
|
+
.toast-wrapper.toasta-position-bottom-fullwidth .toast {
|
|
38
|
+
width: 96%;
|
|
39
|
+
margin-left: auto;
|
|
40
|
+
margin-right: auto;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.toast-wrapper.toasta-position-top-center {
|
|
44
|
+
top: 12px;
|
|
45
|
+
left: 50%;
|
|
46
|
+
-webkit-transform: translate(-50%, 0%);
|
|
47
|
+
transform: translate(-50%, 0%);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.toast-wrapper.toasta-position-bottom-center {
|
|
51
|
+
bottom: 12px;
|
|
52
|
+
left: 50%;
|
|
53
|
+
-webkit-transform: translate(-50%, 0%);
|
|
54
|
+
transform: translate(-50%, 0%);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.toast-wrapper.toasta-position-center-center {
|
|
58
|
+
top: 50%;
|
|
59
|
+
left: 50%;
|
|
60
|
+
-webkit-transform: translate(-50%, 0%);
|
|
61
|
+
transform: translate(-50%, 0%);
|
|
62
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import { GlobalConfigModel } from './models/global-config.model';
|
|
3
|
+
import { CmatToastModel } from './models/toast.model';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class CmatToastService {
|
|
6
|
+
toasts: CmatToastModel[];
|
|
7
|
+
private _positionSubject;
|
|
8
|
+
private _toastPopSubject;
|
|
9
|
+
private _globalConfigs;
|
|
10
|
+
private _counter;
|
|
11
|
+
get position$(): Observable<string>;
|
|
12
|
+
get toastPop$(): Observable<CmatToastModel[]>;
|
|
13
|
+
receiveGlobalConfigs(configs: GlobalConfigModel): void;
|
|
14
|
+
removeToast(toastId: number): void;
|
|
15
|
+
clearAll(): void;
|
|
16
|
+
clearLast(): void;
|
|
17
|
+
addToast(toast: CmatToastModel): void;
|
|
18
|
+
getGlobalConfigs(): GlobalConfigModel;
|
|
19
|
+
getToasts(): CmatToastModel[];
|
|
20
|
+
private _getDefaultToast;
|
|
21
|
+
private _setGlobalValues;
|
|
22
|
+
private _setPosition;
|
|
23
|
+
private _serveToast;
|
|
24
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CmatToastService, never>;
|
|
25
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<CmatToastService>;
|
|
26
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { OnInit } from '@angular/core';
|
|
2
|
+
import { CdkOverlayOrigin, Overlay, OverlayRef } from '@angular/cdk/overlay';
|
|
3
|
+
import { CdkPortal } from '@angular/cdk/portal';
|
|
4
|
+
import { CmatTransferFilterData, CmatTransferFilterItem } from '../interface';
|
|
5
|
+
import { CmatTransferPickerService } from '../transfer-picker.service';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export declare class CmatTransferPickerFilterComponent implements OnInit {
|
|
8
|
+
private _overlay;
|
|
9
|
+
private _service;
|
|
10
|
+
filters: Array<CmatTransferFilterItem>;
|
|
11
|
+
overlayOrigin: CdkOverlayOrigin;
|
|
12
|
+
filterTemplate: CdkPortal;
|
|
13
|
+
overlayRef: OverlayRef;
|
|
14
|
+
filterData: CmatTransferFilterData;
|
|
15
|
+
constructor(_overlay: Overlay, _service: CmatTransferPickerService);
|
|
16
|
+
ngOnInit(): void;
|
|
17
|
+
toggleFilter(): void;
|
|
18
|
+
onFilterClick(filter: CmatTransferFilterItem): void;
|
|
19
|
+
onConditionChange(event: any): void;
|
|
20
|
+
changeFilterData(): void;
|
|
21
|
+
trackByFn(index: number, item: CmatTransferFilterItem): any;
|
|
22
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CmatTransferPickerFilterComponent, never>;
|
|
23
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<CmatTransferPickerFilterComponent, "cmat-transfer-picker-filter", ["cmatTransferPickerFilter"], { "filters": { "alias": "filters"; "required": false; }; }, {}, never, never, true, never>;
|
|
24
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
.filter-panel {
|
|
2
|
+
min-width: 276px;
|
|
3
|
+
padding: 10px 0;
|
|
4
|
+
|
|
5
|
+
.mat-button-toggle-group {
|
|
6
|
+
font-size: 12px;
|
|
7
|
+
margin-right: 15px;
|
|
8
|
+
margin-bottom: 20px;
|
|
9
|
+
align-self: flex-end;
|
|
10
|
+
|
|
11
|
+
.mat-button-toggle-label-content {
|
|
12
|
+
line-height: 1.8;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.chip-list {
|
|
17
|
+
width: 276px;
|
|
18
|
+
@apply flex flex-row flex-wrap justify-between box-border;
|
|
19
|
+
|
|
20
|
+
&:after {
|
|
21
|
+
content: '';
|
|
22
|
+
@apply flex-1 max-w-1/3;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.chip-wrapper {
|
|
26
|
+
@apply flex-1 box-border max-w-1/3 text-center;
|
|
27
|
+
margin-bottom: 20px;
|
|
28
|
+
|
|
29
|
+
.chip {
|
|
30
|
+
@apply inline-block min-w-1/2 cursor-pointer text-secondary bg-default;
|
|
31
|
+
padding: 5px 10px;
|
|
32
|
+
font-size: 12px;
|
|
33
|
+
|
|
34
|
+
&.selected {
|
|
35
|
+
@apply bg-primary bg-opacity-50;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Node for Transfer item
|
|
3
|
+
*/
|
|
4
|
+
export declare class CmatTransferItemNode {
|
|
5
|
+
[key: string]: any;
|
|
6
|
+
children: Array<CmatTransferItemNode>;
|
|
7
|
+
label: string;
|
|
8
|
+
value: string | number;
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
}
|
|
11
|
+
/** Flat Transfer item node with expandable and level information */
|
|
12
|
+
export declare class CmatTransferItemFlatNode {
|
|
13
|
+
label: string;
|
|
14
|
+
value: string | number;
|
|
15
|
+
level: number;
|
|
16
|
+
disabled?: boolean;
|
|
17
|
+
expandable: boolean;
|
|
18
|
+
}
|
|
19
|
+
export declare enum CmatTransferFilterCondition {
|
|
20
|
+
EQUALS = 0,
|
|
21
|
+
NOT_EQUALS = 1,
|
|
22
|
+
MORE_THAN = 2,
|
|
23
|
+
LESS_THAN = 3
|
|
24
|
+
}
|
|
25
|
+
export interface CmatTransferFilterItem {
|
|
26
|
+
label: string;
|
|
27
|
+
value: number | string;
|
|
28
|
+
condition: Array<CmatTransferFilterCondition>;
|
|
29
|
+
field: string;
|
|
30
|
+
selected?: boolean;
|
|
31
|
+
}
|
|
32
|
+
export interface CmatTransferFilterData {
|
|
33
|
+
condition: 'or' | 'and';
|
|
34
|
+
filters: Array<CmatTransferFilterItem>;
|
|
35
|
+
}
|
|
36
|
+
export interface CmatSourceOptions {
|
|
37
|
+
title: string;
|
|
38
|
+
filterable: boolean;
|
|
39
|
+
searchable: boolean;
|
|
40
|
+
searchPlaceholder: string;
|
|
41
|
+
filters: Array<CmatTransferFilterItem>;
|
|
42
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './filter/filter.component';
|
|
2
|
+
export * from './search/search.component';
|
|
3
|
+
export * from './transfer-picker-source/transfer-picker-source.component';
|
|
4
|
+
export * from './transfer-picker-target/transfer-picker-target.component';
|
|
5
|
+
export * from './transfer-picker.component';
|
|
6
|
+
export * from './interface';
|
|
7
|
+
export * from './transfer-picker.service';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { OnInit } from '@angular/core';
|
|
2
|
+
import { FormControl } from '@angular/forms';
|
|
3
|
+
import { CmatTransferPickerService } from '../transfer-picker.service';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class CmatTransferPickerSearchComponent implements OnInit {
|
|
6
|
+
private _service;
|
|
7
|
+
searchPlaceholder: string;
|
|
8
|
+
keyword: FormControl;
|
|
9
|
+
constructor(_service: CmatTransferPickerService);
|
|
10
|
+
ngOnInit(): void;
|
|
11
|
+
reset(): void;
|
|
12
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CmatTransferPickerSearchComponent, never>;
|
|
13
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<CmatTransferPickerSearchComponent, "cmat-transfer-picker-search", ["cmatTransferPickerSearch"], { "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; }; }, {}, never, never, true, never>;
|
|
14
|
+
}
|
package/components/transfer-picker/transfer-picker-source/transfer-picker-source.component.d.ts
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { AfterViewInit, EventEmitter, OnDestroy, OnInit } from '@angular/core';
|
|
2
|
+
import { SelectionModel } from '@angular/cdk/collections';
|
|
3
|
+
import { FlatTreeControl } from '@angular/cdk/tree';
|
|
4
|
+
import { MatTreeFlatDataSource, MatTreeFlattener } from '@angular/material/tree';
|
|
5
|
+
import { CmatTransferPickerService } from '../transfer-picker.service';
|
|
6
|
+
import { CmatSourceOptions, CmatTransferItemFlatNode, CmatTransferItemNode } from '../interface';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export declare class CmatTransferPickerSourceComponent implements OnInit, AfterViewInit, OnDestroy {
|
|
9
|
+
private _service;
|
|
10
|
+
checklistChange: EventEmitter<any>;
|
|
11
|
+
/** Map from nested node to flattened node. This helps us to keep the same object for selection */
|
|
12
|
+
nestedNodeMap: Map<CmatTransferItemNode, CmatTransferItemFlatNode>;
|
|
13
|
+
treeControl: FlatTreeControl<CmatTransferItemFlatNode>;
|
|
14
|
+
treeFlattener: MatTreeFlattener<CmatTransferItemNode, CmatTransferItemFlatNode>;
|
|
15
|
+
dataSource: MatTreeFlatDataSource<CmatTransferItemNode, CmatTransferItemFlatNode>;
|
|
16
|
+
/** The selection for checklist */
|
|
17
|
+
checklistSelection: SelectionModel<CmatTransferItemFlatNode>;
|
|
18
|
+
options: CmatSourceOptions;
|
|
19
|
+
selectedList: Array<CmatTransferItemFlatNode>;
|
|
20
|
+
private _unsubscribeAll;
|
|
21
|
+
constructor(_service: CmatTransferPickerService);
|
|
22
|
+
ngOnInit(): void;
|
|
23
|
+
ngAfterViewInit(): void;
|
|
24
|
+
ngOnDestroy(): void;
|
|
25
|
+
getSelectedList(): Array<CmatTransferItemFlatNode>;
|
|
26
|
+
resetSelectedItem(item: CmatTransferItemFlatNode): void;
|
|
27
|
+
hasChild: (_: number, _nodeData: CmatTransferItemFlatNode) => boolean;
|
|
28
|
+
/** Whether all the descendants of the node are selected */
|
|
29
|
+
descendantsAllSelected(node: CmatTransferItemFlatNode): boolean;
|
|
30
|
+
/** Whether part of the descendants are selected */
|
|
31
|
+
descendantsPartiallySelected(node: CmatTransferItemFlatNode): boolean;
|
|
32
|
+
/** Toggle the transfer item selection. Select/deselect all the descendants node */
|
|
33
|
+
transferItemSelectionToggle(node: CmatTransferItemFlatNode): void;
|
|
34
|
+
/** Toggle a leaf transfer item selection. Check all the parents to see if they changed */
|
|
35
|
+
transferLeafItemSelectionToggle(node: CmatTransferItemFlatNode): void;
|
|
36
|
+
private _getLevel;
|
|
37
|
+
private _isExpandable;
|
|
38
|
+
private _getChildren;
|
|
39
|
+
/**
|
|
40
|
+
* Transformer to convert nested node to flat node. Record the nodes in maps for later use.
|
|
41
|
+
*/
|
|
42
|
+
private _transformer;
|
|
43
|
+
private _checkAllParentsSelection;
|
|
44
|
+
/** Check root node checked state and change it accordingly */
|
|
45
|
+
private _checkRootNodeSelection;
|
|
46
|
+
private _getParentNode;
|
|
47
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<CmatTransferPickerSourceComponent, never>;
|
|
48
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<CmatTransferPickerSourceComponent, "cmat-transfer-picker-source", ["cmatTransferPickerSource"], {}, { "checklistChange": "checklistChange"; }, never, never, true, never>;
|
|
49
|
+
}
|
package/components/transfer-picker/transfer-picker-source/transfer-picker-source.component.scss
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
.transfer-picker-source {
|
|
2
|
+
@apply h-full p-0 shadow;
|
|
3
|
+
width: 276px;
|
|
4
|
+
|
|
5
|
+
.mat-mdc-card-header {
|
|
6
|
+
@apply flex flex-row flex-nowrap box-border place-content-between items-start;
|
|
7
|
+
|
|
8
|
+
margin-bottom: -8px;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
&-title {
|
|
12
|
+
@apply text-lg mb-0;
|
|
13
|
+
padding: 12px 0;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
&-scroll-wrapper {
|
|
17
|
+
height: 300px;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
&-empty {
|
|
21
|
+
@apply text-center text-lg;
|
|
22
|
+
margin-top: 20px;
|
|
23
|
+
color: rgba(0, 0, 0, 0.25);
|
|
24
|
+
}
|
|
25
|
+
}
|