cmat 0.0.17 → 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 (495) 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-table/index.d.ts +5 -0
  30. package/components/select-table/public-api.d.ts +2 -0
  31. package/components/select-table/select-table.component.d.ts +96 -0
  32. package/components/select-table/select-table.type.d.ts +20 -0
  33. package/components/select-tree/select-tree.component.d.ts +11 -12
  34. package/components/speed-dial/index.d.ts +5 -0
  35. package/components/speed-dial/public-api.d.ts +2 -0
  36. package/components/speed-dial/speed-dial.component.d.ts +63 -0
  37. package/components/transfer-picker/interface.d.ts +0 -1
  38. package/components/transfer-picker/transfer-picker-source/transfer-picker-source.component.d.ts +8 -6
  39. package/components/treetable/index.d.ts +5 -0
  40. package/components/treetable/public-api.d.ts +2 -0
  41. package/components/treetable/treetable.component.d.ts +32 -0
  42. package/components/treetable/treetable.interface.d.ts +9 -0
  43. package/directives/animate-on-scroll/animate-on-scroll.directive.d.ts +4 -4
  44. package/directives/arrow-cursor/arrow-cursor.directive.d.ts +31 -0
  45. package/directives/arrow-cursor/index.d.ts +5 -0
  46. package/directives/arrow-cursor/public-api.d.ts +1 -0
  47. package/directives/data-exporter/constants.d.ts +26 -0
  48. package/directives/data-exporter/data-exporter.directive.d.ts +18 -0
  49. package/directives/data-exporter/index.d.ts +5 -0
  50. package/directives/data-exporter/mime.d.ts +5 -0
  51. package/directives/data-exporter/options.d.ts +21 -0
  52. package/directives/data-exporter/public-api.d.ts +2 -0
  53. package/directives/data-exporter/services/exporters/csv-exporter.service.d.ts +12 -0
  54. package/directives/data-exporter/services/exporters/exporter.d.ts +4 -0
  55. package/directives/data-exporter/services/exporters/file-exporter.d.ts +8 -0
  56. package/directives/data-exporter/services/exporters/json-exporter.service.d.ts +11 -0
  57. package/directives/data-exporter/services/exporters/txt-exporter.service.d.ts +12 -0
  58. package/directives/data-exporter/services/exporters/worksheet-exporter.d.ts +10 -0
  59. package/directives/data-exporter/services/exporters/xls-exporter.service.d.ts +14 -0
  60. package/directives/data-exporter/services/exporters/xlsx-exporter.service.d.ts +9 -0
  61. package/directives/data-exporter/services/file-util.d.ts +8 -0
  62. package/directives/data-exporter/services/service-locator.service.d.ts +11 -0
  63. package/directives/debounce/abstract-debounce.directive.d.ts +1 -1
  64. package/fesm2022/cmat-animations.mjs.map +1 -1
  65. package/fesm2022/cmat-components-adapter.mjs +9 -9
  66. package/fesm2022/cmat-components-adapter.mjs.map +1 -1
  67. package/fesm2022/cmat-components-breadcrumb.mjs +10 -10
  68. package/fesm2022/cmat-components-breadcrumb.mjs.map +1 -1
  69. package/fesm2022/cmat-components-card.mjs +4 -4
  70. package/fesm2022/cmat-components-card.mjs.map +1 -1
  71. package/fesm2022/cmat-components-carousel.mjs +711 -0
  72. package/fesm2022/cmat-components-carousel.mjs.map +1 -0
  73. package/fesm2022/cmat-components-cascade.mjs +12 -12
  74. package/fesm2022/cmat-components-cascade.mjs.map +1 -1
  75. package/fesm2022/cmat-components-chip-input.mjs +5 -5
  76. package/fesm2022/cmat-components-chip-input.mjs.map +1 -1
  77. package/fesm2022/cmat-components-custom-formly.mjs +168 -155
  78. package/fesm2022/cmat-components-custom-formly.mjs.map +1 -1
  79. package/fesm2022/cmat-components-date-range.mjs +5 -5
  80. package/fesm2022/cmat-components-date-range.mjs.map +1 -1
  81. package/fesm2022/cmat-components-drawer.mjs +6 -6
  82. package/fesm2022/cmat-components-drawer.mjs.map +1 -1
  83. package/fesm2022/cmat-components-fullscreen.mjs +4 -4
  84. package/fesm2022/cmat-components-fullscreen.mjs.map +1 -1
  85. package/fesm2022/cmat-components-highlight.mjs +7 -7
  86. package/fesm2022/cmat-components-highlight.mjs.map +1 -1
  87. package/fesm2022/cmat-components-image-viewer.mjs +227 -0
  88. package/fesm2022/cmat-components-image-viewer.mjs.map +1 -0
  89. package/fesm2022/cmat-components-json-editor.mjs +4 -4
  90. package/fesm2022/cmat-components-json-editor.mjs.map +1 -1
  91. package/fesm2022/cmat-components-knob-input.mjs +404 -0
  92. package/fesm2022/cmat-components-knob-input.mjs.map +1 -0
  93. package/fesm2022/cmat-components-masonry.mjs +4 -4
  94. package/fesm2022/cmat-components-masonry.mjs.map +1 -1
  95. package/fesm2022/cmat-components-material-color-picker.mjs +4 -4
  96. package/fesm2022/cmat-components-material-color-picker.mjs.map +1 -1
  97. package/fesm2022/cmat-components-material-datetimepicker.mjs +53 -53
  98. package/fesm2022/cmat-components-material-datetimepicker.mjs.map +1 -1
  99. package/fesm2022/cmat-components-navigation.mjs +51 -51
  100. package/fesm2022/cmat-components-navigation.mjs.map +1 -1
  101. package/fesm2022/cmat-components-opt-input.mjs +457 -0
  102. package/fesm2022/cmat-components-opt-input.mjs.map +1 -0
  103. package/fesm2022/cmat-components-org-chart.mjs +141 -0
  104. package/fesm2022/cmat-components-org-chart.mjs.map +1 -0
  105. package/fesm2022/cmat-components-pagination.mjs +13 -13
  106. package/fesm2022/cmat-components-pagination.mjs.map +1 -1
  107. package/fesm2022/cmat-components-password-strength.mjs +12 -12
  108. package/fesm2022/cmat-components-password-strength.mjs.map +1 -1
  109. package/fesm2022/cmat-components-popover.mjs +10 -10
  110. package/fesm2022/cmat-components-popover.mjs.map +1 -1
  111. package/fesm2022/cmat-components-progress-bar.mjs +4 -4
  112. package/fesm2022/cmat-components-progress-bar.mjs.map +1 -1
  113. package/fesm2022/cmat-components-rating.mjs +4 -4
  114. package/fesm2022/cmat-components-rating.mjs.map +1 -1
  115. package/fesm2022/cmat-components-select-search.mjs +11 -11
  116. package/fesm2022/cmat-components-select-search.mjs.map +1 -1
  117. package/fesm2022/cmat-components-select-table.mjs +658 -0
  118. package/fesm2022/cmat-components-select-table.mjs.map +1 -0
  119. package/fesm2022/cmat-components-select-tree.mjs +75 -57
  120. package/fesm2022/cmat-components-select-tree.mjs.map +1 -1
  121. package/fesm2022/cmat-components-speed-dial.mjs +312 -0
  122. package/fesm2022/cmat-components-speed-dial.mjs.map +1 -0
  123. package/fesm2022/cmat-components-timeline.mjs +14 -14
  124. package/fesm2022/cmat-components-timeline.mjs.map +1 -1
  125. package/fesm2022/cmat-components-toast.mjs +11 -11
  126. package/fesm2022/cmat-components-toast.mjs.map +1 -1
  127. package/fesm2022/cmat-components-transfer-picker.mjs +60 -41
  128. package/fesm2022/cmat-components-transfer-picker.mjs.map +1 -1
  129. package/fesm2022/cmat-components-treetable.mjs +122 -0
  130. package/fesm2022/cmat-components-treetable.mjs.map +1 -0
  131. package/fesm2022/cmat-components-upload.mjs +11 -11
  132. package/fesm2022/cmat-components-upload.mjs.map +1 -1
  133. package/fesm2022/cmat-directives-animate-on-scroll.mjs +21 -21
  134. package/fesm2022/cmat-directives-animate-on-scroll.mjs.map +1 -1
  135. package/fesm2022/cmat-directives-arrow-cursor.mjs +184 -0
  136. package/fesm2022/cmat-directives-arrow-cursor.mjs.map +1 -0
  137. package/fesm2022/cmat-directives-autofocus.mjs +3 -3
  138. package/fesm2022/cmat-directives-autofocus.mjs.map +1 -1
  139. package/fesm2022/cmat-directives-data-exporter.mjs +324 -0
  140. package/fesm2022/cmat-directives-data-exporter.mjs.map +1 -0
  141. package/fesm2022/cmat-directives-debounce.mjs +9 -9
  142. package/fesm2022/cmat-directives-debounce.mjs.map +1 -1
  143. package/fesm2022/cmat-directives-digit-only.mjs +8 -6
  144. package/fesm2022/cmat-directives-digit-only.mjs.map +1 -1
  145. package/fesm2022/cmat-directives-equal-validator.mjs +3 -3
  146. package/fesm2022/cmat-directives-equal-validator.mjs.map +1 -1
  147. package/fesm2022/cmat-lib-mock-api.mjs +6 -6
  148. package/fesm2022/cmat-lib-mock-api.mjs.map +1 -1
  149. package/fesm2022/cmat-pipes-bytes.mjs +3 -3
  150. package/fesm2022/cmat-pipes-bytes.mjs.map +1 -1
  151. package/fesm2022/cmat-pipes-date-format.mjs +3 -3
  152. package/fesm2022/cmat-pipes-date-format.mjs.map +1 -1
  153. package/fesm2022/cmat-pipes-find-by-key.mjs +3 -3
  154. package/fesm2022/cmat-pipes-find-by-key.mjs.map +1 -1
  155. package/fesm2022/cmat-pipes-group-by.mjs +3 -3
  156. package/fesm2022/cmat-pipes-group-by.mjs.map +1 -1
  157. package/fesm2022/cmat-pipes-keys.mjs +3 -3
  158. package/fesm2022/cmat-pipes-keys.mjs.map +1 -1
  159. package/fesm2022/cmat-pipes-secure.mjs +3 -3
  160. package/fesm2022/cmat-pipes-secure.mjs.map +1 -1
  161. package/fesm2022/cmat-pipes-uppercase.mjs +3 -3
  162. package/fesm2022/cmat-pipes-uppercase.mjs.map +1 -1
  163. package/fesm2022/cmat-services-alert.mjs +3 -3
  164. package/fesm2022/cmat-services-alert.mjs.map +1 -1
  165. package/fesm2022/cmat-services-config.mjs +6 -6
  166. package/fesm2022/cmat-services-config.mjs.map +1 -1
  167. package/fesm2022/cmat-services-confirmation.mjs +7 -7
  168. package/fesm2022/cmat-services-confirmation.mjs.map +1 -1
  169. package/fesm2022/cmat-services-data.mjs +3 -3
  170. package/fesm2022/cmat-services-data.mjs.map +1 -1
  171. package/fesm2022/cmat-services-export-as.mjs +211 -0
  172. package/fesm2022/cmat-services-export-as.mjs.map +1 -0
  173. package/fesm2022/cmat-services-loading.mjs +6 -6
  174. package/fesm2022/cmat-services-loading.mjs.map +1 -1
  175. package/fesm2022/cmat-services-local-storage.mjs +3 -3
  176. package/fesm2022/cmat-services-local-storage.mjs.map +1 -1
  177. package/fesm2022/cmat-services-media-watcher.mjs +3 -3
  178. package/fesm2022/cmat-services-media-watcher.mjs.map +1 -1
  179. package/fesm2022/cmat-services-platform.mjs +3 -3
  180. package/fesm2022/cmat-services-platform.mjs.map +1 -1
  181. package/fesm2022/cmat-services-splash-screen.mjs +3 -3
  182. package/fesm2022/cmat-services-splash-screen.mjs.map +1 -1
  183. package/fesm2022/cmat-services-title.mjs +3 -3
  184. package/fesm2022/cmat-services-title.mjs.map +1 -1
  185. package/fesm2022/cmat-services-translation.mjs +3 -3
  186. package/fesm2022/cmat-services-translation.mjs.map +1 -1
  187. package/fesm2022/cmat-services-utils.mjs +3 -3
  188. package/fesm2022/cmat-services-utils.mjs.map +1 -1
  189. package/fesm2022/cmat-validators.mjs.map +1 -1
  190. package/fesm2022/cmat-version.mjs.map +1 -1
  191. package/icons/arrow-cursor.svg +1 -1
  192. package/package.json +82 -148
  193. package/services/export-as/export-as-config.model.d.ts +8 -0
  194. package/services/export-as/export-as.service.d.ts +43 -0
  195. package/services/export-as/index.d.ts +5 -0
  196. package/services/export-as/public-api.d.ts +2 -0
  197. package/styles/overrides/angular-material.scss +95 -13
  198. package/esm2022/animations/cmat-animations.mjs +0 -5
  199. package/esm2022/animations/defaults.mjs +0 -12
  200. package/esm2022/animations/dropdown.mjs +0 -26
  201. package/esm2022/animations/expand-collapse.mjs +0 -17
  202. package/esm2022/animations/fade.mjs +0 -170
  203. package/esm2022/animations/public-api.mjs +0 -19
  204. package/esm2022/animations/shake.mjs +0 -59
  205. package/esm2022/animations/slide.mjs +0 -124
  206. package/esm2022/animations/transform.mjs +0 -16
  207. package/esm2022/animations/zoom.mjs +0 -38
  208. package/esm2022/cmat.mjs +0 -5
  209. package/esm2022/components/adapter/cmat-components-adapter.mjs +0 -5
  210. package/esm2022/components/adapter/datetime-adapter.mjs +0 -127
  211. package/esm2022/components/adapter/datetime-formats.mjs +0 -3
  212. package/esm2022/components/adapter/dayjs-date-adapter.mjs +0 -198
  213. package/esm2022/components/adapter/dayjs-date-formats.mjs +0 -12
  214. package/esm2022/components/adapter/dayjs-datetime-adapter.mjs +0 -100
  215. package/esm2022/components/adapter/dayjs-datetime-formats.mjs +0 -21
  216. package/esm2022/components/adapter/native-datetime-adapter.mjs +0 -130
  217. package/esm2022/components/adapter/native-datetime-formats.mjs +0 -15
  218. package/esm2022/components/adapter/public-api.mjs +0 -9
  219. package/esm2022/components/breadcrumb/breadcrumb-item.directive.mjs +0 -19
  220. package/esm2022/components/breadcrumb/breadcrumb.component.mjs +0 -94
  221. package/esm2022/components/breadcrumb/breadcrumb.service.mjs +0 -333
  222. package/esm2022/components/breadcrumb/cmat-components-breadcrumb.mjs +0 -5
  223. package/esm2022/components/breadcrumb/public-api.mjs +0 -6
  224. package/esm2022/components/breadcrumb/types/breadcrumb.config.mjs +0 -2
  225. package/esm2022/components/breadcrumb/types/breadcrumb.mjs +0 -2
  226. package/esm2022/components/card/card.component.mjs +0 -49
  227. package/esm2022/components/card/card.types.mjs +0 -2
  228. package/esm2022/components/card/cmat-components-card.mjs +0 -5
  229. package/esm2022/components/card/public-api.mjs +0 -3
  230. package/esm2022/components/cascade/cascade-bottom-sheet/cascade-bottom-sheet.component.mjs +0 -49
  231. package/esm2022/components/cascade/cascade-list/cascade-list.component.mjs +0 -384
  232. package/esm2022/components/cascade/cascade-menu/cascade-menu.component.mjs +0 -22
  233. package/esm2022/components/cascade/cmat-components-cascade.mjs +0 -5
  234. package/esm2022/components/cascade/options.interface.mjs +0 -2
  235. package/esm2022/components/cascade/public-api.mjs +0 -4
  236. package/esm2022/components/chip-input/chip-input.component.mjs +0 -251
  237. package/esm2022/components/chip-input/cmat-components-chip-input.mjs +0 -5
  238. package/esm2022/components/chip-input/public-api.mjs +0 -2
  239. package/esm2022/components/custom-formly/cmat-components-custom-formly.mjs +0 -5
  240. package/esm2022/components/custom-formly/extension/addons.extension.mjs +0 -13
  241. package/esm2022/components/custom-formly/public-api.mjs +0 -29
  242. package/esm2022/components/custom-formly/types/button/button.component.mjs +0 -81
  243. package/esm2022/components/custom-formly/types/cascade/cascade.component.mjs +0 -71
  244. package/esm2022/components/custom-formly/types/checklist/checklist.component.mjs +0 -161
  245. package/esm2022/components/custom-formly/types/chips/chips.component.mjs +0 -55
  246. package/esm2022/components/custom-formly/types/color-picker/color-picker.component.mjs +0 -15
  247. package/esm2022/components/custom-formly/types/date-range/date-range.component.mjs +0 -25
  248. package/esm2022/components/custom-formly/types/datepicker/datepicker.component.mjs +0 -51
  249. package/esm2022/components/custom-formly/types/multicheckbox/multicheckbox.component.mjs +0 -88
  250. package/esm2022/components/custom-formly/types/number/number.component.mjs +0 -27
  251. package/esm2022/components/custom-formly/types/quill/quill.component.mjs +0 -171
  252. package/esm2022/components/custom-formly/types/radio/radio.component.mjs +0 -87
  253. package/esm2022/components/custom-formly/types/rating/rating.component.mjs +0 -27
  254. package/esm2022/components/custom-formly/types/repeat/repeat.component.mjs +0 -25
  255. package/esm2022/components/custom-formly/types/select/select.component.mjs +0 -167
  256. package/esm2022/components/custom-formly/types/select-tree/select-tree.component.mjs +0 -66
  257. package/esm2022/components/custom-formly/types/stepper/horizontal/stepper.component.mjs +0 -28
  258. package/esm2022/components/custom-formly/types/stepper/stepper.type.mjs +0 -2
  259. package/esm2022/components/custom-formly/types/stepper/vertical/stepper.component.mjs +0 -28
  260. package/esm2022/components/custom-formly/types/table/table.component.mjs +0 -127
  261. package/esm2022/components/custom-formly/types/tabs/tab.component.mjs +0 -16
  262. package/esm2022/components/custom-formly/types/tags/tags.component.mjs +0 -146
  263. package/esm2022/components/custom-formly/types/textarea/textarea.component.mjs +0 -25
  264. package/esm2022/components/custom-formly/types/upload/upload.component.mjs +0 -58
  265. package/esm2022/components/custom-formly/wrappers/addons/addons.component.mjs +0 -92
  266. package/esm2022/components/custom-formly/wrappers/card/card.component.mjs +0 -14
  267. package/esm2022/components/custom-formly/wrappers/expansion/expansion.component.mjs +0 -14
  268. package/esm2022/components/custom-formly/wrappers/form-field/form-field.component.mjs +0 -47
  269. package/esm2022/components/custom-formly/wrappers/panel/panel.component.mjs +0 -12
  270. package/esm2022/components/date-range/cmat-components-date-range.mjs +0 -5
  271. package/esm2022/components/date-range/date-range.component.mjs +0 -558
  272. package/esm2022/components/date-range/public-api.mjs +0 -2
  273. package/esm2022/components/drawer/cmat-components-drawer.mjs +0 -5
  274. package/esm2022/components/drawer/drawer.component.mjs +0 -301
  275. package/esm2022/components/drawer/drawer.service.mjs +0 -41
  276. package/esm2022/components/drawer/drawer.types.mjs +0 -2
  277. package/esm2022/components/drawer/public-api.mjs +0 -4
  278. package/esm2022/components/fullscreen/cmat-components-fullscreen.mjs +0 -5
  279. package/esm2022/components/fullscreen/fullscreen.component.mjs +0 -44
  280. package/esm2022/components/fullscreen/public-api.mjs +0 -2
  281. package/esm2022/components/highlight/cmat-components-highlight.mjs +0 -5
  282. package/esm2022/components/highlight/highlight.component.mjs +0 -80
  283. package/esm2022/components/highlight/highlight.service.mjs +0 -47
  284. package/esm2022/components/highlight/public-api.mjs +0 -3
  285. package/esm2022/components/json-editor/cmat-components-json-editor.mjs +0 -5
  286. package/esm2022/components/json-editor/json-editor.component.mjs +0 -176
  287. package/esm2022/components/json-editor/public-api.mjs +0 -2
  288. package/esm2022/components/masonry/cmat-components-masonry.mjs +0 -5
  289. package/esm2022/components/masonry/masonry.component.mjs +0 -54
  290. package/esm2022/components/masonry/public-api.mjs +0 -2
  291. package/esm2022/components/material-color-picker/base-color.mjs +0 -13
  292. package/esm2022/components/material-color-picker/cmat-components-material-color-picker.mjs +0 -5
  293. package/esm2022/components/material-color-picker/material-color-picker.component.mjs +0 -147
  294. package/esm2022/components/material-color-picker/public-api.mjs +0 -3
  295. package/esm2022/components/material-color-picker/selected-color.mjs +0 -3
  296. package/esm2022/components/material-datetimepicker/calendar-body.mjs +0 -76
  297. package/esm2022/components/material-datetimepicker/calendar.mjs +0 -670
  298. package/esm2022/components/material-datetimepicker/clock.mjs +0 -290
  299. package/esm2022/components/material-datetimepicker/cmat-components-material-datetimepicker.mjs +0 -5
  300. package/esm2022/components/material-datetimepicker/datetimepicker-animations.mjs +0 -34
  301. package/esm2022/components/material-datetimepicker/datetimepicker-errors.mjs +0 -6
  302. package/esm2022/components/material-datetimepicker/datetimepicker-filtertype.mjs +0 -8
  303. package/esm2022/components/material-datetimepicker/datetimepicker-input.mjs +0 -341
  304. package/esm2022/components/material-datetimepicker/datetimepicker-intl.mjs +0 -63
  305. package/esm2022/components/material-datetimepicker/datetimepicker-toggle.mjs +0 -87
  306. package/esm2022/components/material-datetimepicker/datetimepicker-types.mjs +0 -2
  307. package/esm2022/components/material-datetimepicker/datetimepicker.mjs +0 -531
  308. package/esm2022/components/material-datetimepicker/month-view.mjs +0 -141
  309. package/esm2022/components/material-datetimepicker/multi-year-view.mjs +0 -197
  310. package/esm2022/components/material-datetimepicker/public-api.mjs +0 -11
  311. package/esm2022/components/material-datetimepicker/time.mjs +0 -455
  312. package/esm2022/components/material-datetimepicker/year-view.mjs +0 -124
  313. package/esm2022/components/navigation/cmat-components-navigation.mjs +0 -5
  314. package/esm2022/components/navigation/horizontal/components/basic/basic.component.mjs +0 -70
  315. package/esm2022/components/navigation/horizontal/components/branch/branch.component.mjs +0 -82
  316. package/esm2022/components/navigation/horizontal/components/divider/divider.component.mjs +0 -47
  317. package/esm2022/components/navigation/horizontal/components/spacer/spacer.component.mjs +0 -47
  318. package/esm2022/components/navigation/horizontal/horizontal.component.mjs +0 -87
  319. package/esm2022/components/navigation/navigation.service.mjs +0 -140
  320. package/esm2022/components/navigation/navigation.types.mjs +0 -3
  321. package/esm2022/components/navigation/public-api.mjs +0 -5
  322. package/esm2022/components/navigation/vertical/components/aside/aside.component.mjs +0 -162
  323. package/esm2022/components/navigation/vertical/components/basic/basic.component.mjs +0 -60
  324. package/esm2022/components/navigation/vertical/components/collapsable/collapsable.component.mjs +0 -277
  325. package/esm2022/components/navigation/vertical/components/divider/divider.component.mjs +0 -56
  326. package/esm2022/components/navigation/vertical/components/group/group.component.mjs +0 -78
  327. package/esm2022/components/navigation/vertical/components/spacer/spacer.component.mjs +0 -56
  328. package/esm2022/components/navigation/vertical/vertical.component.mjs +0 -584
  329. package/esm2022/components/pagination/cmat-components-pagination.mjs +0 -5
  330. package/esm2022/components/pagination/pagination.component.mjs +0 -67
  331. package/esm2022/components/pagination/pagination.directive.mjs +0 -197
  332. package/esm2022/components/pagination/pagination.instance.mjs +0 -2
  333. package/esm2022/components/pagination/pagination.pipe.mjs +0 -100
  334. package/esm2022/components/pagination/pagination.service.mjs +0 -90
  335. package/esm2022/components/pagination/public-api.mjs +0 -6
  336. package/esm2022/components/password-strength/animations/index.mjs +0 -48
  337. package/esm2022/components/password-strength/cmat-components-password-strength.mjs +0 -5
  338. package/esm2022/components/password-strength/enum.mjs +0 -17
  339. package/esm2022/components/password-strength/mat-pass-toggle-visibility/mat-pass-toggle-visibility.component.mjs +0 -27
  340. package/esm2022/components/password-strength/mat-password-strength/mat-password-strength.component.mjs +0 -206
  341. package/esm2022/components/password-strength/mat-password-strength-info/mat-password-strength-info.component.mjs +0 -150
  342. package/esm2022/components/password-strength/mat-password-strength-validator.mjs +0 -36
  343. package/esm2022/components/password-strength/public-api.mjs +0 -4
  344. package/esm2022/components/password-strength/regexp.class.mjs +0 -8
  345. package/esm2022/components/popover/cmat-components-popover.mjs +0 -5
  346. package/esm2022/components/popover/popover-trigger.mjs +0 -442
  347. package/esm2022/components/popover/popover.component.mjs +0 -348
  348. package/esm2022/components/popover/popover.errors.mjs +0 -27
  349. package/esm2022/components/popover/popover.interfaces.mjs +0 -2
  350. package/esm2022/components/popover/popover.target.mjs +0 -18
  351. package/esm2022/components/popover/popover.type.mjs +0 -2
  352. package/esm2022/components/popover/public-api.mjs +0 -5
  353. package/esm2022/components/progress-bar/cmat-components-progress-bar.mjs +0 -5
  354. package/esm2022/components/progress-bar/progress-bar.component.mjs +0 -58
  355. package/esm2022/components/progress-bar/public-api.mjs +0 -2
  356. package/esm2022/components/rating/cmat-components-rating.mjs +0 -5
  357. package/esm2022/components/rating/public-api.mjs +0 -2
  358. package/esm2022/components/rating/rating.component.mjs +0 -202
  359. package/esm2022/components/select-search/cmat-components-select-search.mjs +0 -5
  360. package/esm2022/components/select-search/default-options.mjs +0 -16
  361. package/esm2022/components/select-search/public-api.mjs +0 -3
  362. package/esm2022/components/select-search/select-no-entries-found.directive.mjs +0 -14
  363. package/esm2022/components/select-search/select-search-clear.directive.mjs +0 -14
  364. package/esm2022/components/select-search/select-search.component.mjs +0 -485
  365. package/esm2022/components/select-tree/cmat-components-select-tree.mjs +0 -5
  366. package/esm2022/components/select-tree/public-api.mjs +0 -4
  367. package/esm2022/components/select-tree/select-tree.component.mjs +0 -565
  368. package/esm2022/components/select-tree/select-tree.flatnode.mjs +0 -3
  369. package/esm2022/components/select-tree/select-tree.node.mjs +0 -3
  370. package/esm2022/components/timeline/cmat-components-timeline.mjs +0 -5
  371. package/esm2022/components/timeline/public-api.mjs +0 -3
  372. package/esm2022/components/timeline/timeline-item/timeline-item.component.mjs +0 -70
  373. package/esm2022/components/timeline/timeline.component.mjs +0 -107
  374. package/esm2022/components/toast/cmat-components-toast.mjs +0 -5
  375. package/esm2022/components/toast/models/global-config.model.mjs +0 -2
  376. package/esm2022/components/toast/models/toast.model.mjs +0 -2
  377. package/esm2022/components/toast/models/type.model.mjs +0 -2
  378. package/esm2022/components/toast/public-api.mjs +0 -7
  379. package/esm2022/components/toast/toast-modal.component.mjs +0 -53
  380. package/esm2022/components/toast/toast.component.mjs +0 -30
  381. package/esm2022/components/toast/toast.service.mjs +0 -122
  382. package/esm2022/components/transfer-picker/cmat-components-transfer-picker.mjs +0 -5
  383. package/esm2022/components/transfer-picker/filter/filter.component.mjs +0 -91
  384. package/esm2022/components/transfer-picker/interface.mjs +0 -17
  385. package/esm2022/components/transfer-picker/public-api.mjs +0 -8
  386. package/esm2022/components/transfer-picker/search/search.component.mjs +0 -38
  387. package/esm2022/components/transfer-picker/transfer-picker-source/transfer-picker-source.component.mjs +0 -201
  388. package/esm2022/components/transfer-picker/transfer-picker-target/transfer-picker-target.component.mjs +0 -32
  389. package/esm2022/components/transfer-picker/transfer-picker.component.mjs +0 -84
  390. package/esm2022/components/transfer-picker/transfer-picker.service.mjs +0 -137
  391. package/esm2022/components/upload/cmat-components-upload.mjs +0 -5
  392. package/esm2022/components/upload/files.type.mjs +0 -2
  393. package/esm2022/components/upload/files.util.service.mjs +0 -89
  394. package/esm2022/components/upload/public-api.mjs +0 -5
  395. package/esm2022/components/upload/upload-queue/upload-queue.component.mjs +0 -155
  396. package/esm2022/components/upload/upload.component.mjs +0 -118
  397. package/esm2022/directives/animate-on-scroll/animate-on-scroll.directive.mjs +0 -126
  398. package/esm2022/directives/animate-on-scroll/cmat-directives-animate-on-scroll.mjs +0 -5
  399. package/esm2022/directives/animate-on-scroll/public-api.mjs +0 -2
  400. package/esm2022/directives/animate-on-scroll/scroll.service.mjs +0 -38
  401. package/esm2022/directives/autofocus/autofocus.directive.mjs +0 -20
  402. package/esm2022/directives/autofocus/cmat-directives-autofocus.mjs +0 -5
  403. package/esm2022/directives/autofocus/public-api.mjs +0 -2
  404. package/esm2022/directives/debounce/abstract-debounce.directive.mjs +0 -34
  405. package/esm2022/directives/debounce/cmat-directives-debounce.mjs +0 -5
  406. package/esm2022/directives/debounce/debounce-click.directive.mjs +0 -25
  407. package/esm2022/directives/debounce/debounce-keyup.directive.mjs +0 -25
  408. package/esm2022/directives/debounce/public-api.mjs +0 -3
  409. package/esm2022/directives/digit-only/cmat-directives-digit-only.mjs +0 -5
  410. package/esm2022/directives/digit-only/digit-only.directive.mjs +0 -298
  411. package/esm2022/directives/digit-only/mask.directive.mjs +0 -84
  412. package/esm2022/directives/digit-only/public-api.mjs +0 -3
  413. package/esm2022/directives/equal-validator/cmat-directives-equal-validator.mjs +0 -5
  414. package/esm2022/directives/equal-validator/equal-validator.directive.mjs +0 -54
  415. package/esm2022/directives/equal-validator/public-api.mjs +0 -2
  416. package/esm2022/lib/mock-api/cmat-lib-mock-api.mjs +0 -5
  417. package/esm2022/lib/mock-api/mock-api.constants.mjs +0 -3
  418. package/esm2022/lib/mock-api/mock-api.interceptor.mjs +0 -73
  419. package/esm2022/lib/mock-api/mock-api.request-handler.mjs +0 -48
  420. package/esm2022/lib/mock-api/mock-api.service.mjs +0 -93
  421. package/esm2022/lib/mock-api/mock-api.types.mjs +0 -2
  422. package/esm2022/lib/mock-api/mock-api.utils.mjs +0 -16
  423. package/esm2022/lib/mock-api/public-api.mjs +0 -6
  424. package/esm2022/pipes/bytes/bytes.pipe.mjs +0 -25
  425. package/esm2022/pipes/bytes/cmat-pipes-bytes.mjs +0 -5
  426. package/esm2022/pipes/bytes/public-api.mjs +0 -2
  427. package/esm2022/pipes/date-format/cmat-pipes-date-format.mjs +0 -5
  428. package/esm2022/pipes/date-format/date-format.pipe.mjs +0 -20
  429. package/esm2022/pipes/date-format/public-api.mjs +0 -2
  430. package/esm2022/pipes/find-by-key/cmat-pipes-find-by-key.mjs +0 -5
  431. package/esm2022/pipes/find-by-key/find-by-key.pipe.mjs +0 -23
  432. package/esm2022/pipes/find-by-key/public-api.mjs +0 -2
  433. package/esm2022/pipes/group-by/cmat-pipes-group-by.mjs +0 -5
  434. package/esm2022/pipes/group-by/group-by.pipe.mjs +0 -29
  435. package/esm2022/pipes/group-by/public-api.mjs +0 -2
  436. package/esm2022/pipes/keys/cmat-pipes-keys.mjs +0 -5
  437. package/esm2022/pipes/keys/keys.pipe.mjs +0 -26
  438. package/esm2022/pipes/keys/public-api.mjs +0 -2
  439. package/esm2022/pipes/secure/cmat-pipes-secure.mjs +0 -5
  440. package/esm2022/pipes/secure/public-api.mjs +0 -2
  441. package/esm2022/pipes/secure/secure-pipe.mjs +0 -46
  442. package/esm2022/pipes/uppercase/cmat-pipes-uppercase.mjs +0 -5
  443. package/esm2022/pipes/uppercase/public-api.mjs +0 -2
  444. package/esm2022/pipes/uppercase/uppercase.pipe.mjs +0 -17
  445. package/esm2022/public-api.mjs +0 -2
  446. package/esm2022/services/alert/alert.dialog.mjs +0 -12
  447. package/esm2022/services/alert/alert.message.mjs +0 -9
  448. package/esm2022/services/alert/alert.service.mjs +0 -166
  449. package/esm2022/services/alert/cmat-services-alert.mjs +0 -5
  450. package/esm2022/services/alert/enum.mjs +0 -15
  451. package/esm2022/services/alert/public-api.mjs +0 -5
  452. package/esm2022/services/config/cmat-services-config.mjs +0 -5
  453. package/esm2022/services/config/config.constants.mjs +0 -3
  454. package/esm2022/services/config/config.service.mjs +0 -35
  455. package/esm2022/services/config/public-api.mjs +0 -4
  456. package/esm2022/services/config/urlStateConfig.service.mjs +0 -30
  457. package/esm2022/services/confirmation/cmat-services-confirmation.mjs +0 -5
  458. package/esm2022/services/confirmation/confirmation.service.mjs +0 -51
  459. package/esm2022/services/confirmation/confirmation.types.mjs +0 -2
  460. package/esm2022/services/confirmation/dialog/dialog.component.mjs +0 -25
  461. package/esm2022/services/confirmation/public-api.mjs +0 -3
  462. package/esm2022/services/data/cmat-services-data.mjs +0 -5
  463. package/esm2022/services/data/data.service.mjs +0 -169
  464. package/esm2022/services/data/public-api.mjs +0 -2
  465. package/esm2022/services/loading/cmat-services-loading.mjs +0 -5
  466. package/esm2022/services/loading/loading.interceptor.mjs +0 -29
  467. package/esm2022/services/loading/loading.service.mjs +0 -72
  468. package/esm2022/services/loading/public-api.mjs +0 -3
  469. package/esm2022/services/local-storage/cmat-services-local-storage.mjs +0 -5
  470. package/esm2022/services/local-storage/local-storage.service.mjs +0 -22
  471. package/esm2022/services/local-storage/public-api.mjs +0 -2
  472. package/esm2022/services/media-watcher/cmat-services-media-watcher.mjs +0 -5
  473. package/esm2022/services/media-watcher/media-watcher.service.mjs +0 -55
  474. package/esm2022/services/media-watcher/public-api.mjs +0 -2
  475. package/esm2022/services/platform/cmat-services-platform.mjs +0 -5
  476. package/esm2022/services/platform/platform.service.mjs +0 -46
  477. package/esm2022/services/platform/public-api.mjs +0 -2
  478. package/esm2022/services/splash-screen/cmat-services-splash-screen.mjs +0 -5
  479. package/esm2022/services/splash-screen/public-api.mjs +0 -2
  480. package/esm2022/services/splash-screen/splash-screen.service.mjs +0 -42
  481. package/esm2022/services/title/cmat-services-title.mjs +0 -5
  482. package/esm2022/services/title/public-api.mjs +0 -2
  483. package/esm2022/services/title/title.service.mjs +0 -46
  484. package/esm2022/services/translation/cmat-services-translation.mjs +0 -5
  485. package/esm2022/services/translation/public-api.mjs +0 -2
  486. package/esm2022/services/translation/translation.service.mjs +0 -62
  487. package/esm2022/services/utils/cmat-services-utils.mjs +0 -5
  488. package/esm2022/services/utils/public-api.mjs +0 -2
  489. package/esm2022/services/utils/utils.service.mjs +0 -467
  490. package/esm2022/validators/cmat-validators.mjs +0 -5
  491. package/esm2022/validators/public-api.mjs +0 -2
  492. package/esm2022/validators/validators.mjs +0 -33
  493. package/esm2022/version/cmat-version.mjs +0 -5
  494. package/esm2022/version/public-api.mjs +0 -2
  495. package/esm2022/version/version.mjs +0 -11
