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
@@ -1,2 +0,0 @@
1
- export * from './date-range.component';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9kYXRlLXJhbmdlL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZGF0ZS1yYW5nZS5jb21wb25lbnQnO1xyXG4iXX0=
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY21hdC1jb21wb25lbnRzLWRyYXdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9kcmF3ZXIvY21hdC1jb21wb25lbnRzLWRyYXdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -1,301 +0,0 @@
1
- import { animate, style } from '@angular/animations';
2
- import { coerceBooleanProperty } from '@angular/cdk/coercion';
3
- import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, HostListener, Input, Output, ViewEncapsulation } from '@angular/core';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/animations";
6
- import * as i2 from "./drawer.service";
7
- import * as i3 from "cmat/services/utils";
8
- export class CmatDrawerComponent {
9
- constructor(_animationBuilder, _elementRef, _renderer2, _cmatDrawerService, _cmatUtilsService) {
10
- this._animationBuilder = _animationBuilder;
11
- this._elementRef = _elementRef;
12
- this._renderer2 = _renderer2;
13
- this._cmatDrawerService = _cmatDrawerService;
14
- this._cmatUtilsService = _cmatUtilsService;
15
- /* eslint-enable @typescript-eslint/naming-convention */
16
- this.fixed = false;
17
- this.mode = 'side';
18
- this.name = this._cmatUtilsService.randomId();
19
- this.opened = false;
20
- this.position = 'left';
21
- this.transparentOverlay = false;
22
- this.fixedChanged = new EventEmitter();
23
- this.modeChanged = new EventEmitter();
24
- this.openedChanged = new EventEmitter();
25
- this.positionChanged = new EventEmitter();
26
- this._animationsEnabled = false;
27
- this._hovered = false;
28
- }
29
- get classList() {
30
- /* eslint-disable @typescript-eslint/naming-convention */
31
- return {
32
- 'cmat-drawer-animations-enabled': this._animationsEnabled,
33
- 'cmat-drawer-fixed': this.fixed,
34
- 'cmat-drawer-hover': this._hovered,
35
- [`cmat-drawer-mode-${this.mode}`]: true,
36
- 'cmat-drawer-opened': this.opened,
37
- [`cmat-drawer-position-${this.position}`]: true
38
- };
39
- }
40
- get styleList() {
41
- return {
42
- 'visibility': this.opened ? 'visible' : 'hidden'
43
- };
44
- }
45
- onMouseenter() {
46
- // Enable the animations
47
- this._enableAnimations();
48
- // Set the hovered
49
- this._hovered = true;
50
- }
51
- onMouseleave() {
52
- // Enable the animations
53
- this._enableAnimations();
54
- // Set the hovered
55
- this._hovered = false;
56
- }
57
- ngOnChanges(changes) {
58
- // Fixed
59
- if ('fixed' in changes) {
60
- // Coerce the value to a boolean
61
- this.fixed = coerceBooleanProperty(changes['fixed'].currentValue);
62
- // Execute the observable
63
- this.fixedChanged.next(this.fixed);
64
- }
65
- // Mode
66
- if ('mode' in changes) {
67
- // Get the previous and current values
68
- const previousMode = changes['mode'].previousValue;
69
- const currentMode = changes['mode'].currentValue;
70
- // Disable the animations
71
- this._disableAnimations();
72
- // If the mode changes: 'over -> side'
73
- if (previousMode === 'over' && currentMode === 'side') {
74
- // Hide the overlay
75
- this._hideOverlay();
76
- }
77
- // If the mode changes: 'side -> over'
78
- if (previousMode === 'side' && currentMode === 'over') {
79
- // If the drawer is opened
80
- if (this.opened) {
81
- // Show the overlay
82
- this._showOverlay();
83
- }
84
- }
85
- // Execute the observable
86
- this.modeChanged.next(currentMode);
87
- // Enable the animations after a delay
88
- // The delay must be bigger than the current transition-duration
89
- // to make sure nothing will be animated while the mode is changing
90
- setTimeout(() => {
91
- this._enableAnimations();
92
- }, 500);
93
- }
94
- // Opened
95
- if ('opened' in changes) {
96
- // Coerce the value to a boolean
97
- const open = coerceBooleanProperty(changes['opened'].currentValue);
98
- // Open/close the drawer
99
- this._toggleOpened(open);
100
- }
101
- // Position
102
- if ('position' in changes) {
103
- // Execute the observable
104
- this.positionChanged.next(this.position);
105
- }
106
- // Transparent overlay
107
- if ('transparentOverlay' in changes) {
108
- // Coerce the value to a boolean
109
- this.transparentOverlay = coerceBooleanProperty(changes['transparentOverlay'].currentValue);
110
- }
111
- }
112
- ngOnInit() {
113
- // Register the drawer
114
- this._cmatDrawerService.registerComponent(this.name, this);
115
- }
116
- ngOnDestroy() {
117
- // Deregister the drawer from the registry
118
- this._cmatDrawerService.deregisterComponent(this.name);
119
- }
120
- open() {
121
- // Return if the drawer has already opened
122
- if (this.opened) {
123
- return;
124
- }
125
- // Open the drawer
126
- this._toggleOpened(true);
127
- }
128
- close() {
129
- // Return if the drawer has already closed
130
- if (!this.opened) {
131
- return;
132
- }
133
- // Close the drawer
134
- this._toggleOpened(false);
135
- }
136
- toggle() {
137
- if (this.opened) {
138
- this.close();
139
- }
140
- else {
141
- this.open();
142
- }
143
- }
144
- /**
145
- * Enable the animations
146
- *
147
- * @private
148
- */
149
- _enableAnimations() {
150
- // Return if the animations are already enabled
151
- if (this._animationsEnabled) {
152
- return;
153
- }
154
- // Enable the animations
155
- this._animationsEnabled = true;
156
- }
157
- /**
158
- * Disable the animations
159
- *
160
- * @private
161
- */
162
- _disableAnimations() {
163
- // Return if the animations are already disabled
164
- if (!this._animationsEnabled) {
165
- return;
166
- }
167
- // Disable the animations
168
- this._animationsEnabled = false;
169
- }
170
- /**
171
- * Show the backdrop
172
- *
173
- * @private
174
- */
175
- _showOverlay() {
176
- // Create the backdrop element
177
- this._overlay = this._renderer2.createElement('div');
178
- // Return if overlay couldn't be create for some reason
179
- if (!this._overlay) {
180
- return;
181
- }
182
- // Add a class to the backdrop element
183
- this._overlay.classList.add('cmat-drawer-overlay');
184
- // Add a class depending on the fixed option
185
- if (this.fixed) {
186
- this._overlay.classList.add('cmat-drawer-overlay-fixed');
187
- }
188
- // Add a class depending on the transparentOverlay option
189
- if (this.transparentOverlay) {
190
- this._overlay.classList.add('cmat-drawer-overlay-transparent');
191
- }
192
- // Append the backdrop to the parent of the drawer
193
- this._renderer2.appendChild(this._elementRef.nativeElement.parentElement, this._overlay);
194
- // Create the enter animation and attach it to the player
195
- this._player = this._animationBuilder.build([
196
- animate('300ms cubic-bezier(0.25, 0.8, 0.25, 1)', style({ opacity: 1 }))
197
- ]).create(this._overlay);
198
- // Once the animation is done...
199
- this._player.onDone(() => {
200
- // Destroy the player
201
- this._player.destroy();
202
- });
203
- // Play the animation
204
- this._player.play();
205
- // Add an event listener to the overlay
206
- this._overlay.addEventListener('click', () => {
207
- this.close();
208
- });
209
- }
210
- /**
211
- * Hide the backdrop
212
- *
213
- * @private
214
- */
215
- _hideOverlay() {
216
- if (!this._overlay) {
217
- return;
218
- }
219
- // Create the leave animation and attach it to the player
220
- this._player = this._animationBuilder.build([
221
- animate('300ms cubic-bezier(0.25, 0.8, 0.25, 1)', style({ opacity: 0 }))
222
- ]).create(this._overlay);
223
- // Play the animation
224
- this._player.play();
225
- // Once the animation is done...
226
- this._player.onDone(() => {
227
- // Destroy the player
228
- this._player.destroy();
229
- // If the backdrop still exists...
230
- if (this._overlay) {
231
- // Remove the backdrop
232
- this._overlay.parentNode?.removeChild(this._overlay);
233
- this._overlay = null;
234
- }
235
- });
236
- }
237
- /**
238
- * Open/close the drawer
239
- *
240
- * @param open
241
- * @private
242
- */
243
- _toggleOpened(open) {
244
- // Set the opened
245
- this.opened = open;
246
- // Enable the animations
247
- this._enableAnimations();
248
- // If the mode is 'over'
249
- if (this.mode === 'over') {
250
- // If the drawer opens, show the overlay
251
- if (open) {
252
- this._showOverlay();
253
- }
254
- // Otherwise, close the overlay
255
- else {
256
- this._hideOverlay();
257
- }
258
- }
259
- // Execute the observable
260
- this.openedChanged.next(open);
261
- }
262
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatDrawerComponent, deps: [{ token: i1.AnimationBuilder }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i2.CmatDrawerService }, { token: i3.CmatUtilsService }], target: i0.ɵɵFactoryTarget.Component }); }
263
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.10", type: CmatDrawerComponent, isStandalone: true, selector: "cmat-drawer", inputs: { fixed: "fixed", mode: "mode", name: "name", opened: "opened", position: "position", transparentOverlay: "transparentOverlay" }, outputs: { fixedChanged: "fixedChanged", modeChanged: "modeChanged", openedChanged: "openedChanged", positionChanged: "positionChanged" }, host: { listeners: { "mouseenter": "onMouseenter()", "mouseleave": "onMouseleave()" }, properties: { "class": "this.classList", "style": "this.styleList" } }, exportAs: ["cmatDrawer"], usesOnChanges: true, ngImport: i0, template: "<div class=\"cmat-drawer-content\">\r\n <ng-content></ng-content>\r\n</div>", styles: ["cmat-drawer{position:relative;display:flex;flex-direction:column;flex:1 1 auto;width:320px;min-width:320px;max-width:320px;z-index:300;box-shadow:0 2px 8px #00000059}cmat-drawer.cmat-drawer-animations-enabled{transition-duration:.4s;transition-timing-function:cubic-bezier(.25,.8,.25,1);transition-property:visibility,margin-left,margin-right,transform,width,max-width,min-width}cmat-drawer.cmat-drawer-animations-enabled .cmat-drawer-content{transition-duration:.4s;transition-timing-function:cubic-bezier(.25,.8,.25,1);transition-property:width,max-width,min-width}cmat-drawer.cmat-drawer-mode-over{position:absolute;top:0;bottom:0}cmat-drawer.cmat-drawer-mode-over.cmat-drawer-fixed{position:fixed}cmat-drawer.cmat-drawer-position-left.cmat-drawer-mode-side{margin-left:-320px}cmat-drawer.cmat-drawer-position-left.cmat-drawer-mode-side.cmat-drawer-opened{margin-left:0}cmat-drawer.cmat-drawer-position-left.cmat-drawer-mode-over{left:0;transform:translate3d(-100%,0,0)}cmat-drawer.cmat-drawer-position-left.cmat-drawer-mode-over.cmat-drawer-opened{transform:translateZ(0)}cmat-drawer.cmat-drawer-position-left .cmat-drawer-content{left:0}cmat-drawer.cmat-drawer-position-right.cmat-drawer-mode-side{margin-right:-320px}cmat-drawer.cmat-drawer-position-right.cmat-drawer-mode-side.cmat-drawer-opened{margin-right:0}cmat-drawer.cmat-drawer-position-right.cmat-drawer-mode-over{right:0;transform:translate3d(100%,0,0)}cmat-drawer.cmat-drawer-position-right.cmat-drawer-mode-over.cmat-drawer-opened{transform:translateZ(0)}cmat-drawer.cmat-drawer-position-right .cmat-drawer-content{right:0}cmat-drawer .cmat-drawer-content{position:absolute;display:flex;flex:1 1 auto;top:0;bottom:0;width:100%;height:100%;overflow:hidden}.cmat-drawer-overlay{position:absolute;inset:0;z-index:299;opacity:1;background-color:#0009}.cmat-drawer-overlay.cmat-drawer-overlay-fixed{position:fixed}.cmat-drawer-overlay.cmat-drawer-overlay-transparent{background-color:transparent}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
264
- }
265
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatDrawerComponent, decorators: [{
266
- type: Component,
267
- args: [{ selector: 'cmat-drawer', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'cmatDrawer', standalone: true, template: "<div class=\"cmat-drawer-content\">\r\n <ng-content></ng-content>\r\n</div>", styles: ["cmat-drawer{position:relative;display:flex;flex-direction:column;flex:1 1 auto;width:320px;min-width:320px;max-width:320px;z-index:300;box-shadow:0 2px 8px #00000059}cmat-drawer.cmat-drawer-animations-enabled{transition-duration:.4s;transition-timing-function:cubic-bezier(.25,.8,.25,1);transition-property:visibility,margin-left,margin-right,transform,width,max-width,min-width}cmat-drawer.cmat-drawer-animations-enabled .cmat-drawer-content{transition-duration:.4s;transition-timing-function:cubic-bezier(.25,.8,.25,1);transition-property:width,max-width,min-width}cmat-drawer.cmat-drawer-mode-over{position:absolute;top:0;bottom:0}cmat-drawer.cmat-drawer-mode-over.cmat-drawer-fixed{position:fixed}cmat-drawer.cmat-drawer-position-left.cmat-drawer-mode-side{margin-left:-320px}cmat-drawer.cmat-drawer-position-left.cmat-drawer-mode-side.cmat-drawer-opened{margin-left:0}cmat-drawer.cmat-drawer-position-left.cmat-drawer-mode-over{left:0;transform:translate3d(-100%,0,0)}cmat-drawer.cmat-drawer-position-left.cmat-drawer-mode-over.cmat-drawer-opened{transform:translateZ(0)}cmat-drawer.cmat-drawer-position-left .cmat-drawer-content{left:0}cmat-drawer.cmat-drawer-position-right.cmat-drawer-mode-side{margin-right:-320px}cmat-drawer.cmat-drawer-position-right.cmat-drawer-mode-side.cmat-drawer-opened{margin-right:0}cmat-drawer.cmat-drawer-position-right.cmat-drawer-mode-over{right:0;transform:translate3d(100%,0,0)}cmat-drawer.cmat-drawer-position-right.cmat-drawer-mode-over.cmat-drawer-opened{transform:translateZ(0)}cmat-drawer.cmat-drawer-position-right .cmat-drawer-content{right:0}cmat-drawer .cmat-drawer-content{position:absolute;display:flex;flex:1 1 auto;top:0;bottom:0;width:100%;height:100%;overflow:hidden}.cmat-drawer-overlay{position:absolute;inset:0;z-index:299;opacity:1;background-color:#0009}.cmat-drawer-overlay.cmat-drawer-overlay-fixed{position:fixed}.cmat-drawer-overlay.cmat-drawer-overlay-transparent{background-color:transparent}\n"] }]
268
- }], ctorParameters: () => [{ type: i1.AnimationBuilder }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i2.CmatDrawerService }, { type: i3.CmatUtilsService }], propDecorators: { fixed: [{
269
- type: Input
270
- }], mode: [{
271
- type: Input
272
- }], name: [{
273
- type: Input
274
- }], opened: [{
275
- type: Input
276
- }], position: [{
277
- type: Input
278
- }], transparentOverlay: [{
279
- type: Input
280
- }], fixedChanged: [{
281
- type: Output
282
- }], modeChanged: [{
283
- type: Output
284
- }], openedChanged: [{
285
- type: Output
286
- }], positionChanged: [{
287
- type: Output
288
- }], classList: [{
289
- type: HostBinding,
290
- args: ['class']
291
- }], styleList: [{
292
- type: HostBinding,
293
- args: ['style']
294
- }], onMouseenter: [{
295
- type: HostListener,
296
- args: ['mouseenter']
297
- }], onMouseleave: [{
298
- type: HostListener,
299
- args: ['mouseleave']
300
- }] } });
301
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9kcmF3ZXIvZHJhd2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9kcmF3ZXIvZHJhd2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQXFDLEtBQUssRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3hGLE9BQU8sRUFBZ0IscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBZ0MsTUFBTSxFQUE0QixpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFjbE4sTUFBTSxPQUFPLG1CQUFtQjtJQXVCNUIsWUFDWSxpQkFBbUMsRUFDbkMsV0FBdUIsRUFDdkIsVUFBcUIsRUFDckIsa0JBQXFDLEVBQ3JDLGlCQUFtQztRQUpuQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQ25DLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLGVBQVUsR0FBVixVQUFVLENBQVc7UUFDckIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFtQjtRQUNyQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBdkIvQyx3REFBd0Q7UUFFL0MsVUFBSyxHQUFZLEtBQUssQ0FBQztRQUN2QixTQUFJLEdBQW1CLE1BQU0sQ0FBQztRQUM5QixTQUFJLEdBQVcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pELFdBQU0sR0FBWSxLQUFLLENBQUM7UUFDeEIsYUFBUSxHQUF1QixNQUFNLENBQUM7UUFDdEMsdUJBQWtCLEdBQVksS0FBSyxDQUFDO1FBQzFC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QUFDO1lBQ3hCLENBQUM7UUFDTCxDQUFDO1FBRUQseUJBQXlCO1FBQ3pCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7K0dBM1RRLG1CQUFtQjttR0FBbkIsbUJBQW1CLDBpQkNoQmhDLGdGQUVNOzs0RkRjTyxtQkFBbUI7a0JBVC9CLFNBQVM7K0JBQ0ksYUFBYSxpQkFHUixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDLFlBQVksY0FDVixJQUFJO3FNQVNQLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDYSxZQUFZO3NCQUE5QixNQUFNO2dCQUNZLFdBQVc7c0JBQTdCLE1BQU07Z0JBQ1ksYUFBYTtzQkFBL0IsTUFBTTtnQkFDWSxlQUFlO3NCQUFqQyxNQUFNO2dCQWdCbUIsU0FBUztzQkFBbEMsV0FBVzt1QkFBQyxPQUFPO2dCQVlNLFNBQVM7c0JBQWxDLFdBQVc7dUJBQUMsT0FBTztnQkFPcEIsWUFBWTtzQkFEWCxZQUFZO3VCQUFDLFlBQVk7Z0JBVTFCLFlBQVk7c0JBRFgsWUFBWTt1QkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwgQW5pbWF0aW9uQnVpbGRlciwgQW5pbWF0aW9uUGxheWVyLCBzdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XHJcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgUmVuZGVyZXIyLCBTaW1wbGVDaGFuZ2VzLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDbWF0VXRpbHNTZXJ2aWNlIH0gZnJvbSAnY21hdC9zZXJ2aWNlcy91dGlscyc7XHJcbmltcG9ydCB7IENtYXREcmF3ZXJTZXJ2aWNlIH0gZnJvbSAnLi9kcmF3ZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IENtYXREcmF3ZXJNb2RlLCBDbWF0RHJhd2VyUG9zaXRpb24gfSBmcm9tICcuL2RyYXdlci50eXBlcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY21hdC1kcmF3ZXInLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RyYXdlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9kcmF3ZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIGV4cG9ydEFzOiAnY21hdERyYXdlcicsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0RHJhd2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgICAvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb24gKi9cclxuICAgIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9maXhlZDogQm9vbGVhbklucHV0O1xyXG4gICAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX29wZW5lZDogQm9vbGVhbklucHV0O1xyXG4gICAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3RyYW5zcGFyZW50T3ZlcmxheTogQm9vbGVhbklucHV0O1xyXG4gICAgLyogZXNsaW50LWVuYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbmFtaW5nLWNvbnZlbnRpb24gKi9cclxuXHJcbiAgICBASW5wdXQoKSBmaXhlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgbW9kZTogQ21hdERyYXdlck1vZGUgPSAnc2lkZSc7XHJcbiAgICBASW5wdXQoKSBuYW1lOiBzdHJpbmcgPSB0aGlzLl9jbWF0VXRpbHNTZXJ2aWNlLnJhbmRvbUlkKCk7XHJcbiAgICBASW5wdXQoKSBvcGVuZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpIHBvc2l0aW9uOiBDbWF0RHJhd2VyUG9zaXRpb24gPSAnbGVmdCc7XHJcbiAgICBASW5wdXQoKSB0cmFuc3BhcmVudE92ZXJsYXk6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBPdXRwdXQoKSByZWFkb25seSBmaXhlZENoYW5nZWQ6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuICAgIEBPdXRwdXQoKSByZWFkb25seSBtb2RlQ2hhbmdlZDogRXZlbnRFbWl0dGVyPENtYXREcmF3ZXJNb2RlPiA9IG5ldyBFdmVudEVtaXR0ZXI8Q21hdERyYXdlck1vZGU+KCk7XHJcbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgb3BlbmVkQ2hhbmdlZDogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IHBvc2l0aW9uQ2hhbmdlZDogRXZlbnRFbWl0dGVyPENtYXREcmF3ZXJQb3NpdGlvbj4gPSBuZXcgRXZlbnRFbWl0dGVyPENtYXREcmF3ZXJQb3NpdGlvbj4oKTtcclxuXHJcbiAgICBwcml2YXRlIF9hbmltYXRpb25zRW5hYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHJpdmF0ZSBfaG92ZXJlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHJpdmF0ZSBfb3ZlcmxheTogSFRNTEVsZW1lbnQgfCBudWxsO1xyXG4gICAgcHJpdmF0ZSBfcGxheWVyOiBBbmltYXRpb25QbGF5ZXI7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBfYW5pbWF0aW9uQnVpbGRlcjogQW5pbWF0aW9uQnVpbGRlcixcclxuICAgICAgICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgICAgIHByaXZhdGUgX3JlbmRlcmVyMjogUmVuZGVyZXIyLFxyXG4gICAgICAgIHByaXZhdGUgX2NtYXREcmF3ZXJTZXJ2aWNlOiBDbWF0RHJhd2VyU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9jbWF0VXRpbHNTZXJ2aWNlOiBDbWF0VXRpbHNTZXJ2aWNlXHJcbiAgICApIHtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgZ2V0IGNsYXNzTGlzdCgpOiBhbnkge1xyXG4gICAgICAgIC8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvbiAqL1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICdjbWF0LWRyYXdlci1hbmltYXRpb25zLWVuYWJsZWQnOiB0aGlzLl9hbmltYXRpb25zRW5hYmxlZCxcclxuICAgICAgICAgICAgJ2NtYXQtZHJhd2VyLWZpeGVkJzogdGhpcy5maXhlZCxcclxuICAgICAgICAgICAgJ2NtYXQtZHJhd2VyLWhvdmVyJzogdGhpcy5faG92ZXJlZCxcclxuICAgICAgICAgICAgW2BjbWF0LWRyYXdlci1tb2RlLSR7dGhpcy5tb2RlfWBdOiB0cnVlLFxyXG4gICAgICAgICAgICAnY21hdC1kcmF3ZXItb3BlbmVkJzogdGhpcy5vcGVuZWQsXHJcbiAgICAgICAgICAgIFtgY21hdC1kcmF3ZXItcG9zaXRpb24tJHt0aGlzLnBvc2l0aW9ufWBdOiB0cnVlXHJcbiAgICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlJykgZ2V0IHN0eWxlTGlzdCgpOiBhbnkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICd2aXNpYmlsaXR5JzogdGhpcy5vcGVuZWQgPyAndmlzaWJsZScgOiAnaGlkZGVuJ1xyXG4gICAgICAgIH07XHJcbiAgICB9XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2VlbnRlcicpXHJcbiAgICBvbk1vdXNlZW50ZXIoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gRW5hYmxlIHRoZSBhbmltYXRpb25zXHJcbiAgICAgICAgdGhpcy5fZW5hYmxlQW5pbWF0aW9ucygpO1xyXG5cclxuICAgICAgICAvLyBTZXQgdGhlIGhvdmVyZWRcclxuICAgICAgICB0aGlzLl9ob3ZlcmVkID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJylcclxuICAgIG9uTW91c2VsZWF2ZSgpOiB2b2lkIHtcclxuICAgICAgICAvLyBFbmFibGUgdGhlIGFuaW1hdGlvbnNcclxuICAgICAgICB0aGlzLl9lbmFibGVBbmltYXRpb25zKCk7XHJcblxyXG4gICAgICAgIC8vIFNldCB0aGUgaG92ZXJlZFxyXG4gICAgICAgIHRoaXMuX2hvdmVyZWQgPSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICAgICAgLy8gRml4ZWRcclxuICAgICAgICBpZiAoJ2ZpeGVkJyBpbiBjaGFuZ2VzKSB7XHJcbiAgICAgICAgICAgIC8vIENvZXJjZSB0aGUgdmFsdWUgdG8gYSBib29sZWFuXHJcbiAgICAgICAgICAgIHRoaXMuZml4ZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkoY2hhbmdlc1snZml4ZWQnXS5jdXJyZW50VmFsdWUpO1xyXG5cclxuICAgICAgICAgICAgLy8gRXhlY3V0ZSB0aGUgb2JzZXJ2YWJsZVxyXG4gICAgICAgICAgICB0aGlzLmZpeGVkQ2hhbmdlZC5uZXh0KHRoaXMuZml4ZWQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gTW9kZVxyXG4gICAgICAgIGlmICgnbW9kZScgaW4gY2hhbmdlcykge1xyXG4gICAgICAgICAgICAvLyBHZXQgdGhlIHByZXZpb3VzIGFuZCBjdXJyZW50IHZhbHVlc1xyXG4gICAgICAgICAgICBjb25zdCBwcmV2aW91c01vZGUgPSBjaGFuZ2VzWydtb2RlJ10ucHJldmlvdXNWYWx1ZTtcclxuICAgICAgICAgICAgY29uc3QgY3VycmVudE1vZGUgPSBjaGFuZ2VzWydtb2RlJ10uY3VycmVudFZhbHVlO1xyXG5cclxuICAgICAgICAgICAgLy8gRGlzYWJsZSB0aGUgYW5pbWF0aW9uc1xyXG4gICAgICAgICAgICB0aGlzLl9kaXNhYmxlQW5pbWF0aW9ucygpO1xyXG5cclxuICAgICAgICAgICAgLy8gSWYgdGhlIG1vZGUgY2hhbmdlczogJ292ZXIgLT4gc2lkZSdcclxuICAgICAgICAgICAgaWYgKHByZXZpb3VzTW9kZSA9PT0gJ292ZXInICYmIGN1cnJlbnRNb2RlID09PSAnc2lkZScpIHtcclxuICAgICAgICAgICAgICAgIC8vIEhpZGUgdGhlIG92ZXJsYXlcclxuICAgICAgICAgICAgICAgIHRoaXMuX2hpZGVPdmVybGF5KCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC8vIElmIHRoZSBtb2RlIGNoYW5nZXM6ICdzaWRlIC0+IG92ZXInXHJcbiAgICAgICAgICAgIGlmIChwcmV2aW91c01vZGUgPT09ICdzaWRlJyAmJiBjdXJyZW50TW9kZSA9PT0gJ292ZXInKSB7XHJcbiAgICAgICAgICAgICAgICAvLyBJZiB0aGUgZHJhd2VyIGlzIG9wZW5lZFxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMub3BlbmVkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gU2hvdyB0aGUgb3ZlcmxheVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3Nob3dPdmVybGF5KCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC8vIEV4ZWN1dGUgdGhlIG9ic2VydmFibGVcclxuICAgICAgICAgICAgdGhpcy5tb2RlQ2hhbmdlZC5uZXh0KGN1cnJlbnRNb2RlKTtcclxuXHJcbiAgICAgICAgICAgIC8vIEVuYWJsZSB0aGUgYW5pbWF0aW9ucyBhZnRlciBhIGRlbGF5XHJcbiAgICAgICAgICAgIC8vIFRoZSBkZWxheSBtdXN0IGJlIGJpZ2dlciB0aGFuIHRoZSBjdXJyZW50IHRyYW5zaXRpb24tZHVyYXRpb25cclxuICAgICAgICAgICAgLy8gdG8gbWFrZSBzdXJlIG5vdGhpbmcgd2lsbCBiZSBhbmltYXRlZCB3aGlsZSB0aGUgbW9kZSBpcyBjaGFuZ2luZ1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2VuYWJsZUFuaW1hdGlvbnMoKTtcclxuICAgICAgICAgICAgfSwgNTAwKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIE9wZW5lZFxyXG4gICAgICAgIGlmICgnb3BlbmVkJyBpbiBjaGFuZ2VzKSB7XHJcbiAgICAgICAgICAgIC8vIENvZXJjZSB0aGUgdmFsdWUgdG8gYSBib29sZWFuXHJcbiAgICAgICAgICAgIGNvbnN0IG9wZW4gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkoY2hhbmdlc1snb3BlbmVkJ10uY3VycmVudFZhbHVlKTtcclxuXHJcbiAgICAgICAgICAgIC8vIE9wZW4vY2xvc2UgdGhlIGRyYXdlclxyXG4gICAgICAgICAgICB0aGlzLl90b2dnbGVPcGVuZWQob3Blbik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBQb3NpdGlvblxyXG4gICAgICAgIGlmICgncG9zaXRpb24nIGluIGNoYW5nZXMpIHtcclxuICAgICAgICAgICAgLy8gRXhlY3V0ZSB0aGUgb2JzZXJ2YWJsZVxyXG4gICAgICAgICAgICB0aGlzLnBvc2l0aW9uQ2hhbmdlZC5uZXh0KHRoaXMucG9zaXRpb24pO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gVHJhbnNwYXJlbnQgb3ZlcmxheVxyXG4gICAgICAgIGlmICgndHJhbnNwYXJlbnRPdmVybGF5JyBpbiBjaGFuZ2VzKSB7XHJcbiAgICAgICAgICAgIC8vIENvZXJjZSB0aGUgdmFsdWUgdG8gYSBib29sZWFuXHJcbiAgICAgICAgICAgIHRoaXMudHJhbnNwYXJlbnRPdmVybGF5ID0gY29lcmNlQm9vbGVhblByb3BlcnR5KGNoYW5nZXNbJ3RyYW5zcGFyZW50T3ZlcmxheSddLmN1cnJlbnRWYWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIC8vIFJlZ2lzdGVyIHRoZSBkcmF3ZXJcclxuICAgICAgICB0aGlzLl9jbWF0RHJhd2VyU2VydmljZS5yZWdpc3RlckNvbXBvbmVudCh0aGlzLm5hbWUsIHRoaXMpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIC8vIERlcmVnaXN0ZXIgdGhlIGRyYXdlciBmcm9tIHRoZSByZWdpc3RyeVxyXG4gICAgICAgIHRoaXMuX2NtYXREcmF3ZXJTZXJ2aWNlLmRlcmVnaXN0ZXJDb21wb25lbnQodGhpcy5uYW1lKTtcclxuICAgIH1cclxuXHJcbiAgICBvcGVuKCk6IHZvaWQge1xyXG4gICAgICAgIC8vIFJldHVybiBpZiB0aGUgZHJhd2VyIGhhcyBhbHJlYWR5IG9wZW5lZFxyXG4gICAgICAgIGlmICh0aGlzLm9wZW5lZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBPcGVuIHRoZSBkcmF3ZXJcclxuICAgICAgICB0aGlzLl90b2dnbGVPcGVuZWQodHJ1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgY2xvc2UoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gUmV0dXJuIGlmIHRoZSBkcmF3ZXIgaGFzIGFscmVhZHkgY2xvc2VkXHJcbiAgICAgICAgaWYgKCF0aGlzLm9wZW5lZCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBDbG9zZSB0aGUgZHJhd2VyXHJcbiAgICAgICAgdGhpcy5fdG9nZ2xlT3BlbmVkKGZhbHNlKTtcclxuICAgIH1cclxuXHJcbiAgICB0b2dnbGUoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMub3BlbmVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMub3BlbigpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEVuYWJsZSB0aGUgYW5pbWF0aW9uc1xyXG4gICAgICpcclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgX2VuYWJsZUFuaW1hdGlvbnMoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gUmV0dXJuIGlmIHRoZSBhbmltYXRpb25zIGFyZSBhbHJlYWR5IGVuYWJsZWRcclxuICAgICAgICBpZiAodGhpcy5fYW5pbWF0aW9uc0VuYWJsZWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gRW5hYmxlIHRoZSBhbmltYXRpb25zXHJcbiAgICAgICAgdGhpcy5fYW5pbWF0aW9uc0VuYWJsZWQgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogRGlzYWJsZSB0aGUgYW5pbWF0aW9uc1xyXG4gICAgICpcclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgX2Rpc2FibGVBbmltYXRpb25zKCk6IHZvaWQge1xyXG4gICAgICAgIC8vIFJldHVybiBpZiB0aGUgYW5pbWF0aW9ucyBhcmUgYWxyZWFkeSBkaXNhYmxlZFxyXG4gICAgICAgIGlmICghdGhpcy5fYW5pbWF0aW9uc0VuYWJsZWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gRGlzYWJsZSB0aGUgYW5pbWF0aW9uc1xyXG4gICAgICAgIHRoaXMuX2FuaW1hdGlvbnNFbmFibGVkID0gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBTaG93IHRoZSBiYWNrZHJvcFxyXG4gICAgICpcclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgX3Nob3dPdmVybGF5KCk6IHZvaWQge1xyXG4gICAgICAgIC8vIENyZWF0ZSB0aGUgYmFja2Ryb3AgZWxlbWVudFxyXG4gICAgICAgIHRoaXMuX292ZXJsYXkgPSB0aGlzLl9yZW5kZXJlcjIuY3JlYXRlRWxlbWVudCgnZGl2Jyk7XHJcblxyXG4gICAgICAgIC8vIFJldHVybiBpZiBvdmVybGF5IGNvdWxkbid0IGJlIGNyZWF0ZSBmb3Igc29tZSByZWFzb25cclxuICAgICAgICBpZiAoIXRoaXMuX292ZXJsYXkpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gQWRkIGEgY2xhc3MgdG8gdGhlIGJhY2tkcm9wIGVsZW1lbnRcclxuICAgICAgICB0aGlzLl9vdmVybGF5LmNsYXNzTGlzdC5hZGQoJ2NtYXQtZHJhd2VyLW92ZXJsYXknKTtcclxuXHJcbiAgICAgICAgLy8gQWRkIGEgY2xhc3MgZGVwZW5kaW5nIG9uIHRoZSBmaXhlZCBvcHRpb25cclxuICAgICAgICBpZiAodGhpcy5maXhlZCkge1xyXG4gICAgICAgICAgICB0aGlzLl9vdmVybGF5LmNsYXNzTGlzdC5hZGQoJ2NtYXQtZHJhd2VyLW92ZXJsYXktZml4ZWQnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIEFkZCBhIGNsYXNzIGRlcGVuZGluZyBvbiB0aGUgdHJhbnNwYXJlbnRPdmVybGF5IG9wdGlvblxyXG4gICAgICAgIGlmICh0aGlzLnRyYW5zcGFyZW50T3ZlcmxheSkge1xyXG4gICAgICAgICAgICB0aGlzLl9vdmVybGF5LmNsYXNzTGlzdC5hZGQoJ2NtYXQtZHJhd2VyLW92ZXJsYXktdHJhbnNwYXJlbnQnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIEFwcGVuZCB0aGUgYmFja2Ryb3AgdG8gdGhlIHBhcmVudCBvZiB0aGUgZHJhd2VyXHJcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIyLmFwcGVuZENoaWxkKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50LCB0aGlzLl9vdmVybGF5KTtcclxuXHJcbiAgICAgICAgLy8gQ3JlYXRlIHRoZSBlbnRlciBhbmltYXRpb24gYW5kIGF0dGFjaCBpdCB0byB0aGUgcGxheWVyXHJcbiAgICAgICAgdGhpcy5fcGxheWVyID0gdGhpcy5fYW5pbWF0aW9uQnVpbGRlci5idWlsZChbXHJcbiAgICAgICAgICAgIGFuaW1hdGUoJzMwMG1zIGN1YmljLWJlemllcigwLjI1LCAwLjgsIDAuMjUsIDEpJywgc3R5bGUoeyBvcGFjaXR5OiAxIH0pKVxyXG4gICAgICAgIF0pLmNyZWF0ZSh0aGlzLl9vdmVybGF5KTtcclxuXHJcbiAgICAgICAgLy8gT25jZSB0aGUgYW5pbWF0aW9uIGlzIGRvbmUuLi5cclxuICAgICAgICB0aGlzLl9wbGF5ZXIub25Eb25lKCgpID0+IHtcclxuXHJcbiAgICAgICAgICAgIC8vIERlc3Ryb3kgdGhlIHBsYXllclxyXG4gICAgICAgICAgICB0aGlzLl9wbGF5ZXIuZGVzdHJveSgpO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICAvLyBQbGF5IHRoZSBhbmltYXRpb25cclxuICAgICAgICB0aGlzLl9wbGF5ZXIucGxheSgpO1xyXG5cclxuICAgICAgICAvLyBBZGQgYW4gZXZlbnQgbGlzdGVuZXIgdG8gdGhlIG92ZXJsYXlcclxuICAgICAgICB0aGlzLl9vdmVybGF5LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmNsb3NlKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBIaWRlIHRoZSBiYWNrZHJvcFxyXG4gICAgICpcclxuICAgICAqIEBwcml2YXRlXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgX2hpZGVPdmVybGF5KCk6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGhpcy5fb3ZlcmxheSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBDcmVhdGUgdGhlIGxlYXZlIGFuaW1hdGlvbiBhbmQgYXR0YWNoIGl0IHRvIHRoZSBwbGF5ZXJcclxuICAgICAgICB0aGlzLl9wbGF5ZXIgPSB0aGlzLl9hbmltYXRpb25CdWlsZGVyLmJ1aWxkKFtcclxuICAgICAgICAgICAgYW5pbWF0ZSgnMzAwbXMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuOCwgMC4yNSwgMSknLCBzdHlsZSh7IG9wYWNpdHk6IDAgfSkpXHJcbiAgICAgICAgXSkuY3JlYXRlKHRoaXMuX292ZXJsYXkpO1xyXG5cclxuICAgICAgICAvLyBQbGF5IHRoZSBhbmltYXRpb25cclxuICAgICAgICB0aGlzLl9wbGF5ZXIucGxheSgpO1xyXG5cclxuICAgICAgICAvLyBPbmNlIHRoZSBhbmltYXRpb24gaXMgZG9uZS4uLlxyXG4gICAgICAgIHRoaXMuX3BsYXllci5vbkRvbmUoKCkgPT4ge1xyXG5cclxuICAgICAgICAgICAgLy8gRGVzdHJveSB0aGUgcGxheWVyXHJcbiAgICAgICAgICAgIHRoaXMuX3BsYXllci5kZXN0cm95KCk7XHJcblxyXG4gICAgICAgICAgICAvLyBJZiB0aGUgYmFja2Ryb3Agc3RpbGwgZXhpc3RzLi4uXHJcbiAgICAgICAgICAgIGlmICh0aGlzLl9vdmVybGF5KSB7XHJcbiAgICAgICAgICAgICAgICAvLyBSZW1vdmUgdGhlIGJhY2tkcm9wXHJcbiAgICAgICAgICAgICAgICB0aGlzLl9vdmVybGF5LnBhcmVudE5vZGU/LnJlbW92ZUNoaWxkKHRoaXMuX292ZXJsYXkpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fb3ZlcmxheSA9IG51bGw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIE9wZW4vY2xvc2UgdGhlIGRyYXdlclxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBvcGVuXHJcbiAgICAgKiBAcHJpdmF0ZVxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIF90b2dnbGVPcGVuZWQob3BlbjogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIC8vIFNldCB0aGUgb3BlbmVkXHJcbiAgICAgICAgdGhpcy5vcGVuZWQgPSBvcGVuO1xyXG5cclxuICAgICAgICAvLyBFbmFibGUgdGhlIGFuaW1hdGlvbnNcclxuICAgICAgICB0aGlzLl9lbmFibGVBbmltYXRpb25zKCk7XHJcblxyXG4gICAgICAgIC8vIElmIHRoZSBtb2RlIGlzICdvdmVyJ1xyXG4gICAgICAgIGlmICh0aGlzLm1vZGUgPT09ICdvdmVyJykge1xyXG4gICAgICAgICAgICAvLyBJZiB0aGUgZHJhd2VyIG9wZW5zLCBzaG93IHRoZSBvdmVybGF5XHJcbiAgICAgICAgICAgIGlmIChvcGVuKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9zaG93T3ZlcmxheSgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC8vIE90aGVyd2lzZSwgY2xvc2UgdGhlIG92ZXJsYXlcclxuICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9oaWRlT3ZlcmxheSgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBFeGVjdXRlIHRoZSBvYnNlcnZhYmxlXHJcbiAgICAgICAgdGhpcy5vcGVuZWRDaGFuZ2VkLm5leHQob3Blbik7XHJcbiAgICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImNtYXQtZHJhd2VyLWNvbnRlbnRcIj5cclxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuPC9kaXY+Il19
@@ -1,41 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class CmatDrawerService {
4
- constructor() {
5
- this._componentRegistry = new Map();
6
- }
7
- /**
8
- * Register drawer component
9
- *
10
- * @param name
11
- * @param component
12
- */
13
- registerComponent(name, component) {
14
- this._componentRegistry.set(name, component);
15
- }
16
- /**
17
- * Deregister drawer component
18
- *
19
- * @param name
20
- */
21
- deregisterComponent(name) {
22
- this._componentRegistry.delete(name);
23
- }
24
- /**
25
- * Get drawer component from the registry
26
- *
27
- * @param name
28
- */
29
- getComponent(name) {
30
- return this._componentRegistry.get(name);
31
- }
32
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatDrawerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
33
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatDrawerService, providedIn: 'root' }); }
34
- }
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatDrawerService, decorators: [{
36
- type: Injectable,
37
- args: [{
38
- providedIn: 'root'
39
- }]
40
- }] });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvZHJhd2VyL2RyYXdlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTTNDLE1BQU0sT0FBTyxpQkFBaUI7SUFIOUI7UUFJWSx1QkFBa0IsR0FBcUMsSUFBSSxHQUFHLEVBQStCLENBQUM7S0E0QnpHO0lBM0JHOzs7OztPQUtHO0lBQ0gsaUJBQWlCLENBQUMsSUFBWSxFQUFFLFNBQThCO1FBQzFELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsbUJBQW1CLENBQUMsSUFBWTtRQUM1QixJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsWUFBWSxDQUFDLElBQVk7UUFDckIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzdDLENBQUM7K0dBNUJRLGlCQUFpQjttSEFBakIsaUJBQWlCLGNBRmQsTUFBTTs7NEZBRVQsaUJBQWlCO2tCQUg3QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ21hdERyYXdlckNvbXBvbmVudCB9IGZyb20gJy4vZHJhd2VyLmNvbXBvbmVudCc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIENtYXREcmF3ZXJTZXJ2aWNlIHtcclxuICAgIHByaXZhdGUgX2NvbXBvbmVudFJlZ2lzdHJ5OiBNYXA8c3RyaW5nLCBDbWF0RHJhd2VyQ29tcG9uZW50PiA9IG5ldyBNYXA8c3RyaW5nLCBDbWF0RHJhd2VyQ29tcG9uZW50PigpO1xyXG4gICAgLyoqXHJcbiAgICAgKiBSZWdpc3RlciBkcmF3ZXIgY29tcG9uZW50XHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIG5hbWVcclxuICAgICAqIEBwYXJhbSBjb21wb25lbnRcclxuICAgICAqL1xyXG4gICAgcmVnaXN0ZXJDb21wb25lbnQobmFtZTogc3RyaW5nLCBjb21wb25lbnQ6IENtYXREcmF3ZXJDb21wb25lbnQpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9jb21wb25lbnRSZWdpc3RyeS5zZXQobmFtZSwgY29tcG9uZW50KTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIERlcmVnaXN0ZXIgZHJhd2VyIGNvbXBvbmVudFxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBuYW1lXHJcbiAgICAgKi9cclxuICAgIGRlcmVnaXN0ZXJDb21wb25lbnQobmFtZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fY29tcG9uZW50UmVnaXN0cnkuZGVsZXRlKG5hbWUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogR2V0IGRyYXdlciBjb21wb25lbnQgZnJvbSB0aGUgcmVnaXN0cnlcclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gbmFtZVxyXG4gICAgICovXHJcbiAgICBnZXRDb21wb25lbnQobmFtZTogc3RyaW5nKTogQ21hdERyYXdlckNvbXBvbmVudCB8IHZvaWQge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9jb21wb25lbnRSZWdpc3RyeS5nZXQobmFtZSk7XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2VyLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL2RyYXdlci9kcmF3ZXIudHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIENtYXREcmF3ZXJNb2RlID1cclxuICAgIHwgJ292ZXInXHJcbiAgICB8ICdzaWRlJztcclxuXHJcbmV4cG9ydCB0eXBlIENtYXREcmF3ZXJQb3NpdGlvbiA9XHJcbiAgICB8ICdsZWZ0J1xyXG4gICAgfCAncmlnaHQnO1xyXG4iXX0=
@@ -1,4 +0,0 @@
1
- export * from './drawer.component';
2
- export * from './drawer.service';
3
- export * from './drawer.types';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9kcmF3ZXIvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZHJhd2VyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZHJhd2VyLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2RyYXdlci50eXBlcyc7XHJcbiJdfQ==
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY21hdC1jb21wb25lbnRzLWZ1bGxzY3JlZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvZnVsbHNjcmVlbi9jbWF0LWNvbXBvbmVudHMtZnVsbHNjcmVlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -1,44 +0,0 @@
1
- import { DOCUMENT, NgTemplateOutlet } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, Inject, Input, ViewEncapsulation } from '@angular/core';
3
- import { MatButtonModule } from '@angular/material/button';
4
- import { MatIconModule } from '@angular/material/icon';
5
- import { MatTooltipModule } from '@angular/material/tooltip';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/material/button";
8
- import * as i2 from "@angular/material/tooltip";
9
- import * as i3 from "@angular/material/icon";
10
- export class CmatFullscreenComponent {
11
- constructor(_document) {
12
- this._document = _document;
13
- }
14
- toggleFullscreen() {
15
- if (!this._document.fullscreenEnabled) {
16
- console.log('Fullscreen is not available in this browser.');
17
- return;
18
- }
19
- const fullScreen = this._document.fullscreenElement;
20
- if (fullScreen) {
21
- void this._document.exitFullscreen();
22
- }
23
- else {
24
- this._document.documentElement.requestFullscreen()
25
- .catch(() => {
26
- console.error('Entering fullscreen mode failed.');
27
- });
28
- }
29
- }
30
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatFullscreenComponent, deps: [{ token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component }); }
31
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.10", type: CmatFullscreenComponent, isStandalone: true, selector: "cmat-fullscreen", inputs: { iconTpl: "iconTpl", tooltip: "tooltip" }, exportAs: ["cmatFullscreen"], ngImport: i0, template: "<!-- Button -->\r\n<button type=\"button\" mat-icon-button [matTooltip]=\"tooltip || '\u5207\u6362\u5168\u5C4F'\" (click)=\"toggleFullscreen()\">\r\n <ng-container [ngTemplateOutlet]=\"iconTpl || defaultIconTpl\"></ng-container>\r\n</button>\r\n\r\n<!-- Default icon -->\r\n<ng-template #defaultIconTpl>\r\n <mat-icon [svgIcon]=\"'heroicons_outline:arrows-pointing-out'\"></mat-icon>\r\n</ng-template>", dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
32
- }
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatFullscreenComponent, decorators: [{
34
- type: Component,
35
- args: [{ selector: 'cmat-fullscreen', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'cmatFullscreen', standalone: true, imports: [MatButtonModule, MatTooltipModule, NgTemplateOutlet, MatIconModule], template: "<!-- Button -->\r\n<button type=\"button\" mat-icon-button [matTooltip]=\"tooltip || '\u5207\u6362\u5168\u5C4F'\" (click)=\"toggleFullscreen()\">\r\n <ng-container [ngTemplateOutlet]=\"iconTpl || defaultIconTpl\"></ng-container>\r\n</button>\r\n\r\n<!-- Default icon -->\r\n<ng-template #defaultIconTpl>\r\n <mat-icon [svgIcon]=\"'heroicons_outline:arrows-pointing-out'\"></mat-icon>\r\n</ng-template>" }]
36
- }], ctorParameters: () => [{ type: Document, decorators: [{
37
- type: Inject,
38
- args: [DOCUMENT]
39
- }] }], propDecorators: { iconTpl: [{
40
- type: Input
41
- }], tooltip: [{
42
- type: Input
43
- }] } });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVsbHNjcmVlbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvZnVsbHNjcmVlbi9mdWxsc2NyZWVuLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9mdWxsc2NyZWVuL2Z1bGxzY3JlZW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzdELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBZSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsSCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOzs7OztBQVc3RCxNQUFNLE9BQU8sdUJBQXVCO0lBSWhDLFlBQXNDLFNBQW1CO1FBQW5CLGNBQVMsR0FBVCxTQUFTLENBQVU7SUFBSSxDQUFDO0lBRTlELGdCQUFnQjtRQUVaLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGlCQUFpQixFQUNyQyxDQUFDO1lBQ0csT0FBTyxDQUFDLEdBQUcsQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO1lBQzVELE9BQU87UUFDWCxDQUFDO1FBRUQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQztRQUVwRCxJQUFJLFVBQVUsRUFDZCxDQUFDO1lBQ0csS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3pDLENBQUM7YUFFRCxDQUFDO1lBQ0csSUFBSSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsaUJBQWlCLEVBQUU7aUJBQzdDLEtBQUssQ0FBQyxHQUFHLEVBQUU7Z0JBRVIsT0FBTyxDQUFDLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1lBQ3RELENBQUMsQ0FBQyxDQUFDO1FBQ1gsQ0FBQztJQUNMLENBQUM7K0dBNUJRLHVCQUF1QixrQkFJWixRQUFRO21HQUpuQix1QkFBdUIsNkpDZnBDLHlaQVFjLDJDREtBLGVBQWUsMklBQUUsZ0JBQWdCLDZUQUFFLGdCQUFnQixtSkFBRSxhQUFhOzs0RkFFbkUsdUJBQXVCO2tCQVRuQyxTQUFTOytCQUNJLGlCQUFpQixpQkFFWixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDLGdCQUFnQixjQUNkLElBQUksV0FDUCxDQUFDLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLENBQUM7OzBCQU1oRSxNQUFNOzJCQUFDLFFBQVE7eUNBSG5CLE9BQU87c0JBQWYsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEluamVjdCwgSW5wdXQsIFRlbXBsYXRlUmVmLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjbWF0LWZ1bGxzY3JlZW4nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Z1bGxzY3JlZW4uY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgZXhwb3J0QXM6ICdjbWF0RnVsbHNjcmVlbicsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW01hdEJ1dHRvbk1vZHVsZSwgTWF0VG9vbHRpcE1vZHVsZSwgTmdUZW1wbGF0ZU91dGxldCwgTWF0SWNvbk1vZHVsZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIENtYXRGdWxsc2NyZWVuQ29tcG9uZW50IHtcclxuICAgIEBJbnB1dCgpIGljb25UcGw6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgICBASW5wdXQoKSB0b29sdGlwOiBzdHJpbmc7XHJcblxyXG4gICAgY29uc3RydWN0b3IoQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBfZG9jdW1lbnQ6IERvY3VtZW50KSB7IH1cclxuXHJcbiAgICB0b2dnbGVGdWxsc2NyZWVuKCk6IHZvaWRcclxuICAgIHtcclxuICAgICAgICBpZiAoIXRoaXMuX2RvY3VtZW50LmZ1bGxzY3JlZW5FbmFibGVkKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coJ0Z1bGxzY3JlZW4gaXMgbm90IGF2YWlsYWJsZSBpbiB0aGlzIGJyb3dzZXIuJyk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGZ1bGxTY3JlZW4gPSB0aGlzLl9kb2N1bWVudC5mdWxsc2NyZWVuRWxlbWVudDtcclxuXHJcbiAgICAgICAgaWYgKGZ1bGxTY3JlZW4pXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB2b2lkIHRoaXMuX2RvY3VtZW50LmV4aXRGdWxsc2NyZWVuKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2VcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHRoaXMuX2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5yZXF1ZXN0RnVsbHNjcmVlbigpXHJcbiAgICAgICAgICAgICAgICAuY2F0Y2goKCkgPT5cclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdFbnRlcmluZyBmdWxsc2NyZWVuIG1vZGUgZmFpbGVkLicpO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIjwhLS0gQnV0dG9uIC0tPlxyXG48YnV0dG9uIHR5cGU9XCJidXR0b25cIiBtYXQtaWNvbi1idXR0b24gW21hdFRvb2x0aXBdPVwidG9vbHRpcCB8fCAn5YiH5o2i5YWo5bGPJ1wiIChjbGljayk9XCJ0b2dnbGVGdWxsc2NyZWVuKClcIj5cclxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaWNvblRwbCB8fCBkZWZhdWx0SWNvblRwbFwiPjwvbmctY29udGFpbmVyPlxyXG48L2J1dHRvbj5cclxuXHJcbjwhLS0gRGVmYXVsdCBpY29uIC0tPlxyXG48bmctdGVtcGxhdGUgI2RlZmF1bHRJY29uVHBsPlxyXG4gICAgPG1hdC1pY29uIFtzdmdJY29uXT1cIidoZXJvaWNvbnNfb3V0bGluZTphcnJvd3MtcG9pbnRpbmctb3V0J1wiPjwvbWF0LWljb24+XHJcbjwvbmctdGVtcGxhdGU+Il19
@@ -1,2 +0,0 @@
1
- export * from './fullscreen.component';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9mdWxsc2NyZWVuL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZnVsbHNjcmVlbi5jb21wb25lbnQnO1xyXG4iXX0=
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY21hdC1jb21wb25lbnRzLWhpZ2hsaWdodC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9oaWdobGlnaHQvY21hdC1jb21wb25lbnRzLWhpZ2hsaWdodC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
@@ -1,80 +0,0 @@
1
- import { NgClass } from '@angular/common';
2
- import { ChangeDetectionStrategy, Component, Input, SecurityContext, TemplateRef, ViewChild, ViewEncapsulation } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/platform-browser";
5
- import * as i2 from "./highlight.service";
6
- export class CmatHighlightComponent {
7
- constructor(_domSanitizer, _elementRef, _cmatHighlightService, _viewContainerRef) {
8
- this._domSanitizer = _domSanitizer;
9
- this._elementRef = _elementRef;
10
- this._cmatHighlightService = _cmatHighlightService;
11
- this._viewContainerRef = _viewContainerRef;
12
- }
13
- ngOnChanges(changes) {
14
- // Code & Lang
15
- if ('code' in changes || 'lang' in changes) {
16
- // Return if the viewContainerRef is not available
17
- if (!this._viewContainerRef.length) {
18
- return;
19
- }
20
- // Highlight and insert the code
21
- this._highlightAndInsert();
22
- }
23
- }
24
- ngAfterViewInit() {
25
- // Return if there is no language set
26
- if (!this.lang) {
27
- return;
28
- }
29
- // If there is no code input, get the code from
30
- // the textarea
31
- if (!this.code) {
32
- // Get the code
33
- this.code = this._elementRef.nativeElement.value;
34
- }
35
- // Highlight and insert
36
- this._highlightAndInsert();
37
- }
38
- _highlightAndInsert() {
39
- // Return if the template reference is not available
40
- if (!this.templateRef) {
41
- return;
42
- }
43
- // Return if the code or language is not defined
44
- if (!this.code || !this.lang) {
45
- return;
46
- }
47
- // Destroy the component if there is already one
48
- if (this._viewRef) {
49
- this._viewRef.destroy();
50
- this._viewRef = null;
51
- }
52
- // Highlight and sanitize the code just in case
53
- this.highlightedCode = this._domSanitizer.sanitize(SecurityContext.HTML, this._cmatHighlightService.highlight(this.code, this.lang));
54
- // Return if the highlighted code is null
55
- if (this.highlightedCode === null) {
56
- return;
57
- }
58
- // Render and insert the template
59
- this._viewRef = this._viewContainerRef.createEmbeddedView(this.templateRef, {
60
- highlightedCode: this.highlightedCode,
61
- lang: this.lang
62
- });
63
- // Detect the changes
64
- this._viewRef.detectChanges();
65
- }
66
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatHighlightComponent, deps: [{ token: i1.DomSanitizer }, { token: i0.ElementRef }, { token: i2.CmatHighlightService }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component }); }
67
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.10", type: CmatHighlightComponent, isStandalone: true, selector: "textarea[cmat-highlight]", inputs: { code: "code", lang: "lang" }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: TemplateRef, descendants: true }], exportAs: ["cmatHighlight"], usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\r\n\r\n<ng-template let-highlightedCode=\"highlightedCode\" let-lang=\"lang\">\r\n <div class=\"cmat-highlight cmat-highlight-code-container\">\r\n <pre [ngClass]=\"'language-' + lang\"><code [ngClass]=\"'language-' + lang\" [innerHTML]=\"highlightedCode\"></code>\r\n </pre>\r\n </div>\r\n</ng-template>", styles: ["textarea[cmat-highlight]{display:none}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
68
- }
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.10", ngImport: i0, type: CmatHighlightComponent, decorators: [{
70
- type: Component,
71
- args: [{ selector: 'textarea[cmat-highlight]', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'cmatHighlight', standalone: true, imports: [NgClass], template: "<ng-content></ng-content>\r\n\r\n<ng-template let-highlightedCode=\"highlightedCode\" let-lang=\"lang\">\r\n <div class=\"cmat-highlight cmat-highlight-code-container\">\r\n <pre [ngClass]=\"'language-' + lang\"><code [ngClass]=\"'language-' + lang\" [innerHTML]=\"highlightedCode\"></code>\r\n </pre>\r\n </div>\r\n</ng-template>", styles: ["textarea[cmat-highlight]{display:none}\n"] }]
72
- }], ctorParameters: () => [{ type: i1.DomSanitizer }, { type: i0.ElementRef }, { type: i2.CmatHighlightService }, { type: i0.ViewContainerRef }], propDecorators: { code: [{
73
- type: Input
74
- }], lang: [{
75
- type: Input
76
- }], templateRef: [{
77
- type: ViewChild,
78
- args: [TemplateRef]
79
- }] } });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9oaWdobGlnaHQvaGlnaGxpZ2h0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9oaWdobGlnaHQvaGlnaGxpZ2h0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFHVCxLQUFLLEVBRUwsZUFBZSxFQUVmLFdBQVcsRUFDWCxTQUFTLEVBRVQsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDOzs7O0FBY3ZCLE1BQU0sT0FBTyxzQkFBc0I7SUFRL0IsWUFDWSxhQUEyQixFQUMzQixXQUF1QixFQUN2QixxQkFBMkMsRUFDM0MsaUJBQW1DO1FBSG5DLGtCQUFhLEdBQWIsYUFBYSxDQUFjO1FBQzNCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBc0I7UUFDM0Msc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtJQUUvQyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLGNBQWM7UUFDZCxJQUFJLE1BQU0sSUFBSSxPQUFPLElBQUksTUFBTSxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ3pDLGtEQUFrRDtZQUNsRCxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUNqQyxPQUFPO1lBQ1gsQ0FBQztZQUVELGdDQUFnQztZQUNoQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUMvQixDQUFDO0lBQ0wsQ0FBQztJQUVELGVBQWU7UUFDWCxxQ0FBcUM7UUFDckMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNiLE9BQU87UUFDWCxDQUFDO1FBRUQsK0NBQStDO1FBQy9DLGVBQWU7UUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2IsZUFBZTtZQUNmLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDO1FBQ3JELENBQUM7UUFFRCx1QkFBdUI7UUFDdkIsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVPLG1CQUFtQjtRQUN2QixvREFBb0Q7UUFDcEQsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNwQixPQUFPO1FBQ1gsQ0FBQztRQUVELGdEQUFnRDtRQUNoRCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMzQixPQUFPO1FBQ1gsQ0FBQztRQUVELGdEQUFnRDtRQUNoRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLENBQUM7UUFFRCwrQ0FBK0M7UUFDL0MsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUVySSx5Q0FBeUM7UUFDekMsSUFBSSxJQUFJLENBQUMsZUFBZSxLQUFLLElBQUksRUFBRSxDQUFDO1lBQ2hDLE9BQU87UUFDWCxDQUFDO1FBRUQsaUNBQWlDO1FBQ2pDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDeEUsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQ3JDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtTQUNsQixDQUFDLENBQUM7UUFFSCxxQkFBcUI7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNsQyxDQUFDOytHQS9FUSxzQkFBc0I7bUdBQXRCLHNCQUFzQix5S0FHcEIsV0FBVyxrR0NoQzFCLGdXQU9jLGtHRG9CQSxPQUFPOzs0RkFFUixzQkFBc0I7a0JBVmxDLFNBQVM7K0JBQ0ksMEJBQTBCLGlCQUdyQixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDLGVBQWUsY0FDYixJQUFJLFdBQ1AsQ0FBQyxPQUFPLENBQUM7NEtBR1QsSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDa0IsV0FBVztzQkFBbEMsU0FBUzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7XHJcbiAgICBBZnRlclZpZXdJbml0LFxyXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgICBDb21wb25lbnQsXHJcbiAgICBFbGVtZW50UmVmLFxyXG4gICAgRW1iZWRkZWRWaWV3UmVmLFxyXG4gICAgSW5wdXQsXHJcbiAgICBPbkNoYW5nZXMsXHJcbiAgICBTZWN1cml0eUNvbnRleHQsXHJcbiAgICBTaW1wbGVDaGFuZ2VzLFxyXG4gICAgVGVtcGxhdGVSZWYsXHJcbiAgICBWaWV3Q2hpbGQsXHJcbiAgICBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCB7IENtYXRIaWdobGlnaHRTZXJ2aWNlIH0gZnJvbSAnLi9oaWdobGlnaHQuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAndGV4dGFyZWFbY21hdC1oaWdobGlnaHRdJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9oaWdobGlnaHQuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vaGlnaGxpZ2h0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBleHBvcnRBczogJ2NtYXRIaWdobGlnaHQnLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtOZ0NsYXNzXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ21hdEhpZ2hsaWdodENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgICBASW5wdXQoKSBjb2RlOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBsYW5nOiBzdHJpbmc7XHJcbiAgICBAVmlld0NoaWxkKFRlbXBsYXRlUmVmKSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgICBoaWdobGlnaHRlZENvZGU6IHN0cmluZyB8IG51bGw7XHJcbiAgICBwcml2YXRlIF92aWV3UmVmOiBFbWJlZGRlZFZpZXdSZWY8YW55PiB8IG51bGw7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBfZG9tU2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgICAgICBwcml2YXRlIF9jbWF0SGlnaGxpZ2h0U2VydmljZTogQ21hdEhpZ2hsaWdodFNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBfdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZlxyXG4gICAgKSB7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgICAgIC8vIENvZGUgJiBMYW5nXHJcbiAgICAgICAgaWYgKCdjb2RlJyBpbiBjaGFuZ2VzIHx8ICdsYW5nJyBpbiBjaGFuZ2VzKSB7XHJcbiAgICAgICAgICAgIC8vIFJldHVybiBpZiB0aGUgdmlld0NvbnRhaW5lclJlZiBpcyBub3QgYXZhaWxhYmxlXHJcbiAgICAgICAgICAgIGlmICghdGhpcy5fdmlld0NvbnRhaW5lclJlZi5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gSGlnaGxpZ2h0IGFuZCBpbnNlcnQgdGhlIGNvZGVcclxuICAgICAgICAgICAgdGhpcy5faGlnaGxpZ2h0QW5kSW5zZXJ0KCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICAvLyBSZXR1cm4gaWYgdGhlcmUgaXMgbm8gbGFuZ3VhZ2Ugc2V0XHJcbiAgICAgICAgaWYgKCF0aGlzLmxhbmcpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gSWYgdGhlcmUgaXMgbm8gY29kZSBpbnB1dCwgZ2V0IHRoZSBjb2RlIGZyb21cclxuICAgICAgICAvLyB0aGUgdGV4dGFyZWFcclxuICAgICAgICBpZiAoIXRoaXMuY29kZSkge1xyXG4gICAgICAgICAgICAvLyBHZXQgdGhlIGNvZGVcclxuICAgICAgICAgICAgdGhpcy5jb2RlID0gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gSGlnaGxpZ2h0IGFuZCBpbnNlcnRcclxuICAgICAgICB0aGlzLl9oaWdobGlnaHRBbmRJbnNlcnQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9oaWdobGlnaHRBbmRJbnNlcnQoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gUmV0dXJuIGlmIHRoZSB0ZW1wbGF0ZSByZWZlcmVuY2UgaXMgbm90IGF2YWlsYWJsZVxyXG4gICAgICAgIGlmICghdGhpcy50ZW1wbGF0ZVJlZikge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBSZXR1cm4gaWYgdGhlIGNvZGUgb3IgbGFuZ3VhZ2UgaXMgbm90IGRlZmluZWRcclxuICAgICAgICBpZiAoIXRoaXMuY29kZSB8fCAhdGhpcy5sYW5nKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIERlc3Ryb3kgdGhlIGNvbXBvbmVudCBpZiB0aGVyZSBpcyBhbHJlYWR5IG9uZVxyXG4gICAgICAgIGlmICh0aGlzLl92aWV3UmVmKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3ZpZXdSZWYuZGVzdHJveSgpO1xyXG4gICAgICAgICAgICB0aGlzLl92aWV3UmVmID0gbnVsbDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIEhpZ2hsaWdodCBhbmQgc2FuaXRpemUgdGhlIGNvZGUganVzdCBpbiBjYXNlXHJcbiAgICAgICAgdGhpcy5oaWdobGlnaHRlZENvZGUgPSB0aGlzLl9kb21TYW5pdGl6ZXIuc2FuaXRpemUoU2VjdXJpdHlDb250ZXh0LkhUTUwsIHRoaXMuX2NtYXRIaWdobGlnaHRTZXJ2aWNlLmhpZ2hsaWdodCh0aGlzLmNvZGUsIHRoaXMubGFuZykpO1xyXG5cclxuICAgICAgICAvLyBSZXR1cm4gaWYgdGhlIGhpZ2hsaWdodGVkIGNvZGUgaXMgbnVsbFxyXG4gICAgICAgIGlmICh0aGlzLmhpZ2hsaWdodGVkQ29kZSA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBSZW5kZXIgYW5kIGluc2VydCB0aGUgdGVtcGxhdGVcclxuICAgICAgICB0aGlzLl92aWV3UmVmID0gdGhpcy5fdmlld0NvbnRhaW5lclJlZi5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZVJlZiwge1xyXG4gICAgICAgICAgICBoaWdobGlnaHRlZENvZGU6IHRoaXMuaGlnaGxpZ2h0ZWRDb2RlLFxyXG4gICAgICAgICAgICBsYW5nOiB0aGlzLmxhbmdcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgLy8gRGV0ZWN0IHRoZSBjaGFuZ2VzXHJcbiAgICAgICAgdGhpcy5fdmlld1JlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG5cclxuPG5nLXRlbXBsYXRlIGxldC1oaWdobGlnaHRlZENvZGU9XCJoaWdobGlnaHRlZENvZGVcIiBsZXQtbGFuZz1cImxhbmdcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjbWF0LWhpZ2hsaWdodCBjbWF0LWhpZ2hsaWdodC1jb2RlLWNvbnRhaW5lclwiPlxyXG4gICAgICAgIDxwcmUgW25nQ2xhc3NdPVwiJ2xhbmd1YWdlLScgKyBsYW5nXCI+PGNvZGUgW25nQ2xhc3NdPVwiJ2xhbmd1YWdlLScgKyBsYW5nXCIgW2lubmVySFRNTF09XCJoaWdobGlnaHRlZENvZGVcIj48L2NvZGU+XHJcbiAgICAgICAgPC9wcmU+XHJcbiAgICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT4iXX0=