cmat 0.0.13 → 0.0.14

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 (265) hide show
  1. package/components/cascade/cascade-bottom-sheet/cascade-bottom-sheet.component.d.ts +0 -1
  2. package/components/cascade/cascade-menu/cascade-menu.component.d.ts +0 -1
  3. package/components/chip-input/chip-input.component.d.ts +0 -1
  4. package/components/custom-formly/public-api.d.ts +1 -0
  5. package/components/custom-formly/types/quill/quill.component.d.ts +42 -0
  6. package/components/custom-formly/types/repeat/repeat.component.d.ts +0 -1
  7. package/components/custom-formly/types/select/select.component.d.ts +0 -1
  8. package/components/custom-formly/types/stepper/horizontal/stepper.component.d.ts +0 -1
  9. package/components/custom-formly/types/stepper/vertical/stepper.component.d.ts +0 -1
  10. package/components/custom-formly/types/table/table.component.d.ts +0 -1
  11. package/components/custom-formly/types/tabs/tab.component.d.ts +0 -1
  12. package/components/custom-formly/types/tags/tags.component.d.ts +0 -1
  13. package/components/material-color-picker/material-color-picker.component.d.ts +0 -1
  14. package/components/material-datetimepicker/calendar-body.d.ts +0 -1
  15. package/components/material-datetimepicker/calendar.d.ts +3 -4
  16. package/components/material-datetimepicker/clock.d.ts +0 -1
  17. package/components/material-datetimepicker/datetimepicker.d.ts +3 -4
  18. package/components/material-datetimepicker/month-view.d.ts +0 -1
  19. package/components/pagination/pagination.component.d.ts +0 -1
  20. package/components/popover/popover.component.d.ts +3 -4
  21. package/components/popover/popover.interfaces.d.ts +1 -2
  22. package/components/select-tree/select-tree.component.d.ts +0 -1
  23. package/components/timeline/timeline.component.d.ts +3 -5
  24. package/components/transfer-picker/filter/filter.component.d.ts +0 -1
  25. package/components/transfer-picker/transfer-picker-target/transfer-picker-target.component.d.ts +0 -1
  26. package/esm2022/components/adapter/datetime-adapter.mjs +1 -1
  27. package/esm2022/components/adapter/dayjs-date-adapter.mjs +4 -4
  28. package/esm2022/components/adapter/dayjs-datetime-adapter.mjs +4 -4
  29. package/esm2022/components/adapter/native-datetime-adapter.mjs +4 -4
  30. package/esm2022/components/breadcrumb/breadcrumb-item.directive.mjs +3 -3
  31. package/esm2022/components/breadcrumb/breadcrumb.component.mjs +5 -5
  32. package/esm2022/components/breadcrumb/breadcrumb.service.mjs +4 -4
  33. package/esm2022/components/card/card.component.mjs +4 -4
  34. package/esm2022/components/cascade/cascade-bottom-sheet/cascade-bottom-sheet.component.mjs +5 -8
  35. package/esm2022/components/cascade/cascade-list/cascade-list.component.mjs +4 -4
  36. package/esm2022/components/cascade/cascade-menu/cascade-menu.component.mjs +5 -8
  37. package/esm2022/components/chip-input/chip-input.component.mjs +6 -9
  38. package/esm2022/components/custom-formly/extension/addons.extension.mjs +1 -1
  39. package/esm2022/components/custom-formly/public-api.mjs +2 -1
  40. package/esm2022/components/custom-formly/types/button/button.component.mjs +4 -4
  41. package/esm2022/components/custom-formly/types/cascade/cascade.component.mjs +4 -4
  42. package/esm2022/components/custom-formly/types/checklist/checklist.component.mjs +4 -4
  43. package/esm2022/components/custom-formly/types/chips/chips.component.mjs +4 -4
  44. package/esm2022/components/custom-formly/types/color-picker/color-picker.component.mjs +3 -3
  45. package/esm2022/components/custom-formly/types/date-range/date-range.component.mjs +3 -3
  46. package/esm2022/components/custom-formly/types/datepicker/datepicker.component.mjs +3 -3
  47. package/esm2022/components/custom-formly/types/multicheckbox/multicheckbox.component.mjs +4 -4
  48. package/esm2022/components/custom-formly/types/number/number.component.mjs +3 -3
  49. package/esm2022/components/custom-formly/types/quill/quill.component.mjs +171 -0
  50. package/esm2022/components/custom-formly/types/radio/radio.component.mjs +4 -4
  51. package/esm2022/components/custom-formly/types/rating/rating.component.mjs +3 -3
  52. package/esm2022/components/custom-formly/types/repeat/repeat.component.mjs +5 -8
  53. package/esm2022/components/custom-formly/types/select/select.component.mjs +5 -8
  54. package/esm2022/components/custom-formly/types/select-tree/select-tree.component.mjs +4 -4
  55. package/esm2022/components/custom-formly/types/stepper/horizontal/stepper.component.mjs +5 -8
  56. package/esm2022/components/custom-formly/types/stepper/vertical/stepper.component.mjs +5 -8
  57. package/esm2022/components/custom-formly/types/table/table.component.mjs +5 -8
  58. package/esm2022/components/custom-formly/types/tabs/tab.component.mjs +5 -8
  59. package/esm2022/components/custom-formly/types/tags/tags.component.mjs +5 -8
  60. package/esm2022/components/custom-formly/types/textarea/textarea.component.mjs +3 -3
  61. package/esm2022/components/custom-formly/types/upload/upload.component.mjs +4 -4
  62. package/esm2022/components/custom-formly/wrappers/addons/addons.component.mjs +4 -4
  63. package/esm2022/components/custom-formly/wrappers/card/card.component.mjs +3 -3
  64. package/esm2022/components/custom-formly/wrappers/expansion/expansion.component.mjs +3 -3
  65. package/esm2022/components/custom-formly/wrappers/panel/panel.component.mjs +3 -3
  66. package/esm2022/components/date-range/date-range.component.mjs +4 -4
  67. package/esm2022/components/drawer/drawer.component.mjs +4 -4
  68. package/esm2022/components/drawer/drawer.service.mjs +3 -3
  69. package/esm2022/components/fullscreen/fullscreen.component.mjs +4 -4
  70. package/esm2022/components/highlight/highlight.component.mjs +4 -4
  71. package/esm2022/components/highlight/highlight.service.mjs +4 -4
  72. package/esm2022/components/json-editor/json-editor.component.mjs +4 -4
  73. package/esm2022/components/masonry/masonry.component.mjs +4 -4
  74. package/esm2022/components/material-color-picker/material-color-picker.component.mjs +5 -8
  75. package/esm2022/components/material-datetimepicker/calendar-body.mjs +5 -8
  76. package/esm2022/components/material-datetimepicker/calendar.mjs +7 -13
  77. package/esm2022/components/material-datetimepicker/clock.mjs +5 -8
  78. package/esm2022/components/material-datetimepicker/datetimepicker-input.mjs +4 -4
  79. package/esm2022/components/material-datetimepicker/datetimepicker-intl.mjs +3 -3
  80. package/esm2022/components/material-datetimepicker/datetimepicker-toggle.mjs +7 -7
  81. package/esm2022/components/material-datetimepicker/datetimepicker.mjs +10 -11
  82. package/esm2022/components/material-datetimepicker/month-view.mjs +5 -8
  83. package/esm2022/components/material-datetimepicker/multi-year-view.mjs +4 -4
  84. package/esm2022/components/material-datetimepicker/time.mjs +7 -7
  85. package/esm2022/components/material-datetimepicker/year-view.mjs +4 -4
  86. package/esm2022/components/navigation/horizontal/components/basic/basic.component.mjs +3 -3
  87. package/esm2022/components/navigation/horizontal/components/branch/branch.component.mjs +5 -5
  88. package/esm2022/components/navigation/horizontal/components/divider/divider.component.mjs +3 -3
  89. package/esm2022/components/navigation/horizontal/components/spacer/spacer.component.mjs +3 -3
  90. package/esm2022/components/navigation/horizontal/horizontal.component.mjs +5 -5
  91. package/esm2022/components/navigation/navigation.service.mjs +4 -4
  92. package/esm2022/components/navigation/vertical/components/aside/aside.component.mjs +5 -5
  93. package/esm2022/components/navigation/vertical/components/basic/basic.component.mjs +3 -3
  94. package/esm2022/components/navigation/vertical/components/collapsable/collapsable.component.mjs +5 -5
  95. package/esm2022/components/navigation/vertical/components/divider/divider.component.mjs +3 -3
  96. package/esm2022/components/navigation/vertical/components/group/group.component.mjs +5 -5
  97. package/esm2022/components/navigation/vertical/components/spacer/spacer.component.mjs +3 -3
  98. package/esm2022/components/navigation/vertical/vertical.component.mjs +5 -5
  99. package/esm2022/components/pagination/pagination.component.mjs +5 -8
  100. package/esm2022/components/pagination/pagination.directive.mjs +4 -4
  101. package/esm2022/components/pagination/pagination.pipe.mjs +4 -4
  102. package/esm2022/components/pagination/pagination.service.mjs +4 -4
  103. package/esm2022/components/password-strength/mat-pass-toggle-visibility/mat-pass-toggle-visibility.component.mjs +3 -3
  104. package/esm2022/components/password-strength/mat-password-strength/mat-password-strength.component.mjs +4 -4
  105. package/esm2022/components/password-strength/mat-password-strength-info/mat-password-strength-info.component.mjs +4 -4
  106. package/esm2022/components/password-strength/mat-password-strength-validator.mjs +1 -1
  107. package/esm2022/components/popover/popover-trigger.mjs +6 -8
  108. package/esm2022/components/popover/popover.component.mjs +6 -7
  109. package/esm2022/components/popover/popover.interfaces.mjs +1 -1
  110. package/esm2022/components/popover/popover.target.mjs +3 -3
  111. package/esm2022/components/progress-bar/progress-bar.component.mjs +4 -4
  112. package/esm2022/components/rating/rating.component.mjs +5 -5
  113. package/esm2022/components/select-search/select-no-entries-found.directive.mjs +3 -3
  114. package/esm2022/components/select-search/select-search-clear.directive.mjs +3 -3
  115. package/esm2022/components/select-search/select-search.component.mjs +4 -4
  116. package/esm2022/components/select-tree/select-tree.component.mjs +5 -8
  117. package/esm2022/components/timeline/timeline-item/timeline-item.component.mjs +9 -9
  118. package/esm2022/components/timeline/timeline.component.mjs +7 -11
  119. package/esm2022/components/toast/toast-modal.component.mjs +4 -4
  120. package/esm2022/components/toast/toast.component.mjs +5 -5
  121. package/esm2022/components/toast/toast.service.mjs +4 -4
  122. package/esm2022/components/transfer-picker/filter/filter.component.mjs +5 -8
  123. package/esm2022/components/transfer-picker/search/search.component.mjs +3 -3
  124. package/esm2022/components/transfer-picker/transfer-picker-source/transfer-picker-source.component.mjs +4 -4
  125. package/esm2022/components/transfer-picker/transfer-picker-target/transfer-picker-target.component.mjs +5 -8
  126. package/esm2022/components/transfer-picker/transfer-picker.component.mjs +4 -4
  127. package/esm2022/components/transfer-picker/transfer-picker.service.mjs +4 -4
  128. package/esm2022/components/upload/files.util.service.mjs +4 -4
  129. package/esm2022/components/upload/upload-queue/upload-queue.component.mjs +4 -4
  130. package/esm2022/components/upload/upload.component.mjs +4 -4
  131. package/esm2022/directives/animate-on-scroll/animate-on-scroll.directive.mjs +4 -4
  132. package/esm2022/directives/animate-on-scroll/scroll.service.mjs +3 -3
  133. package/esm2022/directives/autofocus/autofocus.directive.mjs +3 -3
  134. package/esm2022/directives/debounce/abstract-debounce.directive.mjs +3 -3
  135. package/esm2022/directives/debounce/debounce-click.directive.mjs +3 -3
  136. package/esm2022/directives/debounce/debounce-keyup.directive.mjs +3 -3
  137. package/esm2022/directives/digit-only/digit-only.directive.mjs +4 -4
  138. package/esm2022/directives/digit-only/mask.directive.mjs +4 -4
  139. package/esm2022/directives/equal-validator/equal-validator.directive.mjs +4 -4
  140. package/esm2022/lib/mock-api/mock-api.interceptor.mjs +4 -4
  141. package/esm2022/lib/mock-api/mock-api.request-handler.mjs +1 -1
  142. package/esm2022/lib/mock-api/mock-api.service.mjs +4 -4
  143. package/esm2022/lib/mock-api/mock-api.utils.mjs +1 -1
  144. package/esm2022/pipes/bytes/bytes.pipe.mjs +4 -4
  145. package/esm2022/pipes/date-format/date-format.pipe.mjs +3 -3
  146. package/esm2022/pipes/find-by-key/find-by-key.pipe.mjs +4 -4
  147. package/esm2022/pipes/group-by/group-by.pipe.mjs +4 -4
  148. package/esm2022/pipes/keys/keys.pipe.mjs +4 -4
  149. package/esm2022/pipes/secure/secure-pipe.mjs +3 -3
  150. package/esm2022/pipes/uppercase/uppercase.pipe.mjs +3 -3
  151. package/esm2022/services/alert/alert.service.mjs +4 -4
  152. package/esm2022/services/config/config.service.mjs +3 -3
  153. package/esm2022/services/config/urlStateConfig.service.mjs +3 -3
  154. package/esm2022/services/confirmation/confirmation.service.mjs +3 -3
  155. package/esm2022/services/confirmation/dialog/dialog.component.mjs +3 -3
  156. package/esm2022/services/data/data.service.mjs +4 -4
  157. package/esm2022/services/loading/loading.interceptor.mjs +4 -4
  158. package/esm2022/services/loading/loading.service.mjs +4 -4
  159. package/esm2022/services/local-storage/local-storage.service.mjs +3 -3
  160. package/esm2022/services/media-watcher/media-watcher.service.mjs +4 -4
  161. package/esm2022/services/platform/platform.service.mjs +4 -4
  162. package/esm2022/services/splash-screen/splash-screen.service.mjs +3 -3
  163. package/esm2022/services/title/title.service.mjs +4 -4
  164. package/esm2022/services/translation/translation.service.mjs +4 -4
  165. package/esm2022/services/utils/utils.service.mjs +4 -4
  166. package/esm2022/validators/validators.mjs +1 -1
  167. package/fesm2022/cmat-animations.mjs +1 -1
  168. package/fesm2022/cmat-components-adapter.mjs +9 -9
  169. package/fesm2022/cmat-components-adapter.mjs.map +1 -1
  170. package/fesm2022/cmat-components-breadcrumb.mjs +10 -10
  171. package/fesm2022/cmat-components-breadcrumb.mjs.map +1 -1
  172. package/fesm2022/cmat-components-card.mjs +3 -3
  173. package/fesm2022/cmat-components-card.mjs.map +1 -1
  174. package/fesm2022/cmat-components-cascade.mjs +11 -17
  175. package/fesm2022/cmat-components-cascade.mjs.map +1 -1
  176. package/fesm2022/cmat-components-chip-input.mjs +5 -8
  177. package/fesm2022/cmat-components-chip-input.mjs.map +1 -1
  178. package/fesm2022/cmat-components-custom-formly.mjs +248 -104
  179. package/fesm2022/cmat-components-custom-formly.mjs.map +1 -1
  180. package/fesm2022/cmat-components-date-range.mjs +4 -4
  181. package/fesm2022/cmat-components-date-range.mjs.map +1 -1
  182. package/fesm2022/cmat-components-drawer.mjs +7 -7
  183. package/fesm2022/cmat-components-drawer.mjs.map +1 -1
  184. package/fesm2022/cmat-components-fullscreen.mjs +3 -3
  185. package/fesm2022/cmat-components-fullscreen.mjs.map +1 -1
  186. package/fesm2022/cmat-components-highlight.mjs +6 -6
  187. package/fesm2022/cmat-components-highlight.mjs.map +1 -1
  188. package/fesm2022/cmat-components-json-editor.mjs +3 -3
  189. package/fesm2022/cmat-components-json-editor.mjs.map +1 -1
  190. package/fesm2022/cmat-components-masonry.mjs +3 -3
  191. package/fesm2022/cmat-components-masonry.mjs.map +1 -1
  192. package/fesm2022/cmat-components-material-color-picker.mjs +4 -7
  193. package/fesm2022/cmat-components-material-color-picker.mjs.map +1 -1
  194. package/fesm2022/cmat-components-material-datetimepicker.mjs +53 -68
  195. package/fesm2022/cmat-components-material-datetimepicker.mjs.map +1 -1
  196. package/fesm2022/cmat-components-navigation.mjs +46 -46
  197. package/fesm2022/cmat-components-navigation.mjs.map +1 -1
  198. package/fesm2022/cmat-components-pagination.mjs +13 -16
  199. package/fesm2022/cmat-components-pagination.mjs.map +1 -1
  200. package/fesm2022/cmat-components-password-strength.mjs +10 -10
  201. package/fesm2022/cmat-components-password-strength.mjs.map +1 -1
  202. package/fesm2022/cmat-components-popover.mjs +13 -16
  203. package/fesm2022/cmat-components-popover.mjs.map +1 -1
  204. package/fesm2022/cmat-components-progress-bar.mjs +3 -3
  205. package/fesm2022/cmat-components-progress-bar.mjs.map +1 -1
  206. package/fesm2022/cmat-components-rating.mjs +4 -4
  207. package/fesm2022/cmat-components-rating.mjs.map +1 -1
  208. package/fesm2022/cmat-components-select-search.mjs +10 -10
  209. package/fesm2022/cmat-components-select-search.mjs.map +1 -1
  210. package/fesm2022/cmat-components-select-tree.mjs +4 -7
  211. package/fesm2022/cmat-components-select-tree.mjs.map +1 -1
  212. package/fesm2022/cmat-components-timeline.mjs +15 -19
  213. package/fesm2022/cmat-components-timeline.mjs.map +1 -1
  214. package/fesm2022/cmat-components-toast.mjs +10 -10
  215. package/fesm2022/cmat-components-toast.mjs.map +1 -1
  216. package/fesm2022/cmat-components-transfer-picker.mjs +20 -26
  217. package/fesm2022/cmat-components-transfer-picker.mjs.map +1 -1
  218. package/fesm2022/cmat-components-upload.mjs +9 -9
  219. package/fesm2022/cmat-components-upload.mjs.map +1 -1
  220. package/fesm2022/cmat-directives-animate-on-scroll.mjs +6 -6
  221. package/fesm2022/cmat-directives-animate-on-scroll.mjs.map +1 -1
  222. package/fesm2022/cmat-directives-autofocus.mjs +3 -3
  223. package/fesm2022/cmat-directives-debounce.mjs +9 -9
  224. package/fesm2022/cmat-directives-digit-only.mjs +6 -6
  225. package/fesm2022/cmat-directives-digit-only.mjs.map +1 -1
  226. package/fesm2022/cmat-directives-equal-validator.mjs +3 -3
  227. package/fesm2022/cmat-directives-equal-validator.mjs.map +1 -1
  228. package/fesm2022/cmat-lib-mock-api.mjs +7 -7
  229. package/fesm2022/cmat-lib-mock-api.mjs.map +1 -1
  230. package/fesm2022/cmat-pipes-bytes.mjs +3 -3
  231. package/fesm2022/cmat-pipes-bytes.mjs.map +1 -1
  232. package/fesm2022/cmat-pipes-date-format.mjs +3 -3
  233. package/fesm2022/cmat-pipes-find-by-key.mjs +3 -3
  234. package/fesm2022/cmat-pipes-find-by-key.mjs.map +1 -1
  235. package/fesm2022/cmat-pipes-group-by.mjs +3 -3
  236. package/fesm2022/cmat-pipes-group-by.mjs.map +1 -1
  237. package/fesm2022/cmat-pipes-keys.mjs +3 -3
  238. package/fesm2022/cmat-pipes-keys.mjs.map +1 -1
  239. package/fesm2022/cmat-pipes-secure.mjs +3 -3
  240. package/fesm2022/cmat-pipes-uppercase.mjs +3 -3
  241. package/fesm2022/cmat-services-alert.mjs +3 -3
  242. package/fesm2022/cmat-services-alert.mjs.map +1 -1
  243. package/fesm2022/cmat-services-config.mjs +6 -6
  244. package/fesm2022/cmat-services-confirmation.mjs +6 -6
  245. package/fesm2022/cmat-services-data.mjs +3 -3
  246. package/fesm2022/cmat-services-data.mjs.map +1 -1
  247. package/fesm2022/cmat-services-loading.mjs +6 -6
  248. package/fesm2022/cmat-services-loading.mjs.map +1 -1
  249. package/fesm2022/cmat-services-local-storage.mjs +3 -3
  250. package/fesm2022/cmat-services-media-watcher.mjs +3 -3
  251. package/fesm2022/cmat-services-media-watcher.mjs.map +1 -1
  252. package/fesm2022/cmat-services-platform.mjs +3 -3
  253. package/fesm2022/cmat-services-platform.mjs.map +1 -1
  254. package/fesm2022/cmat-services-splash-screen.mjs +3 -3
  255. package/fesm2022/cmat-services-title.mjs +3 -3
  256. package/fesm2022/cmat-services-title.mjs.map +1 -1
  257. package/fesm2022/cmat-services-translation.mjs +3 -3
  258. package/fesm2022/cmat-services-translation.mjs.map +1 -1
  259. package/fesm2022/cmat-services-utils.mjs +3 -3
  260. package/fesm2022/cmat-services-utils.mjs.map +1 -1
  261. package/fesm2022/cmat-validators.mjs.map +1 -1
  262. package/package.json +111 -102
  263. package/styles/overrides/angular-material.scss +0 -1
  264. package/styles/overrides/quill.scss +102 -0
  265. package/styles/themes.scss +19 -19
@@ -63,10 +63,10 @@ export class CmatHighlightComponent {
63
63
  // Detect the changes
64
64
  this._viewRef.detectChanges();
65
65
  }