@@ -0,0 +1,136 @@
1
+ import { AfterContentChecked, AfterContentInit, ChangeDetectorRef, ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, QueryList, Renderer2, SimpleChanges, TemplateRef } from '@angular/core';
2
+ import { CmatCarouselPageEvent, CmatCarouselResponsiveOptions } from './carousel.interface';
3
+ import * as i0 from "@angular/core";
4
+ export declare class CmatCarouselHeaderComponent {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<CmatCarouselHeaderComponent, never>;
6
+ static ɵcmp: i0.ɵɵComponentDeclaration<CmatCarouselHeaderComponent, "cmat-carousel-header", never, {}, {}, never, ["*"], true, never>;
7
+ }
8
+ export declare class CmatCarouselFooterComponent {
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<CmatCarouselFooterComponent, never>;
10
+ static ɵcmp: i0.ɵɵComponentDeclaration<CmatCarouselFooterComponent, "cmat-carousel-footer", never, {}, {}, never, ["*"], true, never>;
11
+ }
12
+ export declare class CmatCarouselTemplateDirective {
13
+ template: TemplateRef<any>;
14
+ type: string | undefined;
15
+ name: string | undefined;
16
+ constructor(template: TemplateRef<any>);
17
+ getType(): string;
18
+ static ɵfac: i0.ɵɵFactoryDeclaration<CmatCarouselTemplateDirective, never>;
19
+ static ɵdir: i0.ɵɵDirectiveDeclaration<CmatCarouselTemplateDirective, "[cmatCarouselTemplate]", never, { "type": { "alias": "type"; "required": false; }; "name": { "alias": "cmatCarouselTemplate"; "required": false; }; }, {}, never, never, true, never>;
20
+ }
21
+ export declare class CmatCarouselComponent implements AfterContentInit, OnChanges, AfterContentChecked, OnDestroy {
22
+ el: ElementRef;
23
+ zone: NgZone;
24
+ cd: ChangeDetectorRef;
25
+ private renderer;
26
+ private _document;
27
+ private _platformId;
28
+ get page(): number;
29
+ set page(val: number);
30
+ get numVisible(): number;
31
+ set numVisible(val: number);
32
+ get numScroll(): number;
33
+ set numScroll(val: number);
34
+ responsiveOptions: CmatCarouselResponsiveOptions[] | undefined;
35
+ orientation: 'horizontal' | 'vertical';
36
+ navigatorsType: 'normal' | 'arrow';
37
+ verticalViewPortHeight: string;
38
+ arrowSelector: string;
39
+ contentClass: string;
40
+ indicatorsContentClass: string;
41
+ indicatorsContentStyle: Record<string, any> | null | undefined;
42
+ indicatorStyleClass: string;
43
+ indicatorStyle: Record<string, any> | null | undefined;
44
+ get data(): any[];
45
+ set data(val: any[]);
46
+ circular: boolean;
47
+ showIndicators: boolean;
48
+ showNavigators: boolean;
49
+ autoplayInterval: number;
50
+ style: Record<string, any> | null | undefined;
51
+ styleClass: string;
52
+ pageEvent: EventEmitter<CmatCarouselPageEvent>;
53
+ itemsContainer: ElementRef | undefined;
54
+ indicatorContent: ElementRef | undefined;
55
+ headerFacet: QueryList<CmatCarouselHeaderComponent> | undefined;
56
+ footerFacet: QueryList<CmatCarouselFooterComponent> | undefined;
57
+ templates: QueryList<CmatCarouselTemplateDirective> | undefined;
58
+ prevState: any;
59
+ defaultNumScroll: number;
60
+ defaultNumVisible: number;
61
+ carouselStyle: any;
62
+ id: string | undefined;
63
+ totalShiftedItems: number;
64
+ isRemainingItemsAdded: boolean;
65
+ animationTimeout: any;
66
+ translateTimeout: any;
67
+ remainingItems: number;
68
+ startPos: any;
69
+ documentResizeListener: any;
70
+ clonedItemsForStarting: any[] | undefined;
71
+ clonedItemsForFinishing: any[] | undefined;
72
+ allowAutoplay: boolean | undefined;
73
+ interval: any;
74
+ isCreated: boolean | undefined;
75
+ swipeThreshold: number;
76
+ itemTemplate: TemplateRef<any> | null;
77
+ headerTemplate: TemplateRef<any> | null;
78
+ footerTemplate: TemplateRef<any> | null;
79
+ previousIconTemplate: TemplateRef<any> | null;
80
+ nextIconTemplate: TemplateRef<any> | null;
81
+ window: Window;
82
+ private _numVisible;
83
+ private _numScroll;
84
+ private _oldNumScroll;
85
+ private _page;
86
+ private _data;
87
+ constructor(el: ElementRef, zone: NgZone, cd: ChangeDetectorRef, renderer: Renderer2, _document: Document, _platformId: any);
88
+ ngOnChanges(simpleChange: SimpleChanges): void;
89
+ ngAfterContentInit(): void;
90
+ ngAfterContentChecked(): void;
91
+ ngOnDestroy(): void;
92
+ firstIndex(): number;
93
+ lastIndex(): number;
94
+ totalDots(): number;
95
+ totalDotsArray(): number[];
96
+ isVertical(): boolean;
97
+ isCircular(): boolean;
98
+ isAutoplay(): boolean | undefined;
99
+ isForwardNavDisabled(): boolean;
100
+ isBackwardNavDisabled(): boolean;
101
+ isEmpty(): boolean;
102
+ navForward(e: MouseEvent | TouchEvent | null, index?: number): void;
103
+ navBackward(e: MouseEvent | TouchEvent | null, index?: number): void;
104
+ onDotClick(e: MouseEvent, index: number): void;
105
+ onIndicatorKeydown(event: KeyboardEvent): void;
106
+ isPlaying(): boolean;
107
+ onTransitionEnd(): void;
108
+ onTouchStart(e: TouchEvent): void;
109
+ onTouchMove(e: TouchEvent | MouseEvent): void;
110
+ onTouchEnd(e: TouchEvent): void;
111
+ arrowCursorClick(cursorSide: string | null): void;
112
+ private _changePageOnTouch;
113
+ private _bindDocumentListeners;
114
+ private _unbindDocumentListeners;
115
+ private _onRightKey;
116
+ private _onLeftKey;
117
+ private _onHomeKey;
118
+ private _onEndKey;
119
+ private _onTabKey;
120
+ private _changedFocusedIndicator;
121
+ private _step;
122
+ private _startAutoplay;
123
+ private _stopAutoplay;
124
+ private _findFocusedIndicatorIndex;
125
+ private _createStyle;
126
+ private _calculatePosition;
127
+ private _updateSlideAccessibility;
128
+ private _updateCarouselItemsAccessibility;
129
+ private _setCloneItems;
130
+ static ɵfac: i0.ɵɵFactoryDeclaration<CmatCarouselComponent, never>;
131
+ static ɵcmp: i0.ɵɵComponentDeclaration<CmatCarouselComponent, "cmat-carousel", never, { "page": { "alias": "page"; "required": false; }; "numVisible": { "alias": "numVisible"; "required": false; }; "numScroll": { "alias": "numScroll"; "required": false; }; "responsiveOptions": { "alias": "responsiveOptions"; "required": false; }; "orientation": { "alias": "orientation"; "required": false; }; "navigatorsType": { "alias": "navigatorsType"; "required": false; }; "verticalViewPortHeight": { "alias": "verticalViewPortHeight"; "required": false; }; "arrowSelector": { "alias": "arrowSelector"; "required": false; }; "contentClass": { "alias": "contentClass"; "required": false; }; "indicatorsContentClass": { "alias": "indicatorsContentClass"; "required": false; }; "indicatorsContentStyle": { "alias": "indicatorsContentStyle"; "required": false; }; "indicatorStyleClass": { "alias": "indicatorStyleClass"; "required": false; }; "indicatorStyle": { "alias": "indicatorStyle"; "required": false; }; "data": { "alias": "data"; "required": false; }; "circular": { "alias": "circular"; "required": false; }; "showIndicators": { "alias": "showIndicators"; "required": false; }; "showNavigators": { "alias": "showNavigators"; "required": false; }; "autoplayInterval": { "alias": "autoplayInterval"; "required": false; }; "style": { "alias": "style"; "required": false; }; "styleClass": { "alias": "styleClass"; "required": false; }; }, { "pageEvent": "pageEvent"; }, ["headerFacet", "footerFacet", "templates"], ["cmat-carousel-header", "cmat-carousel-footer"], true, never>;
132
+ static ngAcceptInputType_circular: unknown;
133
+ static ngAcceptInputType_showIndicators: unknown;
134
+ static ngAcceptInputType_showNavigators: unknown;
135
+ static ngAcceptInputType_autoplayInterval: unknown;
136
+ }
@@ -0,0 +1,38 @@
1
+ import { TemplateRef } from '@angular/core';
2
+ export interface CmatCarouselResponsiveOptions {
3
+ /**
4
+ * 响应模式的断点。
5
+ */
6
+ breakpoint: string;
7
+ /**
8
+ * 断点上可见项目的数量。
9
+ */
10
+ numVisible: number;
11
+ /**
12
+ * 断点上滚动的项目数。
13
+ */
14
+ numScroll: number;
15
+ }
16
+ export interface CmatCarouselPageEvent {
17
+ page?: number;
18
+ }
19
+ export interface CmatCarouselTemplates {
20
+ header(): TemplateRef<any>;
21
+ item(context: {
22
+ $implicit: any;
23
+ }): TemplateRef<{
24
+ $implicit: any;
25
+ }>;
26
+ /**
27
+ * previousicon自定义模板。
28
+ */
29
+ previousicon(): TemplateRef<any>;
30
+ /**
31
+ * nexticon自定义模板。
32
+ */
33
+ nexticon(): TemplateRef<any>;
34
+ /**
35
+ * footer自定义模板。
36
+ */
37
+ footer(): TemplateRef<any>;
38
+ }
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="cmat/components/carousel" />
5
+ export * from './public-api';
@@ -0,0 +1,2 @@
1
+ export * from './carousel.component';
2
+ export * from './carousel.interface';
@@ -26,3 +26,4 @@ export * from './types/tags/tags.component';
26
26
  export * from './types/textarea/textarea.component';
