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.
Files changed (498) hide show
  1. package/components/carousel/carousel.component.d.ts +136 -0
  2. package/components/carousel/carousel.interface.d.ts +38 -0
  3. package/components/carousel/index.d.ts +5 -0
  4. package/components/carousel/public-api.d.ts +2 -0
  5. package/components/custom-formly/public-api.d.ts +1 -0
  6. package/components/custom-formly/types/knob/knob.component.d.ts +36 -0
  7. package/components/custom-formly/types/table/table.component.d.ts +3 -8
  8. package/components/custom-formly/wrappers/form-field/form-field.component.d.ts +4 -4
  9. package/components/image-viewer/image-viewer.component.d.ts +76 -0
  10. package/components/image-viewer/index.d.ts +5 -0
  11. package/components/image-viewer/public-api.d.ts +1 -0
  12. package/components/knob-input/index.d.ts +5 -0
  13. package/components/knob-input/knob-input.component.d.ts +95 -0
  14. package/components/knob-input/public-api.d.ts +1 -0
  15. package/components/material-datetimepicker/datetimepicker-input.d.ts +2 -2
  16. package/components/opt-input/index.d.ts +5 -0
  17. package/components/opt-input/models/config.d.ts +14 -0
  18. package/components/opt-input/otp-input.component.d.ts +70 -0
  19. package/components/opt-input/public-api.d.ts +1 -0
  20. package/components/opt-input/utils/keyboard-util.d.ts +9 -0
  21. package/components/opt-input/utils/object-util.d.ts +3 -0
  22. package/components/org-chart/designer/chart-designer.component.d.ts +17 -0
  23. package/components/org-chart/index.d.ts +5 -0
  24. package/components/org-chart/node/chart-node.component.d.ts +17 -0
  25. package/components/org-chart/node/node.type.d.ts +22 -0
  26. package/components/org-chart/org-chart.component.d.ts +12 -0
  27. package/components/org-chart/public-api.d.ts +2 -0
  28. package/components/popover/popover.interfaces.d.ts +1 -1
  29. package/components/select-search/select-search.component.d.ts +2 -1
  30. package/components/select-table/index.d.ts +5 -0
  31. package/components/select-table/public-api.d.ts +2 -0
  32. package/components/select-table/select-table.component.d.ts +96 -0
  33. package/components/select-table/select-table.type.d.ts +20 -0
  34. package/components/select-tree/select-tree.component.d.ts +11 -12
  35. package/components/speed-dial/index.d.ts +5 -0
  36. package/components/speed-dial/public-api.d.ts +2 -0
  37. package/components/speed-dial/speed-dial.component.d.ts +63 -0
  38. package/components/transfer-picker/interface.d.ts +0 -1
  39. package/components/transfer-picker/transfer-picker-source/transfer-picker-source.component.d.ts +8 -6
  40. package/components/treetable/index.d.ts +5 -0
  41. package/components/treetable/public-api.d.ts +2 -0
  42. package/components/treetable/treetable.component.d.ts +32 -0
  43. package/components/treetable/treetable.interface.d.ts +9 -0
  44. package/directives/animate-on-scroll/animate-on-scroll.directive.d.ts +4 -4
  45. package/directives/arrow-cursor/arrow-cursor.directive.d.ts +31 -0
  46. package/directives/arrow-cursor/index.d.ts +5 -0
  47. package/directives/arrow-cursor/public-api.d.ts +1 -0
  48. package/directives/data-exporter/constants.d.ts +26 -0
  49. package/directives/data-exporter/data-exporter.directive.d.ts +18 -0
  50. package/directives/data-exporter/index.d.ts +5 -0
  51. package/directives/data-exporter/mime.d.ts +5 -0
  52. package/directives/data-exporter/options.d.ts +21 -0
  53. package/directives/data-exporter/public-api.d.ts +2 -0
  54. package/directives/data-exporter/services/exporters/csv-exporter.service.d.ts +12 -0
  55. package/directives/data-exporter/services/exporters/exporter.d.ts +4 -0
  56. package/directives/data-exporter/services/exporters/file-exporter.d.ts +8 -0
  57. package/directives/data-exporter/services/exporters/json-exporter.service.d.ts +11 -0
  58. package/directives/data-exporter/services/exporters/txt-exporter.service.d.ts +12 -0
  59. package/directives/data-exporter/services/exporters/worksheet-exporter.d.ts +10 -0
  60. package/directives/data-exporter/services/exporters/xls-exporter.service.d.ts +14 -0
  61. package/directives/data-exporter/services/exporters/xlsx-exporter.service.d.ts +9 -0
  62. package/directives/data-exporter/services/file-util.d.ts +8 -0
  63. package/directives/data-exporter/services/service-locator.service.d.ts +11 -0
  64. package/directives/debounce/abstract-debounce.directive.d.ts +1 -1
  65. package/fesm2022/cmat-animations.mjs.map +1 -1
  66. package/fesm2022/cmat-components-adapter.mjs +9 -9
  67. package/fesm2022/cmat-components-adapter.mjs.map +1 -1
  68. package/fesm2022/cmat-components-breadcrumb.mjs +10 -10
  69. package/fesm2022/cmat-components-breadcrumb.mjs.map +1 -1
  70. package/fesm2022/cmat-components-card.mjs +4 -4
  71. package/fesm2022/cmat-components-card.mjs.map +1 -1
  72. package/fesm2022/cmat-components-carousel.mjs +711 -0
  73. package/fesm2022/cmat-components-carousel.mjs.map +1 -0
  74. package/fesm2022/cmat-components-cascade.mjs +12 -12
  75. package/fesm2022/cmat-components-cascade.mjs.map +1 -1
  76. package/fesm2022/cmat-components-chip-input.mjs +5 -5
  77. package/fesm2022/cmat-components-chip-input.mjs.map +1 -1
  78. package/fesm2022/cmat-components-custom-formly.mjs +168 -155
  79. package/fesm2022/cmat-components-custom-formly.mjs.map +1 -1
  80. package/fesm2022/cmat-components-date-range.mjs +5 -5
  81. package/fesm2022/cmat-components-date-range.mjs.map +1 -1
  82. package/fesm2022/cmat-components-drawer.mjs +6 -6
  83. package/fesm2022/cmat-components-drawer.mjs.map +1 -1
  84. package/fesm2022/cmat-components-fullscreen.mjs +4 -4
  85. package/fesm2022/cmat-components-fullscreen.mjs.map +1 -1
  86. package/fesm2022/cmat-components-highlight.mjs +7 -7
  87. package/fesm2022/cmat-components-highlight.mjs.map +1 -1
  88. package/fesm2022/cmat-components-image-viewer.mjs +227 -0
  89. package/fesm2022/cmat-components-image-viewer.mjs.map +1 -0
  90. package/fesm2022/cmat-components-json-editor.mjs +4 -4
  91. package/fesm2022/cmat-components-json-editor.mjs.map +1 -1
  92. package/fesm2022/cmat-components-knob-input.mjs +404 -0
  93. package/fesm2022/cmat-components-knob-input.mjs.map +1 -0
  94. package/fesm2022/cmat-components-masonry.mjs +4 -4
  95. package/fesm2022/cmat-components-masonry.mjs.map +1 -1
  96. package/fesm2022/cmat-components-material-color-picker.mjs +4 -4
  97. package/fesm2022/cmat-components-material-color-picker.mjs.map +1 -1
  98. package/fesm2022/cmat-components-material-datetimepicker.mjs +53 -53
  99. package/fesm2022/cmat-components-material-datetimepicker.mjs.map +1 -1
  100. package/fesm2022/cmat-components-navigation.mjs +51 -51
  101. package/fesm2022/cmat-components-navigation.mjs.map +1 -1
  102. package/fesm2022/cmat-components-opt-input.mjs +457 -0
  103. package/fesm2022/cmat-components-opt-input.mjs.map +1 -0
  104. package/fesm2022/cmat-components-org-chart.mjs +141 -0
  105. package/fesm2022/cmat-components-org-chart.mjs.map +1 -0
  106. package/fesm2022/cmat-components-pagination.mjs +13 -13
  107. package/fesm2022/cmat-components-pagination.mjs.map +1 -1
  108. package/fesm2022/cmat-components-password-strength.mjs +12 -12
  109. package/fesm2022/cmat-components-password-strength.mjs.map +1 -1
  110. package/fesm2022/cmat-components-popover.mjs +10 -10
  111. package/fesm2022/cmat-components-popover.mjs.map +1 -1
  112. package/fesm2022/cmat-components-progress-bar.mjs +4 -4
  113. package/fesm2022/cmat-components-progress-bar.mjs.map +1 -1
  114. package/fesm2022/cmat-components-rating.mjs +4 -4
  115. package/fesm2022/cmat-components-rating.mjs.map +1 -1
  116. package/fesm2022/cmat-components-select-search.mjs +11 -11
  117. package/fesm2022/cmat-components-select-search.mjs.map +1 -1
  118. package/fesm2022/cmat-components-select-table.mjs +658 -0
  119. package/fesm2022/cmat-components-select-table.mjs.map +1 -0
  120. package/fesm2022/cmat-components-select-tree.mjs +75 -57
  121. package/fesm2022/cmat-components-select-tree.mjs.map +1 -1
  122. package/fesm2022/cmat-components-speed-dial.mjs +312 -0
  123. package/fesm2022/cmat-components-speed-dial.mjs.map +1 -0
  124. package/fesm2022/cmat-components-timeline.mjs +14 -14
  125. package/fesm2022/cmat-components-timeline.mjs.map +1 -1
  126. package/fesm2022/cmat-components-toast.mjs +11 -11
  127. package/fesm2022/cmat-components-toast.mjs.map +1 -1
  128. package/fesm2022/cmat-components-transfer-picker.mjs +60 -41
  129. package/fesm2022/cmat-components-transfer-picker.mjs.map +1 -1
  130. package/fesm2022/cmat-components-treetable.mjs +122 -0
  131. package/fesm2022/cmat-components-treetable.mjs.map +1 -0
  132. package/fesm2022/cmat-components-upload.mjs +11 -11
  133. package/fesm2022/cmat-components-upload.mjs.map +1 -1
  134. package/fesm2022/cmat-directives-animate-on-scroll.mjs +21 -21
  135. package/fesm2022/cmat-directives-animate-on-scroll.mjs.map +1 -1
  136. package/fesm2022/cmat-directives-arrow-cursor.mjs +184 -0
  137. package/fesm2022/cmat-directives-arrow-cursor.mjs.map +1 -0
  138. package/fesm2022/cmat-directives-autofocus.mjs +3 -3
  139. package/fesm2022/cmat-directives-autofocus.mjs.map +1 -1
  140. package/fesm2022/cmat-directives-data-exporter.mjs +324 -0
  141. package/fesm2022/cmat-directives-data-exporter.mjs.map +1 -0
  142. package/fesm2022/cmat-directives-debounce.mjs +9 -9
  143. package/fesm2022/cmat-directives-debounce.mjs.map +1 -1
  144. package/fesm2022/cmat-directives-digit-only.mjs +8 -6
  145. package/fesm2022/cmat-directives-digit-only.mjs.map +1 -1
  146. package/fesm2022/cmat-directives-equal-validator.mjs +3 -3
  147. package/fesm2022/cmat-directives-equal-validator.mjs.map +1 -1
  148. package/fesm2022/cmat-lib-mock-api.mjs +6 -6
  149. package/fesm2022/cmat-lib-mock-api.mjs.map +1 -1
  150. package/fesm2022/cmat-pipes-bytes.mjs +3 -3
  151. package/fesm2022/cmat-pipes-bytes.mjs.map +1 -1
  152. package/fesm2022/cmat-pipes-date-format.mjs +3 -3
  153. package/fesm2022/cmat-pipes-date-format.mjs.map +1 -1
  154. package/fesm2022/cmat-pipes-find-by-key.mjs +3 -3
  155. package/fesm2022/cmat-pipes-find-by-key.mjs.map +1 -1
  156. package/fesm2022/cmat-pipes-group-by.mjs +3 -3
  157. package/fesm2022/cmat-pipes-group-by.mjs.map +1 -1
  158. package/fesm2022/cmat-pipes-keys.mjs +3 -3
  159. package/fesm2022/cmat-pipes-keys.mjs.map +1 -1
  160. package/fesm2022/cmat-pipes-secure.mjs +3 -3
  161. package/fesm2022/cmat-pipes-secure.mjs.map +1 -1
  162. package/fesm2022/cmat-pipes-uppercase.mjs +3 -3
  163. package/fesm2022/cmat-pipes-uppercase.mjs.map +1 -1
  164. package/fesm2022/cmat-services-alert.mjs +3 -3
  165. package/fesm2022/cmat-services-alert.mjs.map +1 -1
  166. package/fesm2022/cmat-services-config.mjs +6 -6
  167. package/fesm2022/cmat-services-config.mjs.map +1 -1
  168. package/fesm2022/cmat-services-confirmation.mjs +7 -7
  169. package/fesm2022/cmat-services-confirmation.mjs.map +1 -1
  170. package/fesm2022/cmat-services-data.mjs +5 -5
  171. package/fesm2022/cmat-services-data.mjs.map +1 -1
  172. package/fesm2022/cmat-services-export-as.mjs +211 -0
  173. package/fesm2022/cmat-services-export-as.mjs.map +1 -0
  174. package/fesm2022/cmat-services-loading.mjs +6 -6
  175. package/fesm2022/cmat-services-loading.mjs.map +1 -1
  176. package/fesm2022/cmat-services-local-storage.mjs +3 -3
  177. package/fesm2022/cmat-services-local-storage.mjs.map +1 -1
  178. package/fesm2022/cmat-services-media-watcher.mjs +3 -3
  179. package/fesm2022/cmat-services-media-watcher.mjs.map +1 -1
  180. package/fesm2022/cmat-services-platform.mjs +3 -3
  181. package/fesm2022/cmat-services-platform.mjs.map +1 -1
  182. package/fesm2022/cmat-services-splash-screen.mjs +3 -3
  183. package/fesm2022/cmat-services-splash-screen.mjs.map +1 -1
  184. package/fesm2022/cmat-services-title.mjs +3 -3
  185. package/fesm2022/cmat-services-title.mjs.map +1 -1
  186. package/fesm2022/cmat-services-translation.mjs +3 -3
  187. package/fesm2022/cmat-services-translation.mjs.map +1 -1
  188. package/fesm2022/cmat-services-utils.mjs +35 -3
  189. package/fesm2022/cmat-services-utils.mjs.map +1 -1
  190. package/fesm2022/cmat-validators.mjs.map +1 -1
  191. package/fesm2022/cmat-version.mjs.map +1 -1
  192. package/icons/arrow-cursor.svg +1 -1
  193. package/package.json +81 -147
  194. package/services/data/data.service.d.ts +1 -1
  195. package/services/export-as/export-as-config.model.d.ts +8 -0
  196. package/services/export-as/export-as.service.d.ts +43 -0
  197. package/services/export-as/index.d.ts +5 -0
  198. package/services/export-as/public-api.d.ts +2 -0
  199. package/services/utils/utils.service.d.ts +4 -0
  200. package/styles/overrides/angular-material.scss +95 -13
  201. package/esm2022/animations/cmat-animations.mjs +0 -5
  202. package/esm2022/animations/defaults.mjs +0 -12
  203. package/esm2022/animations/dropdown.mjs +0 -26
  204. package/esm2022/animations/expand-collapse.mjs +0 -17
  205. package/esm2022/animations/fade.mjs +0 -170
  206. package/esm2022/animations/public-api.mjs +0 -19
  207. package/esm2022/animations/shake.mjs +0 -59
  208. package/esm2022/animations/slide.mjs +0 -124
  209. package/esm2022/animations/transform.mjs +0 -16
  210. package/esm2022/animations/zoom.mjs +0 -38
  211. package/esm2022/cmat.mjs +0 -5
  212. package/esm2022/components/adapter/cmat-components-adapter.mjs +0 -5
  213. package/esm2022/components/adapter/datetime-adapter.mjs +0 -127
  214. package/esm2022/components/adapter/datetime-formats.mjs +0 -3
  215. package/esm2022/components/adapter/dayjs-date-adapter.mjs +0 -198
  216. package/esm2022/components/adapter/dayjs-date-formats.mjs +0 -12
  217. package/esm2022/components/adapter/dayjs-datetime-adapter.mjs +0 -100
  218. package/esm2022/components/adapter/dayjs-datetime-formats.mjs +0 -21
  219. package/esm2022/components/adapter/native-datetime-adapter.mjs +0 -130
  220. package/esm2022/components/adapter/native-datetime-formats.mjs +0 -15
  221. package/esm2022/components/adapter/public-api.mjs +0 -9
  222. package/esm2022/components/breadcrumb/breadcrumb-item.directive.mjs +0 -19
  223. package/esm2022/components/breadcrumb/breadcrumb.component.mjs +0 -94
  224. package/esm2022/components/breadcrumb/breadcrumb.service.mjs +0 -333
  225. package/esm2022/components/breadcrumb/cmat-components-breadcrumb.mjs +0 -5
  226. package/esm2022/components/breadcrumb/public-api.mjs +0 -6
  227. package/esm2022/components/breadcrumb/types/breadcrumb.config.mjs +0 -2
  228. package/esm2022/components/breadcrumb/types/breadcrumb.mjs +0 -2
  229. package/esm2022/components/card/card.component.mjs +0 -49
  230. package/esm2022/components/card/card.types.mjs +0 -2
  231. package/esm2022/components/card/cmat-components-card.mjs +0 -5
  232. package/esm2022/components/card/public-api.mjs +0 -3
  233. package/esm2022/components/cascade/cascade-bottom-sheet/cascade-bottom-sheet.component.mjs +0 -49
  234. package/esm2022/components/cascade/cascade-list/cascade-list.component.mjs +0 -384
  235. package/esm2022/components/cascade/cascade-menu/cascade-menu.component.mjs +0 -22
  236. package/esm2022/components/cascade/cmat-components-cascade.mjs +0 -5
  237. package/esm2022/components/cascade/options.interface.mjs +0 -2
  238. package/esm2022/components/cascade/public-api.mjs +0 -4
  239. package/esm2022/components/chip-input/chip-input.component.mjs +0 -251
  240. package/esm2022/components/chip-input/cmat-components-chip-input.mjs +0 -5
  241. package/esm2022/components/chip-input/public-api.mjs +0 -2
  242. package/esm2022/components/custom-formly/cmat-components-custom-formly.mjs +0 -5
  243. package/esm2022/components/custom-formly/extension/addons.extension.mjs +0 -13
  244. package/esm2022/components/custom-formly/public-api.mjs +0 -29
  245. package/esm2022/components/custom-formly/types/button/button.component.mjs +0 -81
  246. package/esm2022/components/custom-formly/types/cascade/cascade.component.mjs +0 -71
  247. package/esm2022/components/custom-formly/types/checklist/checklist.component.mjs +0 -161
  248. package/esm2022/components/custom-formly/types/chips/chips.component.mjs +0 -55
  249. package/esm2022/components/custom-formly/types/color-picker/color-picker.component.mjs +0 -15
  250. package/esm2022/components/custom-formly/types/date-range/date-range.component.mjs +0 -25
  251. package/esm2022/components/custom-formly/types/datepicker/datepicker.component.mjs +0 -51
  252. package/esm2022/components/custom-formly/types/multicheckbox/multicheckbox.component.mjs +0 -88
  253. package/esm2022/components/custom-formly/types/number/number.component.mjs +0 -27
  254. package/esm2022/components/custom-formly/types/quill/quill.component.mjs +0 -171
  255. package/esm2022/components/custom-formly/types/radio/radio.component.mjs +0 -87
  256. package/esm2022/components/custom-formly/types/rating/rating.component.mjs +0 -27
  257. package/esm2022/components/custom-formly/types/repeat/repeat.component.mjs +0 -25
  258. package/esm2022/components/custom-formly/types/select/select.component.mjs +0 -167
  259. package/esm2022/components/custom-formly/types/select-tree/select-tree.component.mjs +0 -66
  260. package/esm2022/components/custom-formly/types/stepper/horizontal/stepper.component.mjs +0 -28
  261. package/esm2022/components/custom-formly/types/stepper/stepper.type.mjs +0 -2
  262. package/esm2022/components/custom-formly/types/stepper/vertical/stepper.component.mjs +0 -28
  263. package/esm2022/components/custom-formly/types/table/table.component.mjs +0 -127
  264. package/esm2022/components/custom-formly/types/tabs/tab.component.mjs +0 -16
  265. package/esm2022/components/custom-formly/types/tags/tags.component.mjs +0 -146
  266. package/esm2022/components/custom-formly/types/textarea/textarea.component.mjs +0 -25
  267. package/esm2022/components/custom-formly/types/upload/upload.component.mjs +0 -58
  268. package/esm2022/components/custom-formly/wrappers/addons/addons.component.mjs +0 -92
  269. package/esm2022/components/custom-formly/wrappers/card/card.component.mjs +0 -14
  270. package/esm2022/components/custom-formly/wrappers/expansion/expansion.component.mjs +0 -14
  271. package/esm2022/components/custom-formly/wrappers/form-field/form-field.component.mjs +0 -47
  272. package/esm2022/components/custom-formly/wrappers/panel/panel.component.mjs +0 -12
  273. package/esm2022/components/date-range/cmat-components-date-range.mjs +0 -5
  274. package/esm2022/components/date-range/date-range.component.mjs +0 -558
  275. package/esm2022/components/date-range/public-api.mjs +0 -2
  276. package/esm2022/components/drawer/cmat-components-drawer.mjs +0 -5
  277. package/esm2022/components/drawer/drawer.component.mjs +0 -301
  278. package/esm2022/components/drawer/drawer.service.mjs +0 -41
  279. package/esm2022/components/drawer/drawer.types.mjs +0 -2
  280. package/esm2022/components/drawer/public-api.mjs +0 -4
  281. package/esm2022/components/fullscreen/cmat-components-fullscreen.mjs +0 -5
  282. package/esm2022/components/fullscreen/fullscreen.component.mjs +0 -44
  283. package/esm2022/components/fullscreen/public-api.mjs +0 -2
  284. package/esm2022/components/highlight/cmat-components-highlight.mjs +0 -5
  285. package/esm2022/components/highlight/highlight.component.mjs +0 -80
  286. package/esm2022/components/highlight/highlight.service.mjs +0 -47
  287. package/esm2022/components/highlight/public-api.mjs +0 -3
  288. package/esm2022/components/json-editor/cmat-components-json-editor.mjs +0 -5
  289. package/esm2022/components/json-editor/json-editor.component.mjs +0 -176
  290. package/esm2022/components/json-editor/public-api.mjs +0 -2
  291. package/esm2022/components/masonry/cmat-components-masonry.mjs +0 -5
  292. package/esm2022/components/masonry/masonry.component.mjs +0 -54
  293. package/esm2022/components/masonry/public-api.mjs +0 -2
  294. package/esm2022/components/material-color-picker/base-color.mjs +0 -13
  295. package/esm2022/components/material-color-picker/cmat-components-material-color-picker.mjs +0 -5
  296. package/esm2022/components/material-color-picker/material-color-picker.component.mjs +0 -147
  297. package/esm2022/components/material-color-picker/public-api.mjs +0 -3
  298. package/esm2022/components/material-color-picker/selected-color.mjs +0 -3
  299. package/esm2022/components/material-datetimepicker/calendar-body.mjs +0 -76
  300. package/esm2022/components/material-datetimepicker/calendar.mjs +0 -670
  301. package/esm2022/components/material-datetimepicker/clock.mjs +0 -290
  302. package/esm2022/components/material-datetimepicker/cmat-components-material-datetimepicker.mjs +0 -5
  303. package/esm2022/components/material-datetimepicker/datetimepicker-animations.mjs +0 -34
  304. package/esm2022/components/material-datetimepicker/datetimepicker-errors.mjs +0 -6
  305. package/esm2022/components/material-datetimepicker/datetimepicker-filtertype.mjs +0 -8
  306. package/esm2022/components/material-datetimepicker/datetimepicker-input.mjs +0 -341
  307. package/esm2022/components/material-datetimepicker/datetimepicker-intl.mjs +0 -63
  308. package/esm2022/components/material-datetimepicker/datetimepicker-toggle.mjs +0 -87
  309. package/esm2022/components/material-datetimepicker/datetimepicker-types.mjs +0 -2
  310. package/esm2022/components/material-datetimepicker/datetimepicker.mjs +0 -531
  311. package/esm2022/components/material-datetimepicker/month-view.mjs +0 -141
  312. package/esm2022/components/material-datetimepicker/multi-year-view.mjs +0 -197
  313. package/esm2022/components/material-datetimepicker/public-api.mjs +0 -11
  314. package/esm2022/components/material-datetimepicker/time.mjs +0 -455
  315. package/esm2022/components/material-datetimepicker/year-view.mjs +0 -124
  316. package/esm2022/components/navigation/cmat-components-navigation.mjs +0 -5
  317. package/esm2022/components/navigation/horizontal/components/basic/basic.component.mjs +0 -70
  318. package/esm2022/components/navigation/horizontal/components/branch/branch.component.mjs +0 -82
  319. package/esm2022/components/navigation/horizontal/components/divider/divider.component.mjs +0 -47
  320. package/esm2022/components/navigation/horizontal/components/spacer/spacer.component.mjs +0 -47
  321. package/esm2022/components/navigation/horizontal/horizontal.component.mjs +0 -87
  322. package/esm2022/components/navigation/navigation.service.mjs +0 -140
  323. package/esm2022/components/navigation/navigation.types.mjs +0 -3
  324. package/esm2022/components/navigation/public-api.mjs +0 -5
  325. package/esm2022/components/navigation/vertical/components/aside/aside.component.mjs +0 -162
  326. package/esm2022/components/navigation/vertical/components/basic/basic.component.mjs +0 -60
  327. package/esm2022/components/navigation/vertical/components/collapsable/collapsable.component.mjs +0 -277
  328. package/esm2022/components/navigation/vertical/components/divider/divider.component.mjs +0 -56
  329. package/esm2022/components/navigation/vertical/components/group/group.component.mjs +0 -78
  330. package/esm2022/components/navigation/vertical/components/spacer/spacer.component.mjs +0 -56
  331. package/esm2022/components/navigation/vertical/vertical.component.mjs +0 -584
  332. package/esm2022/components/pagination/cmat-components-pagination.mjs +0 -5
  333. package/esm2022/components/pagination/pagination.component.mjs +0 -67
  334. package/esm2022/components/pagination/pagination.directive.mjs +0 -197
  335. package/esm2022/components/pagination/pagination.instance.mjs +0 -2
  336. package/esm2022/components/pagination/pagination.pipe.mjs +0 -100
  337. package/esm2022/components/pagination/pagination.service.mjs +0 -90
  338. package/esm2022/components/pagination/public-api.mjs +0 -6
  339. package/esm2022/components/password-strength/animations/index.mjs +0 -48
  340. package/esm2022/components/password-strength/cmat-components-password-strength.mjs +0 -5
  341. package/esm2022/components/password-strength/enum.mjs +0 -17
  342. package/esm2022/components/password-strength/mat-pass-toggle-visibility/mat-pass-toggle-visibility.component.mjs +0 -27
  343. package/esm2022/components/password-strength/mat-password-strength/mat-password-strength.component.mjs +0 -206
  344. package/esm2022/components/password-strength/mat-password-strength-info/mat-password-strength-info.component.mjs +0 -150
  345. package/esm2022/components/password-strength/mat-password-strength-validator.mjs +0 -36
  346. package/esm2022/components/password-strength/public-api.mjs +0 -4
  347. package/esm2022/components/password-strength/regexp.class.mjs +0 -8
  348. package/esm2022/components/popover/cmat-components-popover.mjs +0 -5
  349. package/esm2022/components/popover/popover-trigger.mjs +0 -442
  350. package/esm2022/components/popover/popover.component.mjs +0 -348
  351. package/esm2022/components/popover/popover.errors.mjs +0 -27
  352. package/esm2022/components/popover/popover.interfaces.mjs +0 -2
  353. package/esm2022/components/popover/popover.target.mjs +0 -18
  354. package/esm2022/components/popover/popover.type.mjs +0 -2
  355. package/esm2022/components/popover/public-api.mjs +0 -5
  356. package/esm2022/components/progress-bar/cmat-components-progress-bar.mjs +0 -5
  357. package/esm2022/components/progress-bar/progress-bar.component.mjs +0 -58
  358. package/esm2022/components/progress-bar/public-api.mjs +0 -2
  359. package/esm2022/components/rating/cmat-components-rating.mjs +0 -5
  360. package/esm2022/components/rating/public-api.mjs +0 -2
  361. package/esm2022/components/rating/rating.component.mjs +0 -202
  362. package/esm2022/components/select-search/cmat-components-select-search.mjs +0 -5
  363. package/esm2022/components/select-search/default-options.mjs +0 -16
  364. package/esm2022/components/select-search/public-api.mjs +0 -3
  365. package/esm2022/components/select-search/select-no-entries-found.directive.mjs +0 -14
  366. package/esm2022/components/select-search/select-search-clear.directive.mjs +0 -14
  367. package/esm2022/components/select-search/select-search.component.mjs +0 -485
  368. package/esm2022/components/select-tree/cmat-components-select-tree.mjs +0 -5
  369. package/esm2022/components/select-tree/public-api.mjs +0 -4
  370. package/esm2022/components/select-tree/select-tree.component.mjs +0 -565
  371. package/esm2022/components/select-tree/select-tree.flatnode.mjs +0 -3
  372. package/esm2022/components/select-tree/select-tree.node.mjs +0 -3
  373. package/esm2022/components/timeline/cmat-components-timeline.mjs +0 -5
  374. package/esm2022/components/timeline/public-api.mjs +0 -3
  375. package/esm2022/components/timeline/timeline-item/timeline-item.component.mjs +0 -70
  376. package/esm2022/components/timeline/timeline.component.mjs +0 -107
  377. package/esm2022/components/toast/cmat-components-toast.mjs +0 -5
  378. package/esm2022/components/toast/models/global-config.model.mjs +0 -2
  379. package/esm2022/components/toast/models/toast.model.mjs +0 -2
  380. package/esm2022/components/toast/models/type.model.mjs +0 -2
  381. package/esm2022/components/toast/public-api.mjs +0 -7
  382. package/esm2022/components/toast/toast-modal.component.mjs +0 -53
  383. package/esm2022/components/toast/toast.component.mjs +0 -30
  384. package/esm2022/components/toast/toast.service.mjs +0 -122
  385. package/esm2022/components/transfer-picker/cmat-components-transfer-picker.mjs +0 -5
  386. package/esm2022/components/transfer-picker/filter/filter.component.mjs +0 -91
  387. package/esm2022/components/transfer-picker/interface.mjs +0 -17
  388. package/esm2022/components/transfer-picker/public-api.mjs +0 -8
  389. package/esm2022/components/transfer-picker/search/search.component.mjs +0 -38
  390. package/esm2022/components/transfer-picker/transfer-picker-source/transfer-picker-source.component.mjs +0 -201
  391. package/esm2022/components/transfer-picker/transfer-picker-target/transfer-picker-target.component.mjs +0 -32
  392. package/esm2022/components/transfer-picker/transfer-picker.component.mjs +0 -84
  393. package/esm2022/components/transfer-picker/transfer-picker.service.mjs +0 -137
  394. package/esm2022/components/upload/cmat-components-upload.mjs +0 -5
  395. package/esm2022/components/upload/files.type.mjs +0 -2
  396. package/esm2022/components/upload/files.util.service.mjs +0 -89
  397. package/esm2022/components/upload/public-api.mjs +0 -5
  398. package/esm2022/components/upload/upload-queue/upload-queue.component.mjs +0 -155
  399. package/esm2022/components/upload/upload.component.mjs +0 -118
  400. package/esm2022/directives/animate-on-scroll/animate-on-scroll.directive.mjs +0 -126
  401. package/esm2022/directives/animate-on-scroll/cmat-directives-animate-on-scroll.mjs +0 -5
  402. package/esm2022/directives/animate-on-scroll/public-api.mjs +0 -2
  403. package/esm2022/directives/animate-on-scroll/scroll.service.mjs +0 -38
  404. package/esm2022/directives/autofocus/autofocus.directive.mjs +0 -20
  405. package/esm2022/directives/autofocus/cmat-directives-autofocus.mjs +0 -5
  406. package/esm2022/directives/autofocus/public-api.mjs +0 -2
  407. package/esm2022/directives/debounce/abstract-debounce.directive.mjs +0 -34
  408. package/esm2022/directives/debounce/cmat-directives-debounce.mjs +0 -5
  409. package/esm2022/directives/debounce/debounce-click.directive.mjs +0 -25
  410. package/esm2022/directives/debounce/debounce-keyup.directive.mjs +0 -25
  411. package/esm2022/directives/debounce/public-api.mjs +0 -3
  412. package/esm2022/directives/digit-only/cmat-directives-digit-only.mjs +0 -5
  413. package/esm2022/directives/digit-only/digit-only.directive.mjs +0 -298
  414. package/esm2022/directives/digit-only/mask.directive.mjs +0 -84
  415. package/esm2022/directives/digit-only/public-api.mjs +0 -3
  416. package/esm2022/directives/equal-validator/cmat-directives-equal-validator.mjs +0 -5
  417. package/esm2022/directives/equal-validator/equal-validator.directive.mjs +0 -54
  418. package/esm2022/directives/equal-validator/public-api.mjs +0 -2
  419. package/esm2022/lib/mock-api/cmat-lib-mock-api.mjs +0 -5
  420. package/esm2022/lib/mock-api/mock-api.constants.mjs +0 -3
  421. package/esm2022/lib/mock-api/mock-api.interceptor.mjs +0 -73
  422. package/esm2022/lib/mock-api/mock-api.request-handler.mjs +0 -48
  423. package/esm2022/lib/mock-api/mock-api.service.mjs +0 -93
  424. package/esm2022/lib/mock-api/mock-api.types.mjs +0 -2
  425. package/esm2022/lib/mock-api/mock-api.utils.mjs +0 -16
  426. package/esm2022/lib/mock-api/public-api.mjs +0 -6
  427. package/esm2022/pipes/bytes/bytes.pipe.mjs +0 -25
  428. package/esm2022/pipes/bytes/cmat-pipes-bytes.mjs +0 -5
  429. package/esm2022/pipes/bytes/public-api.mjs +0 -2
  430. package/esm2022/pipes/date-format/cmat-pipes-date-format.mjs +0 -5
  431. package/esm2022/pipes/date-format/date-format.pipe.mjs +0 -20
  432. package/esm2022/pipes/date-format/public-api.mjs +0 -2
  433. package/esm2022/pipes/find-by-key/cmat-pipes-find-by-key.mjs +0 -5
  434. package/esm2022/pipes/find-by-key/find-by-key.pipe.mjs +0 -23
  435. package/esm2022/pipes/find-by-key/public-api.mjs +0 -2
  436. package/esm2022/pipes/group-by/cmat-pipes-group-by.mjs +0 -5
  437. package/esm2022/pipes/group-by/group-by.pipe.mjs +0 -29
  438. package/esm2022/pipes/group-by/public-api.mjs +0 -2
  439. package/esm2022/pipes/keys/cmat-pipes-keys.mjs +0 -5
  440. package/esm2022/pipes/keys/keys.pipe.mjs +0 -26
  441. package/esm2022/pipes/keys/public-api.mjs +0 -2
  442. package/esm2022/pipes/secure/cmat-pipes-secure.mjs +0 -5
  443. package/esm2022/pipes/secure/public-api.mjs +0 -2
  444. package/esm2022/pipes/secure/secure-pipe.mjs +0 -46
  445. package/esm2022/pipes/uppercase/cmat-pipes-uppercase.mjs +0 -5
  446. package/esm2022/pipes/uppercase/public-api.mjs +0 -2
  447. package/esm2022/pipes/uppercase/uppercase.pipe.mjs +0 -17
  448. package/esm2022/public-api.mjs +0 -2
  449. package/esm2022/services/alert/alert.dialog.mjs +0 -12
  450. package/esm2022/services/alert/alert.message.mjs +0 -9
  451. package/esm2022/services/alert/alert.service.mjs +0 -166
  452. package/esm2022/services/alert/cmat-services-alert.mjs +0 -5
  453. package/esm2022/services/alert/enum.mjs +0 -15
  454. package/esm2022/services/alert/public-api.mjs +0 -5
  455. package/esm2022/services/config/cmat-services-config.mjs +0 -5
  456. package/esm2022/services/config/config.constants.mjs +0 -3
  457. package/esm2022/services/config/config.service.mjs +0 -35
  458. package/esm2022/services/config/public-api.mjs +0 -4
  459. package/esm2022/services/config/urlStateConfig.service.mjs +0 -30
  460. package/esm2022/services/confirmation/cmat-services-confirmation.mjs +0 -5
  461. package/esm2022/services/confirmation/confirmation.service.mjs +0 -51
  462. package/esm2022/services/confirmation/confirmation.types.mjs +0 -2
  463. package/esm2022/services/confirmation/dialog/dialog.component.mjs +0 -25
  464. package/esm2022/services/confirmation/public-api.mjs +0 -3
  465. package/esm2022/services/data/cmat-services-data.mjs +0 -5
  466. package/esm2022/services/data/data.service.mjs +0 -169
  467. package/esm2022/services/data/public-api.mjs +0 -2
  468. package/esm2022/services/loading/cmat-services-loading.mjs +0 -5
  469. package/esm2022/services/loading/loading.interceptor.mjs +0 -29
  470. package/esm2022/services/loading/loading.service.mjs +0 -72
  471. package/esm2022/services/loading/public-api.mjs +0 -3
  472. package/esm2022/services/local-storage/cmat-services-local-storage.mjs +0 -5
  473. package/esm2022/services/local-storage/local-storage.service.mjs +0 -22
  474. package/esm2022/services/local-storage/public-api.mjs +0 -2
  475. package/esm2022/services/media-watcher/cmat-services-media-watcher.mjs +0 -5
  476. package/esm2022/services/media-watcher/media-watcher.service.mjs +0 -55
  477. package/esm2022/services/media-watcher/public-api.mjs +0 -2
  478. package/esm2022/services/platform/cmat-services-platform.mjs +0 -5
  479. package/esm2022/services/platform/platform.service.mjs +0 -46
  480. package/esm2022/services/platform/public-api.mjs +0 -2
  481. package/esm2022/services/splash-screen/cmat-services-splash-screen.mjs +0 -5
  482. package/esm2022/services/splash-screen/public-api.mjs +0 -2
  483. package/esm2022/services/splash-screen/splash-screen.service.mjs +0 -42
  484. package/esm2022/services/title/cmat-services-title.mjs +0 -5
  485. package/esm2022/services/title/public-api.mjs +0 -2
  486. package/esm2022/services/title/title.service.mjs +0 -46
  487. package/esm2022/services/translation/cmat-services-translation.mjs +0 -5
  488. package/esm2022/services/translation/public-api.mjs +0 -2
  489. package/esm2022/services/translation/translation.service.mjs +0 -62
  490. package/esm2022/services/utils/cmat-services-utils.mjs +0 -5
  491. package/esm2022/services/utils/public-api.mjs +0 -2
  492. package/esm2022/services/utils/utils.service.mjs +0 -435
  493. package/esm2022/validators/cmat-validators.mjs +0 -5
  494. package/esm2022/validators/public-api.mjs +0 -2
  495. package/esm2022/validators/validators.mjs +0 -33
  496. package/esm2022/version/cmat-version.mjs +0 -5
  497. package/esm2022/version/public-api.mjs +0 -2
  498. 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5waXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL3BhZ2luYXRpb24vcGFnaW5hdGlvbi5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3BELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxXQUFXLENBQUM7OztBQUlsQyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUM7QUF3QjdDLE1BQU0sT0FBTyxnQkFBZ0I7SUFHekIsWUFBb0IsT0FBOEI7UUFBOUIsWUFBTyxHQUFQLE9BQU8sQ0FBdUI7UUFGMUMsVUFBSyxHQUFrQyxFQUFFLENBQUM7SUFHbEQsQ0FBQztJQUVNLFNBQVMsQ0FBNkIsVUFBYSxFQUFFLElBQTBCO1FBQ2xGLElBQUksQ0FBQyxDQUFDLFVBQVUsWUFBWSxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2pDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNoRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDbEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQVUsQ0FBQztZQUN0QyxDQUFDO2lCQUFNLENBQUM7Z0JBQ0osT0FBTyxVQUFVLENBQUM7WUFDdEIsQ0FBQztRQUNMLENBQUM7UUFFRCxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssVUFBVSxDQUFDLE1BQU0sQ0FBQztRQUNoRixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUV2RCxNQUFNLEVBQUUsR0FBRyxRQUFRLENBQUMsRUFBRyxDQUFDO1FBQ3hCLElBQUksS0FBSyxDQUFDO1FBQ1YsSUFBSSxHQUFHLENBQUM7UUFDUixJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBRWhDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRW5ELElBQUksQ0FBQyxjQUFjLElBQUksVUFBVSxZQUFZLEtBQUssRUFBRSxDQUFDO1lBQ2pELE9BQU8sR0FBRyxDQUFDLE9BQU8sSUFBSSxZQUFZLENBQUM7WUFDbkMsS0FBSyxHQUFHLENBQUMsUUFBUSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsR0FBRyxPQUFPLENBQUM7WUFDN0MsR0FBRyxHQUFHLEtBQUssR0FBRyxPQUFPLENBQUM7WUFFdEIsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ3ZFLElBQUksV0FBVyxFQUFFLENBQUM7Z0JBQ2QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQVUsQ0FBQztZQUNyQyxDQUFDO2lCQUFNLENBQUM7Z0JBQ0osTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUNuRCxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQzdCLE9BQU8sS0FBVSxDQUFDO1lBQ3RCLENBQUM7UUFDTCxDQUFDO2FBQU0sQ0FBQztZQUNKLElBQUksVUFBVSxFQUFFLENBQUM7Z0JBQ2IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2pDLENBQUM7WUFFRCxJQUFJLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztZQUV4RCxPQUFPLFVBQVUsQ0FBQztRQUN0QixDQUFDO0lBRUwsQ0FBQztJQUVPLGNBQWMsQ0FBQyxVQUFpQixFQUFFLE1BQTRCO1FBQ2xFLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFekIsT0FBTztZQUNILEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFO1lBQzVELFlBQVksRUFBRSxDQUFDLE1BQU0sQ0FBQyxZQUFZLElBQUksRUFBRTtZQUN4QyxXQUFXLEVBQUUsQ0FBQyxNQUFNLENBQUMsV0FBVyxJQUFJLENBQUM7WUFDckMsVUFBVSxFQUFFLENBQUMsTUFBTSxDQUFDLFVBQVUsSUFBSSxVQUFVLENBQUMsTUFBTTtTQUN0RCxDQUFDO0lBQ04sQ0FBQztJQUVPLFdBQVcsQ0FBQyxNQUE0QjtRQUM1QyxNQUFNLFFBQVEsR0FBRyxDQUFDLGNBQWMsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUVqRCxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxNQUFNLENBQUMsQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNyQixNQUFNLElBQUksS0FBSyxDQUFDLHdFQUF3RSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsSCxDQUFDO0lBQ0wsQ0FBQztJQUVPLFVBQVUsQ0FBQyxFQUFVLEVBQUUsVUFBaUIsRUFBRSxLQUFZLEVBQUUsS0FBYyxFQUFFLEdBQVk7UUFDeEYsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsR0FBRztZQUNiLFVBQVU7WUFDVixJQUFJLEVBQUUsVUFBVSxDQUFDLE1BQU07WUFDdkIsS0FBSztZQUNMLEtBQUs7WUFDTCxHQUFHO1NBQ04sQ0FBQztJQUNOLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxFQUFVLEVBQUUsVUFBaUIsRUFBRSxLQUFhLEVBQUUsR0FBVztRQUMvRSxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNULE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7UUFDRCxNQUFNLG1CQUFtQixHQUFHLEtBQUssQ0FBQyxJQUFJLEtBQUssVUFBVSxDQUFDLE1BQU07WUFDeEQsS0FBSyxDQUFDLEtBQUssS0FBSyxLQUFLO1lBQ3JCLEtBQUssQ0FBQyxHQUFHLEtBQUssR0FBRyxDQUFDO1FBRXRCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sS0FBSyxDQUFDO1FBQ2pCLENBQUM7UUFFRCxPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsT0FBTyxLQUFLLFVBQVUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN4RixDQUFDOzhHQWhHUSxnQkFBZ0I7NEdBQWhCLGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFMNUIsSUFBSTttQkFBQztvQkFDRixJQUFJLEVBQUUsVUFBVTtvQkFDaEIsSUFBSSxFQUFFLElBQUk7b0JBQ1YsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBpc05pbCB9IGZyb20gJ2xvZGFzaC1lcyc7XHJcbmltcG9ydCB7IENtYXRQYWdpbmF0aW9uSW5zdGFuY2UgfSBmcm9tICcuL3BhZ2luYXRpb24uaW5zdGFuY2UnO1xyXG5pbXBvcnQgeyBDbWF0UGFnaW5hdGlvblNlcnZpY2UgfSBmcm9tICcuL3BhZ2luYXRpb24uc2VydmljZSc7XHJcblxyXG5jb25zdCBMQVJHRV9OVU1CRVIgPSBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUjtcclxuXHJcbmV4cG9ydCB0eXBlIENvbGxlY3Rpb248VD4gPSBUW107XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENtYXRQYWdpbmF0ZVBpcGVBcmdzIHtcclxuICAgIGlkPzogc3RyaW5nO1xyXG4gICAgY3VycmVudFBhZ2U6IHN0cmluZyB8IG51bWJlcjtcclxuICAgIGl0ZW1zUGVyUGFnZTogc3RyaW5nIHwgbnVtYmVyO1xyXG4gICAgdG90YWxJdGVtczogc3RyaW5nIHwgbnVtYmVyO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENtYXRQaXBlU3RhdGUge1xyXG4gICAgY29sbGVjdGlvbjogYW55W107XHJcbiAgICBzaXplOiBudW1iZXI7XHJcbiAgICBzdGFydD86IG51bWJlcjtcclxuICAgIGVuZD86IG51bWJlcjtcclxuICAgIHNsaWNlOiBhbnlbXTtcclxufVxyXG5cclxuQFBpcGUoe1xyXG4gICAgbmFtZTogJ3BhZ2luYXRlJyxcclxuICAgIHB1cmU6IHRydWUsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0UGFnaW5hdGVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgICBwcml2YXRlIHN0YXRlOiBSZWNvcmQ8c3RyaW5nLCBDbWF0UGlwZVN0YXRlPiA9IHt9O1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc2VydmljZTogQ21hdFBhZ2luYXRpb25TZXJ2aWNlKSB7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHRyYW5zZm9ybTxULCBVIGV4dGVuZHMgQ29sbGVjdGlvbjxUPj4oY29sbGVjdGlvbjogVSwgYXJnczogQ21hdFBhZ2luYXRlUGlwZUFyZ3MpOiBVIHtcclxuICAgICAgICBpZiAoIShjb2xsZWN0aW9uIGluc3RhbmNlb2YgQXJyYXkpKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IF9pZCA9IGFyZ3MuaWQgPz8gdGhpcy5zZXJ2aWNlLmRlZmF1bHRJZCgpO1xyXG4gICAgICAgICAgICBpZiAodGhpcy5zdGF0ZVtfaWRdKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zdGF0ZVtfaWRdLnNsaWNlIGFzIFU7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gY29sbGVjdGlvbjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3Qgc2VydmVyU2lkZU1vZGUgPSBhcmdzLnRvdGFsSXRlbXMgJiYgYXJncy50b3RhbEl0ZW1zICE9PSBjb2xsZWN0aW9uLmxlbmd0aDtcclxuICAgICAgICBjb25zdCBpbnN0YW5jZSA9IHRoaXMuY3JlYXRlSW5zdGFuY2UoY29sbGVjdGlvbiwgYXJncyk7XHJcblxyXG4gICAgICAgIGNvbnN0IGlkID0gaW5zdGFuY2UuaWQhO1xyXG4gICAgICAgIGxldCBzdGFydDtcclxuICAgICAgICBsZXQgZW5kO1xyXG4gICAgICAgIGxldCBwZXJQYWdlID0gYXJncy5pdGVtc1BlclBhZ2U7XHJcblxyXG4gICAgICAgIGNvbnN0IGVtaXRDaGFuZ2UgPSB0aGlzLnNlcnZpY2UucmVnaXN0ZXIoaW5zdGFuY2UpO1xyXG5cclxuICAgICAgICBpZiAoIXNlcnZlclNpZGVNb2RlICYmIGNvbGxlY3Rpb24gaW5zdGFuY2VvZiBBcnJheSkge1xyXG4gICAgICAgICAgICBwZXJQYWdlID0gK3BlclBhZ2UgfHwgTEFSR0VfTlVNQkVSO1xyXG4gICAgICAgICAgICBzdGFydCA9IChpbnN0YW5jZS5jdXJyZW50UGFnZSAtIDEpICogcGVyUGFnZTtcclxuICAgICAgICAgICAgZW5kID0gc3RhcnQgKyBwZXJQYWdlO1xyXG5cclxuICAgICAgICAgICAgY29uc3QgaXNJZGVudGljYWwgPSB0aGlzLl9zdGF0ZUlzSWRlbnRpY2FsKGlkLCBjb2xsZWN0aW9uLCBzdGFydCwgZW5kKTtcclxuICAgICAgICAgICAgaWYgKGlzSWRlbnRpY2FsKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zdGF0ZVtpZF0uc2xpY2UgYXMgVTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHNsaWNlID0gY29sbGVjdGlvbi5zbGljZShzdGFydCwgZW5kKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuX3NhdmVTdGF0ZShpZCwgY29sbGVjdGlvbiwgc2xpY2UsIHN0YXJ0LCBlbmQpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXJ2aWNlLmNoYW5nZS5lbWl0KGlkKTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBzbGljZSBhcyBVO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKGVtaXRDaGFuZ2UpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2VydmljZS5jaGFuZ2UuZW1pdChpZCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRoaXMuX3NhdmVTdGF0ZShpZCwgY29sbGVjdGlvbiwgY29sbGVjdGlvbiwgc3RhcnQsIGVuZCk7XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gY29sbGVjdGlvbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgY3JlYXRlSW5zdGFuY2UoY29sbGVjdGlvbjogYW55W10sIGNvbmZpZzogQ21hdFBhZ2luYXRlUGlwZUFyZ3MpOiBDbWF0UGFnaW5hdGlvbkluc3RhbmNlIHtcclxuICAgICAgICB0aGlzLmNoZWNrQ29uZmlnKGNvbmZpZyk7XHJcblxyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGlkOiAhaXNOaWwoY29uZmlnLmlkKSA/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=