66
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", 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: "17.3.9", 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 }); }
66
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", 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.0.0", 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
68
  }
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: CmatHighlightComponent, decorators: [{
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: CmatHighlightComponent, decorators: [{
70
70
  type: Component,
71
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
72
  }], ctorParameters: () => [{ type: i1.DomSanitizer }, { type: i0.ElementRef }, { type: i2.CmatHighlightService }, { type: i0.ViewContainerRef }], propDecorators: { code: [{
@@ -77,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
77
77
  type: ViewChild,
78
78
  args: [TemplateRef]
79
79
  }] } });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9oaWdobGlnaHQvaGlnaGxpZ2h0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9oaWdobGlnaHQvaGlnaGxpZ2h0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFHVCxLQUFLLEVBRUwsZUFBZSxFQUVmLFdBQVcsRUFDWCxTQUFTLEVBRVQsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDOzs7O0FBY3ZCLE1BQU0sT0FBTyxzQkFBc0I7SUFRL0IsWUFDWSxhQUEyQixFQUMzQixXQUF1QixFQUN2QixxQkFBMkMsRUFDM0MsaUJBQW1DO1FBSG5DLGtCQUFhLEdBQWIsYUFBYSxDQUFjO1FBQzNCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBc0I7UUFDM0Msc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtJQUUvQyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLGNBQWM7UUFDZCxJQUFJLE1BQU0sSUFBSSxPQUFPLElBQUksTUFBTSxJQUFJLE9BQU8sRUFBRTtZQUN4QyxrREFBa0Q7WUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUU7Z0JBQ2hDLE9BQU87YUFDVjtZQUVELGdDQUFnQztZQUNoQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztTQUM5QjtJQUNMLENBQUM7SUFFRCxlQUFlO1FBQ1gscUNBQXFDO1FBQ3JDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1osT0FBTztTQUNWO1FBRUQsK0NBQStDO1FBQy9DLGVBQWU7UUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNaLGVBQWU7WUFDZixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQztTQUNwRDtRQUVELHVCQUF1QjtRQUN2QixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRU8sbUJBQW1CO1FBQ3ZCLG9EQUFvRDtRQUNwRCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNuQixPQUFPO1NBQ1Y7UUFFRCxnREFBZ0Q7UUFDaEQsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQzFCLE9BQU87U0FDVjtRQUVELGdEQUFnRDtRQUNoRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDZixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1NBQ3hCO1FBRUQsK0NBQStDO1FBQy9DLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFFckkseUNBQXlDO1FBQ3pDLElBQUksSUFBSSxDQUFDLGVBQWUsS0FBSyxJQUFJLEVBQUU7WUFDL0IsT0FBTztTQUNWO1FBRUQsaUNBQWlDO1FBQ2pDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDeEUsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQ3JDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtTQUNsQixDQUFDLENBQUM7UUFFSCxxQkFBcUI7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNsQyxDQUFDOzhHQS9FUSxzQkFBc0I7a0dBQXRCLHNCQUFzQix5S0FHcEIsV0FBVyxrR0NoQzFCLGdXQU9jLGtHRG9CQSxPQUFPOzsyRkFFUixzQkFBc0I7a0JBVmxDLFNBQVM7K0JBQ0ksMEJBQTBCLGlCQUdyQixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDLGVBQWUsY0FDYixJQUFJLFdBQ1AsQ0FBQyxPQUFPLENBQUM7NEtBR1QsSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDa0IsV0FBVztzQkFBbEMsU0FBUzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7XHJcbiAgICBBZnRlclZpZXdJbml0LFxyXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgICBDb21wb25lbnQsXHJcbiAgICBFbGVtZW50UmVmLFxyXG4gICAgRW1iZWRkZWRWaWV3UmVmLFxyXG4gICAgSW5wdXQsXHJcbiAgICBPbkNoYW5nZXMsXHJcbiAgICBTZWN1cml0eUNvbnRleHQsXHJcbiAgICBTaW1wbGVDaGFuZ2VzLFxyXG4gICAgVGVtcGxhdGVSZWYsXHJcbiAgICBWaWV3Q2hpbGQsXHJcbiAgICBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCB7IENtYXRIaWdobGlnaHRTZXJ2aWNlIH0gZnJvbSAnLi9oaWdobGlnaHQuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAndGV4dGFyZWFbY21hdC1oaWdobGlnaHRdJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9oaWdobGlnaHQuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vaGlnaGxpZ2h0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBleHBvcnRBczogJ2NtYXRIaWdobGlnaHQnLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtOZ0NsYXNzXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ21hdEhpZ2hsaWdodENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgICBASW5wdXQoKSBjb2RlOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBsYW5nOiBzdHJpbmc7XHJcbiAgICBAVmlld0NoaWxkKFRlbXBsYXRlUmVmKSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgICBoaWdobGlnaHRlZENvZGU6IHN0cmluZyB8IG51bGw7XHJcbiAgICBwcml2YXRlIF92aWV3UmVmOiBFbWJlZGRlZFZpZXdSZWY8YW55PiB8IG51bGw7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBfZG9tU2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgICAgICBwcml2YXRlIF9jbWF0SGlnaGxpZ2h0U2VydmljZTogQ21hdEhpZ2hsaWdodFNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBfdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZlxyXG4gICAgKSB7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgICAgIC8vIENvZGUgJiBMYW5nXHJcbiAgICAgICAgaWYgKCdjb2RlJyBpbiBjaGFuZ2VzIHx8ICdsYW5nJyBpbiBjaGFuZ2VzKSB7XHJcbiAgICAgICAgICAgIC8vIFJldHVybiBpZiB0aGUgdmlld0NvbnRhaW5lclJlZiBpcyBub3QgYXZhaWxhYmxlXHJcbiAgICAgICAgICAgIGlmICghdGhpcy5fdmlld0NvbnRhaW5lclJlZi5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gSGlnaGxpZ2h0IGFuZCBpbnNlcnQgdGhlIGNvZGVcclxuICAgICAgICAgICAgdGhpcy5faGlnaGxpZ2h0QW5kSW5zZXJ0KCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICAvLyBSZXR1cm4gaWYgdGhlcmUgaXMgbm8gbGFuZ3VhZ2Ugc2V0XHJcbiAgICAgICAgaWYgKCF0aGlzLmxhbmcpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gSWYgdGhlcmUgaXMgbm8gY29kZSBpbnB1dCwgZ2V0IHRoZSBjb2RlIGZyb21cclxuICAgICAgICAvLyB0aGUgdGV4dGFyZWFcclxuICAgICAgICBpZiAoIXRoaXMuY29kZSkge1xyXG4gICAgICAgICAgICAvLyBHZXQgdGhlIGNvZGVcclxuICAgICAgICAgICAgdGhpcy5jb2RlID0gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gSGlnaGxpZ2h0IGFuZCBpbnNlcnRcclxuICAgICAgICB0aGlzLl9oaWdobGlnaHRBbmRJbnNlcnQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9oaWdobGlnaHRBbmRJbnNlcnQoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gUmV0dXJuIGlmIHRoZSB0ZW1wbGF0ZSByZWZlcmVuY2UgaXMgbm90IGF2YWlsYWJsZVxyXG4gICAgICAgIGlmICghdGhpcy50ZW1wbGF0ZVJlZikge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBSZXR1cm4gaWYgdGhlIGNvZGUgb3IgbGFuZ3VhZ2UgaXMgbm90IGRlZmluZWRcclxuICAgICAgICBpZiAoIXRoaXMuY29kZSB8fCAhdGhpcy5sYW5nKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIERlc3Ryb3kgdGhlIGNvbXBvbmVudCBpZiB0aGVyZSBpcyBhbHJlYWR5IG9uZVxyXG4gICAgICAgIGlmICh0aGlzLl92aWV3UmVmKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3ZpZXdSZWYuZGVzdHJveSgpO1xyXG4gICAgICAgICAgICB0aGlzLl92aWV3UmVmID0gbnVsbDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIEhpZ2hsaWdodCBhbmQgc2FuaXRpemUgdGhlIGNvZGUganVzdCBpbiBjYXNlXHJcbiAgICAgICAgdGhpcy5oaWdobGlnaHRlZENvZGUgPSB0aGlzLl9kb21TYW5pdGl6ZXIuc2FuaXRpemUoU2VjdXJpdHlDb250ZXh0LkhUTUwsIHRoaXMuX2NtYXRIaWdobGlnaHRTZXJ2aWNlLmhpZ2hsaWdodCh0aGlzLmNvZGUsIHRoaXMubGFuZykpO1xyXG5cclxuICAgICAgICAvLyBSZXR1cm4gaWYgdGhlIGhpZ2hsaWdodGVkIGNvZGUgaXMgbnVsbFxyXG4gICAgICAgIGlmICh0aGlzLmhpZ2hsaWdodGVkQ29kZSA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBSZW5kZXIgYW5kIGluc2VydCB0aGUgdGVtcGxhdGVcclxuICAgICAgICB0aGlzLl92aWV3UmVmID0gdGhpcy5fdmlld0NvbnRhaW5lclJlZi5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZVJlZiwge1xyXG4gICAgICAgICAgICBoaWdobGlnaHRlZENvZGU6IHRoaXMuaGlnaGxpZ2h0ZWRDb2RlLFxyXG4gICAgICAgICAgICBsYW5nOiB0aGlzLmxhbmdcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgLy8gRGV0ZWN0IHRoZSBjaGFuZ2VzXHJcbiAgICAgICAgdGhpcy5fdmlld1JlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG5cclxuPG5nLXRlbXBsYXRlIGxldC1oaWdobGlnaHRlZENvZGU9XCJoaWdobGlnaHRlZENvZGVcIiBsZXQtbGFuZz1cImxhbmdcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjbWF0LWhpZ2hsaWdodCBjbWF0LWhpZ2hsaWdodC1jb2RlLWNvbnRhaW5lclwiPlxyXG4gICAgICAgIDxwcmUgW25nQ2xhc3NdPVwiJ2xhbmd1YWdlLScgKyBsYW5nXCI+PGNvZGUgW25nQ2xhc3NdPVwiJ2xhbmd1YWdlLScgKyBsYW5nXCIgW2lubmVySFRNTF09XCJoaWdobGlnaHRlZENvZGVcIj48L2NvZGU+XHJcbiAgICAgICAgPC9wcmU+XHJcbiAgICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT4iXX0=
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9oaWdobGlnaHQvaGlnaGxpZ2h0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9oaWdobGlnaHQvaGlnaGxpZ2h0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFHVCxLQUFLLEVBRUwsZUFBZSxFQUVmLFdBQVcsRUFDWCxTQUFTLEVBRVQsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDOzs7O0FBY3ZCLE1BQU0sT0FBTyxzQkFBc0I7SUFRL0IsWUFDWSxhQUEyQixFQUMzQixXQUF1QixFQUN2QixxQkFBMkMsRUFDM0MsaUJBQW1DO1FBSG5DLGtCQUFhLEdBQWIsYUFBYSxDQUFjO1FBQzNCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBc0I7UUFDM0Msc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtJQUUvQyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLGNBQWM7UUFDZCxJQUFJLE1BQU0sSUFBSSxPQUFPLElBQUksTUFBTSxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ3pDLGtEQUFrRDtZQUNsRCxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUNqQyxPQUFPO1lBQ1gsQ0FBQztZQUVELGdDQUFnQztZQUNoQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUMvQixDQUFDO0lBQ0wsQ0FBQztJQUVELGVBQWU7UUFDWCxxQ0FBcUM7UUFDckMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNiLE9BQU87UUFDWCxDQUFDO1FBRUQsK0NBQStDO1FBQy9DLGVBQWU7UUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2IsZUFBZTtZQUNmLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDO1FBQ3JELENBQUM7UUFFRCx1QkFBdUI7UUFDdkIsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVPLG1CQUFtQjtRQUN2QixvREFBb0Q7UUFDcEQsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNwQixPQUFPO1FBQ1gsQ0FBQztRQUVELGdEQUFnRDtRQUNoRCxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMzQixPQUFPO1FBQ1gsQ0FBQztRQUVELGdEQUFnRDtRQUNoRCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLENBQUM7UUFFRCwrQ0FBK0M7UUFDL0MsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUVySSx5Q0FBeUM7UUFDekMsSUFBSSxJQUFJLENBQUMsZUFBZSxLQUFLLElBQUksRUFBRSxDQUFDO1lBQ2hDLE9BQU87UUFDWCxDQUFDO1FBRUQsaUNBQWlDO1FBQ2pDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7WUFDeEUsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQ3JDLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtTQUNsQixDQUFDLENBQUM7UUFFSCxxQkFBcUI7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNsQyxDQUFDOzhHQS9FUSxzQkFBc0I7a0dBQXRCLHNCQUFzQix5S0FHcEIsV0FBVyxrR0NoQzFCLGdXQU9jLGtHRG9CQSxPQUFPOzsyRkFFUixzQkFBc0I7a0JBVmxDLFNBQVM7K0JBQ0ksMEJBQTBCLGlCQUdyQixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDLGVBQWUsY0FDYixJQUFJLFdBQ1AsQ0FBQyxPQUFPLENBQUM7NEtBR1QsSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDa0IsV0FBVztzQkFBbEMsU0FBUzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7XHJcbiAgICBBZnRlclZpZXdJbml0LFxyXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgICBDb21wb25lbnQsXHJcbiAgICBFbGVtZW50UmVmLFxyXG4gICAgRW1iZWRkZWRWaWV3UmVmLFxyXG4gICAgSW5wdXQsXHJcbiAgICBPbkNoYW5nZXMsXHJcbiAgICBTZWN1cml0eUNvbnRleHQsXHJcbiAgICBTaW1wbGVDaGFuZ2VzLFxyXG4gICAgVGVtcGxhdGVSZWYsXHJcbiAgICBWaWV3Q2hpbGQsXHJcbiAgICBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCB7IENtYXRIaWdobGlnaHRTZXJ2aWNlIH0gZnJvbSAnLi9oaWdobGlnaHQuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAndGV4dGFyZWFbY21hdC1oaWdobGlnaHRdJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9oaWdobGlnaHQuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vaGlnaGxpZ2h0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBleHBvcnRBczogJ2NtYXRIaWdobGlnaHQnLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtOZ0NsYXNzXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ21hdEhpZ2hsaWdodENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgICBASW5wdXQoKSBjb2RlOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBsYW5nOiBzdHJpbmc7XHJcbiAgICBAVmlld0NoaWxkKFRlbXBsYXRlUmVmKSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgICBoaWdobGlnaHRlZENvZGU6IHN0cmluZyB8IG51bGw7XHJcbiAgICBwcml2YXRlIF92aWV3UmVmOiBFbWJlZGRlZFZpZXdSZWY8YW55PiB8IG51bGw7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBfZG9tU2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXHJcbiAgICAgICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgICAgICBwcml2YXRlIF9jbWF0SGlnaGxpZ2h0U2VydmljZTogQ21hdEhpZ2hsaWdodFNlcnZpY2UsXHJcbiAgICAgICAgcHJpdmF0ZSBfdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZlxyXG4gICAgKSB7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgICAgIC8vIENvZGUgJiBMYW5nXHJcbiAgICAgICAgaWYgKCdjb2RlJyBpbiBjaGFuZ2VzIHx8ICdsYW5nJyBpbiBjaGFuZ2VzKSB7XHJcbiAgICAgICAgICAgIC8vIFJldHVybiBpZiB0aGUgdmlld0NvbnRhaW5lclJlZiBpcyBub3QgYXZhaWxhYmxlXHJcbiAgICAgICAgICAgIGlmICghdGhpcy5fdmlld0NvbnRhaW5lclJlZi5sZW5ndGgpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLy8gSGlnaGxpZ2h0IGFuZCBpbnNlcnQgdGhlIGNvZGVcclxuICAgICAgICAgICAgdGhpcy5faGlnaGxpZ2h0QW5kSW5zZXJ0KCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICAvLyBSZXR1cm4gaWYgdGhlcmUgaXMgbm8gbGFuZ3VhZ2Ugc2V0XHJcbiAgICAgICAgaWYgKCF0aGlzLmxhbmcpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gSWYgdGhlcmUgaXMgbm8gY29kZSBpbnB1dCwgZ2V0IHRoZSBjb2RlIGZyb21cclxuICAgICAgICAvLyB0aGUgdGV4dGFyZWFcclxuICAgICAgICBpZiAoIXRoaXMuY29kZSkge1xyXG4gICAgICAgICAgICAvLyBHZXQgdGhlIGNvZGVcclxuICAgICAgICAgICAgdGhpcy5jb2RlID0gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnZhbHVlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gSGlnaGxpZ2h0IGFuZCBpbnNlcnRcclxuICAgICAgICB0aGlzLl9oaWdobGlnaHRBbmRJbnNlcnQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9oaWdobGlnaHRBbmRJbnNlcnQoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gUmV0dXJuIGlmIHRoZSB0ZW1wbGF0ZSByZWZlcmVuY2UgaXMgbm90IGF2YWlsYWJsZVxyXG4gICAgICAgIGlmICghdGhpcy50ZW1wbGF0ZVJlZikge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBSZXR1cm4gaWYgdGhlIGNvZGUgb3IgbGFuZ3VhZ2UgaXMgbm90IGRlZmluZWRcclxuICAgICAgICBpZiAoIXRoaXMuY29kZSB8fCAhdGhpcy5sYW5nKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIERlc3Ryb3kgdGhlIGNvbXBvbmVudCBpZiB0aGVyZSBpcyBhbHJlYWR5IG9uZVxyXG4gICAgICAgIGlmICh0aGlzLl92aWV3UmVmKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3ZpZXdSZWYuZGVzdHJveSgpO1xyXG4gICAgICAgICAgICB0aGlzLl92aWV3UmVmID0gbnVsbDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIEhpZ2hsaWdodCBhbmQgc2FuaXRpemUgdGhlIGNvZGUganVzdCBpbiBjYXNlXHJcbiAgICAgICAgdGhpcy5oaWdobGlnaHRlZENvZGUgPSB0aGlzLl9kb21TYW5pdGl6ZXIuc2FuaXRpemUoU2VjdXJpdHlDb250ZXh0LkhUTUwsIHRoaXMuX2NtYXRIaWdobGlnaHRTZXJ2aWNlLmhpZ2hsaWdodCh0aGlzLmNvZGUsIHRoaXMubGFuZykpO1xyXG5cclxuICAgICAgICAvLyBSZXR1cm4gaWYgdGhlIGhpZ2hsaWdodGVkIGNvZGUgaXMgbnVsbFxyXG4gICAgICAgIGlmICh0aGlzLmhpZ2hsaWdodGVkQ29kZSA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBSZW5kZXIgYW5kIGluc2VydCB0aGUgdGVtcGxhdGVcclxuICAgICAgICB0aGlzLl92aWV3UmVmID0gdGhpcy5fdmlld0NvbnRhaW5lclJlZi5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZVJlZiwge1xyXG4gICAgICAgICAgICBoaWdobGlnaHRlZENvZGU6IHRoaXMuaGlnaGxpZ2h0ZWRDb2RlLFxyXG4gICAgICAgICAgICBsYW5nOiB0aGlzLmxhbmdcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgLy8gRGV0ZWN0IHRoZSBjaGFuZ2VzXHJcbiAgICAgICAgdGhpcy5fdmlld1JlZi5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcbn1cclxuIiwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG5cclxuPG5nLXRlbXBsYXRlIGxldC1oaWdobGlnaHRlZENvZGU9XCJoaWdobGlnaHRlZENvZGVcIiBsZXQtbGFuZz1cImxhbmdcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjbWF0LWhpZ2hsaWdodCBjbWF0LWhpZ2hsaWdodC1jb2RlLWNvbnRhaW5lclwiPlxyXG4gICAgICAgIDxwcmUgW25nQ2xhc3NdPVwiJ2xhbmd1YWdlLScgKyBsYW5nXCI+PGNvZGUgW25nQ2xhc3NdPVwiJ2xhbmd1YWdlLScgKyBsYW5nXCIgW2lubmVySFRNTF09XCJoaWdobGlnaHRlZENvZGVcIj48L2NvZGU+XHJcbiAgICAgICAgPC9wcmU+XHJcbiAgICA8L2Rpdj5cclxuPC9uZy10ZW1wbGF0ZT4iXX0=
@@ -35,13 +35,13 @@ export class CmatHighlightService {
35
35
  // indentation, join them together and return it
36
36
  return lines.map(line => line.substring(indentation)).join('\n');
37
37
  }
38
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: CmatHighlightService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
39
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: CmatHighlightService, providedIn: 'root' }); }
38
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: CmatHighlightService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
39
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: CmatHighlightService, providedIn: 'root' }); }
40
40
  }
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: CmatHighlightService, decorators: [{
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: CmatHighlightService, decorators: [{
42
42
  type: Injectable,
43
43
  args: [{
44
44
  providedIn: 'root'
45
45
  }]
46
46
  }] });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvaGlnaGxpZ2h0L2hpZ2hsaWdodC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxJQUFJLE1BQU0sY0FBYyxDQUFDOztBQUtoQyxNQUFNLE9BQU8sb0JBQW9CO0lBQzdCLFNBQVMsQ0FBQyxJQUFZLEVBQUUsUUFBZ0I7UUFDcEMsa0JBQWtCO1FBQ2xCLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTFCLGdDQUFnQztRQUNoQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDcEQsQ0FBQztJQUVPLE9BQU8sQ0FBQyxJQUFZO1FBQ3hCLElBQUksV0FBVyxHQUFHLENBQUMsQ0FBQztRQUVwQixnREFBZ0Q7UUFDaEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUUvQiw2Q0FBNkM7UUFDN0MsT0FBTyxLQUFLLENBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDM0MsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ2pCO1FBRUQsT0FBTyxLQUFLLENBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUMxRCxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7U0FDZjtRQUVELDRCQUE0QjtRQUM1QixLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQzthQUM1QixPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFFckIseURBQXlEO1lBQ3pELGlDQUFpQztZQUNqQyxJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUU7Z0JBQ2IsV0FBVyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ2xDLE9BQU87YUFDVjtZQUVELDBFQUEwRTtZQUMxRSxXQUFXLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzdELENBQUMsQ0FBQyxDQUFDO1FBRVAsNERBQTREO1FBQzVELGdEQUFnRDtRQUNoRCxPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JFLENBQUM7OEdBMUNRLG9CQUFvQjtrSEFBcEIsb0JBQW9CLGNBRmpCLE1BQU07OzJGQUVULG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCBobGpzIGZyb20gJ2hpZ2hsaWdodC5qcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIENtYXRIaWdobGlnaHRTZXJ2aWNlIHtcclxuICAgIGhpZ2hsaWdodChjb2RlOiBzdHJpbmcsIGxhbmd1YWdlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIC8vIEZvcm1hdCB0aGUgY29kZVxyXG4gICAgICAgIGNvZGUgPSB0aGlzLl9mb3JtYXQoY29kZSk7XHJcblxyXG4gICAgICAgIC8vIEhpZ2hsaWdodCBhbmQgcmV0dXJuIHRoZSBjb2RlXHJcbiAgICAgICAgcmV0dXJuIGhsanMuaGlnaGxpZ2h0KGNvZGUsIHsgbGFuZ3VhZ2UgfSkudmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfZm9ybWF0KGNvZGU6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICAgICAgbGV0IGluZGVudGF0aW9uID0gMDtcclxuXHJcbiAgICAgICAgLy8gU3BsaXQgdGhlIGNvZGUgaW50byBsaW5lcyBhbmQgc3RvcmUgdGhlIGxpbmVzXHJcbiAgICAgICAgY29uc3QgbGluZXMgPSBjb2RlLnNwbGl0KCdcXG4nKTtcclxuXHJcbiAgICAgICAgLy8gVHJpbSB0aGUgZW1wdHkgbGluZXMgYXJvdW5kIHRoZSBjb2RlIGJsb2NrXHJcbiAgICAgICAgd2hpbGUgKGxpbmVzLmxlbmd0aCAmJiBsaW5lc1swXS50cmltKCkgPT09ICcnKSB7XHJcbiAgICAgICAgICAgIGxpbmVzLnNoaWZ0KCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB3aGlsZSAobGluZXMubGVuZ3RoICYmIGxpbmVzW2xpbmVzLmxlbmd0aCAtIDFdLnRyaW0oKSA9PT0gJycpIHtcclxuICAgICAgICAgICAgbGluZXMucG9wKCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBJdGVyYXRlIHRocm91Z2ggdGhlIGxpbmVzXHJcbiAgICAgICAgbGluZXMuZmlsdGVyKGxpbmUgPT4gbGluZS5sZW5ndGgpXHJcbiAgICAgICAgICAgIC5mb3JFYWNoKChsaW5lLCBpbmRleCkgPT4ge1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIEFsd2F5cyBnZXQgdGhlIGluZGVudGF0aW9uIG9mIHRoZSBmaXJzdCBsaW5lIHNvIHdlIGNhblxyXG4gICAgICAgICAgICAgICAgLy8gaGF2ZSBzb21ldGhpbmcgdG8gY29tcGFyZSB3aXRoXHJcbiAgICAgICAgICAgICAgICBpZiAoaW5kZXggPT09IDApIHtcclxuICAgICAgICAgICAgICAgICAgICBpbmRlbnRhdGlvbiA9IGxpbmUuc2VhcmNoKC9cXFN8JC8pO1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAvLyBMb29rIGF0IGFsbCB0aGUgcmVtYWluaW5nIGxpbmVzIHRvIGZpZ3VyZSBvdXQgdGhlIHNtYWxsZXN0IGluZGVudGF0aW9uLlxyXG4gICAgICAgICAgICAgICAgaW5kZW50YXRpb24gPSBNYXRoLm1pbihsaW5lLnNlYXJjaCgvXFxTfCQvKSwgaW5kZW50YXRpb24pO1xyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgLy8gSXRlcmF0ZSB0aHJvdWdoIHRoZSBsaW5lcyBvbmUgbW9yZSB0aW1lLCByZW1vdmUgdGhlIGV4dHJhXHJcbiAgICAgICAgLy8gaW5kZW50YXRpb24sIGpvaW4gdGhlbSB0b2dldGhlciBhbmQgcmV0dXJuIGl0XHJcbiAgICAgICAgcmV0dXJuIGxpbmVzLm1hcChsaW5lID0+IGxpbmUuc3Vic3RyaW5nKGluZGVudGF0aW9uKSkuam9pbignXFxuJyk7XHJcbiAgICB9XHJcbn1cclxuIl19
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlnaGxpZ2h0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvaGlnaGxpZ2h0L2hpZ2hsaWdodC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxJQUFJLE1BQU0sY0FBYyxDQUFDOztBQUtoQyxNQUFNLE9BQU8sb0JBQW9CO0lBQzdCLFNBQVMsQ0FBQyxJQUFZLEVBQUUsUUFBZ0I7UUFDcEMsa0JBQWtCO1FBQ2xCLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTFCLGdDQUFnQztRQUNoQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDcEQsQ0FBQztJQUVPLE9BQU8sQ0FBQyxJQUFZO1FBQ3hCLElBQUksV0FBVyxHQUFHLENBQUMsQ0FBQztRQUVwQixnREFBZ0Q7UUFDaEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUUvQiw2Q0FBNkM7UUFDN0MsT0FBTyxLQUFLLENBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUM1QyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDbEIsQ0FBQztRQUVELE9BQU8sS0FBSyxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUMzRCxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDaEIsQ0FBQztRQUVELDRCQUE0QjtRQUM1QixLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQzthQUM1QixPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFFckIseURBQXlEO1lBQ3pELGlDQUFpQztZQUNqQyxJQUFJLEtBQUssS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDZCxXQUFXLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDbEMsT0FBTztZQUNYLENBQUM7WUFFRCwwRUFBMEU7WUFDMUUsV0FBVyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUM3RCxDQUFDLENBQUMsQ0FBQztRQUVQLDREQUE0RDtRQUM1RCxnREFBZ0Q7UUFDaEQsT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNyRSxDQUFDOzhHQTFDUSxvQkFBb0I7a0hBQXBCLG9CQUFvQixjQUZqQixNQUFNOzsyRkFFVCxvQkFBb0I7a0JBSGhDLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgaGxqcyBmcm9tICdoaWdobGlnaHQuanMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0SGlnaGxpZ2h0U2VydmljZSB7XHJcbiAgICBoaWdobGlnaHQoY29kZTogc3RyaW5nLCBsYW5ndWFnZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICAvLyBGb3JtYXQgdGhlIGNvZGVcclxuICAgICAgICBjb2RlID0gdGhpcy5fZm9ybWF0KGNvZGUpO1xyXG5cclxuICAgICAgICAvLyBIaWdobGlnaHQgYW5kIHJldHVybiB0aGUgY29kZVxyXG4gICAgICAgIHJldHVybiBobGpzLmhpZ2hsaWdodChjb2RlLCB7IGxhbmd1YWdlIH0pLnZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX2Zvcm1hdChjb2RlOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgICAgIGxldCBpbmRlbnRhdGlvbiA9IDA7XHJcblxyXG4gICAgICAgIC8vIFNwbGl0IHRoZSBjb2RlIGludG8gbGluZXMgYW5kIHN0b3JlIHRoZSBsaW5lc1xyXG4gICAgICAgIGNvbnN0IGxpbmVzID0gY29kZS5zcGxpdCgnXFxuJyk7XHJcblxyXG4gICAgICAgIC8vIFRyaW0gdGhlIGVtcHR5IGxpbmVzIGFyb3VuZCB0aGUgY29kZSBibG9ja1xyXG4gICAgICAgIHdoaWxlIChsaW5lcy5sZW5ndGggJiYgbGluZXNbMF0udHJpbSgpID09PSAnJykge1xyXG4gICAgICAgICAgICBsaW5lcy5zaGlmdCgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgd2hpbGUgKGxpbmVzLmxlbmd0aCAmJiBsaW5lc1tsaW5lcy5sZW5ndGggLSAxXS50cmltKCkgPT09ICcnKSB7XHJcbiAgICAgICAgICAgIGxpbmVzLnBvcCgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gSXRlcmF0ZSB0aHJvdWdoIHRoZSBsaW5lc1xyXG4gICAgICAgIGxpbmVzLmZpbHRlcihsaW5lID0+IGxpbmUubGVuZ3RoKVxyXG4gICAgICAgICAgICAuZm9yRWFjaCgobGluZSwgaW5kZXgpID0+IHtcclxuXHJcbiAgICAgICAgICAgICAgICAvLyBBbHdheXMgZ2V0IHRoZSBpbmRlbnRhdGlvbiBvZiB0aGUgZmlyc3QgbGluZSBzbyB3ZSBjYW5cclxuICAgICAgICAgICAgICAgIC8vIGhhdmUgc29tZXRoaW5nIHRvIGNvbXBhcmUgd2l0aFxyXG4gICAgICAgICAgICAgICAgaWYgKGluZGV4ID09PSAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgaW5kZW50YXRpb24gPSBsaW5lLnNlYXJjaCgvXFxTfCQvKTtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLy8gTG9vayBhdCBhbGwgdGhlIHJlbWFpbmluZyBsaW5lcyB0byBmaWd1cmUgb3V0IHRoZSBzbWFsbGVzdCBpbmRlbnRhdGlvbi5cclxuICAgICAgICAgICAgICAgIGluZGVudGF0aW9uID0gTWF0aC5taW4obGluZS5zZWFyY2goL1xcU3wkLyksIGluZGVudGF0aW9uKTtcclxuICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIC8vIEl0ZXJhdGUgdGhyb3VnaCB0aGUgbGluZXMgb25lIG1vcmUgdGltZSwgcmVtb3ZlIHRoZSBleHRyYVxyXG4gICAgICAgIC8vIGluZGVudGF0aW9uLCBqb2luIHRoZW0gdG9nZXRoZXIgYW5kIHJldHVybiBpdFxyXG4gICAgICAgIHJldHVybiBsaW5lcy5tYXAobGluZSA9PiBsaW5lLnN1YnN0cmluZyhpbmRlbnRhdGlvbikpLmpvaW4oJ1xcbicpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -155,10 +155,10 @@ export class CmatJsonEditorComponent {
155
155
  this.pathChanged.emit(st);
156
156
  }