27
27
  export * from './types/upload/upload.component';
28
28
  export * from './types/quill/quill.component';
29
+ export * from './types/knob/knob.component';
@@ -0,0 +1,36 @@
1
+ import { FieldTypeConfig } from '@ngx-formly/core';
2
+ import { FieldType } from '@ngx-formly/material/form-field';
3
+ import { CustomFormFieldProps } from '../../wrappers/form-field/form-field.component';
4
+ import * as i0 from "@angular/core";
5
+ interface KnobProps extends CustomFormFieldProps {
6
+ valueColor: string;
7
+ rangeColor: string;
8
+ textColor: string;
9
+ valueTemplate: string;
10
+ name?: string;
11
+ size: number;
12
+ step: number;
13
+ min: number;
14
+ max: number;
15
+ strokeWidth: number;
16
+ showValue: boolean;
17
+ }
18
+ export declare class CmatKnobTypeComponent extends FieldType<FieldTypeConfig<KnobProps>> {
19
+ defaultOptions: {
20
+ props: {
21
+ valueColor: string;
22
+ rangeColor: string;
23
+ textColor: string;
24
+ valueTemplate: string;
25
+ size: number;
26
+ step: number;
27
+ min: number;
28
+ max: number;
29
+ strokeWidth: number;
30
+ showValue: boolean;
31
+ };
32
+ };
33
+ static ɵfac: i0.ɵɵFactoryDeclaration<CmatKnobTypeComponent, never>;
34
+ static ɵcmp: i0.ɵɵComponentDeclaration<CmatKnobTypeComponent, "cmat-knob-type", never, {}, {}, never, never, true, never>;
35
+ }
36
+ export {};
@@ -1,16 +1,14 @@
1
- import { OnInit, TemplateRef, ChangeDetectorRef, OnDestroy } from '@angular/core';
1
+ import { OnInit, TemplateRef, ChangeDetectorRef } from '@angular/core';
2
2
  import { FormGroup } from '@angular/forms';
