nira-falcon 0.1.21 → 0.1.23

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 (318) hide show
  1. package/README.md +24 -24
  2. package/ng-package.json +7 -0
  3. package/package copy.json +13 -0
  4. package/package.json +13 -26
  5. package/src/assets/images/hub-dashboard-title-bg.png +0 -0
  6. package/src/assets/images/iran.png +0 -0
  7. package/src/environments/environment.ts +7 -0
  8. package/src/lib/core-auto-complete/core-auto-complete.component.html +30 -0
  9. package/src/lib/core-auto-complete/core-auto-complete.component.scss +89 -0
  10. package/src/lib/core-auto-complete/core-auto-complete.component.ts +92 -0
  11. package/src/lib/core-btn/core-btn-bluebird.component.html +21 -0
  12. package/src/lib/core-btn/core-btn-bluebird.component.scss +123 -0
  13. package/src/lib/core-btn/core-btn-falcon.component.html +20 -0
  14. package/src/lib/core-btn/core-btn-falcon.component.scss +115 -0
  15. package/src/lib/core-btn/core-btn.component.ts +54 -0
  16. package/src/lib/core-card/core-card.component.html +3 -0
  17. package/src/lib/core-card/core-card.component.scss +0 -0
  18. package/src/lib/core-card/core-card.component.ts +10 -0
  19. package/src/lib/core-checkbox/core-checkbox.component.html +9 -0
  20. package/src/lib/core-checkbox/core-checkbox.component.scss +60 -0
  21. package/src/lib/core-checkbox/core-checkbox.component.ts +19 -0
  22. package/src/lib/core-confirm-dialog/core-confirm-dialog.component.html +28 -0
  23. package/src/lib/core-confirm-dialog/core-confirm-dialog.component.scss +131 -0
  24. package/src/lib/core-confirm-dialog/core-confirm-dialog.component.ts +29 -0
  25. package/src/lib/core-date-picker/core-date-picker-bluebird.component.html +15 -0
  26. package/src/lib/core-date-picker/core-date-picker-bluebird.component.scss +0 -0
  27. package/src/lib/core-date-picker/core-date-picker-falcon.component.html +14 -0
  28. package/src/lib/core-date-picker/core-date-picker-falcon.component.scss +0 -0
  29. package/src/lib/core-date-picker/core-date-picker.component.ts +44 -0
  30. package/src/lib/core-input/core-input-bluebird.component.html +95 -0
  31. package/src/lib/core-input/core-input-bluebird.component.scss +152 -0
  32. package/src/lib/core-input/core-input-falcon.component.html +90 -0
  33. package/src/lib/core-input/core-input-falcon.component.scss +141 -0
  34. package/src/lib/core-input/core-input.component.ts +112 -0
  35. package/src/lib/core-multi-select/core-multi-select-row/core-multi-select-row.component.html +3 -0
  36. package/src/lib/core-multi-select/core-multi-select-row/core-multi-select-row.component.scss +15 -0
  37. package/src/lib/core-multi-select/core-multi-select-row/core-multi-select-row.component.ts +19 -0
  38. package/src/lib/core-multi-select/core-multi-select.component.html +41 -0
  39. package/src/lib/core-multi-select/core-multi-select.component.scss +119 -0
  40. package/src/lib/core-multi-select/core-multi-select.component.ts +139 -0
  41. package/src/lib/core-number/core-number.component.html +3 -0
  42. package/src/lib/core-number/core-number.component.scss +1 -0
  43. package/src/lib/core-number/core-number.component.ts +45 -0
  44. package/src/lib/core-page-title/core-page-title.component.html +14 -0
  45. package/src/lib/core-page-title/core-page-title.component.scss +16 -0
  46. package/src/lib/core-page-title/core-page-title.component.ts +11 -0
  47. package/src/lib/core-radio-buttons/core-radio-buttons.component.html +17 -0
  48. package/src/lib/core-radio-buttons/core-radio-buttons.component.scss +46 -0
  49. package/src/lib/core-radio-buttons/core-radio-buttons.component.spec.ts +21 -0
  50. package/src/lib/core-radio-buttons/core-radio-buttons.component.ts +64 -0
  51. package/src/lib/core-search-box/core-search-box.component.html +14 -0
  52. package/src/lib/core-search-box/core-search-box.component.scss +37 -0
  53. package/src/lib/core-search-box/core-search-box.component.ts +15 -0
  54. package/src/lib/core-select/core-select-bluebird.component.html +57 -0
  55. package/src/lib/core-select/core-select-bluebird.component.scss +129 -0
  56. package/src/lib/core-select/core-select-falcon.component.html +56 -0
  57. package/src/lib/core-select/core-select-falcon.component.scss +123 -0
  58. package/src/lib/core-select/core-select.component.spec.ts +21 -0
  59. package/src/lib/core-select/core-select.component.ts +93 -0
  60. package/src/lib/core-spinner/core-spinner.component.html +14 -0
  61. package/src/lib/core-spinner/core-spinner.component.scss +162 -0
  62. package/src/lib/core-spinner/core-spinner.component.ts +13 -0
  63. package/src/lib/core-switch/core-switch.component.html +13 -0
  64. package/src/lib/core-switch/core-switch.component.scss +58 -0
  65. package/src/lib/core-switch/core-switch.component.spec.ts +21 -0
  66. package/src/lib/core-switch/core-switch.component.ts +28 -0
  67. package/src/lib/core-table/core-column-date-picker/core-column-date-picker.component.html +21 -0
  68. package/src/lib/core-table/core-column-date-picker/core-column-date-picker.component.scss +3 -0
  69. package/src/lib/core-table/core-column-date-picker/core-column-date-picker.component.ts +55 -0
  70. package/src/lib/core-table/core-column-input/core-column-input.component.html +17 -0
  71. package/src/lib/core-table/core-column-input/core-column-input.component.scss +21 -0
  72. package/src/lib/core-table/core-column-input/core-column-input.component.ts +23 -0
  73. package/src/lib/core-table/core-column-selector/core-column-selector.component.html +47 -0
  74. package/src/lib/core-table/core-column-selector/core-column-selector.component.scss +113 -0
  75. package/src/lib/core-table/core-column-selector/core-column-selector.component.ts +94 -0
  76. package/src/lib/core-table/core-row-pelak/core-row-pelak.component.html +12 -0
  77. package/src/lib/core-table/core-row-pelak/core-row-pelak.component.scss +21 -0
  78. package/src/lib/core-table/core-row-pelak/core-row-pelak.component.ts +12 -0
  79. package/src/lib/core-table/core-table/core-table.component.html +168 -0
  80. package/src/lib/core-table/core-table/core-table.component.scss +65 -0
  81. package/src/lib/core-table/core-table/core-table.component.ts +179 -0
  82. package/src/lib/core-table/core-table-action-buttons-column/core-table-action-buttons-column.component.html +10 -0
  83. package/src/lib/core-table/core-table-action-buttons-column/core-table-action-buttons-column.component.scss +3 -0
  84. package/src/lib/core-table/core-table-action-buttons-column/core-table-action-buttons-column.component.ts +24 -0
  85. package/src/lib/core-table/core-table-action-column/core-table-action-column.component.html +6 -0
  86. package/src/lib/core-table/core-table-action-column/core-table-action-column.component.scss +3 -0
  87. package/src/lib/core-table/core-table-action-column/core-table-action-column.component.ts +19 -0
  88. package/src/lib/core-table/core-table-card-manager/core-table-card-manager.component.html +94 -0
  89. package/src/lib/core-table/core-table-card-manager/core-table-card-manager.component.scss +0 -0
  90. package/src/lib/core-table/core-table-card-manager/core-table-card-manager.component.ts +58 -0
  91. package/src/lib/core-table/core-table-column-manager/core-table-column-manager.component.html +99 -0
  92. package/src/lib/core-table/core-table-column-manager/core-table-column-manager.component.scss +0 -0
  93. package/src/lib/core-table/core-table-column-manager/core-table-column-manager.component.ts +59 -0
  94. package/src/lib/core-table/core-table-detail-viewer-for-report/core-table-detail-viewer-for-report.component.html +5 -0
  95. package/src/lib/core-table/core-table-detail-viewer-for-report/core-table-detail-viewer-for-report.component.scss +8 -0
  96. package/src/lib/core-table/core-table-detail-viewer-for-report/core-table-detail-viewer-for-report.component.ts +28 -0
  97. package/src/lib/core-table/core-table-filter-dialog/core-table-filter-dialog/core-table-filter-dialog.component.html +24 -0
  98. package/src/lib/core-table/core-table-filter-dialog/core-table-filter-dialog/core-table-filter-dialog.component.scss +10 -0
  99. package/src/lib/core-table/core-table-filter-dialog/core-table-filter-dialog/core-table-filter-dialog.component.ts +76 -0
  100. package/src/lib/core-table/core-table-no-content/core-table-no-content.component.html +6 -0
  101. package/src/lib/core-table/core-table-no-content/core-table-no-content.component.scss +7 -0
  102. package/src/lib/core-table/core-table-no-content/core-table-no-content.component.ts +14 -0
  103. package/src/lib/core-table/core-table-no-content/core-table-no-content.label.ts +14 -0
  104. package/src/lib/core-table/core-table-row-selector-column/core-table-row-selector-column.component.html +5 -0
  105. package/src/lib/core-table/core-table-row-selector-column/core-table-row-selector-column.component.scss +0 -0
  106. package/src/lib/core-table/core-table-row-selector-column/core-table-row-selector-column.component.ts +60 -0
  107. package/src/lib/core-table/core-table-shamsi-date/core-table-shamsi-date.component.html +3 -0
  108. package/src/lib/core-table/core-table-shamsi-date/core-table-shamsi-date.component.scss +0 -0
  109. package/src/lib/core-table/core-table-shamsi-date/core-table-shamsi-date.component.ts +24 -0
  110. package/src/lib/core-table/core-table-status-active-column/core-table-status-active-column.component.html +3 -0
  111. package/src/lib/core-table/core-table-status-active-column/core-table-status-active-column.component.scss +14 -0
  112. package/src/lib/core-table/core-table-status-active-column/core-table-status-active-column.component.ts +14 -0
  113. package/src/lib/core-table/core-table-status-column/core-table-status-column.component.html +3 -0
  114. package/src/lib/core-table/core-table-status-column/core-table-status-column.component.scss +14 -0
  115. package/src/lib/core-table/core-table-status-column/core-table-status-column.component.ts +11 -0
  116. package/src/lib/core-textarea/core-textarea.component.html +18 -0
  117. package/src/lib/core-textarea/core-textarea.component.scss +62 -0
  118. package/src/lib/core-textarea/core-textarea.component.ts +31 -0
  119. package/src/lib/core-time-picker/core-time-picker.component.html +51 -0
  120. package/src/lib/core-time-picker/core-time-picker.component.scss +144 -0
  121. package/src/lib/core-time-picker/core-time-picker.component.ts +102 -0
  122. package/src/lib/core-time-picker/time-picker-modal/time-picker-modal.component.html +50 -0
  123. package/src/lib/core-time-picker/time-picker-modal/time-picker-modal.component.scss +424 -0
  124. package/src/lib/core-time-picker/time-picker-modal/time-picker-modal.component.spec.ts +21 -0
  125. package/src/lib/core-time-picker/time-picker-modal/time-picker-modal.component.ts +172 -0
  126. package/src/lib/falcon-lib.module.ts +157 -0
  127. package/src/lib/falconTypes.ts +35 -0
  128. package/src/lib/pipes/digit-group.pipe.ts +10 -0
  129. package/src/lib/pipes/form-control.pipe.ts +11 -0
  130. package/src/lib/pipes/persian-digits.pipe.ts +33 -0
  131. package/src/lib/pipes/price-format.pipe.ts +20 -0
  132. package/src/lib/pipes/shamsi-date.pipe.ts +24 -0
  133. package/src/lib/pipes/time-format.pipe.ts +21 -0
  134. package/src/lib/pipes/weight.pipe.ts +10 -0
  135. package/src/lib/wordify.ts +116 -0
  136. package/{public-api.d.ts → src/public-api.ts} +31 -27
  137. package/src/svg-icon/arrow-down-icon/arrow-down-icon.component.html +8 -0
  138. package/src/svg-icon/arrow-down-icon/arrow-down-icon.component.scss +0 -0
  139. package/src/svg-icon/arrow-down-icon/arrow-down-icon.component.ts +8 -0
  140. package/src/svg-icon/calendar-icon/calendar-icon.component.html +10 -0
  141. package/src/svg-icon/calendar-icon/calendar-icon.component.scss +0 -0
  142. package/src/svg-icon/calendar-icon/calendar-icon.component.ts +8 -0
  143. package/src/svg-icon/caret-up-icon/caret-up-icon.component.html +16 -0
  144. package/src/svg-icon/caret-up-icon/caret-up-icon.component.scss +0 -0
  145. package/src/svg-icon/caret-up-icon/caret-up-icon.component.ts +10 -0
  146. package/src/svg-icon/close-icon/close-icon.component.html +10 -0
  147. package/src/svg-icon/close-icon/close-icon.component.scss +0 -0
  148. package/src/svg-icon/close-icon/close-icon.component.ts +8 -0
  149. package/src/svg-icon/edit-square-icon/edit-square-icon.component.html +10 -0
  150. package/src/svg-icon/edit-square-icon/edit-square-icon.component.scss +0 -0
  151. package/src/svg-icon/edit-square-icon/edit-square-icon.component.ts +8 -0
  152. package/src/svg-icon/pelak-icon/pelak-icon.component.html +32 -0
  153. package/src/svg-icon/pelak-icon/pelak-icon.component.scss +0 -0
  154. package/src/svg-icon/pelak-icon/pelak-icon.component.ts +8 -0
  155. package/src/svg-icon/search-icon/search-icon.component.html +10 -0
  156. package/src/svg-icon/search-icon/search-icon.component.scss +0 -0
  157. package/src/svg-icon/search-icon/search-icon.component.spec.ts +21 -0
  158. package/src/svg-icon/search-icon/search-icon.component.ts +8 -0
  159. package/src/svg-icon/sort-down-icon/sort-down-icon.component.html +5 -0
  160. package/src/svg-icon/sort-down-icon/sort-down-icon.component.scss +0 -0
  161. package/src/svg-icon/sort-down-icon/sort-down-icon.component.ts +10 -0
  162. package/src/svg-icon/sort-solid-icon/sort-solid-icon.component.html +5 -0
  163. package/src/svg-icon/sort-solid-icon/sort-solid-icon.component.scss +0 -0
  164. package/src/svg-icon/sort-solid-icon/sort-solid-icon.component.ts +8 -0
  165. package/src/svg-icon/sort-up-icon/sort-up-icon.component.html +5 -0
  166. package/src/svg-icon/sort-up-icon/sort-up-icon.component.scss +0 -0
  167. package/src/svg-icon/sort-up-icon/sort-up-icon.component.ts +8 -0
  168. package/src/svg-icon/time-icon/time-icon.component.html +10 -0
  169. package/src/svg-icon/time-icon/time-icon.component.scss +0 -0
  170. package/src/svg-icon/time-icon/time-icon.component.ts +8 -0
  171. package/src/svg-icon/warning-icon/warning-icon.component.html +10 -0
  172. package/src/svg-icon/warning-icon/warning-icon.component.scss +0 -0
  173. package/src/svg-icon/warning-icon/warning-icon.component.ts +10 -0
  174. package/src/utils/constants.ts +182 -0
  175. package/src/utils/directives/detail-viewer-manager.directive.ts +78 -0
  176. package/src/utils/directives/filterTableDirective.ts +36 -0
  177. package/src/utils/directives/table-detail-viewer-manager.directive.ts +57 -0
  178. package/src/utils/interfaces.ts +0 -0
  179. package/src/utils/jsonparser.ts +49 -0
  180. package/src/utils/links.ts +67 -0
  181. package/src/utils/toast.ts +35 -0
  182. package/src/utils/types.ts +20 -0
  183. package/src/utils/util.ts +32 -0
  184. package/styles.css +1 -1
  185. package/tsconfig.lib.json +14 -0
  186. package/tsconfig.lib.prod.json +10 -0
  187. package/tsconfig.spec.json +14 -0
  188. package/environments/environment.d.ts +0 -4
  189. package/esm2022/environments/environment.mjs +0 -7
  190. package/esm2022/lib/core-auto-complete/core-auto-complete.component.mjs +0 -82
  191. package/esm2022/lib/core-btn/core-btn.component.mjs +0 -68
  192. package/esm2022/lib/core-card/core-card.component.mjs +0 -16
  193. package/esm2022/lib/core-checkbox/core-checkbox.component.mjs +0 -33
  194. package/esm2022/lib/core-confirm-dialog/core-confirm-dialog.component.mjs +0 -31
  195. package/esm2022/lib/core-date-picker/core-date-picker.component.mjs +0 -46
  196. package/esm2022/lib/core-input/core-input.component.mjs +0 -132
  197. package/esm2022/lib/core-multi-select/core-multi-select-row/core-multi-select-row.component.mjs +0 -28
  198. package/esm2022/lib/core-multi-select/core-multi-select.component.mjs +0 -145
  199. package/esm2022/lib/core-number/core-number.component.mjs +0 -64
  200. package/esm2022/lib/core-page-title/core-page-title.component.mjs +0 -19
  201. package/esm2022/lib/core-radio-buttons/core-radio-buttons.component.mjs +0 -75
  202. package/esm2022/lib/core-search-box/core-search-box.component.mjs +0 -25
  203. package/esm2022/lib/core-select/core-select.component.mjs +0 -92
  204. package/esm2022/lib/core-spinner/core-spinner.component.mjs +0 -23
  205. package/esm2022/lib/core-switch/core-switch.component.mjs +0 -33
  206. package/esm2022/lib/core-table/core-column-date-picker/core-column-date-picker.component.mjs +0 -62
  207. package/esm2022/lib/core-table/core-column-input/core-column-input.component.mjs +0 -43
  208. package/esm2022/lib/core-table/core-column-selector/core-column-selector.component.mjs +0 -100
  209. package/esm2022/lib/core-table/core-row-pelak/core-row-pelak.component.mjs +0 -21
  210. package/esm2022/lib/core-table/core-table/core-table.component.mjs +0 -182
  211. package/esm2022/lib/core-table/core-table-action-buttons-column/core-table-action-buttons-column.component.mjs +0 -34
  212. package/esm2022/lib/core-table/core-table-action-column/core-table-action-column.component.mjs +0 -27
  213. package/esm2022/lib/core-table/core-table-card-manager/core-table-card-manager.component.mjs +0 -83
  214. package/esm2022/lib/core-table/core-table-column-manager/core-table-column-manager.component.mjs +0 -85
  215. package/esm2022/lib/core-table/core-table-detail-viewer-for-report/core-table-detail-viewer-for-report.component.mjs +0 -29
  216. package/esm2022/lib/core-table/core-table-filter-dialog/core-table-filter-dialog/core-table-filter-dialog.component.mjs +0 -82
  217. package/esm2022/lib/core-table/core-table-no-content/core-table-no-content.component.mjs +0 -23
  218. package/esm2022/lib/core-table/core-table-no-content/core-table-no-content.label.mjs +0 -9
  219. package/esm2022/lib/core-table/core-table-row-selector-column/core-table-row-selector-column.component.mjs +0 -68
  220. package/esm2022/lib/core-table/core-table-shamsi-date/core-table-shamsi-date.component.mjs +0 -28
  221. package/esm2022/lib/core-table/core-table-status-active-column/core-table-status-active-column.component.mjs +0 -20
  222. package/esm2022/lib/core-table/core-table-status-column/core-table-status-column.component.mjs +0 -18
  223. package/esm2022/lib/core-textarea/core-textarea.component.mjs +0 -47
  224. package/esm2022/lib/core-time-picker/core-time-picker.component.mjs +0 -118
  225. package/esm2022/lib/core-time-picker/time-picker-modal/time-picker-modal.component.mjs +0 -147
  226. package/esm2022/lib/falcon-lib.module.mjs +0 -252
  227. package/esm2022/lib/falconTypes.mjs +0 -9
  228. package/esm2022/lib/pipes/digit-group.pipe.mjs +0 -16
  229. package/esm2022/lib/pipes/form-control.pipe.mjs +0 -16
  230. package/esm2022/lib/pipes/persian-digits.pipe.mjs +0 -40
  231. package/esm2022/lib/pipes/price-format.pipe.mjs +0 -23
  232. package/esm2022/lib/pipes/shamsi-date.pipe.mjs +0 -24
  233. package/esm2022/lib/pipes/time-format.pipe.mjs +0 -28
  234. package/esm2022/lib/pipes/weight.pipe.mjs +0 -16
  235. package/esm2022/lib/wordify.mjs +0 -109
  236. package/esm2022/nira-falcon.mjs +0 -5
  237. package/esm2022/public-api.mjs +0 -31
  238. package/esm2022/svg-icon/arrow-down-icon/arrow-down-icon.component.mjs +0 -11
  239. package/esm2022/svg-icon/calendar-icon/calendar-icon.component.mjs +0 -11
  240. package/esm2022/svg-icon/caret-up-icon/caret-up-icon.component.mjs +0 -11
  241. package/esm2022/svg-icon/close-icon/close-icon.component.mjs +0 -11
  242. package/esm2022/svg-icon/edit-square-icon/edit-square-icon.component.mjs +0 -11
  243. package/esm2022/svg-icon/pelak-icon/pelak-icon.component.mjs +0 -11
  244. package/esm2022/svg-icon/search-icon/search-icon.component.mjs +0 -11
  245. package/esm2022/svg-icon/sort-down-icon/sort-down-icon.component.mjs +0 -11
  246. package/esm2022/svg-icon/sort-solid-icon/sort-solid-icon.component.mjs +0 -11
  247. package/esm2022/svg-icon/sort-up-icon/sort-up-icon.component.mjs +0 -11
  248. package/esm2022/svg-icon/time-icon/time-icon.component.mjs +0 -11
  249. package/esm2022/svg-icon/warning-icon/warning-icon.component.mjs +0 -11
  250. package/esm2022/utils/constants.mjs +0 -184
  251. package/esm2022/utils/directives/detail-viewer-manager.directive.mjs +0 -71
  252. package/esm2022/utils/directives/table-detail-viewer-manager.directive.mjs +0 -49
  253. package/esm2022/utils/util.mjs +0 -26
  254. package/fesm2022/nira-falcon.mjs +0 -2863
  255. package/fesm2022/nira-falcon.mjs.map +0 -1
  256. package/index.d.ts +0 -5
  257. package/lib/core-auto-complete/core-auto-complete.component.d.ts +0 -30
  258. package/lib/core-btn/core-btn.component.d.ts +0 -22
  259. package/lib/core-card/core-card.component.d.ts +0 -6
  260. package/lib/core-checkbox/core-checkbox.component.d.ts +0 -13
  261. package/lib/core-confirm-dialog/core-confirm-dialog.component.d.ts +0 -14
  262. package/lib/core-date-picker/core-date-picker.component.d.ts +0 -20
  263. package/lib/core-input/core-input.component.d.ts +0 -28
  264. package/lib/core-multi-select/core-multi-select-row/core-multi-select-row.component.d.ts +0 -11
  265. package/lib/core-multi-select/core-multi-select.component.d.ts +0 -43
  266. package/lib/core-number/core-number.component.d.ts +0 -12
  267. package/lib/core-page-title/core-page-title.component.d.ts +0 -7
  268. package/lib/core-radio-buttons/core-radio-buttons.component.d.ts +0 -29
  269. package/lib/core-search-box/core-search-box.component.d.ts +0 -10
  270. package/lib/core-select/core-select.component.d.ts +0 -36
  271. package/lib/core-spinner/core-spinner.component.d.ts +0 -9
  272. package/lib/core-switch/core-switch.component.d.ts +0 -17
  273. package/lib/core-table/core-column-date-picker/core-column-date-picker.component.d.ts +0 -21
  274. package/lib/core-table/core-column-input/core-column-input.component.d.ts +0 -16
  275. package/lib/core-table/core-column-selector/core-column-selector.component.d.ts +0 -35
  276. package/lib/core-table/core-row-pelak/core-row-pelak.component.d.ts +0 -8
  277. package/lib/core-table/core-table/core-table.component.d.ts +0 -42
  278. package/lib/core-table/core-table-action-buttons-column/core-table-action-buttons-column.component.d.ts +0 -11
  279. package/lib/core-table/core-table-action-column/core-table-action-column.component.d.ts +0 -11
  280. package/lib/core-table/core-table-card-manager/core-table-card-manager.component.d.ts +0 -24
  281. package/lib/core-table/core-table-column-manager/core-table-column-manager.component.d.ts +0 -24
  282. package/lib/core-table/core-table-detail-viewer-for-report/core-table-detail-viewer-for-report.component.d.ts +0 -11
  283. package/lib/core-table/core-table-filter-dialog/core-table-filter-dialog/core-table-filter-dialog.component.d.ts +0 -22
  284. package/lib/core-table/core-table-no-content/core-table-no-content.component.d.ts +0 -9
  285. package/lib/core-table/core-table-no-content/core-table-no-content.label.d.ts +0 -5
  286. package/lib/core-table/core-table-row-selector-column/core-table-row-selector-column.component.d.ts +0 -14
  287. package/lib/core-table/core-table-shamsi-date/core-table-shamsi-date.component.d.ts +0 -11
  288. package/lib/core-table/core-table-status-active-column/core-table-status-active-column.component.d.ts +0 -8
  289. package/lib/core-table/core-table-status-column/core-table-status-column.component.d.ts +0 -7
  290. package/lib/core-textarea/core-textarea.component.d.ts +0 -13
  291. package/lib/core-time-picker/core-time-picker.component.d.ts +0 -26
  292. package/lib/core-time-picker/time-picker-modal/time-picker-modal.component.d.ts +0 -35
  293. package/lib/falcon-lib.module.d.ts +0 -66
  294. package/lib/falconTypes.d.ts +0 -23
  295. package/lib/pipes/digit-group.pipe.d.ts +0 -7
  296. package/lib/pipes/form-control.pipe.d.ts +0 -8
  297. package/lib/pipes/persian-digits.pipe.d.ts +0 -7
  298. package/lib/pipes/price-format.pipe.d.ts +0 -7
  299. package/lib/pipes/shamsi-date.pipe.d.ts +0 -9
  300. package/lib/pipes/time-format.pipe.d.ts +0 -7
  301. package/lib/pipes/weight.pipe.d.ts +0 -7
  302. package/lib/wordify.d.ts +0 -2
  303. package/svg-icon/arrow-down-icon/arrow-down-icon.component.d.ts +0 -5
  304. package/svg-icon/calendar-icon/calendar-icon.component.d.ts +0 -5
  305. package/svg-icon/caret-up-icon/caret-up-icon.component.d.ts +0 -5
  306. package/svg-icon/close-icon/close-icon.component.d.ts +0 -5
  307. package/svg-icon/edit-square-icon/edit-square-icon.component.d.ts +0 -5
  308. package/svg-icon/pelak-icon/pelak-icon.component.d.ts +0 -5
  309. package/svg-icon/search-icon/search-icon.component.d.ts +0 -5
  310. package/svg-icon/sort-down-icon/sort-down-icon.component.d.ts +0 -5
  311. package/svg-icon/sort-solid-icon/sort-solid-icon.component.d.ts +0 -5
  312. package/svg-icon/sort-up-icon/sort-up-icon.component.d.ts +0 -5
  313. package/svg-icon/time-icon/time-icon.component.d.ts +0 -5
  314. package/svg-icon/warning-icon/warning-icon.component.d.ts +0 -5
  315. package/utils/constants.d.ts +0 -70
  316. package/utils/directives/detail-viewer-manager.directive.d.ts +0 -18
  317. package/utils/directives/table-detail-viewer-manager.directive.d.ts +0 -16
  318. package/utils/util.d.ts +0 -11