157
157
  }
158
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: CmatJsonEditorComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
159
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.9", type: CmatJsonEditorComponent, isStandalone: true, selector: "cmat-json-editor", inputs: { options: "options", data: "data" }, outputs: { contentChanged: "contentChanged", pathChanged: "pathChanged" }, viewQueries: [{ propertyName: "jsonEditorContainer", first: true, predicate: ["jsonEditorContainer"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: '<div class="cmat-jsoneditor" [id]="id" #jsonEditorContainer></div>', isInline: true, styles: [".cmat-jsoneditor .jse-main.svelte-sxaskb{min-height:24rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
158
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: CmatJsonEditorComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
159
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0", type: CmatJsonEditorComponent, isStandalone: true, selector: "cmat-json-editor", inputs: { options: "options", data: "data" }, outputs: { contentChanged: "contentChanged", pathChanged: "pathChanged" }, viewQueries: [{ propertyName: "jsonEditorContainer", first: true, predicate: ["jsonEditorContainer"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: '<div class="cmat-jsoneditor" [id]="id" #jsonEditorContainer></div>', isInline: true, styles: [".cmat-jsoneditor .jse-main.svelte-sxaskb{min-height:24rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
160
160
  }
161
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: CmatJsonEditorComponent, decorators: [{
161
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: CmatJsonEditorComponent, decorators: [{
162
162
  type: Component,
163
163
  args: [{ selector: 'cmat-json-editor', template: '<div class="cmat-jsoneditor" [id]="id" #jsonEditorContainer></div>', preserveWhitespaces: false, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, imports: [], styles: [".cmat-jsoneditor .jse-main.svelte-sxaskb{min-height:24rem}\n"] }]
164
164
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { jsonEditorContainer: [{
@@ -173,4 +173,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
173
173
  }], pathChanged: [{
174
174
  type: Output
175
175
  }] } });
176
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL2pzb24tZWRpdG9yL2pzb24tZWRpdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUVULEtBQUssRUFHTCxTQUFTLEVBQ1QsTUFBTSxFQUNOLFlBQVksRUFDWix1QkFBdUIsRUFDdkIsaUJBQWlCLEdBSXBCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxVQUFVLEVBQ1YsaUJBQWlCLEVBR2pCLGtCQUFrQixFQUNsQixhQUFhLEVBRWIsY0FBYyxFQUNkLGFBQWEsRUFFYixnQkFBZ0IsRUFDaEIsb0JBQW9CLEdBR3ZCLE1BQU0sb0JBQW9CLENBQUM7O0FBWTVCLE1BQU0sT0FBTyx1QkFBdUI7SUFnQmhDLFlBQW9CLGtCQUFxQztRQUFyQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBWC9DLG1CQUFjLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFDNUQsZ0JBQVcsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUVsRSxPQUFFLEdBQUcsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDLENBQUM7UUFDbkUsWUFBTyxHQUFZO1lBQ2YsSUFBSSxFQUFFLFNBQVM7WUFDZixJQUFJLEVBQUUsRUFBRTtTQUNYLENBQUM7SUFJMkQsQ0FBQztJQUU5RCxRQUFRO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLEVBQUU7WUFDekMsT0FBTyxDQUFDLEtBQUssQ0FBQyxzREFBc0QsQ0FBQyxDQUFDO1NBQ3pFO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLFVBQVUsQ0FBQztZQUMxQixNQUFNLEVBQUUsSUFBSSxDQUFDLG1C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Q0FBQyxTQUFTLENBQUMsRUFBRTtZQUMzQixNQUFNLEVBQUUsR0FBRyxpQkFBaUIsQ0FBRSxTQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3RELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQzdCO2FBQU0sSUFBSSxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUNwQyxNQUFNLEVBQUUsR0FBRyxpQkFBaUIsQ0FBRSxTQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzVELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQzdCO0lBQ0wsQ0FBQzs4R0F6TFEsdUJBQXVCO2tHQUF2Qix1QkFBdUIsb1dBUnRCLG9FQUFvRTs7MkZBUXJFLHVCQUF1QjtrQkFWbkMsU0FBUzsrQkFDSSxrQkFBa0IsWUFDbEIsb0VBQW9FLHVCQUN6RCxLQUFLLG1CQUNULHVCQUF1QixDQUFDLE1BQU0saUJBRWhDLGlCQUFpQixDQUFDLElBQUksY0FDekIsSUFBSSxXQUNQLEVBQUU7c0ZBR3lDLG1CQUFtQjtzQkFBdEUsU0FBUzt1QkFBQyxxQkFBcUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ3pDLE9BQU87c0JBQWYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBRUksY0FBYztzQkFBdkIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIENvbXBvbmVudCxcclxuICAgIEVsZW1lbnRSZWYsXHJcbiAgICBJbnB1dCxcclxuICAgIE9uSW5pdCxcclxuICAgIE9uRGVzdHJveSxcclxuICAgIFZpZXdDaGlsZCxcclxuICAgIE91dHB1dCxcclxuICAgIEV2ZW50RW1pdHRlcixcclxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgICBPbkNoYW5nZXMsXHJcbiAgICBTaW1wbGVDaGFuZ2VzLFxyXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgICBKU09ORWRpdG9yLFxyXG4gICAgc3RyaW5naWZ5SlNPTlBhdGgsXHJcbiAgICBDb250ZW50LFxyXG4gICAgTWVudUl0ZW0sXHJcbiAgICBjcmVhdGVBanZWYWxpZGF0b3IsXHJcbiAgICBwYXJzZUpTT05QYXRoLFxyXG4gICAgSlNPTkVkaXRvclNlbGVjdGlvbixcclxuICAgIGlzS2V5U2VsZWN0aW9uLFxyXG4gICAgaXNKU09OQ29udGVudCxcclxuICAgIEpTT05Db250ZW50LFxyXG4gICAgaXNNdWx0aVNlbGVjdGlvbixcclxuICAgIGNyZWF0ZU11bHRpU2VsZWN0aW9uLFxyXG4gICAgTWVudUJ1dHRvbixcclxuICAgIFRleHRDb250ZW50LFxyXG59IGZyb20gJ3ZhbmlsbGEtanNvbmVkaXRvcic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY21hdC1qc29uLWVkaXRvcicsXHJcbiAgICB0ZW1wbGF0ZTogJzxkaXYgY2xhc3M9XCJjbWF0LWpzb25lZGl0b3JcIiBbaWRdPVwiaWRcIiAjanNvbkVkaXRvckNvbnRhaW5lcj48L2Rpdj4nLFxyXG4gICAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIHN0eWxlVXJsczogWycuL2pzb24tZWRpdG9yLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0SnNvbkVkaXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3kge1xyXG4gICAgQFZpZXdDaGlsZCgnanNvbkVkaXRvckNvbnRhaW5lcicsIHsgc3RhdGljOiB0cnVlIH0pIGpzb25FZGl0b3JDb250YWluZXIhOiBFbGVtZW50UmVmO1xyXG4gICAgQElucHV0KCkgb3B0aW9uczogYW55O1xyXG4gICAgQElucHV0KCkgZGF0YTogYW55O1xyXG5cclxuICAgIEBPdXRwdXQoKSBjb250ZW50Q2hhbmdlZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuICAgIEBPdXRwdXQoKSBwYXRoQ2hhbmdlZDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcclxuXHJcbiAgICBwdWJsaWMgaWQgPSAnY21hdGpzb25lZGl0b3InICsgTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTAwMDAwMCk7XHJcbiAgICBjb250ZW50OiBDb250ZW50ID0ge1xyXG4gICAgICAgIHRleHQ6IHVuZGVmaW5lZCxcclxuICAgICAgICBqc29uOiB7fVxyXG4gICAgfTtcclxuXHJcbiAgICBwcml2YXRlIF9lZGl0b3I6IEpTT05FZGl0b3IgfCB1bmRlZmluZWQ7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7IH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoaXMuanNvbkVkaXRvckNvbnRhaW5lci5uYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ0NhblxcJ3QgZmluZCB0aGUgRWxlbWVudFJlZiByZWZlcmVuY2UgZm9yIGpzb25lZGl0b3IpJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX2VkaXRvciA9IG5ldyBKU09ORWRpdG9yKHtcclxuICAgICAgICAgICAgdGFyZ2V0OiB0aGlzLmpzb25FZGl0b3JDb250YWluZXIubmF0aXZlRWxlbWVudCxcclxuICAgICAgICAgICAgcHJvcHM6IHtcclxuICAgICAgICAgICAgICAgIC4uLnRoaXMub3B0aW9ucyxcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHRoaXMuY29udGVudCxcclxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlOiAoXHJcbiAgICAgICAgICAgICAgICAgICAgdXBkYXRlZENvbnRlbnQsXHJcbiAgICAgICAgICAgICAgICAgICAgcHJldmlvdXNDb250ZW50LFxyXG4gICAgICAgICAgICAgICAgICAgIHsgY29udGVudEVycm9ycywgcGF0Y2hSZXN1bHQgfVxyXG4gICAgICAgICAgICAgICAgKTogdm9pZCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ29uQ2hhbmdlJywge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVkQ29udGVudCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgcHJldmlvdXNDb250ZW50LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50RXJyb3JzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYXRjaFJlc3VsdCxcclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRlbnQgPSB1cGRhdGVkQ29udGVudDtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbnRlbnRDaGFuZ2VkLmVtaXQodXBkYXRlZENvbnRlbnQpO1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIG9uU2VsZWN0OiB0aGlzLl9vblNlbGVjdC5iaW5kKHRoaXMpLFxyXG4gICAgICAgICAgICAgICAgb25SZW5kZXJNZW51KFxyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1zOiBNZW51SXRlbVtdLFxyXG4gICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcclxuICAgICAgICAgICAgICAgICAgICBjb250ZXh0OiB7IG1vZGU6ICd0cmVlJyB8ICd0ZXh0JyB8ICd0YWJsZSc7IG1vZGFsOiBib29sZWFuIH1cclxuICAgICAgICAgICAgICAgICk6IE1lbnVJdGVtW10gfCB1bmRlZmluZWQge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vIHJlbW92ZSBidXR0b25zIGZvciB0YWJsZS1tb2RlLCB0cmFuc2Zvcm0sIHNvcnRcclxuICAgICAgICAgICAgICAgICAgICBpdGVtcy5zcGxpY2UoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zLmZpbmRJbmRleChpID0+IChpIGFzIE1lbnVCdXR0b24pWyd0ZXh0J10gPT09ICd0YWJsZScpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAxXHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICBpdGVtcy5zcGxpY2UoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW1zLmZpbmRJbmRleChpID0+IChpIGFzIE1lbnVCdXR0b24pWydjbGFzc05hbWUnXSA9PT0gJ2pzZS1zb3J0JyksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDFcclxuICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1zLnNwbGljZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXMuZmluZEluZGV4KGkgPT4gKGkgYXMgTWVudUJ1dHRvbilbJ2NsYXNzTmFtZSddID09PSAnanNlLXRyYW5zZm9ybScpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAxXHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBidXR0b24gPSBpdGVtIGFzIE1lbnVCdXR0b247XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHN3aXRjaCAoYnV0dG9uWyd0aXRsZSddKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICdTd2l0Y2ggdG8gdGV4dCBtb2RlIChjdXJyZW50IG1vZGU6IHRleHQpJzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b24udGV4dCA9ICfmlofmnKwnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbi50aXRsZSA9ICfliIfmjaLliLDmlofmnKzmqKHlvI8o5b2T5YmN5qih5byPOuaWh+acrCknO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnU3dpdGNoIHRvIHRyZWUgbW9kZSAoY3VycmVudCBtb2RlOiB0ZXh0KSc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uLnRleHQgPSAn5qCRJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b24udGl0bGUgPSAn5YiH5o2i5Yiw5qCR5qih5byPKOW9k+WJjeaooeW8jzrmlofmnKwpJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ1N3aXRjaCB0byB0ZXh0IG1vZGUgKGN1cnJlbnQgbW9kZTogdHJlZSknOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbi50ZXh0ID0gJ+aWh+acrCc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uLnRpdGxlID0gJ+WIh+aNouWIsOaWh+acrOaooeW8jyjlvZPliY3mqKHlvI865qCRKSc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICdTd2l0Y2ggdG8gdHJlZSBtb2RlIChjdXJyZW50IG1vZGU6IHRyZWUpJzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b24udGV4dCA9ICfmoJEnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbi50aXRsZSA9ICfliIfmjaLliLDmoJHmqKHlvI8o5b2T5YmN5qih5byPOuagkSknO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnRm9ybWF0IEpTT046IGFkZCBwcm9wZXIgaW5kZW50YXRpb24gYW5kIG5ldyBsaW5lcyAoQ3RybCtJKSc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uLnRpdGxlID0gJ0pTT07moLzlvI/ljJY6IOa3u+WKoOmAguW9k+eahOe8qei/m+WSjOaWsOihjCAoQ3RybCtJKSc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICdDb21wYWN0IEpTT046IHJlbW92ZSBhbGwgd2hpdGUgc3BhY2luZyBhbmQgbmV3IGxpbmVzIChDdHJsK1NoaWZ0K0kpJzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b24udGl0bGUgPSAn5Y6L57ypSlNPTjog5Yig6Zmk5omA5pyJ55m96Imy6Ze06Led5ZKM5paw6KGMIChDdHJsK1NoaWZ0K0kpJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ1NlYXJjaCAoQ3RybCtGKSc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uLnRpdGxlID0gJ+aQnOe0oiAoQ3RybCtGKSc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICdVbmRvIChDdHJsK1opJzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b24udGl0bGUgPSAn5pKk5ZueIChDdHJsK1opJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ1JlZG8gKEN0cmwrU2hpZnQrWiknOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbi50aXRsZSA9ICfph43or5UgKEN0cmwrU2hpZnQrWiknO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnRXhwYW5kIGFsbCc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uLnRpdGxlID0gJ+WFqOmDqOWxleW8gCc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICdDb2xsYXBzZSBhbGwnOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbi50aXRsZSA9ICflhajpg6jmipjlj6AnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnT3BlbiBjb250ZXh0IG1lbnUgKENsaWNrIGhlcmUsIHJpZ2h0IGNsaWNrIG9uIHRoZSBzZWxlY3Rpb24sIG9yIHVzZSB0aGUgY29udGV4dCBtZW51IGJ1dHRvbiBvciBDdHJsK1EpJzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b24udGl0bGUgPSAn5omT5byA5YaF5a656I+c5Y2VICjljZXlh7vmraTlpITvvIzlj7PplK7ljZXlh7vmiYDpgInlhoXlrrnvvIzmiJbkvb/nlKjlhoXlrrnoj5zljZXmjInpkq7miJYgQ3RybCtRKSc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gaXRlbXM7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgICAgICBpZiAoY2hhbmdlcy5kYXRhKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY29udGVudCA9IHtcclxuICAgICAgICAgICAgICAgIHRleHQ6IHVuZGVmaW5lZCxcclxuICAgICAgICAgICAgICAgIGpzb246IDxhbnk+dGhpcy5kYXRhXHJcbiAgICAgICAgICAgIH07XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy5fZWRpdG9yKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9lZGl0b3IudXBkYXRlKHRoaXMuY29udGVudCk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYoY2hhbmdlcy5vcHRpb25zKXtcclxuICAgICAgICAgICAgaWYodGhpcy5fZWRpdG9yKXtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2VkaXRvcj8udXBkYXRlUHJvcHModGhpcy5vcHRpb25zKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9lZGl0b3I/LmRlc3Ryb3koKTtcclxuICAgIH1cclxuXHJcbiAgICBzZXRTY2hlbWEoc2NoZW1hOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCB2YWxpZGF0b3IgPSBjcmVhdGVBanZWYWxpZGF0b3IoeyBzY2hlbWEgfSk7XHJcbiAgICAgICAgdGhpcy5fZWRpdG9yPy51cGRhdGVQcm9wcyh7IHZhbGlkYXRvcjogdmFsaWRhdG9yIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHNldFNlbGVjdGlvblRvUGF0aChwYXRoU3RyaW5nOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBwYXRoID0gcGFyc2VKU09OUGF0aChwYXRoU3RyaW5nKTtcclxuICAgICAgICBjb25zdCBzZWxlY3Rpb24gPSBjcmVhdGVNdWx0aVNlbGVjdGlvbihwYXRoLCBwYXRoKTtcclxuXHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgdGhpcy5fZWRpdG9yPy5zZWxlY3Qoc2VsZWN0aW9uKTtcclxuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ1NldCBzZWxlY3Rpb24gdG8gcGF0aCBub3QgcG9zc2libGU6JywgcGF0aFN0cmluZywgZXJyb3IpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnBhdGhDaGFuZ2VkLmVtaXQocGF0aFN0cmluZyk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0KCk6IEpTT04gfCB1bmRlZmluZWQge1xyXG4gICAgICAgIGlmICh0aGlzLl9lZGl0b3IpIHtcclxuICAgICAgICAgICAgY29uc3QgY29udGVudDogQ29udGVudCA9IHRoaXMuX2VkaXRvci5nZXQoKTtcclxuICAgICAgICAgICAgaWYgKGlzSlNPTkNvbnRlbnQoY29udGVudCkpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGo6IGFueSA9ICh0aGlzLl9lZGl0b3IuZ2V0KCkgYXMgSlNPTkNvbnRlbnQpLmpzb247XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gajtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHQ6IGFueSA9ICh0aGlzLl9lZGl0b3IuZ2V0KCkgYXMgVGV4dENvbnRlbnQpLnRleHQ7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBqOiBKU09OID0gSlNPTi5wYXJzZSh0KTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBqO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0KGpzb246IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHZhbHVlOiBKU09OQ29udGVudCA9IHtcclxuICAgICAgICAgICAganNvbjoganNvbixcclxuICAgICAgICB9O1xyXG5cclxuICAgICAgICB0aGlzLl9lZGl0b3I/LnNldCh2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfb25TZWxlY3Qoc2VsZWN0aW9uOiBKU09ORWRpdG9yU2VsZWN0aW9uIHwgbnVsbCk6IHZvaWQge1xyXG4gICAgICAgIGlmIChpc0tleVNlbGVjdGlvbihzZWxlY3Rpb24pKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHN0ID0gc3RyaW5naWZ5SlNPTlBhdGgoKHNlbGVjdGlvbiBhcyBhbnkpLnBhdGgpO1xyXG4gICAgICAgICAgICB0aGlzLnBhdGhDaGFuZ2VkLmVtaXQoc3QpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoaXNNdWx0aVNlbGVjdGlvbihzZWxlY3Rpb24pKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHN0ID0gc3RyaW5naWZ5SlNPTlBhdGgoKHNlbGVjdGlvbiBhcyBhbnkpLmFuY2hvclBhdGgpO1xyXG4gICAgICAgICAgICB0aGlzLnBhdGhDaGFuZ2VkLmVtaXQoc3QpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSJdfQ==
176
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi1lZGl0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL2pzb24tZWRpdG9yL2pzb24tZWRpdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUVULEtBQUssRUFHTCxTQUFTLEVBQ1QsTUFBTSxFQUNOLFlBQVksRUFDWix1QkFBdUIsRUFDdkIsaUJBQWlCLEdBSXBCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxVQUFVLEVBQ1YsaUJBQWlCLEVBR2pCLGtCQUFrQixFQUNsQixhQUFhLEVBRWIsY0FBYyxFQUNkLGFBQWEsRUFFYixnQkFBZ0IsRUFDaEIsb0JBQW9CLEdBR3ZCLE1BQU0sb0JBQW9CLENBQUM7O0FBWTVCLE1BQU0sT0FBTyx1QkFBdUI7SUFnQmhDLFlBQW9CLGtCQUFxQztRQUFyQyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBWC9DLG1CQUFjLEdBQXNCLElBQUksWUFBWSxFQUFPLENBQUM7UUFDNUQsZ0JBQVcsR0FBeUIsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUVsRSxPQUFFLEdBQUcsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDLENBQUM7UUFDbkUsWUFBTyxHQUFZO1lBQ2YsSUFBSSxFQUFFLFNBQVM7WUFDZixJQUFJLEVBQUUsRUFBRTtTQUNYLENBQUM7SUFJMkQsQ0FBQztJQUU5RCxRQUFRO1FBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUMxQyxPQUFPLENBQUMsS0FBSyxDQUFDLHNEQUFzRCxDQUFDLENBQUM7UUFDMUUsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxVQUFVLENBQUM7WUFDMUIsTUFBTSxFQUFFLElB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QUk7U0FDYixDQUFDO1FBRUYsSUFBSSxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVPLFNBQVMsQ0FBQyxTQUFxQztRQUNuRCxJQUFJLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQzVCLE1BQU0sRUFBRSxHQUFHLGlCQUFpQixDQUFFLFNBQWlCLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDOUIsQ0FBQzthQUFNLElBQUksZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztZQUNyQyxNQUFNLEVBQUUsR0FBRyxpQkFBaUIsQ0FBRSxTQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQzVELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzlCLENBQUM7SUFDTCxDQUFDOzhHQXpMUSx1QkFBdUI7a0dBQXZCLHVCQUF1QixvV0FSdEIsb0VBQW9FOzsyRkFRckUsdUJBQXVCO2tCQVZuQyxTQUFTOytCQUNJLGtCQUFrQixZQUNsQixvRUFBb0UsdUJBQ3pELEtBQUssbUJBQ1QsdUJBQXVCLENBQUMsTUFBTSxpQkFFaEMsaUJBQWlCLENBQUMsSUFBSSxjQUN6QixJQUFJLFdBQ1AsRUFBRTtzRkFHeUMsbUJBQW1CO3NCQUF0RSxTQUFTO3VCQUFDLHFCQUFxQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDekMsT0FBTztzQkFBZixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFFSSxjQUFjO3NCQUF2QixNQUFNO2dCQUNHLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQ29tcG9uZW50LFxyXG4gICAgRWxlbWVudFJlZixcclxuICAgIElucHV0LFxyXG4gICAgT25Jbml0LFxyXG4gICAgT25EZXN0cm95LFxyXG4gICAgVmlld0NoaWxkLFxyXG4gICAgT3V0cHV0LFxyXG4gICAgRXZlbnRFbWl0dGVyLFxyXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICAgIE9uQ2hhbmdlcyxcclxuICAgIFNpbXBsZUNoYW5nZXMsXHJcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICAgIEpTT05FZGl0b3IsXHJcbiAgICBzdHJpbmdpZnlKU09OUGF0aCxcclxuICAgIENvbnRlbnQsXHJcbiAgICBNZW51SXRlbSxcclxuICAgIGNyZWF0ZUFqdlZhbGlkYXRvcixcclxuICAgIHBhcnNlSlNPTlBhdGgsXHJcbiAgICBKU09ORWRpdG9yU2VsZWN0aW9uLFxyXG4gICAgaXNLZXlTZWxlY3Rpb24sXHJcbiAgICBpc0pTT05Db250ZW50LFxyXG4gICAgSlNPTkNvbnRlbnQsXHJcbiAgICBpc011bHRpU2VsZWN0aW9uLFxyXG4gICAgY3JlYXRlTXVsdGlTZWxlY3Rpb24sXHJcbiAgICBNZW51QnV0dG9uLFxyXG4gICAgVGV4dENvbnRlbnQsXHJcbn0gZnJvbSAndmFuaWxsYS1qc29uZWRpdG9yJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjbWF0LWpzb24tZWRpdG9yJyxcclxuICAgIHRlbXBsYXRlOiAnPGRpdiBjbGFzcz1cImNtYXQtanNvbmVkaXRvclwiIFtpZF09XCJpZFwiICNqc29uRWRpdG9yQ29udGFpbmVyPjwvZGl2PicsXHJcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vanNvbi1lZGl0b3IuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW11cclxufSlcclxuZXhwb3J0IGNsYXNzIENtYXRKc29uRWRpdG9yQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XHJcbiAgICBAVmlld0NoaWxkKCdqc29uRWRpdG9yQ29udGFpbmVyJywgeyBzdGF0aWM6IHRydWUgfSkganNvbkVkaXRvckNvbnRhaW5lciE6IEVsZW1lbnRSZWY7XHJcbiAgICBASW5wdXQoKSBvcHRpb25zOiBhbnk7XHJcbiAgICBASW5wdXQoKSBkYXRhOiBhbnk7XHJcblxyXG4gICAgQE91dHB1dCgpIGNvbnRlbnRDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gICAgQE91dHB1dCgpIHBhdGhDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICAgIHB1YmxpYyBpZCA9ICdjbWF0anNvbmVkaXRvcicgKyBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAxMDAwMDAwKTtcclxuICAgIGNvbnRlbnQ6IENvbnRlbnQgPSB7XHJcbiAgICAgICAgdGV4dDogdW5kZWZpbmVkLFxyXG4gICAgICAgIGpzb246IHt9XHJcbiAgICB9O1xyXG5cclxuICAgIHByaXZhdGUgX2VkaXRvcjogSlNPTkVkaXRvciB8IHVuZGVmaW5lZDtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHsgfVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGhpcy5qc29uRWRpdG9yQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgY29uc29sZS5lcnJvcignQ2FuXFwndCBmaW5kIHRoZSBFbGVtZW50UmVmIHJlZmVyZW5jZSBmb3IganNvbmVkaXRvciknKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5fZWRpdG9yID0gbmV3IEpTT05FZGl0b3Ioe1xyXG4gICAgICAgICAgICB0YXJnZXQ6IHRoaXMuanNvbkVkaXRvckNvbnRhaW5lci5uYXRpdmVFbGVtZW50LFxyXG4gICAgICAgICAgICBwcm9wczoge1xyXG4gICAgICAgICAgICAgICAgLi4udGhpcy5vcHRpb25zLFxyXG4gICAgICAgICAgICAgICAgY29udGVudDogdGhpcy5jb250ZW50LFxyXG4gICAgICAgICAgICAgICAgb25DaGFuZ2U6IChcclxuICAgICAgICAgICAgICAgICAgICB1cGRhdGVkQ29udGVudCxcclxuICAgICAgICAgICAgICAgICAgICBwcmV2aW91c0NvbnRlbnQsXHJcbiAgICAgICAgICAgICAgICAgICAgeyBjb250ZW50RXJyb3JzLCBwYXRjaFJlc3VsdCB9XHJcbiAgICAgICAgICAgICAgICApOiB2b2lkID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygnb25DaGFuZ2UnLCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZWRDb250ZW50LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBwcmV2aW91c0NvbnRlbnQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnRFcnJvcnMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGNoUmVzdWx0LFxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29udGVudCA9IHVwZGF0ZWRDb250ZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29udGVudENoYW5nZWQuZW1pdCh1cGRhdGVkQ29udGVudCk7XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgb25TZWxlY3Q6IHRoaXMuX29uU2VsZWN0LmJpbmQodGhpcyksXHJcbiAgICAgICAgICAgICAgICBvblJlbmRlck1lbnUoXHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbXM6IE1lbnVJdGVtW10sXHJcbiAgICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6IHsgbW9kZTogJ3RyZWUnIHwgJ3RleHQnIHwgJ3RhYmxlJzsgbW9kYWw6IGJvb2xlYW4gfVxyXG4gICAgICAgICAgICAgICAgKTogTWVudUl0ZW1bXSB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gcmVtb3ZlIGJ1dHRvbnMgZm9yIHRhYmxlLW1vZGUsIHRyYW5zZm9ybSwgc29ydFxyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1zLnNwbGljZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXMuZmluZEluZGV4KGkgPT4gKGkgYXMgTWVudUJ1dHRvbilbJ3RleHQnXSA9PT0gJ3RhYmxlJyksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDFcclxuICAgICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1zLnNwbGljZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbXMuZmluZEluZGV4KGkgPT4gKGkgYXMgTWVudUJ1dHRvbilbJ2NsYXNzTmFtZSddID09PSAnanNlLXNvcnQnKSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgMVxyXG4gICAgICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgICAgICAgaXRlbXMuc3BsaWNlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtcy5maW5kSW5kZXgoaSA9PiAoaSBhcyBNZW51QnV0dG9uKVsnY2xhc3NOYW1lJ10gPT09ICdqc2UtdHJhbnNmb3JtJyksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDFcclxuICAgICAgICAgICAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBpdGVtcy5mb3JFYWNoKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGJ1dHRvbiA9IGl0ZW0gYXMgTWVudUJ1dHRvbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChidXR0b25bJ3RpdGxlJ10pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ1N3aXRjaCB0byB0ZXh0IG1vZGUgKGN1cnJlbnQgbW9kZTogdGV4dCknOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbi50ZXh0ID0gJ+aWh+acrCc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uLnRpdGxlID0gJ+WIh+aNouWIsOaWh+acrOaooeW8jyjlvZPliY3mqKHlvI865paH5pysKSc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICdTd2l0Y2ggdG8gdHJlZSBtb2RlIChjdXJyZW50IG1vZGU6IHRleHQpJzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b24udGV4dCA9ICfmoJEnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbi50aXRsZSA9ICfliIfmjaLliLDmoJHmqKHlvI8o5b2T5YmN5qih5byPOuaWh+acrCknO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnU3dpdGNoIHRvIHRleHQgbW9kZSAoY3VycmVudCBtb2RlOiB0cmVlKSc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uLnRleHQgPSAn5paH5pysJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b24udGl0bGUgPSAn5YiH5o2i5Yiw5paH5pys5qih5byPKOW9k+WJjeaooeW8jzrmoJEpJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ1N3aXRjaCB0byB0cmVlIG1vZGUgKGN1cnJlbnQgbW9kZTogdHJlZSknOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbi50ZXh0ID0gJ+agkSc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uLnRpdGxlID0gJ+WIh+aNouWIsOagkeaooeW8jyjlvZPliY3mqKHlvI865qCRKSc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICdGb3JtYXQgSlNPTjogYWRkIHByb3BlciBpbmRlbnRhdGlvbiBhbmQgbmV3IGxpbmVzIChDdHJsK0kpJzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b24udGl0bGUgPSAnSlNPTuagvOW8j+WMljog5re75Yqg6YCC5b2T55qE57yp6L+b5ZKM5paw6KGMIChDdHJsK0kpJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ0NvbXBhY3QgSlNPTjogcmVtb3ZlIGFsbCB3aGl0ZSBzcGFjaW5nIGFuZCBuZXcgbGluZXMgKEN0cmwrU2hpZnQrSSknOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbi50aXRsZSA9ICfljovnvKlKU09OOiDliKDpmaTmiYDmnInnmb3oibLpl7Tot53lkozmlrDooYwgKEN0cmwrU2hpZnQrSSknO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnU2VhcmNoIChDdHJsK0YpJzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b24udGl0bGUgPSAn5pCc57SiIChDdHJsK0YpJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ1VuZG8gKEN0cmwrWiknOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbi50aXRsZSA9ICfmkqTlm54gKEN0cmwrWiknO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnUmVkbyAoQ3RybCtTaGlmdCtaKSc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uLnRpdGxlID0gJ+mHjeivlSAoQ3RybCtTaGlmdCtaKSc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICdFeHBhbmQgYWxsJzpcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b24udGl0bGUgPSAn5YWo6YOo5bGV5byAJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ0NvbGxhcHNlIGFsbCc6XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnV0dG9uLnRpdGxlID0gJ+WFqOmDqOaKmOWPoCc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNlICdPcGVuIGNvbnRleHQgbWVudSAoQ2xpY2sgaGVyZSwgcmlnaHQgY2xpY2sgb24gdGhlIHNlbGVjdGlvbiwgb3IgdXNlIHRoZSBjb250ZXh0IG1lbnUgYnV0dG9uIG9yIEN0cmwrUSknOlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbi50aXRsZSA9ICfmiZPlvIDlhoXlrrnoj5zljZUgKOWNleWHu+atpOWkhO+8jOWPs+mUruWNleWHu+aJgOmAieWGheWuue+8jOaIluS9v+eUqOWGheWuueiPnOWNleaMiemSruaIliBDdHJsK1EpJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBpdGVtcztcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgICAgIGlmIChjaGFuZ2VzLmRhdGEpIHtcclxuICAgICAgICAgICAgdGhpcy5jb250ZW50ID0ge1xyXG4gICAgICAgICAgICAgICAgdGV4dDogdW5kZWZpbmVkLFxyXG4gICAgICAgICAgICAgICAganNvbjogPGFueT50aGlzLmRhdGFcclxuICAgICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICAgIGlmICh0aGlzLl9lZGl0b3IpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2VkaXRvci51cGRhdGUodGhpcy5jb250ZW50KTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZihjaGFuZ2VzLm9wdGlvbnMpe1xyXG4gICAgICAgICAgICBpZih0aGlzLl9lZGl0b3Ipe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fZWRpdG9yPy51cGRhdGVQcm9wcyh0aGlzLm9wdGlvbnMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2VkaXRvcj8uZGVzdHJveSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHNldFNjaGVtYShzY2hlbWE6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHZhbGlkYXRvciA9IGNyZWF0ZUFqdlZhbGlkYXRvcih7IHNjaGVtYSB9KTtcclxuICAgICAgICB0aGlzLl9lZGl0b3I/LnVwZGF0ZVByb3BzKHsgdmFsaWRhdG9yOiB2YWxpZGF0b3IgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0U2VsZWN0aW9uVG9QYXRoKHBhdGhTdHJpbmc6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IHBhdGggPSBwYXJzZUpTT05QYXRoKHBhdGhTdHJpbmcpO1xyXG4gICAgICAgIGNvbnN0IHNlbGVjdGlvbiA9IGNyZWF0ZU11bHRpU2VsZWN0aW9uKHBhdGgsIHBhdGgpO1xyXG5cclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICB0aGlzLl9lZGl0b3I/LnNlbGVjdChzZWxlY3Rpb24pO1xyXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUud2FybignU2V0IHNlbGVjdGlvbiB0byBwYXRoIG5vdCBwb3NzaWJsZTonLCBwYXRoU3RyaW5nLCBlcnJvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMucGF0aENoYW5nZWQuZW1pdChwYXRoU3RyaW5nKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQoKTogSlNPTiB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuX2VkaXRvcikge1xyXG4gICAgICAgICAgICBjb25zdCBjb250ZW50OiBDb250ZW50ID0gdGhpcy5fZWRpdG9yLmdldCgpO1xyXG4gICAgICAgICAgICBpZiAoaXNKU09OQ29udGVudChjb250ZW50KSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgajogYW55ID0gKHRoaXMuX2VkaXRvci5nZXQoKSBhcyBKU09OQ29udGVudCkuanNvbjtcclxuICAgICAgICAgICAgICAgIHJldHVybiBqO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgdDogYW55ID0gKHRoaXMuX2VkaXRvci5nZXQoKSBhcyBUZXh0Q29udGVudCkudGV4dDtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGo6IEpTT04gPSBKU09OLnBhcnNlKHQpO1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGo7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICBzZXQoanNvbjogYW55KTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgdmFsdWU6IEpTT05Db250ZW50ID0ge1xyXG4gICAgICAgICAgICBqc29uOiBqc29uLFxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHRoaXMuX2VkaXRvcj8uc2V0KHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9vblNlbGVjdChzZWxlY3Rpb246IEpTT05FZGl0b3JTZWxlY3Rpb24gfCBudWxsKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKGlzS2V5U2VsZWN0aW9uKHNlbGVjdGlvbikpIHtcclxuICAgICAgICAgICAgY29uc3Qgc3QgPSBzdHJpbmdpZnlKU09OUGF0aCgoc2VsZWN0aW9uIGFzIGFueSkucGF0aCk7XHJcbiAgICAgICAgICAgIHRoaXMucGF0aENoYW5nZWQuZW1pdChzdCk7XHJcbiAgICAgICAgfSBlbHNlIGlmIChpc011bHRpU2VsZWN0aW9uKHNlbGVjdGlvbikpIHtcclxuICAgICAgICAgICAgY29uc3Qgc3QgPSBzdHJpbmdpZnlKU09OUGF0aCgoc2VsZWN0aW9uIGFzIGFueSkuYW5jaG9yUGF0aCk7XHJcbiAgICAgICAgICAgIHRoaXMucGF0aENoYW5nZWQuZW1pdChzdCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59Il19
@@ -36,10 +36,10 @@ export class CmatMasonryComponent {
36
36
  this.distributedColumns[i % this.columns].items.push(this.items[i]);
37
37
  }
38
38
  }
39
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: CmatMasonryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
40
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.9", type: CmatMasonryComponent, isStandalone: true, selector: "cmat-masonry", inputs: { columnsTemplate: "columnsTemplate", columns: "columns", items: "items" }, exportAs: ["cmatMasonry"], usesOnChanges: true, ngImport: i0, template: "<div class=\"flex p-2\">\r\n <ng-container *ngTemplateOutlet=\"columnsTemplate; context: { $implicit: distributedColumns }\"></ng-container>\r\n</div>", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: cmatAnimations, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
39
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: CmatMasonryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
40
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.0", type: CmatMasonryComponent, isStandalone: true, selector: "cmat-masonry", inputs: { columnsTemplate: "columnsTemplate", columns: "columns", items: "items" }, exportAs: ["cmatMasonry"], usesOnChanges: true, ngImport: i0, template: "<div class=\"flex p-2\">\r\n <ng-container *ngTemplateOutlet=\"columnsTemplate; context: { $implicit: distributedColumns }\"></ng-container>\r\n</div>", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: cmatAnimations, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
41
41
  }
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: CmatMasonryComponent, decorators: [{
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: CmatMasonryComponent, decorators: [{
43
43
  type: Component,
44
44
  args: [{ selector: 'cmat-masonry', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, animations: cmatAnimations, exportAs: 'cmatMasonry', standalone: true, imports: [NgTemplateOutlet], template: "<div class=\"flex p-2\">\r\n <ng-container *ngTemplateOutlet=\"columnsTemplate; context: { $implicit: distributedColumns }\"></ng-container>\r\n</div>" }]
45
45
  }], propDecorators: { columnsTemplate: [{
@@ -51,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
51
51
  }], items: [{
52
52
  type: Input
53
53
  }] } });
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFzb25yeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvbWFzb25yeS9tYXNvbnJ5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9tYXNvbnJ5L21hc29ucnkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFnQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUF5QyxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqSixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0saUJBQWlCLENBQUM7O0FBWS9DLE1BQU0sT0FBTyxvQkFBb0I7SUFWakM7UUFhYSxVQUFLLEdBQVUsRUFBRSxDQUFDO1FBQzNCLHVCQUFrQixHQUFVLEVBQUUsQ0FBQztLQW9DbEM7SUFsQ0csV0FBVyxDQUFDLE9BQXNCO1FBQzlCLFVBQVU7UUFDVixJQUFJLFNBQVMsSUFBSSxPQUFPLEVBQUU7WUFDdEIsdUJBQXVCO1lBQ3ZCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1NBQzNCO1FBRUQsUUFBUTtRQUNSLElBQUksT0FBTyxJQUFJLE9BQU8sRUFBRTtZQUNwQix1QkFBdUI7WUFDdkIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7U0FDM0I7SUFDTCxDQUFDO0lBRUQsZUFBZTtRQUNYLDBDQUEwQztRQUMxQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRU8sZ0JBQWdCO1FBQ3BCLDhDQUE4QztRQUM5QyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN6QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsRUFBRSxDQUFDO1lBQzdCLE9BQU87U0FDVjtRQUVELHdDQUF3QztRQUN4QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBQyxLQUFLLEVBQUUsRUFBRSxFQUFDLENBQUMsQ0FBQyxDQUFDO1FBRS9FLGtDQUFrQztRQUNsQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDeEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDdkU7SUFDTCxDQUFDOzhHQXZDUSxvQkFBb0I7a0dBQXBCLG9CQUFvQiw0TUNkakMsMkpBRU0sNENEVVEsZ0JBQWdCLHNJQUhkLGNBQWM7OzJGQUtqQixvQkFBb0I7a0JBVmhDLFNBQVM7K0JBQ0ksY0FBYyxpQkFFVCxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLGNBQWMsWUFDaEIsYUFBYSxjQUNYLElBQUksV0FDUCxDQUFDLGdCQUFnQixDQUFDOzhCQUdBLGVBQWU7c0JBQXpDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNFLE9BQU87c0JBQWpDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNoQixLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZiwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge2NtYXRBbmltYXRpb25zfSBmcm9tICdjbWF0L2FuaW1hdGlvbnMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2NtYXQtbWFzb25yeScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vbWFzb25yeS5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBhbmltYXRpb25zOiBjbWF0QW5pbWF0aW9ucyxcclxuICAgIGV4cG9ydEFzOiAnY21hdE1hc29ucnknLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtOZ1RlbXBsYXRlT3V0bGV0XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ21hdE1hc29ucnlDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQge1xyXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgY29sdW1uc1RlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgY29sdW1uczogbnVtYmVyO1xyXG4gICAgQElucHV0KCkgaXRlbXM6IGFueVtdID0gW107XHJcbiAgICBkaXN0cmlidXRlZENvbHVtbnM6IGFueVtdID0gW107XHJcblxyXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgICAgIC8vIENvbHVtbnNcclxuICAgICAgICBpZiAoJ2NvbHVtbnMnIGluIGNoYW5nZXMpIHtcclxuICAgICAgICAgICAgLy8gRGlzdHJpYnV0ZSB0aGUgaXRlbXNcclxuICAgICAgICAgICAgdGhpcy5fZGlzdHJpYnV0ZUl0ZW1zKCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBJdGVtc1xyXG4gICAgICAgIGlmICgnaXRlbXMnIGluIGNoYW5nZXMpIHtcclxuICAgICAgICAgICAgLy8gRGlzdHJpYnV0ZSB0aGUgaXRlbXNcclxuICAgICAgICAgICAgdGhpcy5fZGlzdHJpYnV0ZUl0ZW1zKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICAvLyBEaXN0cmlidXRlIHRoZSBpdGVtcyBmb3IgdGhlIGZpcnN0IHRpbWVcclxuICAgICAgICB0aGlzLl9kaXN0cmlidXRlSXRlbXMoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9kaXN0cmlidXRlSXRlbXMoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gUmV0dXJuIGFuIGVtcHR5IGFycmF5IGlmIHRoZXJlIGFyZSBubyBpdGVtc1xyXG4gICAgICAgIGlmICh0aGlzLml0ZW1zLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgICAgICB0aGlzLmRpc3RyaWJ1dGVkQ29sdW1ucyA9IFtdO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBQcmVwYXJlIHRoZSBkaXN0cmlidXRlZCBjb2x1bW5zIGFycmF5XHJcbiAgICAgICAgdGhpcy5kaXN0cmlidXRlZENvbHVtbnMgPSBBcnJheS5mcm9tKEFycmF5KHRoaXMuY29sdW1ucyksICgpID0+ICh7aXRlbXM6IFtdfSkpO1xyXG5cclxuICAgICAgICAvLyBEaXN0cmlidXRlIHRoZSBpdGVtcyB0byBjb2x1bW5zXHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLml0ZW1zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZGlzdHJpYnV0ZWRDb2x1bW5zW2kgJSB0aGlzLmNvbHVtbnNdLml0ZW1zLnB1c2godGhpcy5pdGVtc1tpXSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJmbGV4IHAtMlwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbHVtbnNUZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGRpc3RyaWJ1dGVkQ29sdW1ucyB9XCI+PC9uZy1jb250YWluZXI+XHJcbjwvZGl2PiJdfQ==
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFzb25yeS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jbWF0L2NvbXBvbmVudHMvbWFzb25yeS9tYXNvbnJ5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9tYXNvbnJ5L21hc29ucnkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUFnQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUF5QyxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNqSixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0saUJBQWlCLENBQUM7O0FBWS9DLE1BQU0sT0FBTyxvQkFBb0I7SUFWakM7UUFhYSxVQUFLLEdBQVUsRUFBRSxDQUFDO1FBQzNCLHVCQUFrQixHQUFVLEVBQUUsQ0FBQztLQW9DbEM7SUFsQ0csV0FBVyxDQUFDLE9BQXNCO1FBQzlCLFVBQVU7UUFDVixJQUFJLFNBQVMsSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUN2Qix1QkFBdUI7WUFDdkIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDNUIsQ0FBQztRQUVELFFBQVE7UUFDUixJQUFJLE9BQU8sSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUNyQix1QkFBdUI7WUFDdkIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDNUIsQ0FBQztJQUNMLENBQUM7SUFFRCxlQUFlO1FBQ1gsMENBQTBDO1FBQzFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTyxnQkFBZ0I7UUFDcEIsOENBQThDO1FBQzlDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDMUIsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEVBQUUsQ0FBQztZQUM3QixPQUFPO1FBQ1gsQ0FBQztRQUVELHdDQUF3QztRQUN4QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBQyxLQUFLLEVBQUUsRUFBRSxFQUFDLENBQUMsQ0FBQyxDQUFDO1FBRS9FLGtDQUFrQztRQUNsQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUN6QyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4RSxDQUFDO0lBQ0wsQ0FBQzs4R0F2Q1Esb0JBQW9CO2tHQUFwQixvQkFBb0IsNE1DZGpDLDJKQUVNLDRDRFVRLGdCQUFnQixzSUFIZCxjQUFjOzsyRkFLakIsb0JBQW9CO2tCQVZoQyxTQUFTOytCQUNJLGNBQWMsaUJBRVQsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxjQUFjLFlBQ2hCLGFBQWEsY0FDWCxJQUFJLFdBQ1AsQ0FBQyxnQkFBZ0IsQ0FBQzs4QkFHQSxlQUFlO3NCQUF6QyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDRSxPQUFPO3NCQUFqQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDaEIsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcywgVGVtcGxhdGVSZWYsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtjbWF0QW5pbWF0aW9uc30gZnJvbSAnY21hdC9hbmltYXRpb25zJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjbWF0LW1hc29ucnknLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL21hc29ucnkuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgYW5pbWF0aW9uczogY21hdEFuaW1hdGlvbnMsXHJcbiAgICBleHBvcnRBczogJ2NtYXRNYXNvbnJ5JyxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbTmdUZW1wbGF0ZU91dGxldF1cclxufSlcclxuZXhwb3J0IGNsYXNzIENtYXRNYXNvbnJ5Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0IHtcclxuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGNvbHVtbnNUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGNvbHVtbnM6IG51bWJlcjtcclxuICAgIEBJbnB1dCgpIGl0ZW1zOiBhbnlbXSA9IFtdO1xyXG4gICAgZGlzdHJpYnV0ZWRDb2x1bW5zOiBhbnlbXSA9IFtdO1xyXG5cclxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgICAgICAvLyBDb2x1bW5zXHJcbiAgICAgICAgaWYgKCdjb2x1bW5zJyBpbiBjaGFuZ2VzKSB7XHJcbiAgICAgICAgICAgIC8vIERpc3RyaWJ1dGUgdGhlIGl0ZW1zXHJcbiAgICAgICAgICAgIHRoaXMuX2Rpc3RyaWJ1dGVJdGVtcygpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gSXRlbXNcclxuICAgICAgICBpZiAoJ2l0ZW1zJyBpbiBjaGFuZ2VzKSB7XHJcbiAgICAgICAgICAgIC8vIERpc3RyaWJ1dGUgdGhlIGl0ZW1zXHJcbiAgICAgICAgICAgIHRoaXMuX2Rpc3RyaWJ1dGVJdGVtcygpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gRGlzdHJpYnV0ZSB0aGUgaXRlbXMgZm9yIHRoZSBmaXJzdCB0aW1lXHJcbiAgICAgICAgdGhpcy5fZGlzdHJpYnV0ZUl0ZW1zKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfZGlzdHJpYnV0ZUl0ZW1zKCk6IHZvaWQge1xyXG4gICAgICAgIC8vIFJldHVybiBhbiBlbXB0eSBhcnJheSBpZiB0aGVyZSBhcmUgbm8gaXRlbXNcclxuICAgICAgICBpZiAodGhpcy5pdGVtcy5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgICAgdGhpcy5kaXN0cmlidXRlZENvbHVtbnMgPSBbXTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gUHJlcGFyZSB0aGUgZGlzdHJpYnV0ZWQgY29sdW1ucyBhcnJheVxyXG4gICAgICAgIHRoaXMuZGlzdHJpYnV0ZWRDb2x1bW5zID0gQXJyYXkuZnJvbShBcnJheSh0aGlzLmNvbHVtbnMpLCAoKSA9PiAoe2l0ZW1zOiBbXX0pKTtcclxuXHJcbiAgICAgICAgLy8gRGlzdHJpYnV0ZSB0aGUgaXRlbXMgdG8gY29sdW1uc1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5pdGVtcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgICAgICB0aGlzLmRpc3RyaWJ1dGVkQ29sdW1uc1tpICUgdGhpcy5jb2x1bW5zXS5pdGVtcy5wdXNoKHRoaXMuaXRlbXNbaV0pO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBwLTJcIj5cclxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb2x1bW5zVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBkaXN0cmlidXRlZENvbHVtbnMgfVwiPjwvbmctY29udGFpbmVyPlxyXG48L2Rpdj4iXX0=
@@ -127,15 +127,12 @@ export class CmatMaterialColorPickerComponent {
127
127
  this.view = 'hues';
128
128
  }
129
129
  }