3
3
  import { MatTable } from '@angular/material/table';
4
4
  import { FieldArrayType, FieldTypeConfig, FormlyFieldConfig } from '@ngx-formly/core';
5
- import { CmatMediaWatcherService } from 'cmat/services/media-watcher';
6
5
  import { CustomFormFieldProps } from '../../wrappers/form-field/form-field.component';
7
6
  import * as i0 from "@angular/core";
8
7
  interface TableProps extends CustomFormFieldProps {
9
8
  addText: string;
10
9
  showColumn?: boolean;
11
10
  }
12
- export declare class CmatTableTypeComponent extends FieldArrayType<FieldTypeConfig<TableProps>> implements OnInit, OnDestroy {
13
- private _cmatMediaWatcherService;
11
+ export declare class CmatTableTypeComponent extends FieldArrayType<FieldTypeConfig<TableProps>> implements OnInit {
14
12
  private _changeDetectorRef;
15
13
  dialogRef: TemplateRef<any>;
16
14
  table: MatTable<any>;
@@ -28,16 +26,13 @@ export declare class CmatTableTypeComponent extends FieldArrayType<FieldTypeConf
28
26
  addText: string;
29
27
  };
30
28
  };
31
- isScreenSmall: boolean;
32
29
  private readonly _dialog;