@@ -1,132 +0,0 @@
1
- import { Component, EventEmitter, Input, Output, } from '@angular/core';
2
- import { FormControl } from '@angular/forms';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- import * as i2 from "@angular/forms";
6
- import * as i3 from "../core-number/core-number.component";
7
- import * as i4 from "../pipes/persian-digits.pipe";
8
- export class CoreInputComponent {
9
- constructor() {
10
- this.isDisable = false;
11
- this.lastValue = '';
12
- this.canShowWordifyFa = false;
13
- this.canSplitNumber = false;
14
- this.canHighlightBackground = false;
15
- this.maxLength = 2000;
16
- this.inputFormControl = new FormControl('', []);
17
- this.placeholder = '';
18
- this.onChange = new EventEmitter();
19
- this.onBlurEmit = new EventEmitter();
20
- }
21
- set type(value) {
22
- this.inputType = value;
23
- }
24
- set disable(value) {
25
- this.isDisable = value;
26
- if (value) {
27
- this.inputFormControl.disable();
28
- }
29
- else {
30
- this.inputFormControl.enable();
31
- }
32
- }
33
- ngOnInit() {
34
- this.inputFormControl.valueChanges.subscribe((change) => {
35
- if (this.lastValue !== change) {
36
- this.formatPrice(change.toString());
37
- }
38
- });
39
- }
40
- change(event) {
41
- this.formatPrice(event.srcElement.value);
42
- }
43
- onPaste(event) {
44
- setTimeout(() => {
45
- const value = event.srcElement.value;
46
- this.inputFormControl.markAsTouched();
47
- this.inputFormControl.setValue(value);
48
- this.lastValue = value;
49
- if (this.inputType === 'number' && this.canSplitNumber) {
50
- this.onChange.emit(value.replaceAll(',', ''));
51
- }
52
- else {
53
- if (!this.inputFormControl.errors) {
54
- this.onChange.emit(value);
55
- }
56
- }
57
- }, 10);
58
- }
59
- onBlur() {
60
- if (this.inputType === 'number' && this.canSplitNumber) {
61
- this.onChange.emit(this.inputFormControl.value.replaceAll(',', ''));
62
- }
63
- else {
64
- if (!this.inputFormControl.errors) {
65
- this.onChange.emit(this.inputFormControl.value);
66
- }
67
- }
68
- this.onBlurEmit.emit(this.inputFormControl.value);
69
- }
70
- onKeyPress() {
71
- if (this.inputFormControl.value.toString().length == this.maxLength) {
72
- return false;
73
- }
74
- else {
75
- return true;
76
- }
77
- }
78
- formatPrice(event) {
79
- if (this.inputType === 'number' && this.canSplitNumber) {
80
- setTimeout(() => {
81
- let value = event;
82
- value = Number(value.replaceAll(',', ''));
83
- if (isNaN(value)) {
84
- this.inputFormControl.setValue('');
85
- this.lastValue = value;
86
- }
87
- else {
88
- const formatValue = value
89
- .toString()
90
- .replace(/\B(?=(\d{3})+(?!\d))/g, ',');
91
- this.inputFormControl.setValue(formatValue);
92
- this.lastValue = formatValue;
93
- }
94
- if (!this.inputFormControl.errors) {
95
- this.onChange.emit(this.inputFormControl.value.replaceAll(',', ''));
96
- }
97
- }, 10);
98
- }
99
- else {
100
- if (!this.inputFormControl.errors) {
101
- this.onChange.emit(this.inputFormControl.value);
102
- }
103
- }
104
- }
105
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
106
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CoreInputComponent, selector: "core-input", inputs: { type: "type", canShowWordifyFa: "canShowWordifyFa", canSplitNumber: "canSplitNumber", canHighlightBackground: "canHighlightBackground", maxLength: "maxLength", inputFormControl: "inputFormControl", disable: "disable", placeholder: "placeholder" }, outputs: { onChange: "onChange", onBlurEmit: "onBlurEmit" }, ngImport: i0, template: "<div>\r\n <div\r\n class=\"container-input\"\r\n [ngClass]=\"{\r\n error:\r\n (inputFormControl.touched || inputFormControl.dirty) &&\r\n inputFormControl.errors\r\n }\"\r\n >\r\n <input\r\n [type]=\"inputType\"\r\n class=\"a-input-style\"\r\n [formControl]=\"inputFormControl\"\r\n (blur)=\"onBlur()\"\r\n (keyup)=\"change($event)\"\r\n (paste)=\"onPaste($event)\"\r\n [ngClass]=\"{\r\n 'have-value': inputFormControl.value.toString().length > 0,\r\n 'highlight-background':\r\n canHighlightBackground &&\r\n inputFormControl.value.toString().length === 0 &&\r\n !(\r\n (inputFormControl.touched || inputFormControl.dirty) &&\r\n inputFormControl.errors\r\n ),\r\n 'disable-input': isDisable\r\n }\"\r\n (keypress)=\"onKeyPress()\"\r\n />\r\n <label *ngIf=\"placeholder.length > 0\">{{ placeholder }} </label>\r\n <div class=\"label-error overflow-hidden\">\r\n <span\r\n class=\"label-number\"\r\n *ngIf=\"\r\n canShowWordifyFa &&\r\n inputFormControl.value.toString().length > 0 &&\r\n inputType === 'number'\r\n \"\r\n ><app-core-number\r\n [canShowWordInToolTip]=\"false\"\r\n [type]=\"'word'\"\r\n [number]=\"inputFormControl.value\"\r\n ></app-core-number\r\n ></span>\r\n\r\n <span\r\n *ngIf=\"\r\n (inputFormControl.touched || inputFormControl.dirty) &&\r\n inputFormControl.errors?.['required']\r\n \"\r\n >\u0627\u06CC\u0646 \u0641\u06CC\u0644\u062F \u062E\u0627\u0644\u06CC \u0627\u0633\u062A</span\r\n >\r\n <span\r\n *ngIf=\"\r\n (inputFormControl.touched || inputFormControl.dirty) &&\r\n inputFormControl.errors?.['prePayment']\r\n \"\r\n >\u0645\u0628\u0644\u063A \u0635\u062D\u06CC\u062D \u0646\u06CC\u0633\u062A</span\r\n >\r\n <span\r\n *ngIf=\"\r\n (inputFormControl.touched || inputFormControl.dirty) &&\r\n inputFormControl.errors?.['minlength']\r\n \"\r\n >\r\n \u062D\u062F\u0627\u0642\u0644 \u062A\u0639\u062F\u0627\u062F \u06A9\u0627\u0631\u06A9\u062A\u0631\r\n {{inputFormControl.errors?.['minlength'].requiredLength|persianDigits}}\r\n \u0639\u062F\u062F \u0628\u0627\u0634\u062F\r\n </span>\r\n <span\r\n *ngIf=\"\r\n (inputFormControl.touched || inputFormControl.dirty) &&\r\n inputFormControl.errors?.['maxlength']\r\n \"\r\n >\r\n \u062D\u062F\u0627\u06A9\u062B\u0631 \u062A\u0639\u062F\u0627\u062F \u06A9\u0627\u0631\u06A9\u062A\u0631\r\n {{inputFormControl.errors?.['maxlength'].requiredLength |persianDigits}}\r\n \u0639\u062F\u062F \u0628\u0627\u0634\u062F\r\n </span>\r\n <span\r\n *ngIf=\"\r\n (inputFormControl.touched || inputFormControl.dirty) &&\r\n inputFormControl.errors?.['pattern']?.requiredPattern=='^09[0-9]{9}$'\r\n \"\r\n >\r\n \u0634\u0645\u0627\u0631\u0647 \u0647\u0645\u0631\u0627\u0647 \u0627\u0634\u062A\u0628\u0627\u0647 \u0647\u0633\u062A\r\n </span>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".container{position:relative}input:focus{border:2px solid blue}input{border:1px solid #ced4da;border-radius:.25rem}.highlight-background{background-color:#dcf6ff!important}.icon-style{position:absolute;right:16px;top:16px;cursor:pointer;font-size:16px}.icon-style-email{position:absolute;right:16px;top:16px}.a-input-style{height:42px;width:100%;padding:16px;outline:none;caret-color:#020202b3;background-color:#f2f4f726;color:#000000b3;box-sizing:border-box}.a-input-style:focus{background-color:#f2f4f70d;border-radius:3px;border:1px solid rgba(19,92,175,.397)}.a-input-style::placeholder{height:15px;font-style:normal;font-weight:400;font-size:12px;line-height:15px;letter-spacing:-.03em;color:#c2c2c2b3}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus{-webkit-text-fill-color:rgba(255,255,255,0)}input:-webkit-autofill.have-value,input:-webkit-autofill:hover.have-value,input:-webkit-autofill:focus.have-value{-webkit-text-fill-color:#181818!important}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.label-error{color:red;font-size:13px;margin-block-start:4px;min-height:21px;width:100%;display:inline-block!important;text-align:start}.label-number{color:#6a6a6a}.error input{border:1px solid #fe5f5f}.container-input{background:#fff;position:relative}.container-input .disable-input{background-color:#f7f7f7;border:1px dashed #ced4da;pointer-events:none}.container-input label{position:absolute;right:20px;top:12px;color:gray;font-size:12px;padding:0 8px;border-radius:15px;pointer-events:none;transition:.2s}.container-input input:focus+label,.container-input input.have-value+label{top:-10px;font-size:10px;z-index:3}.container-input input:focus+label:after,.container-input input.have-value+label:after{content:\"\";display:block;background:#fff;position:absolute;width:100%;height:1px;top:10px;right:0;transition:.3s;z-index:-1}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.CoreNumberComponent, selector: "app-core-number", inputs: ["number", "type", "canSplitNumbers", "canShowWordInToolTip", "canShowIRR"] }, { kind: "pipe", type: i4.PersianDigitsPipe, name: "persianDigits" }] }); }
107
- }
108
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreInputComponent, decorators: [{
109
- type: Component,
110
- args: [{ selector: 'core-input', template: "<div>\r\n <div\r\n class=\"container-input\"\r\n [ngClass]=\"{\r\n error:\r\n (inputFormControl.touched || inputFormControl.dirty) &&\r\n inputFormControl.errors\r\n }\"\r\n >\r\n <input\r\n [type]=\"inputType\"\r\n class=\"a-input-style\"\r\n [formControl]=\"inputFormControl\"\r\n (blur)=\"onBlur()\"\r\n (keyup)=\"change($event)\"\r\n (paste)=\"onPaste($event)\"\r\n [ngClass]=\"{\r\n 'have-value': inputFormControl.value.toString().length > 0,\r\n 'highlight-background':\r\n canHighlightBackground &&\r\n inputFormControl.value.toString().length === 0 &&\r\n !(\r\n (inputFormControl.touched || inputFormControl.dirty) &&\r\n inputFormControl.errors\r\n ),\r\n 'disable-input': isDisable\r\n }\"\r\n (keypress)=\"onKeyPress()\"\r\n />\r\n <label *ngIf=\"placeholder.length > 0\">{{ placeholder }} </label>\r\n <div class=\"label-error overflow-hidden\">\r\n <span\r\n class=\"label-number\"\r\n *ngIf=\"\r\n canShowWordifyFa &&\r\n inputFormControl.value.toString().length > 0 &&\r\n inputType === 'number'\r\n \"\r\n ><app-core-number\r\n [canShowWordInToolTip]=\"false\"\r\n [type]=\"'word'\"\r\n [number]=\"inputFormControl.value\"\r\n ></app-core-number\r\n ></span>\r\n\r\n <span\r\n *ngIf=\"\r\n (inputFormControl.touched || inputFormControl.dirty) &&\r\n inputFormControl.errors?.['required']\r\n \"\r\n >\u0627\u06CC\u0646 \u0641\u06CC\u0644\u062F \u062E\u0627\u0644\u06CC \u0627\u0633\u062A</span\r\n >\r\n <span\r\n *ngIf=\"\r\n (inputFormControl.touched || inputFormControl.dirty) &&\r\n inputFormControl.errors?.['prePayment']\r\n \"\r\n >\u0645\u0628\u0644\u063A \u0635\u062D\u06CC\u062D \u0646\u06CC\u0633\u062A</span\r\n >\r\n <span\r\n *ngIf=\"\r\n (inputFormControl.touched || inputFormControl.dirty) &&\r\n inputFormControl.errors?.['minlength']\r\n \"\r\n >\r\n \u062D\u062F\u0627\u0642\u0644 \u062A\u0639\u062F\u0627\u062F \u06A9\u0627\u0631\u06A9\u062A\u0631\r\n {{inputFormControl.errors?.['minlength'].requiredLength|persianDigits}}\r\n \u0639\u062F\u062F \u0628\u0627\u0634\u062F\r\n </span>\r\n <span\r\n *ngIf=\"\r\n (inputFormControl.touched || inputFormControl.dirty) &&\r\n inputFormControl.errors?.['maxlength']\r\n \"\r\n >\r\n \u062D\u062F\u0627\u06A9\u062B\u0631 \u062A\u0639\u062F\u0627\u062F \u06A9\u0627\u0631\u06A9\u062A\u0631\r\n {{inputFormControl.errors?.['maxlength'].requiredLength |persianDigits}}\r\n \u0639\u062F\u062F \u0628\u0627\u0634\u062F\r\n </span>\r\n <span\r\n *ngIf=\"\r\n (inputFormControl.touched || inputFormControl.dirty) &&\r\n inputFormControl.errors?.['pattern']?.requiredPattern=='^09[0-9]{9}$'\r\n \"\r\n >\r\n \u0634\u0645\u0627\u0631\u0647 \u0647\u0645\u0631\u0627\u0647 \u0627\u0634\u062A\u0628\u0627\u0647 \u0647\u0633\u062A\r\n </span>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".container{position:relative}input:focus{border:2px solid blue}input{border:1px solid #ced4da;border-radius:.25rem}.highlight-background{background-color:#dcf6ff!important}.icon-style{position:absolute;right:16px;top:16px;cursor:pointer;font-size:16px}.icon-style-email{position:absolute;right:16px;top:16px}.a-input-style{height:42px;width:100%;padding:16px;outline:none;caret-color:#020202b3;background-color:#f2f4f726;color:#000000b3;box-sizing:border-box}.a-input-style:focus{background-color:#f2f4f70d;border-radius:3px;border:1px solid rgba(19,92,175,.397)}.a-input-style::placeholder{height:15px;font-style:normal;font-weight:400;font-size:12px;line-height:15px;letter-spacing:-.03em;color:#c2c2c2b3}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus{-webkit-text-fill-color:rgba(255,255,255,0)}input:-webkit-autofill.have-value,input:-webkit-autofill:hover.have-value,input:-webkit-autofill:focus.have-value{-webkit-text-fill-color:#181818!important}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.label-error{color:red;font-size:13px;margin-block-start:4px;min-height:21px;width:100%;display:inline-block!important;text-align:start}.label-number{color:#6a6a6a}.error input{border:1px solid #fe5f5f}.container-input{background:#fff;position:relative}.container-input .disable-input{background-color:#f7f7f7;border:1px dashed #ced4da;pointer-events:none}.container-input label{position:absolute;right:20px;top:12px;color:gray;font-size:12px;padding:0 8px;border-radius:15px;pointer-events:none;transition:.2s}.container-input input:focus+label,.container-input input.have-value+label{top:-10px;font-size:10px;z-index:3}.container-input input:focus+label:after,.container-input input.have-value+label:after{content:\"\";display:block;background:#fff;position:absolute;width:100%;height:1px;top:10px;right:0;transition:.3s;z-index:-1}\n"] }]
111
- }], propDecorators: { type: [{
112
- type: Input
113
- }], canShowWordifyFa: [{
114
- type: Input
115
- }], canSplitNumber: [{
116
- type: Input
117
- }], canHighlightBackground: [{
118
- type: Input
119
- }], maxLength: [{
120
- type: Input
121
- }], inputFormControl: [{
122
- type: Input
123
- }], disable: [{
124
- type: Input
125
- }], placeholder: [{
126
- type: Input
127
- }], onChange: [{
128
- type: Output
129
- }], onBlurEmit: [{
130
- type: Output
131
- }] } });
132
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mYWxjb24tbGliL3NyYy9saWIvY29yZS1pbnB1dC9jb3JlLWlucHV0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1saWIvc3JjL2xpYi9jb3JlLWlucHV0L2NvcmUtaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7OztBQU83QyxNQUFNLE9BQU8sa0JBQWtCO0lBTC9CO1FBT0UsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixjQUFTLEdBQUcsRUFBRSxDQUFDO1FBSU4scUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLDJCQUFzQixHQUFHLEtBQUssQ0FBQztRQUMvQixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBRWpCLHFCQUFnQixHQUFnQixJQUFJLFdBQVcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFTeEQsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFDaEIsYUFBUSxHQUF5QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3BELGVBQVUsR0FBeUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztLQXlFakU7SUE1RkMsSUFBYSxJQUFJLENBQUMsS0FBZ0I7UUFDaEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDekIsQ0FBQztJQU9ELElBQWEsT0FBTyxDQUFDLEtBQWM7UUFDakMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDdkIsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENB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QkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NoaWxkLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxudHlwZSBJbnB1dFR5cGUgPSAnbnVtYmVyJyB8ICdwYXNzd29yZCcgfCAndGV4dCc7XHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnY29yZS1pbnB1dCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvcmUtaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvcmUtaW5wdXQuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENvcmVJbnB1dENvbXBvbmVudCB7XHJcbiAgaW5wdXRUeXBlITogSW5wdXRUeXBlO1xyXG4gIGlzRGlzYWJsZSA9IGZhbHNlO1xyXG4gIGxhc3RWYWx1ZSA9ICcnO1xyXG4gIEBJbnB1dCgpIHNldCB0eXBlKHZhbHVlOiBJbnB1dFR5cGUpIHtcclxuICAgIHRoaXMuaW5wdXRUeXBlID0gdmFsdWU7XHJcbiAgfVxyXG4gIEBJbnB1dCgpIGNhblNob3dXb3JkaWZ5RmEgPSBmYWxzZTtcclxuICBASW5wdXQoKSBjYW5TcGxpdE51bWJlciA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGNhbkhpZ2hsaWdodEJhY2tncm91bmQgPSBmYWxzZTtcclxuICBASW5wdXQoKSBtYXhMZW5ndGggPSAyMDAwO1xyXG5cclxuICBASW5wdXQoKSBpbnB1dEZvcm1Db250cm9sOiBGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnJywgW10pO1xyXG4gIEBJbnB1dCgpIHNldCBkaXNhYmxlKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLmlzRGlzYWJsZSA9IHZhbHVlO1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHRoaXMuaW5wdXRGb3JtQ29udHJvbC5kaXNhYmxlKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmlucHV0Rm9ybUNvbnRyb2wuZW5hYmxlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyID0gJyc7XHJcbiAgQE91dHB1dCgpIG9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgb25CbHVyRW1pdDogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5pbnB1dEZvcm1Db250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKGNoYW5nZSkgPT4ge1xyXG4gICAgICBpZiAodGhpcy5sYXN0VmFsdWUgIT09IGNoYW5nZSkge1xyXG4gICAgICAgIHRoaXMuZm9ybWF0UHJpY2UoY2hhbmdlLnRvU3RyaW5nKCkpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcbiAgY2hhbmdlKGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMuZm9ybWF0UHJpY2UoZXZlbnQuc3JjRWxlbWVudC52YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBvblBhc3RlKGV2ZW50OiBhbnkpIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBjb25zdCB2YWx1ZSA9IGV2ZW50LnNyY0VsZW1lbnQudmFsdWU7XHJcbiAgICAgIHRoaXMuaW5wdXRGb3JtQ29udHJvbC5tYXJrQXNUb3VjaGVkKCk7XHJcbiAgICAgIHRoaXMuaW5wdXRGb3JtQ29udHJvbC5zZXRWYWx1ZSh2YWx1ZSk7XHJcbiAgICAgIHRoaXMubGFzdFZhbHVlID0gdmFsdWU7XHJcbiAgICAgIGlmICh0aGlzLmlucHV0VHlwZSA9PT0gJ251bWJlcicgJiYgdGhpcy5jYW5TcGxpdE51bWJlcikge1xyXG4gICAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCh2YWx1ZS5yZXBsYWNlQWxsKCcsJywgJycpKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAoIXRoaXMuaW5wdXRGb3JtQ29udHJvbC5lcnJvcnMpIHtcclxuICAgICAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCh2YWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9LCAxMCk7XHJcbiAgfVxyXG5cclxuICBvbkJsdXIoKSB7XHJcbiAgICBpZiAodGhpcy5pbnB1dFR5cGUgPT09ICdudW1iZXInICYmIHRoaXMuY2FuU3BsaXROdW1iZXIpIHtcclxuICAgICAgdGhpcy5vbkNoYW5nZS5lbWl0KHRoaXMuaW5wdXRGb3JtQ29udHJvbC52YWx1ZS5yZXBsYWNlQWxsKCcsJywgJycpKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICghdGhpcy5pbnB1dEZvcm1Db250cm9sLmVycm9ycykge1xyXG4gICAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCh0aGlzLmlucHV0Rm9ybUNvbnRyb2wudmFsdWUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLm9uQmx1ckVtaXQuZW1pdCh0aGlzLmlucHV0Rm9ybUNvbnRyb2wudmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgb25LZXlQcmVzcygpIHtcclxuICAgIGlmICh0aGlzLmlucHV0Rm9ybUNvbnRyb2wudmFsdWUudG9TdHJpbmcoKS5sZW5ndGggPT0gdGhpcy5tYXhMZW5ndGgpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBmb3JtYXRQcmljZShldmVudDogYW55KSB7XHJcbiAgICBpZiAodGhpcy5pbnB1dFR5cGUgPT09ICdudW1iZXInICYmIHRoaXMuY2FuU3BsaXROdW1iZXIpIHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgbGV0IHZhbHVlID0gZXZlbnQ7XHJcbiAgICAgICAgdmFsdWUgPSBOdW1iZXIodmFsdWUucmVwbGFjZUFsbCgnLCcsICcnKSk7XHJcbiAgICAgICAgaWYgKGlzTmFOKHZhbHVlKSkge1xyXG4gICAgICAgICAgdGhpcy5pbnB1dEZvcm1Db250cm9sLnNldFZhbHVlKCcnKTtcclxuICAgICAgICAgIHRoaXMubGFzdFZhbHVlID0gdmFsdWU7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbnN0IGZvcm1hdFZhbHVlID0gdmFsdWVcclxuICAgICAgICAgICAgLnRvU3RyaW5nKClcclxuICAgICAgICAgICAgLnJlcGxhY2UoL1xcQig/PShcXGR7M30pKyg/IVxcZCkpL2csICcsJyk7XHJcbiAgICAgICAgICB0aGlzLmlucHV0Rm9ybUNvbnRyb2wuc2V0VmFsdWUoZm9ybWF0VmFsdWUpO1xyXG4gICAgICAgICAgdGhpcy5sYXN0VmFsdWUgPSBmb3JtYXRWYWx1ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKCF0aGlzLmlucHV0Rm9ybUNvbnRyb2wuZXJyb3JzKSB7XHJcbiAgICAgICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQodGhpcy5pbnB1dEZvcm1Db250cm9sLnZhbHVlLnJlcGxhY2VBbGwoJywnLCAnJykpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSwgMTApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKCF0aGlzLmlucHV0Rm9ybUNvbnRyb2wuZXJyb3JzKSB7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZS5lbWl0KHRoaXMuaW5wdXRGb3JtQ29udHJvbC52YWx1ZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdj5cclxuICA8ZGl2XHJcbiAgICBjbGFzcz1cImNvbnRhaW5lci1pbnB1dFwiXHJcbiAgICBbbmdDbGFzc109XCJ7XHJcbiAgICAgIGVycm9yOlxyXG4gICAgICAgIChpbnB1dEZvcm1Db250cm9sLnRvdWNoZWQgfHwgaW5wdXRGb3JtQ29udHJvbC5kaXJ0eSkgJiZcclxuICAgICAgICBpbnB1dEZvcm1Db250cm9sLmVycm9yc1xyXG4gICAgfVwiXHJcbiAgPlxyXG4gICAgPGlucHV0XHJcbiAgICAgIFt0eXBlXT1cImlucHV0VHlwZVwiXHJcbiAgICAgIGNsYXNzPVwiYS1pbnB1dC1zdHlsZVwiXHJcbiAgICAgIFtmb3JtQ29udHJvbF09XCJpbnB1dEZvcm1Db250cm9sXCJcclxuICAgICAgKGJsdXIpPVwib25CbHVyKClcIlxyXG4gICAgICAoa2V5dXApPVwiY2hhbmdlKCRldmVudClcIlxyXG4gICAgICAocGFzdGUpPVwib25QYXN0ZSgkZXZlbnQpXCJcclxuICAgICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAgICdoYXZlLXZhbHVlJzogaW5wdXRGb3JtQ29udHJvbC52YWx1ZS50b1N0cmluZygpLmxlbmd0aCA+IDAsXHJcbiAgICAgICAgJ2hpZ2hsaWdodC1iYWNrZ3JvdW5kJzpcclxuICAgICAgICAgIGNhbkhpZ2hsaWdodEJhY2tncm91bmQgJiZcclxuICAgICAgICAgIGlucHV0Rm9ybUNvbnRyb2wudmFsdWUudG9TdHJpbmcoKS5sZW5ndGggPT09IDAgJiZcclxuICAgICAgICAgICEoXHJcbiAgICAgICAgICAgIChpbnB1dEZvcm1Db250cm9sLnRvdWNoZWQgfHwgaW5wdXRGb3JtQ29udHJvbC5kaXJ0eSkgJiZcclxuICAgICAgICAgICAgaW5wdXRGb3JtQ29udHJvbC5lcnJvcnNcclxuICAgICAgICAgICksXHJcbiAgICAgICAgJ2Rpc2FibGUtaW5wdXQnOiBpc0Rpc2FibGVcclxuICAgICAgfVwiXHJcbiAgICAgIChrZXlwcmVzcyk9XCJvbktleVByZXNzKClcIlxyXG4gICAgLz5cclxuICAgIDxsYWJlbCAqbmdJZj1cInBsYWNlaG9sZGVyLmxlbmd0aCA+IDBcIj57eyBwbGFjZWhvbGRlciB9fSA8L2xhYmVsPlxyXG4gICAgPGRpdiBjbGFzcz1cImxhYmVsLWVycm9yIG92ZXJmbG93LWhpZGRlblwiPlxyXG4gICAgICA8c3BhblxyXG4gICAgICAgIGNsYXNzPVwibGFiZWwtbnVtYmVyXCJcclxuICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAgICAgY2FuU2hvd1dvcmRpZnlGYSAmJlxyXG4gICAgICAgICAgaW5wdXRGb3JtQ29udHJvbC52YWx1ZS50b1N0cmluZygpLmxlbmd0aCA+IDAgJiZcclxuICAgICAgICAgIGlucHV0VHlwZSA9PT0gJ251bWJlcidcclxuICAgICAgICBcIlxyXG4gICAgICAgID48YXBwLWNvcmUtbnVtYmVyXHJcbiAgICAgICAgICBbY2FuU2hvd1dvcmRJblRvb2xUaXBdPVwiZmFsc2VcIlxyXG4gICAgICAgICAgW3R5cGVdPVwiJ3dvcmQnXCJcclxuICAgICAgICAgIFtudW1iZXJdPVwiaW5wdXRGb3JtQ29udHJvbC52YWx1ZVwiXHJcbiAgICAgICAgPjwvYXBwLWNvcmUtbnVtYmVyXHJcbiAgICAgID48L3NwYW4+XHJcblxyXG4gICAgICA8c3BhblxyXG4gICAgICAgICpuZ0lmPVwiXHJcbiAgICAgICAgKGlucHV0Rm9ybUNvbnRyb2wudG91Y2hlZCB8fCBpbnB1dEZvcm1Db250cm9sLmRpcnR5KSAmJlxyXG4gICAgICAgIGlucHV0Rm9ybUNvbnRyb2wuZXJyb3JzPy5bJ3JlcXVpcmVkJ11cclxuICAgICAgXCJcclxuICAgICAgICA+2KfbjNmGINmB24zZhNivINiu2KfZhNuMINin2LPYqjwvc3BhblxyXG4gICAgICA+XHJcbiAgICAgIDxzcGFuXHJcbiAgICAgICAgKm5nSWY9XCJcclxuICAgICAgICAoaW5wdXRGb3JtQ29udHJvbC50b3VjaGVkIHx8IGlucHV0Rm9ybUNvbnRyb2wuZGlydHkpICYmXHJcbiAgICAgICAgaW5wdXRGb3JtQ29udHJvbC5lcnJvcnM/LlsncHJlUGF5bWVudCddXHJcbiAgICAgIFwiXHJcbiAgICAgICAgPtmF2KjZhNi6INi12K3bjNitINmG24zYs9iqPC9zcGFuXHJcbiAgICAgID5cclxuICAgICAgPHNwYW5cclxuICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAoaW5wdXRGb3JtQ29udHJvbC50b3VjaGVkIHx8IGlucHV0Rm9ybUNvbnRyb2wuZGlydHkpICYmXHJcbiAgICAgIGlucHV0Rm9ybUNvbnRyb2wuZXJyb3JzPy5bJ21pbmxlbmd0aCddXHJcbiAgICBcIlxyXG4gICAgICA+XHJcbiAgICAgICAg2K3Yr9in2YLZhCDYqti52K/Yp9ivINqp2KfYsdqp2KrYsVxyXG4gICAgICAgIHt7aW5wdXRGb3JtQ29udHJvbC5lcnJvcnM/LlsnbWlubGVuZ3RoJ10ucmVxdWlyZWRMZW5ndGh8cGVyc2lhbkRpZ2l0c319XHJcbiAgICAgICAg2LnYr9ivINio2KfYtNivXHJcbiAgICAgIDwvc3Bhbj5cclxuICAgICAgPHNwYW5cclxuICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAoaW5wdXRGb3JtQ29udHJvbC50b3VjaGVkIHx8IGlucHV0Rm9ybUNvbnRyb2wuZGlydHkpICYmXHJcbiAgICAgIGlucHV0Rm9ybUNvbnRyb2wuZXJyb3JzPy5bJ21heGxlbmd0aCddXHJcbiAgICBcIlxyXG4gICAgICA+XHJcbiAgICAgICAg2K3Yr9in2qnYq9ixINiq2LnYr9in2K8g2qnYp9ix2qnYqtixXHJcbiAgICAgICAge3tpbnB1dEZvcm1Db250cm9sLmVycm9ycz8uWydtYXhsZW5ndGgnXS5yZXF1aXJlZExlbmd0aCB8cGVyc2lhbkRpZ2l0c319XHJcbiAgICAgICAg2LnYr9ivINio2KfYtNivXHJcbiAgICAgIDwvc3Bhbj5cclxuICAgICAgPHNwYW5cclxuICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAoaW5wdXRGb3JtQ29udHJvbC50b3VjaGVkIHx8IGlucHV0Rm9ybUNvbnRyb2wuZGlydHkpICYmXHJcbiAgICAgIGlucHV0Rm9ybUNvbnRyb2wuZXJyb3JzPy5bJ3BhdHRlcm4nXT8ucmVxdWlyZWRQYXR0ZXJuPT0nXjA5WzAtOV17OX0kJ1xyXG4gICAgXCJcclxuICAgICAgPlxyXG4gICAgICAgINi02YXYp9ix2Ycg2YfZhdix2KfZhyDYp9i02KrYqNin2Ycg2YfYs9iqXHJcbiAgICAgIDwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
@@ -1,28 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- export class CoreMultiSelectRowComponent {
5
- constructor() {
6
- this.onSelect = new EventEmitter();
7
- this._isSelected = false;
8
- }
9
- set isSelected(value) {
10
- this._isSelected = value;
11
- }
12
- onItemSelect() {
13
- this.onSelect.emit(true);
14
- }
15
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreMultiSelectRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CoreMultiSelectRowComponent, selector: "app-core-multi-select-row", inputs: { isSelected: "isSelected", item: "item" }, outputs: { onSelect: "onSelect" }, ngImport: i0, template: "<li [ngClass]=\"{ active: _isSelected }\" (click)=\"onItemSelect()\">\r\n {{ item.title }}\r\n</li>\r\n", styles: ["li{padding:.7em .5em;margin:.3em 0;margin-inline:4px;border-radius:.5em;font-size:14px;text-align:start;cursor:pointer}li:hover{background:#f6f6f6}.active{background:#ced4da}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
17
- }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreMultiSelectRowComponent, decorators: [{
19
- type: Component,
20
- args: [{ selector: 'app-core-multi-select-row', template: "<li [ngClass]=\"{ active: _isSelected }\" (click)=\"onItemSelect()\">\r\n {{ item.title }}\r\n</li>\r\n", styles: ["li{padding:.7em .5em;margin:.3em 0;margin-inline:4px;border-radius:.5em;font-size:14px;text-align:start;cursor:pointer}li:hover{background:#f6f6f6}.active{background:#ced4da}\n"] }]
21
- }], propDecorators: { isSelected: [{
22
- type: Input
23
- }], item: [{
24
- type: Input
25
- }], onSelect: [{
26
- type: Output
27
- }] } });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1tdWx0aS1zZWxlY3Qtcm93LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1saWIvc3JjL2xpYi9jb3JlLW11bHRpLXNlbGVjdC9jb3JlLW11bHRpLXNlbGVjdC1yb3cvY29yZS1tdWx0aS1zZWxlY3Qtcm93LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1saWIvc3JjL2xpYi9jb3JlLW11bHRpLXNlbGVjdC9jb3JlLW11bHRpLXNlbGVjdC1yb3cvY29yZS1tdWx0aS1zZWxlY3Qtcm93LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQU92RSxNQUFNLE9BQU8sMkJBQTJCO0lBTHhDO1FBVVksYUFBUSxHQUEwQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQy9ELGdCQUFXLEdBQUcsS0FBSyxDQUFDO0tBS3JCO0lBVkMsSUFBYSxVQUFVLENBQUMsS0FBYztRQUNwQyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUMzQixDQUFDO0lBS0QsWUFBWTtRQUNWLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzNCLENBQUM7K0dBVlUsMkJBQTJCO21HQUEzQiwyQkFBMkIsd0pDUHhDLDBHQUdBOzs0RkRJYSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0UsMkJBQTJCOzhCQUt4QixVQUFVO3NCQUF0QixLQUFLO2dCQUdHLElBQUk7c0JBQVosS0FBSztnQkFDSSxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWNvcmUtbXVsdGktc2VsZWN0LXJvdycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvcmUtbXVsdGktc2VsZWN0LXJvdy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY29yZS1tdWx0aS1zZWxlY3Qtcm93LmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3JlTXVsdGlTZWxlY3RSb3dDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIHNldCBpc1NlbGVjdGVkKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9pc1NlbGVjdGVkID0gdmFsdWU7XHJcbiAgfVxyXG4gIEBJbnB1dCgpIGl0ZW0hOiBhbnk7XHJcbiAgQE91dHB1dCgpIG9uU2VsZWN0OiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgX2lzU2VsZWN0ZWQgPSBmYWxzZTtcclxuXHJcbiAgb25JdGVtU2VsZWN0KCkge1xyXG4gICAgdGhpcy5vblNlbGVjdC5lbWl0KHRydWUpO1xyXG4gIH1cclxufVxyXG4iLCI8bGkgW25nQ2xhc3NdPVwieyBhY3RpdmU6IF9pc1NlbGVjdGVkIH1cIiAoY2xpY2spPVwib25JdGVtU2VsZWN0KClcIj5cclxuICB7eyBpdGVtLnRpdGxlIH19XHJcbjwvbGk+XHJcbiJdfQ==
@@ -1,145 +0,0 @@
1
- import { Component, EventEmitter, Input, Output, } from '@angular/core';
2
- import { FormControl } from '@angular/forms';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- import * as i2 from "./core-multi-select-row/core-multi-select-row.component";
6
- import * as i3 from "../../svg-icon/arrow-down-icon/arrow-down-icon.component";
7
- export class CoreMultiSelectComponent {
8
- set titleKey(data) {
9
- this._titleKey = data;
10
- this.hasTitleKey = true;
11
- this.init();
12
- }
13
- set valueKey(data) {
14
- this._valueKey = data;
15
- this.hasValueKey = true;
16
- this.init();
17
- }
18
- set items(data) {
19
- this._items = data;
20
- this.hasItems = true;
21
- this.init();
22
- }
23
- set defaultValue(data) {
24
- this._defaultValue = data;
25
- this.hasDefaultValue = true;
26
- this.init();
27
- }
28
- get isSelectedItems() {
29
- return Object.keys(this.selectedItems).length > 0 ? true : false;
30
- }
31
- constructor(cdr) {
32
- this.cdr = cdr;
33
- this.selectedItems = [];
34
- this.newItems = [];
35
- this.isOpenMenu = false;
36
- this._items = [];
37
- this._defaultValue = [];
38
- this.initCounter = 0;
39
- this.hasTitleKey = false;
40
- this.hasValueKey = false;
41
- this.hasItems = false;
42
- this.hasDefaultValue = false;
43
- this.text = '';
44
- this.label = '';
45
- this.singleSelectItems = [];
46
- this.onItemSelected = new EventEmitter();
47
- this.inputFormControl = new FormControl('', []);
48
- }
49
- init() {
50
- if (this.hasTitleKey &&
51
- this.hasValueKey &&
52
- this.hasItems &&
53
- this.hasDefaultValue) {
54
- this.newItems = this.changeItemsType(this._items);
55
- }
56
- }
57
- ngOnInit() {
58
- if (this._defaultValue.length == 0)
59
- return;
60
- this._defaultValue.forEach((item1, index) => {
61
- const value = this.newItems.find((item) => item.value === item1);
62
- if (value) {
63
- this.selectedItems[value.value] = value;
64
- }
65
- });
66
- }
67
- ngAfterViewInit() {
68
- this.showText();
69
- this.cdr.detectChanges();
70
- }
71
- onItemSelect(selectedItem, isFromUi) {
72
- if (this.selectedItems[selectedItem.value]) {
73
- delete this.selectedItems[selectedItem.value];
74
- }
75
- else {
76
- let flag = false;
77
- Object.keys(this.selectedItems).forEach((item) => {
78
- if (this.singleSelectItems.find((data) => data == item)) {
79
- flag = true;
80
- return;
81
- }
82
- });
83
- if (Object.keys(this.selectedItems).length > 0 &&
84
- this.singleSelectItems.find((data) => data == selectedItem.value)) {
85
- }
86
- else if (!flag)
87
- this.selectedItems[selectedItem.value] = selectedItem;
88
- }
89
- this.showText();
90
- this.onItemSelected.emit(this.selectedItems);
91
- }
92
- showText() {
93
- let text = '';
94
- const items = Object.values(this.selectedItems);
95
- items.forEach((item1, index) => {
96
- if (index < items.length - 1) {
97
- text = item1.title + ' , ' + text;
98
- }
99
- else {
100
- text = text + item1.title;
101
- }
102
- });
103
- this.text = text;
104
- this.inputFormControl.setValue(this.text);
105
- }
106
- changeItemsType(items) {
107
- return items.map((item) => {
108
- return {
109
- title: item[this._titleKey],
110
- value: item[this._valueKey],
111
- };
112
- });
113
- }
114
- openMenuClick() {
115
- this.isOpenMenu = !this.isOpenMenu;
116
- }
117
- focusOut() {
118
- this.isOpenMenu = false;
119
- this.inputFormControl.markAsTouched();
120
- }
121
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreMultiSelectComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
122
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CoreMultiSelectComponent, selector: "core-multi-select", inputs: { titleKey: "titleKey", valueKey: "valueKey", items: "items", defaultValue: "defaultValue", label: "label", singleSelectItems: "singleSelectItems", inputFormControl: "inputFormControl" }, outputs: { onItemSelected: "onItemSelected" }, ngImport: i0, template: "<div tabindex=\"-1\" class=\"dropdown\" (focusout)=\"focusOut()\">\r\n <div\r\n class=\"select\"\r\n [ngClass]=\"{\r\n 'select-clicked': isOpenMenu,\r\n selectError: inputFormControl.touched && inputFormControl.errors\r\n }\"\r\n (click)=\"openMenuClick()\"\r\n >\r\n <span class=\"placeholder-top\" *ngIf=\"isSelectedItems\">{{ label }}</span>\r\n <arrow-down-icon\r\n class=\"caret fill-secondary-text-color h-6\"\r\n [ngClass]=\"{ 'caret-rotate': isOpenMenu }\"\r\n ></arrow-down-icon>\r\n\r\n <span\r\n class=\"text-content\"\r\n [ngClass]=\"[\r\n label.length > 0 && !isSelectedItems ? 'placeholder' : 'selected'\r\n ]\"\r\n >{{ label.length > 0 && !isSelectedItems ? label : text }}</span\r\n >\r\n </div>\r\n <ul class=\"menu\" [ngClass]=\"{ 'menu-open': isOpenMenu }\">\r\n <app-core-multi-select-row\r\n *ngFor=\"let item of newItems\"\r\n [item]=\"item\"\r\n [isSelected]=\"selectedItems[item.value] ? true : false\"\r\n (onSelect)=\"onItemSelect(item, true)\"\r\n >\r\n </app-core-multi-select-row>\r\n </ul>\r\n <div class=\"label-error overflow-hidden\">\r\n <span\r\n *ngIf=\"\r\n inputFormControl.touched &&\r\n inputFormControl.errors?.['required']\"\r\n >\u0627\u06CC\u0646 \u0641\u06CC\u0644\u062F \u062E\u0627\u0644\u06CC \u0627\u0633\u062A</span\r\n >\r\n </div>\r\n</div>\r\n", styles: [".dropdown{min-width:15em;position:relative;width:100%;min-width:120px}.dropdown .select{background:#fff;color:#304050;display:flex;justify-content:space-between;flex-direction:row-reverse;align-items:center;border:1px solid #ced4da;border-radius:4px;padding:8px;cursor:pointer;transition:background .3s;font-size:12px;-webkit-user-select:none;user-select:none}.dropdown .select:hover{background:#fbfbfb}.dropdown .select .text-content{white-space:nowrap;display:block;width:263px;overflow:hidden;word-wrap:break-word;text-overflow:ellipsis}.dropdown .select .selected{padding-inline:12px;font-size:14px;color:#000000b3;-webkit-user-select:none;user-select:none}.dropdown .select .placeholder-top{position:absolute;right:13px;background:#fff;top:-8px;padding-inline:6px;font-size:11px;color:#888}.dropdown .select .caret{color:#595c5f;-webkit-user-select:none;user-select:none}.dropdown .select .caret-rotate{transform:rotate(180deg)}.dropdown .select .placeholder{color:#888;padding-inline:16px}.dropdown .select-clicked{border:1px solid rgba(19,92,175,.397)}.dropdown .menu{list-style:none;padding-inline:0px;background:#fff;border:1px #e3e8f1 solid;box-shadow:0 .5em 1em #0003;border-radius:.5em;color:#595c5f;position:absolute;top:40px;left:50%;width:100%;transform:translate(-50%);opacity:0;display:none;transition:0,2s;z-index:10;max-height:200px;overflow:auto}.dropdown .menu li{padding:.7em .5em;margin:.3em 0;margin-inline:4px;border-radius:.5em;font-size:14px;text-align:start;cursor:pointer}.dropdown .menu li:hover{background:#f6f6f6}.dropdown .menu .active{background:#ced4da}.dropdown .menu-open{display:block;opacity:1}.dropdown .label-error{color:red;font-size:13px;margin-block-start:4px;min-height:21px;width:100%;display:inline-block!important;text-align:start}.dropdown .selectError{border:1px solid #fe5f5f!important}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.CoreMultiSelectRowComponent, selector: "app-core-multi-select-row", inputs: ["isSelected", "item"], outputs: ["onSelect"] }, { kind: "component", type: i3.ArrowDownIconComponent, selector: "arrow-down-icon" }] }); }
123
- }
124
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreMultiSelectComponent, decorators: [{
125
- type: Component,
126
- args: [{ selector: 'core-multi-select', template: "<div tabindex=\"-1\" class=\"dropdown\" (focusout)=\"focusOut()\">\r\n <div\r\n class=\"select\"\r\n [ngClass]=\"{\r\n 'select-clicked': isOpenMenu,\r\n selectError: inputFormControl.touched && inputFormControl.errors\r\n }\"\r\n (click)=\"openMenuClick()\"\r\n >\r\n <span class=\"placeholder-top\" *ngIf=\"isSelectedItems\">{{ label }}</span>\r\n <arrow-down-icon\r\n class=\"caret fill-secondary-text-color h-6\"\r\n [ngClass]=\"{ 'caret-rotate': isOpenMenu }\"\r\n ></arrow-down-icon>\r\n\r\n <span\r\n class=\"text-content\"\r\n [ngClass]=\"[\r\n label.length > 0 && !isSelectedItems ? 'placeholder' : 'selected'\r\n ]\"\r\n >{{ label.length > 0 && !isSelectedItems ? label : text }}</span\r\n >\r\n </div>\r\n <ul class=\"menu\" [ngClass]=\"{ 'menu-open': isOpenMenu }\">\r\n <app-core-multi-select-row\r\n *ngFor=\"let item of newItems\"\r\n [item]=\"item\"\r\n [isSelected]=\"selectedItems[item.value] ? true : false\"\r\n (onSelect)=\"onItemSelect(item, true)\"\r\n >\r\n </app-core-multi-select-row>\r\n </ul>\r\n <div class=\"label-error overflow-hidden\">\r\n <span\r\n *ngIf=\"\r\n inputFormControl.touched &&\r\n inputFormControl.errors?.['required']\"\r\n >\u0627\u06CC\u0646 \u0641\u06CC\u0644\u062F \u062E\u0627\u0644\u06CC \u0627\u0633\u062A</span\r\n >\r\n </div>\r\n</div>\r\n", styles: [".dropdown{min-width:15em;position:relative;width:100%;min-width:120px}.dropdown .select{background:#fff;color:#304050;display:flex;justify-content:space-between;flex-direction:row-reverse;align-items:center;border:1px solid #ced4da;border-radius:4px;padding:8px;cursor:pointer;transition:background .3s;font-size:12px;-webkit-user-select:none;user-select:none}.dropdown .select:hover{background:#fbfbfb}.dropdown .select .text-content{white-space:nowrap;display:block;width:263px;overflow:hidden;word-wrap:break-word;text-overflow:ellipsis}.dropdown .select .selected{padding-inline:12px;font-size:14px;color:#000000b3;-webkit-user-select:none;user-select:none}.dropdown .select .placeholder-top{position:absolute;right:13px;background:#fff;top:-8px;padding-inline:6px;font-size:11px;color:#888}.dropdown .select .caret{color:#595c5f;-webkit-user-select:none;user-select:none}.dropdown .select .caret-rotate{transform:rotate(180deg)}.dropdown .select .placeholder{color:#888;padding-inline:16px}.dropdown .select-clicked{border:1px solid rgba(19,92,175,.397)}.dropdown .menu{list-style:none;padding-inline:0px;background:#fff;border:1px #e3e8f1 solid;box-shadow:0 .5em 1em #0003;border-radius:.5em;color:#595c5f;position:absolute;top:40px;left:50%;width:100%;transform:translate(-50%);opacity:0;display:none;transition:0,2s;z-index:10;max-height:200px;overflow:auto}.dropdown .menu li{padding:.7em .5em;margin:.3em 0;margin-inline:4px;border-radius:.5em;font-size:14px;text-align:start;cursor:pointer}.dropdown .menu li:hover{background:#f6f6f6}.dropdown .menu .active{background:#ced4da}.dropdown .menu-open{display:block;opacity:1}.dropdown .label-error{color:red;font-size:13px;margin-block-start:4px;min-height:21px;width:100%;display:inline-block!important;text-align:start}.dropdown .selectError{border:1px solid #fe5f5f!important}\n"] }]
127
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { titleKey: [{
128
- type: Input
129
- }], valueKey: [{
130
- type: Input
131
- }], items: [{
132
- type: Input
133
- }], defaultValue: [{
134
- type: Input,
135
- args: [{ required: true }]
136
- }], label: [{
137
- type: Input
138
- }], singleSelectItems: [{
139
- type: Input
140
- }], onItemSelected: [{
141
- type: Output
142
- }], inputFormControl: [{
143
- type: Input
144
- }] } });
145
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1tdWx0aS1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmFsY29uLWxpYi9zcmMvbGliL2NvcmUtbXVsdGktc2VsZWN0L2NvcmUtbXVsdGktc2VsZWN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1saWIvc3JjL2xpYi9jb3JlLW11bHRpLXNlbGVjdC9jb3JlLW11bHRpLXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFTN0MsTUFBTSxPQUFPLHdCQUF3QjtJQWNuQyxJQUFhLFFBQVEsQ0FBQyxJQUFTO1FBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFDRCxJQUFhLFFBQVEsQ0FBQyxJQUFTO1FBQzdCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFDRCxJQUFhLEtBQUssQ0FBQyxJQUFTO1FBQzFCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFDRCxJQUErQixZQUFZLENBQUMsSUFBUztRQUNuRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUMxQixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQztRQUM1QixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZCxDQUFDO0lBTUQsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDbkUsQ0FBQztJQUVELFlBQW9CLEdBQXNCO1FBQXRCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBMUMxQyxrQkFBYSxHQUErQixFQUFFLENBQUM7UUFDL0MsYUFBUSxHQUFVLEVBQUUsQ0FBQztRQUNyQixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLFdBQU0sR0FBUSxFQUFFLENBQUM7UUFDakIsa0JBQWEsR0FBRyxFQUFFLENBQUM7UUFHbkIsZ0JBQVcsR0FBRyxDQUFDLENBQUM7UUFDaEIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixvQkFBZSxHQUFHLEtBQUssQ0FBQztRQUN4QixTQUFJLEdBQUcsRUFBRSxDQUFDO1FBcUJELFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsc0JBQWlCLEdBQWEsRUFBRSxDQUFDO1FBQ2hDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQVMsQ0FBQztRQUM1QyxxQkFBZ0IsR0FBZ0IsSUFBSSxXQUFXLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBTXBCLENBQUM7SUFFOUMsSUFBSTtRQUNGLElBQ0UsSUFBSSxDQUFDLFdBQVc7WUFDaEIsSUFBSSxDQUFDLFdBQVc7WUFDaEIsSUFBSSxDQUFDLFFBQVE7WUFDYixJQUFJLENBQUMsZUFBZSxFQUNwQjtZQUNBLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDbkQ7SUFDSCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLElBQUksQ0FBQztZQUFFLE9BQU87UUFDM0MsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFVLEVBQUUsS0FBYSxFQUFFLEVBQUU7WUFDdkQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLENBQUM7WUFDdEUsSUFBSSxLQUFLLEVBQUU7Z0JBQ1QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxDQUFDO2FBQ3pDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBQ0QsZUFBZTtRQUNiLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxZQUFZLENBQUMsWUFBaUIsRUFBRSxRQUFpQjtRQUMvQyxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzFDLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDL0M7YUFBTTtZQUNMLElBQUksSUFBSSxHQUFHLEtBQUssQ0FBQztZQUNqQixNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtnQkFDL0MsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLEVBQUU7b0JBQ3ZELElBQUksR0FBRyxJQUFJLENBQUM7b0JBQ1osT0FBTztpQkFDUjtZQUNILENBQUMsQ0FBQyxDQUFDO1lBQ0gsSUFDRSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQztnQkFDMUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFDakU7YUFDRDtpQkFBTSxJQUFJLENBQUMsSUFBSTtnQkFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsR0FBRyxZQUFZLENBQUM7U0FDekU7UUFDRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2QsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDaEQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQVUsRUFBRSxLQUFhLEVBQUUsRUFBRTtZQUMxQyxJQUFJLEtBQUssR0FBRyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDNUIsSUFBSSxHQUFHLEtBQUssQ0FBQyxLQUFLLEdBQUcsS0FBSyxHQUFHLElBQUksQ0FBQzthQUNuQztpQkFBTTtnQkFDTCxJQUFJLEdBQUcsSUFBSSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7YUFDM0I7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxlQUFlLENBQUMsS0FBWTtRQUMxQixPQUFPLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUN4QixPQUFPO2dCQUNMLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztnQkFDM0IsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2FBQzVCLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDckMsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDeEMsQ0FBQzsrR0F6SFUsd0JBQXdCO21HQUF4Qix3QkFBd0IsNFNDaEJyQyw0NUNBeUNBOzs0RkR6QmEsd0JBQXdCO2tCQUxwQyxTQUFTOytCQUNFLG1CQUFtQjt3R0FrQmhCLFFBQVE7c0JBQXBCLEtBQUs7Z0JBS08sUUFBUTtzQkFBcEIsS0FBSztnQkFLTyxLQUFLO3NCQUFqQixLQUFLO2dCQUt5QixZQUFZO3NCQUExQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFLaEIsS0FBSztzQkFBYixLQUFLO2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDSSxjQUFjO3NCQUF2QixNQUFNO2dCQUNFLGdCQUFnQjtzQkFBeEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbnRlcmZhY2UgSVNlbGVjdGVkSXRlbXNEaWN0aW9uYXJ5IHtcclxuICBbaW5kZXg6IHN0cmluZ106IGFueTtcclxufVxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvcmUtbXVsdGktc2VsZWN0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29yZS1tdWx0aS1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvcmUtbXVsdGktc2VsZWN0LmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3JlTXVsdGlTZWxlY3RDb21wb25lbnQge1xyXG4gIHNlbGVjdGVkSXRlbXM6IElTZWxlY3RlZEl0ZW1zRGljdGlvbmFyeVtdID0gW107XHJcbiAgbmV3SXRlbXM6IGFueVtdID0gW107XHJcbiAgaXNPcGVuTWVudSA9IGZhbHNlO1xyXG4gIF9pdGVtczogYW55ID0gW107XHJcbiAgX2RlZmF1bHRWYWx1ZSA9IFtdO1xyXG4gIF90aXRsZUtleSE6IGFueTtcclxuICBfdmFsdWVLZXkhOiBhbnk7XHJcbiAgaW5pdENvdW50ZXIgPSAwO1xyXG4gIGhhc1RpdGxlS2V5ID0gZmFsc2U7XHJcbiAgaGFzVmFsdWVLZXkgPSBmYWxzZTtcclxuICBoYXNJdGVtcyA9IGZhbHNlO1xyXG4gIGhhc0RlZmF1bHRWYWx1ZSA9IGZhbHNlO1xyXG4gIHRleHQgPSAnJztcclxuICBASW5wdXQoKSBzZXQgdGl0bGVLZXkoZGF0YTogYW55KSB7XHJcbiAgICB0aGlzLl90aXRsZUtleSA9IGRhdGE7XHJcbiAgICB0aGlzLmhhc1RpdGxlS2V5ID0gdHJ1ZTtcclxuICAgIHRoaXMuaW5pdCgpO1xyXG4gIH1cclxuICBASW5wdXQoKSBzZXQgdmFsdWVLZXkoZGF0YTogYW55KSB7XHJcbiAgICB0aGlzLl92YWx1ZUtleSA9IGRhdGE7XHJcbiAgICB0aGlzLmhhc1ZhbHVlS2V5ID0gdHJ1ZTtcclxuICAgIHRoaXMuaW5pdCgpO1xyXG4gIH1cclxuICBASW5wdXQoKSBzZXQgaXRlbXMoZGF0YTogYW55KSB7XHJcbiAgICB0aGlzLl9pdGVtcyA9IGRhdGE7XHJcbiAgICB0aGlzLmhhc0l0ZW1zID0gdHJ1ZTtcclxuICAgIHRoaXMuaW5pdCgpO1xyXG4gIH1cclxuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBzZXQgZGVmYXVsdFZhbHVlKGRhdGE6IGFueSkge1xyXG4gICAgdGhpcy5fZGVmYXVsdFZhbHVlID0gZGF0YTtcclxuICAgIHRoaXMuaGFzRGVmYXVsdFZhbHVlID0gdHJ1ZTtcclxuICAgIHRoaXMuaW5pdCgpO1xyXG4gIH1cclxuICBASW5wdXQoKSBsYWJlbDogc3RyaW5nID0gJyc7XHJcbiAgQElucHV0KCkgc2luZ2xlU2VsZWN0SXRlbXM6IHN0cmluZ1tdID0gW107XHJcbiAgQE91dHB1dCgpIG9uSXRlbVNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnlbXT4oKTtcclxuICBASW5wdXQoKSBpbnB1dEZvcm1Db250cm9sOiBGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnJywgW10pO1xyXG5cclxuICBnZXQgaXNTZWxlY3RlZEl0ZW1zKCkge1xyXG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuc2VsZWN0ZWRJdGVtcykubGVuZ3RoID4gMCA/IHRydWUgOiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZikge31cclxuXHJcbiAgaW5pdCgpIHtcclxuICAgIGlmIChcclxuICAgICAgdGhpcy5oYXNUaXRsZUtleSAmJlxyXG4gICAgICB0aGlzLmhhc1ZhbHVlS2V5ICYmXHJcbiAgICAgIHRoaXMuaGFzSXRlbXMgJiZcclxuICAgICAgdGhpcy5oYXNEZWZhdWx0VmFsdWVcclxuICAgICkge1xyXG4gICAgICB0aGlzLm5ld0l0ZW1zID0gdGhpcy5jaGFuZ2VJdGVtc1R5cGUodGhpcy5faXRlbXMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5fZGVmYXVsdFZhbHVlLmxlbmd0aCA9PSAwKSByZXR1cm47XHJcbiAgICB0aGlzLl9kZWZhdWx0VmFsdWUuZm9yRWFjaCgoaXRlbTE6IGFueSwgaW5kZXg6IG51bWJlcikgPT4ge1xyXG4gICAgICBjb25zdCB2YWx1ZSA9IHRoaXMubmV3SXRlbXMuZmluZCgoaXRlbTogYW55KSA9PiBpdGVtLnZhbHVlID09PSBpdGVtMSk7XHJcbiAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtc1t2YWx1ZS52YWx1ZV0gPSB2YWx1ZTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2hvd1RleHQoKTtcclxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIG9uSXRlbVNlbGVjdChzZWxlY3RlZEl0ZW06IGFueSwgaXNGcm9tVWk6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnNlbGVjdGVkSXRlbXNbc2VsZWN0ZWRJdGVtLnZhbHVlXSkge1xyXG4gICAgICBkZWxldGUgdGhpcy5zZWxlY3RlZEl0ZW1zW3NlbGVjdGVkSXRlbS52YWx1ZV07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBsZXQgZmxhZyA9IGZhbHNlO1xyXG4gICAgICBPYmplY3Qua2V5cyh0aGlzLnNlbGVjdGVkSXRlbXMpLmZvckVhY2goKGl0ZW0pID0+IHtcclxuICAgICAgICBpZiAodGhpcy5zaW5nbGVTZWxlY3RJdGVtcy5maW5kKChkYXRhKSA9PiBkYXRhID09IGl0ZW0pKSB7XHJcbiAgICAgICAgICBmbGFnID0gdHJ1ZTtcclxuICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICBpZiAoXHJcbiAgICAgICAgT2JqZWN0LmtleXModGhpcy5zZWxlY3RlZEl0ZW1zKS5sZW5ndGggPiAwICYmXHJcbiAgICAgICAgdGhpcy5zaW5nbGVTZWxlY3RJdGVtcy5maW5kKChkYXRhKSA9PiBkYXRhID09IHNlbGVjdGVkSXRlbS52YWx1ZSlcclxuICAgICAgKSB7XHJcbiAgICAgIH0gZWxzZSBpZiAoIWZsYWcpIHRoaXMuc2VsZWN0ZWRJdGVtc1tzZWxlY3RlZEl0ZW0udmFsdWVdID0gc2VsZWN0ZWRJdGVtO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zaG93VGV4dCgpO1xyXG4gICAgdGhpcy5vbkl0ZW1TZWxlY3RlZC5lbWl0KHRoaXMuc2VsZWN0ZWRJdGVtcyk7XHJcbiAgfVxyXG5cclxuICBzaG93VGV4dCgpIHtcclxuICAgIGxldCB0ZXh0ID0gJyc7XHJcbiAgICBjb25zdCBpdGVtcyA9IE9iamVjdC52YWx1ZXModGhpcy5zZWxlY3RlZEl0ZW1zKTtcclxuICAgIGl0ZW1zLmZvckVhY2goKGl0ZW0xOiBhbnksIGluZGV4OiBudW1iZXIpID0+IHtcclxuICAgICAgaWYgKGluZGV4IDwgaXRlbXMubGVuZ3RoIC0gMSkge1xyXG4gICAgICAgIHRleHQgPSBpdGVtMS50aXRsZSArICcgLCAnICsgdGV4dDtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0ZXh0ID0gdGV4dCArIGl0ZW0xLnRpdGxlO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHRoaXMudGV4dCA9IHRleHQ7XHJcbiAgICB0aGlzLmlucHV0Rm9ybUNvbnRyb2wuc2V0VmFsdWUodGhpcy50ZXh0KTtcclxuICB9XHJcblxyXG4gIGNoYW5nZUl0ZW1zVHlwZShpdGVtczogYW55W10pOiBhbnlbXSB7XHJcbiAgICByZXR1cm4gaXRlbXMubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgdGl0bGU6IGl0ZW1bdGhpcy5fdGl0bGVLZXldLFxyXG4gICAgICAgIHZhbHVlOiBpdGVtW3RoaXMuX3ZhbHVlS2V5XSxcclxuICAgICAgfTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb3Blbk1lbnVDbGljaygpIHtcclxuICAgIHRoaXMuaXNPcGVuTWVudSA9ICF0aGlzLmlzT3Blbk1lbnU7XHJcbiAgfVxyXG5cclxuICBmb2N1c091dCgpIHtcclxuICAgIHRoaXMuaXNPcGVuTWVudSA9IGZhbHNlO1xyXG4gICAgdGhpcy5pbnB1dEZvcm1Db250cm9sLm1hcmtBc1RvdWNoZWQoKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiB0YWJpbmRleD1cIi0xXCIgY2xhc3M9XCJkcm9wZG93blwiIChmb2N1c291dCk9XCJmb2N1c091dCgpXCI+XHJcbiAgPGRpdlxyXG4gICAgY2xhc3M9XCJzZWxlY3RcIlxyXG4gICAgW25nQ2xhc3NdPVwie1xyXG4gICAgICAnc2VsZWN0LWNsaWNrZWQnOiBpc09wZW5NZW51LFxyXG4gICAgICBzZWxlY3RFcnJvcjogaW5wdXRGb3JtQ29udHJvbC50b3VjaGVkICYmIGlucHV0Rm9ybUNvbnRyb2wuZXJyb3JzXHJcbiAgICB9XCJcclxuICAgIChjbGljayk9XCJvcGVuTWVudUNsaWNrKClcIlxyXG4gID5cclxuICAgIDxzcGFuIGNsYXNzPVwicGxhY2Vob2xkZXItdG9wXCIgKm5nSWY9XCJpc1NlbGVjdGVkSXRlbXNcIj57eyBsYWJlbCB9fTwvc3Bhbj5cclxuICAgIDxhcnJvdy1kb3duLWljb25cclxuICAgICAgY2xhc3M9XCJjYXJldCBmaWxsLXNlY29uZGFyeS10ZXh0LWNvbG9yIGgtNlwiXHJcbiAgICAgIFtuZ0NsYXNzXT1cInsgJ2NhcmV0LXJvdGF0ZSc6IGlzT3Blbk1lbnUgfVwiXHJcbiAgICA+PC9hcnJvdy1kb3duLWljb24+XHJcblxyXG4gICAgPHNwYW5cclxuICAgICAgY2xhc3M9XCJ0ZXh0LWNvbnRlbnRcIlxyXG4gICAgICBbbmdDbGFzc109XCJbXHJcbiAgICAgICAgbGFiZWwubGVuZ3RoID4gMCAmJiAhaXNTZWxlY3RlZEl0ZW1zID8gJ3BsYWNlaG9sZGVyJyA6ICdzZWxlY3RlZCdcclxuICAgICAgXVwiXHJcbiAgICAgID57eyBsYWJlbC5sZW5ndGggPiAwICYmICFpc1NlbGVjdGVkSXRlbXMgPyBsYWJlbCA6IHRleHQgfX08L3NwYW5cclxuICAgID5cclxuICA8L2Rpdj5cclxuICA8dWwgY2xhc3M9XCJtZW51XCIgW25nQ2xhc3NdPVwieyAnbWVudS1vcGVuJzogaXNPcGVuTWVudSB9XCI+XHJcbiAgICA8YXBwLWNvcmUtbXVsdGktc2VsZWN0LXJvd1xyXG4gICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBuZXdJdGVtc1wiXHJcbiAgICAgIFtpdGVtXT1cIml0ZW1cIlxyXG4gICAgICBbaXNTZWxlY3RlZF09XCJzZWxlY3RlZEl0ZW1zW2l0ZW0udmFsdWVdID8gdHJ1ZSA6IGZhbHNlXCJcclxuICAgICAgKG9uU2VsZWN0KT1cIm9uSXRlbVNlbGVjdChpdGVtLCB0cnVlKVwiXHJcbiAgICA+XHJcbiAgICA8L2FwcC1jb3JlLW11bHRpLXNlbGVjdC1yb3c+XHJcbiAgPC91bD5cclxuICA8ZGl2IGNsYXNzPVwibGFiZWwtZXJyb3Igb3ZlcmZsb3ctaGlkZGVuXCI+XHJcbiAgICA8c3BhblxyXG4gICAgICAqbmdJZj1cIlxyXG4gICAgICAgaW5wdXRGb3JtQ29udHJvbC50b3VjaGVkICAmJlxyXG4gICAgICBpbnB1dEZvcm1Db250cm9sLmVycm9ycz8uWydyZXF1aXJlZCddXCJcclxuICAgICAgPtin24zZhiDZgduM2YTYryDYrtin2YTbjCDYp9iz2Ko8L3NwYW5cclxuICAgID5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -1,64 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import { WordifyFa } from '../wordify';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../pipes/persian-digits.pipe";
5
- export class CoreNumberComponent {
6
- constructor() {
7
- this.number = '';
8
- this.type = 'number';
9
- this.canSplitNumbers = false;
10
- this.canShowWordInToolTip = false;
11
- this.canShowIRR = false;
12
- }
13
- wordifyFa(number) {
14
- if (number === undefined) {
15
- return '';
16
- }
17
- if (this.type === 'number') {
18
- if (this.canSplitNumbers) {
19
- return number.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',');
20
- }
21
- else {
22
- return number;
23
- }
24
- }
25
- else {
26
- const newNumber = Number(number.toString().replaceAll(',', ''));
27
- if (newNumber > 10) {
28
- return WordifyFa(newNumber / 10) + ' تومان ';
29
- }
30
- else {
31
- return WordifyFa(number);
32
- }
33
- }
34
- }
35
- toolTipText(number) {
36
- if (this.number === undefined)
37
- return '';
38
- if (!this.canShowWordInToolTip)
39
- return '';
40
- if (number && +number > 10) {
41
- return WordifyFa(+number / 10) + ' تومان ';
42
- }
43
- else {
44
- return WordifyFa(number);
45
- }
46
- }
47
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreNumberComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
48
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CoreNumberComponent, selector: "app-core-number", inputs: { number: "number", type: "type", canSplitNumbers: "canSplitNumbers", canShowWordInToolTip: "canShowWordInToolTip", canShowIRR: "canShowIRR" }, ngImport: i0, template: "<span [title]=\"toolTipText(number)\"\r\n >{{ wordifyFa(number) | persianDigits }} {{ canShowIRR ? \"\u0631\u06CC\u0627\u0644\" : \"\" }}\r\n</span>\r\n", styles: [""], dependencies: [{ kind: "pipe", type: i1.PersianDigitsPipe, name: "persianDigits" }] }); }
49
- }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CoreNumberComponent, decorators: [{
51
- type: Component,
52
- args: [{ selector: 'app-core-number', template: "<span [title]=\"toolTipText(number)\"\r\n >{{ wordifyFa(number) | persianDigits }} {{ canShowIRR ? \"\u0631\u06CC\u0627\u0644\" : \"\" }}\r\n</span>\r\n" }]
53
- }], propDecorators: { number: [{
54
- type: Input
55
- }], type: [{
56
- type: Input
57
- }], canSplitNumbers: [{
58
- type: Input
59
- }], canShowWordInToolTip: [{
60
- type: Input
61
- }], canShowIRR: [{
62
- type: Input
63
- }] } });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1udW1iZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZmFsY29uLWxpYi9zcmMvbGliL2NvcmUtbnVtYmVyL2NvcmUtbnVtYmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1saWIvc3JjL2xpYi9jb3JlLW51bWJlci9jb3JlLW51bWJlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sWUFBWSxDQUFDOzs7QUFPdkMsTUFBTSxPQUFPLG1CQUFtQjtJQUxoQztRQU1XLFdBQU0sR0FBZ0MsRUFBRSxDQUFDO1FBQ3pDLFNBQUksR0FBc0IsUUFBUSxDQUFDO1FBQ25DLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLHlCQUFvQixHQUFHLEtBQUssQ0FBQztRQUM3QixlQUFVLEdBQUcsS0FBSyxDQUFDO0tBK0I3QjtJQTdCQyxTQUFTLENBQUMsTUFBbUM7UUFDM0MsSUFBSSxNQUFNLEtBQUssU0FBUyxFQUFFO1lBQ3hCLE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRCxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFO1lBQzFCLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtnQkFDeEIsT0FBTyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDLHVCQUF1QixFQUFFLEdBQUcsQ0FBQyxDQUFDO2FBQ2hFO2lCQUFNO2dCQUNMLE9BQU8sTUFBTSxDQUFDO2FBQ2Y7U0FDRjthQUFNO1lBQ0wsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDaEUsSUFBSSxTQUFTLEdBQUcsRUFBRSxFQUFFO2dCQUNsQixPQUFPLFNBQVMsQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDO2FBQzlDO2lCQUFNO2dCQUNMLE9BQU8sU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQzFCO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLE1BQW1DO1FBQzdDLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxTQUFTO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFDekMsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0I7WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUMxQyxJQUFJLE1BQU0sSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLEVBQUU7WUFDMUIsT0FBTyxTQUFTLENBQUMsQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDLEdBQUcsU0FBUyxDQUFDO1NBQzVDO2FBQU07WUFDTCxPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUMxQjtJQUNILENBQUM7K0dBbkNVLG1CQUFtQjttR0FBbkIsbUJBQW1CLCtNQ1JoQywySkFHQTs7NEZES2EsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGlCQUFpQjs4QkFLbEIsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBXb3JkaWZ5RmEgfSBmcm9tICcuLi93b3JkaWZ5JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLWNvcmUtbnVtYmVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29yZS1udW1iZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvcmUtbnVtYmVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3JlTnVtYmVyQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSBudW1iZXI6IG51bWJlciB8IHN0cmluZyB8IHVuZGVmaW5lZCA9ICcnO1xyXG4gIEBJbnB1dCgpIHR5cGU6ICdudW1iZXInIHwgJ3dvcmQnID0gJ251bWJlcic7XHJcbiAgQElucHV0KCkgY2FuU3BsaXROdW1iZXJzID0gZmFsc2U7XHJcbiAgQElucHV0KCkgY2FuU2hvd1dvcmRJblRvb2xUaXAgPSBmYWxzZTtcclxuICBASW5wdXQoKSBjYW5TaG93SVJSID0gZmFsc2U7XHJcblxyXG4gIHdvcmRpZnlGYShudW1iZXI6IHN0cmluZyB8IG51bWJlciB8IHVuZGVmaW5lZCkge1xyXG4gICAgaWYgKG51bWJlciA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICAgIGlmICh0aGlzLnR5cGUgPT09ICdudW1iZXInKSB7XHJcbiAgICAgIGlmICh0aGlzLmNhblNwbGl0TnVtYmVycykge1xyXG4gICAgICAgIHJldHVybiBudW1iZXIudG9TdHJpbmcoKS5yZXBsYWNlKC9cXEIoPz0oXFxkezN9KSsoPyFcXGQpKS9nLCAnLCcpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiBudW1iZXI7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnN0IG5ld051bWJlciA9IE51bWJlcihudW1iZXIudG9TdHJpbmcoKS5yZXBsYWNlQWxsKCcsJywgJycpKTtcclxuICAgICAgaWYgKG5ld051bWJlciA+IDEwKSB7XHJcbiAgICAgICAgcmV0dXJuIFdvcmRpZnlGYShuZXdOdW1iZXIgLyAxMCkgKyAnINiq2YjZhdin2YYgJztcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4gV29yZGlmeUZhKG51bWJlcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHRvb2xUaXBUZXh0KG51bWJlcjogc3RyaW5nIHwgbnVtYmVyIHwgdW5kZWZpbmVkKSB7XHJcbiAgICBpZiAodGhpcy5udW1iZXIgPT09IHVuZGVmaW5lZCkgcmV0dXJuICcnO1xyXG4gICAgaWYgKCF0aGlzLmNhblNob3dXb3JkSW5Ub29sVGlwKSByZXR1cm4gJyc7XHJcbiAgICBpZiAobnVtYmVyICYmICtudW1iZXIgPiAxMCkge1xyXG4gICAgICByZXR1cm4gV29yZGlmeUZhKCtudW1iZXIgLyAxMCkgKyAnINiq2YjZhdin2YYgJztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBXb3JkaWZ5RmEobnVtYmVyKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPHNwYW4gW3RpdGxlXT1cInRvb2xUaXBUZXh0KG51bWJlcilcIlxyXG4gID57eyB3b3JkaWZ5RmEobnVtYmVyKSB8IHBlcnNpYW5EaWdpdHMgfX0ge3sgY2FuU2hvd0lSUiA/IFwi2LHbjNin2YRcIiA6IFwiXCIgfX1cclxuPC9zcGFuPlxyXG4iXX0=
@@ -1,19 +0,0 @@
1
- import { Component, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class CorePageTitleComponent {
4
- constructor() {
5
- this.title = '';
6
- this.description = '';
7
- }
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CorePageTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CorePageTitleComponent, selector: "core-page-title", inputs: { title: "title", description: "description" }, ngImport: i0, template: "<div\r\n class=\"container-page core-page-title flex flex-col text-right justify-center rounded-lg pt-2 pb-7 px-10 h-40 shadow-md\"\r\n>\r\n <div class=\"title my-5 w-5/6\">\r\n <span class=\"title-text text-2xl font-bold\">\r\n {{ title }}\r\n </span>\r\n </div>\r\n <div class=\"description w-5/6\">\r\n <p class=\"description-text text-base\">\r\n {{ description }}\r\n </p>\r\n </div>\r\n</div>\r\n", styles: [".core-page-title{background-image:url(data:image/png;base64,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);background-repeat:no-repeat;background-position:left;background-size:contain}.description-text,.title-text{color:var(--default-page-title-text-color)}.container-page{background-color:var(--default-page-title-background-color)}\n"] }); }
10
- }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CorePageTitleComponent, decorators: [{
12
- type: Component,
13
- args: [{ selector: 'core-page-title', template: "<div\r\n class=\"container-page core-page-title flex flex-col text-right justify-center rounded-lg pt-2 pb-7 px-10 h-40 shadow-md\"\r\n>\r\n <div class=\"title my-5 w-5/6\">\r\n <span class=\"title-text text-2xl font-bold\">\r\n {{ title }}\r\n </span>\r\n </div>\r\n <div class=\"description w-5/6\">\r\n <p class=\"description-text text-base\">\r\n {{ description }}\r\n </p>\r\n </div>\r\n</div>\r\n", styles: [".core-page-title{background-image:url(data:image/png;base64,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);background-repeat:no-repeat;background-position:left;background-size:contain}.description-text,.title-text{color:var(--default-page-title-text-color)}.container-page{background-color:var(--default-page-title-background-color)}\n"] }]
14
- }], propDecorators: { title: [{
15
- type: Input
16
- }], description: [{
17
- type: Input
18
- }] } });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1wYWdlLXRpdGxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1saWIvc3JjL2xpYi9jb3JlLXBhZ2UtdGl0bGUvY29yZS1wYWdlLXRpdGxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ZhbGNvbi1saWIvc3JjL2xpYi9jb3JlLXBhZ2UtdGl0bGUvY29yZS1wYWdlLXRpdGxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU9qRCxNQUFNLE9BQU8sc0JBQXNCO0lBTG5DO1FBTVcsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLGdCQUFXLEdBQUcsRUFBRSxDQUFDO0tBQzNCOytHQUhZLHNCQUFzQjttR0FBdEIsc0JBQXNCLCtHQ1BuQywrYUFjQTs7NEZEUGEsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLGlCQUFpQjs4QkFLbEIsS0FBSztzQkFBYixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2NvcmUtcGFnZS10aXRsZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvcmUtcGFnZS10aXRsZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY29yZS1wYWdlLXRpdGxlLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3JlUGFnZVRpdGxlQ29tcG9uZW50IHtcclxuICBASW5wdXQoKSB0aXRsZSA9ICcnO1xyXG4gIEBJbnB1dCgpIGRlc2NyaXB0aW9uID0gJyc7XHJcbn1cclxuIiwiPGRpdlxyXG4gIGNsYXNzPVwiY29udGFpbmVyLXBhZ2UgY29yZS1wYWdlLXRpdGxlIGZsZXggZmxleC1jb2wgdGV4dC1yaWdodCBqdXN0aWZ5LWNlbnRlciByb3VuZGVkLWxnIHB0LTIgcGItNyBweC0xMCBoLTQwIHNoYWRvdy1tZFwiXHJcbj5cclxuICA8ZGl2IGNsYXNzPVwidGl0bGUgbXktNSB3LTUvNlwiPlxyXG4gICAgPHNwYW4gY2xhc3M9XCJ0aXRsZS10ZXh0IHRleHQtMnhsIGZvbnQtYm9sZFwiPlxyXG4gICAgICB7eyB0aXRsZSB9fVxyXG4gICAgPC9zcGFuPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvbiB3LTUvNlwiPlxyXG4gICAgPHAgY2xhc3M9XCJkZXNjcmlwdGlvbi10ZXh0IHRleHQtYmFzZVwiPlxyXG4gICAgICB7eyBkZXNjcmlwdGlvbiB9fVxyXG4gICAgPC9wPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19