130
- trackByFn(index, item) {
131
- return index || item;
132
- }
133
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: CmatMaterialColorPickerComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
134
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.9", type: CmatMaterialColorPickerComponent, isStandalone: true, selector: "cmat-material-color-picker", inputs: { color: "color", title: "title", readonly: "readonly" }, outputs: { colorChanged: "colorChanged" }, providers: [CMAT_MATERIAL_COLOR_PICKER_VALUE_ACCESSOR], exportAs: ["cmatMaterialColorPicker"], ngImport: i0, template: "<div class=\"rounded\" [ngClass]=\"selectedColor.color\">\n <mat-select value=\"init\" [disableOptionCentering]=\"true\" [hideSingleSelectionIndicator]=\"true\" [disabled]=\"readonly\"\n (openedChange)=\"onMenuOpen($event)\" panelClass=\"min-w-64\">\n <mat-select-trigger class=\"flex p-1\">\n <mat-icon [svgIcon]=\"'heroicons_outline:paint-brush'\"></mat-icon>\n </mat-select-trigger>\n\n <header [ngClass]=\"'accent'\" class=\"shadow flex flex-row content-between justify-between p-2\">\n <button type=\"button\" mat-icon-button class=\"secondary-text\" [class.invisible]=\"view === 'palettes'\"\n (click)=\"goToPalettesView()\" aria-label=\"\u8C03\u8272\u677F\">\n <mat-icon svgIcon=\"mat_outline:arrow_back\"></mat-icon>\n </button>\n <span class=\"align-middle leading-loose text-xl font-bold\">{{title}}</span>\n <button type=\"button\" mat-icon-button class=\"remove-color-button secondary-text\" (click)=\"removeColor()\"\n aria-label=\"\u79FB\u9664\u989C\u8272\" matTooltip=\"\u79FB\u9664\u989C\u8272\">\n <mat-icon color=\"warn\" [svgIcon]=\"'mat_outline:cleaning_services'\"></mat-icon>\n </button>\n </header>\n\n <div class=\"flex flex-wrap w-60 m-2\">\n <mat-option value=\"init\" class=\"hidden\">\u521D\u59CB\u5316</mat-option>\n <div>\n @switch (view) {\n @case ('palettes') {\n <div>\n <div class=\"flex flex-row flex-wrap justify-start content-start colors\">\n @for (palette of palettes; track trackByFn($index, palette)) {\n <div role=\"presentation\"\n class=\"cursor-pointer\" (click)=\"selectPalette(palette)\">\n <mat-option\n class=\"relative flex w-12 h-12 p-0 pointer-events-none rounded-full bg-transparent hover:opacity-50\"\n [value]=\"selectedPalette\">\n @if (selectedColor.color===palette + '-' + selectedHue) {\n <mat-icon class=\"absolute m-3 text-white\"\n [svgIcon]=\"'heroicons_outline:check'\"></mat-icon>\n }\n <span class=\"flex w-10 h-10 m-1 rounded-full\"\n [ngClass]=\"palette + '-' + selectedHue\"></span>\n </mat-option>\n </div>\n }\n </div>\n </div>\n }\n @case ('hues') {\n <div>\n <div class=\"flex flex-row flex-wrap justify-start content-start colors\">\n @for (hue of hues; track trackByFn($index, hue)) {\n <div role=\"presentation\" class=\"cursor-pointer\"\n (click)=\"selectHue(hue)\">\n <mat-option\n class=\"relative flex w-12 h-12 p-0 pointer-events-none rounded-full bg-transparent hover:opacity-50\"\n [value]=\"selectedHue\">\n @if (selectedColor.color===selectedPalette + '-' + hue) {\n <mat-icon class=\"absolute m-3 text-white\"\n [svgIcon]=\"'heroicons_outline:check'\"></mat-icon>\n }\n <span class=\"flex w-10 h-10 m-1 rounded-full\"\n [ngClass]=\"selectedPalette + '-' + hue\"></span>\n </mat-option>\n </div>\n }\n </div>\n </div>\n }\n }\n </div>\n </div>\n </mat-select>\n</div>", styles: ["cmat-material-color-picker .mat-mdc-select-arrow-wrapper{display:none!important}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i1.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: i1.MatSelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i2.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }], animations: cmatAnimations, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
130
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: CmatMaterialColorPickerComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
131
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.0", type: CmatMaterialColorPickerComponent, isStandalone: true, selector: "cmat-material-color-picker", inputs: { color: "color", title: "title", readonly: "readonly" }, outputs: { colorChanged: "colorChanged" }, providers: [CMAT_MATERIAL_COLOR_PICKER_VALUE_ACCESSOR], exportAs: ["cmatMaterialColorPicker"], ngImport: i0, template: "<div class=\"rounded\" [ngClass]=\"selectedColor.color\">\n <mat-select value=\"init\" [disableOptionCentering]=\"true\" [hideSingleSelectionIndicator]=\"true\" [disabled]=\"readonly\"\n (openedChange)=\"onMenuOpen($event)\" panelClass=\"min-w-64\">\n <mat-select-trigger class=\"flex p-1\">\n <mat-icon [svgIcon]=\"'heroicons_outline:paint-brush'\"></mat-icon>\n </mat-select-trigger>\n\n <header [ngClass]=\"'accent'\" class=\"shadow flex flex-row content-between justify-between p-2\">\n <button type=\"button\" mat-icon-button class=\"secondary-text\" [class.invisible]=\"view === 'palettes'\"\n (click)=\"goToPalettesView()\" aria-label=\"\u8C03\u8272\u677F\">\n <mat-icon svgIcon=\"mat_outline:arrow_back\"></mat-icon>\n </button>\n <span class=\"align-middle leading-loose text-xl font-bold\">{{title}}</span>\n <button type=\"button\" mat-icon-button class=\"remove-color-button secondary-text\" (click)=\"removeColor()\"\n aria-label=\"\u79FB\u9664\u989C\u8272\" matTooltip=\"\u79FB\u9664\u989C\u8272\">\n <mat-icon color=\"warn\" [svgIcon]=\"'mat_outline:cleaning_services'\"></mat-icon>\n </button>\n </header>\n\n <div class=\"flex flex-wrap w-60 m-2\">\n <mat-option value=\"init\" class=\"hidden\">\u521D\u59CB\u5316</mat-option>\n <div>\n @switch (view) {\n @case ('palettes') {\n <div>\n <div class=\"flex flex-row flex-wrap justify-start content-start colors\">\n @for (palette of palettes; track $index) {\n <div role=\"presentation\"\n class=\"cursor-pointer\" (click)=\"selectPalette(palette)\">\n <mat-option\n class=\"relative flex w-12 h-12 p-0 pointer-events-none rounded-full bg-transparent hover:opacity-50\"\n [value]=\"selectedPalette\">\n @if (selectedColor.color===palette + '-' + selectedHue) {\n <mat-icon class=\"absolute m-3 text-white\"\n [svgIcon]=\"'heroicons_outline:check'\"></mat-icon>\n }\n <span class=\"flex w-10 h-10 m-1 rounded-full\"\n [ngClass]=\"palette + '-' + selectedHue\"></span>\n </mat-option>\n </div>\n }\n </div>\n </div>\n }\n @case ('hues') {\n <div>\n <div class=\"flex flex-row flex-wrap justify-start content-start colors\">\n @for (hue of hues; track $index) {\n <div role=\"presentation\" class=\"cursor-pointer\"\n (click)=\"selectHue(hue)\">\n <mat-option\n class=\"relative flex w-12 h-12 p-0 pointer-events-none rounded-full bg-transparent hover:opacity-50\"\n [value]=\"selectedHue\">\n @if (selectedColor.color===selectedPalette + '-' + hue) {\n <mat-icon class=\"absolute m-3 text-white\"\n [svgIcon]=\"'heroicons_outline:check'\"></mat-icon>\n }\n <span class=\"flex w-10 h-10 m-1 rounded-full\"\n [ngClass]=\"selectedPalette + '-' + hue\"></span>\n </mat-option>\n </div>\n }\n </div>\n </div>\n }\n }\n </div>\n </div>\n </mat-select>\n</div>", styles: ["cmat-material-color-picker .mat-mdc-select-arrow-wrapper{display:none!important}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i1.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "directive", type: i1.MatSelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i2.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }], animations: cmatAnimations, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
135
132
  }
136
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: CmatMaterialColorPickerComponent, decorators: [{
133
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: CmatMaterialColorPickerComponent, decorators: [{
137
134
  type: Component,
138
- args: [{ selector: 'cmat-material-color-picker', animations: cmatAnimations, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'cmatMaterialColorPicker', providers: [CMAT_MATERIAL_COLOR_PICKER_VALUE_ACCESSOR], standalone: true, imports: [NgClass, MatSelectModule, MatIconModule, MatButtonModule, MatTooltipModule], template: "<div class=\"rounded\" [ngClass]=\"selectedColor.color\">\n <mat-select value=\"init\" [disableOptionCentering]=\"true\" [hideSingleSelectionIndicator]=\"true\" [disabled]=\"readonly\"\n (openedChange)=\"onMenuOpen($event)\" panelClass=\"min-w-64\">\n <mat-select-trigger class=\"flex p-1\">\n <mat-icon [svgIcon]=\"'heroicons_outline:paint-brush'\"></mat-icon>\n </mat-select-trigger>\n\n <header [ngClass]=\"'accent'\" class=\"shadow flex flex-row content-between justify-between p-2\">\n <button type=\"button\" mat-icon-button class=\"secondary-text\" [class.invisible]=\"view === 'palettes'\"\n (click)=\"goToPalettesView()\" aria-label=\"\u8C03\u8272\u677F\">\n <mat-icon svgIcon=\"mat_outline:arrow_back\"></mat-icon>\n </button>\n <span class=\"align-middle leading-loose text-xl font-bold\">{{title}}</span>\n <button type=\"button\" mat-icon-button class=\"remove-color-button secondary-text\" (click)=\"removeColor()\"\n aria-label=\"\u79FB\u9664\u989C\u8272\" matTooltip=\"\u79FB\u9664\u989C\u8272\">\n <mat-icon color=\"warn\" [svgIcon]=\"'mat_outline:cleaning_services'\"></mat-icon>\n </button>\n </header>\n\n <div class=\"flex flex-wrap w-60 m-2\">\n <mat-option value=\"init\" class=\"hidden\">\u521D\u59CB\u5316</mat-option>\n <div>\n @switch (view) {\n @case ('palettes') {\n <div>\n <div class=\"flex flex-row flex-wrap justify-start content-start colors\">\n @for (palette of palettes; track trackByFn($index, palette)) {\n <div role=\"presentation\"\n class=\"cursor-pointer\" (click)=\"selectPalette(palette)\">\n <mat-option\n class=\"relative flex w-12 h-12 p-0 pointer-events-none rounded-full bg-transparent hover:opacity-50\"\n [value]=\"selectedPalette\">\n @if (selectedColor.color===palette + '-' + selectedHue) {\n <mat-icon class=\"absolute m-3 text-white\"\n [svgIcon]=\"'heroicons_outline:check'\"></mat-icon>\n }\n <span class=\"flex w-10 h-10 m-1 rounded-full\"\n [ngClass]=\"palette + '-' + selectedHue\"></span>\n </mat-option>\n </div>\n }\n </div>\n </div>\n }\n @case ('hues') {\n <div>\n <div class=\"flex flex-row flex-wrap justify-start content-start colors\">\n @for (hue of hues; track trackByFn($index, hue)) {\n <div role=\"presentation\" class=\"cursor-pointer\"\n (click)=\"selectHue(hue)\">\n <mat-option\n class=\"relative flex w-12 h-12 p-0 pointer-events-none rounded-full bg-transparent hover:opacity-50\"\n [value]=\"selectedHue\">\n @if (selectedColor.color===selectedPalette + '-' + hue) {\n <mat-icon class=\"absolute m-3 text-white\"\n [svgIcon]=\"'heroicons_outline:check'\"></mat-icon>\n }\n <span class=\"flex w-10 h-10 m-1 rounded-full\"\n [ngClass]=\"selectedPalette + '-' + hue\"></span>\n </mat-option>\n </div>\n }\n </div>\n </div>\n }\n }\n </div>\n </div>\n </mat-select>\n</div>", styles: ["cmat-material-color-picker .mat-mdc-select-arrow-wrapper{display:none!important}\n"] }]
135
+ args: [{ selector: 'cmat-material-color-picker', animations: cmatAnimations, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'cmatMaterialColorPicker', providers: [CMAT_MATERIAL_COLOR_PICKER_VALUE_ACCESSOR], standalone: true, imports: [NgClass, MatSelectModule, MatIconModule, MatButtonModule, MatTooltipModule], template: "<div class=\"rounded\" [ngClass]=\"selectedColor.color\">\n <mat-select value=\"init\" [disableOptionCentering]=\"true\" [hideSingleSelectionIndicator]=\"true\" [disabled]=\"readonly\"\n (openedChange)=\"onMenuOpen($event)\" panelClass=\"min-w-64\">\n <mat-select-trigger class=\"flex p-1\">\n <mat-icon [svgIcon]=\"'heroicons_outline:paint-brush'\"></mat-icon>\n </mat-select-trigger>\n\n <header [ngClass]=\"'accent'\" class=\"shadow flex flex-row content-between justify-between p-2\">\n <button type=\"button\" mat-icon-button class=\"secondary-text\" [class.invisible]=\"view === 'palettes'\"\n (click)=\"goToPalettesView()\" aria-label=\"\u8C03\u8272\u677F\">\n <mat-icon svgIcon=\"mat_outline:arrow_back\"></mat-icon>\n </button>\n <span class=\"align-middle leading-loose text-xl font-bold\">{{title}}</span>\n <button type=\"button\" mat-icon-button class=\"remove-color-button secondary-text\" (click)=\"removeColor()\"\n aria-label=\"\u79FB\u9664\u989C\u8272\" matTooltip=\"\u79FB\u9664\u989C\u8272\">\n <mat-icon color=\"warn\" [svgIcon]=\"'mat_outline:cleaning_services'\"></mat-icon>\n </button>\n </header>\n\n <div class=\"flex flex-wrap w-60 m-2\">\n <mat-option value=\"init\" class=\"hidden\">\u521D\u59CB\u5316</mat-option>\n <div>\n @switch (view) {\n @case ('palettes') {\n <div>\n <div class=\"flex flex-row flex-wrap justify-start content-start colors\">\n @for (palette of palettes; track $index) {\n <div role=\"presentation\"\n class=\"cursor-pointer\" (click)=\"selectPalette(palette)\">\n <mat-option\n class=\"relative flex w-12 h-12 p-0 pointer-events-none rounded-full bg-transparent hover:opacity-50\"\n [value]=\"selectedPalette\">\n @if (selectedColor.color===palette + '-' + selectedHue) {\n <mat-icon class=\"absolute m-3 text-white\"\n [svgIcon]=\"'heroicons_outline:check'\"></mat-icon>\n }\n <span class=\"flex w-10 h-10 m-1 rounded-full\"\n [ngClass]=\"palette + '-' + selectedHue\"></span>\n </mat-option>\n </div>\n }\n </div>\n </div>\n }\n @case ('hues') {\n <div>\n <div class=\"flex flex-row flex-wrap justify-start content-start colors\">\n @for (hue of hues; track $index) {\n <div role=\"presentation\" class=\"cursor-pointer\"\n (click)=\"selectHue(hue)\">\n <mat-option\n class=\"relative flex w-12 h-12 p-0 pointer-events-none rounded-full bg-transparent hover:opacity-50\"\n [value]=\"selectedHue\">\n @if (selectedColor.color===selectedPalette + '-' + hue) {\n <mat-icon class=\"absolute m-3 text-white\"\n [svgIcon]=\"'heroicons_outline:check'\"></mat-icon>\n }\n <span class=\"flex w-10 h-10 m-1 rounded-full\"\n [ngClass]=\"selectedPalette + '-' + hue\"></span>\n </mat-option>\n </div>\n }\n </div>\n </div>\n }\n }\n </div>\n </div>\n </mat-select>\n</div>", styles: ["cmat-material-color-picker .mat-mdc-select-arrow-wrapper{display:none!important}\n"] }]
139
136
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { colorChanged: [{
140
137
  type: Output
141
138
  }], color: [{
@@ -145,4 +142,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
145
142
  }], readonly: [{
146
143
  type: Input
147
144
  }] } });
148
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtY29sb3ItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9tYXRlcmlhbC1jb2xvci1waWNrZXIvbWF0ZXJpYWwtY29sb3ItcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9tYXRlcmlhbC1jb2xvci1waWNrZXIvbWF0ZXJpYWwtY29sb3ItcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEosT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7Ozs7O0FBRzFDLE1BQU0sQ0FBQyxNQUFNLHlDQUF5QyxHQUFRO0lBQzFELE9BQU8sRUFBRSxpQkFBaUI7SUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQ0FBZ0MsQ0FBQztJQUMvRCxLQUFLLEVBQUUsSUFBSTtDQUNk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Q0FBQyxDQUFDO1FBRTVDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRUQsZ0JBQWdCO1FBQ1osSUFBSSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUM7SUFDM0IsQ0FBQztJQUVELFVBQVUsQ0FBQyxNQUFlO1FBQ3RCLElBQUksTUFBTSxFQUFFO1lBQ1IsSUFBSSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUM7U0FDdEI7SUFDTCxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWEsRUFBRSxJQUFTO1FBQzlCLE9BQU8sS0FBSyxJQUFJLElBQUksQ0FBQztJQUN6QixDQUFDOzhHQXZLUSxnQ0FBZ0M7a0dBQWhDLGdDQUFnQyxzTEFKOUIsQ0FBQyx5Q0FBeUMsQ0FBQyxpRUMxQjFELDgvR0FxRU0sNElEekNRLE9BQU8sbUZBQUUsZUFBZSxxd0JBQUUsYUFBYSxtTEFBRSxlQUFlLDJJQUFFLGdCQUFnQiwrU0FOeEUsY0FBYzs7MkZBUWpCLGdDQUFnQztrQkFaNUMsU0FBUzsrQkFDSSw0QkFBNEIsY0FHMUIsY0FBYyxpQkFDWCxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDLHlCQUF5QixhQUN4QixDQUFDLHlDQUF5QyxDQUFDLGNBQzFDLElBQUksV0FDUCxDQUFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsQ0FBQztzRkFLckYsWUFBWTtzQkFEWCxNQUFNO2dCQXFDSCxLQUFLO3NCQURSLEtBQUs7Z0JBNEJGLEtBQUs7c0JBRFIsS0FBSztnQkFXRixRQUFRO3NCQURYLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgZm9yd2FyZFJlZiwgSW5wdXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1hdFNlbGVjdE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NlbGVjdCc7XHJcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcclxuaW1wb3J0IHsgY21hdEFuaW1hdGlvbnMgfSBmcm9tICdjbWF0L2FuaW1hdGlvbnMnO1xyXG5pbXBvcnQgeyBiYXNlQ29sb3JzIH0gZnJvbSAnLi9iYXNlLWNvbG9yJztcclxuaW1wb3J0IHsgQ21hdFNlbGVjdGVkQ29sb3IgfSBmcm9tICcuL3NlbGVjdGVkLWNvbG9yJztcclxuXHJcbmV4cG9ydCBjb25zdCBDTUFUX01BVEVSSUFMX0NPTE9SX1BJQ0tFUl9WQUxVRV9BQ0NFU1NPUjogYW55ID0ge1xyXG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDbWF0TWF0ZXJpYWxDb2xvclBpY2tlckNvbXBvbmVudCksXHJcbiAgICBtdWx0aTogdHJ1ZVxyXG59O1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdjbWF0LW1hdGVyaWFsLWNvbG9yLXBpY2tlcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vbWF0ZXJpYWwtY29sb3ItcGlja2VyLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL21hdGVyaWFsLWNvbG9yLXBpY2tlci5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgYW5pbWF0aW9uczogY21hdEFuaW1hdGlvbnMsXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbiAgICBleHBvcnRBczogJ2NtYXRNYXRlcmlhbENvbG9yUGlja2VyJyxcclxuICAgIHByb3ZpZGVyczogW0NNQVRfTUFURVJJQUxfQ09MT1JfUElDS0VSX1ZBTFVFX0FDQ0VTU09SXSxcclxuICAgIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgICBpbXBvcnRzOiBbTmdDbGFzcywgTWF0U2VsZWN0TW9kdWxlLCBNYXRJY29uTW9kdWxlLCBNYXRCdXR0b25Nb2R1bGUsIE1hdFRvb2x0aXBNb2R1bGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0TWF0ZXJpYWxDb2xvclBpY2tlckNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICAgIC8vIENvbG9yIGNoYW5nZWRcclxuICAgIEBPdXRwdXQoKVxyXG4gICAgY29sb3JDaGFuZ2VkOiBFdmVudEVtaXR0ZXI8YW55PjtcclxuXHJcbiAgICBwYWxldHRlczogc3RyaW5nW107XHJcbiAgICBodWVzOiBzdHJpbmdbXTtcclxuICAgIHZpZXc6IHN0cmluZztcclxuICAgIHNlbGVjdGVkQ29sb3I6IENtYXRTZWxlY3RlZENvbG9yO1xyXG4gICAgc2VsZWN0ZWRQYWxldHRlOiBzdHJpbmc7XHJcbiAgICBzZWxlY3RlZEh1ZTogc3RyaW5nO1xyXG5cclxuICAgIC8vIFByaXZhdGVcclxuICAgIHByaXZhdGUgX2NvbG9yOiBzdHJpbmc7XHJcbiAgICBwcml2YXRlIF90aXRsZTogc3RyaW5nO1xyXG4gICAgcHJpdmF0ZSBfcmVhZG9ubHk6Ym9vbGVhbjtcclxuICAgIHByaXZhdGUgX21vZGVsQ2hhbmdlOiAodmFsdWU6IGFueSkgPT4gdm9pZDtcclxuICAgIHByaXZhdGUgX21vZGVsVG91Y2hlZDogKHZhbHVlOiBhbnkpID0+IHZvaWQ7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XHJcbiAgICAgICAgLy8gU2V0IHRoZSBkZWZhdWx0c1xyXG4gICAgICAgIHRoaXMuY29sb3JDaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gICAgICAgIHRoaXMucGFsZXR0ZXMgPSBiYXNlQ29sb3JzO1xyXG4gICAgICAgIHRoaXMuaHVlcyA9IFsnNTAnLCAnMTAwJywgJzIwMCcsICczMDAnLCAnNDAwJywgJzUwMCcsICc2MDAnLCAnNzAwJywgJzgwMCcsICc5MDAnXTtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkSHVlID0gJzUwMCc7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZFBhbGV0dGUgPSAnYmctaW5kaWdvJztcclxuICAgICAgICB0aGlzLnZpZXcgPSAncGFsZXR0ZXMnO1xyXG5cclxuICAgICAgICB0aGlzLl9tb2RlbENoYW5nZSA9ICgpOiBhbnkgPT4geyB9O1xyXG4gICAgICAgIHRoaXMuX21vZGVsVG91Y2hlZCA9ICgpOiBhbnkgPT4geyB9O1xyXG5cclxuICAgICAgICB0aGlzLnVwZGF0ZVNlbGVjdGVkQ29sb3IoKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXQgY29sb3IoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fY29sb3I7XHJcbiAgICB9XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHNldCBjb2xvcih2YWx1ZSkge1xyXG4gICAgICAgIGlmICghdmFsdWUgfHwgdmFsdWUgPT09ICcnIHx8IHRoaXMuX2NvbG9yID09PSB2YWx1ZSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBTcGxpdCB0aGUgY29sb3IgdmFsdWUgKGJnLXJlZC00MDAsIGJnLWJsdWUtNTAwIGV0Yy4pXHJcbiAgICAgICAgY29uc3QgY29sb3JQYXJ0cyA9IHZhbHVlLnNwbGl0KCctJyk7XHJcblxyXG4gICAgICAgIC8vIFRha2UgdGhlIHZlcnkgbGFzdCBwYXJ0IGFzIHRoZSBzZWxlY3RlZCBodWUgdmFsdWVcclxuICAgICAgICB0aGlzLnNlbGVjdGVkSHVlID0gY29sb3JQYXJ0c1tjb2xvclBhcnRzLmxlbmd0aCAtIDFdO1xyXG5cclxuICAgICAgICAvLyBSZW1vdmUgdGhlIGxhc3QgcGFydFxyXG4gICAgICAgIGNvbG9yUGFydHMucG9wKCk7XHJcblxyXG4gICAgICAgIC8vIFJlam9pbiB0aGUgcmVtYWluaW5nIHBhcnRzIGFzIHRoZSBzZWxlY3RlZCBwYWxldHRlIG5hbWVcclxuICAgICAgICB0aGlzLnNlbGVjdGVkUGFsZXR0ZSA9IGNvbG9yUGFydHMuam9pbignLScpO1xyXG5cclxuICAgICAgICAvLyBVcGRhdGUgdGhlIHNlbGVjdGVkIGNvbG9yXHJcbiAgICAgICAgdGhpcy51cGRhdGVTZWxlY3RlZENvbG9yKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9tZW1iZXItb3JkZXJpbmdcclxuICAgIGdldCB0aXRsZSgpOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl90aXRsZTtcclxuICAgIH1cclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgc2V0IHRpdGxlKHZhbHVlKSB7XHJcbiAgICAgICAgdGhpcy5fdGl0bGUgPSB2YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L21lbWJlci1vcmRlcmluZ1xyXG4gICAgZ2V0IHJlYWRvbmx5KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9yZWFkb25seTtcclxuICAgIH1cclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgc2V0IHJlYWRvbmx5KHZhbHVlKSB7XHJcbiAgICAgICAgdGhpcy5fcmVhZG9ubHkgPSB2YWx1ZTtcclxuICAgIH1cclxuICAgIFxyXG5cclxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX21vZGVsQ2hhbmdlID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX21vZGVsVG91Y2hlZCA9IGZuO1xyXG4gICAgfVxyXG5cclxuICAgIHdyaXRlVmFsdWUoY29sb3I6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIC8vIFJldHVybiBpZiBudWxsXHJcbiAgICAgICAgaWYgKCFjb2xvcikge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBTZXQgdGhlIGNvbG9yXHJcbiAgICAgICAgdGhpcy5jb2xvciA9IGNvbG9yO1xyXG4gICAgfVxyXG5cclxuICAgIHNlbGVjdFBhbGV0dGUocGFsZXR0ZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICAgICAgLy8gR28gdG8gJ2h1ZXMnIHZpZXdcclxuICAgICAgICB0aGlzLnZpZXcgPSAnaHVlcyc7XHJcblxyXG4gICAgICAgIC8vIFVwZGF0ZSB0aGUgc2VsZWN0ZWQgcGFsZXR0ZVxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRQYWxldHRlID0gcGFsZXR0ZTtcclxuXHJcbiAgICAgICAgLy8gVXBkYXRlIHRoZSBzZWxlY3RlZCBjb2xvclxyXG4gICAgICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRDb2xvcigpO1xyXG4gICAgfVxyXG5cclxuICAgIHNlbGVjdEh1ZShodWU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIC8vIFVwZGF0ZSB0aGUgc2VsZWN0ZWQgaHVlXHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZEh1ZSA9IGh1ZTtcclxuXHJcbiAgICAgICAgLy8gVXBkYXRlIHRoZSBzZWxlY3RlZCBjb2xvclxyXG4gICAgICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRDb2xvcigpO1xyXG4gICAgfVxyXG5cclxuICAgIHJlbW92ZUNvbG9yKCk6IHZvaWQge1xyXG4gICAgICAgIC8vIFJldHVybiB0byB0aGUgJ3BhbGV0dGVzJyB2aWV3XHJcbiAgICAgICAgdGhpcy52aWV3ID0gJ3BhbGV0dGVzJztcclxuXHJcbiAgICAgICAgLy8gQ2xlYXIgdGhlIHNlbGVjdGVkIHBhbGV0dGUgYW5kIGh1ZVxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRQYWxldHRlID0gJ2JnLWluZGlnbyc7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZEh1ZSA9ICc1MDAnO1xyXG5cclxuICAgICAgICAvLyBVcGRhdGUgdGhlIHNlbGVjdGVkIGNvbG9yXHJcbiAgICAgICAgdGhpcy51cGRhdGVTZWxlY3RlZENvbG9yKCk7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlU2VsZWN0ZWRDb2xvcigpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZENvbG9yICYmIHRoaXMuc2VsZWN0ZWRDb2xvci5wYWxldHRlID09PSB0aGlzLnNlbGVjdGVkUGFsZXR0ZSAmJiB0aGlzLnNlbGVjdGVkQ29sb3IuaHVlID09PSB0aGlzLnNlbGVjdGVkSHVlKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIFNldCB0aGUgc2VsZWN0ZWQgY29sb3Igb2JqZWN0XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZENvbG9yID0ge1xyXG4gICAgICAgICAgICBwYWxldHRlOiB0aGlzLnNlbGVjdGVkUGFsZXR0ZSxcclxuICAgICAgICAgICAgaHVlOiB0aGlzLnNlbGVjdGVkSHVlLFxyXG4gICAgICAgICAgICBjb2xvcjogdGhpcy5zZWxlY3RlZFBhbGV0dGUgKyAnLScgKyB0aGlzLnNlbGVjdGVkSHVlXHJcbiAgICAgICAgfTtcclxuXHJcbiAgICAgICAgdGhpcy5fY29sb3IgPSB0aGlzLnNlbGVjdGVkQ29sb3IuY29sb3I7XHJcblxyXG4gICAgICAgIHRoaXMuY29sb3JDaGFuZ2VkLmVtaXQodGhpcy5zZWxlY3RlZENvbG9yKTtcclxuXHJcbiAgICAgICAgLy8gTWFyayB0aGUgbW9kZWwgYXMgdG91Y2hlZFxyXG4gICAgICAgIHRoaXMuX21vZGVsVG91Y2hlZCh0aGlzLnNlbGVjdGVkQ29sb3IuY29sb3IpO1xyXG5cclxuICAgICAgICAvLyBVcGRhdGUgdGhlIG1vZGVsXHJcbiAgICAgICAgdGhpcy5fbW9kZWxDaGFuZ2UodGhpcy5zZWxlY3RlZENvbG9yLmNvbG9yKTtcclxuXHJcbiAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9XHJcblxyXG4gICAgZ29Ub1BhbGV0dGVzVmlldygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnZpZXcgPSAncGFsZXR0ZXMnO1xyXG4gICAgfVxyXG5cclxuICAgIG9uTWVudU9wZW4ob3BlbmVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKG9wZW5lZCkge1xyXG4gICAgICAgICAgICB0aGlzLnZpZXcgPSAnaHVlcyc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRyYWNrQnlGbihpbmRleDogbnVtYmVyLCBpdGVtOiBhbnkpOiBhbnkge1xyXG4gICAgICAgIHJldHVybiBpbmRleCB8fCBpdGVtO1xyXG4gICAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJyb3VuZGVkXCIgW25nQ2xhc3NdPVwic2VsZWN0ZWRDb2xvci5jb2xvclwiPlxuICA8bWF0LXNlbGVjdCB2YWx1ZT1cImluaXRcIiBbZGlzYWJsZU9wdGlvbkNlbnRlcmluZ109XCJ0cnVlXCIgW2hpZGVTaW5nbGVTZWxlY3Rpb25JbmRpY2F0b3JdPVwidHJ1ZVwiIFtkaXNhYmxlZF09XCJyZWFkb25seVwiXG4gICAgKG9wZW5lZENoYW5nZSk9XCJvbk1lbnVPcGVuKCRldmVudClcIiBwYW5lbENsYXNzPVwibWluLXctNjRcIj5cbiAgICA8bWF0LXNlbGVjdC10cmlnZ2VyIGNsYXNzPVwiZmxleCBwLTFcIj5cbiAgICAgIDxtYXQtaWNvbiBbc3ZnSWNvbl09XCInaGVyb2ljb25zX291dGxpbmU6cGFpbnQtYnJ1c2gnXCI+PC9tYXQtaWNvbj5cbiAgICA8L21hdC1zZWxlY3QtdHJpZ2dlcj5cblxuICAgIDxoZWFkZXIgW25nQ2xhc3NdPVwiJ2FjY2VudCdcIiBjbGFzcz1cInNoYWRvdyBmbGV4IGZsZXgtcm93IGNvbnRlbnQtYmV0d2VlbiBqdXN0aWZ5LWJldHdlZW4gcC0yXCI+XG4gICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBtYXQtaWNvbi1idXR0b24gY2xhc3M9XCJzZWNvbmRhcnktdGV4dFwiIFtjbGFzcy5pbnZpc2libGVdPVwidmlldyA9PT0gJ3BhbGV0dGVzJ1wiXG4gICAgICAgIChjbGljayk9XCJnb1RvUGFsZXR0ZXNWaWV3KClcIiBhcmlhLWxhYmVsPVwi6LCD6Imy5p2/XCI+XG4gICAgICAgIDxtYXQtaWNvbiBzdmdJY29uPVwibWF0X291dGxpbmU6YXJyb3dfYmFja1wiPjwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxzcGFuIGNsYXNzPVwiYWxpZ24tbWlkZGxlIGxlYWRpbmctbG9vc2UgdGV4dC14bCBmb250LWJvbGRcIj57e3RpdGxlfX08L3NwYW4+XG4gICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBtYXQtaWNvbi1idXR0b24gY2xhc3M9XCJyZW1vdmUtY29sb3ItYnV0dG9uIHNlY29uZGFyeS10ZXh0XCIgKGNsaWNrKT1cInJlbW92ZUNvbG9yKClcIlxuICAgICAgICBhcmlhLWxhYmVsPVwi56e76Zmk6aKc6ImyXCIgbWF0VG9vbHRpcD1cIuenu+mZpOminOiJslwiPlxuICAgICAgICA8bWF0LWljb24gY29sb3I9XCJ3YXJuXCIgW3N2Z0ljb25dPVwiJ21hdF9vdXRsaW5lOmNsZWFuaW5nX3NlcnZpY2VzJ1wiPjwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2hlYWRlcj5cblxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtd3JhcCB3LTYwIG0tMlwiPlxuICAgICAgPG1hdC1vcHRpb24gdmFsdWU9XCJpbml0XCIgY2xhc3M9XCJoaWRkZW5cIj7liJ3lp4vljJY8L21hdC1vcHRpb24+XG4gICAgICA8ZGl2PlxuICAgICAgICBAc3dpdGNoICh2aWV3KSB7XG4gICAgICAgICAgQGNhc2UgKCdwYWxldHRlcycpIHtcbiAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGZsZXgtd3JhcCBqdXN0aWZ5LXN0YXJ0IGNvbnRlbnQtc3RhcnQgY29sb3JzXCI+XG4gICAgICAgICAgICAgICAgQGZvciAocGFsZXR0ZSBvZiBwYWxldHRlczsgdHJhY2sgdHJhY2tCeUZuKCRpbmRleCwgcGFsZXR0ZSkpIHtcbiAgICAgICAgICAgICAgICAgIDxkaXYgcm9sZT1cInByZXNlbnRhdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwic2VsZWN0UGFsZXR0ZShwYWxldHRlKVwiPlxuICAgICAgICAgICAgICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicmVsYXRpdmUgZmxleCB3LTEyIGgtMTIgcC0wIHBvaW50ZXItZXZlbnRzLW5vbmUgcm91bmRlZC1mdWxsIGJnLXRyYW5zcGFyZW50IGhvdmVyOm9wYWNpdHktNTBcIlxuICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJzZWxlY3RlZFBhbGV0dGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICBAaWYgKHNlbGVjdGVkQ29sb3IuY29sb3I9PT1wYWxldHRlICsgJy0nICsgc2VsZWN0ZWRIdWUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImFic29sdXRlIG0tMyB0ZXh0LXdoaXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzdmdJY29uXT1cIidoZXJvaWNvbnNfb3V0bGluZTpjaGVjaydcIj48L21hdC1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZsZXggdy0xMCBoLTEwIG0tMSByb3VuZGVkLWZ1bGxcIlxuICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInBhbGV0dGUgKyAnLScgKyBzZWxlY3RlZEh1ZVwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIH1cbiAgICAgICAgICBAY2FzZSAoJ2h1ZXMnKSB7XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBmbGV4LXdyYXAganVzdGlmeS1zdGFydCBjb250ZW50LXN0YXJ0IGNvbG9yc1wiPlxuICAgICAgICAgICAgICAgIEBmb3IgKGh1ZSBvZiBodWVzOyB0cmFjayB0cmFja0J5Rm4oJGluZGV4LCBodWUpKSB7XG4gICAgICAgICAgICAgICAgICA8ZGl2IHJvbGU9XCJwcmVzZW50YXRpb25cIiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdEh1ZShodWUpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtb3B0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJyZWxhdGl2ZSBmbGV4IHctMTIgaC0xMiBwLTAgcG9pbnRlci1ldmVudHMtbm9uZSByb3VuZGVkLWZ1bGwgYmctdHJhbnNwYXJlbnQgaG92ZXI6b3BhY2l0eS01MFwiXG4gICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cInNlbGVjdGVkSHVlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgQGlmIChzZWxlY3RlZENvbG9yLmNvbG9yPT09c2VsZWN0ZWRQYWxldHRlICsgJy0nICsgaHVlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJhYnNvbHV0ZSBtLTMgdGV4dC13aGl0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3ZnSWNvbl09XCInaGVyb2ljb25zX291dGxpbmU6Y2hlY2snXCI+PC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmbGV4IHctMTAgaC0xMCBtLTEgcm91bmRlZC1mdWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzZWxlY3RlZFBhbGV0dGUgKyAnLScgKyBodWVcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L21hdC1zZWxlY3Q+XG48L2Rpdj4iXX0=
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtY29sb3ItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9tYXRlcmlhbC1jb2xvci1waWNrZXIvbWF0ZXJpYWwtY29sb3ItcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9tYXRlcmlhbC1jb2xvci1waWNrZXIvbWF0ZXJpYWwtY29sb3ItcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEosT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7Ozs7O0FBRzFDLE1BQU0sQ0FBQyxNQUFNLHlDQUF5QyxHQUFRO0lBQzFELE9BQU8sRUFBRSxpQkFBaUI7SUFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQ0FBZ0MsQ0FBQztJQUMvRCxLQUFLLEVBQUUsSUFBSTtDQUNk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Q0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTVDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRUQsZ0JBQWdCO1FBQ1osSUFBSSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUM7SUFDM0IsQ0FBQztJQUVELFVBQVUsQ0FBQyxNQUFlO1FBQ3RCLElBQUksTUFBTSxFQUFFLENBQUM7WUFDVCxJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQztRQUN2QixDQUFDO0lBQ0wsQ0FBQzs4R0FuS1EsZ0NBQWdDO2tHQUFoQyxnQ0FBZ0Msc0xBSjlCLENBQUMseUNBQXlDLENBQUMsaUVDMUIxRCwwOUdBcUVNLDRJRHpDUSxPQUFPLG1GQUFFLGVBQWUscXdCQUFFLGFBQWEsbUxBQUUsZUFBZSwySUFBRSxnQkFBZ0IsK1NBTnhFLGNBQWM7OzJGQVFqQixnQ0FBZ0M7a0JBWjVDLFNBQVM7K0JBQ0ksNEJBQTRCLGNBRzFCLGNBQWMsaUJBQ1gsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxZQUNyQyx5QkFBeUIsYUFDeEIsQ0FBQyx5Q0FBeUMsQ0FBQyxjQUMxQyxJQUFJLFdBQ1AsQ0FBQyxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLENBQUM7c0ZBS3JGLFlBQVk7c0JBRFgsTUFBTTtnQkFxQ0gsS0FBSztzQkFEUixLQUFLO2dCQTRCRixLQUFLO3NCQURSLEtBQUs7Z0JBV0YsUUFBUTtzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDbGFzcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGZvcndhcmRSZWYsIElucHV0LCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xyXG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XHJcbmltcG9ydCB7IGNtYXRBbmltYXRpb25zIH0gZnJvbSAnY21hdC9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgYmFzZUNvbG9ycyB9IGZyb20gJy4vYmFzZS1jb2xvcic7XHJcbmltcG9ydCB7IENtYXRTZWxlY3RlZENvbG9yIH0gZnJvbSAnLi9zZWxlY3RlZC1jb2xvcic7XHJcblxyXG5leHBvcnQgY29uc3QgQ01BVF9NQVRFUklBTF9DT0xPUl9QSUNLRVJfVkFMVUVfQUNDRVNTT1I6IGFueSA9IHtcclxuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ21hdE1hdGVyaWFsQ29sb3JQaWNrZXJDb21wb25lbnQpLFxyXG4gICAgbXVsdGk6IHRydWVcclxufTtcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnY21hdC1tYXRlcmlhbC1jb2xvci1waWNrZXInLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL21hdGVyaWFsLWNvbG9yLXBpY2tlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9tYXRlcmlhbC1jb2xvci1waWNrZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGFuaW1hdGlvbnM6IGNtYXRBbmltYXRpb25zLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgZXhwb3J0QXM6ICdjbWF0TWF0ZXJpYWxDb2xvclBpY2tlcicsXHJcbiAgICBwcm92aWRlcnM6IFtDTUFUX01BVEVSSUFMX0NPTE9SX1BJQ0tFUl9WQUxVRV9BQ0NFU1NPUl0sXHJcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gICAgaW1wb3J0czogW05nQ2xhc3MsIE1hdFNlbGVjdE1vZHVsZSwgTWF0SWNvbk1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBNYXRUb29sdGlwTW9kdWxlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ21hdE1hdGVyaWFsQ29sb3JQaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XHJcbiAgICAvLyBDb2xvciBjaGFuZ2VkXHJcbiAgICBAT3V0cHV0KClcclxuICAgIGNvbG9yQ2hhbmdlZDogRXZlbnRFbWl0dGVyPGFueT47XHJcblxyXG4gICAgcGFsZXR0ZXM6IHN0cmluZ1tdO1xyXG4gICAgaHVlczogc3RyaW5nW107XHJcbiAgICB2aWV3OiBzdHJpbmc7XHJcbiAgICBzZWxlY3RlZENvbG9yOiBDbWF0U2VsZWN0ZWRDb2xvcjtcclxuICAgIHNlbGVjdGVkUGFsZXR0ZTogc3RyaW5nO1xyXG4gICAgc2VsZWN0ZWRIdWU6IHN0cmluZztcclxuXHJcbiAgICAvLyBQcml2YXRlXHJcbiAgICBwcml2YXRlIF9jb2xvcjogc3RyaW5nO1xyXG4gICAgcHJpdmF0ZSBfdGl0bGU6IHN0cmluZztcclxuICAgIHByaXZhdGUgX3JlYWRvbmx5OmJvb2xlYW47XHJcbiAgICBwcml2YXRlIF9tb2RlbENoYW5nZTogKHZhbHVlOiBhbnkpID0+IHZvaWQ7XHJcbiAgICBwcml2YXRlIF9tb2RlbFRvdWNoZWQ6ICh2YWx1ZTogYW55KSA9PiB2b2lkO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge1xyXG4gICAgICAgIC8vIFNldCB0aGUgZGVmYXVsdHNcclxuICAgICAgICB0aGlzLmNvbG9yQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICAgICAgICB0aGlzLnBhbGV0dGVzID0gYmFzZUNvbG9ycztcclxuICAgICAgICB0aGlzLmh1ZXMgPSBbJzUwJywgJzEwMCcsICcyMDAnLCAnMzAwJywgJzQwMCcsICc1MDAnLCAnNjAwJywgJzcwMCcsICc4MDAnLCAnOTAwJ107XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZEh1ZSA9ICc1MDAnO1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRQYWxldHRlID0gJ2JnLWluZGlnbyc7XHJcbiAgICAgICAgdGhpcy52aWV3ID0gJ3BhbGV0dGVzJztcclxuXHJcbiAgICAgICAgdGhpcy5fbW9kZWxDaGFuZ2UgPSAoKTogYW55ID0+IHsgfTtcclxuICAgICAgICB0aGlzLl9tb2RlbFRvdWNoZWQgPSAoKTogYW55ID0+IHsgfTtcclxuXHJcbiAgICAgICAgdGhpcy51cGRhdGVTZWxlY3RlZENvbG9yKCk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IGNvbG9yKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbG9yO1xyXG4gICAgfVxyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBzZXQgY29sb3IodmFsdWUpIHtcclxuICAgICAgICBpZiAoIXZhbHVlIHx8IHZhbHVlID09PSAnJyB8fCB0aGlzLl9jb2xvciA9PT0gdmFsdWUpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gU3BsaXQgdGhlIGNvbG9yIHZhbHVlIChiZy1yZWQtNDAwLCBiZy1ibHVlLTUwMCBldGMuKVxyXG4gICAgICAgIGNvbnN0IGNvbG9yUGFydHMgPSB2YWx1ZS5zcGxpdCgnLScpO1xyXG5cclxuICAgICAgICAvLyBUYWtlIHRoZSB2ZXJ5IGxhc3QgcGFydCBhcyB0aGUgc2VsZWN0ZWQgaHVlIHZhbHVlXHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZEh1ZSA9IGNvbG9yUGFydHNbY29sb3JQYXJ0cy5sZW5ndGggLSAxXTtcclxuXHJcbiAgICAgICAgLy8gUmVtb3ZlIHRoZSBsYXN0IHBhcnRcclxuICAgICAgICBjb2xvclBhcnRzLnBvcCgpO1xyXG5cclxuICAgICAgICAvLyBSZWpvaW4gdGhlIHJlbWFpbmluZyBwYXJ0cyBhcyB0aGUgc2VsZWN0ZWQgcGFsZXR0ZSBuYW1lXHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZFBhbGV0dGUgPSBjb2xvclBhcnRzLmpvaW4oJy0nKTtcclxuXHJcbiAgICAgICAgLy8gVXBkYXRlIHRoZSBzZWxlY3RlZCBjb2xvclxyXG4gICAgICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRDb2xvcigpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbWVtYmVyLW9yZGVyaW5nXHJcbiAgICBnZXQgdGl0bGUoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fdGl0bGU7XHJcbiAgICB9XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHNldCB0aXRsZSh2YWx1ZSkge1xyXG4gICAgICAgIHRoaXMuX3RpdGxlID0gdmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9tZW1iZXItb3JkZXJpbmdcclxuICAgIGdldCByZWFkb25seSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fcmVhZG9ubHk7XHJcbiAgICB9XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHNldCByZWFkb25seSh2YWx1ZSkge1xyXG4gICAgICAgIHRoaXMuX3JlYWRvbmx5ID0gdmFsdWU7XHJcbiAgICB9XHJcbiAgICBcclxuXHJcbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9tb2RlbENoYW5nZSA9IGZuO1xyXG4gICAgfVxyXG5cclxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9tb2RlbFRvdWNoZWQgPSBmbjtcclxuICAgIH1cclxuXHJcbiAgICB3cml0ZVZhbHVlKGNvbG9yOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICAvLyBSZXR1cm4gaWYgbnVsbFxyXG4gICAgICAgIGlmICghY29sb3IpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gU2V0IHRoZSBjb2xvclxyXG4gICAgICAgIHRoaXMuY29sb3IgPSBjb2xvcjtcclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3RQYWxldHRlKHBhbGV0dGU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIC8vIEdvIHRvICdodWVzJyB2aWV3XHJcbiAgICAgICAgdGhpcy52aWV3ID0gJ2h1ZXMnO1xyXG5cclxuICAgICAgICAvLyBVcGRhdGUgdGhlIHNlbGVjdGVkIHBhbGV0dGVcclxuICAgICAgICB0aGlzLnNlbGVjdGVkUGFsZXR0ZSA9IHBhbGV0dGU7XHJcblxyXG4gICAgICAgIC8vIFVwZGF0ZSB0aGUgc2VsZWN0ZWQgY29sb3JcclxuICAgICAgICB0aGlzLnVwZGF0ZVNlbGVjdGVkQ29sb3IoKTtcclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3RIdWUoaHVlOiBzdHJpbmcpOiB2b2lkIHtcclxuICAgICAgICAvLyBVcGRhdGUgdGhlIHNlbGVjdGVkIGh1ZVxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRIdWUgPSBodWU7XHJcblxyXG4gICAgICAgIC8vIFVwZGF0ZSB0aGUgc2VsZWN0ZWQgY29sb3JcclxuICAgICAgICB0aGlzLnVwZGF0ZVNlbGVjdGVkQ29sb3IoKTtcclxuICAgIH1cclxuXHJcbiAgICByZW1vdmVDb2xvcigpOiB2b2lkIHtcclxuICAgICAgICAvLyBSZXR1cm4gdG8gdGhlICdwYWxldHRlcycgdmlld1xyXG4gICAgICAgIHRoaXMudmlldyA9ICdwYWxldHRlcyc7XHJcblxyXG4gICAgICAgIC8vIENsZWFyIHRoZSBzZWxlY3RlZCBwYWxldHRlIGFuZCBodWVcclxuICAgICAgICB0aGlzLnNlbGVjdGVkUGFsZXR0ZSA9ICdiZy1pbmRpZ28nO1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRIdWUgPSAnNTAwJztcclxuXHJcbiAgICAgICAgLy8gVXBkYXRlIHRoZSBzZWxlY3RlZCBjb2xvclxyXG4gICAgICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRDb2xvcigpO1xyXG4gICAgfVxyXG5cclxuICAgIHVwZGF0ZVNlbGVjdGVkQ29sb3IoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRDb2xvciAmJiB0aGlzLnNlbGVjdGVkQ29sb3IucGFsZXR0ZSA9PT0gdGhpcy5zZWxlY3RlZFBhbGV0dGUgJiYgdGhpcy5zZWxlY3RlZENvbG9yLmh1ZSA9PT0gdGhpcy5zZWxlY3RlZEh1ZSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLyBTZXQgdGhlIHNlbGVjdGVkIGNvbG9yIG9iamVjdFxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDb2xvciA9IHtcclxuICAgICAgICAgICAgcGFsZXR0ZTogdGhpcy5zZWxlY3RlZFBhbGV0dGUsXHJcbiAgICAgICAgICAgIGh1ZTogdGhpcy5zZWxlY3RlZEh1ZSxcclxuICAgICAgICAgICAgY29sb3I6IHRoaXMuc2VsZWN0ZWRQYWxldHRlICsgJy0nICsgdGhpcy5zZWxlY3RlZEh1ZVxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHRoaXMuX2NvbG9yID0gdGhpcy5zZWxlY3RlZENvbG9yLmNvbG9yO1xyXG5cclxuICAgICAgICB0aGlzLmNvbG9yQ2hhbmdlZC5lbWl0KHRoaXMuc2VsZWN0ZWRDb2xvcik7XHJcblxyXG4gICAgICAgIC8vIE1hcmsgdGhlIG1vZGVsIGFzIHRvdWNoZWRcclxuICAgICAgICB0aGlzLl9tb2RlbFRvdWNoZWQodGhpcy5zZWxlY3RlZENvbG9yLmNvbG9yKTtcclxuXHJcbiAgICAgICAgLy8gVXBkYXRlIHRoZSBtb2RlbFxyXG4gICAgICAgIHRoaXMuX21vZGVsQ2hhbmdlKHRoaXMuc2VsZWN0ZWRDb2xvci5jb2xvcik7XHJcblxyXG4gICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgfVxyXG5cclxuICAgIGdvVG9QYWxldHRlc1ZpZXcoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy52aWV3ID0gJ3BhbGV0dGVzJztcclxuICAgIH1cclxuXHJcbiAgICBvbk1lbnVPcGVuKG9wZW5lZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIGlmIChvcGVuZWQpIHtcclxuICAgICAgICAgICAgdGhpcy52aWV3ID0gJ2h1ZXMnO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwicm91bmRlZFwiIFtuZ0NsYXNzXT1cInNlbGVjdGVkQ29sb3IuY29sb3JcIj5cbiAgPG1hdC1zZWxlY3QgdmFsdWU9XCJpbml0XCIgW2Rpc2FibGVPcHRpb25DZW50ZXJpbmddPVwidHJ1ZVwiIFtoaWRlU2luZ2xlU2VsZWN0aW9uSW5kaWNhdG9yXT1cInRydWVcIiBbZGlzYWJsZWRdPVwicmVhZG9ubHlcIlxuICAgIChvcGVuZWRDaGFuZ2UpPVwib25NZW51T3BlbigkZXZlbnQpXCIgcGFuZWxDbGFzcz1cIm1pbi13LTY0XCI+XG4gICAgPG1hdC1zZWxlY3QtdHJpZ2dlciBjbGFzcz1cImZsZXggcC0xXCI+XG4gICAgICA8bWF0LWljb24gW3N2Z0ljb25dPVwiJ2hlcm9pY29uc19vdXRsaW5lOnBhaW50LWJydXNoJ1wiPjwvbWF0LWljb24+XG4gICAgPC9tYXQtc2VsZWN0LXRyaWdnZXI+XG5cbiAgICA8aGVhZGVyIFtuZ0NsYXNzXT1cIidhY2NlbnQnXCIgY2xhc3M9XCJzaGFkb3cgZmxleCBmbGV4LXJvdyBjb250ZW50LWJldHdlZW4ganVzdGlmeS1iZXR3ZWVuIHAtMlwiPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LWljb24tYnV0dG9uIGNsYXNzPVwic2Vjb25kYXJ5LXRleHRcIiBbY2xhc3MuaW52aXNpYmxlXT1cInZpZXcgPT09ICdwYWxldHRlcydcIlxuICAgICAgICAoY2xpY2spPVwiZ29Ub1BhbGV0dGVzVmlldygpXCIgYXJpYS1sYWJlbD1cIuiwg+iJsuadv1wiPlxuICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cIm1hdF9vdXRsaW5lOmFycm93X2JhY2tcIj48L21hdC1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8c3BhbiBjbGFzcz1cImFsaWduLW1pZGRsZSBsZWFkaW5nLWxvb3NlIHRleHQteGwgZm9udC1ib2xkXCI+e3t0aXRsZX19PC9zcGFuPlxuICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgbWF0LWljb24tYnV0dG9uIGNsYXNzPVwicmVtb3ZlLWNvbG9yLWJ1dHRvbiBzZWNvbmRhcnktdGV4dFwiIChjbGljayk9XCJyZW1vdmVDb2xvcigpXCJcbiAgICAgICAgYXJpYS1sYWJlbD1cIuenu+mZpOminOiJslwiIG1hdFRvb2x0aXA9XCLnp7vpmaTpopzoibJcIj5cbiAgICAgICAgPG1hdC1pY29uIGNvbG9yPVwid2FyblwiIFtzdmdJY29uXT1cIidtYXRfb3V0bGluZTpjbGVhbmluZ19zZXJ2aWNlcydcIj48L21hdC1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9oZWFkZXI+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXdyYXAgdy02MCBtLTJcIj5cbiAgICAgIDxtYXQtb3B0aW9uIHZhbHVlPVwiaW5pdFwiIGNsYXNzPVwiaGlkZGVuXCI+5Yid5aeL5YyWPC9tYXQtb3B0aW9uPlxuICAgICAgPGRpdj5cbiAgICAgICAgQHN3aXRjaCAodmlldykge1xuICAgICAgICAgIEBjYXNlICgncGFsZXR0ZXMnKSB7XG4gICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvdyBmbGV4LXdyYXAganVzdGlmeS1zdGFydCBjb250ZW50LXN0YXJ0IGNvbG9yc1wiPlxuICAgICAgICAgICAgICAgIEBmb3IgKHBhbGV0dGUgb2YgcGFsZXR0ZXM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgICAgPGRpdiByb2xlPVwicHJlc2VudGF0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJzZWxlY3RQYWxldHRlKHBhbGV0dGUpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtb3B0aW9uXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJyZWxhdGl2ZSBmbGV4IHctMTIgaC0xMiBwLTAgcG9pbnRlci1ldmVudHMtbm9uZSByb3VuZGVkLWZ1bGwgYmctdHJhbnNwYXJlbnQgaG92ZXI6b3BhY2l0eS01MFwiXG4gICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cInNlbGVjdGVkUGFsZXR0ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgIEBpZiAoc2VsZWN0ZWRDb2xvci5jb2xvcj09PXBhbGV0dGUgKyAnLScgKyBzZWxlY3RlZEh1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiYWJzb2x1dGUgbS0zIHRleHQtd2hpdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3N2Z0ljb25dPVwiJ2hlcm9pY29uc19vdXRsaW5lOmNoZWNrJ1wiPjwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmxleCB3LTEwIGgtMTAgbS0xIHJvdW5kZWQtZnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwicGFsZXR0ZSArICctJyArIHNlbGVjdGVkSHVlXCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBjYXNlICgnaHVlcycpIHtcbiAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGZsZXgtd3JhcCBqdXN0aWZ5LXN0YXJ0IGNvbnRlbnQtc3RhcnQgY29sb3JzXCI+XG4gICAgICAgICAgICAgICAgQGZvciAoaHVlIG9mIGh1ZXM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgICAgPGRpdiByb2xlPVwicHJlc2VudGF0aW9uXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RIdWUoaHVlKVwiPlxuICAgICAgICAgICAgICAgICAgICA8bWF0LW9wdGlvblxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicmVsYXRpdmUgZmxleCB3LTEyIGgtMTIgcC0wIHBvaW50ZXItZXZlbnRzLW5vbmUgcm91bmRlZC1mdWxsIGJnLXRyYW5zcGFyZW50IGhvdmVyOm9wYWNpdHktNTBcIlxuICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJzZWxlY3RlZEh1ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgIEBpZiAoc2VsZWN0ZWRDb2xvci5jb2xvcj09PXNlbGVjdGVkUGFsZXR0ZSArICctJyArIGh1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwiYWJzb2x1dGUgbS0zIHRleHQtd2hpdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW3N2Z0ljb25dPVwiJ2hlcm9pY29uc19vdXRsaW5lOmNoZWNrJ1wiPjwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmxleCB3LTEwIGgtMTAgbS0xIHJvdW5kZWQtZnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwic2VsZWN0ZWRQYWxldHRlICsgJy0nICsgaHVlXCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9tYXQtc2VsZWN0PlxuPC9kaXY+Il19
@@ -45,15 +45,12 @@ export class CmatDatetimepickerCalendarBodyComponent {
45
45
  }
46
46
  return cellNumber === this.activeCell;
47
47
  }
48
- trackByFn(index, item) {
49
- return item.value || index;
50
- }
51
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: CmatDatetimepickerCalendarBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
52
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.9", type: CmatDatetimepickerCalendarBodyComponent, isStandalone: true, selector: "[cmat-datetimepicker-calendar-body]", inputs: { label: "label", rows: "rows", todayValue: "todayValue", selectedValue: "selectedValue", labelMinRequiredCells: "labelMinRequiredCells", numCols: "numCols", allowDisabledSelection: "allowDisabledSelection", activeCell: "activeCell" }, outputs: { selectedValueChange: "selectedValueChange" }, host: { properties: { "class": "this.class" } }, exportAs: ["cmatDatetimepickerCalendarBody"], ngImport: i0, template: "<!--\nIf there's not enough space in the first row, create a separate label row. We mark this row as\naria-hidden because we don't want it to be read out as one of the weeks in the month.\n-->\n@if (_firstRowOffset < labelMinRequiredCells) {\n <tr aria-hidden=\"true\">\n <td [attr.colspan]=\"numCols\" class=\"cmat-datetimepicker-calendar-body-label\">{{ label }}</td>\n </tr>\n}\n\n<!-- Create the first row separately so we can include a special spacer cell. -->\n@for (row of rows; track row; let rowIndex = $index) {\n <tr role=\"row\">\n <!--\n We mark this cell as aria-hidden so it doesn't get read out as one of the days in the week.\n -->\n @if (rowIndex === 0 && _firstRowOffset) {\n <td [attr.colspan]=\"_firstRowOffset\" aria-hidden=\"true\"\n class=\"cmat-datetimepicker-calendar-body-label\">\n {{ _firstRowOffset >= labelMinRequiredCells ? label : '' }}\n </td>\n }\n @for (item of row; track trackByFn(colIndex, item); let colIndex = $index) {\n <td role=\"presentation\" (click)=\"cellClicked(item)\"\n [attr.aria-disabled]=\"!item.enabled || null\"\n [attr.aria-label]=\"item.ariaLabel\"\n [class.cmat-datetimepicker-calendar-body-active]=\"isActiveCell(rowIndex, colIndex)\"\n [class.cmat-datetimepicker-calendar-body-disabled]=\"!item.enabled\"\n class=\"cmat-datetimepicker-calendar-body-cell\" role=\"button\">\n <div [attr.aria-selected]=\"selectedValue === item.value\"\n [class.cmat-datetimepicker-calendar-body-selected]=\"selectedValue === item.value\"\n [class.cmat-datetimepicker-calendar-body-today]=\"todayValue === item.value\"\n class=\"cmat-datetimepicker-calendar-body-cell-content\">\n {{ item.displayValue }}\n </div>\n </td>\n }\n </tr>\n}", styles: [".cmat-datetimepicker-calendar-body{min-width:224px}.cmat-datetimepicker-calendar-body-label{height:0;line-height:0;text-align:left;padding:7.1428571429% 4.7142857143%}[dir=rtl] .cmat-datetimepicker-calendar-body-label{text-align:right}.cmat-datetimepicker-calendar-body-cell{position:relative;width:14.2857142857%;height:0;line-height:0;padding:7.1428571429% 0;text-align:center;outline:none;cursor:pointer}.cmat-datetimepicker-calendar-body-disabled{cursor:default;pointer-events:none}.cmat-datetimepicker-calendar-body-cell-content{position:absolute;top:5%;left:5%;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:90%;height:90%;border:1px solid transparent;border-radius:999px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: CmatDatetimepickerCalendarBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
49
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.0", type: CmatDatetimepickerCalendarBodyComponent, isStandalone: true, selector: "[cmat-datetimepicker-calendar-body]", inputs: { label: "label", rows: "rows", todayValue: "todayValue", selectedValue: "selectedValue", labelMinRequiredCells: "labelMinRequiredCells", numCols: "numCols", allowDisabledSelection: "allowDisabledSelection", activeCell: "activeCell" }, outputs: { selectedValueChange: "selectedValueChange" }, host: { properties: { "class": "this.class" } }, exportAs: ["cmatDatetimepickerCalendarBody"], ngImport: i0, template: "<!--\nIf there's not enough space in the first row, create a separate label row. We mark this row as\naria-hidden because we don't want it to be read out as one of the weeks in the month.\n-->\n@if (_firstRowOffset < labelMinRequiredCells) {\n <tr aria-hidden=\"true\">\n <td [attr.colspan]=\"numCols\" class=\"cmat-datetimepicker-calendar-body-label\">{{ label }}</td>\n </tr>\n}\n\n<!-- Create the first row separately so we can include a special spacer cell. -->\n@for (row of rows; track $index; let rowIndex = $index) {\n <tr role=\"row\">\n <!--\n We mark this cell as aria-hidden so it doesn't get read out as one of the days in the week.\n -->\n @if (rowIndex === 0 && _firstRowOffset) {\n <td [attr.colspan]=\"_firstRowOffset\" aria-hidden=\"true\"\n class=\"cmat-datetimepicker-calendar-body-label\">\n {{ _firstRowOffset >= labelMinRequiredCells ? label : '' }}\n </td>\n }\n @for (item of row; track $index; let colIndex = $index) {\n <td role=\"presentation\" (click)=\"cellClicked(item)\"\n [attr.aria-disabled]=\"!item.enabled || null\"\n [attr.aria-label]=\"item.ariaLabel\"\n [class.cmat-datetimepicker-calendar-body-active]=\"isActiveCell(rowIndex, colIndex)\"\n [class.cmat-datetimepicker-calendar-body-disabled]=\"!item.enabled\"\n class=\"cmat-datetimepicker-calendar-body-cell\" role=\"button\">\n <div [attr.aria-selected]=\"selectedValue === item.value\"\n [class.cmat-datetimepicker-calendar-body-selected]=\"selectedValue === item.value\"\n [class.cmat-datetimepicker-calendar-body-today]=\"todayValue === item.value\"\n class=\"cmat-datetimepicker-calendar-body-cell-content\">\n {{ item.displayValue }}\n </div>\n </td>\n }\n </tr>\n}", styles: [".cmat-datetimepicker-calendar-body{min-width:224px}.cmat-datetimepicker-calendar-body-label{height:0;line-height:0;text-align:left;padding:7.1428571429% 4.7142857143%}[dir=rtl] .cmat-datetimepicker-calendar-body-label{text-align:right}.cmat-datetimepicker-calendar-body-cell{position:relative;width:14.2857142857%;height:0;line-height:0;padding:7.1428571429% 0;text-align:center;outline:none;cursor:pointer}.cmat-datetimepicker-calendar-body-disabled{cursor:default;pointer-events:none}.cmat-datetimepicker-calendar-body-cell-content{position:absolute;top:5%;left:5%;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:90%;height:90%;border:1px solid transparent;border-radius:999px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
53
50
  }
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: CmatDatetimepickerCalendarBodyComponent, decorators: [{
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.0", ngImport: i0, type: CmatDatetimepickerCalendarBodyComponent, decorators: [{
55
52
  type: Component,
56
- args: [{ selector: '[cmat-datetimepicker-calendar-body]', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'cmatDatetimepickerCalendarBody', standalone: true, imports: [], template: "<!--\nIf there's not enough space in the first row, create a separate label row. We mark this row as\naria-hidden because we don't want it to be read out as one of the weeks in the month.\n-->\n@if (_firstRowOffset < labelMinRequiredCells) {\n <tr aria-hidden=\"true\">\n <td [attr.colspan]=\"numCols\" class=\"cmat-datetimepicker-calendar-body-label\">{{ label }}</td>\n </tr>\n}\n\n<!-- Create the first row separately so we can include a special spacer cell. -->\n@for (row of rows; track row; let rowIndex = $index) {\n <tr role=\"row\">\n <!--\n We mark this cell as aria-hidden so it doesn't get read out as one of the days in the week.\n -->\n @if (rowIndex === 0 && _firstRowOffset) {\n <td [attr.colspan]=\"_firstRowOffset\" aria-hidden=\"true\"\n class=\"cmat-datetimepicker-calendar-body-label\">\n {{ _firstRowOffset >= labelMinRequiredCells ? label : '' }}\n </td>\n }\n @for (item of row; track trackByFn(colIndex, item); let colIndex = $index) {\n <td role=\"presentation\" (click)=\"cellClicked(item)\"\n [attr.aria-disabled]=\"!item.enabled || null\"\n [attr.aria-label]=\"item.ariaLabel\"\n [class.cmat-datetimepicker-calendar-body-active]=\"isActiveCell(rowIndex, colIndex)\"\n [class.cmat-datetimepicker-calendar-body-disabled]=\"!item.enabled\"\n class=\"cmat-datetimepicker-calendar-body-cell\" role=\"button\">\n <div [attr.aria-selected]=\"selectedValue === item.value\"\n [class.cmat-datetimepicker-calendar-body-selected]=\"selectedValue === item.value\"\n [class.cmat-datetimepicker-calendar-body-today]=\"todayValue === item.value\"\n class=\"cmat-datetimepicker-calendar-body-cell-content\">\n {{ item.displayValue }}\n </div>\n </td>\n }\n </tr>\n}", styles: [".cmat-datetimepicker-calendar-body{min-width:224px}.cmat-datetimepicker-calendar-body-label{height:0;line-height:0;text-align:left;padding:7.1428571429% 4.7142857143%}[dir=rtl] .cmat-datetimepicker-calendar-body-label{text-align:right}.cmat-datetimepicker-calendar-body-cell{position:relative;width:14.2857142857%;height:0;line-height:0;padding:7.1428571429% 0;text-align:center;outline:none;cursor:pointer}.cmat-datetimepicker-calendar-body-disabled{cursor:default;pointer-events:none}.cmat-datetimepicker-calendar-body-cell-content{position:absolute;top:5%;left:5%;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:90%;height:90%;border:1px solid transparent;border-radius:999px}\n"] }]
53
+ args: [{ selector: '[cmat-datetimepicker-calendar-body]', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, exportAs: 'cmatDatetimepickerCalendarBody', standalone: true, imports: [], template: "<!--\nIf there's not enough space in the first row, create a separate label row. We mark this row as\naria-hidden because we don't want it to be read out as one of the weeks in the month.\n-->\n@if (_firstRowOffset < labelMinRequiredCells) {\n <tr aria-hidden=\"true\">\n <td [attr.colspan]=\"numCols\" class=\"cmat-datetimepicker-calendar-body-label\">{{ label }}</td>\n </tr>\n}\n\n<!-- Create the first row separately so we can include a special spacer cell. -->\n@for (row of rows; track $index; let rowIndex = $index) {\n <tr role=\"row\">\n <!--\n We mark this cell as aria-hidden so it doesn't get read out as one of the days in the week.\n -->\n @if (rowIndex === 0 && _firstRowOffset) {\n <td [attr.colspan]=\"_firstRowOffset\" aria-hidden=\"true\"\n class=\"cmat-datetimepicker-calendar-body-label\">\n {{ _firstRowOffset >= labelMinRequiredCells ? label : '' }}\n </td>\n }\n @for (item of row; track $index; let colIndex = $index) {\n <td role=\"presentation\" (click)=\"cellClicked(item)\"\n [attr.aria-disabled]=\"!item.enabled || null\"\n [attr.aria-label]=\"item.ariaLabel\"\n [class.cmat-datetimepicker-calendar-body-active]=\"isActiveCell(rowIndex, colIndex)\"\n [class.cmat-datetimepicker-calendar-body-disabled]=\"!item.enabled\"\n class=\"cmat-datetimepicker-calendar-body-cell\" role=\"button\">\n <div [attr.aria-selected]=\"selectedValue === item.value\"\n [class.cmat-datetimepicker-calendar-body-selected]=\"selectedValue === item.value\"\n [class.cmat-datetimepicker-calendar-body-today]=\"todayValue === item.value\"\n class=\"cmat-datetimepicker-calendar-body-cell-content\">\n {{ item.displayValue }}\n </div>\n </td>\n }\n </tr>\n}", styles: [".cmat-datetimepicker-calendar-body{min-width:224px}.cmat-datetimepicker-calendar-body-label{height:0;line-height:0;text-align:left;padding:7.1428571429% 4.7142857143%}[dir=rtl] .cmat-datetimepicker-calendar-body-label{text-align:right}.cmat-datetimepicker-calendar-body-cell{position:relative;width:14.2857142857%;height:0;line-height:0;padding:7.1428571429% 0;text-align:center;outline:none;cursor:pointer}.cmat-datetimepicker-calendar-body-disabled{cursor:default;pointer-events:none}.cmat-datetimepicker-calendar-body-cell-content{position:absolute;top:5%;left:5%;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:90%;height:90%;border:1px solid transparent;border-radius:999px}\n"] }]
57
54
  }], propDecorators: { label: [{
58
55
  type: Input
59
56
  }], rows: [{
@@ -76,4 +73,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImpor
76
73
  type: HostBinding,
77
74
  args: ['class']
78
75
  }] } });
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItYm9keS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9tYXRlcmlhbC1kYXRldGltZXBpY2tlci9jYWxlbmRhci1ib2R5LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL21hdGVyaWFsLWRhdGV0aW1lcGlja2VyL2NhbGVuZGFyLWJvZHkuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHaEk7O0dBRUc7QUFDSCxNQUFNLE9BQU8sdUNBQXVDO0lBQ2hELFlBQW1CLEtBQWEsRUFDckIsWUFBb0IsRUFDcEIsU0FBaUIsRUFDakIsT0FBZ0I7UUFIUixVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQ3JCLGlCQUFZLEdBQVosWUFBWSxDQUFRO1FBQ3BCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsWUFBTyxHQUFQLE9BQU8sQ0FBUztJQUMzQixDQUFDO0NBQ0o7QUFFRDs7R0FFRztBQVdILE1BQU0sT0FBTyx1Q0FBdUM7SUFWcEQ7UUEwQkksMENBQTBDO1FBQ2pDLFlBQU8sR0FBRyxDQUFDLENBQUM7UUFFckIsb0RBQW9EO1FBQzNDLDJCQUFzQixHQUFHLEtBQUssQ0FBQztRQUV4Qyx1REFBdUQ7UUFDOUMsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUV4QiwwQ0FBMEM7UUFDaEMsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUVyQyxVQUFLLEdBQUcsbUNBQW1DLENBQUM7S0E2QnJFO0lBM0JHLDJFQUEyRTtJQUMzRSxJQUFJLGVBQWU7UUFDZixPQUFPLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN6RCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUE2QztRQUNyRCxJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUMvQyxPQUFPO1NBQ1Y7UUFDRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQsWUFBWSxDQUFDLFFBQWdCLEVBQUUsUUFBZ0I7UUFDM0MsSUFBSSxVQUFVLEdBQUcsUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDO1FBRXBELHNFQUFzRTtRQUN0RSxJQUFJLFFBQVEsRUFBRTtZQUNWLFVBQVUsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDO1NBQ3RDO1FBRUQsT0FBTyxVQUFVLEtBQUssSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUMxQyxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWEsRUFBRSxJQUE2QztRQUNsRSxPQUFPLElBQUksQ0FBQyxLQUFLLElBQUksS0FBSyxDQUFDO0lBQy9CLENBQUM7OEdBeERRLHVDQUF1QztrR0FBdkMsdUNBQXVDLDJlQzNCcEQsbXlEQXNDQzs7MkZEWFksdUNBQXVDO2tCQVZuRCxTQUFTOytCQUNJLHFDQUFxQyxpQkFHaEMsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxZQUNyQyxnQ0FBZ0MsY0FDOUIsSUFBSSxXQUNQLEVBQUU7OEJBSUYsS0FBSztzQkFBYixLQUFLO2dCQUdHLElBQUk7c0JBQVosS0FBSztnQkFHRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBR0cscUJBQXFCO3NCQUE3QixLQUFLO2dCQUdHLE9BQU87c0JBQWYsS0FBSztnQkFHRyxzQkFBc0I7c0JBQTlCLEtBQUs7Z0JBR0csVUFBVTtzQkFBbEIsS0FBSztnQkFHSSxtQkFBbUI7c0JBQTVCLE1BQU07Z0JBRWUsS0FBSztzQkFBMUIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcblxyXG4vKipcclxuICogQW4gaW50ZXJuYWwgY2xhc3MgdGhhdCByZXByZXNlbnRzIHRoZSBkYXRhIGNvcnJlc3BvbmRpbmcgdG8gYSBzaW5nbGUgY2FsZW5kYXIgY2VsbC5cclxuICovXHJcbmV4cG9ydCBjbGFzcyBDbWF0RGF0ZXRpbWVwaWNrZXJDYWxlbmRhckNlbGxDb21wb25lbnQge1xyXG4gICAgY29uc3RydWN0b3IocHVibGljIHZhbHVlOiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIGRpc3BsYXlWYWx1ZTogc3RyaW5nLFxyXG4gICAgICAgIHB1YmxpYyBhcmlhTGFiZWw6IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgZW5hYmxlZDogYm9vbGVhbikge1xyXG4gICAgfVxyXG59XHJcblxyXG4vKipcclxuICogQW4gaW50ZXJuYWwgY29tcG9uZW50IHVzZWQgdG8gZGlzcGxheSBjYWxlbmRhciBkYXRhIGluIGEgdGFibGUuXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnW2NtYXQtZGF0ZXRpbWVwaWNrZXItY2FsZW5kYXItYm9keV0nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICdjYWxlbmRhci1ib2R5Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJ2NhbGVuZGFyLWJvZHkuc2NzcyddLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgZXhwb3J0QXM6ICdjbWF0RGF0ZXRpbWVwaWNrZXJDYWxlbmRhckJvZHknLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0RGF0ZXRpbWVwaWNrZXJDYWxlbmRhckJvZHlDb21wb25lbnQge1xyXG4gICAgLyoqIFRoZSBsYWJlbCBmb3IgdGhlIHRhYmxlLiAoZS5nLiBcIkphbiAyMDE3XCIpLiAqL1xyXG4gICAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcclxuXHJcbiAgICAvKiogVGhlIGNlbGxzIHRvIGRpc3BsYXkgaW4gdGhlIHRhYmxlLiAqL1xyXG4gICAgQElucHV0KCkgcm93czogQ21hdERhdGV0aW1lcGlja2VyQ2FsZW5kYXJDZWxsQ29tcG9uZW50W11bXTtcclxuXHJcbiAgICAvKiogVGhlIHZhbHVlIGluIHRoZSB0YWJsZSB0aGF0IGNvcnJlc3BvbmRzIHRvIHRvZGF5LiAqL1xyXG4gICAgQElucHV0KCkgdG9kYXlWYWx1ZTogbnVtYmVyIHwgbnVsbDtcclxuXHJcbiAgICAvKiogVGhlIHZhbHVlIGluIHRoZSB0YWJsZSB0aGF0IGlzIGN1cnJlbnRseSBzZWxlY3RlZC4gKi9cclxuICAgIEBJbnB1dCgpIHNlbGVjdGVkVmFsdWU6IG51bWJlciB8IG51bGw7XHJcblxyXG4gICAgLyoqIFRoZSBtaW5pbXVtIG51bWJlciBvZiBmcmVlIGNlbGxzIG5lZWRlZCB0byBmaXQgdGhlIGxhYmVsIGluIHRoZSBmaXJzdCByb3cuICovXHJcbiAgICBASW5wdXQoKSBsYWJlbE1pblJlcXVpcmVkQ2VsbHM6IG51bWJlcjtcclxuXHJcbiAgICAvKiogVGhlIG51bWJlciBvZiBjb2x1bW5zIGluIHRoZSB0YWJsZS4gKi9cclxuICAgIEBJbnB1dCgpIG51bUNvbHMgPSA3O1xyXG5cclxuICAgIC8qKiBXaGV0aGVyIHRvIGFsbG93IHNlbGVjdGlvbiBvZiBkaXNhYmxlZCBjZWxscy4gKi9cclxuICAgIEBJbnB1dCgpIGFsbG93RGlzYWJsZWRTZWxlY3Rpb24gPSBmYWxzZTtcclxuXHJcbiAgICAvKiogVGhlIGNlbGwgbnVtYmVyIG9mIHRoZSBhY3RpdmUgY2VsbCBpbiB0aGUgdGFibGUuICovXHJcbiAgICBASW5wdXQoKSBhY3RpdmVDZWxsID0gMDtcclxuXHJcbiAgICAvKiogRW1pdHMgd2hlbiBhIG5ldyB2YWx1ZSBpcyBzZWxlY3RlZC4gKi9cclxuICAgIEBPdXRwdXQoKSBzZWxlY3RlZFZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcblxyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGNsYXNzID0gJ2NtYXQtZGF0ZXRpbWVwaWNrZXItY2FsZW5kYXItYm9keSc7XHJcblxyXG4gICAgLyoqIFRoZSBudW1iZXIgb2YgYmxhbmsgY2VsbHMgdG8gcHV0IGF0IHRoZSBiZWdpbm5pbmcgZm9yIHRoZSBmaXJzdCByb3cuICovXHJcbiAgICBnZXQgX2ZpcnN0Um93T2Zmc2V0KCk6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMucm93cyAmJiB0aGlzLnJvd3MubGVuZ3RoICYmIHRoaXMucm93c1swXS5sZW5ndGggP1xyXG4gICAgICAgICAgICB0aGlzLm51bUNvbHMgLSB0aGlzLnJvd3NbMF0ubGVuZ3RoIDogMDtcclxuICAgIH1cclxuXHJcbiAgICBjZWxsQ2xpY2tlZChjZWxsOiBDbWF0RGF0ZXRpbWVwaWNrZXJDYWxlbmRhckNlbGxDb21wb25lbnQpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoaXMuYWxsb3dEaXNhYmxlZFNlbGVjdGlvbiAmJiAhY2VsbC5lbmFibGVkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlQ2hhbmdlLmVtaXQoY2VsbC52YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgaXNBY3RpdmVDZWxsKHJvd0luZGV4OiBudW1iZXIsIGNvbEluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcclxuICAgICAgICBsZXQgY2VsbE51bWJlciA9IHJvd0luZGV4ICogdGhpcy5udW1Db2xzICsgY29sSW5kZXg7XHJcblxyXG4gICAgICAgIC8vIEFjY291bnQgZm9yIHRoZSBmYWN0IHRoYXQgdGhlIGZpcnN0IHJvdyBtYXkgbm90IGhhdmUgYXMgbWFueSBjZWxscy5cclxuICAgICAgICBpZiAocm93SW5kZXgpIHtcclxuICAgICAgICAgICAgY2VsbE51bWJlciAtPSB0aGlzLl9maXJzdFJvd09mZnNldDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBjZWxsTnVtYmVyID09PSB0aGlzLmFjdGl2ZUNlbGw7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhY2tCeUZuKGluZGV4OiBudW1iZXIsIGl0ZW06IENtYXREYXRldGltZXBpY2tlckNhbGVuZGFyQ2VsbENvbXBvbmVudCk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuIGl0ZW0udmFsdWUgfHwgaW5kZXg7XHJcbiAgICB9XHJcbn1cclxuIiwiPCEtLVxuSWYgdGhlcmUncyBub3QgZW5vdWdoIHNwYWNlIGluIHRoZSBmaXJzdCByb3csIGNyZWF0ZSBhIHNlcGFyYXRlIGxhYmVsIHJvdy4gV2UgbWFyayB0aGlzIHJvdyBhc1xuYXJpYS1oaWRkZW4gYmVjYXVzZSB3ZSBkb24ndCB3YW50IGl0IHRvIGJlIHJlYWQgb3V0IGFzIG9uZSBvZiB0aGUgd2Vla3MgaW4gdGhlIG1vbnRoLlxuLS0+XG5AaWYgKF9maXJzdFJvd09mZnNldCA8IGxhYmVsTWluUmVxdWlyZWRDZWxscykge1xuICA8dHIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XG4gICAgPHRkIFthdHRyLmNvbHNwYW5dPVwibnVtQ29sc1wiIGNsYXNzPVwiY21hdC1kYXRldGltZXBpY2tlci1jYWxlbmRhci1ib2R5LWxhYmVsXCI+e3sgbGFiZWwgfX08L3RkPlxuICA8L3RyPlxufVxuXG48IS0tIENyZWF0ZSB0aGUgZmlyc3Qgcm93IHNlcGFyYXRlbHkgc28gd2UgY2FuIGluY2x1ZGUgYSBzcGVjaWFsIHNwYWNlciBjZWxsLiAtLT5cbkBmb3IgKHJvdyBvZiByb3dzOyB0cmFjayByb3c7IGxldCByb3dJbmRleCA9ICRpbmRleCkge1xuICA8dHIgcm9sZT1cInJvd1wiPlxuICAgIDwhLS1cbiAgICBXZSBtYXJrIHRoaXMgY2VsbCBhcyBhcmlhLWhpZGRlbiBzbyBpdCBkb2Vzbid0IGdldCByZWFkIG91dCBhcyBvbmUgb2YgdGhlIGRheXMgaW4gdGhlIHdlZWsuXG4gICAgLS0+XG4gICAgQGlmIChyb3dJbmRleCA9PT0gMCAmJiBfZmlyc3RSb3dPZmZzZXQpIHtcbiAgICAgIDx0ZCBbYXR0ci5jb2xzcGFuXT1cIl9maXJzdFJvd09mZnNldFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgIGNsYXNzPVwiY21hdC1kYXRldGltZXBpY2tlci1jYWxlbmRhci1ib2R5LWxhYmVsXCI+XG4gICAgICAgIHt7IF9maXJzdFJvd09mZnNldCA+PSBsYWJlbE1pblJlcXVpcmVkQ2VsbHMgPyBsYWJlbCA6ICcnIH19XG4gICAgICA8L3RkPlxuICAgIH1cbiAgICBAZm9yIChpdGVtIG9mIHJvdzsgdHJhY2sgdHJhY2tCeUZuKGNvbEluZGV4LCBpdGVtKTsgbGV0IGNvbEluZGV4ID0gJGluZGV4KSB7XG4gICAgICA8dGQgcm9sZT1cInByZXNlbnRhdGlvblwiIChjbGljayk9XCJjZWxsQ2xpY2tlZChpdGVtKVwiXG4gICAgICAgIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiIWl0ZW0uZW5hYmxlZCB8fCBudWxsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJpdGVtLmFyaWFMYWJlbFwiXG4gICAgICAgIFtjbGFzcy5jbWF0LWRhdGV0aW1lcGlja2VyLWNhbGVuZGFyLWJvZHktYWN0aXZlXT1cImlzQWN0aXZlQ2VsbChyb3dJbmRleCwgY29sSW5kZXgpXCJcbiAgICAgICAgW2NsYXNzLmNtYXQtZGF0ZXRpbWVwaWNrZXItY2FsZW5kYXItYm9keS1kaXNhYmxlZF09XCIhaXRlbS5lbmFibGVkXCJcbiAgICAgICAgY2xhc3M9XCJjbWF0LWRhdGV0aW1lcGlja2VyLWNhbGVuZGFyLWJvZHktY2VsbFwiIHJvbGU9XCJidXR0b25cIj5cbiAgICAgICAgPGRpdiBbYXR0ci5hcmlhLXNlbGVjdGVkXT1cInNlbGVjdGVkVmFsdWUgPT09IGl0ZW0udmFsdWVcIlxuICAgICAgICAgIFtjbGFzcy5jbWF0LWRhdGV0aW1lcGlja2VyLWNhbGVuZGFyLWJvZHktc2VsZWN0ZWRdPVwic2VsZWN0ZWRWYWx1ZSA9PT0gaXRlbS52YWx1ZVwiXG4gICAgICAgICAgW2NsYXNzLmNtYXQtZGF0ZXRpbWVwaWNrZXItY2FsZW5kYXItYm9keS10b2RheV09XCJ0b2RheVZhbHVlID09PSBpdGVtLnZhbHVlXCJcbiAgICAgICAgICBjbGFzcz1cImNtYXQtZGF0ZXRpbWVwaWNrZXItY2FsZW5kYXItYm9keS1jZWxsLWNvbnRlbnRcIj5cbiAgICAgICAgICB7eyBpdGVtLmRpc3BsYXlWYWx1ZSB9fVxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvdGQ+XG4gICAgfVxuICA8L3RyPlxufSJdfQ==
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItYm9keS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NtYXQvY29tcG9uZW50cy9tYXRlcmlhbC1kYXRldGltZXBpY2tlci9jYWxlbmRhci1ib2R5LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY21hdC9jb21wb25lbnRzL21hdGVyaWFsLWRhdGV0aW1lcGlja2VyL2NhbGVuZGFyLWJvZHkuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHaEk7O0dBRUc7QUFDSCxNQUFNLE9BQU8sdUNBQXVDO0lBQ2hELFlBQW1CLEtBQWEsRUFDckIsWUFBb0IsRUFDcEIsU0FBaUIsRUFDakIsT0FBZ0I7UUFIUixVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQ3JCLGlCQUFZLEdBQVosWUFBWSxDQUFRO1FBQ3BCLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFDakIsWUFBTyxHQUFQLE9BQU8sQ0FBUztJQUMzQixDQUFDO0NBQ0o7QUFFRDs7R0FFRztBQVdILE1BQU0sT0FBTyx1Q0FBdUM7SUFWcEQ7UUEwQkksMENBQTBDO1FBQ2pDLFlBQU8sR0FBRyxDQUFDLENBQUM7UUFFckIsb0RBQW9EO1FBQzNDLDJCQUFzQixHQUFHLEtBQUssQ0FBQztRQUV4Qyx1REFBdUQ7UUFDOUMsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUV4QiwwQ0FBMEM7UUFDaEMsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUVyQyxVQUFLLEdBQUcsbUNBQW1DLENBQUM7S0F5QnJFO0lBdkJHLDJFQUEyRTtJQUMzRSxJQUFJLGVBQWU7UUFDZixPQUFPLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN6RCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUE2QztRQUNyRCxJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2hELE9BQU87UUFDWCxDQUFDO1FBQ0QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELFlBQVksQ0FBQyxRQUFnQixFQUFFLFFBQWdCO1FBQzNDLElBQUksVUFBVSxHQUFHLFFBQVEsR0FBRyxJQUFJLENBQUMsT0FBTyxHQUFHLFFBQVEsQ0FBQztRQUVwRCxzRUFBc0U7UUFDdEUsSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUNYLFVBQVUsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQ3ZDLENBQUM7UUFFRCxPQUFPLFVBQVUsS0FBSyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQzFDLENBQUM7OEdBcERRLHVDQUF1QztrR0FBdkMsdUNBQXVDLDJlQzNCcEQsbXhEQXNDQzs7MkZEWFksdUNBQXVDO2tCQVZuRCxTQUFTOytCQUNJLHFDQUFxQyxpQkFHaEMsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxZQUNyQyxnQ0FBZ0MsY0FDOUIsSUFBSSxXQUNQLEVBQUU7OEJBSUYsS0FBSztzQkFBYixLQUFLO2dCQUdHLElBQUk7c0JBQVosS0FBSztnQkFHRyxVQUFVO3NCQUFsQixLQUFLO2dCQUdHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBR0cscUJBQXFCO3NCQUE3QixLQUFLO2dCQUdHLE9BQU87c0JBQWYsS0FBSztnQkFHRyxzQkFBc0I7c0JBQTlCLEtBQUs7Z0JBR0csVUFBVTtzQkFBbEIsS0FBSztnQkFHSSxtQkFBbUI7c0JBQTVCLE1BQU07Z0JBRWUsS0FBSztzQkFBMUIsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcblxyXG4vKipcclxuICogQW4gaW50ZXJuYWwgY2xhc3MgdGhhdCByZXByZXNlbnRzIHRoZSBkYXRhIGNvcnJlc3BvbmRpbmcgdG8gYSBzaW5nbGUgY2FsZW5kYXIgY2VsbC5cclxuICovXHJcbmV4cG9ydCBjbGFzcyBDbWF0RGF0ZXRpbWVwaWNrZXJDYWxlbmRhckNlbGxDb21wb25lbnQge1xyXG4gICAgY29uc3RydWN0b3IocHVibGljIHZhbHVlOiBudW1iZXIsXHJcbiAgICAgICAgcHVibGljIGRpc3BsYXlWYWx1ZTogc3RyaW5nLFxyXG4gICAgICAgIHB1YmxpYyBhcmlhTGFiZWw6IHN0cmluZyxcclxuICAgICAgICBwdWJsaWMgZW5hYmxlZDogYm9vbGVhbikge1xyXG4gICAgfVxyXG59XHJcblxyXG4vKipcclxuICogQW4gaW50ZXJuYWwgY29tcG9uZW50IHVzZWQgdG8gZGlzcGxheSBjYWxlbmRhciBkYXRhIGluIGEgdGFibGUuXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnW2NtYXQtZGF0ZXRpbWVwaWNrZXItY2FsZW5kYXItYm9keV0nLFxyXG4gICAgdGVtcGxhdGVVcmw6ICdjYWxlbmRhci1ib2R5Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJ2NhbGVuZGFyLWJvZHkuc2NzcyddLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgZXhwb3J0QXM6ICdjbWF0RGF0ZXRpbWVwaWNrZXJDYWxlbmRhckJvZHknLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDbWF0RGF0ZXRpbWVwaWNrZXJDYWxlbmRhckJvZHlDb21wb25lbnQge1xyXG4gICAgLyoqIFRoZSBsYWJlbCBmb3IgdGhlIHRhYmxlLiAoZS5nLiBcIkphbiAyMDE3XCIpLiAqL1xyXG4gICAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcclxuXHJcbiAgICAvKiogVGhlIGNlbGxzIHRvIGRpc3BsYXkgaW4gdGhlIHRhYmxlLiAqL1xyXG4gICAgQElucHV0KCkgcm93czogQ21hdERhdGV0aW1lcGlja2VyQ2FsZW5kYXJDZWxsQ29tcG9uZW50W11bXTtcclxuXHJcbiAgICAvKiogVGhlIHZhbHVlIGluIHRoZSB0YWJsZSB0aGF0IGNvcnJlc3BvbmRzIHRvIHRvZGF5LiAqL1xyXG4gICAgQElucHV0KCkgdG9kYXlWYWx1ZTogbnVtYmVyIHwgbnVsbDtcclxuXHJcbiAgICAvKiogVGhlIHZhbHVlIGluIHRoZSB0YWJsZSB0aGF0IGlzIGN1cnJlbnRseSBzZWxlY3RlZC4gKi9cclxuICAgIEBJbnB1dCgpIHNlbGVjdGVkVmFsdWU6IG51bWJlciB8IG51bGw7XHJcblxyXG4gICAgLyoqIFRoZSBtaW5pbXVtIG51bWJlciBvZiBmcmVlIGNlbGxzIG5lZWRlZCB0byBmaXQgdGhlIGxhYmVsIGluIHRoZSBmaXJzdCByb3cuICovXHJcbiAgICBASW5wdXQoKSBsYWJlbE1pblJlcXVpcmVkQ2VsbHM6IG51bWJlcjtcclxuXHJcbiAgICAvKiogVGhlIG51bWJlciBvZiBjb2x1bW5zIGluIHRoZSB0YWJsZS4gKi9cclxuICAgIEBJbnB1dCgpIG51bUNvbHMgPSA3O1xyXG5cclxuICAgIC8qKiBXaGV0aGVyIHRvIGFsbG93IHNlbGVjdGlvbiBvZiBkaXNhYmxlZCBjZWxscy4gKi9cclxuICAgIEBJbnB1dCgpIGFsbG93RGlzYWJsZWRTZWxlY3Rpb24gPSBmYWxzZTtcclxuXHJcbiAgICAvKiogVGhlIGNlbGwgbnVtYmVyIG9mIHRoZSBhY3RpdmUgY2VsbCBpbiB0aGUgdGFibGUuICovXHJcbiAgICBASW5wdXQoKSBhY3RpdmVDZWxsID0gMDtcclxuXHJcbiAgICAvKiogRW1pdHMgd2hlbiBhIG5ldyB2YWx1ZSBpcyBzZWxlY3RlZC4gKi9cclxuICAgIEBPdXRwdXQoKSBzZWxlY3RlZFZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XHJcblxyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpIGNsYXNzID0gJ2NtYXQtZGF0ZXRpbWVwaWNrZXItY2FsZW5kYXItYm9keSc7XHJcblxyXG4gICAgLyoqIFRoZSBudW1iZXIgb2YgYmxhbmsgY2VsbHMgdG8gcHV0IGF0IHRoZSBiZWdpbm5pbmcgZm9yIHRoZSBmaXJzdCByb3cuICovXHJcbiAgICBnZXQgX2ZpcnN0Um93T2Zmc2V0KCk6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMucm93cyAmJiB0aGlzLnJvd3MubGVuZ3RoICYmIHRoaXMucm93c1swXS5sZW5ndGggP1xyXG4gICAgICAgICAgICB0aGlzLm51bUNvbHMgLSB0aGlzLnJvd3NbMF0ubGVuZ3RoIDogMDtcclxuICAgIH1cclxuXHJcbiAgICBjZWxsQ2xpY2tlZChjZWxsOiBDbWF0RGF0ZXRpbWVwaWNrZXJDYWxlbmRhckNlbGxDb21wb25lbnQpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoaXMuYWxsb3dEaXNhYmxlZFNlbGVjdGlvbiAmJiAhY2VsbC5lbmFibGVkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlQ2hhbmdlLmVtaXQoY2VsbC52YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgaXNBY3RpdmVDZWxsKHJvd0luZGV4OiBudW1iZXIsIGNvbEluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcclxuICAgICAgICBsZXQgY2VsbE51bWJlciA9IHJvd0luZGV4ICogdGhpcy5udW1Db2xzICsgY29sSW5kZXg7XHJcblxyXG4gICAgICAgIC8vIEFjY291bnQgZm9yIHRoZSBmYWN0IHRoYXQgdGhlIGZpcnN0IHJvdyBtYXkgbm90IGhhdmUgYXMgbWFueSBjZWxscy5cclxuICAgICAgICBpZiAocm93SW5kZXgpIHtcclxuICAgICAgICAgICAgY2VsbE51bWJlciAtPSB0aGlzLl9maXJzdFJvd09mZnNldDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBjZWxsTnVtYmVyID09PSB0aGlzLmFjdGl2ZUNlbGw7XHJcbiAgICB9XHJcbn1cclxuIiwiPCEtLVxuSWYgdGhlcmUncyBub3QgZW5vdWdoIHNwYWNlIGluIHRoZSBmaXJzdCByb3csIGNyZWF0ZSBhIHNlcGFyYXRlIGxhYmVsIHJvdy4gV2UgbWFyayB0aGlzIHJvdyBhc1xuYXJpYS1oaWRkZW4gYmVjYXVzZSB3ZSBkb24ndCB3YW50IGl0IHRvIGJlIHJlYWQgb3V0IGFzIG9uZSBvZiB0aGUgd2Vla3MgaW4gdGhlIG1vbnRoLlxuLS0+XG5AaWYgKF9maXJzdFJvd09mZnNldCA8IGxhYmVsTWluUmVxdWlyZWRDZWxscykge1xuICA8dHIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XG4gICAgPHRkIFthdHRyLmNvbHNwYW5dPVwibnVtQ29sc1wiIGNsYXNzPVwiY21hdC1kYXRldGltZXBpY2tlci1jYWxlbmRhci1ib2R5LWxhYmVsXCI+e3sgbGFiZWwgfX08L3RkPlxuICA8L3RyPlxufVxuXG48IS0tIENyZWF0ZSB0aGUgZmlyc3Qgcm93IHNlcGFyYXRlbHkgc28gd2UgY2FuIGluY2x1ZGUgYSBzcGVjaWFsIHNwYWNlciBjZWxsLiAtLT5cbkBmb3IgKHJvdyBvZiByb3dzOyB0cmFjayAkaW5kZXg7IGxldCByb3dJbmRleCA9ICRpbmRleCkge1xuICA8dHIgcm9sZT1cInJvd1wiPlxuICAgIDwhLS1cbiAgICBXZSBtYXJrIHRoaXMgY2VsbCBhcyBhcmlhLWhpZGRlbiBzbyBpdCBkb2Vzbid0IGdldCByZWFkIG91dCBhcyBvbmUgb2YgdGhlIGRheXMgaW4gdGhlIHdlZWsuXG4gICAgLS0+XG4gICAgQGlmIChyb3dJbmRleCA9PT0gMCAmJiBfZmlyc3RSb3dPZmZzZXQpIHtcbiAgICAgIDx0ZCBbYXR0ci5jb2xzcGFuXT1cIl9maXJzdFJvd09mZnNldFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgIGNsYXNzPVwiY21hdC1kYXRldGltZXBpY2tlci1jYWxlbmRhci1ib2R5LWxhYmVsXCI+XG4gICAgICAgIHt7IF9maXJzdFJvd09mZnNldCA+PSBsYWJlbE1pblJlcXVpcmVkQ2VsbHMgPyBsYWJlbCA6ICcnIH19XG4gICAgICA8L3RkPlxuICAgIH1cbiAgICBAZm9yIChpdGVtIG9mIHJvdzsgdHJhY2sgJGluZGV4OyBsZXQgY29sSW5kZXggPSAkaW5kZXgpIHtcbiAgICAgIDx0ZCByb2xlPVwicHJlc2VudGF0aW9uXCIgKGNsaWNrKT1cImNlbGxDbGlja2VkKGl0ZW0pXCJcbiAgICAgICAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCIhaXRlbS5lbmFibGVkIHx8IG51bGxcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIml0ZW0uYXJpYUxhYmVsXCJcbiAgICAgICAgW2NsYXNzLmNtYXQtZGF0ZXRpbWVwaWNrZXItY2FsZW5kYXItYm9keS1hY3RpdmVdPVwiaXNBY3RpdmVDZWxsKHJvd0luZGV4LCBjb2xJbmRleClcIlxuICAgICAgICBbY2xhc3MuY21hdC1kYXRldGltZXBpY2tlci1jYWxlbmRhci1ib2R5LWRpc2FibGVkXT1cIiFpdGVtLmVuYWJsZWRcIlxuICAgICAgICBjbGFzcz1cImNtYXQtZGF0ZXRpbWVwaWNrZXItY2FsZW5kYXItYm9keS1jZWxsXCIgcm9sZT1cImJ1dHRvblwiPlxuICAgICAgICA8ZGl2IFthdHRyLmFyaWEtc2VsZWN0ZWRdPVwic2VsZWN0ZWRWYWx1ZSA9PT0gaXRlbS52YWx1ZVwiXG4gICAgICAgICAgW2NsYXNzLmNtYXQtZGF0ZXRpbWVwaWNrZXItY2FsZW5kYXItYm9keS1zZWxlY3RlZF09XCJzZWxlY3RlZFZhbHVlID09PSBpdGVtLnZhbHVlXCJcbiAgICAgICAgICBbY2xhc3MuY21hdC1kYXRldGltZXBpY2tlci1jYWxlbmRhci1ib2R5LXRvZGF5XT1cInRvZGF5VmFsdWUgPT09IGl0ZW0udmFsdWVcIlxuICAgICAgICAgIGNsYXNzPVwiY21hdC1kYXRldGltZXBpY2tlci1jYWxlbmRhci1ib2R5LWNlbGwtY29udGVudFwiPlxuICAgICAgICAgIHt7IGl0ZW0uZGlzcGxheVZhbHVlIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC90ZD5cbiAgICB9XG4gIDwvdHI+XG59Il19