cmat 0.0.16 → 0.0.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/carousel/carousel.component.d.ts +136 -0
- package/components/carousel/carousel.interface.d.ts +38 -0
- package/components/carousel/index.d.ts +5 -0
- package/components/carousel/public-api.d.ts +2 -0
- package/components/custom-formly/public-api.d.ts +1 -0
- package/components/custom-formly/types/knob/knob.component.d.ts +36 -0
- package/components/custom-formly/types/table/table.component.d.ts +3 -8
- package/components/custom-formly/wrappers/form-field/form-field.component.d.ts +4 -4
- package/components/image-viewer/image-viewer.component.d.ts +76 -0
- package/components/image-viewer/index.d.ts +5 -0
- package/components/image-viewer/public-api.d.ts +1 -0
- package/components/knob-input/index.d.ts +5 -0
- package/components/knob-input/knob-input.component.d.ts +95 -0
- package/components/knob-input/public-api.d.ts +1 -0
- package/components/material-datetimepicker/datetimepicker-input.d.ts +2 -2
- package/components/opt-input/index.d.ts +5 -0
- package/components/opt-input/models/config.d.ts +14 -0
- package/components/opt-input/otp-input.component.d.ts +70 -0
- package/components/opt-input/public-api.d.ts +1 -0
- package/components/opt-input/utils/keyboard-util.d.ts +9 -0
- package/components/opt-input/utils/object-util.d.ts +3 -0
- package/components/org-chart/designer/chart-designer.component.d.ts +17 -0
- package/components/org-chart/index.d.ts +5 -0
- package/components/org-chart/node/chart-node.component.d.ts +17 -0
- package/components/org-chart/node/node.type.d.ts +22 -0
- package/components/org-chart/org-chart.component.d.ts +12 -0
- package/components/org-chart/public-api.d.ts +2 -0
- package/components/popover/popover.interfaces.d.ts +1 -1
- package/components/select-search/select-search.component.d.ts +2 -1
- package/components/select-table/index.d.ts +5 -0
- package/components/select-table/public-api.d.ts +2 -0
- package/components/select-table/select-table.component.d.ts +96 -0
- package/components/select-table/select-table.type.d.ts +20 -0
- package/components/select-tree/select-tree.component.d.ts +11 -12
- package/components/speed-dial/index.d.ts +5 -0
- package/components/speed-dial/public-api.d.ts +2 -0
- package/components/speed-dial/speed-dial.component.d.ts +63 -0
- package/components/transfer-picker/interface.d.ts +0 -1
- package/components/transfer-picker/transfer-picker-source/transfer-picker-source.component.d.ts +8 -6
- package/components/treetable/index.d.ts +5 -0
- package/components/treetable/public-api.d.ts +2 -0
- package/components/treetable/treetable.component.d.ts +32 -0
- package/components/treetable/treetable.interface.d.ts +9 -0
- package/directives/animate-on-scroll/animate-on-scroll.directive.d.ts +4 -4
- package/directives/arrow-cursor/arrow-cursor.directive.d.ts +31 -0
- package/directives/arrow-cursor/index.d.ts +5 -0
- package/directives/arrow-cursor/public-api.d.ts +1 -0
- package/directives/data-exporter/constants.d.ts +26 -0
- package/directives/data-exporter/data-exporter.directive.d.ts +18 -0
- package/directives/data-exporter/index.d.ts +5 -0
- package/directives/data-exporter/mime.d.ts +5 -0
- package/directives/data-exporter/options.d.ts +21 -0
- package/directives/data-exporter/public-api.d.ts +2 -0
- package/directives/data-exporter/services/exporters/csv-exporter.service.d.ts +12 -0
- package/directives/data-exporter/services/exporters/exporter.d.ts +4 -0
- package/directives/data-exporter/services/exporters/file-exporter.d.ts +8 -0
- package/directives/data-exporter/services/exporters/json-exporter.service.d.ts +11 -0
- package/directives/data-exporter/services/exporters/txt-exporter.service.d.ts +12 -0
- package/directives/data-exporter/services/exporters/worksheet-exporter.d.ts +10 -0
- package/directives/data-exporter/services/exporters/xls-exporter.service.d.ts +14 -0
- package/directives/data-exporter/services/exporters/xlsx-exporter.service.d.ts +9 -0
- package/directives/data-exporter/services/file-util.d.ts +8 -0
- package/directives/data-exporter/services/service-locator.service.d.ts +11 -0
- package/directives/debounce/abstract-debounce.directive.d.ts +1 -1
- package/fesm2022/cmat-animations.mjs.map +1 -1
- package/fesm2022/cmat-components-adapter.mjs +9 -9
- package/fesm2022/cmat-components-adapter.mjs.map +1 -1
- package/fesm2022/cmat-components-breadcrumb.mjs +10 -10
- package/fesm2022/cmat-components-breadcrumb.mjs.map +1 -1
- package/fesm2022/cmat-components-card.mjs +4 -4
- package/fesm2022/cmat-components-card.mjs.map +1 -1
- package/fesm2022/cmat-components-carousel.mjs +711 -0
- package/fesm2022/cmat-components-carousel.mjs.map +1 -0
- package/fesm2022/cmat-components-cascade.mjs +12 -12
- package/fesm2022/cmat-components-cascade.mjs.map +1 -1
- package/fesm2022/cmat-components-chip-input.mjs +5 -5
- package/fesm2022/cmat-components-chip-input.mjs.map +1 -1
- package/fesm2022/cmat-components-custom-formly.mjs +168 -155
- package/fesm2022/cmat-components-custom-formly.mjs.map +1 -1
- package/fesm2022/cmat-components-date-range.mjs +5 -5
- package/fesm2022/cmat-components-date-range.mjs.map +1 -1
- package/fesm2022/cmat-components-drawer.mjs +6 -6
- package/fesm2022/cmat-components-drawer.mjs.map +1 -1
- package/fesm2022/cmat-components-fullscreen.mjs +4 -4
- package/fesm2022/cmat-components-fullscreen.mjs.map +1 -1
- package/fesm2022/cmat-components-highlight.mjs +7 -7
- package/fesm2022/cmat-components-highlight.mjs.map +1 -1
- package/fesm2022/cmat-components-image-viewer.mjs +227 -0
- package/fesm2022/cmat-components-image-viewer.mjs.map +1 -0
- package/fesm2022/cmat-components-json-editor.mjs +4 -4
- package/fesm2022/cmat-components-json-editor.mjs.map +1 -1
- package/fesm2022/cmat-components-knob-input.mjs +404 -0
- package/fesm2022/cmat-components-knob-input.mjs.map +1 -0
- package/fesm2022/cmat-components-masonry.mjs +4 -4
- package/fesm2022/cmat-components-masonry.mjs.map +1 -1
- package/fesm2022/cmat-components-material-color-picker.mjs +4 -4
- package/fesm2022/cmat-components-material-color-picker.mjs.map +1 -1
- package/fesm2022/cmat-components-material-datetimepicker.mjs +53 -53
- package/fesm2022/cmat-components-material-datetimepicker.mjs.map +1 -1
- package/fesm2022/cmat-components-navigation.mjs +51 -51
- package/fesm2022/cmat-components-navigation.mjs.map +1 -1
- package/fesm2022/cmat-components-opt-input.mjs +457 -0
- package/fesm2022/cmat-components-opt-input.mjs.map +1 -0
- package/fesm2022/cmat-components-org-chart.mjs +141 -0
- package/fesm2022/cmat-components-org-chart.mjs.map +1 -0
- package/fesm2022/cmat-components-pagination.mjs +13 -13
- package/fesm2022/cmat-components-pagination.mjs.map +1 -1
- package/fesm2022/cmat-components-password-strength.mjs +12 -12
- package/fesm2022/cmat-components-password-strength.mjs.map +1 -1
- package/fesm2022/cmat-components-popover.mjs +10 -10
- package/fesm2022/cmat-components-popover.mjs.map +1 -1
- package/fesm2022/cmat-components-progress-bar.mjs +4 -4
- package/fesm2022/cmat-components-progress-bar.mjs.map +1 -1
- package/fesm2022/cmat-components-rating.mjs +4 -4
- package/fesm2022/cmat-components-rating.mjs.map +1 -1
- package/fesm2022/cmat-components-select-search.mjs +11 -11
- package/fesm2022/cmat-components-select-search.mjs.map +1 -1
- package/fesm2022/cmat-components-select-table.mjs +658 -0
- package/fesm2022/cmat-components-select-table.mjs.map +1 -0
- package/fesm2022/cmat-components-select-tree.mjs +75 -57
- package/fesm2022/cmat-components-select-tree.mjs.map +1 -1
- package/fesm2022/cmat-components-speed-dial.mjs +312 -0
- package/fesm2022/cmat-components-speed-dial.mjs.map +1 -0
- package/fesm2022/cmat-components-timeline.mjs +14 -14
- package/fesm2022/cmat-components-timeline.mjs.map +1 -1
- package/fesm2022/cmat-components-toast.mjs +11 -11
- package/fesm2022/cmat-components-toast.mjs.map +1 -1
- package/fesm2022/cmat-components-transfer-picker.mjs +60 -41
- package/fesm2022/cmat-components-transfer-picker.mjs.map +1 -1
- package/fesm2022/cmat-components-treetable.mjs +122 -0
- package/fesm2022/cmat-components-treetable.mjs.map +1 -0
- package/fesm2022/cmat-components-upload.mjs +11 -11
- package/fesm2022/cmat-components-upload.mjs.map +1 -1
- package/fesm2022/cmat-directives-animate-on-scroll.mjs +21 -21
- package/fesm2022/cmat-directives-animate-on-scroll.mjs.map +1 -1
- package/fesm2022/cmat-directives-arrow-cursor.mjs +184 -0
- package/fesm2022/cmat-directives-arrow-cursor.mjs.map +1 -0
- package/fesm2022/cmat-directives-autofocus.mjs +3 -3
- package/fesm2022/cmat-directives-autofocus.mjs.map +1 -1
- package/fesm2022/cmat-directives-data-exporter.mjs +324 -0
- package/fesm2022/cmat-directives-data-exporter.mjs.map +1 -0
- package/fesm2022/cmat-directives-debounce.mjs +9 -9
- package/fesm2022/cmat-directives-debounce.mjs.map +1 -1
- package/fesm2022/cmat-directives-digit-only.mjs +8 -6
- package/fesm2022/cmat-directives-digit-only.mjs.map +1 -1
- package/fesm2022/cmat-directives-equal-validator.mjs +3 -3
- package/fesm2022/cmat-directives-equal-validator.mjs.map +1 -1
- package/fesm2022/cmat-lib-mock-api.mjs +6 -6
- package/fesm2022/cmat-lib-mock-api.mjs.map +1 -1
- package/fesm2022/cmat-pipes-bytes.mjs +3 -3
- package/fesm2022/cmat-pipes-bytes.mjs.map +1 -1
- package/fesm2022/cmat-pipes-date-format.mjs +3 -3
- package/fesm2022/cmat-pipes-date-format.mjs.map +1 -1
- package/fesm2022/cmat-pipes-find-by-key.mjs +3 -3
- package/fesm2022/cmat-pipes-find-by-key.mjs.map +1 -1
- package/fesm2022/cmat-pipes-group-by.mjs +3 -3
- package/fesm2022/cmat-pipes-group-by.mjs.map +1 -1
- package/fesm2022/cmat-pipes-keys.mjs +3 -3
- package/fesm2022/cmat-pipes-keys.mjs.map +1 -1
- package/fesm2022/cmat-pipes-secure.mjs +3 -3
- package/fesm2022/cmat-pipes-secure.mjs.map +1 -1
- package/fesm2022/cmat-pipes-uppercase.mjs +3 -3
- package/fesm2022/cmat-pipes-uppercase.mjs.map +1 -1
- package/fesm2022/cmat-services-alert.mjs +3 -3
- package/fesm2022/cmat-services-alert.mjs.map +1 -1
- package/fesm2022/cmat-services-config.mjs +6 -6
- package/fesm2022/cmat-services-config.mjs.map +1 -1
- package/fesm2022/cmat-services-confirmation.mjs +7 -7
- package/fesm2022/cmat-services-confirmation.mjs.map +1 -1
- package/fesm2022/cmat-services-data.mjs +5 -5
- package/fesm2022/cmat-services-data.mjs.map +1 -1
- package/fesm2022/cmat-services-export-as.mjs +211 -0
- package/fesm2022/cmat-services-export-as.mjs.map +1 -0
- package/fesm2022/cmat-services-loading.mjs +6 -6
- package/fesm2022/cmat-services-loading.mjs.map +1 -1
- package/fesm2022/cmat-services-local-storage.mjs +3 -3
- package/fesm2022/cmat-services-local-storage.mjs.map +1 -1
- package/fesm2022/cmat-services-media-watcher.mjs +3 -3
- package/fesm2022/cmat-services-media-watcher.mjs.map +1 -1
- package/fesm2022/cmat-services-platform.mjs +3 -3
- package/fesm2022/cmat-services-platform.mjs.map +1 -1
- package/fesm2022/cmat-services-splash-screen.mjs +3 -3
- package/fesm2022/cmat-services-splash-screen.mjs.map +1 -1
- package/fesm2022/cmat-services-title.mjs +3 -3
- package/fesm2022/cmat-services-title.mjs.map +1 -1
- package/fesm2022/cmat-services-translation.mjs +3 -3
- package/fesm2022/cmat-services-translation.mjs.map +1 -1
- package/fesm2022/cmat-services-utils.mjs +35 -3
- package/fesm2022/cmat-services-utils.mjs.map +1 -1
- package/fesm2022/cmat-validators.mjs.map +1 -1
- package/fesm2022/cmat-version.mjs.map +1 -1
- package/icons/arrow-cursor.svg +1 -1
- package/package.json +81 -147
- package/services/data/data.service.d.ts +1 -1
- package/services/export-as/export-as-config.model.d.ts +8 -0
- package/services/export-as/export-as.service.d.ts +43 -0
- package/services/export-as/index.d.ts +5 -0
- package/services/export-as/public-api.d.ts +2 -0
- package/services/utils/utils.service.d.ts +4 -0
- package/styles/overrides/angular-material.scss +95 -13
- package/esm2022/animations/cmat-animations.mjs +0 -5
- package/esm2022/animations/defaults.mjs +0 -12
- package/esm2022/animations/dropdown.mjs +0 -26
- package/esm2022/animations/expand-collapse.mjs +0 -17
- package/esm2022/animations/fade.mjs +0 -170
- package/esm2022/animations/public-api.mjs +0 -19
- package/esm2022/animations/shake.mjs +0 -59
- package/esm2022/animations/slide.mjs +0 -124
- package/esm2022/animations/transform.mjs +0 -16
- package/esm2022/animations/zoom.mjs +0 -38
- package/esm2022/cmat.mjs +0 -5
- package/esm2022/components/adapter/cmat-components-adapter.mjs +0 -5
- package/esm2022/components/adapter/datetime-adapter.mjs +0 -127
- package/esm2022/components/adapter/datetime-formats.mjs +0 -3
- package/esm2022/components/adapter/dayjs-date-adapter.mjs +0 -198
- package/esm2022/components/adapter/dayjs-date-formats.mjs +0 -12
- package/esm2022/components/adapter/dayjs-datetime-adapter.mjs +0 -100
- package/esm2022/components/adapter/dayjs-datetime-formats.mjs +0 -21
- package/esm2022/components/adapter/native-datetime-adapter.mjs +0 -130
- package/esm2022/components/adapter/native-datetime-formats.mjs +0 -15
- package/esm2022/components/adapter/public-api.mjs +0 -9
- package/esm2022/components/breadcrumb/breadcrumb-item.directive.mjs +0 -19
- package/esm2022/components/breadcrumb/breadcrumb.component.mjs +0 -94
- package/esm2022/components/breadcrumb/breadcrumb.service.mjs +0 -333
- package/esm2022/components/breadcrumb/cmat-components-breadcrumb.mjs +0 -5
- package/esm2022/components/breadcrumb/public-api.mjs +0 -6
- package/esm2022/components/breadcrumb/types/breadcrumb.config.mjs +0 -2
- package/esm2022/components/breadcrumb/types/breadcrumb.mjs +0 -2
- package/esm2022/components/card/card.component.mjs +0 -49
- package/esm2022/components/card/card.types.mjs +0 -2
- package/esm2022/components/card/cmat-components-card.mjs +0 -5
- package/esm2022/components/card/public-api.mjs +0 -3
- package/esm2022/components/cascade/cascade-bottom-sheet/cascade-bottom-sheet.component.mjs +0 -49
- package/esm2022/components/cascade/cascade-list/cascade-list.component.mjs +0 -384
- package/esm2022/components/cascade/cascade-menu/cascade-menu.component.mjs +0 -22
- package/esm2022/components/cascade/cmat-components-cascade.mjs +0 -5
- package/esm2022/components/cascade/options.interface.mjs +0 -2
- package/esm2022/components/cascade/public-api.mjs +0 -4
- package/esm2022/components/chip-input/chip-input.component.mjs +0 -251
- package/esm2022/components/chip-input/cmat-components-chip-input.mjs +0 -5
- package/esm2022/components/chip-input/public-api.mjs +0 -2
- package/esm2022/components/custom-formly/cmat-components-custom-formly.mjs +0 -5
- package/esm2022/components/custom-formly/extension/addons.extension.mjs +0 -13
- package/esm2022/components/custom-formly/public-api.mjs +0 -29
- package/esm2022/components/custom-formly/types/button/button.component.mjs +0 -81
- package/esm2022/components/custom-formly/types/cascade/cascade.component.mjs +0 -71
- package/esm2022/components/custom-formly/types/checklist/checklist.component.mjs +0 -161
- package/esm2022/components/custom-formly/types/chips/chips.component.mjs +0 -55
- package/esm2022/components/custom-formly/types/color-picker/color-picker.component.mjs +0 -15
- package/esm2022/components/custom-formly/types/date-range/date-range.component.mjs +0 -25
- package/esm2022/components/custom-formly/types/datepicker/datepicker.component.mjs +0 -51
- package/esm2022/components/custom-formly/types/multicheckbox/multicheckbox.component.mjs +0 -88
- package/esm2022/components/custom-formly/types/number/number.component.mjs +0 -27
- package/esm2022/components/custom-formly/types/quill/quill.component.mjs +0 -171
- package/esm2022/components/custom-formly/types/radio/radio.component.mjs +0 -87
- package/esm2022/components/custom-formly/types/rating/rating.component.mjs +0 -27
- package/esm2022/components/custom-formly/types/repeat/repeat.component.mjs +0 -25
- package/esm2022/components/custom-formly/types/select/select.component.mjs +0 -167
- package/esm2022/components/custom-formly/types/select-tree/select-tree.component.mjs +0 -66
- package/esm2022/components/custom-formly/types/stepper/horizontal/stepper.component.mjs +0 -28
- package/esm2022/components/custom-formly/types/stepper/stepper.type.mjs +0 -2
- package/esm2022/components/custom-formly/types/stepper/vertical/stepper.component.mjs +0 -28
- package/esm2022/components/custom-formly/types/table/table.component.mjs +0 -127
- package/esm2022/components/custom-formly/types/tabs/tab.component.mjs +0 -16
- package/esm2022/components/custom-formly/types/tags/tags.component.mjs +0 -146
- package/esm2022/components/custom-formly/types/textarea/textarea.component.mjs +0 -25
- package/esm2022/components/custom-formly/types/upload/upload.component.mjs +0 -58
- package/esm2022/components/custom-formly/wrappers/addons/addons.component.mjs +0 -92
- package/esm2022/components/custom-formly/wrappers/card/card.component.mjs +0 -14
- package/esm2022/components/custom-formly/wrappers/expansion/expansion.component.mjs +0 -14
- package/esm2022/components/custom-formly/wrappers/form-field/form-field.component.mjs +0 -47
- package/esm2022/components/custom-formly/wrappers/panel/panel.component.mjs +0 -12
- package/esm2022/components/date-range/cmat-components-date-range.mjs +0 -5
- package/esm2022/components/date-range/date-range.component.mjs +0 -558
- package/esm2022/components/date-range/public-api.mjs +0 -2
- package/esm2022/components/drawer/cmat-components-drawer.mjs +0 -5
- package/esm2022/components/drawer/drawer.component.mjs +0 -301
- package/esm2022/components/drawer/drawer.service.mjs +0 -41
- package/esm2022/components/drawer/drawer.types.mjs +0 -2
- package/esm2022/components/drawer/public-api.mjs +0 -4
- package/esm2022/components/fullscreen/cmat-components-fullscreen.mjs +0 -5
- package/esm2022/components/fullscreen/fullscreen.component.mjs +0 -44
- package/esm2022/components/fullscreen/public-api.mjs +0 -2
- package/esm2022/components/highlight/cmat-components-highlight.mjs +0 -5
- package/esm2022/components/highlight/highlight.component.mjs +0 -80
- package/esm2022/components/highlight/highlight.service.mjs +0 -47
- package/esm2022/components/highlight/public-api.mjs +0 -3
- package/esm2022/components/json-editor/cmat-components-json-editor.mjs +0 -5
- package/esm2022/components/json-editor/json-editor.component.mjs +0 -176
- package/esm2022/components/json-editor/public-api.mjs +0 -2
- package/esm2022/components/masonry/cmat-components-masonry.mjs +0 -5
- package/esm2022/components/masonry/masonry.component.mjs +0 -54
- package/esm2022/components/masonry/public-api.mjs +0 -2
- package/esm2022/components/material-color-picker/base-color.mjs +0 -13
- package/esm2022/components/material-color-picker/cmat-components-material-color-picker.mjs +0 -5
- package/esm2022/components/material-color-picker/material-color-picker.component.mjs +0 -147
- package/esm2022/components/material-color-picker/public-api.mjs +0 -3
- package/esm2022/components/material-color-picker/selected-color.mjs +0 -3
- package/esm2022/components/material-datetimepicker/calendar-body.mjs +0 -76
- package/esm2022/components/material-datetimepicker/calendar.mjs +0 -670
- package/esm2022/components/material-datetimepicker/clock.mjs +0 -290
- package/esm2022/components/material-datetimepicker/cmat-components-material-datetimepicker.mjs +0 -5
- package/esm2022/components/material-datetimepicker/datetimepicker-animations.mjs +0 -34
- package/esm2022/components/material-datetimepicker/datetimepicker-errors.mjs +0 -6
- package/esm2022/components/material-datetimepicker/datetimepicker-filtertype.mjs +0 -8
- package/esm2022/components/material-datetimepicker/datetimepicker-input.mjs +0 -341
- package/esm2022/components/material-datetimepicker/datetimepicker-intl.mjs +0 -63
- package/esm2022/components/material-datetimepicker/datetimepicker-toggle.mjs +0 -87
- package/esm2022/components/material-datetimepicker/datetimepicker-types.mjs +0 -2
- package/esm2022/components/material-datetimepicker/datetimepicker.mjs +0 -531
- package/esm2022/components/material-datetimepicker/month-view.mjs +0 -141
- package/esm2022/components/material-datetimepicker/multi-year-view.mjs +0 -197
- package/esm2022/components/material-datetimepicker/public-api.mjs +0 -11
- package/esm2022/components/material-datetimepicker/time.mjs +0 -455
- package/esm2022/components/material-datetimepicker/year-view.mjs +0 -124
- package/esm2022/components/navigation/cmat-components-navigation.mjs +0 -5
- package/esm2022/components/navigation/horizontal/components/basic/basic.component.mjs +0 -70
- package/esm2022/components/navigation/horizontal/components/branch/branch.component.mjs +0 -82
- package/esm2022/components/navigation/horizontal/components/divider/divider.component.mjs +0 -47
- package/esm2022/components/navigation/horizontal/components/spacer/spacer.component.mjs +0 -47
- package/esm2022/components/navigation/horizontal/horizontal.component.mjs +0 -87
- package/esm2022/components/navigation/navigation.service.mjs +0 -140
- package/esm2022/components/navigation/navigation.types.mjs +0 -3
- package/esm2022/components/navigation/public-api.mjs +0 -5
- package/esm2022/components/navigation/vertical/components/aside/aside.component.mjs +0 -162
- package/esm2022/components/navigation/vertical/components/basic/basic.component.mjs +0 -60
- package/esm2022/components/navigation/vertical/components/collapsable/collapsable.component.mjs +0 -277
- package/esm2022/components/navigation/vertical/components/divider/divider.component.mjs +0 -56
- package/esm2022/components/navigation/vertical/components/group/group.component.mjs +0 -78
- package/esm2022/components/navigation/vertical/components/spacer/spacer.component.mjs +0 -56
- package/esm2022/components/navigation/vertical/vertical.component.mjs +0 -584
- package/esm2022/components/pagination/cmat-components-pagination.mjs +0 -5
- package/esm2022/components/pagination/pagination.component.mjs +0 -67
- package/esm2022/components/pagination/pagination.directive.mjs +0 -197
- package/esm2022/components/pagination/pagination.instance.mjs +0 -2
- package/esm2022/components/pagination/pagination.pipe.mjs +0 -100
- package/esm2022/components/pagination/pagination.service.mjs +0 -90
- package/esm2022/components/pagination/public-api.mjs +0 -6
- package/esm2022/components/password-strength/animations/index.mjs +0 -48
- package/esm2022/components/password-strength/cmat-components-password-strength.mjs +0 -5
- package/esm2022/components/password-strength/enum.mjs +0 -17
- package/esm2022/components/password-strength/mat-pass-toggle-visibility/mat-pass-toggle-visibility.component.mjs +0 -27
- package/esm2022/components/password-strength/mat-password-strength/mat-password-strength.component.mjs +0 -206
- package/esm2022/components/password-strength/mat-password-strength-info/mat-password-strength-info.component.mjs +0 -150
- package/esm2022/components/password-strength/mat-password-strength-validator.mjs +0 -36
- package/esm2022/components/password-strength/public-api.mjs +0 -4
- package/esm2022/components/password-strength/regexp.class.mjs +0 -8
- package/esm2022/components/popover/cmat-components-popover.mjs +0 -5
- package/esm2022/components/popover/popover-trigger.mjs +0 -442
- package/esm2022/components/popover/popover.component.mjs +0 -348
- package/esm2022/components/popover/popover.errors.mjs +0 -27
- package/esm2022/components/popover/popover.interfaces.mjs +0 -2
- package/esm2022/components/popover/popover.target.mjs +0 -18
- package/esm2022/components/popover/popover.type.mjs +0 -2
- package/esm2022/components/popover/public-api.mjs +0 -5
- package/esm2022/components/progress-bar/cmat-components-progress-bar.mjs +0 -5
- package/esm2022/components/progress-bar/progress-bar.component.mjs +0 -58
- package/esm2022/components/progress-bar/public-api.mjs +0 -2
- package/esm2022/components/rating/cmat-components-rating.mjs +0 -5
- package/esm2022/components/rating/public-api.mjs +0 -2
- package/esm2022/components/rating/rating.component.mjs +0 -202
- package/esm2022/components/select-search/cmat-components-select-search.mjs +0 -5
- package/esm2022/components/select-search/default-options.mjs +0 -16
- package/esm2022/components/select-search/public-api.mjs +0 -3
- package/esm2022/components/select-search/select-no-entries-found.directive.mjs +0 -14
- package/esm2022/components/select-search/select-search-clear.directive.mjs +0 -14
- package/esm2022/components/select-search/select-search.component.mjs +0 -485
- package/esm2022/components/select-tree/cmat-components-select-tree.mjs +0 -5
- package/esm2022/components/select-tree/public-api.mjs +0 -4
- package/esm2022/components/select-tree/select-tree.component.mjs +0 -565
- package/esm2022/components/select-tree/select-tree.flatnode.mjs +0 -3
- package/esm2022/components/select-tree/select-tree.node.mjs +0 -3
- package/esm2022/components/timeline/cmat-components-timeline.mjs +0 -5
- package/esm2022/components/timeline/public-api.mjs +0 -3
- package/esm2022/components/timeline/timeline-item/timeline-item.component.mjs +0 -70
- package/esm2022/components/timeline/timeline.component.mjs +0 -107
- package/esm2022/components/toast/cmat-components-toast.mjs +0 -5
- package/esm2022/components/toast/models/global-config.model.mjs +0 -2
- package/esm2022/components/toast/models/toast.model.mjs +0 -2
- package/esm2022/components/toast/models/type.model.mjs +0 -2
- package/esm2022/components/toast/public-api.mjs +0 -7
- package/esm2022/components/toast/toast-modal.component.mjs +0 -53
- package/esm2022/components/toast/toast.component.mjs +0 -30
- package/esm2022/components/toast/toast.service.mjs +0 -122
- package/esm2022/components/transfer-picker/cmat-components-transfer-picker.mjs +0 -5
- package/esm2022/components/transfer-picker/filter/filter.component.mjs +0 -91
- package/esm2022/components/transfer-picker/interface.mjs +0 -17
- package/esm2022/components/transfer-picker/public-api.mjs +0 -8
- package/esm2022/components/transfer-picker/search/search.component.mjs +0 -38
- package/esm2022/components/transfer-picker/transfer-picker-source/transfer-picker-source.component.mjs +0 -201
- package/esm2022/components/transfer-picker/transfer-picker-target/transfer-picker-target.component.mjs +0 -32
- package/esm2022/components/transfer-picker/transfer-picker.component.mjs +0 -84
- package/esm2022/components/transfer-picker/transfer-picker.service.mjs +0 -137
- package/esm2022/components/upload/cmat-components-upload.mjs +0 -5
- package/esm2022/components/upload/files.type.mjs +0 -2
- package/esm2022/components/upload/files.util.service.mjs +0 -89
- package/esm2022/components/upload/public-api.mjs +0 -5
- package/esm2022/components/upload/upload-queue/upload-queue.component.mjs +0 -155
- package/esm2022/components/upload/upload.component.mjs +0 -118
- package/esm2022/directives/animate-on-scroll/animate-on-scroll.directive.mjs +0 -126
- package/esm2022/directives/animate-on-scroll/cmat-directives-animate-on-scroll.mjs +0 -5
- package/esm2022/directives/animate-on-scroll/public-api.mjs +0 -2
- package/esm2022/directives/animate-on-scroll/scroll.service.mjs +0 -38
- package/esm2022/directives/autofocus/autofocus.directive.mjs +0 -20
- package/esm2022/directives/autofocus/cmat-directives-autofocus.mjs +0 -5
- package/esm2022/directives/autofocus/public-api.mjs +0 -2
- package/esm2022/directives/debounce/abstract-debounce.directive.mjs +0 -34
- package/esm2022/directives/debounce/cmat-directives-debounce.mjs +0 -5
- package/esm2022/directives/debounce/debounce-click.directive.mjs +0 -25
- package/esm2022/directives/debounce/debounce-keyup.directive.mjs +0 -25
- package/esm2022/directives/debounce/public-api.mjs +0 -3
- package/esm2022/directives/digit-only/cmat-directives-digit-only.mjs +0 -5
- package/esm2022/directives/digit-only/digit-only.directive.mjs +0 -298
- package/esm2022/directives/digit-only/mask.directive.mjs +0 -84
- package/esm2022/directives/digit-only/public-api.mjs +0 -3
- package/esm2022/directives/equal-validator/cmat-directives-equal-validator.mjs +0 -5
- package/esm2022/directives/equal-validator/equal-validator.directive.mjs +0 -54
- package/esm2022/directives/equal-validator/public-api.mjs +0 -2
- package/esm2022/lib/mock-api/cmat-lib-mock-api.mjs +0 -5
- package/esm2022/lib/mock-api/mock-api.constants.mjs +0 -3
- package/esm2022/lib/mock-api/mock-api.interceptor.mjs +0 -73
- package/esm2022/lib/mock-api/mock-api.request-handler.mjs +0 -48
- package/esm2022/lib/mock-api/mock-api.service.mjs +0 -93
- package/esm2022/lib/mock-api/mock-api.types.mjs +0 -2
- package/esm2022/lib/mock-api/mock-api.utils.mjs +0 -16
- package/esm2022/lib/mock-api/public-api.mjs +0 -6
- package/esm2022/pipes/bytes/bytes.pipe.mjs +0 -25
- package/esm2022/pipes/bytes/cmat-pipes-bytes.mjs +0 -5
- package/esm2022/pipes/bytes/public-api.mjs +0 -2
- package/esm2022/pipes/date-format/cmat-pipes-date-format.mjs +0 -5
- package/esm2022/pipes/date-format/date-format.pipe.mjs +0 -20
- package/esm2022/pipes/date-format/public-api.mjs +0 -2
- package/esm2022/pipes/find-by-key/cmat-pipes-find-by-key.mjs +0 -5
- package/esm2022/pipes/find-by-key/find-by-key.pipe.mjs +0 -23
- package/esm2022/pipes/find-by-key/public-api.mjs +0 -2
- package/esm2022/pipes/group-by/cmat-pipes-group-by.mjs +0 -5
- package/esm2022/pipes/group-by/group-by.pipe.mjs +0 -29
- package/esm2022/pipes/group-by/public-api.mjs +0 -2
- package/esm2022/pipes/keys/cmat-pipes-keys.mjs +0 -5
- package/esm2022/pipes/keys/keys.pipe.mjs +0 -26
- package/esm2022/pipes/keys/public-api.mjs +0 -2
- package/esm2022/pipes/secure/cmat-pipes-secure.mjs +0 -5
- package/esm2022/pipes/secure/public-api.mjs +0 -2
- package/esm2022/pipes/secure/secure-pipe.mjs +0 -46
- package/esm2022/pipes/uppercase/cmat-pipes-uppercase.mjs +0 -5
- package/esm2022/pipes/uppercase/public-api.mjs +0 -2
- package/esm2022/pipes/uppercase/uppercase.pipe.mjs +0 -17
- package/esm2022/public-api.mjs +0 -2
- package/esm2022/services/alert/alert.dialog.mjs +0 -12
- package/esm2022/services/alert/alert.message.mjs +0 -9
- package/esm2022/services/alert/alert.service.mjs +0 -166
- package/esm2022/services/alert/cmat-services-alert.mjs +0 -5
- package/esm2022/services/alert/enum.mjs +0 -15
- package/esm2022/services/alert/public-api.mjs +0 -5
- package/esm2022/services/config/cmat-services-config.mjs +0 -5
- package/esm2022/services/config/config.constants.mjs +0 -3
- package/esm2022/services/config/config.service.mjs +0 -35
- package/esm2022/services/config/public-api.mjs +0 -4
- package/esm2022/services/config/urlStateConfig.service.mjs +0 -30
- package/esm2022/services/confirmation/cmat-services-confirmation.mjs +0 -5
- package/esm2022/services/confirmation/confirmation.service.mjs +0 -51
- package/esm2022/services/confirmation/confirmation.types.mjs +0 -2
- package/esm2022/services/confirmation/dialog/dialog.component.mjs +0 -25
- package/esm2022/services/confirmation/public-api.mjs +0 -3
- package/esm2022/services/data/cmat-services-data.mjs +0 -5
- package/esm2022/services/data/data.service.mjs +0 -169
- package/esm2022/services/data/public-api.mjs +0 -2
- package/esm2022/services/loading/cmat-services-loading.mjs +0 -5
- package/esm2022/services/loading/loading.interceptor.mjs +0 -29
- package/esm2022/services/loading/loading.service.mjs +0 -72
- package/esm2022/services/loading/public-api.mjs +0 -3
- package/esm2022/services/local-storage/cmat-services-local-storage.mjs +0 -5
- package/esm2022/services/local-storage/local-storage.service.mjs +0 -22
- package/esm2022/services/local-storage/public-api.mjs +0 -2
- package/esm2022/services/media-watcher/cmat-services-media-watcher.mjs +0 -5
- package/esm2022/services/media-watcher/media-watcher.service.mjs +0 -55
- package/esm2022/services/media-watcher/public-api.mjs +0 -2
- package/esm2022/services/platform/cmat-services-platform.mjs +0 -5
- package/esm2022/services/platform/platform.service.mjs +0 -46
- package/esm2022/services/platform/public-api.mjs +0 -2
- package/esm2022/services/splash-screen/cmat-services-splash-screen.mjs +0 -5
- package/esm2022/services/splash-screen/public-api.mjs +0 -2
- package/esm2022/services/splash-screen/splash-screen.service.mjs +0 -42
- package/esm2022/services/title/cmat-services-title.mjs +0 -5
- package/esm2022/services/title/public-api.mjs +0 -2
- package/esm2022/services/title/title.service.mjs +0 -46
- package/esm2022/services/translation/cmat-services-translation.mjs +0 -5
- package/esm2022/services/translation/public-api.mjs +0 -2
- package/esm2022/services/translation/translation.service.mjs +0 -62
- package/esm2022/services/utils/cmat-services-utils.mjs +0 -5
- package/esm2022/services/utils/public-api.mjs +0 -2
- package/esm2022/services/utils/utils.service.mjs +0 -435
- package/esm2022/validators/cmat-validators.mjs +0 -5
- package/esm2022/validators/public-api.mjs +0 -2
- package/esm2022/validators/validators.mjs +0 -33
- package/esm2022/version/cmat-version.mjs +0 -5
- package/esm2022/version/public-api.mjs +0 -2
- package/esm2022/version/version.mjs +0 -11
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY21hdC1jb21wb25lbnRzLXBhZ2luYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvcGFnaW5hdGlvbi9jbWF0LWNvbXBvbmVudHMtcGFnaW5hdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import { DecimalPipe, NgStyle } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';
|
|
3
|
-
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
4
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
5
|
-
import { MatInputModule } from '@angular/material/input';
|
|
6
|
-
import { MatSelectModule } from '@angular/material/select';
|
|
7
|
-
import { Subject, takeUntil } from 'rxjs';
|
|
8
|
-
import { CmatDigitOnlyDirective } from 'cmat/directives/digit-only';
|
|
9
|
-
import { CmatPaginationDirective } from './pagination.directive';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
import * as i1 from "cmat/services/media-watcher";
|
|
12
|
-
import * as i2 from "@angular/material/icon";
|
|
13
|
-
import * as i3 from "@angular/material/form-field";
|
|
14
|
-
import * as i4 from "@angular/material/input";
|
|
15
|
-
import * as i5 from "@angular/material/select";
|
|
16
|
-
import * as i6 from "@angular/material/core";
|
|
17
|
-
export class CmatPaginationComponent {
|
|
18
|
-
constructor(_cmatMediaWatcherService, _changeDetectorRef) {
|
|
19
|
-
this._cmatMediaWatcherService = _cmatMediaWatcherService;
|
|
20
|
-
this._changeDetectorRef = _changeDetectorRef;
|
|
21
|
-
this.pageChange = new EventEmitter();
|
|
22
|
-
this.pageBoundsCorrection = new EventEmitter();
|
|
23
|
-
this.perPageCountChange = new EventEmitter();
|
|
24
|
-
this.maxSize = 7;
|
|
25
|
-
this.itemsPerPages = [10, 20, 30];
|
|
26
|
-
this.initPerPage = 10;
|
|
27
|
-
this._autoHide = false;
|
|
28
|
-
this._unsubscribeAll = new Subject();
|
|
29
|
-
}
|
|
30
|
-
get autoHide() {
|
|
31
|
-
return this._autoHide;
|
|
32
|
-
}
|
|
33
|
-
set autoHide(value) {
|
|
34
|
-
this._autoHide = !!value;
|
|
35
|
-
}
|
|
36
|
-
ngOnInit() {
|
|
37
|
-
this._cmatMediaWatcherService.onMediaChange$
|
|
38
|
-
.pipe(takeUntil(this._unsubscribeAll))
|
|
39
|
-
.subscribe(({ matchingAliases }) => {
|
|
40
|
-
this.isScreenSmall = !matchingAliases.includes('md');
|
|
41
|
-
this._changeDetectorRef.markForCheck();
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: CmatPaginationComponent, deps: [{ token: i1.CmatMediaWatcherService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
45
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.9", type: CmatPaginationComponent, isStandalone: true, selector: "cmat-pagination", inputs: { id: "id", maxSize: "maxSize", itemsPerPages: "itemsPerPages", initPerPage: "initPerPage", autoHide: "autoHide" }, outputs: { pageChange: "pageChange", pageBoundsCorrection: "pageBoundsCorrection", perPageCountChange: "perPageCountChange" }, exportAs: ["cmatPagination"], ngImport: i0, template: "<pagination-template #p=\"paginationApi\" class=\"w-full px-4 py-2 flex\" [id]=\"id\"\r\n [maxSize]=\"isScreenSmall&&maxSize>5?5:maxSize\" (pageChange)=\"pageChange.emit($event)\"\r\n (pageBoundsCorrection)=\"pageBoundsCorrection.emit($event)\" (perPageCountChange)=\"perPageCountChange.emit($event)\">\r\n <div class=\"hidden md:flex flex-auto items-center\">\r\n <span>\u603B\u8BA1:{{p.getTotalItems()}}</span>\r\n </div>\r\n <nav role=\"navigation\" class=\"flex min-h-12 w-full md:w-0\">\r\n @if (!(autoHide && p.pages.length <= 1)) {\r\n <ul\r\n class=\"flex flex-row space-x-6 items-center justify-center md:justify-end w-full\">\r\n <li>\r\n <button type=\"button\" class=\"flex items-center\" mat-button mat-icon-button [disabled]=\"p.getCurrent()===1\"\r\n (click)=\"p.goFirstPage()\">\r\n <mat-icon svgIcon=\"mat_outline:first_page\"></mat-icon>\r\n </button>\r\n </li>\r\n <li>\r\n <button type=\"button\" class=\"flex items-center\" mat-button mat-icon-button [disabled]=\"p.getCurrent()===1\"\r\n (click)=\"p.previous()\">\r\n <mat-icon svgIcon=\"mat_outline:navigate_before\"></mat-icon>\r\n </button>\r\n </li>\r\n @for (page of p.pages; track $index) {\r\n <li class=\"flex text-xl lg:text-2xl\">\r\n @if (p.getCurrent() !== page.value) {\r\n <a tabindex=\"0\" role=\"presentation\"\r\n class=\"cursor-pointer text-gray-400 hover:text-black\" (click)=\"p.setCurrent(page.value)\">\r\n <span>{{ (page.label === '...') ? page.label : (page.label | number:'') }}</span>\r\n </a>\r\n }\r\n @if (p.getCurrent() === page.value) {\r\n <span class=\"text-black\">\r\n <span>{{ (page.label === '...') ? page.label : (page.label | number:'') }}</span>\r\n </span>\r\n }\r\n </li>\r\n }\r\n <li>\r\n <button type=\"button\" class=\"flex items-center\" mat-button mat-icon-button [disabled]=\"p.getCurrent()===p.getLastPage()\"\r\n (click)=\"p.next()\">\r\n <mat-icon svgIcon=\"mat_outline:navigate_next\"></mat-icon>\r\n </button>\r\n </li>\r\n <li>\r\n <button type=\"button\" class=\"flex items-center\" mat-button mat-icon-button [disabled]=\"p.getCurrent()===p.getLastPage()\"\r\n (click)=\"p.goLastPage()\">\r\n <mat-icon svgIcon=\"mat_outline:last_page\"></mat-icon>\r\n </button>\r\n </li>\r\n <li class=\"hidden md:block\">\r\n <mat-form-field [ngStyle]=\"{'width':((p.getLastPage()?.toString()?.length||0)*8+64)+'px'}\">\r\n <input #current matInput type=\"text\" cmatDigitOnly class=\"text-end\"\r\n [value]=\"p.getCurrent()\" [autocomplete]=\"'off'\" [min]=\"0\" [max]=\"p.getLastPage()||0\"\r\n (keyup.enter)=\"p.setCurrent(current.value)\">\r\n <span matSuffix>/<div class=\"pl-1\">{{p.getLastPage()}}</div></span>\r\n </mat-form-field>\r\n </li>\r\n <li class=\"hidden md:block\">\r\n <mat-form-field class=\"w-24\">\r\n <mat-select #pageCount name=\"pageCount\" [value]=\"initPerPage\"\r\n (selectionChange)=\"p.setItemsPerPage(pageCount.value)\">\r\n @for (perPage of itemsPerPages; track perPage) {\r\n <mat-option [value]=\"perPage\">\r\n {{perPage}}\r\n </mat-option>\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n </li>\r\n </ul>\r\n }\r\n </nav>\r\n </pagination-template>", dependencies: [{ kind: "directive", type: CmatPaginationDirective, selector: "pagination-template,[pagination-template]", inputs: ["id", "maxSize"], outputs: ["pageChange", "pageBoundsCorrection", "perPageCountChange"], exportAs: ["paginationApi"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: CmatDigitOnlyDirective, selector: "[cmatDigitOnly]", inputs: ["decimal", "decimalSeparator", "allowNegatives", "allowPaste", "negativeSign", "min", "max", "pattern"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "pipe", type: DecimalPipe, name: "number" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
46
|
-
}
|
|
47
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: CmatPaginationComponent, decorators: [{
|
|
48
|
-
type: Component,
|
|
49
|
-
args: [{ selector: 'cmat-pagination', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, exportAs: 'cmatPagination', standalone: true, imports: [CmatPaginationDirective, MatIconModule, NgStyle, MatFormFieldModule, MatInputModule, CmatDigitOnlyDirective, MatSelectModule, DecimalPipe], template: "<pagination-template #p=\"paginationApi\" class=\"w-full px-4 py-2 flex\" [id]=\"id\"\r\n [maxSize]=\"isScreenSmall&&maxSize>5?5:maxSize\" (pageChange)=\"pageChange.emit($event)\"\r\n (pageBoundsCorrection)=\"pageBoundsCorrection.emit($event)\" (perPageCountChange)=\"perPageCountChange.emit($event)\">\r\n <div class=\"hidden md:flex flex-auto items-center\">\r\n <span>\u603B\u8BA1:{{p.getTotalItems()}}</span>\r\n </div>\r\n <nav role=\"navigation\" class=\"flex min-h-12 w-full md:w-0\">\r\n @if (!(autoHide && p.pages.length <= 1)) {\r\n <ul\r\n class=\"flex flex-row space-x-6 items-center justify-center md:justify-end w-full\">\r\n <li>\r\n <button type=\"button\" class=\"flex items-center\" mat-button mat-icon-button [disabled]=\"p.getCurrent()===1\"\r\n (click)=\"p.goFirstPage()\">\r\n <mat-icon svgIcon=\"mat_outline:first_page\"></mat-icon>\r\n </button>\r\n </li>\r\n <li>\r\n <button type=\"button\" class=\"flex items-center\" mat-button mat-icon-button [disabled]=\"p.getCurrent()===1\"\r\n (click)=\"p.previous()\">\r\n <mat-icon svgIcon=\"mat_outline:navigate_before\"></mat-icon>\r\n </button>\r\n </li>\r\n @for (page of p.pages; track $index) {\r\n <li class=\"flex text-xl lg:text-2xl\">\r\n @if (p.getCurrent() !== page.value) {\r\n <a tabindex=\"0\" role=\"presentation\"\r\n class=\"cursor-pointer text-gray-400 hover:text-black\" (click)=\"p.setCurrent(page.value)\">\r\n <span>{{ (page.label === '...') ? page.label : (page.label | number:'') }}</span>\r\n </a>\r\n }\r\n @if (p.getCurrent() === page.value) {\r\n <span class=\"text-black\">\r\n <span>{{ (page.label === '...') ? page.label : (page.label | number:'') }}</span>\r\n </span>\r\n }\r\n </li>\r\n }\r\n <li>\r\n <button type=\"button\" class=\"flex items-center\" mat-button mat-icon-button [disabled]=\"p.getCurrent()===p.getLastPage()\"\r\n (click)=\"p.next()\">\r\n <mat-icon svgIcon=\"mat_outline:navigate_next\"></mat-icon>\r\n </button>\r\n </li>\r\n <li>\r\n <button type=\"button\" class=\"flex items-center\" mat-button mat-icon-button [disabled]=\"p.getCurrent()===p.getLastPage()\"\r\n (click)=\"p.goLastPage()\">\r\n <mat-icon svgIcon=\"mat_outline:last_page\"></mat-icon>\r\n </button>\r\n </li>\r\n <li class=\"hidden md:block\">\r\n <mat-form-field [ngStyle]=\"{'width':((p.getLastPage()?.toString()?.length||0)*8+64)+'px'}\">\r\n <input #current matInput type=\"text\" cmatDigitOnly class=\"text-end\"\r\n [value]=\"p.getCurrent()\" [autocomplete]=\"'off'\" [min]=\"0\" [max]=\"p.getLastPage()||0\"\r\n (keyup.enter)=\"p.setCurrent(current.value)\">\r\n <span matSuffix>/<div class=\"pl-1\">{{p.getLastPage()}}</div></span>\r\n </mat-form-field>\r\n </li>\r\n <li class=\"hidden md:block\">\r\n <mat-form-field class=\"w-24\">\r\n <mat-select #pageCount name=\"pageCount\" [value]=\"initPerPage\"\r\n (selectionChange)=\"p.setItemsPerPage(pageCount.value)\">\r\n @for (perPage of itemsPerPages; track perPage) {\r\n <mat-option [value]=\"perPage\">\r\n {{perPage}}\r\n </mat-option>\r\n }\r\n </mat-select>\r\n </mat-form-field>\r\n </li>\r\n </ul>\r\n }\r\n </nav>\r\n </pagination-template>" }]
|
|
50
|
-
}], ctorParameters: () => [{ type: i1.CmatMediaWatcherService }, { type: i0.ChangeDetectorRef }], propDecorators: { pageChange: [{
|
|
51
|
-
type: Output
|
|
52
|
-
}], pageBoundsCorrection: [{
|
|
53
|
-
type: Output
|
|
54
|
-
}], perPageCountChange: [{
|
|
55
|
-
type: Output
|
|
56
|
-
}], id: [{
|
|
57
|
-
type: Input
|
|
58
|
-
}], maxSize: [{
|
|
59
|
-
type: Input
|
|
60
|
-
}], itemsPerPages: [{
|
|
61
|
-
type: Input
|
|
62
|
-
}], initPerPage: [{
|
|
63
|
-
type: Input
|
|
64
|
-
}], autoHide: [{
|
|
65
|
-
type: Input
|
|
66
|
-
}] } });
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5SSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVwRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7Ozs7QUFXakUsTUFBTSxPQUFPLHVCQUF1QjtJQWdCaEMsWUFBb0Isd0JBQWlELEVBQVUsa0JBQXFDO1FBQWhHLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBeUI7UUFBVSx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBZjFHLGVBQVUsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUM5RCx5QkFBb0IsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUN4RSx1QkFBa0IsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUd2RSxZQUFPLEdBQVcsQ0FBQyxDQUFDO1FBRXBCLGtCQUFhLEdBQWEsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZDLGdCQUFXLEdBQVcsRUFBRSxDQUFDO1FBSTFCLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFDM0Isb0JBQWUsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUk3RCxDQUFDO0lBRUQsSUFDSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzFCLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFjO1FBQ3ZCLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQztJQUM3QixDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxjQUFjO2FBQ3ZDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO2FBQ3JDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsZUFBZSxFQUFFLEVBQUUsRUFBRTtZQUMvQixJQUFJLENBQUMsYUFBYSxHQUFHLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNyRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDM0MsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDOzhHQW5DUSx1QkFBdUI7a0dBQXZCLHVCQUF1QixvV0NwQnBDLHFzSEF3RXdCLDRDRHREVix1QkFBdUIsb05BQUUsYUFBYSxvTEFBRSxPQUFPLDBFQUFFLGtCQUFrQiwwV0FBRSxjQUFjLDJXQUFFLHNCQUFzQiw2S0FBRSxlQUFlLCtxQkFBRSxXQUFXOzsyRkFFMUksdUJBQXVCO2tCQVRuQyxTQUFTOytCQUNJLGlCQUFpQixtQkFFVix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFlBQzNCLGdCQUFnQixjQUNkLElBQUksV0FDUCxDQUFDLHVCQUF1QixFQUFFLGFBQWEsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLHNCQUFzQixFQUFFLGVBQWUsRUFBRSxXQUFXLENBQUM7NEhBRzFJLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csb0JBQW9CO3NCQUE3QixNQUFNO2dCQUNHLGtCQUFrQjtzQkFBM0IsTUFBTTtnQkFFRSxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUVHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFZRixRQUFRO3NCQURYLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZWNpbWFsUGlwZSwgTmdTdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XHJcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XHJcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBDbWF0RGlnaXRPbmx5RGlyZWN0aXZlIH0gZnJvbSAnY21hdC9kaXJlY3RpdmVzL2RpZ2l0LW9ubHknO1xyXG5pbXBvcnQgeyBDbWF0TWVkaWFXYXRjaGVyU2VydmljZSB9IGZyb20gJ2NtYXQvc2VydmljZXMvbWVkaWEtd2F0Y2hlcic7XHJcbmltcG9ydCB7IENtYXRQYWdpbmF0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi9wYWdpbmF0aW9uLmRpcmVjdGl2ZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY21hdC1wYWdpbmF0aW9uJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICAgIGV4cG9ydEFzOiAnY21hdFBhZ2luYXRpb24nLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtDbWF0UGFnaW5hdGlvbkRpcmVjdGl2ZSwgTWF0SWNvbk1vZHVsZSwgTmdTdHlsZSwgTWF0Rm9ybUZpZWxkTW9kdWxlLCBNYXRJbnB1dE1vZHVsZSwgQ21hdERpZ2l0T25seURpcmVjdGl2ZSwgTWF0U2VsZWN0TW9kdWxlLCBEZWNpbWFsUGlwZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIENtYXRQYWdpbmF0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBPdXRwdXQoKSBwYWdlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG4gICAgQE91dHB1dCgpIHBhZ2VCb3VuZHNDb3JyZWN0aW9uOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG4gICAgQE91dHB1dCgpIHBlclBhZ2VDb3VudENoYW5nZTogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuXHJcbiAgICBASW5wdXQoKSBpZDogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgbWF4U2l6ZTogbnVtYmVyID0gNztcclxuXHJcbiAgICBASW5wdXQoKSBpdGVtc1BlclBhZ2VzOiBudW1iZXJbXSA9IFsxMCwgMjAsIDMwXTtcclxuICAgIEBJbnB1dCgpIGluaXRQZXJQYWdlOiBudW1iZXIgPSAxMDtcclxuXHJcbiAgICBpc1NjcmVlblNtYWxsOiBib29sZWFuO1xyXG5cclxuICAgIHByaXZhdGUgX2F1dG9IaWRlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBwcml2YXRlIF91bnN1YnNjcmliZUFsbDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfY21hdE1lZGlhV2F0Y2hlclNlcnZpY2U6IENtYXRNZWRpYVdhdGNoZXJTZXJ2aWNlLCBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIGdldCBhdXRvSGlkZSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fYXV0b0hpZGU7XHJcbiAgICB9XHJcbiAgICBzZXQgYXV0b0hpZGUodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgICAgICB0aGlzLl9hdXRvSGlkZSA9ICEhdmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fY21hdE1lZGlhV2F0Y2hlclNlcnZpY2Uub25NZWRpYUNoYW5nZSRcclxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX3Vuc3Vic2NyaWJlQWxsKSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoeyBtYXRjaGluZ0FsaWFzZXMgfSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5pc1NjcmVlblNtYWxsID0gIW1hdGNoaW5nQWxpYXNlcy5pbmNsdWRlcygnbWQnKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgIH1cclxufVxyXG4iLCI8cGFnaW5hdGlvbi10ZW1wbGF0ZSAjcD1cInBhZ2luYXRpb25BcGlcIiBjbGFzcz1cInctZnVsbCBweC00IHB5LTIgZmxleFwiIFtpZF09XCJpZFwiXHJcbiAgW21heFNpemVdPVwiaXNTY3JlZW5TbWFsbCYmbWF4U2l6ZT41PzU6bWF4U2l6ZVwiIChwYWdlQ2hhbmdlKT1cInBhZ2VDaGFuZ2UuZW1pdCgkZXZlbnQpXCJcclxuICAocGFnZUJvdW5kc0NvcnJlY3Rpb24pPVwicGFnZUJvdW5kc0NvcnJlY3Rpb24uZW1pdCgkZXZlbnQpXCIgKHBlclBhZ2VDb3VudENoYW5nZSk9XCJwZXJQYWdlQ291bnRDaGFuZ2UuZW1pdCgkZXZlbnQpXCI+XHJcbiAgPGRpdiBjbGFzcz1cImhpZGRlbiBtZDpmbGV4IGZsZXgtYXV0byBpdGVtcy1jZW50ZXJcIj5cclxuICAgIDxzcGFuPuaAu+iuoTp7e3AuZ2V0VG90YWxJdGVtcygpfX08L3NwYW4+XHJcbiAgPC9kaXY+XHJcbiAgPG5hdiByb2xlPVwibmF2aWdhdGlvblwiIGNsYXNzPVwiZmxleCBtaW4taC0xMiB3LWZ1bGwgbWQ6dy0wXCI+XHJcbiAgICBAaWYgKCEoYXV0b0hpZGUgJiYgcC5wYWdlcy5sZW5ndGggPD0gMSkpIHtcclxuICAgICAgPHVsXHJcbiAgICAgICAgY2xhc3M9XCJmbGV4IGZsZXgtcm93IHNwYWNlLXgtNiBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgbWQ6anVzdGlmeS1lbmQgdy1mdWxsXCI+XHJcbiAgICAgICAgPGxpPlxyXG4gICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlclwiIG1hdC1idXR0b24gbWF0LWljb24tYnV0dG9uIFtkaXNhYmxlZF09XCJwLmdldEN1cnJlbnQoKT09PTFcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwicC5nb0ZpcnN0UGFnZSgpXCI+XHJcbiAgICAgICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwibWF0X291dGxpbmU6Zmlyc3RfcGFnZVwiPjwvbWF0LWljb24+XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L2xpPlxyXG4gICAgICAgIDxsaT5cclxuICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXJcIiBtYXQtYnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbZGlzYWJsZWRdPVwicC5nZXRDdXJyZW50KCk9PT0xXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cInAucHJldmlvdXMoKVwiPlxyXG4gICAgICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cIm1hdF9vdXRsaW5lOm5hdmlnYXRlX2JlZm9yZVwiPjwvbWF0LWljb24+XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L2xpPlxyXG4gICAgICAgIEBmb3IgKHBhZ2Ugb2YgcC5wYWdlczsgdHJhY2sgJGluZGV4KSB7XHJcbiAgICAgICAgICA8bGkgY2xhc3M9XCJmbGV4IHRleHQteGwgbGc6dGV4dC0yeGxcIj5cclxuICAgICAgICAgICAgQGlmIChwLmdldEN1cnJlbnQoKSAhPT0gcGFnZS52YWx1ZSkge1xyXG4gICAgICAgICAgICAgIDxhIHRhYmluZGV4PVwiMFwiIHJvbGU9XCJwcmVzZW50YXRpb25cIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlciB0ZXh0LWdyYXktNDAwIGhvdmVyOnRleHQtYmxhY2tcIiAoY2xpY2spPVwicC5zZXRDdXJyZW50KHBhZ2UudmFsdWUpXCI+XHJcbiAgICAgICAgICAgICAgICA8c3Bhbj57eyAocGFnZS5sYWJlbCA9PT0gJy4uLicpID8gcGFnZS5sYWJlbCA6IChwYWdlLmxhYmVsIHwgbnVtYmVyOicnKSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGlmIChwLmdldEN1cnJlbnQoKSA9PT0gcGFnZS52YWx1ZSkge1xyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1ibGFja1wiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4+e3sgKHBhZ2UubGFiZWwgPT09ICcuLi4nKSA/IHBhZ2UubGFiZWwgOiAocGFnZS5sYWJlbCB8IG51bWJlcjonJykgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICA8L2xpPlxyXG4gICAgICAgIH1cclxuICAgICAgICA8bGk+XHJcbiAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyXCIgbWF0LWJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW2Rpc2FibGVkXT1cInAuZ2V0Q3VycmVudCgpPT09cC5nZXRMYXN0UGFnZSgpXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cInAubmV4dCgpXCI+XHJcbiAgICAgICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwibWF0X291dGxpbmU6bmF2aWdhdGVfbmV4dFwiPjwvbWF0LWljb24+XHJcbiAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICA8L2xpPlxyXG4gICAgICAgIDxsaT5cclxuICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXJcIiBtYXQtYnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbZGlzYWJsZWRdPVwicC5nZXRDdXJyZW50KCk9PT1wLmdldExhc3RQYWdlKClcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwicC5nb0xhc3RQYWdlKClcIj5cclxuICAgICAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJtYXRfb3V0bGluZTpsYXN0X3BhZ2VcIj48L21hdC1pY29uPlxyXG4gICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPC9saT5cclxuICAgICAgICA8bGkgY2xhc3M9XCJoaWRkZW4gbWQ6YmxvY2tcIj5cclxuICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBbbmdTdHlsZV09XCJ7J3dpZHRoJzooKHAuZ2V0TGFzdFBhZ2UoKT8udG9TdHJpbmcoKT8ubGVuZ3RofHwwKSo4KzY0KSsncHgnfVwiPlxyXG4gICAgICAgICAgICA8aW5wdXQgI2N1cnJlbnQgbWF0SW5wdXQgdHlwZT1cInRleHRcIiBjbWF0RGlnaXRPbmx5IGNsYXNzPVwidGV4dC1lbmRcIlxyXG4gICAgICAgICAgICAgIFt2YWx1ZV09XCJwLmdldEN1cnJlbnQoKVwiIFthdXRvY29tcGxldGVdPVwiJ29mZidcIiBbbWluXT1cIjBcIiBbbWF4XT1cInAuZ2V0TGFzdFBhZ2UoKXx8MFwiXHJcbiAgICAgICAgICAgICAgKGtleXVwLmVudGVyKT1cInAuc2V0Q3VycmVudChjdXJyZW50LnZhbHVlKVwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIG1hdFN1ZmZpeD4vPGRpdiBjbGFzcz1cInBsLTFcIj57e3AuZ2V0TGFzdFBhZ2UoKX19PC9kaXY+PC9zcGFuPlxyXG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gICAgICAgICAgPC9saT5cclxuICAgICAgICAgIDxsaSBjbGFzcz1cImhpZGRlbiBtZDpibG9ja1wiPlxyXG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJ3LTI0XCI+XHJcbiAgICAgICAgICAgICAgPG1hdC1zZWxlY3QgI3BhZ2VDb3VudCBuYW1lPVwicGFnZUNvdW50XCIgW3ZhbHVlXT1cImluaXRQZXJQYWdlXCJcclxuICAgICAgICAgICAgICAgIChzZWxlY3Rpb25DaGFuZ2UpPVwicC5zZXRJdGVtc1BlclBhZ2UocGFnZUNvdW50LnZhbHVlKVwiPlxyXG4gICAgICAgICAgICAgICAgQGZvciAocGVyUGFnZSBvZiBpdGVtc1BlclBhZ2VzOyB0cmFjayBwZXJQYWdlKSB7XHJcbiAgICAgICAgICAgICAgICAgIDxtYXQtb3B0aW9uIFt2YWx1ZV09XCJwZXJQYWdlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3twZXJQYWdlfX1cclxuICAgICAgICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIDwvbWF0LXNlbGVjdD5cclxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgPC91bD5cclxuICAgICAgfVxyXG4gICAgPC9uYXY+XHJcbiAgPC9wYWdpbmF0aW9uLXRlbXBsYXRlPiJdfQ==
|
|
@@ -1,197 +0,0 @@
|
|
|
1
|
-
import { Directive, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import { Subject, takeUntil } from 'rxjs';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "./pagination.service";
|
|
5
|
-
export class CmatPaginationDirective {
|
|
6
|
-
constructor(service, changeDetectorRef) {
|
|
7
|
-
this.service = service;
|
|
8
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
9
|
-
this.maxSize = 7;
|
|
10
|
-
this.pageChange = new EventEmitter();
|
|
11
|
-
this.pageBoundsCorrection = new EventEmitter();
|
|
12
|
-
this.perPageCountChange = new EventEmitter();
|
|
13
|
-
this.pages = [];
|
|
14
|
-
this._unsubscribeAll = new Subject();
|
|
15
|
-
this.service.change.pipe(takeUntil(this._unsubscribeAll))
|
|
16
|
-
.subscribe((id) => {
|
|
17
|
-
if (this.id === id) {
|
|
18
|
-
this._updatePageLinks();
|
|
19
|
-
this.changeDetectorRef.markForCheck();
|
|
20
|
-
}
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
ngOnInit() {
|
|
24
|
-
if (this.id === undefined) {
|
|
25
|
-
this.id = this.service.defaultId();
|
|
26
|
-
}
|
|
27
|
-
this._updatePageLinks();
|
|
28
|
-
}
|
|
29
|
-
ngOnChanges() {
|
|
30
|
-
this._updatePageLinks();
|
|
31
|
-
}
|
|
32
|
-
ngOnDestroy() {
|
|
33
|
-
this._unsubscribeAll.next(void 0);
|
|
34
|
-
this._unsubscribeAll.complete();
|
|
35
|
-
}
|
|
36
|
-
previous() {
|
|
37
|
-
if (!this.isFirstPage()) {
|
|
38
|
-
this._checkValidId();
|
|
39
|
-
const current = this.getCurrent();
|
|
40
|
-
if (current)
|
|
41
|
-
this.setCurrent(current - 1);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
next() {
|
|
45
|
-
if (!this.isLastPage()) {
|
|
46
|
-
this._checkValidId();
|
|
47
|
-
const current = this.getCurrent();
|
|
48
|
-
if (current)
|
|
49
|
-
this.setCurrent(current + 1);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
goFirstPage() {
|
|
53
|
-
if (!this.isFirstPage()) {
|
|
54
|
-
this._checkValidId();
|
|
55
|
-
this.setCurrent(1);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
goLastPage() {
|
|
59
|
-
if (!this.isLastPage()) {
|
|
60
|
-
this._checkValidId();
|
|
61
|
-
const lastPage = this.getLastPage();
|
|
62
|
-
if (lastPage)
|
|
63
|
-
this.setCurrent(lastPage);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
isFirstPage() {
|
|
67
|
-
return this.getCurrent() === 1;
|
|
68
|
-
}
|
|
69
|
-
isLastPage() {
|
|
70
|
-
return this.getLastPage() === this.getCurrent();
|
|
71
|
-
}
|
|
72
|
-
setCurrent(page) {
|
|
73
|
-
this.pageChange.emit(page);
|
|
74
|
-
}
|
|
75
|
-
getCurrent() {
|
|
76
|
-
return this.service.getCurrentPage(this.id);
|
|
77
|
-
}
|
|
78
|
-
getLastPage() {
|
|
79
|
-
const inst = this.service.getInstance(this.id);
|
|
80
|
-
if (inst.totalItems < 1) {
|
|
81
|
-
// when there are 0 or fewer (an error case) items, there are no "pages" as such,
|
|
82
|
-
// but it makes sense to consider a single, empty page as the last page.
|
|
83
|
-
return 1;
|
|
84
|
-
}
|
|
85
|
-
return Math.ceil(inst.totalItems / inst.itemsPerPage);
|
|
86
|
-
}
|
|
87
|
-
getTotalItems() {
|
|
88
|
-
return this.service.getInstance(this.id).totalItems;
|
|
89
|
-
}
|
|
90
|
-
setItemsPerPage(count) {
|
|
91
|
-
this.service.setItemsPerPage(this.id, count);
|
|
92
|
-
this.perPageCountChange.emit(count);
|
|
93
|
-
const inst = this.service.getInstance(this.id);
|
|
94
|
-
this.setCurrent(this._outOfBoundCorrection(inst));
|
|
95
|
-
}
|
|
96
|
-
_checkValidId() {
|
|
97
|
-
if (this.service.getInstance(this.id).id == null) {
|
|
98
|
-
console.warn(`PaginationControlsDirective: the specified id "${this.id}" does not match any registered PaginationInstance`);
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
_updatePageLinks() {
|
|
102
|
-
const inst = this.service.getInstance(this.id);
|
|
103
|
-
const correctedCurrentPage = this._outOfBoundCorrection(inst);
|
|
104
|
-
if (correctedCurrentPage !== inst.currentPage) {
|
|
105
|
-
setTimeout(() => {
|
|
106
|
-
this.pageBoundsCorrection.emit(correctedCurrentPage);
|
|
107
|
-
this.pages = this._createPageArray(inst.currentPage, inst.itemsPerPage, inst.totalItems, this.maxSize);
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
else {
|
|
111
|
-
this.pages = this._createPageArray(inst.currentPage, inst.itemsPerPage, inst.totalItems, this.maxSize);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
_outOfBoundCorrection(instance) {
|
|
115
|
-
const totalPages = Math.ceil(instance.totalItems / instance.itemsPerPage);
|
|
116
|
-
if (totalPages < instance.currentPage && 0 < totalPages) {
|
|
117
|
-
return totalPages;
|
|
118
|
-
}
|
|
119
|
-
else if (instance.currentPage < 1) {
|
|
120
|
-
return 1;
|
|
121
|
-
}
|
|
122
|
-
return instance.currentPage;
|
|
123
|
-
}
|
|
124
|
-
_createPageArray(currentPage, itemsPerPage, totalItems, paginationRange) {
|
|
125
|
-
paginationRange = +paginationRange;
|
|
126
|
-
const pages = [];
|
|
127
|
-
const totalPages = Math.max(Math.ceil(totalItems / itemsPerPage), 1);
|
|
128
|
-
const halfWay = Math.ceil(paginationRange / 2);
|
|
129
|
-
const isStart = currentPage <= halfWay;
|
|
130
|
-
const isEnd = totalPages - halfWay < currentPage;
|
|
131
|
-
const isMiddle = !isStart && !isEnd;
|
|
132
|
-
const ellipsesNeeded = paginationRange < totalPages;
|
|
133
|
-
let i = 1;
|
|
134
|
-
while (i <= totalPages && i <= paginationRange) {
|
|
135
|
-
let label;
|
|
136
|
-
const pageNumber = this._calculatePageNumber(i, currentPage, paginationRange, totalPages);
|
|
137
|
-
const openingEllipsesNeeded = (i === 2 && (isMiddle || isEnd));
|
|
138
|
-
const closingEllipsesNeeded = (i === paginationRange - 1 && (isMiddle || isStart));
|
|
139
|
-
if (ellipsesNeeded && (openingEllipsesNeeded || closingEllipsesNeeded)) {
|
|
140
|
-
label = '...';
|
|
141
|
-
}
|
|
142
|
-
else {
|
|
143
|
-
label = pageNumber;
|
|
144
|
-
}
|
|
145
|
-
pages.push({
|
|
146
|
-
label: label,
|
|
147
|
-
value: pageNumber
|
|
148
|
-
});
|
|
149
|
-
i++;
|
|
150
|
-
}
|
|
151
|
-
return pages;
|
|
152
|
-
}
|
|
153
|
-
_calculatePageNumber(i, currentPage, paginationRange, totalPages) {
|
|
154
|
-
const halfWay = Math.ceil(paginationRange / 2);
|
|
155
|
-
if (i === paginationRange) {
|
|
156
|
-
return totalPages;
|
|
157
|
-
}
|
|
158
|
-
else if (i === 1) {
|
|
159
|
-
return i;
|
|
160
|
-
}
|
|
161
|
-
else if (paginationRange < totalPages) {
|
|
162
|
-
if (totalPages - halfWay < currentPage) {
|
|
163
|
-
return totalPages - paginationRange + i;
|
|
164
|
-
}
|
|
165
|
-
else if (halfWay < currentPage) {
|
|
166
|
-
return currentPage - halfWay + i;
|
|
167
|
-
}
|
|
168
|
-
else {
|
|
169
|
-
return i;
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
else {
|
|
173
|
-
return i;
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: CmatPaginationDirective, deps: [{ token: i1.CmatPaginationService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
177
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.9", type: CmatPaginationDirective, isStandalone: true, selector: "pagination-template,[pagination-template]", inputs: { id: "id", maxSize: "maxSize" }, outputs: { pageChange: "pageChange", pageBoundsCorrection: "pageBoundsCorrection", perPageCountChange: "perPageCountChange" }, exportAs: ["paginationApi"], usesOnChanges: true, ngImport: i0 }); }
|
|
178
|
-
}
|
|
179
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: CmatPaginationDirective, decorators: [{
|
|
180
|
-
type: Directive,
|
|
181
|
-
args: [{
|
|
182
|
-
selector: 'pagination-template,[pagination-template]',
|
|
183
|
-
exportAs: 'paginationApi',
|
|
184
|
-
standalone: true
|
|
185
|
-
}]
|
|
186
|
-
}], ctorParameters: () => [{ type: i1.CmatPaginationService }, { type: i0.ChangeDetectorRef }], propDecorators: { id: [{
|
|
187
|
-
type: Input
|
|
188
|
-
}], maxSize: [{
|
|
189
|
-
type: Input
|
|
190
|
-
}], pageChange: [{
|
|
191
|
-
type: Output
|
|
192
|
-
}], pageBoundsCorrection: [{
|
|
193
|
-
type: Output
|
|
194
|
-
}], perPageCountChange: [{
|
|
195
|
-
type: Output
|
|
196
|
-
}] } });
|
|
197
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFnQyxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQWExQyxNQUFNLE9BQU8sdUJBQXVCO0lBV2hDLFlBQW9CLE9BQThCLEVBQ3RDLGlCQUFvQztRQUQ1QixZQUFPLEdBQVAsT0FBTyxDQUF1QjtRQUN0QyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBVnZDLFlBQU8sR0FBVyxDQUFDLENBQUM7UUFDbkIsZUFBVSxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBQzlELHlCQUFvQixHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ3hFLHVCQUFrQixHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBRWhGLFVBQUssR0FBVyxFQUFFLENBQUM7UUFFWCxvQkFBZSxHQUFpQixJQUFJLE9BQU8sRUFBTyxDQUFDO1FBSXZELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDcEIsU0FBUyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQzthQUMvQixTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRTtZQUNkLElBQUksSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztnQkFDakIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUMxQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lB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QUMsS0FBSyxlQUFlLEVBQUUsQ0FBQztZQUN4QixPQUFPLFVBQVUsQ0FBQztRQUN0QixDQUFDO2FBQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDakIsT0FBTyxDQUFDLENBQUM7UUFDYixDQUFDO2FBQU0sSUFBSSxlQUFlLEdBQUcsVUFBVSxFQUFFLENBQUM7WUFDdEMsSUFBSSxVQUFVLEdBQUcsT0FBTyxHQUFHLFdBQVcsRUFBRSxDQUFDO2dCQUNyQyxPQUFPLFVBQVUsR0FBRyxlQUFlLEdBQUcsQ0FBQyxDQUFDO1lBQzVDLENBQUM7aUJBQU0sSUFBSSxPQUFPLEdBQUcsV0FBVyxFQUFFLENBQUM7Z0JBQy9CLE9BQU8sV0FBVyxHQUFHLE9BQU8sR0FBRyxDQUFDLENBQUM7WUFDckMsQ0FBQztpQkFBTSxDQUFDO2dCQUNKLE9BQU8sQ0FBQyxDQUFDO1lBQ2IsQ0FBQztRQUNMLENBQUM7YUFBTSxDQUFDO1lBQ0osT0FBTyxDQUFDLENBQUM7UUFDYixDQUFDO0lBQ0wsQ0FBQzs4R0FyTVEsdUJBQXVCO2tHQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBTG5DLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDJDQUEyQztvQkFDckQsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFVBQVUsRUFBRSxJQUFJO2lCQUNuQjswSEFFWSxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNJLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0csb0JBQW9CO3NCQUE3QixNQUFNO2dCQUNHLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ21hdFBhZ2luYXRpb25JbnN0YW5jZSB9IGZyb20gJy4vcGFnaW5hdGlvbi5pbnN0YW5jZSc7XHJcbmltcG9ydCB7IENtYXRQYWdpbmF0aW9uU2VydmljZSB9IGZyb20gJy4vcGFnaW5hdGlvbi5zZXJ2aWNlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUGFnZSB7XHJcbiAgICBsYWJlbDogc3RyaW5nO1xyXG4gICAgdmFsdWU6IGFueTtcclxufVxyXG5ARGlyZWN0aXZlKHtcclxuICAgIHNlbGVjdG9yOiAncGFnaW5hdGlvbi10ZW1wbGF0ZSxbcGFnaW5hdGlvbi10ZW1wbGF0ZV0nLFxyXG4gICAgZXhwb3J0QXM6ICdwYWdpbmF0aW9uQXBpJyxcclxuICAgIHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIENtYXRQYWdpbmF0aW9uRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcbiAgICBASW5wdXQoKSBpZDogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgbWF4U2l6ZTogbnVtYmVyID0gNztcclxuICAgIEBPdXRwdXQoKSBwYWdlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG4gICAgQE91dHB1dCgpIHBhZ2VCb3VuZHNDb3JyZWN0aW9uOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xyXG4gICAgQE91dHB1dCgpIHBlclBhZ2VDb3VudENoYW5nZTogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcclxuXHJcbiAgICBwYWdlczogUGFnZVtdID0gW107XHJcblxyXG4gICAgcHJpdmF0ZSBfdW5zdWJzY3JpYmVBbGw6IFN1YmplY3Q8YW55PiA9IG5ldyBTdWJqZWN0PGFueT4oKTtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHNlcnZpY2U6IENtYXRQYWdpbmF0aW9uU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgICAgIHRoaXMuc2VydmljZS5jaGFuZ2UucGlwZShcclxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX3Vuc3Vic2NyaWJlQWxsKSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoaWQpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmlkID09PSBpZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVBhZ2VMaW5rcygpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmlkID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5pZCA9IHRoaXMuc2VydmljZS5kZWZhdWx0SWQoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5fdXBkYXRlUGFnZUxpbmtzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fdXBkYXRlUGFnZUxpbmtzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fdW5zdWJzY3JpYmVBbGwubmV4dCh2b2lkIDApO1xyXG4gICAgICAgIHRoaXMuX3Vuc3Vic2NyaWJlQWxsLmNvbXBsZXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJldmlvdXMoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmlzRmlyc3RQYWdlKCkpIHtcclxuICAgICAgICAgICAgdGhpcy5fY2hlY2tWYWxpZElkKCk7XHJcblxyXG4gICAgICAgICAgICBjb25zdCBjdXJyZW50ID0gdGhpcy5nZXRDdXJyZW50KCk7XHJcbiAgICAgICAgICAgIGlmIChjdXJyZW50KVxyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRDdXJyZW50KGN1cnJlbnQgLSAxKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbmV4dCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoaXMuaXNMYXN0UGFnZSgpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2NoZWNrVmFsaWRJZCgpO1xyXG5cclxuICAgICAgICAgICAgY29uc3QgY3VycmVudCA9IHRoaXMuZ2V0Q3VycmVudCgpO1xyXG4gICAgICAgICAgICBpZiAoY3VycmVudClcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0Q3VycmVudChjdXJyZW50ICsgMSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGdvRmlyc3RQYWdlKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGhpcy5pc0ZpcnN0UGFnZSgpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2NoZWNrVmFsaWRJZCgpO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5zZXRDdXJyZW50KDEpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBnb0xhc3RQYWdlKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGhpcy5pc0xhc3RQYWdlKCkpIHtcclxuICAgICAgICAgICAgdGhpcy5fY2hlY2tWYWxpZElkKCk7XHJcblxyXG4gICAgICAgICAgICBjb25zdCBsYXN0UGFnZSA9IHRoaXMuZ2V0TGFzdFBhZ2UoKTtcclxuICAgICAgICAgICAgaWYgKGxhc3RQYWdlKVxyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXRDdXJyZW50KGxhc3RQYWdlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgaXNGaXJzdFBhZ2UoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q3VycmVudCgpID09PSAxO1xyXG4gICAgfVxyXG5cclxuICAgIGlzTGFzdFBhZ2UoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0TGFzdFBhZ2UoKSA9PT0gdGhpcy5nZXRDdXJyZW50KCk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0Q3VycmVudChwYWdlOiBudW1iZXIgfCBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnBhZ2VDaGFuZ2UuZW1pdChwYWdlIGFzIG51bWJlcik7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0Q3VycmVudCgpOiBudW1iZXIgfCB2b2lkIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmdldEN1cnJlbnRQYWdlKHRoaXMuaWQpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldExhc3RQYWdlKCk6IG51bWJlciB8IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGluc3QgPSB0aGlzLnNlcnZpY2UuZ2V0SW5zdGFuY2UodGhpcy5pZCk7XHJcbiAgICAgICAgaWYgKGluc3QudG90YWxJdGVtcyA8IDEpIHtcclxuICAgICAgICAgICAgLy8gd2hlbiB0aGVyZSBhcmUgMCBvciBmZXdlciAoYW4gZXJyb3IgY2FzZSkgaXRlbXMsIHRoZXJlIGFyZSBubyBcInBhZ2VzXCIgYXMgc3VjaCxcclxuICAgICAgICAgICAgLy8gYnV0IGl0IG1ha2VzIHNlbnNlIHRvIGNvbnNpZGVyIGEgc2luZ2xlLCBlbXB0eSBwYWdlIGFzIHRoZSBsYXN0IHBhZ2UuXHJcbiAgICAgICAgICAgIHJldHVybiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gTWF0aC5jZWlsKGluc3QudG90YWxJdGVtcyAvIGluc3QuaXRlbXNQZXJQYWdlKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRUb3RhbEl0ZW1zKCk6IG51bWJlciB8IHZvaWQge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnNlcnZpY2UuZ2V0SW5zdGFuY2UodGhpcy5pZCkudG90YWxJdGVtcztcclxuICAgIH1cclxuXHJcbiAgICBzZXRJdGVtc1BlclBhZ2UoY291bnQ6IG51bWJlcik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2VydmljZS5zZXRJdGVtc1BlclBhZ2UodGhpcy5pZCwgY291bnQpO1xyXG5cclxuICAgICAgICB0aGlzLnBlclBhZ2VDb3VudENoYW5nZS5lbWl0KGNvdW50KTtcclxuICAgICAgICBjb25zdCBpbnN0ID0gdGhpcy5zZXJ2aWNlLmdldEluc3RhbmNlKHRoaXMuaWQpO1xyXG4gICAgICAgIHRoaXMuc2V0Q3VycmVudCh0aGlzLl9vdXRPZkJvdW5kQ29ycmVjdGlvbihpbnN0KSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfY2hlY2tWYWxpZElkKCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLnNlcnZpY2UuZ2V0SW5zdGFuY2UodGhpcy5pZCkuaWQgPT0gbnVsbCkge1xyXG4gICAgICAgICAgICBjb25zb2xlLndhcm4oYFBhZ2luYXRpb25Db250cm9sc0RpcmVjdGl2ZTogdGhlIHNwZWNpZmllZCBpZCBcIiR7dGhpcy5pZH1cIiBkb2VzIG5vdCBtYXRjaCBhbnkgcmVnaXN0ZXJlZCBQYWdpbmF0aW9uSW5zdGFuY2VgKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfdXBkYXRlUGFnZUxpbmtzKCk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGluc3QgPSB0aGlzLnNlcnZpY2UuZ2V0SW5zdGFuY2UodGhpcy5pZCk7XHJcbiAgICAgICAgY29uc3QgY29ycmVjdGVkQ3VycmVudFBhZ2UgPSB0aGlzLl9vdXRPZkJvdW5kQ29ycmVjdGlvbihpbnN0KTtcclxuXHJcbiAgICAgICAgaWYgKGNvcnJlY3RlZEN1cnJlbnRQYWdlICE9PSBpbnN0LmN1cnJlbnRQYWdlKSB7XHJcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5wYWdlQm91bmRzQ29ycmVjdGlvbi5lbWl0KGNvcnJlY3RlZEN1cnJlbnRQYWdlKTtcclxuICAgICAgICAgICAgICAgIHRoaXMucGFnZXMgPSB0aGlzLl9jcmVhdGVQYWdlQXJyYXkoaW5zdC5jdXJyZW50UGFnZSwgaW5zdC5pdGVtc1BlclBhZ2UsIGluc3QudG90YWxJdGVtcywgdGhpcy5tYXhTaXplKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5wYWdlcyA9IHRoaXMuX2NyZWF0ZVBhZ2VBcnJheShpbnN0LmN1cnJlbnRQYWdlLCBpbnN0Lml0ZW1zUGVyUGFnZSwgaW5zdC50b3RhbEl0ZW1zLCB0aGlzLm1heFNpemUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9vdXRPZkJvdW5kQ29ycmVjdGlvbihpbnN0YW5jZTogQ21hdFBhZ2luYXRpb25JbnN0YW5jZSk6IG51bWJlciB7XHJcbiAgICAgICAgY29uc3QgdG90YWxQYWdlcyA9IE1hdGguY2VpbChpbnN0YW5jZS50b3RhbEl0ZW1zIC8gaW5zdGFuY2UuaXRlbXNQZXJQYWdlKTtcclxuICAgICAgICBpZiAodG90YWxQYWdlcyA8IGluc3RhbmNlLmN1cnJlbnRQYWdlICYmIDAgPCB0b3RhbFBhZ2VzKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0b3RhbFBhZ2VzO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoaW5zdGFuY2UuY3VycmVudFBhZ2UgPCAxKSB7XHJcbiAgICAgICAgICAgIHJldHVybiAxO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGluc3RhbmNlLmN1cnJlbnRQYWdlO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2NyZWF0ZVBhZ2VBcnJheShjdXJyZW50UGFnZTogbnVtYmVyLCBpdGVtc1BlclBhZ2U6IG51bWJlciwgdG90YWxJdGVtczogbnVtYmVyLCBwYWdpbmF0aW9uUmFuZ2U6IG51bWJlcik6IFBhZ2VbXSB7XHJcbiAgICAgICAgcGFnaW5hdGlvblJhbmdlID0gK3BhZ2luYXRpb25SYW5nZTtcclxuICAgICAgICBjb25zdCBwYWdlcyA9IFtdO1xyXG5cclxuICAgICAgICBjb25zdCB0b3RhbFBhZ2VzID0gTWF0aC5tYXgoTWF0aC5jZWlsKHRvdGFsSXRlbXMgLyBpdGVtc1BlclBhZ2UpLCAxKTtcclxuICAgICAgICBjb25zdCBoYWxmV2F5ID0gTWF0aC5jZWlsKHBhZ2luYXRpb25SYW5nZSAvIDIpO1xyXG5cclxuICAgICAgICBjb25zdCBpc1N0YXJ0ID0gY3VycmVudFBhZ2UgPD0gaGFsZldheTtcclxuICAgICAgICBjb25zdCBpc0VuZCA9IHRvdGFsUGFnZXMgLSBoYWxmV2F5IDwgY3VycmVudFBhZ2U7XHJcbiAgICAgICAgY29uc3QgaXNNaWRkbGUgPSAhaXNTdGFydCAmJiAhaXNFbmQ7XHJcblxyXG4gICAgICAgIGNvbnN0IGVsbGlwc2VzTmVlZGVkID0gcGFnaW5hdGlvblJhbmdlIDwgdG90YWxQYWdlcztcclxuICAgICAgICBsZXQgaSA9IDE7XHJcblxyXG4gICAgICAgIHdoaWxlIChpIDw9IHRvdGFsUGFnZXMgJiYgaSA8PSBwYWdpbmF0aW9uUmFuZ2UpIHtcclxuICAgICAgICAgICAgbGV0IGxhYmVsOiBhbnk7XHJcbiAgICAgICAgICAgIGNvbnN0IHBhZ2VOdW1iZXIgPSB0aGlzLl9jYWxjdWxhdGVQYWdlTnVtYmVyKGksIGN1cnJlbnRQYWdlLCBwYWdpbmF0aW9uUmFuZ2UsIHRvdGFsUGFnZXMpO1xyXG4gICAgICAgICAgICBjb25zdCBvcGVuaW5nRWxsaXBzZXNOZWVkZWQgPSAoaSA9PT0gMiAmJiAoaXNNaWRkbGUgfHwgaXNFbmQpKTtcclxuICAgICAgICAgICAgY29uc3QgY2xvc2luZ0VsbGlwc2VzTmVlZGVkID0gKGkgPT09IHBhZ2luYXRpb25SYW5nZSAtIDEgJiYgKGlzTWlkZGxlIHx8IGlzU3RhcnQpKTtcclxuICAgICAgICAgICAgaWYgKGVsbGlwc2VzTmVlZGVkICYmIChvcGVuaW5nRWxsaXBzZXNOZWVkZWQgfHwgY2xvc2luZ0VsbGlwc2VzTmVlZGVkKSkge1xyXG4gICAgICAgICAgICAgICAgbGFiZWwgPSAnLi4uJztcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGxhYmVsID0gcGFnZU51bWJlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBwYWdlcy5wdXNoKHtcclxuICAgICAgICAgICAgICAgIGxhYmVsOiBsYWJlbCxcclxuICAgICAgICAgICAgICAgIHZhbHVlOiBwYWdlTnVtYmVyXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICBpKys7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gcGFnZXM7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfY2FsY3VsYXRlUGFnZU51bWJlcihpOiBudW1iZXIsIGN1cnJlbnRQYWdlOiBudW1iZXIsIHBhZ2luYXRpb25SYW5nZTogbnVtYmVyLCB0b3RhbFBhZ2VzOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgICAgIGNvbnN0IGhhbGZXYXkgPSBNYXRoLmNlaWwocGFnaW5hdGlvblJhbmdlIC8gMik7XHJcbiAgICAgICAgaWYgKGkgPT09IHBhZ2luYXRpb25SYW5nZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdG90YWxQYWdlcztcclxuICAgICAgICB9IGVsc2UgaWYgKGkgPT09IDEpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChwYWdpbmF0aW9uUmFuZ2UgPCB0b3RhbFBhZ2VzKSB7XHJcbiAgICAgICAgICAgIGlmICh0b3RhbFBhZ2VzIC0gaGFsZldheSA8IGN1cnJlbnRQYWdlKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdG90YWxQYWdlcyAtIHBhZ2luYXRpb25SYW5nZSArIGk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoaGFsZldheSA8IGN1cnJlbnRQYWdlKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gY3VycmVudFBhZ2UgLSBoYWxmV2F5ICsgaTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIGk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5pbnN0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb24uaW5zdGFuY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQ21hdFBhZ2luYXRpb25JbnN0YW5jZSB7XHJcbiAgICBbcHJvcDogc3RyaW5nXTogYW55O1xyXG4gICAgLyoqXHJcbiAgICAgKiBBbiBvcHRpb25hbCBJRCBmb3IgdGhlIHBhZ2luYXRpb24gaW5zdGFuY2UuIE9ubHkgdXNlZnVsIGlmIHlvdSB3aXNoIHRvXHJcbiAgICAgKiBoYXZlIG1vcmUgdGhhbiBvbmNlIGluc3RhbmNlIGF0IGEgdGltZSBpbiBhIGdpdmVuIGNvbXBvbmVudC5cclxuICAgICAqL1xyXG4gICAgaWQ/OiBzdHJpbmc7XHJcblxyXG4gICAgaXRlbXNQZXJQYWdlOiBudW1iZXI7XHJcblxyXG4gICAgY3VycmVudFBhZ2U6IG51bWJlcjtcclxuXHJcbiAgICB0b3RhbEl0ZW1zOiBudW1iZXI7XHJcbn1cclxuIl19
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
import { Pipe } from '@angular/core';
|
|
2
|
-
import { isNil } from 'lodash-es';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "./pagination.service";
|
|
5
|
-
const LARGE_NUMBER = Number.MAX_SAFE_INTEGER;
|
|
6
|
-
export class CmatPaginatePipe {
|
|
7
|
-
constructor(service) {
|
|
8
|
-
this.service = service;
|
|
9
|
-
this.state = {};
|
|
10
|
-
}
|
|
11
|
-
transform(collection, args) {
|
|
12
|
-
if (!(collection instanceof Array)) {
|
|
13
|
-
const _id = args.id ?? this.service.defaultId();
|
|
14
|
-
if (this.state[_id]) {
|
|
15
|
-
return this.state[_id].slice;
|
|
16
|
-
}
|
|
17
|
-
else {
|
|
18
|
-
return collection;
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
const serverSideMode = args.totalItems && args.totalItems !== collection.length;
|
|
22
|
-
const instance = this.createInstance(collection, args);
|
|
23
|
-
const id = instance.id;
|
|
24
|
-
let start;
|
|
25
|
-
let end;
|
|
26
|
-
let perPage = args.itemsPerPage;
|
|
27
|
-
const emitChange = this.service.register(instance);
|
|
28
|
-
if (!serverSideMode && collection instanceof Array) {
|
|
29
|
-
perPage = +perPage || LARGE_NUMBER;
|
|
30
|
-
start = (instance.currentPage - 1) * perPage;
|
|
31
|
-
end = start + perPage;
|
|
32
|
-
const isIdentical = this._stateIsIdentical(id, collection, start, end);
|
|
33
|
-
if (isIdentical) {
|
|
34
|
-
return this.state[id].slice;
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
const slice = collection.slice(start, end);
|
|
38
|
-
this._saveState(id, collection, slice, start, end);
|
|
39
|
-
this.service.change.emit(id);
|
|
40
|
-
return slice;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
else {
|
|
44
|
-
if (emitChange) {
|
|
45
|
-
this.service.change.emit(id);
|
|
46
|
-
}
|
|
47
|
-
this._saveState(id, collection, collection, start, end);
|
|
48
|
-
return collection;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
createInstance(collection, config) {
|
|
52
|
-
this.checkConfig(config);
|
|
53
|
-
return {
|
|
54
|
-
id: !isNil(config.id) ? config.id : this.service.defaultId(),
|
|
55
|
-
itemsPerPage: +config.itemsPerPage || 10,
|
|
56
|
-
currentPage: +config.currentPage || 1,
|
|
57
|
-
totalItems: +config.totalItems || collection.length
|
|
58
|
-
};
|
|
59
|
-
}
|
|
60
|
-
checkConfig(config) {
|
|
61
|
-
const required = ['itemsPerPage', 'currentPage'];
|
|
62
|
-
const missing = required.filter(prop => !(prop in config));
|
|
63
|
-
if (0 < missing.length) {
|
|
64
|
-
throw new Error(`PaginatePipe: Argument is missing the following required properties: ${missing.join(', ')}`);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
_saveState(id, collection, slice, start, end) {
|
|
68
|
-
this.state[id] = {
|
|
69
|
-
collection,
|
|
70
|
-
size: collection.length,
|
|
71
|
-
slice,
|
|
72
|
-
start,
|
|
73
|
-
end
|
|
74
|
-
};
|
|
75
|
-
}
|
|
76
|
-
_stateIsIdentical(id, collection, start, end) {
|
|
77
|
-
const state = this.state[id];
|
|
78
|
-
if (!state) {
|
|
79
|
-
return false;
|
|
80
|
-
}
|
|
81
|
-
const isMetaDataIdentical = state.size === collection.length &&
|
|
82
|
-
state.start === start &&
|
|
83
|
-
state.end === end;
|
|
84
|
-
if (!isMetaDataIdentical) {
|
|
85
|
-
return false;
|
|
86
|
-
}
|
|
87
|
-
return state.slice.every((element, index) => element === collection[start + index]);
|
|
88
|
-
}
|
|
89
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: CmatPaginatePipe, deps: [{ token: i1.CmatPaginationService }], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
90
|
-
static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.9", ngImport: i0, type: CmatPaginatePipe, isStandalone: true, name: "paginate" }); }
|
|
91
|
-
}
|
|
92
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: CmatPaginatePipe, decorators: [{
|
|
93
|
-
type: Pipe,
|
|
94
|
-
args: [{
|
|
95
|
-
name: 'paginate',
|
|
96
|
-
pure: true,
|
|
97
|
-
standalone: true
|
|
98
|
-
}]
|
|
99
|
-
}], ctorParameters: () => [{ type: i1.CmatPaginationService }] });
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxXQUFXLENBQUM7OztBQUlsQyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7QUF3QjdDLE1BQU0sT0FBTyxnQkFBZ0I7SUFHekIsWUFBb0IsT0FBOEI7UUFBOUIsWUFBTyxHQUFQLE9BQU8sQ0FBdUI7UUFGMUMsVUFBSyxHQUFrQyxFQUFFLENBQUM7SUFHbEQsQ0FBQztJQUVNLFNBQVMsQ0FBNkIsVUFBYSxFQUFFLElBQTBCO1FBQ2xGLElBQUksQ0FBQyxDQUFDLFVBQVUsWUFBWSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2pDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNoRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDbEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQVUsQ0FBQztZQUN0QyxDQUFDO2lCQUFNLENBQUM7Z0JBQ0osT0FBTyxVQUFVLENBQUM7WUFDdEIsQ0FBQztRQUNMLENBQUM7UUFFRCxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssVUFBVSxDQUFDLE1BQU0sQ0FBQztRQUNoRixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUV2RCxNQUFNLEVBQUUsR0FBRyxRQUFR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QUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsR0FBRztZQUNiLFVBQVU7WUFDVixJQUFJLEVBQUUsVUFBVSxDQUFDLE1BQU07WUFDdkIsS0FBSztZQUNMLEtBQUs7WUFDTCxHQUFHO1NBQ04sQ0FBQztJQUNOLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxFQUFVLEVBQUUsVUFBaUIsRUFBRSxLQUFhLEVBQUUsR0FBVztRQUMvRSxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNULE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7UUFDRCxNQUFNLG1CQUFtQixHQUFHLEtBQUssQ0FBQyxJQUFJLEtBQUssVUFBVSxDQUFDLE1BQU07WUFDeEQsS0FBSyxDQUFDLEtBQUssS0FBSyxLQUFLO1lBQ3JCLEtBQUssQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDO1FBRXRCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7UUFFRCxPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsT0FBTyxLQUFLLFVBQVUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN4RixDQUFDOzhHQWhHUSxnQkFBZ0I7NEdBQWhCLGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFMNUIsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsVUFBVTtvQkFDaEIsSUFBSSxFQUFFLElBQUk7b0JBQ1YsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBpc05pbCB9IGZyb20gJ2xvZGFzaC1lcyc7XHJcbmltcG9ydCB7IENtYXRQYWdpbmF0aW9uSW5zdGFuY2UgfSBmcm9tICcuL3BhZ2luYXRpb24uaW5zdGFuY2UnO1xyXG5pbXBvcnQgeyBDbWF0UGFnaW5hdGlvblNlcnZpY2UgfSBmcm9tICcuL3BhZ2luYXRpb24uc2VydmljZSc7XHJcblxyXG5jb25zdCBMQVJHRV9OVU1CRVIgPSBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUjtcclxuXHJcbmV4cG9ydCB0eXBlIENvbGxlY3Rpb248VD4gPSBUW107XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENtYXRQYWdpbmF0ZVBpcGVBcmdzIHtcclxuICAgIGlkPzogc3RyaW5nO1xyXG4gICAgY3VycmVudFBhZ2U6IHN0cmluZyB8IG51bWJlcjtcclxuICAgIGl0ZW1zUGVyUGFnZTogc3RyaW5nIHwgbnVtYmVyO1xyXG4gICAgdG90YWxJdGVtczogc3RyaW5nIHwgbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENtYXRQaXBlU3RhdGUge1xyXG4gICAgY29sbGVjdGlvbjogYW55W107XHJcbiAgICBzaXplOiBudW1iZXI7XHJcbiAgICBzdGFydD86IG51bWJlcjtcclxuICAgIGVuZD86IG51bWJlcjtcclxuICAgIHNsaWNlOiBhbnlbXTtcclxufVxyXG5cclxuQFBpcGUoe1xyXG4gICAgbmFtZTogJ3BhZ2luYXRlJyxcclxuICAgIHB1cmU6IHRydWUsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0UGFnaW5hdGVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgICBwcml2YXRlIHN0YXRlOiBSZWNvcmQ8c3RyaW5nLCBDbWF0UGlwZVN0YXRlPiA9IHt9O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc2VydmljZTogQ21hdFBhZ2luYXRpb25TZXJ2aWNlKSB7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHRyYW5zZm9ybTxULCBVIGV4dGVuZHMgQ29sbGVjdGlvbjxUPj4oY29sbGVjdGlvbjogVSwgYXJnczogQ21hdFBhZ2luYXRlUGlwZUFyZ3MpOiBVIHtcclxuICAgICAgICBpZiAoIShjb2xsZWN0aW9uIGluc3RhbmNlb2YgQXJyYXkpKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IF9pZCA9IGFyZ3MuaWQgPz8gdGhpcy5zZXJ2aWNlLmRlZmF1bHRJZCgpO1xyXG4gICAgICAgICAgICBpZiAodGhpcy5zdGF0ZVtfaWRdKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zdGF0ZVtfaWRdLnNsaWNlIGFzIFU7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gY29sbGVjdGlvbjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3Qgc2VydmVyU2lkZU1vZGUgPSBhcmdzLnRvdGFsSXRlbXMgJiYgYXJncy50b3RhbEl0ZW1zICE9PSBjb2xsZWN0aW9uLmxlbmd0aDtcclxuICAgICAgICBjb25zdCBpbnN0YW5jZSA9IHRoaXMuY3JlYXRlSW5zdGFuY2UoY29sbGVjdGlvbiwgYXJncyk7XHJcblxyXG4gICAgICAgIGNvbnN0IGlkID0gaW5zdGFuY2UuaWQhO1xyXG4gICAgICAgIGxldCBzdGFydDtcclxuICAgICAgICBsZXQgZW5kO1xyXG4gICAgICAgIGxldCBwZXJQYWdlID0gYXJncy5pdGVtc1BlclBhZ2U7XHJcblxyXG4gICAgICAgIGNvbnN0IGVtaXRDaGFuZ2UgPSB0aGlzLnNlcnZpY2UucmVnaXN0ZXIoaW5zdGFuY2UpO1xyXG5cclxuICAgICAgICBpZiAoIXNlcnZlclNpZGVNb2RlICYmIGNvbGxlY3Rpb24gaW5zdGFuY2VvZiBBcnJheSkge1xyXG4gICAgICAgICAgICBwZXJQYWdlID0gK3BlclBhZ2UgfHwgTEFSR0VfTlVNQkVSO1xyXG4gICAgICAgICAgICBzdGFydCA9IChpbnN0YW5jZS5jdXJyZW50UGFnZSAtIDEpICogcGVyUGFnZTtcclxuICAgICAgICAgICAgZW5kID0gc3RhcnQgKyBwZXJQYWdlO1xyXG5cclxuICAgICAgICAgICAgY29uc3QgaXNJZGVudGljYWwgPSB0aGlzLl9zdGF0ZUlzSWRlbnRpY2FsKGlkLCBjb2xsZWN0aW9uLCBzdGFydCwgZW5kKTtcclxuICAgICAgICAgICAgaWYgKGlzSWRlbnRpY2FsKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zdGF0ZVtpZF0uc2xpY2UgYXMgVTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHNsaWNlID0gY29sbGVjdGlvbi5zbGljZShzdGFydCwgZW5kKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuX3NhdmVTdGF0ZShpZCwgY29sbGVjdGlvbiwgc2xpY2UsIHN0YXJ0LCBlbmQpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXJ2aWNlLmNoYW5nZS5lbWl0KGlkKTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBzbGljZSBhcyBVO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKGVtaXRDaGFuZ2UpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VydmljZS5jaGFuZ2UuZW1pdChpZCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRoaXMuX3NhdmVTdGF0ZShpZCwgY29sbGVjdGlvbiwgY29sbGVjdGlvbiwgc3RhcnQsIGVuZCk7XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gY29sbGVjdGlvbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgY3JlYXRlSW5zdGFuY2UoY29sbGVjdGlvbjogYW55W10sIGNvbmZpZzogQ21hdFBhZ2luYXRlUGlwZUFyZ3MpOiBDbWF0UGFnaW5hdGlvbkluc3RhbmNlIHtcclxuICAgICAgICB0aGlzLmNoZWNrQ29uZmlnKGNvbmZpZyk7XHJcblxyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGlkOiAhaXNOaWwoY29uZmlnLmlkKSA/IGNvbmZpZy5pZCA6IHRoaXMuc2VydmljZS5kZWZhdWx0SWQoKSxcclxuICAgICAgICAgICAgaXRlbXNQZXJQYWdlOiArY29uZmlnLml0ZW1zUGVyUGFnZSB8fCAxMCxcclxuICAgICAgICAgICAgY3VycmVudFBhZ2U6ICtjb25maWcuY3VycmVudFBhZ2UgfHwgMSxcclxuICAgICAgICAgICAgdG90YWxJdGVtczogK2NvbmZpZy50b3RhbEl0ZW1zIHx8IGNvbGxlY3Rpb24ubGVuZ3RoXHJcbiAgICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNoZWNrQ29uZmlnKGNvbmZpZzogQ21hdFBhZ2luYXRlUGlwZUFyZ3MpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCByZXF1aXJlZCA9IFsnaXRlbXNQZXJQYWdlJywgJ2N1cnJlbnRQYWdlJ107XHJcblxyXG4gICAgICAgIGNvbnN0IG1pc3NpbmcgPSByZXF1aXJlZC5maWx0ZXIocHJvcCA9PiAhKHByb3AgaW4gY29uZmlnKSk7XHJcbiAgICAgICAgaWYgKDAgPCBtaXNzaW5nLmxlbmd0aCkge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFBhZ2luYXRlUGlwZTogQXJndW1lbnQgaXMgbWlzc2luZyB0aGUgZm9sbG93aW5nIHJlcXVpcmVkIHByb3BlcnRpZXM6ICR7bWlzc2luZy5qb2luKCcsICcpfWApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9zYXZlU3RhdGUoaWQ6IHN0cmluZywgY29sbGVjdGlvbjogYW55W10sIHNsaWNlOiBhbnlbXSwgc3RhcnQ/OiBudW1iZXIsIGVuZD86IG51bWJlcik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc3RhdGVbaWRdID0ge1xyXG4gICAgICAgICAgICBjb2xsZWN0aW9uLFxyXG4gICAgICAgICAgICBzaXplOiBjb2xsZWN0aW9uLmxlbmd0aCxcclxuICAgICAgICAgICAgc2xpY2UsXHJcbiAgICAgICAgICAgIHN0YXJ0LFxyXG4gICAgICAgICAgICBlbmRcclxuICAgICAgICB9O1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3N0YXRlSXNJZGVudGljYWwoaWQ6IHN0cmluZywgY29sbGVjdGlvbjogYW55W10sIHN0YXJ0OiBudW1iZXIsIGVuZDogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICAgICAgY29uc3Qgc3RhdGUgPSB0aGlzLnN0YXRlW2lkXTtcclxuICAgICAgICBpZiAoIXN0YXRlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3QgaXNNZXRhRGF0YUlkZW50aWNhbCA9IHN0YXRlLnNpemUgPT09IGNvbGxlY3Rpb24ubGVuZ3RoICYmXHJcbiAgICAgICAgICAgIHN0YXRlLnN0YXJ0ID09PSBzdGFydCAmJlxyXG4gICAgICAgICAgICBzdGF0ZS5lbmQgPT09IGVuZDtcclxuXHJcbiAgICAgICAgaWYgKCFpc01ldGFEYXRhSWRlbnRpY2FsKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBzdGF0ZS5zbGljZS5ldmVyeSgoZWxlbWVudCwgaW5kZXgpID0+IGVsZW1lbnQgPT09IGNvbGxlY3Rpb25bc3RhcnQgKyBpbmRleF0pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import { EventEmitter, Injectable } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class CmatPaginationService {
|
|
4
|
-
constructor() {
|
|
5
|
-
this.change = new EventEmitter();
|
|
6
|
-
this._instances = {};
|
|
7
|
-
this._defaultPaginationId = 'DEFAULT_PAGINATION_ID';
|
|
8
|
-
}
|
|
9
|
-
defaultId() { return this._defaultPaginationId; }
|
|
10
|
-
register(instance) {
|
|
11
|
-
if (instance.id == null) {
|
|
12
|
-
instance.id = this._defaultPaginationId;
|
|
13
|
-
}
|
|
14
|
-
if (!this._instances[instance.id]) {
|
|
15
|
-
this._instances[instance.id] = instance;
|
|
16
|
-
return true;
|
|
17
|
-
}
|
|
18
|
-
else {
|
|
19
|
-
return this._updateInstance(instance);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
getCurrentPage(id) {
|
|
23
|
-
if (this._instances[id]) {
|
|
24
|
-
return this._instances[id].currentPage;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
getItemsPerPage(id) {
|
|
28
|
-
if (this._instances[id]) {
|
|
29
|
-
return this._instances[id].itemsPerPage;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
setCurrentPage(id, page) {
|
|
33
|
-
if (this._instances[id]) {
|
|
34
|
-
const instance = this._instances[id];
|
|
35
|
-
const maxPage = Math.ceil(instance.totalItems / instance.itemsPerPage);
|
|
36
|
-
if (page <= maxPage && 1 <= page) {
|
|
37
|
-
this._instances[id].currentPage = page;
|
|
38
|
-
this.change.emit(id);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
setTotalItems(id, totalItems) {
|
|
43
|
-
if (this._instances[id] && 0 <= totalItems) {
|
|
44
|
-
this._instances[id].totalItems = totalItems;
|
|
45
|
-
this.change.emit(id);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
setItemsPerPage(id, itemsPerPage) {
|
|
49
|
-
if (this._instances[id]) {
|
|
50
|
-
this._instances[id].itemsPerPage = itemsPerPage;
|
|
51
|
-
this.change.emit(id);
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
getInstance(id = this._defaultPaginationId) {
|
|
55
|
-
if (this._instances[id]) {
|
|
56
|
-
return this._clone(this._instances[id]);
|
|
57
|
-
}
|
|
58
|
-
return {};
|
|
59
|
-
}
|
|
60
|
-
_updateInstance(instance) {
|
|
61
|
-
let changed = false;
|
|
62
|
-
if (instance.id) {
|
|
63
|
-
for (const prop in this._instances[instance.id]) {
|
|
64
|
-
if (instance[prop] !== this._instances[instance.id][prop]) {
|
|
65
|
-
this._instances[instance.id][prop] = instance[prop];
|
|
66
|
-
changed = true;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
return changed;
|
|
71
|
-
}
|
|
72
|
-
_clone(obj) {
|
|
73
|
-
const target = {};
|
|
74
|
-
for (const i in obj) {
|
|
75
|
-
if (Object.prototype.hasOwnProperty.call(obj, i)) {
|
|
76
|
-
target[i] = obj[i];
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
return target;
|
|
80
|
-
}
|
|
81
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: CmatPaginationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
82
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: CmatPaginationService, providedIn: 'root' }); }
|
|
83
|
-
}
|
|
84
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.9", ngImport: i0, type: CmatPaginationService, decorators: [{
|
|
85
|
-
type: Injectable,
|
|
86
|
-
args: [{
|
|
87
|
-
providedIn: 'root'
|
|
88
|
-
}]
|
|
89
|
-
}] });
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU16RCxNQUFNLE9BQU8scUJBQXFCO0lBSGxDO1FBSVcsV0FBTSxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBRXpELGVBQVUsR0FBMkMsRUFBRSxDQUFDO1FBQ3hELHlCQUFvQixHQUFHLHVCQUF1QixDQUFDO0tBbUYxRDtJQWpGVSxTQUFTLEtBQWEsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDO0lBRXpELFFBQVEsQ0FBQyxRQUFnQztRQUM1QyxJQUFJLFFBQVEsQ0FBQyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUM7WUFDdEIsUUFBUSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUM7UUFDNUMsQ0FBQztRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ2hDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxHQUFHLFFBQVEsQ0FBQztZQUN4QyxPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDO2FBQU0sQ0FBQztZQUNKLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLGNBQWMsQ0FBQyxFQUFVO1FBQzVCLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ3RCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDM0MsQ0FB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LENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDL0MsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN2QixDQUFDO1FBQ0wsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7OEdBdEZRLHFCQUFxQjtrSEFBckIscUJBQXFCLGNBRmxCLE1BQU07OzJGQUVULHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudEVtaXR0ZXIsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ21hdFBhZ2luYXRpb25JbnN0YW5jZSB9IGZyb20gJy4vcGFnaW5hdGlvbi5pbnN0YW5jZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIENtYXRQYWdpbmF0aW9uU2VydmljZSB7XHJcbiAgICBwdWJsaWMgY2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICAgIHByaXZhdGUgX2luc3RhbmNlczogUmVjb3JkPHN0cmluZywgQ21hdFBhZ2luYXRpb25JbnN0YW5jZT4gPSB7fTtcclxuICAgIHByaXZhdGUgX2RlZmF1bHRQYWdpbmF0aW9uSWQgPSAnREVGQVVMVF9QQUdJTkFUSU9OX0lEJztcclxuXHJcbiAgICBwdWJsaWMgZGVmYXVsdElkKCk6IHN0cmluZyB7IHJldHVybiB0aGlzLl9kZWZhdWx0UGFnaW5hdGlvbklkOyB9XHJcblxyXG4gICAgcHVibGljIHJlZ2lzdGVyKGluc3RhbmNlOiBDbWF0UGFnaW5hdGlvbkluc3RhbmNlKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKGluc3RhbmNlLmlkID09IG51bGwpIHtcclxuICAgICAgICAgICAgaW5zdGFuY2UuaWQgPSB0aGlzLl9kZWZhdWx0UGFnaW5hdGlvbklkO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLl9pbnN0YW5jZXNbaW5zdGFuY2UuaWRdKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2luc3RhbmNlc1tpbnN0YW5jZS5pZF0gPSBpbnN0YW5jZTtcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3VwZGF0ZUluc3RhbmNlKGluc3RhbmNlKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldEN1cnJlbnRQYWdlKGlkOiBzdHJpbmcpOiBudW1iZXIgfCB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5faW5zdGFuY2VzW2lkXSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5faW5zdGFuY2VzW2lkXS5jdXJyZW50UGFnZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldEl0ZW1zUGVyUGFnZShpZDogc3RyaW5nKTogbnVtYmVyIHwgdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuX2luc3RhbmNlc1tpZF0pIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2luc3RhbmNlc1tpZF0uaXRlbXNQZXJQYWdlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2V0Q3VycmVudFBhZ2UoaWQ6IHN0cmluZywgcGFnZTogbnVtYmVyKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuX2luc3RhbmNlc1tpZF0pIHtcclxuICAgICAgICAgICAgY29uc3QgaW5zdGFuY2UgPSB0aGlzLl9pbnN0YW5jZXNbaWRdO1xyXG4gICAgICAgICAgICBjb25zdCBtYXhQYWdlID0gTWF0aC5jZWlsKGluc3RhbmNlLnRvdGFsSXRlbXMgLyBpbnN0YW5jZS5pdGVtc1BlclBhZ2UpO1xyXG4gICAgICAgICAgICBpZiAocGFnZSA8PSBtYXhQYWdlICYmIDEgPD0gcGFnZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5faW5zdGFuY2VzW2lkXS5jdXJyZW50UGFnZSA9IHBhZ2U7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZS5lbWl0KGlkKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2V0VG90YWxJdGVtcyhpZDogc3RyaW5nLCB0b3RhbEl0ZW1zOiBudW1iZXIpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5faW5zdGFuY2VzW2lkXSAmJiAwIDw9IHRvdGFsSXRlbXMpIHtcclxuICAgICAgICAgICAgdGhpcy5faW5zdGFuY2VzW2lkXS50b3RhbEl0ZW1zID0gdG90YWxJdGVtcztcclxuICAgICAgICAgICAgdGhpcy5jaGFuZ2UuZW1pdChpZCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzZXRJdGVtc1BlclBhZ2UoaWQ6IHN0cmluZywgaXRlbXNQZXJQYWdlOiBudW1iZXIpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5faW5zdGFuY2VzW2lkXSkge1xyXG4gICAgICAgICAgICB0aGlzLl9pbnN0YW5jZXNbaWRdLml0ZW1zUGVyUGFnZSA9IGl0ZW1zUGVyUGFnZTtcclxuICAgICAgICAgICAgdGhpcy5jaGFuZ2UuZW1pdChpZCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRJbnN0YW5jZShpZDogc3RyaW5nID0gdGhpcy5fZGVmYXVsdFBhZ2luYXRpb25JZCk6IENtYXRQYWdpbmF0aW9uSW5zdGFuY2Uge1xyXG4gICAgICAgIGlmICh0aGlzLl9pbnN0YW5jZXNbaWRdKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9jbG9uZSh0aGlzLl9pbnN0YW5jZXNbaWRdKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHt9IGFzIENtYXRQYWdpbmF0aW9uSW5zdGFuY2U7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfdXBkYXRlSW5zdGFuY2UoaW5zdGFuY2U6IENtYXRQYWdpbmF0aW9uSW5zdGFuY2UpOiBib29sZWFuIHtcclxuICAgICAgICBsZXQgY2hhbmdlZCA9IGZhbHNlO1xyXG4gICAgICAgIGlmIChpbnN0YW5jZS5pZCkge1xyXG4gICAgICAgICAgICBmb3IgKGNvbnN0IHByb3AgaW4gdGhpcy5faW5zdGFuY2VzW2luc3RhbmNlLmlkXSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKGluc3RhbmNlW3Byb3BdICE9PSB0aGlzLl9pbnN0YW5jZXNbaW5zdGFuY2UuaWRdW3Byb3BdKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5faW5zdGFuY2VzW2luc3RhbmNlLmlkXVtwcm9wXSA9IGluc3RhbmNlW3Byb3BdO1xyXG4gICAgICAgICAgICAgICAgICAgIGNoYW5nZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBjaGFuZ2VkO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2Nsb25lKG9iajogYW55KTogYW55IHtcclxuICAgICAgICBjb25zdCB0YXJnZXQ6IGFueSA9IHt9O1xyXG4gICAgICAgIGZvciAoY29uc3QgaSBpbiBvYmopIHtcclxuICAgICAgICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmosIGkpKSB7XHJcbiAgICAgICAgICAgICAgICB0YXJnZXRbaV0gPSBvYmpbaV07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRhcmdldDtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export * from './pagination.component';
|
|
2
|
-
export * from './pagination.service';
|
|
3
|
-
export * from './pagination.pipe';
|
|
4
|
-
export * from './pagination.directive';
|
|
5
|
-
export * from './pagination.instance';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9wYWdpbmF0aW9uL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHVCQUF1QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9wYWdpbmF0aW9uLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcGFnaW5hdGlvbi5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9wYWdpbmF0aW9uLnBpcGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3BhZ2luYXRpb24uZGlyZWN0aXZlJztcclxuZXhwb3J0ICogZnJvbSAnLi9wYWdpbmF0aW9uLmluc3RhbmNlJzsiXX0=
|