@f1falcha/stimulus 1.0.0

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 (576) hide show
  1. package/accordion/accordion-config.scss +18 -0
  2. package/accordion/accordion-item/accordion-item.component.d.ts +11 -0
  3. package/accordion/accordion-item-body/accordion-item-body.component.d.ts +10 -0
  4. package/accordion/accordion-item-header/accordion-item-header.component.d.ts +15 -0
  5. package/accordion/accordion.d.ts +12 -0
  6. package/accordion/accordion.icon.d.ts +3 -0
  7. package/accordion/accordion.scss +41 -0
  8. package/account-card/account-card-config.scss +36 -0
  9. package/account-card/account-card-header/account-card-header-config.scss +9 -0
  10. package/account-card/account-card-header/account-card-header.component.d.ts +12 -0
  11. package/account-card/account-card-header/account-card-header.scss +11 -0
  12. package/account-card/account-card.component.d.ts +16 -0
  13. package/account-card/account-card.scss +19 -0
  14. package/alert/alert-animation.d.ts +6 -0
  15. package/alert/alert-config.d.ts +26 -0
  16. package/alert/alert-config.scss +43 -0
  17. package/alert/alert-icon.d.ts +3 -0
  18. package/alert/alert-ref.d.ts +11 -0
  19. package/alert/alert.d.ts +23 -0
  20. package/alert/alert.scss +91 -0
  21. package/alert/alert.service.d.ts +31 -0
  22. package/avatar/avatar-config.scss +12 -0
  23. package/avatar/avatar.d.ts +21 -0
  24. package/avatar/avatar.scss +2 -0
  25. package/badge/badge-config.scss +68 -0
  26. package/badge/badge.d.ts +17 -0
  27. package/badge/badge.scss +21 -0
  28. package/bank-logo.provider.d.ts +7 -0
  29. package/bordered-section/bordered-section-config.scss +24 -0
  30. package/bordered-section/bordered-section.d.ts +15 -0
  31. package/bordered-section/bordered-section.scss +22 -0
  32. package/box-shadow/box-shadow-config.scss +18 -0
  33. package/button/button-config.scss +342 -0
  34. package/button/button.d.ts +10 -0
  35. package/button/button.scss +62 -0
  36. package/button-group/button-group-config.scss +12 -0
  37. package/button-group/button-group-header/button-group-header-config.scss +9 -0
  38. package/button-group/button-group-header/button-group-header.d.ts +8 -0
  39. package/button-group/button-group-header/button-group-header.scss +5 -0
  40. package/button-group/button-group.d.ts +11 -0
  41. package/button-group/buttton-group.scss +19 -0
  42. package/button-spinner/button-spinner-config.scss +15 -0
  43. package/button-spinner/button-spinner.scss +30 -0
  44. package/card/card-config.scss +15 -0
  45. package/card/card.component.d.ts +8 -0
  46. package/card/card.scss +14 -0
  47. package/chart/chart-config.scss +21 -0
  48. package/chart/chart.component.d.ts +21 -0
  49. package/chart/chart.component.scss +34 -0
  50. package/checkbox/checkbox-config.scss +62 -0
  51. package/checkbox/checkbox.scss +45 -0
  52. package/checkbox-dropdown/checkbox-dropdown.component.d.ts +139 -0
  53. package/checkbox-dropdown/checkbox-dropdown.component.scss +11 -0
  54. package/checkbox-dropdown/checkbox-dropdown.icon.d.ts +3 -0
  55. package/clipboard/clipboard-config.scss +23 -0
  56. package/clipboard/clipboard.component.d.ts +15 -0
  57. package/clipboard/clipboard.component.scss +37 -0
  58. package/clipboard/clipboard.icon.d.ts +3 -0
  59. package/color/cherry.scss +19 -0
  60. package/color/chilli.scss +19 -0
  61. package/color/comet.scss +19 -0
  62. package/color/cotton-candy.scss +19 -0
  63. package/color/default.scss +154 -0
  64. package/color/emerald.scss +19 -0
  65. package/color/goblin.scss +19 -0
  66. package/color/jacaranda.scss +19 -0
  67. package/color/mars.scss +19 -0
  68. package/color/orchid.scss +19 -0
  69. package/color/spaceship.scss +19 -0
  70. package/color/summer.scss +19 -0
  71. package/color/tiger-lily.scss +19 -0
  72. package/color-wrapper/color-wrapper-config.scss +37 -0
  73. package/color-wrapper/color-wrapper.d.ts +17 -0
  74. package/color-wrapper/color-wrapper.scss +23 -0
  75. package/column-seperator/column-separator-config.scss +16 -0
  76. package/column-seperator/column-separator.d.ts +14 -0
  77. package/column-seperator/column-separator.scss +25 -0
  78. package/column-text/column-text.config.scss +12 -0
  79. package/column-text/column-text.d.ts +11 -0
  80. package/column-text/column-text.scss +22 -0
  81. package/container/container-config.scss +12 -0
  82. package/container/container.component.d.ts +12 -0
  83. package/container/container.scss +19 -0
  84. package/custom-datepicker/custom-datepicker-config.scss +50 -0
  85. package/custom-datepicker/custom-datepicker.component.d.ts +80 -0
  86. package/custom-datepicker/custom-datepicker.component.scss +127 -0
  87. package/custom-datepicker/custom-datepicker.model.d.ts +18 -0
  88. package/custom-datepicker/datepicker.icon.d.ts +3 -0
  89. package/custom-datepicker/timepicker/timepicker.component.d.ts +37 -0
  90. package/custom-datepicker/timepicker/timepicker.component.scss +79 -0
  91. package/data-list/data-list.config.scss +35 -0
  92. package/data-list/data-list.d.ts +13 -0
  93. package/data-list/data-list.scss +67 -0
  94. package/date-range-picker/date-range-picker.d.ts +40 -0
  95. package/datepicker/datepicker.config.scss +0 -0
  96. package/datepicker/datepicker.d.ts +45 -0
  97. package/datepicker/datepicker.scss +0 -0
  98. package/datepicker-icon/datepicker-icon-config.scss +10 -0
  99. package/datepicker-icon/datepicker-icon.d.ts +6 -0
  100. package/datepicker-icon/datepicker-icon.scss +7 -0
  101. package/datepicker.provider.d.ts +2 -0
  102. package/detail-panel/detail-panel-config.scss +16 -0
  103. package/detail-panel/detail-panel-row/detail-panel-column/detail-panel-column-config.scss +11 -0
  104. package/detail-panel/detail-panel-row/detail-panel-column/detail-panel-column.d.ts +6 -0
  105. package/detail-panel/detail-panel-row/detail-panel-column/detail-panel-column.scss +15 -0
  106. package/detail-panel/detail-panel-row/detail-panel-row.d.ts +6 -0
  107. package/detail-panel/detail-panel-row/detail-panel-row.scss +5 -0
  108. package/detail-panel/detail-panel-title/detail-panel-title-config.scss +14 -0
  109. package/detail-panel/detail-panel-title/detail-panel-title.d.ts +7 -0
  110. package/detail-panel/detail-panel-title/detail-panel-title.scss +16 -0
  111. package/detail-panel/detail-panel.d.ts +11 -0
  112. package/detail-panel/detail-panel.scss +50 -0
  113. package/dialog/dialog-body/dialog-body.component.d.ts +6 -0
  114. package/dialog/dialog-config.scss +24 -0
  115. package/dialog/dialog-container/dialog-container-config.scss +9 -0
  116. package/dialog/dialog-container/dialog-container.component.d.ts +6 -0
  117. package/dialog/dialog-container/dialog-container.scss +6 -0
  118. package/dialog/dialog-footer/dialog-footer.component.d.ts +6 -0
  119. package/dialog/dialog-footer/dialog-footer.scss +6 -0
  120. package/dialog/dialog-header/dialog-header-config.scss +14 -0
  121. package/dialog/dialog-header/dialog-header.component.d.ts +10 -0
  122. package/dialog/dialog-header/dialog-header.scss +16 -0
  123. package/dialog/dialog-icon.d.ts +3 -0
  124. package/dialog/dialog.component.d.ts +12 -0
  125. package/dialog/dialog.scss +27 -0
  126. package/dialog.provider.d.ts +3 -0
  127. package/dialog.ref.d.ts +4 -0
  128. package/dialog.service.d.ts +7 -0
  129. package/dropdown/context-menu-config.scss +23 -0
  130. package/dropdown/context-menu-content/context-menu-content.d.ts +9 -0
  131. package/dropdown/context-menu-item.d.ts +10 -0
  132. package/dropdown/context-menu-list/context-menu-list.d.ts +9 -0
  133. package/dropdown/context-menu.d.ts +19 -0
  134. package/dropdown/context-menu.scss +41 -0
  135. package/error-page-container/error-content/error-content-config.scss +29 -0
  136. package/error-page-container/error-content/error-content.d.ts +24 -0
  137. package/error-page-container/error-content/error-content.scss +58 -0
  138. package/error-page-container/error-page-container.d.ts +6 -0
  139. package/error-page-container/error-page-container.scss +15 -0
  140. package/esm2022/accordion/accordion-item/accordion-item.component.mjs +23 -0
  141. package/esm2022/accordion/accordion-item-body/accordion-item-body.component.mjs +18 -0
  142. package/esm2022/accordion/accordion-item-header/accordion-item-header.component.mjs +41 -0
  143. package/esm2022/accordion/accordion.icon.mjs +25 -0
  144. package/esm2022/accordion/accordion.mjs +14 -0
  145. package/esm2022/account-card/account-card-header/account-card-header.component.mjs +30 -0
  146. package/esm2022/account-card/account-card.component.mjs +64 -0
  147. package/esm2022/alert/alert-animation.mjs +9 -0
  148. package/esm2022/alert/alert-config.mjs +13 -0
  149. package/esm2022/alert/alert-icon.mjs +33 -0
  150. package/esm2022/alert/alert-ref.mjs +23 -0
  151. package/esm2022/alert/alert.mjs +50 -0
  152. package/esm2022/alert/alert.service.mjs +112 -0
  153. package/esm2022/avatar/avatar.mjs +91 -0
  154. package/esm2022/badge/badge.mjs +77 -0
  155. package/esm2022/bank-logo.provider.mjs +12 -0
  156. package/esm2022/bordered-section/bordered-section.mjs +70 -0
  157. package/esm2022/button/button.mjs +26 -0
  158. package/esm2022/button-group/button-group-header/button-group-header.mjs +24 -0
  159. package/esm2022/button-group/button-group.mjs +41 -0
  160. package/esm2022/card/card.component.mjs +28 -0
  161. package/esm2022/chart/chart.component.mjs +70 -0
  162. package/esm2022/checkbox-dropdown/checkbox-dropdown.component.mjs +232 -0
  163. package/esm2022/checkbox-dropdown/checkbox-dropdown.icon.mjs +14 -0
  164. package/esm2022/clipboard/clipboard.component.mjs +36 -0
  165. package/esm2022/clipboard/clipboard.icon.mjs +6 -0
  166. package/esm2022/color-wrapper/color-wrapper.mjs +82 -0
  167. package/esm2022/column-seperator/column-separator.mjs +62 -0
  168. package/esm2022/column-text/column-text.mjs +38 -0
  169. package/esm2022/container/container.component.mjs +46 -0
  170. package/esm2022/custom-datepicker/custom-datepicker.component.mjs +364 -0
  171. package/esm2022/custom-datepicker/custom-datepicker.model.mjs +12 -0
  172. package/esm2022/custom-datepicker/datepicker.icon.mjs +7 -0
  173. package/esm2022/custom-datepicker/timepicker/timepicker.component.mjs +195 -0
  174. package/esm2022/data-list/data-list.mjs +46 -0
  175. package/esm2022/date-range-picker/date-range-picker.mjs +207 -0
  176. package/esm2022/datepicker/datepicker.mjs +153 -0
  177. package/esm2022/datepicker-icon/datepicker-icon.mjs +18 -0
  178. package/esm2022/datepicker.provider.mjs +6 -0
  179. package/esm2022/detail-panel/detail-panel-row/detail-panel-column/detail-panel-column.mjs +15 -0
  180. package/esm2022/detail-panel/detail-panel-row/detail-panel-row.mjs +15 -0
  181. package/esm2022/detail-panel/detail-panel-title/detail-panel-title.mjs +19 -0
  182. package/esm2022/detail-panel/detail-panel.mjs +36 -0
  183. package/esm2022/dialog/dialog-body/dialog-body.component.mjs +16 -0
  184. package/esm2022/dialog/dialog-container/dialog-container.component.mjs +16 -0
  185. package/esm2022/dialog/dialog-footer/dialog-footer.component.mjs +16 -0
  186. package/esm2022/dialog/dialog-header/dialog-header.component.mjs +25 -0
  187. package/esm2022/dialog/dialog-icon.mjs +8 -0
  188. package/esm2022/dialog/dialog.component.mjs +36 -0
  189. package/esm2022/dialog.provider.mjs +5 -0
  190. package/esm2022/dialog.ref.mjs +4 -0
  191. package/esm2022/dialog.service.mjs +15 -0
  192. package/esm2022/dropdown/context-menu-content/context-menu-content.mjs +18 -0
  193. package/esm2022/dropdown/context-menu-item.mjs +28 -0
  194. package/esm2022/dropdown/context-menu-list/context-menu-list.mjs +18 -0
  195. package/esm2022/dropdown/context-menu.mjs +61 -0
  196. package/esm2022/error-page-container/error-content/error-content.mjs +49 -0
  197. package/esm2022/error-page-container/error-page-container.mjs +18 -0
  198. package/esm2022/extract-inital/extract-initial.mjs +21 -0
  199. package/esm2022/f1softinternational-stimulus.mjs +5 -0
  200. package/esm2022/file-uploader/file-uploader-icon.mjs +13 -0
  201. package/esm2022/file-uploader/file-uploader.mjs +274 -0
  202. package/esm2022/file-uploader/file-uploader.ref.mjs +3 -0
  203. package/esm2022/file-uploader/file-uploader.service.mjs +26 -0
  204. package/esm2022/filter/filter.mjs +173 -0
  205. package/esm2022/form/form-control/form-control-action.mjs +18 -0
  206. package/esm2022/form/form-control/form-control-icon.mjs +18 -0
  207. package/esm2022/form/form-control/form-field.mjs +86 -0
  208. package/esm2022/form/form-control-wrapper/form-control-wrapper.component.mjs +22 -0
  209. package/esm2022/form/form-error-messages.mjs +43 -0
  210. package/esm2022/form/form-message/form-message.mjs +30 -0
  211. package/esm2022/form/select-input-field/select-input-field.mjs +14 -0
  212. package/esm2022/form/validate-and-submit.mjs +54 -0
  213. package/esm2022/full-container/full-container.component.mjs +30 -0
  214. package/esm2022/grid/grid-item.component.mjs +24 -0
  215. package/esm2022/grid/grid.component.mjs +56 -0
  216. package/esm2022/grid-row/grid-row.mjs +18 -0
  217. package/esm2022/icon/icons.mjs +619 -0
  218. package/esm2022/image-card/illustration.pipe.mjs +57 -0
  219. package/esm2022/image-card/image-card.component.mjs +22 -0
  220. package/esm2022/image-panel/image-panel.component.mjs +88 -0
  221. package/esm2022/info-column/info-column.mjs +18 -0
  222. package/esm2022/info-slider/info-slider.component.mjs +50 -0
  223. package/esm2022/inline-alert/inline-alert.mjs +51 -0
  224. package/esm2022/inline-group/inline-group.component.mjs +32 -0
  225. package/esm2022/input/input.mjs +25 -0
  226. package/esm2022/label/label.mjs +18 -0
  227. package/esm2022/layout/layout.component.mjs +23 -0
  228. package/esm2022/link/link.mjs +79 -0
  229. package/esm2022/media-preview/media-preview-icon.mjs +41 -0
  230. package/esm2022/media-preview/media-preview-modal/media-preview-modal.mjs +128 -0
  231. package/esm2022/media-preview/media-preview.mjs +131 -0
  232. package/esm2022/media-preview/media_preview.service.mjs +31 -0
  233. package/esm2022/menu/menu-icon.mjs +29 -0
  234. package/esm2022/menu/menu.component.mjs +151 -0
  235. package/esm2022/nebular-icon.mjs +179 -0
  236. package/esm2022/otp-input/otp-input.component.mjs +106 -0
  237. package/esm2022/otp-input/otp-input.icon.mjs +13 -0
  238. package/esm2022/page-container/page-container-info/page-container-info.component.mjs +28 -0
  239. package/esm2022/page-container/page-container.component.mjs +63 -0
  240. package/esm2022/page-header/page-header.component.mjs +47 -0
  241. package/esm2022/page-header/page-header.icons.mjs +8 -0
  242. package/esm2022/page-header/page-sub-heading/page-sub-heading.component.mjs +12 -0
  243. package/esm2022/page-loader/page-loader.component.mjs +47 -0
  244. package/esm2022/pagination/pagination.icon.mjs +11 -0
  245. package/esm2022/pagination/pagination.mjs +170 -0
  246. package/esm2022/popover-content/popover-content-item/popover-content-item.component.mjs +15 -0
  247. package/esm2022/popover-content/popover-content.component.mjs +23 -0
  248. package/esm2022/preview-box/preview-box.component.mjs +73 -0
  249. package/esm2022/progress-bar/progress-bar.component.mjs +31 -0
  250. package/esm2022/progress-chart/progress-chart.component.mjs +87 -0
  251. package/esm2022/public-api.mjs +141 -0
  252. package/esm2022/radio-card-group/radio-card/radio-card.component.mjs +86 -0
  253. package/esm2022/radio-card-group/radio-card-group.component.mjs +61 -0
  254. package/esm2022/regex-checker/regex-checker-icon.mjs +18 -0
  255. package/esm2022/regex-checker/regex-checker.mjs +77 -0
  256. package/esm2022/regex-checker/regex-validity-icon.pipe.mjs +25 -0
  257. package/esm2022/ribbon/ribbon-icon.mjs +8 -0
  258. package/esm2022/ribbon/ribbon.mjs +37 -0
  259. package/esm2022/round-checkbox/round-checkbox.component.mjs +43 -0
  260. package/esm2022/row/column/column.component.mjs +19 -0
  261. package/esm2022/row/row.component.mjs +32 -0
  262. package/esm2022/scrollable-content/scrollable-content.component.mjs +22 -0
  263. package/esm2022/section-header/section-header.component.mjs +29 -0
  264. package/esm2022/section-row/section-row.mjs +35 -0
  265. package/esm2022/section-separator/section-separator.mjs +69 -0
  266. package/esm2022/section-shell/section-shell.component.mjs +45 -0
  267. package/esm2022/select/select.component.mjs +137 -0
  268. package/esm2022/select-card/select-card-icon.mjs +24 -0
  269. package/esm2022/select-card/select-card.component.mjs +117 -0
  270. package/esm2022/select-country/select-country.component.mjs +86 -0
  271. package/esm2022/shell/checker-sidebar/checker-sidebar.component.mjs +19 -0
  272. package/esm2022/shell/maker-sidebar/maker-sidebar.component.mjs +19 -0
  273. package/esm2022/shell/nebular-icons.mjs +180 -0
  274. package/esm2022/shell/shell-icons.mjs +474 -0
  275. package/esm2022/shell/shell-sidebar/shell-sidebar.component.mjs +38 -0
  276. package/esm2022/shell/shell.component.mjs +77 -0
  277. package/esm2022/side-drawer/side-drawer.mjs +15 -0
  278. package/esm2022/side-drawer/side-drawer.service.mjs +71 -0
  279. package/esm2022/size/component-size.mjs +2 -0
  280. package/esm2022/spinner/spinner.mjs +32 -0
  281. package/esm2022/stepper/step/step.mjs +20 -0
  282. package/esm2022/stepper/step/step.pipe.mjs +21 -0
  283. package/esm2022/stepper/step-header/step-header.mjs +29 -0
  284. package/esm2022/stepper/stepper-button/stepper-next.mjs +21 -0
  285. package/esm2022/stepper/stepper-button/stepper-previous.mjs +21 -0
  286. package/esm2022/stepper/stepper.mjs +56 -0
  287. package/esm2022/stimulus.module.mjs +891 -0
  288. package/esm2022/table/table-column/scl-table-column.mjs +54 -0
  289. package/esm2022/table/table-icon.mjs +13 -0
  290. package/esm2022/table/table-text/scl-table-text.mjs +51 -0
  291. package/esm2022/table/table.config.mjs +15 -0
  292. package/esm2022/table/table.mjs +186 -0
  293. package/esm2022/table-action-control/table-action-control.component.mjs +20 -0
  294. package/esm2022/tabset/tab/tab.component.mjs +29 -0
  295. package/esm2022/tabset/tab-directive/tabset.directive.mjs +22 -0
  296. package/esm2022/tabset/tabset.component.mjs +40 -0
  297. package/esm2022/taglist/tag/tag.component.mjs +51 -0
  298. package/esm2022/taglist/tag/tag.directive.mjs +30 -0
  299. package/esm2022/taglist/taglist.component.mjs +39 -0
  300. package/esm2022/text-decoration/text-decoration.component.mjs +26 -0
  301. package/esm2022/text-editor/text-editor.mjs +263 -0
  302. package/esm2022/theme.provider.mjs +9 -0
  303. package/esm2022/timeline/timeline.component.mjs +66 -0
  304. package/esm2022/timepicker/timepicker.component.mjs +377 -0
  305. package/esm2022/timepicker/timepicker.icon.mjs +7 -0
  306. package/esm2022/timepicker/timepicker.model.mjs +6 -0
  307. package/esm2022/toggle/toggle-description/toggle-description.mjs +18 -0
  308. package/esm2022/toggle/toggle.mjs +75 -0
  309. package/esm2022/toggle-password/toggle-password.component.mjs +54 -0
  310. package/esm2022/toggle-password/toggle-password.directive.mjs +26 -0
  311. package/esm2022/toggle-password/toggle-password.icon.mjs +13 -0
  312. package/esm2022/treeview/treeview-header/treeview-header.mjs +26 -0
  313. package/esm2022/treeview/treeview.icon.mjs +53 -0
  314. package/esm2022/treeview/treeview.mjs +319 -0
  315. package/esm2022/truncate/truncate.component.mjs +53 -0
  316. package/esm2022/typography/typography.mjs +168 -0
  317. package/extract-inital/extract-initial.d.ts +8 -0
  318. package/f1softinternational-stimulus-1.0.0.tgz +0 -0
  319. package/fesm2022/f1softinternational-stimulus.mjs +10275 -0
  320. package/file-uploader/file-upload-config.scss +48 -0
  321. package/file-uploader/file-upload.scss +77 -0
  322. package/file-uploader/file-uploader-icon.d.ts +3 -0
  323. package/file-uploader/file-uploader.d.ts +84 -0
  324. package/file-uploader/file-uploader.ref.d.ts +6 -0
  325. package/file-uploader/file-uploader.service.d.ts +11 -0
  326. package/filter/filter.d.ts +48 -0
  327. package/flag/_flags.scss +9 -0
  328. package/form/form-config.scss +14 -0
  329. package/form/form-control/form-control-action.d.ts +6 -0
  330. package/form/form-control/form-control-config.scss +9 -0
  331. package/form/form-control/form-control-icon.d.ts +6 -0
  332. package/form/form-control/form-control.scss +17 -0
  333. package/form/form-control/form-field.d.ts +26 -0
  334. package/form/form-control-wrapper/form-control-wrapper-config.scss +11 -0
  335. package/form/form-control-wrapper/form-control-wrapper.component.d.ts +8 -0
  336. package/form/form-control-wrapper/form-control-wrapper.scss +17 -0
  337. package/form/form-error-messages.d.ts +8 -0
  338. package/form/form-message/form-message-config.scss +7 -0
  339. package/form/form-message/form-message.d.ts +15 -0
  340. package/form/form-message/form-message.scss +6 -0
  341. package/form/form.scss +22 -0
  342. package/form/select-input-field/select-input-field-config.scss +13 -0
  343. package/form/select-input-field/select-input-field.d.ts +6 -0
  344. package/form/select-input-field/select-input-field.scss +43 -0
  345. package/form/validate-and-submit.d.ts +14 -0
  346. package/full-container/full-container-config.scss +16 -0
  347. package/full-container/full-container.component.d.ts +11 -0
  348. package/full-container/full-container.component.scss +54 -0
  349. package/grid/grid-config.scss +14 -0
  350. package/grid/grid-item.component.d.ts +8 -0
  351. package/grid/grid.component.d.ts +10 -0
  352. package/grid/grid.component.scss +26 -0
  353. package/grid-row/grid-row.config.scss +9 -0
  354. package/grid-row/grid-row.d.ts +6 -0
  355. package/grid-row/grid-row.scss +7 -0
  356. package/icon/icon.config.scss +9 -0
  357. package/icon/icon.scss +9 -0
  358. package/icon/icons.d.ts +3 -0
  359. package/image-card/illustration.pipe.d.ts +8 -0
  360. package/image-card/image-card-config.scss +29 -0
  361. package/image-card/image-card.component.d.ts +8 -0
  362. package/image-card/image-card.scss +37 -0
  363. package/image-panel/image-panel-config.scss +30 -0
  364. package/image-panel/image-panel.component.d.ts +26 -0
  365. package/image-panel/image-panel.component.scss +80 -0
  366. package/index.d.ts +6 -0
  367. package/info-column/info-column-config.scss +14 -0
  368. package/info-column/info-column.d.ts +7 -0
  369. package/info-column/info-column.scss +17 -0
  370. package/info-slider/info-slider-config.scss +10 -0
  371. package/info-slider/info-slider.component.d.ts +16 -0
  372. package/info-slider/info-slider.component.scss +21 -0
  373. package/inline-alert/inline-alert-config.scss +12 -0
  374. package/inline-alert/inline-alert.d.ts +20 -0
  375. package/inline-alert/inline-alert.scss +16 -0
  376. package/inline-group/inline-group.component.d.ts +10 -0
  377. package/inline-group/inline-group.component.scss +15 -0
  378. package/input/input-config.scss +57 -0
  379. package/input/input.d.ts +10 -0
  380. package/input/input.scss +68 -0
  381. package/label/label-config.scss +13 -0
  382. package/label/label.d.ts +6 -0
  383. package/label/label.scss +10 -0
  384. package/layout/layout.component.d.ts +9 -0
  385. package/link/link-config.scss +89 -0
  386. package/link/link.d.ts +19 -0
  387. package/link/link.scss +157 -0
  388. package/media-preview/media-preview-config.scss +15 -0
  389. package/media-preview/media-preview-icon.d.ts +3 -0
  390. package/media-preview/media-preview-modal/media-preview-modal.d.ts +31 -0
  391. package/media-preview/media-preview-modal/media-preview-modal.scss +148 -0
  392. package/media-preview/media-preview-modal/media-previw-modal-config.scss +44 -0
  393. package/media-preview/media-preview.d.ts +48 -0
  394. package/media-preview/media-preview.scss +59 -0
  395. package/media-preview/media_preview.service.d.ts +16 -0
  396. package/menu/menu-config.scss +33 -0
  397. package/menu/menu-icon.d.ts +3 -0
  398. package/menu/menu.component.d.ts +47 -0
  399. package/menu/menu.component.scss +80 -0
  400. package/nebular-icon.d.ts +3 -0
  401. package/otp-input/otp-input-config.scss +22 -0
  402. package/otp-input/otp-input.component.d.ts +33 -0
  403. package/otp-input/otp-input.component.scss +52 -0
  404. package/otp-input/otp-input.icon.d.ts +3 -0
  405. package/package.json +57 -0
  406. package/page-container/page-container-config.scss +9 -0
  407. package/page-container/page-container-info/page-container-info-config.scss +9 -0
  408. package/page-container/page-container-info/page-container-info.component.d.ts +10 -0
  409. package/page-container/page-container-info/page-container-info.scss +6 -0
  410. package/page-container/page-container.component.d.ts +14 -0
  411. package/page-container/page-container.component.scss +11 -0
  412. package/page-header/page-header-config.scss +28 -0
  413. package/page-header/page-header.component.d.ts +18 -0
  414. package/page-header/page-header.component.scss +37 -0
  415. package/page-header/page-header.icons.d.ts +3 -0
  416. package/page-header/page-sub-heading/page-sub-heading.component.d.ts +6 -0
  417. package/page-loader/page-loader-config.scss +23 -0
  418. package/page-loader/page-loader.component.d.ts +13 -0
  419. package/page-loader/page-loader.component.scss +44 -0
  420. package/pagination/pagination-config.scss +24 -0
  421. package/pagination/pagination.d.ts +47 -0
  422. package/pagination/pagination.icon.d.ts +3 -0
  423. package/pagination/pagination.scss +67 -0
  424. package/popover-content/popover-content-item/popover-content-item-config.scss +22 -0
  425. package/popover-content/popover-content-item/popover-content-item.component.d.ts +6 -0
  426. package/popover-content/popover-content-item/popover-content-item.scss +36 -0
  427. package/popover-content/popover-content.component.d.ts +14 -0
  428. package/preview-box/preview-box-config.scss +52 -0
  429. package/preview-box/preview-box.component.d.ts +31 -0
  430. package/preview-box/preview-box.component.scss +101 -0
  431. package/progress-bar/progress-bar-config.scss +14 -0
  432. package/progress-bar/progress-bar.component.d.ts +10 -0
  433. package/progress-bar/progress-bar.component.scss +13 -0
  434. package/progress-chart/progress-chart-config.scss +15 -0
  435. package/progress-chart/progress-chart.component.d.ts +21 -0
  436. package/progress-chart/progress-chart.component.scss +41 -0
  437. package/public-api.d.ts +135 -0
  438. package/radio-button/radio-button-config.scss +47 -0
  439. package/radio-button/radio-button.scss +89 -0
  440. package/radio-card-group/radio-card/radio-card-config.scss +31 -0
  441. package/radio-card-group/radio-card/radio-card.component.d.ts +30 -0
  442. package/radio-card-group/radio-card/radio-card.component.scss +88 -0
  443. package/radio-card-group/radio-card-group-config.scss +9 -0
  444. package/radio-card-group/radio-card-group.component.d.ts +20 -0
  445. package/radio-card-group/radio-card-group.scss +7 -0
  446. package/regex-checker/regex-checker-config.scss +24 -0
  447. package/regex-checker/regex-checker-icon.d.ts +3 -0
  448. package/regex-checker/regex-checker.d.ts +29 -0
  449. package/regex-checker/regex-checker.scss +38 -0
  450. package/regex-checker/regex-validity-icon.pipe.d.ts +8 -0
  451. package/ribbon/ribbon-config.scss +21 -0
  452. package/ribbon/ribbon-icon.d.ts +3 -0
  453. package/ribbon/ribbon.d.ts +14 -0
  454. package/ribbon/ribbon.scss +29 -0
  455. package/round-checkbox/round-checkbox-config.scss +15 -0
  456. package/round-checkbox/round-checkbox.component.d.ts +16 -0
  457. package/round-checkbox/round-checkbox.component.scss +23 -0
  458. package/row/column/column.component.d.ts +9 -0
  459. package/row/row-config.scss +10 -0
  460. package/row/row.component.d.ts +9 -0
  461. package/row/row.scss +22 -0
  462. package/scrollable-content/scrollable-content-config.scss +11 -0
  463. package/scrollable-content/scrollable-content.component.d.ts +8 -0
  464. package/scrollable-content/scrollable-content.component.scss +28 -0
  465. package/section-header/section-header-config.scss +18 -0
  466. package/section-header/section-header.component.d.ts +9 -0
  467. package/section-header/section-header.component.scss +32 -0
  468. package/section-row/section-row-config.scss +9 -0
  469. package/section-row/section-row.d.ts +9 -0
  470. package/section-row/section-row.scss +23 -0
  471. package/section-separator/section-separator-config.scss +19 -0
  472. package/section-separator/section-separator.d.ts +15 -0
  473. package/section-separator/section-separator.scss +28 -0
  474. package/section-shell/section-shell-config.scss +23 -0
  475. package/section-shell/section-shell.component.d.ts +12 -0
  476. package/section-shell/section-shell.component.scss +30 -0
  477. package/select/select-config.scss +78 -0
  478. package/select/select.component.d.ts +44 -0
  479. package/select/select.scss +174 -0
  480. package/select-card/select-card-config.scss +32 -0
  481. package/select-card/select-card-icon.d.ts +3 -0
  482. package/select-card/select-card.component.d.ts +38 -0
  483. package/select-card/select-card.component.scss +66 -0
  484. package/select-country/select-country-config.scss +10 -0
  485. package/select-country/select-country.component.d.ts +33 -0
  486. package/select-country/select-country.component.scss +34 -0
  487. package/shell/checker-sidebar/checker-sidebar-config.scss +21 -0
  488. package/shell/checker-sidebar/checker-sidebar.component.d.ts +8 -0
  489. package/shell/checker-sidebar/checker-sidebar.component.scss +34 -0
  490. package/shell/maker-sidebar/maker-sidebar-config.scss +21 -0
  491. package/shell/maker-sidebar/maker-sidebar.component.d.ts +8 -0
  492. package/shell/maker-sidebar/maker-sidebar.component.scss +34 -0
  493. package/shell/nebular-icons.d.ts +3 -0
  494. package/shell/shell-config.component.scss +25 -0
  495. package/shell/shell-icons.d.ts +3 -0
  496. package/shell/shell-sidebar/shell-sidebar-config.scss +43 -0
  497. package/shell/shell-sidebar/shell-sidebar.component.d.ts +14 -0
  498. package/shell/shell-sidebar/shell-sidebar.component.scss +106 -0
  499. package/shell/shell-sidebar-menu/shell-sidebar-menu-config.scss +56 -0
  500. package/shell/shell-sidebar-menu/shell-sidebar-menu.scss +76 -0
  501. package/shell/shell.component.d.ts +21 -0
  502. package/shell/shell.component.scss +55 -0
  503. package/side-drawer/side-drawer-config.scss +20 -0
  504. package/side-drawer/side-drawer.d.ts +8 -0
  505. package/side-drawer/side-drawer.scss +52 -0
  506. package/side-drawer/side-drawer.service.d.ts +20 -0
  507. package/size/component-size.d.ts +2 -0
  508. package/spinner/spinner.d.ts +11 -0
  509. package/stepper/step/step.d.ts +8 -0
  510. package/stepper/step/step.pipe.d.ts +8 -0
  511. package/stepper/step-header/step-header.d.ts +12 -0
  512. package/stepper/stepper-button/stepper-next.d.ts +7 -0
  513. package/stepper/stepper-button/stepper-previous.d.ts +7 -0
  514. package/stepper/stepper.config.scss +37 -0
  515. package/stepper/stepper.d.ts +19 -0
  516. package/stepper/stepper.scss +149 -0
  517. package/stimulus-config.scss +98 -0
  518. package/stimulus.module.d.ts +136 -0
  519. package/stimulus.scss +107 -0
  520. package/table/table-column/scl-table-column.d.ts +26 -0
  521. package/table/table-config.scss +63 -0
  522. package/table/table-icon.d.ts +3 -0
  523. package/table/table-text/scl-table-text.d.ts +13 -0
  524. package/table/table.config.d.ts +19 -0
  525. package/table/table.d.ts +58 -0
  526. package/table/table.scss +232 -0
  527. package/table-action-control/table-action-control-config.scss +12 -0
  528. package/table-action-control/table-action-control.component.d.ts +8 -0
  529. package/table-action-control/table-action-control.component.scss +14 -0
  530. package/tabset/route-tab/route-tab-config.scss +30 -0
  531. package/tabset/route-tab/route-tab.scss +44 -0
  532. package/tabset/tab/tab.component.d.ts +9 -0
  533. package/tabset/tab-directive/tabset-config.scss +49 -0
  534. package/tabset/tab-directive/tabset.directive.d.ts +7 -0
  535. package/tabset/tab-directive/tabset.scss +154 -0
  536. package/tabset/tabset.component.d.ts +14 -0
  537. package/tabset/tabset.component.scss +79 -0
  538. package/taglist/tag/tag-config.scss +30 -0
  539. package/taglist/tag/tag.component.d.ts +17 -0
  540. package/taglist/tag/tag.directive.d.ts +16 -0
  541. package/taglist/tag/tag.scss +43 -0
  542. package/taglist/taglist.component.d.ts +12 -0
  543. package/text-decoration/text-decoration.component.d.ts +9 -0
  544. package/text-decoration/text-decoration.scss +7 -0
  545. package/text-editor/text-editor.config.scss +23 -0
  546. package/text-editor/text-editor.d.ts +60 -0
  547. package/text-editor/text-editor.scss +74 -0
  548. package/theme.provider.d.ts +2 -0
  549. package/timeline/timeline-config.scss +49 -0
  550. package/timeline/timeline.component.d.ts +26 -0
  551. package/timeline/timeline.component.scss +126 -0
  552. package/timepicker/timepicker-config.scss +41 -0
  553. package/timepicker/timepicker.component.d.ts +74 -0
  554. package/timepicker/timepicker.component.scss +111 -0
  555. package/timepicker/timepicker.icon.d.ts +3 -0
  556. package/timepicker/timepicker.model.d.ts +13 -0
  557. package/toggle/toggle-config.scss +51 -0
  558. package/toggle/toggle-description/toggle-description.d.ts +6 -0
  559. package/toggle/toggle.d.ts +19 -0
  560. package/toggle/toggle.scss +31 -0
  561. package/toggle-password/toggle-password-config.scss +12 -0
  562. package/toggle-password/toggle-password.component.d.ts +21 -0
  563. package/toggle-password/toggle-password.directive.d.ts +13 -0
  564. package/toggle-password/toggle-password.icon.d.ts +3 -0
  565. package/toggle-password/toggle-password.scss +16 -0
  566. package/treeview/treeview-config.scss +86 -0
  567. package/treeview/treeview-header/treeview-header.d.ts +12 -0
  568. package/treeview/treeview.d.ts +66 -0
  569. package/treeview/treeview.icon.d.ts +3 -0
  570. package/treeview/treeview.scss +278 -0
  571. package/truncate/truncate.component.d.ts +16 -0
  572. package/truncate/truncate.scss +18 -0
  573. package/typography/font.scss +28 -0
  574. package/typography/typography-config.scss +73 -0
  575. package/typography/typography.d.ts +37 -0
  576. package/typography/typography.scss +47 -0