33
30
  private readonly _viewContainerRef;
34
31
  private _dialogRef;
35
- private _unsubscribeAll;
36
- constructor(_cmatMediaWatcherService: CmatMediaWatcherService, _changeDetectorRef: ChangeDetectorRef);
32
+ constructor(_changeDetectorRef: ChangeDetectorRef);
37
33
  get fieldArray(): FormlyFieldConfig[];
38
34
  get key(): string;
39
35
  ngOnInit(): void;
40
- ngOnDestroy(): void;
41
36
  addRow(): void;
42
37
  editRow(item: any, index: number): void;
43
38
  deleteRow(id: number): void;
@@ -11,11 +11,11 @@ export interface CustomFormFieldProps extends FormlyFieldProps {
11
11
  showValidationMessage?: boolean;
12
12
  }
13
13
  export declare class CmatFormFieldWrapperComponent extends FieldWrapper<MatFormlyFieldConfig> implements OnInit, OnDestroy, AfterViewInit {
14
- private renderer;
15
- private elementRef;
16
- private focusMonitor;
14
+ private _renderer;
15
+ private _elementRef;
16
+ private _focusMonitor;
17
17
  formField: MatFormField;
18
- constructor(renderer: Renderer2, elementRef: ElementRef, focusMonitor: FocusMonitor);
18
+ constructor(_renderer: Renderer2, _elementRef: ElementRef, _focusMonitor: FocusMonitor);
19
19
  ngOnInit(): void;
20
20
  ngAfterViewInit(): void;
21
21
  ngOnDestroy(): void;
@@ -0,0 +1,76 @@
1
+ import { AnimationEvent } from '@angular/animations';
2
+ import { ChangeDetectorRef, ElementRef, EventEmitter, TemplateRef } from '@angular/core';
3
+ import { SafeUrl } from '@angular/platform-browser';
4
+ import * as i0 from "@angular/core";
5
+ export declare class CmatImageComponent {
6
+ private _document;
7
+ private _changeDetectorRef;
8
+ el: ElementRef;
9
+ imageClass: string | undefined;
10
+ imageStyle: Record<string, any> | null | undefined;
11
+ src: string | SafeUrl | undefined;
12
+ srcSet: string | SafeUrl | undefined;
13
+ previewImageSrc: string | SafeUrl | undefined;
14
+ previewImageSrcSet: string | SafeUrl | undefined;
15
+ alt: string | undefined;
16
+ width: number | undefined;
17
+ height: number | undefined;
18
+ loading: 'lazy' | 'eager' | undefined;
19
+ /**
20
+ * 要附加对话框的目标元素,有效值是“body”或另一个元素的本地ng模板变量(注意:使用带括号的绑定来绑定模板变量,例如[appedTo]=“mydiv”用于变量名为#mydiv的div元素)。
21
+ */
22
+ appendTo: HTMLElement | ElementRef | TemplateRef<any> | string | null | undefined;
23
+ /**
24
+ * 启动预览功能。
25
+ */
26
+ preview: boolean;
27
+ /**
28
+ * 切换时显示动画
29
+ */
30
+ showTransitionOptions: string;
31
+ /**
32
+ * 切换时隐藏动画
33
+ */
34
+ hideTransitionOptions: string;
35
+ /**
36
+ * 监听预览显示/隐藏.
37
+ */
38
+ previewShowChange: EventEmitter<boolean>;
39
+ /**
40
+ * 如果加载图像文件时发生错误,则会触发此事件.
41
+ */
42
+ imageErrorEvent: EventEmitter<Event>;
43
+ mask: ElementRef | undefined;
44
+ previewButton: ElementRef | undefined;
45
+ closeButton: ElementRef | undefined;
46
+ maskVisible: boolean;
47
+ previewVisible: boolean;
48
+ rotate: number;
49
+ scale: number;
50
+ container: HTMLElement | void | null | undefined;
51
+ wrapper: HTMLElement | void | null | undefined;
52
+ private _zoomSettings;
53
+ constructor(_document: Document, _changeDetectorRef: ChangeDetectorRef, el: ElementRef);
54
+ get isZoomOutDisabled(): boolean;
55
+ get isZoomInDisabled(): boolean;
56
+ onKeydownHandler(): void;
57
+ onImageClick(): void;
58
+ onMaskKeydown(event: KeyboardEvent): void;
59
+ onPreviewImageClick(event: MouseEvent): void;
60
+ rotateRight(): void;
61
+ rotateLeft(): void;
62
+ zoomIn(): void;
63
+ zoomOut(): void;
64
+ onAnimationStart(event: AnimationEvent): void;
65
+ onAnimationEnd(event: AnimationEvent): void;
66
+ handleToolbarClick(event: MouseEvent): void;
67
+ appendContainer(): void;
68
+ imagePreviewStyle(): {
69
+ transform: string;
70
+ };
71
+ closePreview(): void;
72
+ imageError(event: Event): void;
73
+ static ɵfac: i0.ɵɵFactoryDeclaration<CmatImageComponent, never>;
74
+ static ɵcmp: i0.ɵɵComponentDeclaration<CmatImageComponent, "cmat-image", never, { "imageClass": { "alias": "imageClass"; "required": false; }; "imageStyle": { "alias": "imageStyle"; "required": false; }; "src": { "alias": "src"; "required": false; }; "srcSet": { "alias": "srcSet"; "required": false; }; "previewImageSrc": { "alias": "previewImageSrc"; "required": false; }; "previewImageSrcSet": { "alias": "previewImageSrcSet"; "required": false; }; "alt": { "alias": "alt"; "required": false; }; "width": { "alias": "width"; "required": false; }; "height": { "alias": "height"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "appendTo": { "alias": "appendTo"; "required": false; }; "preview": { "alias": "preview"; "required": false; }; "showTransitionOptions": { "alias": "showTransitionOptions"; "required": false; }; "hideTransitionOptions": { "alias": "hideTransitionOptions"; "required": false; }; }, { "previewShowChange": "previewShowChange"; "imageErrorEvent": "imageErrorEvent"; }, never, never, true, never>;
75
+ static ngAcceptInputType_preview: unknown;
76
+ }
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="cmat/components/image-viewer" />
5
+ export * from './public-api';
@@ -0,0 +1 @@
1
+ export * from './image-viewer.component';
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="cmat/components/knob-input" />
5
+ export * from './public-api';
@@ -0,0 +1,95 @@
1
+ import { BooleanInput } from '@angular/cdk/coercion';
2
+ import { ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, Renderer2 } from '@angular/core';
3
+ import { ControlValueAccessor, NgControl } from '@angular/forms';
4
+ import { MatFormFieldControl } from '@angular/material/form-field';
5
+ import { Subject } from 'rxjs';
6
+ import * as i0 from "@angular/core";
7
+ export declare class CmatKnobInputComponent implements MatFormFieldControl<any>, OnDestroy, ControlValueAccessor {
8
+ ngControl: NgControl;
9
+ private _document;
10
+ private _renderer;
11
+ private _changeDetectorRef;
12
+ private _el;
13
+ private _knobElementRef;
14
+ id: string;
15
+ valueColor: string;
16
+ rangeColor: string;
17
+ textColor: string;
18
+ valueTemplate: string;
19
+ name: string | undefined;
20
+ size: number;
21
+ step: number;
22
+ min: number;
23
+ max: number;
24
+ strokeWidth: number;
25
+ showValue: boolean;
26
+ valueChange: EventEmitter<number | null>;
27
+ radius: number;
28
+ midX: number;
29
+ midY: number;
30
+ minRadians: number;
31
+ maxRadians: number;
32
+ windowMouseMoveListener: VoidFunction | null;
33
+ windowMouseUpListener: VoidFunction | null;
34
+ windowTouchMoveListener: VoidFunction | null;
35
+ windowTouchEndListener: VoidFunction | null;
36
+ readonly stateChanges: Subject<void>;
37
+ focused: boolean;
38
+ touched: boolean;
39
+ constructor(ngControl: NgControl, _document: Document, _renderer: Renderer2, _changeDetectorRef: ChangeDetectorRef, _el: ElementRef);
40
+ ngOnDestroy(): void;
41
+ get placeholder(): string;
42
+ set placeholder(value: string);
43
+ private _placeholder;
44
+ get value(): number;
45
+ set value(value: number);
46
+ protected _value: number | null;
47
+ get empty(): boolean;
48
+ get errorState(): boolean;
49
+ get shouldLabelFloat(): boolean;
50
+ get required(): boolean;
51
+ set required(value: boolean);
52
+ protected _required: boolean;
53
+ get disabled(): boolean;
54
+ set disabled(value: BooleanInput);
55
+ protected _disabled: boolean;
56
+ onKeyDown(event: KeyboardEvent): void;
57
+ onMouseDown(event: MouseEvent): void;
58
+ onMouseUp(event: MouseEvent): void;
59
+ onTouchStart(event: TouchEvent): void;
60
+ onTouchEnd(event: TouchEvent): void;
61
+ mapRange(x: number, inMin: number, inMax: number, outMin: number, outMax: number): number;
62
+ onClick(event: MouseEvent): void;
63
+ onFocusIn(): void;
64
+ onFocusOut(event: FocusEvent): void;
65
+ setDescribedByIds(ids: string[]): void;
66
+ onContainerClick(): void;
67
+ updateValue(offsetX: number, offsetY: number): void;
68
+ updateModel(angle: number, start: number): void;
69
+ onMouseMove(event: MouseEvent): void;
70
+ onTouchMove(event: Event): void;
71
+ updateModelValue(newValue: number): void;
72
+ writeValue(value: any): void;
73
+ registerOnChange(fn: any): void;
74
+ registerOnTouched(fn: any): void;
75
+ setDisabledState(val: boolean): void;
76
+ rangePath(): string;
77
+ valuePath(): string;
78
+ zeroRadians(): number;
79
+ valueRadians(): number;
80
+ minX(): number;
81
+ minY(): number;
82
+ maxX(): number;
83
+ maxY(): number;
84
+ zeroX(): number;
85
+ zeroY(): number;
86
+ valueX(): number;
87
+ valueY(): number;
88
+ largeArc(): number;
89
+ sweep(): number;
90
+ valueToDisplay(): string;
91
+ private _onModelChange;
92
+ private _onTouchedChange;
93
+ static ɵfac: i0.ɵɵFactoryDeclaration<CmatKnobInputComponent, [{ optional: true; self: true; }, null, null, null, null]>;
94
+ static ɵcmp: i0.ɵɵComponentDeclaration<CmatKnobInputComponent, "cmat-knob-input", ["cmatKnobInput"], { "id": { "alias": "id"; "required": false; }; "valueColor": { "alias": "valueColor"; "required": false; }; "rangeColor": { "alias": "rangeColor"; "required": false; }; "textColor": { "alias": "textColor"; "required": false; }; "valueTemplate": { "alias": "valueTemplate"; "required": false; }; "name": { "alias": "name"; "required": false; }; "size": { "alias": "size"; "required": false; }; "step": { "alias": "step"; "required": false; }; "min": { "alias": "min"; "required": false; }; "max": { "alias": "max"; "required": false; }; "strokeWidth": { "alias": "strokeWidth"; "required": false; }; "showValue": { "alias": "showValue"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "value": { "alias": "value"; "required": false; }; "required": { "alias": "required"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "valueChange": "valueChange"; }, never, never, true, never>;
95
+ }
@@ -0,0 +1 @@
1
+ export * from './knob-input.component';
@@ -62,7 +62,7 @@ export declare class CmatDatetimepickerInputDirective<D> implements AfterContent
62
62
  set disabled(value: any);
63
63
  ngAfterContentInit(): void;
64
64
  ngOnDestroy(): void;
65
- registerOnValidatorChange(fn: () => void): void;
65
+ registerOnValidatorChange(fn: VoidFunction): void;
66
66
  validate(c: AbstractControl): ValidationErrors | null;
67
67
  /**
68
68
  * Gets the element that the datepicker popup should be connected to.
@@ -74,7 +74,7 @@ export declare class CmatDatetimepickerInputDirective<D> implements AfterContent
74
74
  getOverlayLabelId(): string | null;
75
75
  writeValue(value: D): void;
76
76
  registerOnChange(fn: (value: any) => void): void;
77
- registerOnTouched(fn: () => void): void;
77
+ registerOnTouched(fn: VoidFunction): void;
78
78
  setDisabledState(disabled: boolean): void;
79
79
  onKeydown(event: KeyboardEvent): void;
80
80
  onInput(value: string): void;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="cmat/components/opt-input" />
5
+ export * from './public-api';
@@ -0,0 +1,14 @@
1
+ export declare class OptInputConfig {
2
+ inputStyles?: Record<string, any>;
3
+ containerStyles?: Record<string, any>;
4
+ length: number;
5
+ allowNumbersOnly?: boolean;
6
+ inputClass?: string;
7
+ containerClass?: string;
8
+ isPasswordInput?: boolean;
9
+ disableAutoFocus?: boolean;
10
+ placeholder?: string;
11
+ letterCase?: 'Upper' | 'Lower';
12
+ separator?: string;
13
+ showError?: boolean;
14
+ }
@@ -0,0 +1,70 @@
1
+ import { BooleanInput } from '@angular/cdk/coercion';
2
+ import { AfterViewInit, OnDestroy, OnChanges, SimpleChanges } from '@angular/core';
3
+ import { FormControl, ControlValueAccessor, FormBuilder, UntypedFormGroup, NgControl } from '@angular/forms';
4
+ import { MatFormFieldControl } from '@angular/material/form-field';
5
+ import { Subject } from 'rxjs';
6
+ import { OptInputConfig } from './models/config';
7
+ import * as i0 from "@angular/core";
8
+ export declare class CmatOtpInputComponent implements MatFormFieldControl<any>, AfterViewInit, OnDestroy, OnChanges, ControlValueAccessor {
9
+ ngControl: NgControl;
10
+ private _document;
11
+ private _formBuilder;
12
+ id: string;
13
+ onBlur: Subject<void>;
14
+ onInputChange: Subject<string | null>;
15
+ config: OptInputConfig;
16
+ otpForm: UntypedFormGroup;
17
+ currentVal: string | null;
18
+ componentKey: string;
19
+ readonly stateChanges: Subject<void>;
20
+ focused: boolean;
21
+ private _unsubscribeAll;
22
+ private _activeFocusCount;
23
+ constructor(ngControl: NgControl, _document: Document, _formBuilder: FormBuilder);
24
+ get inputType(): string;
25
+ get controlKeys(): string[];
26
+ get errorState(): boolean;
27
+ ngOnChanges(changes: SimpleChanges): void;
28
+ setDisabledState(isDisabled: boolean): void;
29
+ writeValue(value: string): void;
30
+ registerOnChange(fn: any): void;
31
+ registerOnTouched(fn: any): void;
32
+ onFocusIn(): void;
33
+ onFocusOut(): void;
34
+ ngAfterViewInit(): void;
35
+ ngOnDestroy(): void;
36
+ get placeholder(): string;
37
+ set placeholder(value: string);
38
+ private _placeholder;
39
+ get value(): any;
40
+ set value(value: any);
41
+ protected _value: any;
42
+ get empty(): boolean;
43
+ get shouldLabelFloat(): boolean;
44
+ get required(): boolean;
45
+ set required(value: any);
46
+ protected _required: boolean;
47
+ get disabled(): boolean;
48
+ set disabled(value: BooleanInput);
49
+ protected _disabled: boolean;
50
+ setDescribedByIds(ids: string[]): void;
51
+ onContainerClick(): void;
52
+ onKeyDown($event: any, inputIdx: number): any;
53
+ onInput($event: any, inputIdx: number): void;
54
+ onKeyUp($event: any, inputIdx: number): void;
55
+ validateNumber(val: string): boolean | string;
56
+ getBoxId(idx: string | number): string;
57
+ focusTo(eleId: string): void;
58
+ setValue(value: any): void;
59
+ handlePaste(e: any): void;
60
+ getFormControl(key: string): FormControl;
61
+ private _onModelChange;
62
+ private _onTouchedChange;
63
+ private _getControlName;
64
+ private _clearInput;
65
+ private _setSelected;
66
+ private ifValidKeyCode;
67
+ private _rebuildValue;
68
+ static ɵfac: i0.ɵɵFactoryDeclaration<CmatOtpInputComponent, [{ optional: true; self: true; }, null, null]>;
69
+ static ɵcmp: i0.ɵɵComponentDeclaration<CmatOtpInputComponent, "cmat-otp-input", ["cmatOtpInput"], { "id": { "alias": "id"; "required": false; }; "config": { "alias": "config"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "value": { "alias": "value"; "required": false; }; "required": { "alias": "required"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "onBlur": "onBlur"; "onInputChange": "onInputChange"; }, never, never, true, never>;
70
+ }
@@ -0,0 +1 @@
1
+ export * from './otp-input.component';
@@ -0,0 +1,9 @@
1
+ export declare class KeyboardUtil {
2
+ static ifTab(event: KeyboardEvent): boolean;
3
+ static ifDelete(event: KeyboardEvent): boolean;
4
+ static ifBackspace(event: KeyboardEvent): boolean;
5
+ static ifRightArrow(event: KeyboardEvent): boolean;
6
+ static ifLeftArrow(event: KeyboardEvent): boolean;
7
+ static ifSpacebar(event: KeyboardEvent): boolean;
8
+ static ifKey(event: KeyboardEvent, keys: string): boolean;
9
+ }
@@ -0,0 +1,3 @@
1
+ export declare class ObjectUtil {
2
+ static keys(obj: any): string[];
3
+ }
@@ -0,0 +1,17 @@
1
+ import { EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
2
+ import { INode } from '../node/node.type';
3
+ import * as i0 from "@angular/core";
4
+ export declare class CmatChartDesignerComponent implements OnChanges {
5
+ node: INode;
6
+ hasParent: boolean;
7
+ enableControlHeight: boolean;
8
+ direction: 'vertical' | 'horizontal';
9
+ detailsBtnTitle: string;
10
+ detailsBtnClick: EventEmitter<INode>;
11
+ chartNodeClass: string;
12
+ get hostClass(): string;
13
+ get hostWidthClass(): string;
14
+ ngOnChanges(changes: SimpleChanges): void;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<CmatChartDesignerComponent, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<CmatChartDesignerComponent, "cmat-org-chart-designer", ["cmatOrgChartDesigner"], { "node": { "alias": "node"; "required": false; }; "hasParent": { "alias": "hasParent"; "required": false; }; "enableControlHeight": { "alias": "enableControlHeight"; "required": false; }; "direction": { "alias": "direction"; "required": false; }; "detailsBtnTitle": { "alias": "detailsBtnTitle"; "required": false; }; }, { "detailsBtnClick": "detailsBtnClick"; }, never, never, true, never>;
17
+ }
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="cmat/components/org-chart" />
5
+ export * from './public-api';
@@ -0,0 +1,17 @@
1
+ import { EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
2
+ import { INode } from './node.type';
3
+ import * as i0 from "@angular/core";
4
+ export declare class CmatChartNodeComponent implements OnChanges {
5
+ node: INode;
6
+ hasParent: boolean;
7
+ enableControlHeight: boolean;
8
+ direction: 'vertical' | 'horizontal';
9
+ detailsBtnTitle: string;
10
+ detailsBtnClick: EventEmitter<INode>;
11
+ containerClass: string;
12
+ connectorToParentHeight: string;
13
+ maxHeightEm: number;
14
+ ngOnChanges(changes: SimpleChanges): void;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<CmatChartNodeComponent, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<CmatChartNodeComponent, "cmat-org-chart-node", ["cmatOrgChartNode"], { "node": { "alias": "node"; "required": false; }; "hasParent": { "alias": "hasParent"; "required": false; }; "enableControlHeight": { "alias": "enableControlHeight"; "required": false; }; "direction": { "alias": "direction"; "required": false; }; "detailsBtnTitle": { "alias": "detailsBtnTitle"; "required": false; }; }, { "detailsBtnClick": "detailsBtnClick"; }, never, never, true, never>;
17
+ }