@@ -0,0 +1,173 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
3
+ import { FormControl, ReactiveFormsModule, Validators } from '@angular/forms';
4
+ import { NbButtonModule, NbDatepickerModule, NbIconModule, NbInputModule } from '@nebular/theme';
5
+ import { NgSelectModule } from '@ng-select/ng-select';
6
+ import { SclButtonGroup } from '../button-group/button-group';
7
+ import { SclDateTimepickerComponent } from '../custom-datepicker/custom-datepicker.component';
8
+ import { SclFormField } from '../form/form-control/form-field';
9
+ import { SclFormMessage } from '../form/form-message/form-message';
10
+ import { SclSelectInputField } from '../form/select-input-field/select-input-field';
11
+ import { SclValidateAndSubmit } from '../form/validate-and-submit';
12
+ import { SclLabel } from '../label/label';
13
+ import { SclColumn } from '../row/column/column.component';
14
+ import { SclRow } from '../row/row.component';
15
+ import * as i0 from "@angular/core";
16
+ import * as i1 from "@angular/forms";
17
+ import * as i2 from "../alert/alert.service";
18
+ import * as i3 from "@nebular/theme";
19
+ import * as i4 from "@angular/common";
20
+ import * as i5 from "@ng-select/ng-select";
21
+ export const SclIcons = {
22
+ calender: `
23
+ <svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
24
+ <path d="M17.75 3A3.25 3.25 0 0 1 21 6.25v11.5A3.25 3.25 0 0 1 17.75 21H6.25A3.25 3.25 0 0 1 3 17.75V6.25A3.25 3.25 0 0 1 6.25 3h11.5zm1.75 5.5h-15v9.25c0 .966.784 1.75 1.75 1.75h11.5a1.75 1.75 0 0 0 1.75-1.75V8.5zm-11.75 6a1.25 1.25 0 1 1 0 2.5 1.25 1.25 0 0 1 0-2.5zm4.25 0a1.25 1.25 0 1 1 0 2.5 1.25 1.25 0 0 1 0-2.5zm-4.25-4a1.25 1.25 0 1 1 0 2.5 1.25 1.25 0 0 1 0-2.5zm4.25 0a1.25 1.25 0 1 1 0 2.5 1.25 1.25 0 0 1 0-2.5zm4.25 0a1.25 1.25 0 1 1 0 2.5 1.25 1.25 0 0 1 0-2.5zm1.5-6H6.25A1.75 1.75 0 0 0 4.5 6.25V7h15v-.75a1.75 1.75 0 0 0-1.75-1.75z" fill="currentColor"/>
25
+ </svg>
26
+ `,
27
+ };
28
+ class SclFilter {
29
+ get formFields() {
30
+ return this._formFields;
31
+ }
32
+ set formFields(value) {
33
+ if (value) {
34
+ this._formFields = value;
35
+ this.initializeFormControls();
36
+ this.filterForm = this.formBuilder.group(this.formControls);
37
+ }
38
+ }
39
+ set emitFormDataOnReset(emitValue) {
40
+ this.emitValue = emitValue;
41
+ }
42
+ constructor(formBuilder, alertService, iconLibraries) {
43
+ this.formBuilder = formBuilder;
44
+ this.alertService = alertService;
45
+ this.iconLibraries = iconLibraries;
46
+ this._formFields = [];
47
+ this.onFilter = new EventEmitter();
48
+ this.isLoading = false;
49
+ this.emitValue = true;
50
+ this.formControls = {};
51
+ this.iconLibraries.registerSvgPack('scl-icon', SclIcons);
52
+ this.filterForm = this.formBuilder.group(this.formControls);
53
+ }
54
+ initializeFormControls() {
55
+ this.formControls = {};
56
+ this._formFields.forEach(field => {
57
+ // Handle dropdown-text type
58
+ if (field.type === 'dropdown-text' && field.dropdownFormControlName) {
59
+ this.formControls[field.dropdownFormControlName] = new FormControl('', Validators.required);
60
+ if (field.dropdownFormControlValue !== undefined) {
61
+ this.formControls[field.dropdownFormControlName].patchValue(field.dropdownFormControlValue);
62
+ }
63
+ }
64
+ // Handle main form control
65
+ if (field.formControlName) {
66
+ this.formControls[field.formControlName] = new FormControl(null);
67
+ if (field.isRequired) {
68
+ this.formControls[field.formControlName].addValidators([Validators.required]);
69
+ this.formControls[field.formControlName].updateValueAndValidity();
70
+ }
71
+ if (field.value !== undefined) {
72
+ this.formControls[field.formControlName].patchValue(field.value);
73
+ }
74
+ }
75
+ });
76
+ }
77
+ transformValue(value) {
78
+ if (typeof value !== 'string') {
79
+ return value;
80
+ }
81
+ return value.trim().replace(/\s+/g, ' ');
82
+ }
83
+ search(isValid) {
84
+ if (!isValid) {
85
+ return;
86
+ }
87
+ const formValue = Object.keys(this.filterForm.value).reduce((acc, key) => {
88
+ const value = this.filterForm.value[key];
89
+ acc[key] = this.transformValue(value);
90
+ return acc;
91
+ }, {});
92
+ // if (!this.hasFormValues()) return;
93
+ const { fromDate, toDate } = formValue;
94
+ if (fromDate && toDate && toDate < fromDate) {
95
+ this.alertService.danger({
96
+ heading: 'Records cannot be filtered',
97
+ description: 'To Date cannot be less than From Date',
98
+ });
99
+ return;
100
+ }
101
+ this.onFilter.emit(formValue);
102
+ }
103
+ reset() {
104
+ // if (!this.hasFormValues()) return;
105
+ this.filterForm.reset();
106
+ if (this.emitValue) {
107
+ this.onFilter.emit(this.filterForm.value);
108
+ }
109
+ }
110
+ ngOnChanges(changes) {
111
+ if (changes['formFields']?.currentValue) {
112
+ this.setFormFields(changes['formFields'].currentValue);
113
+ }
114
+ }
115
+ setFormFields(currentFormValue) {
116
+ if (this.filterForm.controls) {
117
+ currentFormValue.forEach(currentFormValue => {
118
+ if (currentFormValue.value && this.filterForm.contains(currentFormValue.formControlName)) {
119
+ this.filterForm.controls[currentFormValue.formControlName].patchValue(currentFormValue.value);
120
+ }
121
+ if (currentFormValue.dropdownFormControlName && currentFormValue.dropdownFormControlName !== (null && undefined)) {
122
+ if (currentFormValue.dropdownFormControlValue && currentFormValue.dropdownFormControlValue !== (null && undefined)) {
123
+ if (this.filterForm.contains(currentFormValue.dropdownFormControlName)) {
124
+ this.filterForm.controls[currentFormValue.dropdownFormControlName].patchValue(currentFormValue.dropdownFormControlValue);
125
+ }
126
+ }
127
+ }
128
+ });
129
+ }
130
+ }
131
+ hasFormValues() {
132
+ return Object.values(this.filterForm.value).some(value => value !== null && value !== undefined && value !== '');
133
+ }
134
+ onSelect(field, event) {
135
+ if (field.onChange) {
136
+ field.onChange(event);
137
+ }
138
+ }
139
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFilter, deps: [{ token: i1.FormBuilder }, { token: i2.SclAlertService }, { token: i3.NbIconLibraries }], target: i0.ɵɵFactoryTarget.Component }); }
140
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: SclFilter, isStandalone: true, selector: "scl-filter", inputs: { formFields: "formFields", isLoading: "isLoading", emitFormDataOnReset: "emitFormDataOnReset" }, outputs: { onFilter: "onFilter" }, providers: [], usesOnChanges: true, ngImport: i0, template: "<form [formGroup]=\"filterForm\" (validateAndSubmit)=\"search($event)\">\n <scl-row [columns]=\"4\">\n <scl-column *ngFor=\"let field of formFields\">\n <ng-container *ngIf=\"field.type === 'text'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <input\n [type]=\"field.type\"\n fullWidth\n [formControlName]=\"field.formControlName\"\n [placeholder]=\"field.placeholder\"\n [id]=\"field.formControlName\"\n nbInput />\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'select' || field.type === 'dropdown'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <ng-select\n [items]=\"field.options ?? null\"\n bindValue=\"value\"\n bindLabel=\"label\"\n [formControlName]=\"field.formControlName\"\n [id]=\"field.formControlName\"\n class=\"select\"\n appendTo=\"body\"\n name=\"field.formControlName\"\n [clearable]=\"true\"\n [placeholder]=\"field.placeholder\"\n (change)=\"onSelect(field, $event)\">\n </ng-select>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'checkbox'\">\n <scl-form-field errorMessage>\n <div *ngFor=\"let option of field.options\" class=\"checkbox-option\">\n <label>\n <input type=\"checkbox\" [formControlName]=\"field.formControlName\" [value]=\"option.value\" />\n {{ option.label }}\n </label>\n </div>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'radio'\">\n <scl-form-field errorMessage>\n <div *ngFor=\"let option of field.options\" class=\"radio-option\">\n <label>\n <input type=\"radio\" [formControlName]=\"field.formControlName\" [value]=\"option.value\" />\n {{ option.label }}\n </label>\n </div>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'dropdown-text'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <div class=\"dropdown-text-field\">\n <scl-select-input-field>\n <ng-select\n fullWidth\n [items]=\"field.options ?? null\"\n bindValue=\"value\"\n bindLabel=\"label\"\n [formControlName]=\"field.dropdownFormControlName ?? null\"\n [placeholder]=\"field.placeholder\"\n [id]=\"field.dropdownFormControlName\"\n class=\"select\"\n appendTo=\"body\"></ng-select>\n <input [formControlName]=\"field.formControlName\" nbInput />\n </scl-select-input-field>\n </div>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'date'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <scl-datetime-picker\n [formControlName]=\"field.formControlName\"\n [attr.name]=\"field.label\"\n [placeholder]=\"field.placeholder\"\n [min]=\"field?.minDate\"\n [id]=\"field.formControlName\"\n [max]=\"field?.maxDate\">\n </scl-datetime-picker>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'date-time'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <scl-datetime-picker\n dateTimePicker\n [formControlName]=\"field.formControlName\"\n [attr.name]=\"field.label\"\n [placeholder]=\"field.placeholder\"\n [min]=\"field?.minDate\"\n [id]=\"field.formControlName\"\n [max]=\"field?.maxDate\">\n </scl-datetime-picker>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n </scl-column>\n </scl-row>\n\n <scl-button-group>\n <button type=\"submit\" nbButton status=\"primary\">Filter</button>\n <button type=\"button\" nbButton outline (click)=\"reset()\">Reset</button>\n </scl-button-group>\n</form>\n", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: NgSelectModule }, { kind: "component", type: i5.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "component", type: SclButtonGroup, selector: "scl-button-group", inputs: ["wrap", "alignment"] }, { kind: "component", type: SclFormMessage, selector: "scl-form-message", inputs: ["type"] }, { kind: "component", type: SclFormField, selector: "scl-form-field", inputs: ["messageBuilder"] }, { kind: "component", type: SclColumn, selector: "scl-column" }, { kind: "component", type: SclRow, selector: "scl-row", inputs: ["columns"] }, { kind: "ngmodule", type: NbInputModule }, { kind: "directive", type: i3.NbInputDirective, selector: "input[nbInput],textarea[nbInput]", inputs: ["fieldSize", "status", "shape", "fullWidth"] }, { kind: "ngmodule", type: NbButtonModule }, { kind: "component", type: i3.NbButtonComponent, selector: "button[nbButton],a[nbButton],input[type=\"button\"][nbButton],input[type=\"submit\"][nbButton]", inputs: ["hero"] }, { kind: "directive", type: SclLabel, selector: "[sclLabel]" }, { kind: "ngmodule", type: NbDatepickerModule }, { kind: "component", type: SclSelectInputField, selector: "scl-select-input-field" }, { kind: "ngmodule", type: NbIconModule }, { kind: "directive", type: SclValidateAndSubmit, selector: "form[formGroup][validateAndSubmit]", outputs: ["validateAndSubmit"] }, { kind: "component", type: SclDateTimepickerComponent, selector: "scl-datetime-picker", inputs: ["placeholder", "format", "min", "max", "dateTimePicker", "showPresets", "readonly"], outputs: ["dateChange"] }] }); }
141
+ }
142
+ export { SclFilter };
143
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFilter, decorators: [{
144
+ type: Component,
145
+ args: [{ selector: 'scl-filter', standalone: true, imports: [
146
+ ReactiveFormsModule,
147
+ CommonModule,
148
+ NgSelectModule,
149
+ SclButtonGroup,
150
+ SclFormMessage,
151
+ SclFormField,
152
+ SclColumn,
153
+ SclRow,
154
+ NbInputModule,
155
+ NbButtonModule,
156
+ SclLabel,
157
+ NbDatepickerModule,
158
+ SclSelectInputField,
159
+ NbIconModule,
160
+ SclFormField,
161
+ SclValidateAndSubmit,
162
+ SclDateTimepickerComponent,
163
+ ], providers: [], template: "<form [formGroup]=\"filterForm\" (validateAndSubmit)=\"search($event)\">\n <scl-row [columns]=\"4\">\n <scl-column *ngFor=\"let field of formFields\">\n <ng-container *ngIf=\"field.type === 'text'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <input\n [type]=\"field.type\"\n fullWidth\n [formControlName]=\"field.formControlName\"\n [placeholder]=\"field.placeholder\"\n [id]=\"field.formControlName\"\n nbInput />\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'select' || field.type === 'dropdown'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <ng-select\n [items]=\"field.options ?? null\"\n bindValue=\"value\"\n bindLabel=\"label\"\n [formControlName]=\"field.formControlName\"\n [id]=\"field.formControlName\"\n class=\"select\"\n appendTo=\"body\"\n name=\"field.formControlName\"\n [clearable]=\"true\"\n [placeholder]=\"field.placeholder\"\n (change)=\"onSelect(field, $event)\">\n </ng-select>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'checkbox'\">\n <scl-form-field errorMessage>\n <div *ngFor=\"let option of field.options\" class=\"checkbox-option\">\n <label>\n <input type=\"checkbox\" [formControlName]=\"field.formControlName\" [value]=\"option.value\" />\n {{ option.label }}\n </label>\n </div>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'radio'\">\n <scl-form-field errorMessage>\n <div *ngFor=\"let option of field.options\" class=\"radio-option\">\n <label>\n <input type=\"radio\" [formControlName]=\"field.formControlName\" [value]=\"option.value\" />\n {{ option.label }}\n </label>\n </div>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'dropdown-text'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <div class=\"dropdown-text-field\">\n <scl-select-input-field>\n <ng-select\n fullWidth\n [items]=\"field.options ?? null\"\n bindValue=\"value\"\n bindLabel=\"label\"\n [formControlName]=\"field.dropdownFormControlName ?? null\"\n [placeholder]=\"field.placeholder\"\n [id]=\"field.dropdownFormControlName\"\n class=\"select\"\n appendTo=\"body\"></ng-select>\n <input [formControlName]=\"field.formControlName\" nbInput />\n </scl-select-input-field>\n </div>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'date'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <scl-datetime-picker\n [formControlName]=\"field.formControlName\"\n [attr.name]=\"field.label\"\n [placeholder]=\"field.placeholder\"\n [min]=\"field?.minDate\"\n [id]=\"field.formControlName\"\n [max]=\"field?.maxDate\">\n </scl-datetime-picker>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n\n <ng-container *ngIf=\"field.type === 'date-time'\">\n <scl-form-field errorMessage>\n <label [for]=\"field.formControlName\" sclLabel>{{ field.label }}</label>\n <scl-datetime-picker\n dateTimePicker\n [formControlName]=\"field.formControlName\"\n [attr.name]=\"field.label\"\n [placeholder]=\"field.placeholder\"\n [min]=\"field?.minDate\"\n [id]=\"field.formControlName\"\n [max]=\"field?.maxDate\">\n </scl-datetime-picker>\n <scl-form-message></scl-form-message>\n </scl-form-field>\n </ng-container>\n </scl-column>\n </scl-row>\n\n <scl-button-group>\n <button type=\"submit\" nbButton status=\"primary\">Filter</button>\n <button type=\"button\" nbButton outline (click)=\"reset()\">Reset</button>\n </scl-button-group>\n</form>\n" }]
164
+ }], ctorParameters: function () { return [{ type: i1.FormBuilder }, { type: i2.SclAlertService }, { type: i3.NbIconLibraries }]; }, propDecorators: { onFilter: [{
165
+ type: Output
166
+ }], formFields: [{
167
+ type: Input
168
+ }], isLoading: [{
169
+ type: Input
170
+ }], emitFormDataOnReset: [{
171
+ type: Input
172
+ }] } });
173
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2ZpbHRlci9maWx0ZXIudHMiLCIuLi8uLi8uLi8uLi9zcmMvcGFja2FnZXMvZmlsdGVyL2ZpbHRlci5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQWUsV0FBVyxFQUFhLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RHLE9BQU8sRUFBRSxjQUFjLEVBQUUsa0JBQWtCLEVBQW1CLFlBQVksRUFBVyxhQUFhLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzSCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFdEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzlELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMvRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDcEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbkUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7Ozs7QUFpQjlDLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FB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TyxtQkFBbUI7c0JBQS9CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTmJCdXR0b25Nb2R1bGUsIE5iRGF0ZXBpY2tlck1vZHVsZSwgTmJJY29uTGlicmFyaWVzLCBOYkljb25Nb2R1bGUsIE5iSWNvbnMsIE5iSW5wdXRNb2R1bGUgfSBmcm9tICdAbmVidWxhci90aGVtZSc7XG5pbXBvcnQgeyBOZ1NlbGVjdE1vZHVsZSB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0JztcbmltcG9ydCB7IFNjbEFsZXJ0U2VydmljZSB9IGZyb20gJy4uL2FsZXJ0L2FsZXJ0LnNlcnZpY2UnO1xuaW1wb3J0IHsgU2NsQnV0dG9uR3JvdXAgfSBmcm9tICcuLi9idXR0b24tZ3JvdXAvYnV0dG9uLWdyb3VwJztcbmltcG9ydCB7IFNjbERhdGVUaW1lcGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi4vY3VzdG9tLWRhdGVwaWNrZXIvY3VzdG9tLWRhdGVwaWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFNjbEZvcm1GaWVsZCB9IGZyb20gJy4uL2Zvcm0vZm9ybS1jb250cm9sL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgU2NsRm9ybU1lc3NhZ2UgfSBmcm9tICcuLi9mb3JtL2Zvcm0tbWVzc2FnZS9mb3JtLW1lc3NhZ2UnO1xuaW1wb3J0IHsgU2NsU2VsZWN0SW5wdXRGaWVsZCB9IGZyb20gJy4uL2Zvcm0vc2VsZWN0LWlucHV0LWZpZWxkL3NlbGVjdC1pbnB1dC1maWVsZCc7XG5pbXBvcnQgeyBTY2xWYWxpZGF0ZUFuZFN1Ym1pdCB9IGZyb20gJy4uL2Zvcm0vdmFsaWRhdGUtYW5kLXN1Ym1pdCc7XG5pbXBvcnQgeyBTY2xMYWJlbCB9IGZyb20gJy4uL2xhYmVsL2xhYmVsJztcbmltcG9ydCB7IFNjbENvbHVtbiB9IGZyb20gJy4uL3Jvdy9jb2x1bW4vY29sdW1uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTY2xSb3cgfSBmcm9tICcuLi9yb3cvcm93LmNvbXBvbmVudCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmlsdGVyRm9ybUdyb3VwIHtcbiAgICBsYWJlbDogc3RyaW5nO1xuICAgIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG4gICAgZm9ybUNvbnRyb2xOYW1lOiBzdHJpbmc7XG4gICAgdHlwZTogc3RyaW5nO1xuICAgIG9wdGlvbnM/OiBhbnlbXTtcbiAgICBkcm9wZG93bkZvcm1Db250cm9sTmFtZT86IHN0cmluZztcbiAgICB2YWx1ZT86IGFueTtcbiAgICBkcm9wZG93bkZvcm1Db250cm9sVmFsdWU/OiBhbnk7XG4gICAgaXNSZXF1aXJlZD86IGJvb2xlYW47XG4gICAgbWluRGF0ZT86IERhdGU7XG4gICAgbWF4RGF0ZT86IERhdGU7XG4gICAgb25DaGFuZ2U/OiAodmFsdWU6IGFueSkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGNvbnN0IFNjbEljb25zOiBOYkljb25zID0ge1xuICAgIGNhbGVuZGVyOiBgXG4gICAgICAgIDxzdmcgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICAgICAgPHBhdGggZD1cIk0xNy43NSAzQTMuMjUgMy4yNSAwIDAgMSAyMSA2LjI1djExLjVBMy4yNSAzLjI1IDAgMCAxIDE3Ljc1IDIxSDYuMjVBMy4yNSAzLjI1IDAgMCAxIDMgMTcuNzVWNi4yNUEzLjI1IDMuMjUgMCAwIDEgNi4yNSAzaDExLjV6bTEuNzUgNS41aC0xNXY5LjI1YzAgLjk2Ni43ODQgMS43NSAxLjc1IDEuNzVoMTEuNWExLjc1IDEuNzUgMCAwIDAgMS43NS0xLjc1VjguNXptLTExLjc1IDZhMS4yNSAxLjI1IDAgMSAxIDAgMi41IDEuMjUgMS4yNSAwIDAgMSAwLTIuNXptNC4yNSAwYTEuMjUgMS4yNSAwIDEgMSAwIDIuNSAxLjI1IDEuMjUgMCAwIDEgMC0yLjV6bS00LjI1LTRhMS4yNSAxLjI1IDAgMSAxIDAgMi41IDEuMjUgMS4yNSAwIDAgMSAwLTIuNXptNC4yNSAwYTEuMjUgMS4yNSAwIDEgMSAwIDIuNSAxLjI1IDEuMjUgMCAwIDEgMC0yLjV6bTQuMjUgMGExLjI1IDEuMjUgMCAxIDEgMCAyLjUgMS4yNSAxLjI1IDAgMCAxIDAtMi41em0xLjUtNkg2LjI1QTEuNzUgMS43NSAwIDAgMCA0LjUgNi4yNVY3aDE1di0uNzVhMS43NSAxLjc1IDAgMCAwLTEuNzUtMS43NXpcIiBmaWxsPVwiY3VycmVudENvbG9yXCIvPlxuICAgICAgICA8L3N2Zz5cbiAgICBgLFxufTtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzY2wtZmlsdGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZmlsdGVyLmh0bWwnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgICAgICBDb21tb25Nb2R1bGUsXG4gICAgICAgIE5nU2VsZWN0TW9kdWxlLFxuICAgICAgICBTY2xCdXR0b25Hcm91cCxcbiAgICAgICAgU2NsRm9ybU1lc3NhZ2UsXG4gICAgICAgIFNjbEZvcm1GaWVsZCxcbiAgICAgICAgU2NsQ29sdW1uLFxuICAgICAgICBTY2xSb3csXG4gICAgICAgIE5iSW5wdXRNb2R1bGUsXG4gICAgICAgIE5iQnV0dG9uTW9kdWxlLFxuICAgICAgICBTY2xMYWJlbCxcbiAgICAgICAgTmJEYXRlcGlja2VyTW9kdWxlLFxuICAgICAgICBTY2xTZWxlY3RJbnB1dEZpZWxkLFxuICAgICAgICBOYkljb25Nb2R1bGUsXG4gICAgICAgIFNjbEZvcm1GaWVsZCxcbiAgICAgICAgU2NsVmFsaWRhdGVBbmRTdWJtaXQsXG4gICAgICAgIFNjbERhdGVUaW1lcGlja2VyQ29tcG9uZW50LFxuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbXSxcbn0pXG5leHBvcnQgY2xhc3MgU2NsRmlsdGVyIHtcbiAgICBwcml2YXRlIF9mb3JtRmllbGRzOiBGaWx0ZXJGb3JtR3JvdXBbXSA9IFtdO1xuXG4gICAgQE91dHB1dCgpIG9uRmlsdGVyOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICBASW5wdXQoKSBnZXQgZm9ybUZpZWxkcygpOiBGaWx0ZXJGb3JtR3JvdXBbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9mb3JtRmllbGRzO1xuICAgIH1cbiAgICBzZXQgZm9ybUZpZWxkcyh2YWx1ZTogRmlsdGVyRm9ybUdyb3VwW10pIHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLl9mb3JtRmllbGRzID0gdmFsdWU7XG4gICAgICAgICAgICB0aGlzLmluaXRpYWxpemVGb3JtQ29udHJvbHMoKTtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAodGhpcy5mb3JtQ29udHJvbHMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQElucHV0KCkgaXNMb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KCkgc2V0IGVtaXRGb3JtRGF0YU9uUmVzZXQoZW1pdFZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuZW1pdFZhbHVlID0gZW1pdFZhbHVlO1xuICAgIH1cblxuICAgIGVtaXRWYWx1ZSA9IHRydWU7XG4gICAgZmlsdGVyRm9ybSE6IEZvcm1Hcm91cDtcbiAgICBmb3JtQ29udHJvbHM6IHsgW2tleTogc3RyaW5nXTogRm9ybUNvbnRyb2wgfSA9IHt9O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxuICAgICAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogU2NsQWxlcnRTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGljb25MaWJyYXJpZXM6IE5iSWNvbkxpYnJhcmllc1xuICAgICkge1xuICAgICAgICB0aGlzLmljb25MaWJyYXJpZXMucmVnaXN0ZXJTdmdQYWNrKCdzY2wtaWNvbicsIFNjbEljb25zKTtcbiAgICAgICAgdGhpcy5maWx0ZXJGb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh0aGlzLmZvcm1Db250cm9scyk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0aWFsaXplRm9ybUNvbnRyb2xzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvcm1Db250cm9scyA9IHt9O1xuICAgICAgICB0aGlzLl9mb3JtRmllbGRzLmZvckVhY2goZmllbGQgPT4ge1xuICAgICAgICAgICAgLy8gSGFuZGxlIGRyb3Bkb3duLXRleHQgdHlwZVxuICAgICAgICAgICAgaWYgKGZpZWxkLnR5cGUgPT09ICdkcm9wZG93bi10ZXh0JyAmJiBmaWVsZC5kcm9wZG93bkZvcm1Db250cm9sTmFtZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZm9ybUNvbnRyb2xzW2ZpZWxkLmRyb3Bkb3duRm9ybUNvbnRyb2xOYW1lXSA9IG5ldyBGb3JtQ29udHJvbCgnJywgVmFsaWRhdG9ycy5yZXF1aXJlZCk7XG4gICAgICAgICAgICAgICAgaWYgKGZpZWxkLmRyb3Bkb3duRm9ybUNvbnRyb2xWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUNvbnRyb2xzW2ZpZWxkLmRyb3Bkb3duRm9ybUNvbnRyb2xOYW1lXS5wYXRjaFZhbHVlKGZpZWxkLmRyb3Bkb3duRm9ybUNvbnRyb2xWYWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gSGFuZGxlIG1haW4gZm9ybSBjb250cm9sXG4gICAgICAgICAgICBpZiAoZmllbGQuZm9ybUNvbnRyb2xOYW1lKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JtQ29udHJvbHNbZmllbGQuZm9ybUNvbnRyb2xOYW1lXSA9IG5ldyBGb3JtQ29udHJvbChudWxsKTtcbiAgICAgICAgICAgICAgICBpZiAoZmllbGQuaXNSZXF1aXJlZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1Db250cm9sc1tmaWVsZC5mb3JtQ29udHJvbE5hbWVdLmFkZFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtQ29udHJvbHNbZmllbGQuZm9ybUNvbnRyb2xOYW1lXS51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChmaWVsZC52YWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybUNvbnRyb2xzW2ZpZWxkLmZvcm1Db250cm9sTmFtZV0ucGF0Y2hWYWx1ZShmaWVsZC52YWx1ZSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICB0cmFuc2Zvcm1WYWx1ZSh2YWx1ZTogYW55KTogYW55IHtcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWUudHJpbSgpLnJlcGxhY2UoL1xccysvZywgJyAnKTtcbiAgICB9XG5cbiAgICBzZWFyY2goaXNWYWxpZDogYW55KTogdm9pZCB7XG4gICAgICAgIGlmICghaXNWYWxpZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGZvcm1WYWx1ZSA9IE9iamVjdC5rZXlzKHRoaXMuZmlsdGVyRm9ybS52YWx1ZSkucmVkdWNlKChhY2MsIGtleSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmZpbHRlckZvcm0udmFsdWVba2V5XTtcbiAgICAgICAgICAgIGFjY1trZXldID0gdGhpcy50cmFuc2Zvcm1WYWx1ZSh2YWx1ZSk7XG4gICAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LCB7fSBhcyBhbnkpO1xuICAgICAgICAvLyBpZiAoIXRoaXMuaGFzRm9ybVZhbHVlcygpKSByZXR1cm47XG4gICAgICAgIGNvbnN0IHsgZnJvbURhdGUsIHRvRGF0ZSB9ID0gZm9ybVZhbHVlO1xuICAgICAgICBpZiAoZnJvbURhdGUgJiYgdG9EYXRlICYmIHRvRGF0ZSA8IGZyb21EYXRlKSB7XG4gICAgICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5kYW5nZXIoe1xuICAgICAgICAgICAgICAgIGhlYWRpbmc6ICdSZWNvcmRzIGNhbm5vdCBiZSBmaWx0ZXJlZCcsXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246ICdUbyBEYXRlIGNhbm5vdCBiZSBsZXNzIHRoYW4gRnJvbSBEYXRlJyxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMub25GaWx0ZXIuZW1pdChmb3JtVmFsdWUpO1xuICAgIH1cblxuICAgIHJlc2V0KCk6IHZvaWQge1xuICAgICAgICAvLyBpZiAoIXRoaXMuaGFzRm9ybVZhbHVlcygpKSByZXR1cm47XG4gICAgICAgIHRoaXMuZmlsdGVyRm9ybS5yZXNldCgpO1xuICAgICAgICBpZiAodGhpcy5lbWl0VmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMub25GaWx0ZXIuZW1pdCh0aGlzLmZpbHRlckZvcm0udmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgICAgICBpZiAoY2hhbmdlc1snZm9ybUZpZWxkcyddPy5jdXJyZW50VmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0Rm9ybUZpZWxkcyhjaGFuZ2VzWydmb3JtRmllbGRzJ10uY3VycmVudFZhbHVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNldEZvcm1GaWVsZHMoY3VycmVudEZvcm1WYWx1ZTogRmlsdGVyRm9ybUdyb3VwW10pIHtcbiAgICAgICAgaWYgKHRoaXMuZmlsdGVyRm9ybS5jb250cm9scykge1xuICAgICAgICAgICAgY3VycmVudEZvcm1WYWx1ZS5mb3JFYWNoKGN1cnJlbnRGb3JtVmFsdWUgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChjdXJyZW50Rm9ybVZhbHVlLnZhbHVlICYmIHRoaXMuZmlsdGVyRm9ybS5jb250YWlucyhjdXJyZW50Rm9ybVZhbHVlLmZvcm1Db250cm9sTmFtZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5maWx0ZXJGb3JtLmNvbnRyb2xzW2N1cnJlbnRGb3JtVmFsdWUuZm9ybUNvbnRyb2xOYW1lXS5wYXRjaFZhbHVlKGN1cnJlbnRGb3JtVmFsdWUudmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoY3VycmVudEZvcm1WYWx1ZS5kcm9wZG93bkZvcm1Db250cm9sTmFtZSAmJiBjdXJyZW50Rm9ybVZhbHVlLmRyb3Bkb3duRm9ybUNvbnRyb2xOYW1lICE9PSAobnVsbCAmJiB1bmRlZmluZWQpKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjdXJyZW50Rm9ybVZhbHVlLmRyb3Bkb3duRm9ybUNvbnRyb2xWYWx1ZSAmJiBjdXJyZW50Rm9ybVZhbHVlLmRyb3Bkb3duRm9ybUNvbnRyb2xWYWx1ZSAhPT0gKG51bGwgJiYgdW5kZWZpbmVkKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZmlsdGVyRm9ybS5jb250YWlucyhjdXJyZW50Rm9ybVZhbHVlLmRyb3Bkb3duRm9ybUNvbnRyb2xOYW1lKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyRm9ybS5jb250cm9sc1tjdXJyZW50Rm9ybVZhbHVlLmRyb3Bkb3duRm9ybUNvbnRyb2xOYW1lXS5wYXRjaFZhbHVlKGN1cnJlbnRGb3JtVmFsdWUuZHJvcGRvd25Gb3JtQ29udHJvbFZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYXNGb3JtVmFsdWVzKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gT2JqZWN0LnZhbHVlcyh0aGlzLmZpbHRlckZvcm0udmFsdWUpLnNvbWUodmFsdWUgPT4gdmFsdWUgIT09IG51bGwgJiYgdmFsdWUgIT09IHVuZGVmaW5lZCAmJiB2YWx1ZSAhPT0gJycpO1xuICAgIH1cblxuICAgIG9uU2VsZWN0KGZpZWxkOiBGaWx0ZXJGb3JtR3JvdXAsIGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKGZpZWxkLm9uQ2hhbmdlKSB7XG4gICAgICAgICAgICBmaWVsZC5vbkNoYW5nZShldmVudCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImZpbHRlckZvcm1cIiAodmFsaWRhdGVBbmRTdWJtaXQpPVwic2VhcmNoKCRldmVudClcIj5cbiAgICA8c2NsLXJvdyBbY29sdW1uc109XCI0XCI+XG4gICAgICAgIDxzY2wtY29sdW1uICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBmb3JtRmllbGRzXCI+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmllbGQudHlwZSA9PT0gJ3RleHQnXCI+XG4gICAgICAgICAgICAgICAgPHNjbC1mb3JtLWZpZWxkIGVycm9yTWVzc2FnZT5cbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIFtmb3JdPVwiZmllbGQuZm9ybUNvbnRyb2xOYW1lXCIgc2NsTGFiZWw+e3sgZmllbGQubGFiZWwgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgIFt0eXBlXT1cImZpZWxkLnR5cGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgZnVsbFdpZHRoXG4gICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2lkXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBuYklucHV0IC8+XG4gICAgICAgICAgICAgICAgICAgIDxzY2wtZm9ybS1tZXNzYWdlPjwvc2NsLWZvcm0tbWVzc2FnZT5cbiAgICAgICAgICAgICAgICA8L3NjbC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmaWVsZC50eXBlID09PSAnc2VsZWN0JyB8fCBmaWVsZC50eXBlID09PSAnZHJvcGRvd24nXCI+XG4gICAgICAgICAgICAgICAgPHNjbC1mb3JtLWZpZWxkIGVycm9yTWVzc2FnZT5cbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIFtmb3JdPVwiZmllbGQuZm9ybUNvbnRyb2xOYW1lXCIgc2NsTGFiZWw+e3sgZmllbGQubGFiZWwgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgICA8bmctc2VsZWN0XG4gICAgICAgICAgICAgICAgICAgICAgICBbaXRlbXNdPVwiZmllbGQub3B0aW9ucyA/PyBudWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJpbmRWYWx1ZT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJpbmRMYWJlbD1cImxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiZmllbGQuZm9ybUNvbnRyb2xOYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzZWxlY3RcIlxuICAgICAgICAgICAgICAgICAgICAgICAgYXBwZW5kVG89XCJib2R5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5hbWU9XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2NsZWFyYWJsZV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIm9uU2VsZWN0KGZpZWxkLCAkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctc2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICA8c2NsLWZvcm0tbWVzc2FnZT48L3NjbC1mb3JtLW1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgPC9zY2wtZm9ybS1maWVsZD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmllbGQudHlwZSA9PT0gJ2NoZWNrYm94J1wiPlxuICAgICAgICAgICAgICAgIDxzY2wtZm9ybS1maWVsZCBlcnJvck1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBmaWVsZC5vcHRpb25zXCIgY2xhc3M9XCJjaGVja2JveC1vcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIiBbdmFsdWVdPVwib3B0aW9uLnZhbHVlXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBvcHRpb24ubGFiZWwgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8c2NsLWZvcm0tbWVzc2FnZT48L3NjbC1mb3JtLW1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgPC9zY2wtZm9ybS1maWVsZD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmllbGQudHlwZSA9PT0gJ3JhZGlvJ1wiPlxuICAgICAgICAgICAgICAgIDxzY2wtZm9ybS1maWVsZCBlcnJvck1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBmaWVsZC5vcHRpb25zXCIgY2xhc3M9XCJyYWRpby1vcHRpb25cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInJhZGlvXCIgW2Zvcm1Db250cm9sTmFtZV09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIiBbdmFsdWVdPVwib3B0aW9uLnZhbHVlXCIgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBvcHRpb24ubGFiZWwgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8c2NsLWZvcm0tbWVzc2FnZT48L3NjbC1mb3JtLW1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgPC9zY2wtZm9ybS1maWVsZD5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZmllbGQudHlwZSA9PT0gJ2Ryb3Bkb3duLXRleHQnXCI+XG4gICAgICAgICAgICAgICAgPHNjbC1mb3JtLWZpZWxkIGVycm9yTWVzc2FnZT5cbiAgICAgICAgICAgICAgICAgICAgPGxhYmVsIFtmb3JdPVwiZmllbGQuZm9ybUNvbnRyb2xOYW1lXCIgc2NsTGFiZWw+e3sgZmllbGQubGFiZWwgfX08L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tdGV4dC1maWVsZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNjbC1zZWxlY3QtaW5wdXQtZmllbGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXNlbGVjdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsV2lkdGhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1zXT1cImZpZWxkLm9wdGlvbnMgPz8gbnVsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJpbmRWYWx1ZT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmluZExhYmVsPVwibGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmRyb3Bkb3duRm9ybUNvbnRyb2xOYW1lID8/IG51bGxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaWRdPVwiZmllbGQuZHJvcGRvd25Gb3JtQ29udHJvbE5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInNlbGVjdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGVuZFRvPVwiYm9keVwiPjwvbmctc2VsZWN0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiIG5iSW5wdXQgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc2NsLXNlbGVjdC1pbnB1dC1maWVsZD5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxzY2wtZm9ybS1tZXNzYWdlPjwvc2NsLWZvcm0tbWVzc2FnZT5cbiAgICAgICAgICAgICAgICA8L3NjbC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmaWVsZC50eXBlID09PSAnZGF0ZSdcIj5cbiAgICAgICAgICAgICAgICA8c2NsLWZvcm0tZmllbGQgZXJyb3JNZXNzYWdlPlxuICAgICAgICAgICAgICAgICAgICA8bGFiZWwgW2Zvcl09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIiBzY2xMYWJlbD57eyBmaWVsZC5sYWJlbCB9fTwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgIDxzY2wtZGF0ZXRpbWUtcGlja2VyXG4gICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5uYW1lXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbWluXT1cImZpZWxkPy5taW5EYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW21heF09XCJmaWVsZD8ubWF4RGF0ZVwiPlxuICAgICAgICAgICAgICAgICAgICA8L3NjbC1kYXRldGltZS1waWNrZXI+XG4gICAgICAgICAgICAgICAgICAgIDxzY2wtZm9ybS1tZXNzYWdlPjwvc2NsLWZvcm0tbWVzc2FnZT5cbiAgICAgICAgICAgICAgICA8L3NjbC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJmaWVsZC50eXBlID09PSAnZGF0ZS10aW1lJ1wiPlxuICAgICAgICAgICAgICAgIDxzY2wtZm9ybS1maWVsZCBlcnJvck1lc3NhZ2U+XG4gICAgICAgICAgICAgICAgICAgIDxsYWJlbCBbZm9yXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiIHNjbExhYmVsPnt7IGZpZWxkLmxhYmVsIH19PC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgPHNjbC1kYXRldGltZS1waWNrZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGVUaW1lUGlja2VyXG4gICAgICAgICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xOYW1lXT1cImZpZWxkLmZvcm1Db250cm9sTmFtZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5uYW1lXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbWluXT1cImZpZWxkPy5taW5EYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpZF09XCJmaWVsZC5mb3JtQ29udHJvbE5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW21heF09XCJmaWVsZD8ubWF4RGF0ZVwiPlxuICAgICAgICAgICAgICAgICAgICA8L3NjbC1kYXRldGltZS1waWNrZXI+XG4gICAgICAgICAgICAgICAgICAgIDxzY2wtZm9ybS1tZXNzYWdlPjwvc2NsLWZvcm0tbWVzc2FnZT5cbiAgICAgICAgICAgICAgICA8L3NjbC1mb3JtLWZpZWxkPlxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvc2NsLWNvbHVtbj5cbiAgICA8L3NjbC1yb3c+XG5cbiAgICA8c2NsLWJ1dHRvbi1ncm91cD5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgbmJCdXR0b24gc3RhdHVzPVwicHJpbWFyeVwiPkZpbHRlcjwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBuYkJ1dHRvbiBvdXRsaW5lIChjbGljayk9XCJyZXNldCgpXCI+UmVzZXQ8L2J1dHRvbj5cbiAgICA8L3NjbC1idXR0b24tZ3JvdXA+XG48L2Zvcm0+XG4iXX0=
@@ -0,0 +1,18 @@
1
+ import { Directive } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ class SclFormControlAction {
4
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormControlAction, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
5
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: SclFormControlAction, isStandalone: true, selector: "[formControlAction]", host: { classAttribute: "scl-form-control-action" }, ngImport: i0 }); }
6
+ }
7
+ export { SclFormControlAction };
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormControlAction, decorators: [{
9
+ type: Directive,
10
+ args: [{
11
+ selector: '[formControlAction]',
12
+ standalone: true,
13
+ host: {
14
+ class: 'scl-form-control-action'
15
+ }
16
+ }]
17
+ }] });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jb250cm9sLWFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9mb3JtL2Zvcm0tY29udHJvbC9mb3JtLWNvbnRyb2wtYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTFDLE1BT2Esb0JBQW9COzhHQUFwQixvQkFBb0I7a0dBQXBCLG9CQUFvQjs7U0FBcEIsb0JBQW9COzJGQUFwQixvQkFBb0I7a0JBUGhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRTt3QkFDSCxLQUFLLEVBQUUseUJBQXlCO3FCQUNsQztpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZm9ybUNvbnRyb2xBY3Rpb25dJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaG9zdDoge1xuICAgICBjbGFzczogJ3NjbC1mb3JtLWNvbnRyb2wtYWN0aW9uJ1xuICB9XG59KVxuZXhwb3J0IGNsYXNzIFNjbEZvcm1Db250cm9sQWN0aW9uIHtcblxufSJdfQ==
@@ -0,0 +1,18 @@
1
+ import { Directive } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ class SclFormControlIcon {
4
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormControlIcon, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
5
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.0", type: SclFormControlIcon, isStandalone: true, selector: "[formControlIcon]", host: { classAttribute: "scl-form-control-icon" }, ngImport: i0 }); }
6
+ }
7
+ export { SclFormControlIcon };
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormControlIcon, decorators: [{
9
+ type: Directive,
10
+ args: [{
11
+ selector: '[formControlIcon]',
12
+ standalone: true,
13
+ host: {
14
+ class: 'scl-form-control-icon'
15
+ }
16
+ }]
17
+ }] });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jb250cm9sLWljb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvcGFja2FnZXMvZm9ybS9mb3JtLWNvbnRyb2wvZm9ybS1jb250cm9sLWljb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFMUMsTUFPYSxrQkFBa0I7OEdBQWxCLGtCQUFrQjtrR0FBbEIsa0JBQWtCOztTQUFsQixrQkFBa0I7MkZBQWxCLGtCQUFrQjtrQkFQOUIsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNILEtBQUssRUFBRSx1QkFBdUI7cUJBQ2hDO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tmb3JtQ29udHJvbEljb25dJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaG9zdDoge1xuICAgICBjbGFzczogJ3NjbC1mb3JtLWNvbnRyb2wtaWNvbidcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBTY2xGb3JtQ29udHJvbEljb24ge1xuXG59Il19
@@ -0,0 +1,86 @@
1
+ import { Component, ContentChild, ContentChildren, ElementRef, Inject, Input, Optional } from '@angular/core';
2
+ import { NgControl } from '@angular/forms';
3
+ import { SCL_FORM_ERROR_MESSAGE } from '../form-error-messages';
4
+ import { SclFormMessage } from '../form-message/form-message';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/cdk/a11y";
7
+ import * as i2 from "@angular/forms";
8
+ class SclFormField {
9
+ constructor(focusMonitor, parentFormGroup, parentForm, errorMessageMapper) {
10
+ this.focusMonitor = focusMonitor;
11
+ this.parentFormGroup = parentFormGroup;
12
+ this.parentForm = parentForm;
13
+ this.errorMessageMapper = errorMessageMapper;
14
+ }
15
+ ngAfterContentInit() {
16
+ this.controlEls.forEach((controlEl, index) => {
17
+ const control = this.controls.toArray()[index];
18
+ const name = controlEl.nativeElement.getAttribute('name') || control.name;
19
+ const form = this.parentFormGroup || this.parentForm;
20
+ this.setControl(control.control);
21
+ if (form) {
22
+ this.formSubmitSubscription = form.ngSubmit.subscribe(() => {
23
+ this.setMessage(name, control.errors);
24
+ });
25
+ }
26
+ this.setMessage(name, control.errors);
27
+ control.statusChanges?.subscribe(() => {
28
+ this.setMessage(name, control.errors);
29
+ });
30
+ });
31
+ }
32
+ setMessage(name, errors) {
33
+ if (this.formMessage) {
34
+ this.formMessage.message = errors
35
+ ? Object.keys(errors)
36
+ .map(error => {
37
+ if (this.messageBuilder?.[error]) {
38
+ return this.messageBuilder[error](name, errors) || '';
39
+ }
40
+ else {
41
+ return this.errorMessageMapper?.[error]?.(name, errors) || '';
42
+ }
43
+ })
44
+ .join(' ')
45
+ : '';
46
+ this.formMessage.type = errors && Object.keys(errors).length ? 'danger' : 'basic';
47
+ }
48
+ }
49
+ setControl(control) {
50
+ if (!this.formMessage)
51
+ return;
52
+ this.formMessage.control = control;
53
+ }
54
+ ngOnDestroy() {
55
+ this.focusMonitorSubscription?.unsubscribe();
56
+ this.formSubmitSubscription?.unsubscribe();
57
+ }
58
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormField, deps: [{ token: i1.FocusMonitor }, { token: i2.FormGroupDirective, optional: true }, { token: i2.NgForm, optional: true }, { token: SCL_FORM_ERROR_MESSAGE }], target: i0.ɵɵFactoryTarget.Component }); }
59
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: SclFormField, isStandalone: true, selector: "scl-form-field", inputs: { messageBuilder: "messageBuilder" }, host: { classAttribute: "scl-form-field" }, queries: [{ propertyName: "formMessage", first: true, predicate: SclFormMessage, descendants: true }, { propertyName: "controls", predicate: NgControl, descendants: true }, { propertyName: "controlEls", predicate: NgControl, descendants: true, read: ElementRef }], ngImport: i0, template: "<ng-content select=\"[sclLabel]\"></ng-content>\n<div class=\"scl-form-control-wrapper\">\n <ng-content select=\"[formControlName], [formControl], [ngModel]\"></ng-content>\n <ng-content select=\"[formControlAction]\"></ng-content>\n <ng-content select=\"[formControlIcon]\"></ng-content>\n</div>\n<ng-content></ng-content>\n" }); }
60
+ }
61
+ export { SclFormField };
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormField, decorators: [{
63
+ type: Component,
64
+ args: [{ selector: 'scl-form-field', standalone: true, host: {
65
+ class: 'scl-form-field',
66
+ }, template: "<ng-content select=\"[sclLabel]\"></ng-content>\n<div class=\"scl-form-control-wrapper\">\n <ng-content select=\"[formControlName], [formControl], [ngModel]\"></ng-content>\n <ng-content select=\"[formControlAction]\"></ng-content>\n <ng-content select=\"[formControlIcon]\"></ng-content>\n</div>\n<ng-content></ng-content>\n" }]
67
+ }], ctorParameters: function () { return [{ type: i1.FocusMonitor }, { type: i2.FormGroupDirective, decorators: [{
68
+ type: Optional
69
+ }] }, { type: i2.NgForm, decorators: [{
70
+ type: Optional
71
+ }] }, { type: undefined, decorators: [{
72
+ type: Inject,
73
+ args: [SCL_FORM_ERROR_MESSAGE]
74
+ }] }]; }, propDecorators: { messageBuilder: [{
75
+ type: Input
76
+ }], controls: [{
77
+ type: ContentChildren,
78
+ args: [NgControl, { descendants: true }]
79
+ }], controlEls: [{
80
+ type: ContentChildren,
81
+ args: [NgControl, { read: ElementRef, descendants: true }]
82
+ }], formMessage: [{
83
+ type: ContentChild,
84
+ args: [SclFormMessage]
85
+ }] } });
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9mb3JtL2Zvcm0tY29udHJvbC9mb3JtLWZpZWxkLnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2Zvcm0vZm9ybS1jb250cm9sL2Zvcm0tZmllbGQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQW9CLFNBQVMsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUMzSSxPQUFPLEVBQXVDLFNBQVMsRUFBNEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxRyxPQUFPLEVBQUUsc0JBQXNCLEVBQXdCLE1BQU0sd0JBQXdCLENBQUM7QUFDdEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7O0FBRTlELE1BUWEsWUFBWTtJQWdCckIsWUFDWSxZQUEwQixFQUNkLGVBQW1DLEVBQ25DLFVBQWtCLEVBQ0Usa0JBQXdDO1FBSHhFLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQ2Qsb0JBQWUsR0FBZixlQUFlLENBQW9CO1FBQ25DLGVBQVUsR0FBVixVQUFVLENBQVE7UUFDRSx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQXNCO0lBQ2pGLENBQUM7SUFFSixrQkFBa0I7UUFDZCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQXFCLEVBQUUsS0FBYSxFQUFFLEVBQUU7WUFDN0QsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMvQyxNQUFNLElBQUksR0FBRyxTQUFTLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDO1lBQzFFLE1BQU0sSUFBSSxHQUFHLElB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b3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgQ29udGVudENoaWxkcmVuLCBFbGVtZW50UmVmLCBJbmplY3QsIElucHV0LCBPcHRpb25hbCwgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEZvcm1Hcm91cERpcmVjdGl2ZSwgTmdDb250cm9sLCBOZ0Zvcm0sIFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNDTF9GT1JNX0VSUk9SX01FU1NBR0UsIFNjbEZvcm1FcnJvck1lc3NhZ2VzIH0gZnJvbSAnLi4vZm9ybS1lcnJvci1tZXNzYWdlcyc7XG5pbXBvcnQgeyBTY2xGb3JtTWVzc2FnZSB9IGZyb20gJy4uL2Zvcm0tbWVzc2FnZS9mb3JtLW1lc3NhZ2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3NjbC1mb3JtLWZpZWxkJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9mb3JtLWZpZWxkLmh0bWwnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdzY2wtZm9ybS1maWVsZCcsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgU2NsRm9ybUZpZWxkIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG4gICAgQElucHV0KClcbiAgICBtZXNzYWdlQnVpbGRlcj86IFNjbEZvcm1FcnJvck1lc3NhZ2VzO1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihOZ0NvbnRyb2wsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgICBjb250cm9scyE6IFF1ZXJ5TGlzdDxOZ0NvbnRyb2w+O1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihOZ0NvbnRyb2wsIHsgcmVhZDogRWxlbWVudFJlZiwgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgICBjb250cm9sRWxzITogUXVlcnlMaXN0PEVsZW1lbnRSZWY+O1xuXG4gICAgQENvbnRlbnRDaGlsZChTY2xGb3JtTWVzc2FnZSlcbiAgICBmb3JtTWVzc2FnZT86IFNjbEZvcm1NZXNzYWdlO1xuXG4gICAgcHJpdmF0ZSBmb3JtU3VibWl0U3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuICAgIHByaXZhdGUgZm9jdXNNb25pdG9yU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgcGFyZW50Rm9ybUdyb3VwOiBGb3JtR3JvdXBEaXJlY3RpdmUsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgcGFyZW50Rm9ybTogTmdGb3JtLFxuICAgICAgICBASW5qZWN0KFNDTF9GT1JNX0VSUk9SX01FU1NBR0UpIHByaXZhdGUgZXJyb3JNZXNzYWdlTWFwcGVyOiBTY2xGb3JtRXJyb3JNZXNzYWdlc1xuICAgICkge31cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICAgICAgdGhpcy5jb250cm9sRWxzLmZvckVhY2goKGNvbnRyb2xFbDogRWxlbWVudFJlZiwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29udHJvbCA9IHRoaXMuY29udHJvbHMudG9BcnJheSgpW2luZGV4XTtcbiAgICAgICAgICAgIGNvbnN0IG5hbWUgPSBjb250cm9sRWwubmF0aXZlRWxlbWVudC5nZXRBdHRyaWJ1dGUoJ25hbWUnKSB8fCBjb250cm9sLm5hbWU7XG4gICAgICAgICAgICBjb25zdCBmb3JtID0gdGhpcy5wYXJlbnRGb3JtR3JvdXAgfHwgdGhpcy5wYXJlbnRGb3JtO1xuICAgICAgICAgICAgdGhpcy5zZXRDb250cm9sKGNvbnRyb2wuY29udHJvbCk7XG5cbiAgICAgICAgICAgIGlmIChmb3JtKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5mb3JtU3VibWl0U3Vic2NyaXB0aW9uID0gZm9ybS5uZ1N1Ym1pdC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldE1lc3NhZ2UobmFtZSwgY29udHJvbC5lcnJvcnMpO1xuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5zZXRNZXNzYWdlKG5hbWUsIGNvbnRyb2wuZXJyb3JzKTtcbiAgICAgICAgICAgIGNvbnRyb2wuc3RhdHVzQ2hhbmdlcz8uc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldE1lc3NhZ2UobmFtZSwgY29udHJvbC5lcnJvcnMpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0TWVzc2FnZShuYW1lOiBzdHJpbmcsIGVycm9yczogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwpIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybU1lc3NhZ2UpIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybU1lc3NhZ2UubWVzc2FnZSA9IGVycm9yc1xuICAgICAgICAgICAgICAgID8gT2JqZWN0LmtleXMoZXJyb3JzKVxuICAgICAgICAgICAgICAgICAgICAgIC5tYXAoZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAodGhpcy5tZXNzYWdlQnVpbGRlcj8uW2Vycm9yXSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubWVzc2FnZUJ1aWxkZXJbZXJyb3JdKG5hbWUsIGVycm9ycykgfHwgJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5lcnJvck1lc3NhZ2VNYXBwZXI/LltlcnJvcl0/LihuYW1lLCBlcnJvcnMpIHx8ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAuam9pbignICcpXG4gICAgICAgICAgICAgICAgOiAnJztcbiAgICAgICAgICAgIHRoaXMuZm9ybU1lc3NhZ2UudHlwZSA9IGVycm9ycyAmJiBPYmplY3Qua2V5cyhlcnJvcnMpLmxlbmd0aCA/ICdkYW5nZXInIDogJ2Jhc2ljJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgc2V0Q29udHJvbChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wgfCBudWxsKSB7XG4gICAgICAgIGlmICghdGhpcy5mb3JtTWVzc2FnZSkgcmV0dXJuO1xuICAgICAgICB0aGlzLmZvcm1NZXNzYWdlLmNvbnRyb2wgPSBjb250cm9sO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmZvY3VzTW9uaXRvclN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5mb3JtU3VibWl0U3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250ZW50IHNlbGVjdD1cIltzY2xMYWJlbF1cIj48L25nLWNvbnRlbnQ+XG48ZGl2IGNsYXNzPVwic2NsLWZvcm0tY29udHJvbC13cmFwcGVyXCI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2Zvcm1Db250cm9sTmFtZV0sIFtmb3JtQ29udHJvbF0sIFtuZ01vZGVsXVwiPjwvbmctY29udGVudD5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZm9ybUNvbnRyb2xBY3Rpb25dXCI+PC9uZy1jb250ZW50PlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltmb3JtQ29udHJvbEljb25dXCI+PC9uZy1jb250ZW50PlxuPC9kaXY+XG48bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4iXX0=
@@ -0,0 +1,22 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, Input } from '@angular/core';
3
+ import { NbIconModule } from '@nebular/theme';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "@nebular/theme";
7
+ class SclFormControlWrapperComponent {
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormControlWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: SclFormControlWrapperComponent, isStandalone: true, selector: "scl-form-control-wrapper", inputs: { icon: "icon", packName: "packName" }, host: { classAttribute: "scl-form-control" }, ngImport: i0, template: "<section class=\"scl-form-control__wrapper\">\n <ng-content></ng-content>\n\n <div class=\"scl-form-control__icon\" *ngIf=\"icon\">\n <nb-icon [icon]=\"icon\" [pack]=\"packName\"></nb-icon>\n </div>\n</section>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: NbIconModule }, { kind: "component", type: i2.NbIconComponent, selector: "nb-icon", inputs: ["icon", "pack", "options", "status", "config"] }] }); }
10
+ }
11
+ export { SclFormControlWrapperComponent };
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormControlWrapperComponent, decorators: [{
13
+ type: Component,
14
+ args: [{ selector: 'scl-form-control-wrapper', standalone: true, host: {
15
+ class: 'scl-form-control',
16
+ }, imports: [CommonModule, NbIconModule], template: "<section class=\"scl-form-control__wrapper\">\n <ng-content></ng-content>\n\n <div class=\"scl-form-control__icon\" *ngIf=\"icon\">\n <nb-icon [icon]=\"icon\" [pack]=\"packName\"></nb-icon>\n </div>\n</section>\n" }]
17
+ }], propDecorators: { icon: [{
18
+ type: Input
19
+ }], packName: [{
20
+ type: Input
21
+ }] } });
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jb250cm9sLXdyYXBwZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2Zvcm0vZm9ybS1jb250cm9sLXdyYXBwZXIvZm9ybS1jb250cm9sLXdyYXBwZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2Zvcm0vZm9ybS1jb250cm9sLXdyYXBwZXIvZm9ybS1jb250cm9sLXdyYXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUU5QyxNQVNhLDhCQUE4Qjs4R0FBOUIsOEJBQThCO2tHQUE5Qiw4QkFBOEIsa0xDYjNDLHNPQU9BLDJDREljLFlBQVksa0lBQUUsWUFBWTs7U0FFM0IsOEJBQThCOzJGQUE5Qiw4QkFBOEI7a0JBVDFDLFNBQVM7K0JBQ0ksMEJBQTBCLGNBRXhCLElBQUksUUFDVjt3QkFDRixLQUFLLEVBQUUsa0JBQWtCO3FCQUM1QixXQUNRLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQzs4QkFHNUIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmJJY29uTW9kdWxlIH0gZnJvbSAnQG5lYnVsYXIvdGhlbWUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3NjbC1mb3JtLWNvbnRyb2wtd3JhcHBlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0tY29udHJvbC13cmFwcGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdzY2wtZm9ybS1jb250cm9sJyxcbiAgICB9LFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE5iSWNvbk1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNjbEZvcm1Db250cm9sV3JhcHBlckNvbXBvbmVudCB7XG4gICAgQElucHV0KCkgaWNvbiE6IHN0cmluZztcbiAgICBASW5wdXQoKSBwYWNrTmFtZSE6IHN0cmluZztcbn1cbiIsIjxzZWN0aW9uIGNsYXNzPVwic2NsLWZvcm0tY29udHJvbF9fd3JhcHBlclwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cblxuICAgIDxkaXYgY2xhc3M9XCJzY2wtZm9ybS1jb250cm9sX19pY29uXCIgKm5nSWY9XCJpY29uXCI+XG4gICAgICAgIDxuYi1pY29uIFtpY29uXT1cImljb25cIiBbcGFja109XCJwYWNrTmFtZVwiPjwvbmItaWNvbj5cbiAgICA8L2Rpdj5cbjwvc2VjdGlvbj5cbiJdfQ==
@@ -0,0 +1,43 @@
1
+ import { InjectionToken, makeEnvironmentProviders } from '@angular/core';
2
+ import moment from 'moment';
3
+ const formatDate = (date, format) => moment(date).format(format);
4
+ const SCL_DEFAULT_FORM_ERROR_MESSAGES = {
5
+ required: (name) => `${name} is mandatory.`,
6
+ min: (name, errors) => `${name} must be at least ${errors['min'].min}.`,
7
+ max: (name, errors) => `${name} must be at most ${errors['max'].max}.`,
8
+ minlength: (name, errors) => `${name} must be at least ${errors['minlength'].requiredLength} characters.`,
9
+ maxlength: (name, errors) => `${name} must be at most ${errors['maxlength'].requiredLength} characters.`,
10
+ pattern: (name) => `${name} must be valid.`,
11
+ dateParseError: (name) => `${name} should be in YYYY-MM-DD format`,
12
+ datePickerMax: (name, errors) => `${name} is greater than ${moment(errors['datePickerMax']).format('MMM DD, yyyy')}.`,
13
+ datePickerMin: (name, errors) => `${name} is less than ${moment(errors['datePickerMin']).format('MMM DD, yyyy')}.`,
14
+ nbDatepickerMax: (name, errors) => `${name} is greater than ${moment(errors['nbDatepickerMax']['max']).format('MMM DD, yyyy')}.`,
15
+ nbDatepickerMin: (name, errors) => `${name} is less than ${moment(errors['nbDatepickerMin']['min']).format('MMM DD, yyyy')}.`,
16
+ notUnique: (name) => `${name} already exists`,
17
+ nbDatepickerParse: (name) => `Select an end date to complete the range.`,
18
+ invalidDateFormat: (name, error) => `${name} should be of format ${error['invalidDateFormat']}`,
19
+ minDate: (name, error) => `Select ${name} starting from ${formatDate(error['minDate'].date, error['minDate'].format)}`,
20
+ maxDate: (name, error) => `Select ${name} no later than ${formatDate(error['maxDate'].date, error['maxDate'].format)}`,
21
+ minDateTime: (name, error) => `Select ${name} starting from ${formatDate(error['minDateTime'].date, error['minDateTime'].format)}`,
22
+ maxDateTime: (name, error) => `Select ${name} no later than ${formatDate(error['maxDateTime'].date, error['maxDateTime'].format)}`,
23
+ minTime: (name, error) => `Select ${name} greater than ${moment(error['minTime']).format('HH:mm:ss')}`,
24
+ maxTime: (name, error) => `Select ${name} no later than ${moment(error['maxTime']).format('HH:mm:ss')}`,
25
+ duplicate: (name) => `${name} already exists.`,
26
+ fromDateNotAfterPrevious: (name, errors) => `${name} must be after ${moment(errors['fromDateNotAfterPrevious'].previousToDate).format('MMM DD, YYYY hh:mm A')}.`,
27
+ };
28
+ export const SCL_FORM_ERROR_MESSAGE = new InjectionToken('A map for validation message and its corresponding messages', {
29
+ providedIn: 'root',
30
+ factory: () => SCL_DEFAULT_FORM_ERROR_MESSAGES,
31
+ });
32
+ export function provideFormErrorMessages(formErrorMessages) {
33
+ return makeEnvironmentProviders([
34
+ {
35
+ provide: SCL_FORM_ERROR_MESSAGE,
36
+ useValue: {
37
+ ...SCL_DEFAULT_FORM_ERROR_MESSAGES,
38
+ ...formErrorMessages,
39
+ },
40
+ },
41
+ ]);
42
+ }
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1lcnJvci1tZXNzYWdlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9mb3JtL2Zvcm0tZXJyb3ItbWVzc2FnZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF3QixjQUFjLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0YsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBTTVCLE1BQU0sVUFBVSxHQUFHLENBQUMsSUFBUyxFQUFFLE1BQWMsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUU5RSxNQUFNLCtCQUErQixHQUF5QjtJQUMxRCxRQUFRLEVBQUUsQ0FBQyxJQUFZLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxnQkFBZ0I7SUFDbkQsR0FBRyxFQUFFLENBQUMsSUFBWSxFQUFFLE1BQXdCLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxxQkFBcUIsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsR0FBRztJQUNqRyxHQUFHLEVBQUUsQ0FBQyxJQUFZLEVBQUUsTUFBd0IsRUFBRSxFQUFFLENBQUMsR0FBRyxJQUFJLG9CQUFvQixNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxHQUFHO0lBQ2hHLFNBQVMsRUFBRSxDQUFDLElBQVksRUFBRSxNQUF3QixFQUFFLEVBQUUsQ0FBQyxHQUFHLElBQUkscUJBQXFCLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxjQUFjLGNBQWM7SUFDbkksU0FBUyxFQUFFLENBQUMsSUFBWSxFQUFFLE1BQXdCLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxvQkFBb0IsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLGNBQWMsY0FBYztJQUNsSSxPQUFPLEVBQUUsQ0FBQyxJQUFZLEVBQUUsRUFBRSxDQUFDLEdBQUcsSUFBSSxpQkFBaUI7SUFD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QVksRUFBRSxNQUF3QixFQUFFLEVBQUUsQ0FDakUsR0FBRyxJQUFJLGtCQUFrQixNQUFNLENBQUMsTUFBTSxDQUFDLDBCQUEwQixDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsTUFBTSxDQUFDLHNCQUFzQixDQUFDLEdBQUc7Q0FDM0gsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLElBQUksY0FBYyxDQUF1Qiw2REFBNkQsRUFBRTtJQUMxSSxVQUFVLEVBQUUsTUFBTTtJQUNsQixPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsK0JBQStCO0NBQ2pELENBQUMsQ0FBQztBQUVILE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxpQkFBd0M7SUFDN0UsT0FBTyx3QkFBd0IsQ0FBQztRQUM1QjtZQUNJLE9BQU8sRUFBRSxzQkFBc0I7WUFDL0IsUUFBUSxFQUFFO2dCQUNOLEdBQUcsK0JBQStCO2dCQUNsQyxHQUFHLGlCQUFpQjthQUN2QjtTQUNKO0tBQ0osQ0FBQyxDQUFDO0FBQ1AsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVudmlyb25tZW50UHJvdmlkZXJzLCBJbmplY3Rpb25Ub2tlbiwgbWFrZUVudmlyb25tZW50UHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNjbEZvcm1FcnJvck1lc3NhZ2VzIHtcbiAgICBba2V5OiBzdHJpbmddOiAobmFtZTogc3RyaW5nLCBlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMpID0+IHN0cmluZztcbn1cblxuY29uc3QgZm9ybWF0RGF0ZSA9IChkYXRlOiBhbnksIGZvcm1hdDogc3RyaW5nKSA9PiBtb21lbnQoZGF0ZSkuZm9ybWF0KGZvcm1hdCk7XG5cbmNvbnN0IFNDTF9ERUZBVUxUX0ZPUk1fRVJST1JfTUVTU0FHRVM6IFNjbEZvcm1FcnJvck1lc3NhZ2VzID0ge1xuICAgIHJlcXVpcmVkOiAobmFtZTogc3RyaW5nKSA9PiBgJHtuYW1lfSBpcyBtYW5kYXRvcnkuYCxcbiAgICBtaW46IChuYW1lOiBzdHJpbmcsIGVycm9yczogVmFsaWRhdGlvbkVycm9ycykgPT4gYCR7bmFtZX0gbXVzdCBiZSBhdCBsZWFzdCAke2Vycm9yc1snbWluJ10ubWlufS5gLFxuICAgIG1heDogKG5hbWU6IHN0cmluZywgZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzKSA9PiBgJHtuYW1lfSBtdXN0IGJlIGF0IG1vc3QgJHtlcnJvcnNbJ21heCddLm1heH0uYCxcbiAgICBtaW5sZW5ndGg6IChuYW1lOiBzdHJpbmcsIGVycm9yczogVmFsaWRhdGlvbkVycm9ycykgPT4gYCR7bmFtZX0gbXVzdCBiZSBhdCBsZWFzdCAke2Vycm9yc1snbWlubGVuZ3RoJ10ucmVxdWlyZWRMZW5ndGh9IGNoYXJhY3RlcnMuYCxcbiAgICBtYXhsZW5ndGg6IChuYW1lOiBzdHJpbmcsIGVycm9yczogVmFsaWRhdGlvbkVycm9ycykgPT4gYCR7bmFtZX0gbXVzdCBiZSBhdCBtb3N0ICR7ZXJyb3JzWydtYXhsZW5ndGgnXS5yZXF1aXJlZExlbmd0aH0gY2hhcmFjdGVycy5gLFxuICAgIHBhdHRlcm46IChuYW1lOiBzdHJpbmcpID0+IGAke25hbWV9IG11c3QgYmUgdmFsaWQuYCxcbiAgICBkYXRlUGFyc2VFcnJvcjogKG5hbWU6IHN0cmluZykgPT4gYCR7bmFtZX0gc2hvdWxkIGJlIGluIFlZWVktTU0tREQgZm9ybWF0YCxcbiAgICBkYXRlUGlja2VyTWF4OiAobmFtZTogc3RyaW5nLCBlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMpID0+IGAke25hbWV9IGlzIGdyZWF0ZXIgdGhhbiAke21vbWVudChlcnJvcnNbJ2RhdGVQaWNrZXJNYXgnXSkuZm9ybWF0KCdNTU0gREQsIHl5eXknKX0uYCxcbiAgICBkYXRlUGlja2VyTWluOiAobmFtZTogc3RyaW5nLCBlcnJvcnM6IFZhbGlkYXRpb25FcnJvcnMpID0+IGAke25hbWV9IGlzIGxlc3MgdGhhbiAke21vbWVudChlcnJvcnNbJ2RhdGVQaWNrZXJNaW4nXSkuZm9ybWF0KCdNTU0gREQsIHl5eXknKX0uYCxcbiAgICBuYkRhdGVwaWNrZXJNYXg6IChuYW1lOiBzdHJpbmcsIGVycm9yczogVmFsaWRhdGlvbkVycm9ycykgPT4gYCR7bmFtZX0gaXMgZ3JlYXRlciB0aGFuICR7bW9tZW50KGVycm9yc1snbmJEYXRlcGlja2VyTWF4J11bJ21heCddKS5mb3JtYXQoJ01NTSBERCwgeXl5eScpfS5gLFxuICAgIG5iRGF0ZXBpY2tlck1pbjogKG5hbWU6IHN0cmluZywgZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzKSA9PiBgJHtuYW1lfSBpcyBsZXNzIHRoYW4gJHttb21lbnQoZXJyb3JzWyduYkRhdGVwaWNrZXJNaW4nXVsnbWluJ10pLmZvcm1hdCgnTU1NIERELCB5eXl5Jyl9LmAsXG4gICAgbm90VW5pcXVlOiAobmFtZTogc3RyaW5nKSA9PiBgJHtuYW1lfSBhbHJlYWR5IGV4aXN0c2AsXG4gICAgbmJEYXRlcGlja2VyUGFyc2U6IChuYW1lOiBzdHJpbmcpID0+IGBTZWxlY3QgYW4gZW5kIGRhdGUgdG8gY29tcGxldGUgdGhlIHJhbmdlLmAsXG4gICAgaW52YWxpZERhdGVGb3JtYXQ6IChuYW1lOiBzdHJpbmcsIGVycm9yOiBWYWxpZGF0aW9uRXJyb3JzKSA9PiBgJHtuYW1lfSBzaG91bGQgYmUgb2YgZm9ybWF0ICR7ZXJyb3JbJ2ludmFsaWREYXRlRm9ybWF0J119YCxcbiAgICBtaW5EYXRlOiAobmFtZTogc3RyaW5nLCBlcnJvcjogVmFsaWRhdGlvbkVycm9ycykgPT4gYFNlbGVjdCAke25hbWV9IHN0YXJ0aW5nIGZyb20gJHtmb3JtYXREYXRlKGVycm9yWydtaW5EYXRlJ10uZGF0ZSwgZXJyb3JbJ21pbkRhdGUnXS5mb3JtYXQpfWAsXG4gICAgbWF4RGF0ZTogKG5hbWU6IHN0cmluZywgZXJyb3I6IFZhbGlkYXRpb25FcnJvcnMpID0+IGBTZWxlY3QgJHtuYW1lfSBubyBsYXRlciB0aGFuICR7Zm9ybWF0RGF0ZShlcnJvclsnbWF4RGF0ZSddLmRhdGUsIGVycm9yWydtYXhEYXRlJ10uZm9ybWF0KX1gLFxuICAgIG1pbkRhdGVUaW1lOiAobmFtZTogc3RyaW5nLCBlcnJvcjogVmFsaWRhdGlvbkVycm9ycykgPT5cbiAgICAgICAgYFNlbGVjdCAke25hbWV9IHN0YXJ0aW5nIGZyb20gJHtmb3JtYXREYXRlKGVycm9yWydtaW5EYXRlVGltZSddLmRhdGUsIGVycm9yWydtaW5EYXRlVGltZSddLmZvcm1hdCl9YCxcbiAgICBtYXhEYXRlVGltZTogKG5hbWU6IHN0cmluZywgZXJyb3I6IFZhbGlkYXRpb25FcnJvcnMpID0+XG4gICAgICAgIGBTZWxlY3QgJHtuYW1lfSBubyBsYXRlciB0aGFuICR7Zm9ybWF0RGF0ZShlcnJvclsnbWF4RGF0ZVRpbWUnXS5kYXRlLCBlcnJvclsnbWF4RGF0ZVRpbWUnXS5mb3JtYXQpfWAsXG4gICAgbWluVGltZTogKG5hbWU6IHN0cmluZywgZXJyb3I6IFZhbGlkYXRpb25FcnJvcnMpID0+IGBTZWxlY3QgJHtuYW1lfSBncmVhdGVyIHRoYW4gJHttb21lbnQoZXJyb3JbJ21pblRpbWUnXSkuZm9ybWF0KCdISDptbTpzcycpfWAsXG4gICAgbWF4VGltZTogKG5hbWU6IHN0cmluZywgZXJyb3I6IFZhbGlkYXRpb25FcnJvcnMpID0+IGBTZWxlY3QgJHtuYW1lfSBubyBsYXRlciB0aGFuICR7bW9tZW50KGVycm9yWydtYXhUaW1lJ10pLmZvcm1hdCgnSEg6bW06c3MnKX1gLFxuICAgIGR1cGxpY2F0ZTogKG5hbWU6IHN0cmluZykgPT4gYCR7bmFtZX0gYWxyZWFkeSBleGlzdHMuYCxcbiAgICBmcm9tRGF0ZU5vdEFmdGVyUHJldmlvdXM6IChuYW1lOiBzdHJpbmcsIGVycm9yczogVmFsaWRhdGlvbkVycm9ycykgPT5cbiAgICAgICAgYCR7bmFtZX0gbXVzdCBiZSBhZnRlciAke21vbWVudChlcnJvcnNbJ2Zyb21EYXRlTm90QWZ0ZXJQcmV2aW91cyddLnByZXZpb3VzVG9EYXRlKS5mb3JtYXQoJ01NTSBERCwgWVlZWSBoaDptbSBBJyl9LmAsXG59O1xuXG5leHBvcnQgY29uc3QgU0NMX0ZPUk1fRVJST1JfTUVTU0FHRSA9IG5ldyBJbmplY3Rpb25Ub2tlbjxTY2xGb3JtRXJyb3JNZXNzYWdlcz4oJ0EgbWFwIGZvciB2YWxpZGF0aW9uIG1lc3NhZ2UgYW5kIGl0cyBjb3JyZXNwb25kaW5nIG1lc3NhZ2VzJywge1xuICAgIHByb3ZpZGVkSW46ICdyb290JyxcbiAgICBmYWN0b3J5OiAoKSA9PiBTQ0xfREVGQVVMVF9GT1JNX0VSUk9SX01FU1NBR0VTLFxufSk7XG5cbmV4cG9ydCBmdW5jdGlvbiBwcm92aWRlRm9ybUVycm9yTWVzc2FnZXMoZm9ybUVycm9yTWVzc2FnZXM/OiBTY2xGb3JtRXJyb3JNZXNzYWdlcyk6IEVudmlyb25tZW50UHJvdmlkZXJzIHtcbiAgICByZXR1cm4gbWFrZUVudmlyb25tZW50UHJvdmlkZXJzKFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogU0NMX0ZPUk1fRVJST1JfTUVTU0FHRSxcbiAgICAgICAgICAgIHVzZVZhbHVlOiB7XG4gICAgICAgICAgICAgICAgLi4uU0NMX0RFRkFVTFRfRk9STV9FUlJPUl9NRVNTQUdFUyxcbiAgICAgICAgICAgICAgICAuLi5mb3JtRXJyb3JNZXNzYWdlcyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgXSk7XG59XG4iXX0=
@@ -0,0 +1,30 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Input, Component } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ class SclFormMessage {
6
+ constructor(renderer, elRef) {
7
+ this.renderer = renderer;
8
+ this.elRef = elRef;
9
+ this.type = 'basic';
10
+ }
11
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormMessage, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
12
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: SclFormMessage, isStandalone: true, selector: "scl-form-message", inputs: { type: "type" }, host: { properties: { "class.status-basic": "type === \"basic\"", "class.status-primary": "type === \"primary\"", "class.status-success": "type === \"success\"", "class.status-warning": "type === \"warning\"", "class.status-danger": "type === \"danger\"", "class.status-info": "type === \"info\"", "class.status-control": "type === \"control\"" }, classAttribute: "caption scl-caption" }, ngImport: i0, template: "<ng-container *ngIf=\"control?.invalid && (control?.dirty || control?.touched); else ngContent\"> {{message}} </ng-container>\n<ng-template #ngContent>\n <ng-content></ng-content>\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
13
+ }
14
+ export { SclFormMessage };
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclFormMessage, decorators: [{
16
+ type: Component,
17
+ args: [{ selector: 'scl-form-message', host: {
18
+ class: 'caption scl-caption',
19
+ '[class.status-basic]': 'type === "basic"',
20
+ '[class.status-primary]': 'type === "primary"',
21
+ '[class.status-success]': 'type === "success"',
22
+ '[class.status-warning]': 'type === "warning"',
23
+ '[class.status-danger]': 'type === "danger"',
24
+ '[class.status-info]': 'type === "info"',
25
+ '[class.status-control]': 'type === "control"',
26
+ }, standalone: true, imports: [CommonModule], template: "<ng-container *ngIf=\"control?.invalid && (control?.dirty || control?.touched); else ngContent\"> {{message}} </ng-container>\n<ng-template #ngContent>\n <ng-content></ng-content>\n</ng-template>\n" }]
27
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { type: [{
28
+ type: Input
29
+ }] } });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1tZXNzYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2Zvcm0vZm9ybS1tZXNzYWdlL2Zvcm0tbWVzc2FnZS50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9mb3JtL2Zvcm0tbWVzc2FnZS9mb3JtLW1lc3NhZ2UuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFvQyxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFJbkYsTUFnQmEsY0FBYztJQVF2QixZQUNZLFFBQW1CLEVBQ25CLEtBQWlCO1FBRGpCLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQVI3QixTQUFJLEdBQXNCLE9BQU8sQ0FBQztJQVMvQixDQUFDOzhHQVhLLGNBQWM7a0dBQWQsY0FBYywyZUNyQjNCLDBNQUlBLDJDRGVjLFlBQVk7O1NBRWIsY0FBYzsyRkFBZCxjQUFjO2tCQWhCMUIsU0FBUzsrQkFDSSxrQkFBa0IsUUFFdEI7d0JBQ0YsS0FBSyxFQUFFLHFCQUFxQjt3QkFDNUIsc0JBQXNCLEVBQUUsa0JBQWtCO3dCQUMxQyx3QkFBd0IsRUFBRSxvQkFBb0I7d0JBQzlDLHdCQUF3QixFQUFFLG9CQUFvQjt3QkFDOUMsd0JBQXdCLEVBQUUsb0JBQW9CO3dCQUM5Qyx1QkFBdUIsRUFBRSxtQkFBbUI7d0JBQzVDLHFCQUFxQixFQUFFLGlCQUFpQjt3QkFDeEMsd0JBQXdCLEVBQUUsb0JBQW9CO3FCQUNqRCxjQUNXLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQzt5SEFJdkIsSUFBSTtzQkFESCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgUmVuZGVyZXIyLCBJbnB1dCwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBOYkNvbXBvbmVudFN0YXR1cyB9IGZyb20gJ0BuZWJ1bGFyL3RoZW1lJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdzY2wtZm9ybS1tZXNzYWdlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZm9ybS1tZXNzYWdlLmh0bWwnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdjYXB0aW9uIHNjbC1jYXB0aW9uJyxcbiAgICAgICAgJ1tjbGFzcy5zdGF0dXMtYmFzaWNdJzogJ3R5cGUgPT09IFwiYmFzaWNcIicsXG4gICAgICAgICdbY2xhc3Muc3RhdHVzLXByaW1hcnldJzogJ3R5cGUgPT09IFwicHJpbWFyeVwiJyxcbiAgICAgICAgJ1tjbGFzcy5zdGF0dXMtc3VjY2Vzc10nOiAndHlwZSA9PT0gXCJzdWNjZXNzXCInLFxuICAgICAgICAnW2NsYXNzLnN0YXR1cy13YXJuaW5nXSc6ICd0eXBlID09PSBcIndhcm5pbmdcIicsXG4gICAgICAgICdbY2xhc3Muc3RhdHVzLWRhbmdlcl0nOiAndHlwZSA9PT0gXCJkYW5nZXJcIicsXG4gICAgICAgICdbY2xhc3Muc3RhdHVzLWluZm9dJzogJ3R5cGUgPT09IFwiaW5mb1wiJyxcbiAgICAgICAgJ1tjbGFzcy5zdGF0dXMtY29udHJvbF0nOiAndHlwZSA9PT0gXCJjb250cm9sXCInLFxuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgU2NsRm9ybU1lc3NhZ2Uge1xuICAgIEBJbnB1dCgpXG4gICAgdHlwZTogTmJDb21wb25lbnRTdGF0dXMgPSAnYmFzaWMnO1xuXG4gICAgbWVzc2FnZT86IHN0cmluZztcblxuICAgIGNvbnRyb2w/OiBBYnN0cmFjdENvbnRyb2wgfCBudWxsO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgcHJpdmF0ZSBlbFJlZjogRWxlbWVudFJlZlxuICAgICkge31cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJjb250cm9sPy5pbnZhbGlkICYmIChjb250cm9sPy5kaXJ0eSB8fCBjb250cm9sPy50b3VjaGVkKTsgZWxzZSBuZ0NvbnRlbnRcIj4ge3ttZXNzYWdlfX0gPC9uZy1jb250YWluZXI+XG48bmctdGVtcGxhdGUgI25nQ29udGVudD5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -0,0 +1,14 @@
1
+ import { Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ class SclSelectInputField {
4
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclSelectInputField, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.0.0", type: SclSelectInputField, isStandalone: true, selector: "scl-select-input-field", host: { classAttribute: "scl-select-input-field" }, ngImport: i0, template: "<ng-content select=\"ng-select, scl-select-country\"></ng-content>\n<ng-content select=\"input\"></ng-content>\n" }); }
6
+ }
7
+ export { SclSelectInputField };
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImport: i0, type: SclSelectInputField, decorators: [{
9
+ type: Component,
10
+ args: [{ selector: 'scl-select-input-field', standalone: true, host: {
11
+ class: "scl-select-input-field"
12
+ }, template: "<ng-content select=\"ng-select, scl-select-country\"></ng-content>\n<ng-content select=\"input\"></ng-content>\n" }]
13
+ }] });
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWlucHV0LWZpZWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2Zvcm0vc2VsZWN0LWlucHV0LWZpZWxkL3NlbGVjdC1pbnB1dC1maWVsZC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9mb3JtL3NlbGVjdC1pbnB1dC1maWVsZC9zZWxlY3QtaW5wdXQtZmllbGQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUUxQyxNQVNhLG1CQUFtQjs4R0FBbkIsbUJBQW1CO2tHQUFuQixtQkFBbUIsc0lDWGhDLGtIQUVBOztTRFNhLG1CQUFtQjsyRkFBbkIsbUJBQW1CO2tCQVQvQixTQUFTOytCQUNFLHdCQUF3QixjQUN2QixJQUFJLFFBR1I7d0JBQ0wsS0FBSyxFQUFFLHdCQUF3QjtxQkFDaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2NsLXNlbGVjdC1pbnB1dC1maWVsZCcsXG4gIHN0YW5kYWxvbmU6dHJ1ZSxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlbGVjdC1pbnB1dC1maWVsZC5odG1sJyxcblxuICBob3N0IDoge1xuICAgIGNsYXNzOiBcInNjbC1zZWxlY3QtaW5wdXQtZmllbGRcIlxuICB9XG59KVxuZXhwb3J0IGNsYXNzIFNjbFNlbGVjdElucHV0RmllbGQge1xuXG59IiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwibmctc2VsZWN0LCBzY2wtc2VsZWN0LWNvdW50cnlcIj48L25nLWNvbnRlbnQ+XG48bmctY29udGVudCBzZWxlY3Q9XCJpbnB1dFwiPjwvbmctY29udGVudD5cbiJdfQ==