@sd-angular/core 1.2.99 → 1.3.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 (805) hide show
  1. package/api/package.json +12 -1
  2. package/api/sd-angular-core-api.d.ts +2 -0
  3. package/api/sd-angular-core-api.d.ts.__ivy_ngcc_bak +4 -0
  4. package/api/sd-angular-core-api.d.ts.map +1 -0
  5. package/autocomplete/package.json +12 -1
  6. package/autocomplete/sd-angular-core-autocomplete.d.ts +2 -0
  7. package/autocomplete/sd-angular-core-autocomplete.d.ts.__ivy_ngcc_bak +4 -0
  8. package/autocomplete/sd-angular-core-autocomplete.d.ts.map +1 -0
  9. package/badge/package.json +12 -1
  10. package/badge/sd-angular-core-badge.d.ts +2 -0
  11. package/badge/sd-angular-core-badge.d.ts.__ivy_ngcc_bak +4 -0
  12. package/badge/sd-angular-core-badge.d.ts.map +1 -0
  13. package/bundles/sd-angular-core-api.umd.js +2 -1
  14. package/bundles/sd-angular-core-api.umd.js.__ivy_ngcc_bak +876 -0
  15. package/bundles/sd-angular-core-api.umd.js.map +1 -1
  16. package/bundles/sd-angular-core-api.umd.js.map.__ivy_ngcc_bak +1 -0
  17. package/bundles/sd-angular-core-autocomplete.umd.js +2 -1
  18. package/bundles/sd-angular-core-autocomplete.umd.js.__ivy_ngcc_bak +791 -0
  19. package/bundles/sd-angular-core-autocomplete.umd.js.map +1 -1
  20. package/bundles/sd-angular-core-autocomplete.umd.js.map.__ivy_ngcc_bak +1 -0
  21. package/bundles/sd-angular-core-badge.umd.js +2 -1
  22. package/bundles/sd-angular-core-badge.umd.js.__ivy_ngcc_bak +89 -0
  23. package/bundles/sd-angular-core-badge.umd.js.map +1 -1
  24. package/bundles/sd-angular-core-badge.umd.js.map.__ivy_ngcc_bak +1 -0
  25. package/bundles/sd-angular-core-button.umd.js +2 -1
  26. package/bundles/sd-angular-core-button.umd.js.__ivy_ngcc_bak +447 -0
  27. package/bundles/sd-angular-core-button.umd.js.map +1 -1
  28. package/bundles/sd-angular-core-button.umd.js.map.__ivy_ngcc_bak +1 -0
  29. package/bundles/sd-angular-core-cache.umd.js +2 -1
  30. package/bundles/sd-angular-core-cache.umd.js.__ivy_ngcc_bak +623 -0
  31. package/bundles/sd-angular-core-cache.umd.js.map +1 -1
  32. package/bundles/sd-angular-core-cache.umd.js.map.__ivy_ngcc_bak +1 -0
  33. package/bundles/sd-angular-core-chart.umd.js +2 -1
  34. package/bundles/sd-angular-core-chart.umd.js.__ivy_ngcc_bak +1106 -0
  35. package/bundles/sd-angular-core-chart.umd.js.map +1 -1
  36. package/bundles/sd-angular-core-chart.umd.js.map.__ivy_ngcc_bak +1 -0
  37. package/bundles/sd-angular-core-checkbox.umd.js +2 -1
  38. package/bundles/sd-angular-core-checkbox.umd.js.__ivy_ngcc_bak +461 -0
  39. package/bundles/sd-angular-core-checkbox.umd.js.map +1 -1
  40. package/bundles/sd-angular-core-checkbox.umd.js.map.__ivy_ngcc_bak +1 -0
  41. package/bundles/sd-angular-core-chip.umd.js +2 -1
  42. package/bundles/sd-angular-core-chip.umd.js.__ivy_ngcc_bak +1051 -0
  43. package/bundles/sd-angular-core-chip.umd.js.map +1 -1
  44. package/bundles/sd-angular-core-chip.umd.js.map.__ivy_ngcc_bak +1 -0
  45. package/bundles/sd-angular-core-comment.umd.js +2 -1
  46. package/bundles/sd-angular-core-comment.umd.js.__ivy_ngcc_bak +456 -0
  47. package/bundles/sd-angular-core-comment.umd.js.map +1 -1
  48. package/bundles/sd-angular-core-comment.umd.js.map.__ivy_ngcc_bak +1 -0
  49. package/bundles/sd-angular-core-common.umd.js +2 -1
  50. package/bundles/sd-angular-core-common.umd.js.__ivy_ngcc_bak +962 -0
  51. package/bundles/sd-angular-core-common.umd.js.map +1 -1
  52. package/bundles/sd-angular-core-common.umd.js.map.__ivy_ngcc_bak +1 -0
  53. package/bundles/sd-angular-core-confirm.umd.js +2 -1
  54. package/bundles/sd-angular-core-confirm.umd.js.__ivy_ngcc_bak +159 -0
  55. package/bundles/sd-angular-core-confirm.umd.js.map +1 -1
  56. package/bundles/sd-angular-core-confirm.umd.js.map.__ivy_ngcc_bak +1 -0
  57. package/bundles/sd-angular-core-date-month.umd.js +2 -1
  58. package/bundles/sd-angular-core-date-month.umd.js.__ivy_ngcc_bak +650 -0
  59. package/bundles/sd-angular-core-date-month.umd.js.map +1 -1
  60. package/bundles/sd-angular-core-date-month.umd.js.map.__ivy_ngcc_bak +1 -0
  61. package/bundles/sd-angular-core-date-range.umd.js +2 -1
  62. package/bundles/sd-angular-core-date-range.umd.js.__ivy_ngcc_bak +660 -0
  63. package/bundles/sd-angular-core-date-range.umd.js.map +1 -1
  64. package/bundles/sd-angular-core-date-range.umd.js.map.__ivy_ngcc_bak +1 -0
  65. package/bundles/sd-angular-core-date-time.umd.js +2 -1
  66. package/bundles/sd-angular-core-date-time.umd.js.__ivy_ngcc_bak +734 -0
  67. package/bundles/sd-angular-core-date-time.umd.js.map +1 -1
  68. package/bundles/sd-angular-core-date-time.umd.js.map.__ivy_ngcc_bak +1 -0
  69. package/bundles/sd-angular-core-db.umd.js +2 -1
  70. package/bundles/sd-angular-core-db.umd.js.__ivy_ngcc_bak +475 -0
  71. package/bundles/sd-angular-core-db.umd.js.map +1 -1
  72. package/bundles/sd-angular-core-db.umd.js.map.__ivy_ngcc_bak +1 -0
  73. package/bundles/sd-angular-core-dynamic-report.umd.js +2 -1
  74. package/bundles/sd-angular-core-dynamic-report.umd.js.__ivy_ngcc_bak +96 -0
  75. package/bundles/sd-angular-core-dynamic-report.umd.js.map +1 -1
  76. package/bundles/sd-angular-core-dynamic-report.umd.js.map.__ivy_ngcc_bak +1 -0
  77. package/bundles/sd-angular-core-editor.umd.js +2 -1
  78. package/bundles/sd-angular-core-editor.umd.js.__ivy_ngcc_bak +943 -0
  79. package/bundles/sd-angular-core-editor.umd.js.map +1 -1
  80. package/bundles/sd-angular-core-editor.umd.js.map.__ivy_ngcc_bak +1 -0
  81. package/bundles/sd-angular-core-excel.umd.js +2 -1
  82. package/bundles/sd-angular-core-excel.umd.js.__ivy_ngcc_bak +500 -0
  83. package/bundles/sd-angular-core-excel.umd.js.map +1 -1
  84. package/bundles/sd-angular-core-excel.umd.js.map.__ivy_ngcc_bak +1 -0
  85. package/bundles/sd-angular-core-export.umd.js +2 -1
  86. package/bundles/sd-angular-core-export.umd.js.__ivy_ngcc_bak +712 -0
  87. package/bundles/sd-angular-core-export.umd.js.map +1 -1
  88. package/bundles/sd-angular-core-export.umd.js.map.__ivy_ngcc_bak +1 -0
  89. package/bundles/sd-angular-core-filter.umd.js +2 -1
  90. package/bundles/sd-angular-core-filter.umd.js.__ivy_ngcc_bak +703 -0
  91. package/bundles/sd-angular-core-filter.umd.js.map +1 -1
  92. package/bundles/sd-angular-core-filter.umd.js.map.__ivy_ngcc_bak +1 -0
  93. package/bundles/sd-angular-core-form.umd.js +2 -1
  94. package/bundles/sd-angular-core-form.umd.js.__ivy_ngcc_bak +88 -0
  95. package/bundles/sd-angular-core-form.umd.js.map +1 -1
  96. package/bundles/sd-angular-core-form.umd.js.map.__ivy_ngcc_bak +1 -0
  97. package/bundles/sd-angular-core-grid-material.umd.js +2 -1
  98. package/bundles/sd-angular-core-grid-material.umd.js.__ivy_ngcc_bak +5029 -0
  99. package/bundles/sd-angular-core-grid-material.umd.js.map +1 -1
  100. package/bundles/sd-angular-core-grid-material.umd.js.map.__ivy_ngcc_bak +1 -0
  101. package/bundles/sd-angular-core-grid.umd.js +2 -1
  102. package/bundles/sd-angular-core-grid.umd.js.__ivy_ngcc_bak +5125 -0
  103. package/bundles/sd-angular-core-grid.umd.js.map +1 -1
  104. package/bundles/sd-angular-core-grid.umd.js.map.__ivy_ngcc_bak +1 -0
  105. package/bundles/sd-angular-core-group.umd.js +2 -1
  106. package/bundles/sd-angular-core-group.umd.js.__ivy_ngcc_bak +93 -0
  107. package/bundles/sd-angular-core-group.umd.js.map +1 -1
  108. package/bundles/sd-angular-core-group.umd.js.map.__ivy_ngcc_bak +1 -0
  109. package/bundles/sd-angular-core-header-title.umd.js +2 -1
  110. package/bundles/sd-angular-core-header-title.umd.js.__ivy_ngcc_bak +56 -0
  111. package/bundles/sd-angular-core-header-title.umd.js.map +1 -1
  112. package/bundles/sd-angular-core-header-title.umd.js.map.__ivy_ngcc_bak +1 -0
  113. package/bundles/sd-angular-core-image-preview.umd.js +2 -1
  114. package/bundles/sd-angular-core-image-preview.umd.js.__ivy_ngcc_bak +121 -0
  115. package/bundles/sd-angular-core-image-preview.umd.js.map +1 -1
  116. package/bundles/sd-angular-core-image-preview.umd.js.map.__ivy_ngcc_bak +1 -0
  117. package/bundles/sd-angular-core-input-currency.umd.js +2 -1
  118. package/bundles/sd-angular-core-input-currency.umd.js.__ivy_ngcc_bak +737 -0
  119. package/bundles/sd-angular-core-input-currency.umd.js.map +1 -1
  120. package/bundles/sd-angular-core-input-currency.umd.js.map.__ivy_ngcc_bak +1 -0
  121. package/bundles/sd-angular-core-input-dropdown.umd.js +2 -1
  122. package/bundles/sd-angular-core-input-dropdown.umd.js.__ivy_ngcc_bak +634 -0
  123. package/bundles/sd-angular-core-input-dropdown.umd.js.map +1 -1
  124. package/bundles/sd-angular-core-input-dropdown.umd.js.map.__ivy_ngcc_bak +1 -0
  125. package/bundles/sd-angular-core-input-number.umd.js +2 -1
  126. package/bundles/sd-angular-core-input-number.umd.js.__ivy_ngcc_bak +792 -0
  127. package/bundles/sd-angular-core-input-number.umd.js.map +1 -1
  128. package/bundles/sd-angular-core-input-number.umd.js.map.__ivy_ngcc_bak +1 -0
  129. package/bundles/sd-angular-core-input-upload-file.umd.js +2 -1
  130. package/bundles/sd-angular-core-input-upload-file.umd.js.__ivy_ngcc_bak +648 -0
  131. package/bundles/sd-angular-core-input-upload-file.umd.js.map +1 -1
  132. package/bundles/sd-angular-core-input-upload-file.umd.js.map.__ivy_ngcc_bak +1 -0
  133. package/bundles/sd-angular-core-input.umd.js +2 -1
  134. package/bundles/sd-angular-core-input.umd.js.__ivy_ngcc_bak +798 -0
  135. package/bundles/sd-angular-core-input.umd.js.map +1 -1
  136. package/bundles/sd-angular-core-input.umd.js.map.__ivy_ngcc_bak +1 -0
  137. package/bundles/sd-angular-core-json-editor.umd.js +2 -1
  138. package/bundles/sd-angular-core-json-editor.umd.js.__ivy_ngcc_bak +523 -0
  139. package/bundles/sd-angular-core-json-editor.umd.js.map +1 -1
  140. package/bundles/sd-angular-core-json-editor.umd.js.map.__ivy_ngcc_bak +1 -0
  141. package/bundles/sd-angular-core-konva.umd.js +2 -1
  142. package/bundles/sd-angular-core-konva.umd.js.__ivy_ngcc_bak +605 -0
  143. package/bundles/sd-angular-core-konva.umd.js.map +1 -1
  144. package/bundles/sd-angular-core-konva.umd.js.map.__ivy_ngcc_bak +1 -0
  145. package/bundles/sd-angular-core-label.umd.js +2 -1
  146. package/bundles/sd-angular-core-label.umd.js.__ivy_ngcc_bak +60 -0
  147. package/bundles/sd-angular-core-label.umd.js.map +1 -1
  148. package/bundles/sd-angular-core-label.umd.js.map.__ivy_ngcc_bak +1 -0
  149. package/bundles/sd-angular-core-loading.umd.js +2 -1
  150. package/bundles/sd-angular-core-loading.umd.js.__ivy_ngcc_bak +413 -0
  151. package/bundles/sd-angular-core-loading.umd.js.map +1 -1
  152. package/bundles/sd-angular-core-loading.umd.js.map.__ivy_ngcc_bak +1 -0
  153. package/bundles/sd-angular-core-modal-resizable.umd.js +2 -1
  154. package/bundles/sd-angular-core-modal-resizable.umd.js.__ivy_ngcc_bak +487 -0
  155. package/bundles/sd-angular-core-modal-resizable.umd.js.map +1 -1
  156. package/bundles/sd-angular-core-modal-resizable.umd.js.map.__ivy_ngcc_bak +1 -0
  157. package/bundles/sd-angular-core-modal.umd.js +2 -1
  158. package/bundles/sd-angular-core-modal.umd.js.__ivy_ngcc_bak +307 -0
  159. package/bundles/sd-angular-core-modal.umd.js.map +1 -1
  160. package/bundles/sd-angular-core-modal.umd.js.map.__ivy_ngcc_bak +1 -0
  161. package/bundles/sd-angular-core-notify.umd.js +2 -1
  162. package/bundles/sd-angular-core-notify.umd.js.__ivy_ngcc_bak +719 -0
  163. package/bundles/sd-angular-core-notify.umd.js.map +1 -1
  164. package/bundles/sd-angular-core-notify.umd.js.map.__ivy_ngcc_bak +1 -0
  165. package/bundles/sd-angular-core-popover.umd.js +2 -1
  166. package/bundles/sd-angular-core-popover.umd.js.__ivy_ngcc_bak +752 -0
  167. package/bundles/sd-angular-core-popover.umd.js.map +1 -1
  168. package/bundles/sd-angular-core-popover.umd.js.map.__ivy_ngcc_bak +1 -0
  169. package/bundles/sd-angular-core-quick-action.umd.js +2 -1
  170. package/bundles/sd-angular-core-quick-action.umd.js.__ivy_ngcc_bak +66 -0
  171. package/bundles/sd-angular-core-quick-action.umd.js.map +1 -1
  172. package/bundles/sd-angular-core-quick-action.umd.js.map.__ivy_ngcc_bak +1 -0
  173. package/bundles/sd-angular-core-radio.umd.js +2 -1
  174. package/bundles/sd-angular-core-radio.umd.js.__ivy_ngcc_bak +535 -0
  175. package/bundles/sd-angular-core-radio.umd.js.map +1 -1
  176. package/bundles/sd-angular-core-radio.umd.js.map.__ivy_ngcc_bak +1 -0
  177. package/bundles/sd-angular-core-select-badge.umd.js +2 -1
  178. package/bundles/sd-angular-core-select-badge.umd.js.__ivy_ngcc_bak +486 -0
  179. package/bundles/sd-angular-core-select-badge.umd.js.map +1 -1
  180. package/bundles/sd-angular-core-select-badge.umd.js.map.__ivy_ngcc_bak +1 -0
  181. package/bundles/sd-angular-core-select-editor.umd.js +2 -1
  182. package/bundles/sd-angular-core-select-editor.umd.js.__ivy_ngcc_bak +431 -0
  183. package/bundles/sd-angular-core-select-editor.umd.js.map +1 -1
  184. package/bundles/sd-angular-core-select-editor.umd.js.map.__ivy_ngcc_bak +1 -0
  185. package/bundles/sd-angular-core-select.umd.js +2 -1
  186. package/bundles/sd-angular-core-select.umd.js.__ivy_ngcc_bak +921 -0
  187. package/bundles/sd-angular-core-select.umd.js.map +1 -1
  188. package/bundles/sd-angular-core-select.umd.js.map.__ivy_ngcc_bak +1 -0
  189. package/bundles/sd-angular-core-service.umd.js +2 -1
  190. package/bundles/sd-angular-core-service.umd.js.__ivy_ngcc_bak +42 -0
  191. package/bundles/sd-angular-core-service.umd.js.map +1 -1
  192. package/bundles/sd-angular-core-service.umd.js.map.__ivy_ngcc_bak +1 -0
  193. package/bundles/sd-angular-core-setting.umd.js +2 -1
  194. package/bundles/sd-angular-core-setting.umd.js.__ivy_ngcc_bak +664 -0
  195. package/bundles/sd-angular-core-setting.umd.js.map +1 -1
  196. package/bundles/sd-angular-core-setting.umd.js.map.__ivy_ngcc_bak +1 -0
  197. package/bundles/sd-angular-core-side-drawer.umd.js +2 -1
  198. package/bundles/sd-angular-core-side-drawer.umd.js.__ivy_ngcc_bak +438 -0
  199. package/bundles/sd-angular-core-side-drawer.umd.js.map +1 -1
  200. package/bundles/sd-angular-core-side-drawer.umd.js.map.__ivy_ngcc_bak +1 -0
  201. package/bundles/sd-angular-core-switch.umd.js +2 -1
  202. package/bundles/sd-angular-core-switch.umd.js.__ivy_ngcc_bak +454 -0
  203. package/bundles/sd-angular-core-switch.umd.js.map +1 -1
  204. package/bundles/sd-angular-core-switch.umd.js.map.__ivy_ngcc_bak +1 -0
  205. package/bundles/sd-angular-core-tab-router.umd.js +2 -1
  206. package/bundles/sd-angular-core-tab-router.umd.js.__ivy_ngcc_bak +941 -0
  207. package/bundles/sd-angular-core-tab-router.umd.js.map +1 -1
  208. package/bundles/sd-angular-core-tab-router.umd.js.map.__ivy_ngcc_bak +1 -0
  209. package/bundles/sd-angular-core-textarea.umd.js +2 -1
  210. package/bundles/sd-angular-core-textarea.umd.js.__ivy_ngcc_bak +642 -0
  211. package/bundles/sd-angular-core-textarea.umd.js.map +1 -1
  212. package/bundles/sd-angular-core-textarea.umd.js.map.__ivy_ngcc_bak +1 -0
  213. package/bundles/sd-angular-core-time.umd.js +2 -1
  214. package/bundles/sd-angular-core-time.umd.js.__ivy_ngcc_bak +497 -0
  215. package/bundles/sd-angular-core-time.umd.js.map +1 -1
  216. package/bundles/sd-angular-core-time.umd.js.map.__ivy_ngcc_bak +1 -0
  217. package/bundles/sd-angular-core-timeline.umd.js +2 -1
  218. package/bundles/sd-angular-core-timeline.umd.js.__ivy_ngcc_bak +102 -0
  219. package/bundles/sd-angular-core-timeline.umd.js.map +1 -1
  220. package/bundles/sd-angular-core-timeline.umd.js.map.__ivy_ngcc_bak +1 -0
  221. package/bundles/sd-angular-core-translate.umd.js +2 -1
  222. package/bundles/sd-angular-core-translate.umd.js.__ivy_ngcc_bak +119 -0
  223. package/bundles/sd-angular-core-translate.umd.js.map +1 -1
  224. package/bundles/sd-angular-core-translate.umd.js.map.__ivy_ngcc_bak +1 -0
  225. package/bundles/sd-angular-core-upload-excel.umd.js +2 -1
  226. package/bundles/sd-angular-core-upload-excel.umd.js.__ivy_ngcc_bak +1114 -0
  227. package/bundles/sd-angular-core-upload-excel.umd.js.map +1 -1
  228. package/bundles/sd-angular-core-upload-excel.umd.js.map.__ivy_ngcc_bak +1 -0
  229. package/bundles/sd-angular-core-upload-file.umd.js +2 -1
  230. package/bundles/sd-angular-core-upload-file.umd.js.__ivy_ngcc_bak +880 -0
  231. package/bundles/sd-angular-core-upload-file.umd.js.map +1 -1
  232. package/bundles/sd-angular-core-upload-file.umd.js.map.__ivy_ngcc_bak +1 -0
  233. package/bundles/sd-angular-core-utility.umd.js +33 -1
  234. package/bundles/sd-angular-core-utility.umd.js.__ivy_ngcc_bak +739 -0
  235. package/bundles/sd-angular-core-utility.umd.js.map +1 -1
  236. package/bundles/sd-angular-core-utility.umd.js.map.__ivy_ngcc_bak +1 -0
  237. package/bundles/sd-angular-core-utility.umd.min.js +1 -1
  238. package/bundles/sd-angular-core-utility.umd.min.js.map +1 -1
  239. package/bundles/sd-angular-core-view.umd.js +2 -1
  240. package/bundles/sd-angular-core-view.umd.js.__ivy_ngcc_bak +32 -0
  241. package/bundles/sd-angular-core-view.umd.js.map +1 -1
  242. package/bundles/sd-angular-core-view.umd.js.map.__ivy_ngcc_bak +1 -0
  243. package/button/package.json +12 -1
  244. package/button/sd-angular-core-button.d.ts +2 -0
  245. package/button/sd-angular-core-button.d.ts.__ivy_ngcc_bak +4 -0
  246. package/button/sd-angular-core-button.d.ts.map +1 -0
  247. package/cache/package.json +12 -1
  248. package/cache/sd-angular-core-cache.d.ts +2 -0
  249. package/cache/sd-angular-core-cache.d.ts.__ivy_ngcc_bak +4 -0
  250. package/cache/sd-angular-core-cache.d.ts.map +1 -0
  251. package/chart/package.json +12 -1
  252. package/chart/sd-angular-core-chart.d.ts +2 -0
  253. package/chart/sd-angular-core-chart.d.ts.__ivy_ngcc_bak +4 -0
  254. package/chart/sd-angular-core-chart.d.ts.map +1 -0
  255. package/checkbox/package.json +12 -1
  256. package/checkbox/sd-angular-core-checkbox.d.ts +2 -0
  257. package/checkbox/sd-angular-core-checkbox.d.ts.__ivy_ngcc_bak +5 -0
  258. package/checkbox/sd-angular-core-checkbox.d.ts.map +1 -0
  259. package/chip/package.json +12 -1
  260. package/chip/sd-angular-core-chip.d.ts +2 -0
  261. package/chip/sd-angular-core-chip.d.ts.__ivy_ngcc_bak +5 -0
  262. package/chip/sd-angular-core-chip.d.ts.map +1 -0
  263. package/comment/package.json +12 -1
  264. package/comment/sd-angular-core-comment.d.ts +2 -0
  265. package/comment/sd-angular-core-comment.d.ts.__ivy_ngcc_bak +4 -0
  266. package/comment/sd-angular-core-comment.d.ts.map +1 -0
  267. package/common/package.json +12 -1
  268. package/common/sd-angular-core-common.d.ts +2 -0
  269. package/common/sd-angular-core-common.d.ts.__ivy_ngcc_bak +4 -0
  270. package/common/sd-angular-core-common.d.ts.map +1 -0
  271. package/confirm/package.json +12 -1
  272. package/confirm/sd-angular-core-confirm.d.ts +2 -0
  273. package/confirm/sd-angular-core-confirm.d.ts.__ivy_ngcc_bak +4 -0
  274. package/confirm/sd-angular-core-confirm.d.ts.map +1 -0
  275. package/date-month/package.json +12 -1
  276. package/date-month/sd-angular-core-date-month.d.ts +2 -0
  277. package/date-month/sd-angular-core-date-month.d.ts.__ivy_ngcc_bak +5 -0
  278. package/date-month/sd-angular-core-date-month.d.ts.map +1 -0
  279. package/date-range/package.json +12 -1
  280. package/date-range/sd-angular-core-date-range.d.ts +2 -0
  281. package/date-range/sd-angular-core-date-range.d.ts.__ivy_ngcc_bak +4 -0
  282. package/date-range/sd-angular-core-date-range.d.ts.map +1 -0
  283. package/date-time/package.json +12 -1
  284. package/date-time/sd-angular-core-date-time.d.ts +2 -0
  285. package/date-time/sd-angular-core-date-time.d.ts.__ivy_ngcc_bak +4 -0
  286. package/date-time/sd-angular-core-date-time.d.ts.map +1 -0
  287. package/db/package.json +12 -1
  288. package/db/sd-angular-core-db.d.ts +2 -0
  289. package/db/sd-angular-core-db.d.ts.__ivy_ngcc_bak +4 -0
  290. package/db/sd-angular-core-db.d.ts.map +1 -0
  291. package/dynamic-report/package.json +12 -1
  292. package/dynamic-report/sd-angular-core-dynamic-report.d.ts +2 -0
  293. package/dynamic-report/sd-angular-core-dynamic-report.d.ts.__ivy_ngcc_bak +4 -0
  294. package/dynamic-report/sd-angular-core-dynamic-report.d.ts.map +1 -0
  295. package/editor/package.json +12 -1
  296. package/editor/sd-angular-core-editor.d.ts +2 -0
  297. package/editor/sd-angular-core-editor.d.ts.__ivy_ngcc_bak +4 -0
  298. package/editor/sd-angular-core-editor.d.ts.map +1 -0
  299. package/esm2015/api/sd-angular-core-api.js +1 -1
  300. package/esm2015/api/sd-angular-core-api.js.__ivy_ngcc_bak +5 -0
  301. package/esm2015/autocomplete/sd-angular-core-autocomplete.js +1 -1
  302. package/esm2015/autocomplete/sd-angular-core-autocomplete.js.__ivy_ngcc_bak +5 -0
  303. package/esm2015/badge/sd-angular-core-badge.js +1 -1
  304. package/esm2015/badge/sd-angular-core-badge.js.__ivy_ngcc_bak +5 -0
  305. package/esm2015/button/sd-angular-core-button.js +1 -1
  306. package/esm2015/button/sd-angular-core-button.js.__ivy_ngcc_bak +5 -0
  307. package/esm2015/cache/sd-angular-core-cache.js +1 -1
  308. package/esm2015/cache/sd-angular-core-cache.js.__ivy_ngcc_bak +5 -0
  309. package/esm2015/chart/sd-angular-core-chart.js +1 -1
  310. package/esm2015/chart/sd-angular-core-chart.js.__ivy_ngcc_bak +5 -0
  311. package/esm2015/checkbox/sd-angular-core-checkbox.js +1 -1
  312. package/esm2015/checkbox/sd-angular-core-checkbox.js.__ivy_ngcc_bak +6 -0
  313. package/esm2015/chip/sd-angular-core-chip.js +1 -1
  314. package/esm2015/chip/sd-angular-core-chip.js.__ivy_ngcc_bak +6 -0
  315. package/esm2015/comment/sd-angular-core-comment.js +1 -1
  316. package/esm2015/comment/sd-angular-core-comment.js.__ivy_ngcc_bak +5 -0
  317. package/esm2015/common/sd-angular-core-common.js +1 -1
  318. package/esm2015/common/sd-angular-core-common.js.__ivy_ngcc_bak +5 -0
  319. package/esm2015/confirm/sd-angular-core-confirm.js +1 -1
  320. package/esm2015/confirm/sd-angular-core-confirm.js.__ivy_ngcc_bak +5 -0
  321. package/esm2015/date-month/sd-angular-core-date-month.js +1 -1
  322. package/esm2015/date-month/sd-angular-core-date-month.js.__ivy_ngcc_bak +6 -0
  323. package/esm2015/date-range/sd-angular-core-date-range.js +1 -1
  324. package/esm2015/date-range/sd-angular-core-date-range.js.__ivy_ngcc_bak +5 -0
  325. package/esm2015/date-time/sd-angular-core-date-time.js +1 -1
  326. package/esm2015/date-time/sd-angular-core-date-time.js.__ivy_ngcc_bak +5 -0
  327. package/esm2015/db/sd-angular-core-db.js +1 -1
  328. package/esm2015/db/sd-angular-core-db.js.__ivy_ngcc_bak +5 -0
  329. package/esm2015/dynamic-report/sd-angular-core-dynamic-report.js +1 -1
  330. package/esm2015/dynamic-report/sd-angular-core-dynamic-report.js.__ivy_ngcc_bak +5 -0
  331. package/esm2015/editor/sd-angular-core-editor.js +1 -1
  332. package/esm2015/editor/sd-angular-core-editor.js.__ivy_ngcc_bak +5 -0
  333. package/esm2015/excel/sd-angular-core-excel.js +1 -1
  334. package/esm2015/excel/sd-angular-core-excel.js.__ivy_ngcc_bak +5 -0
  335. package/esm2015/export/sd-angular-core-export.js +1 -1
  336. package/esm2015/export/sd-angular-core-export.js.__ivy_ngcc_bak +5 -0
  337. package/esm2015/filter/sd-angular-core-filter.js +1 -1
  338. package/esm2015/filter/sd-angular-core-filter.js.__ivy_ngcc_bak +8 -0
  339. package/esm2015/form/sd-angular-core-form.js +1 -1
  340. package/esm2015/form/sd-angular-core-form.js.__ivy_ngcc_bak +5 -0
  341. package/esm2015/grid/sd-angular-core-grid.js +1 -1
  342. package/esm2015/grid/sd-angular-core-grid.js.__ivy_ngcc_bak +5 -0
  343. package/esm2015/grid-material/sd-angular-core-grid-material.js +1 -1
  344. package/esm2015/grid-material/sd-angular-core-grid-material.js.__ivy_ngcc_bak +47 -0
  345. package/esm2015/group/sd-angular-core-group.js +1 -1
  346. package/esm2015/group/sd-angular-core-group.js.__ivy_ngcc_bak +6 -0
  347. package/esm2015/header-title/sd-angular-core-header-title.js +1 -1
  348. package/esm2015/header-title/sd-angular-core-header-title.js.__ivy_ngcc_bak +6 -0
  349. package/esm2015/image-preview/sd-angular-core-image-preview.js +1 -1
  350. package/esm2015/image-preview/sd-angular-core-image-preview.js.__ivy_ngcc_bak +7 -0
  351. package/esm2015/input/sd-angular-core-input.js +1 -1
  352. package/esm2015/input/sd-angular-core-input.js.__ivy_ngcc_bak +6 -0
  353. package/esm2015/input-currency/sd-angular-core-input-currency.js +1 -1
  354. package/esm2015/input-currency/sd-angular-core-input-currency.js.__ivy_ngcc_bak +5 -0
  355. package/esm2015/input-dropdown/sd-angular-core-input-dropdown.js +1 -1
  356. package/esm2015/input-dropdown/sd-angular-core-input-dropdown.js.__ivy_ngcc_bak +5 -0
  357. package/esm2015/input-number/sd-angular-core-input-number.js +1 -1
  358. package/esm2015/input-number/sd-angular-core-input-number.js.__ivy_ngcc_bak +5 -0
  359. package/esm2015/input-upload-file/sd-angular-core-input-upload-file.js +1 -1
  360. package/esm2015/input-upload-file/sd-angular-core-input-upload-file.js.__ivy_ngcc_bak +5 -0
  361. package/esm2015/json-editor/sd-angular-core-json-editor.js +1 -1
  362. package/esm2015/json-editor/sd-angular-core-json-editor.js.__ivy_ngcc_bak +5 -0
  363. package/esm2015/konva/sd-angular-core-konva.js +1 -1
  364. package/esm2015/konva/sd-angular-core-konva.js.__ivy_ngcc_bak +5 -0
  365. package/esm2015/label/sd-angular-core-label.js +1 -1
  366. package/esm2015/label/sd-angular-core-label.js.__ivy_ngcc_bak +6 -0
  367. package/esm2015/loading/sd-angular-core-loading.js +1 -1
  368. package/esm2015/loading/sd-angular-core-loading.js.__ivy_ngcc_bak +5 -0
  369. package/esm2015/modal/sd-angular-core-modal.js +1 -1
  370. package/esm2015/modal/sd-angular-core-modal.js.__ivy_ngcc_bak +5 -0
  371. package/esm2015/modal-resizable/sd-angular-core-modal-resizable.js +1 -1
  372. package/esm2015/modal-resizable/sd-angular-core-modal-resizable.js.__ivy_ngcc_bak +5 -0
  373. package/esm2015/notify/sd-angular-core-notify.js +1 -1
  374. package/esm2015/notify/sd-angular-core-notify.js.__ivy_ngcc_bak +5 -0
  375. package/esm2015/popover/sd-angular-core-popover.js +1 -1
  376. package/esm2015/popover/sd-angular-core-popover.js.__ivy_ngcc_bak +5 -0
  377. package/esm2015/quick-action/sd-angular-core-quick-action.js +1 -1
  378. package/esm2015/quick-action/sd-angular-core-quick-action.js.__ivy_ngcc_bak +5 -0
  379. package/esm2015/radio/sd-angular-core-radio.js +1 -1
  380. package/esm2015/radio/sd-angular-core-radio.js.__ivy_ngcc_bak +5 -0
  381. package/esm2015/select/sd-angular-core-select.js +1 -1
  382. package/esm2015/select/sd-angular-core-select.js.__ivy_ngcc_bak +5 -0
  383. package/esm2015/select-badge/sd-angular-core-select-badge.js +1 -1
  384. package/esm2015/select-badge/sd-angular-core-select-badge.js.__ivy_ngcc_bak +5 -0
  385. package/esm2015/select-editor/sd-angular-core-select-editor.js +1 -1
  386. package/esm2015/select-editor/sd-angular-core-select-editor.js.__ivy_ngcc_bak +5 -0
  387. package/esm2015/service/sd-angular-core-service.js +1 -1
  388. package/esm2015/service/sd-angular-core-service.js.__ivy_ngcc_bak +5 -0
  389. package/esm2015/setting/sd-angular-core-setting.js +1 -1
  390. package/esm2015/setting/sd-angular-core-setting.js.__ivy_ngcc_bak +5 -0
  391. package/esm2015/side-drawer/sd-angular-core-side-drawer.js +1 -1
  392. package/esm2015/side-drawer/sd-angular-core-side-drawer.js.__ivy_ngcc_bak +5 -0
  393. package/esm2015/switch/sd-angular-core-switch.js +1 -1
  394. package/esm2015/switch/sd-angular-core-switch.js.__ivy_ngcc_bak +5 -0
  395. package/esm2015/tab-router/sd-angular-core-tab-router.js +1 -1
  396. package/esm2015/tab-router/sd-angular-core-tab-router.js.__ivy_ngcc_bak +7 -0
  397. package/esm2015/textarea/sd-angular-core-textarea.js +1 -1
  398. package/esm2015/textarea/sd-angular-core-textarea.js.__ivy_ngcc_bak +5 -0
  399. package/esm2015/time/sd-angular-core-time.js +1 -1
  400. package/esm2015/time/sd-angular-core-time.js.__ivy_ngcc_bak +6 -0
  401. package/esm2015/timeline/sd-angular-core-timeline.js +1 -1
  402. package/esm2015/timeline/sd-angular-core-timeline.js.__ivy_ngcc_bak +6 -0
  403. package/esm2015/translate/sd-angular-core-translate.js +1 -1
  404. package/esm2015/translate/sd-angular-core-translate.js.__ivy_ngcc_bak +5 -0
  405. package/esm2015/upload-excel/sd-angular-core-upload-excel.js +1 -1
  406. package/esm2015/upload-excel/sd-angular-core-upload-excel.js.__ivy_ngcc_bak +7 -0
  407. package/esm2015/upload-file/sd-angular-core-upload-file.js +1 -1
  408. package/esm2015/upload-file/sd-angular-core-upload-file.js.__ivy_ngcc_bak +5 -0
  409. package/esm2015/utility/sd-angular-core-utility.js +1 -1
  410. package/esm2015/utility/sd-angular-core-utility.js.__ivy_ngcc_bak +5 -0
  411. package/esm2015/utility/src/lib/utility.service.js +22 -2
  412. package/esm2015/view/sd-angular-core-view.js +1 -1
  413. package/esm2015/view/sd-angular-core-view.js.__ivy_ngcc_bak +5 -0
  414. package/excel/package.json +12 -1
  415. package/excel/sd-angular-core-excel.d.ts +2 -0
  416. package/excel/sd-angular-core-excel.d.ts.__ivy_ngcc_bak +4 -0
  417. package/excel/sd-angular-core-excel.d.ts.map +1 -0
  418. package/export/package.json +12 -1
  419. package/export/sd-angular-core-export.d.ts +2 -0
  420. package/export/sd-angular-core-export.d.ts.__ivy_ngcc_bak +4 -0
  421. package/export/sd-angular-core-export.d.ts.map +1 -0
  422. package/fesm2015/sd-angular-core-api.js +2 -1
  423. package/fesm2015/sd-angular-core-api.js.__ivy_ngcc_bak +496 -0
  424. package/fesm2015/sd-angular-core-api.js.map +1 -1
  425. package/fesm2015/sd-angular-core-api.js.map.__ivy_ngcc_bak +1 -0
  426. package/fesm2015/sd-angular-core-autocomplete.js +2 -1
  427. package/fesm2015/sd-angular-core-autocomplete.js.__ivy_ngcc_bak +427 -0
  428. package/fesm2015/sd-angular-core-autocomplete.js.map +1 -1
  429. package/fesm2015/sd-angular-core-autocomplete.js.map.__ivy_ngcc_bak +1 -0
  430. package/fesm2015/sd-angular-core-badge.js +2 -1
  431. package/fesm2015/sd-angular-core-badge.js.__ivy_ngcc_bak +70 -0
  432. package/fesm2015/sd-angular-core-badge.js.map +1 -1
  433. package/fesm2015/sd-angular-core-badge.js.map.__ivy_ngcc_bak +1 -0
  434. package/fesm2015/sd-angular-core-button.js +2 -1
  435. package/fesm2015/sd-angular-core-button.js.__ivy_ngcc_bak +118 -0
  436. package/fesm2015/sd-angular-core-button.js.map +1 -1
  437. package/fesm2015/sd-angular-core-button.js.map.__ivy_ngcc_bak +1 -0
  438. package/fesm2015/sd-angular-core-cache.js +2 -1
  439. package/fesm2015/sd-angular-core-cache.js.__ivy_ngcc_bak +259 -0
  440. package/fesm2015/sd-angular-core-cache.js.map +1 -1
  441. package/fesm2015/sd-angular-core-cache.js.map.__ivy_ngcc_bak +1 -0
  442. package/fesm2015/sd-angular-core-chart.js +2 -1
  443. package/fesm2015/sd-angular-core-chart.js.__ivy_ngcc_bak +727 -0
  444. package/fesm2015/sd-angular-core-chart.js.map +1 -1
  445. package/fesm2015/sd-angular-core-chart.js.map.__ivy_ngcc_bak +1 -0
  446. package/fesm2015/sd-angular-core-checkbox.js +2 -1
  447. package/fesm2015/sd-angular-core-checkbox.js.__ivy_ngcc_bak +120 -0
  448. package/fesm2015/sd-angular-core-checkbox.js.map +1 -1
  449. package/fesm2015/sd-angular-core-checkbox.js.map.__ivy_ngcc_bak +1 -0
  450. package/fesm2015/sd-angular-core-chip.js +2 -1
  451. package/fesm2015/sd-angular-core-chip.js.__ivy_ngcc_bak +632 -0
  452. package/fesm2015/sd-angular-core-chip.js.map +1 -1
  453. package/fesm2015/sd-angular-core-chip.js.map.__ivy_ngcc_bak +1 -0
  454. package/fesm2015/sd-angular-core-comment.js +2 -1
  455. package/fesm2015/sd-angular-core-comment.js.__ivy_ngcc_bak +118 -0
  456. package/fesm2015/sd-angular-core-comment.js.map +1 -1
  457. package/fesm2015/sd-angular-core-comment.js.map.__ivy_ngcc_bak +1 -0
  458. package/fesm2015/sd-angular-core-common.js +2 -1
  459. package/fesm2015/sd-angular-core-common.js.__ivy_ngcc_bak +562 -0
  460. package/fesm2015/sd-angular-core-common.js.map +1 -1
  461. package/fesm2015/sd-angular-core-common.js.map.__ivy_ngcc_bak +1 -0
  462. package/fesm2015/sd-angular-core-confirm.js +2 -1
  463. package/fesm2015/sd-angular-core-confirm.js.__ivy_ngcc_bak +154 -0
  464. package/fesm2015/sd-angular-core-confirm.js.map +1 -1
  465. package/fesm2015/sd-angular-core-confirm.js.map.__ivy_ngcc_bak +1 -0
  466. package/fesm2015/sd-angular-core-date-month.js +2 -1
  467. package/fesm2015/sd-angular-core-date-month.js.__ivy_ngcc_bak +289 -0
  468. package/fesm2015/sd-angular-core-date-month.js.map +1 -1
  469. package/fesm2015/sd-angular-core-date-month.js.map.__ivy_ngcc_bak +1 -0
  470. package/fesm2015/sd-angular-core-date-range.js +2 -1
  471. package/fesm2015/sd-angular-core-date-range.js.__ivy_ngcc_bak +297 -0
  472. package/fesm2015/sd-angular-core-date-range.js.map +1 -1
  473. package/fesm2015/sd-angular-core-date-range.js.map.__ivy_ngcc_bak +1 -0
  474. package/fesm2015/sd-angular-core-date-time.js +2 -1
  475. package/fesm2015/sd-angular-core-date-time.js.__ivy_ngcc_bak +367 -0
  476. package/fesm2015/sd-angular-core-date-time.js.map +1 -1
  477. package/fesm2015/sd-angular-core-date-time.js.map.__ivy_ngcc_bak +1 -0
  478. package/fesm2015/sd-angular-core-db.js +2 -1
  479. package/fesm2015/sd-angular-core-db.js.__ivy_ngcc_bak +102 -0
  480. package/fesm2015/sd-angular-core-db.js.map +1 -1
  481. package/fesm2015/sd-angular-core-db.js.map.__ivy_ngcc_bak +1 -0
  482. package/fesm2015/sd-angular-core-dynamic-report.js +2 -1
  483. package/fesm2015/sd-angular-core-dynamic-report.js.__ivy_ngcc_bak +82 -0
  484. package/fesm2015/sd-angular-core-dynamic-report.js.map +1 -1
  485. package/fesm2015/sd-angular-core-dynamic-report.js.map.__ivy_ngcc_bak +1 -0
  486. package/fesm2015/sd-angular-core-editor.js +2 -1
  487. package/fesm2015/sd-angular-core-editor.js.__ivy_ngcc_bak +576 -0
  488. package/fesm2015/sd-angular-core-editor.js.map +1 -1
  489. package/fesm2015/sd-angular-core-editor.js.map.__ivy_ngcc_bak +1 -0
  490. package/fesm2015/sd-angular-core-excel.js +2 -1
  491. package/fesm2015/sd-angular-core-excel.js.__ivy_ngcc_bak +100 -0
  492. package/fesm2015/sd-angular-core-excel.js.map +1 -1
  493. package/fesm2015/sd-angular-core-excel.js.map.__ivy_ngcc_bak +1 -0
  494. package/fesm2015/sd-angular-core-export.js +2 -1
  495. package/fesm2015/sd-angular-core-export.js.__ivy_ngcc_bak +272 -0
  496. package/fesm2015/sd-angular-core-export.js.map +1 -1
  497. package/fesm2015/sd-angular-core-export.js.map.__ivy_ngcc_bak +1 -0
  498. package/fesm2015/sd-angular-core-filter.js +2 -1
  499. package/fesm2015/sd-angular-core-filter.js.__ivy_ngcc_bak +323 -0
  500. package/fesm2015/sd-angular-core-filter.js.map +1 -1
  501. package/fesm2015/sd-angular-core-filter.js.map.__ivy_ngcc_bak +1 -0
  502. package/fesm2015/sd-angular-core-form.js +2 -1
  503. package/fesm2015/sd-angular-core-form.js.__ivy_ngcc_bak +104 -0
  504. package/fesm2015/sd-angular-core-form.js.map +1 -1
  505. package/fesm2015/sd-angular-core-form.js.map.__ivy_ngcc_bak +1 -0
  506. package/fesm2015/sd-angular-core-grid-material.js +2 -1
  507. package/fesm2015/sd-angular-core-grid-material.js.__ivy_ngcc_bak +3740 -0
  508. package/fesm2015/sd-angular-core-grid-material.js.map +1 -1
  509. package/fesm2015/sd-angular-core-grid-material.js.map.__ivy_ngcc_bak +1 -0
  510. package/fesm2015/sd-angular-core-grid.js +2 -1
  511. package/fesm2015/sd-angular-core-grid.js.__ivy_ngcc_bak +3935 -0
  512. package/fesm2015/sd-angular-core-grid.js.map +1 -1
  513. package/fesm2015/sd-angular-core-grid.js.map.__ivy_ngcc_bak +1 -0
  514. package/fesm2015/sd-angular-core-group.js +2 -1
  515. package/fesm2015/sd-angular-core-group.js.__ivy_ngcc_bak +74 -0
  516. package/fesm2015/sd-angular-core-group.js.map +1 -1
  517. package/fesm2015/sd-angular-core-group.js.map.__ivy_ngcc_bak +1 -0
  518. package/fesm2015/sd-angular-core-header-title.js +2 -1
  519. package/fesm2015/sd-angular-core-header-title.js.__ivy_ngcc_bak +45 -0
  520. package/fesm2015/sd-angular-core-header-title.js.map +1 -1
  521. package/fesm2015/sd-angular-core-header-title.js.map.__ivy_ngcc_bak +1 -0
  522. package/fesm2015/sd-angular-core-image-preview.js +2 -1
  523. package/fesm2015/sd-angular-core-image-preview.js.__ivy_ngcc_bak +107 -0
  524. package/fesm2015/sd-angular-core-image-preview.js.map +1 -1
  525. package/fesm2015/sd-angular-core-image-preview.js.map.__ivy_ngcc_bak +1 -0
  526. package/fesm2015/sd-angular-core-input-currency.js +2 -1
  527. package/fesm2015/sd-angular-core-input-currency.js.__ivy_ngcc_bak +330 -0
  528. package/fesm2015/sd-angular-core-input-currency.js.map +1 -1
  529. package/fesm2015/sd-angular-core-input-currency.js.map.__ivy_ngcc_bak +1 -0
  530. package/fesm2015/sd-angular-core-input-dropdown.js +2 -1
  531. package/fesm2015/sd-angular-core-input-dropdown.js.__ivy_ngcc_bak +268 -0
  532. package/fesm2015/sd-angular-core-input-dropdown.js.map +1 -1
  533. package/fesm2015/sd-angular-core-input-dropdown.js.map.__ivy_ngcc_bak +1 -0
  534. package/fesm2015/sd-angular-core-input-number.js +2 -1
  535. package/fesm2015/sd-angular-core-input-number.js.__ivy_ngcc_bak +415 -0
  536. package/fesm2015/sd-angular-core-input-number.js.map +1 -1
  537. package/fesm2015/sd-angular-core-input-number.js.map.__ivy_ngcc_bak +1 -0
  538. package/fesm2015/sd-angular-core-input-upload-file.js +2 -1
  539. package/fesm2015/sd-angular-core-input-upload-file.js.__ivy_ngcc_bak +274 -0
  540. package/fesm2015/sd-angular-core-input-upload-file.js.map +1 -1
  541. package/fesm2015/sd-angular-core-input-upload-file.js.map.__ivy_ngcc_bak +1 -0
  542. package/fesm2015/sd-angular-core-input.js +2 -1
  543. package/fesm2015/sd-angular-core-input.js.__ivy_ngcc_bak +398 -0
  544. package/fesm2015/sd-angular-core-input.js.map +1 -1
  545. package/fesm2015/sd-angular-core-input.js.map.__ivy_ngcc_bak +1 -0
  546. package/fesm2015/sd-angular-core-json-editor.js +2 -1
  547. package/fesm2015/sd-angular-core-json-editor.js.__ivy_ngcc_bak +180 -0
  548. package/fesm2015/sd-angular-core-json-editor.js.map +1 -1
  549. package/fesm2015/sd-angular-core-json-editor.js.map.__ivy_ngcc_bak +1 -0
  550. package/fesm2015/sd-angular-core-konva.js +2 -1
  551. package/fesm2015/sd-angular-core-konva.js.__ivy_ngcc_bak +237 -0
  552. package/fesm2015/sd-angular-core-konva.js.map +1 -1
  553. package/fesm2015/sd-angular-core-konva.js.map.__ivy_ngcc_bak +1 -0
  554. package/fesm2015/sd-angular-core-label.js +2 -1
  555. package/fesm2015/sd-angular-core-label.js.__ivy_ngcc_bak +49 -0
  556. package/fesm2015/sd-angular-core-label.js.map +1 -1
  557. package/fesm2015/sd-angular-core-label.js.map.__ivy_ngcc_bak +1 -0
  558. package/fesm2015/sd-angular-core-loading.js +2 -1
  559. package/fesm2015/sd-angular-core-loading.js.__ivy_ngcc_bak +83 -0
  560. package/fesm2015/sd-angular-core-loading.js.map +1 -1
  561. package/fesm2015/sd-angular-core-loading.js.map.__ivy_ngcc_bak +1 -0
  562. package/fesm2015/sd-angular-core-modal-resizable.js +2 -1
  563. package/fesm2015/sd-angular-core-modal-resizable.js.__ivy_ngcc_bak +161 -0
  564. package/fesm2015/sd-angular-core-modal-resizable.js.map +1 -1
  565. package/fesm2015/sd-angular-core-modal-resizable.js.map.__ivy_ngcc_bak +1 -0
  566. package/fesm2015/sd-angular-core-modal.js +2 -1
  567. package/fesm2015/sd-angular-core-modal.js.__ivy_ngcc_bak +284 -0
  568. package/fesm2015/sd-angular-core-modal.js.map +1 -1
  569. package/fesm2015/sd-angular-core-modal.js.map.__ivy_ngcc_bak +1 -0
  570. package/fesm2015/sd-angular-core-notify.js +2 -1
  571. package/fesm2015/sd-angular-core-notify.js.__ivy_ngcc_bak +402 -0
  572. package/fesm2015/sd-angular-core-notify.js.map +1 -1
  573. package/fesm2015/sd-angular-core-notify.js.map.__ivy_ngcc_bak +1 -0
  574. package/fesm2015/sd-angular-core-popover.js +2 -1
  575. package/fesm2015/sd-angular-core-popover.js.__ivy_ngcc_bak +415 -0
  576. package/fesm2015/sd-angular-core-popover.js.map +1 -1
  577. package/fesm2015/sd-angular-core-popover.js.map.__ivy_ngcc_bak +1 -0
  578. package/fesm2015/sd-angular-core-quick-action.js +2 -1
  579. package/fesm2015/sd-angular-core-quick-action.js.__ivy_ngcc_bak +53 -0
  580. package/fesm2015/sd-angular-core-quick-action.js.map +1 -1
  581. package/fesm2015/sd-angular-core-quick-action.js.map.__ivy_ngcc_bak +1 -0
  582. package/fesm2015/sd-angular-core-radio.js +2 -1
  583. package/fesm2015/sd-angular-core-radio.js.__ivy_ngcc_bak +188 -0
  584. package/fesm2015/sd-angular-core-radio.js.map +1 -1
  585. package/fesm2015/sd-angular-core-radio.js.map.__ivy_ngcc_bak +1 -0
  586. package/fesm2015/sd-angular-core-select-badge.js +2 -1
  587. package/fesm2015/sd-angular-core-select-badge.js.__ivy_ngcc_bak +156 -0
  588. package/fesm2015/sd-angular-core-select-badge.js.map +1 -1
  589. package/fesm2015/sd-angular-core-select-badge.js.map.__ivy_ngcc_bak +1 -0
  590. package/fesm2015/sd-angular-core-select-editor.js +2 -1
  591. package/fesm2015/sd-angular-core-select-editor.js.__ivy_ngcc_bak +110 -0
  592. package/fesm2015/sd-angular-core-select-editor.js.map +1 -1
  593. package/fesm2015/sd-angular-core-select-editor.js.map.__ivy_ngcc_bak +1 -0
  594. package/fesm2015/sd-angular-core-select.js +2 -1
  595. package/fesm2015/sd-angular-core-select.js.__ivy_ngcc_bak +487 -0
  596. package/fesm2015/sd-angular-core-select.js.map +1 -1
  597. package/fesm2015/sd-angular-core-select.js.map.__ivy_ngcc_bak +1 -0
  598. package/fesm2015/sd-angular-core-service.js +2 -1
  599. package/fesm2015/sd-angular-core-service.js.__ivy_ngcc_bak +36 -0
  600. package/fesm2015/sd-angular-core-service.js.map +1 -1
  601. package/fesm2015/sd-angular-core-service.js.map.__ivy_ngcc_bak +1 -0
  602. package/fesm2015/sd-angular-core-setting.js +2 -1
  603. package/fesm2015/sd-angular-core-setting.js.__ivy_ngcc_bak +290 -0
  604. package/fesm2015/sd-angular-core-setting.js.map +1 -1
  605. package/fesm2015/sd-angular-core-setting.js.map.__ivy_ngcc_bak +1 -0
  606. package/fesm2015/sd-angular-core-side-drawer.js +2 -1
  607. package/fesm2015/sd-angular-core-side-drawer.js.__ivy_ngcc_bak +115 -0
  608. package/fesm2015/sd-angular-core-side-drawer.js.map +1 -1
  609. package/fesm2015/sd-angular-core-side-drawer.js.map.__ivy_ngcc_bak +1 -0
  610. package/fesm2015/sd-angular-core-switch.js +2 -1
  611. package/fesm2015/sd-angular-core-switch.js.__ivy_ngcc_bak +116 -0
  612. package/fesm2015/sd-angular-core-switch.js.map +1 -1
  613. package/fesm2015/sd-angular-core-switch.js.map.__ivy_ngcc_bak +1 -0
  614. package/fesm2015/sd-angular-core-tab-router.js +2 -1
  615. package/fesm2015/sd-angular-core-tab-router.js.__ivy_ngcc_bak +531 -0
  616. package/fesm2015/sd-angular-core-tab-router.js.map +1 -1
  617. package/fesm2015/sd-angular-core-tab-router.js.map.__ivy_ngcc_bak +1 -0
  618. package/fesm2015/sd-angular-core-textarea.js +2 -1
  619. package/fesm2015/sd-angular-core-textarea.js.__ivy_ngcc_bak +266 -0
  620. package/fesm2015/sd-angular-core-textarea.js.map +1 -1
  621. package/fesm2015/sd-angular-core-textarea.js.map.__ivy_ngcc_bak +1 -0
  622. package/fesm2015/sd-angular-core-time.js +2 -1
  623. package/fesm2015/sd-angular-core-time.js.__ivy_ngcc_bak +143 -0
  624. package/fesm2015/sd-angular-core-time.js.map +1 -1
  625. package/fesm2015/sd-angular-core-time.js.map.__ivy_ngcc_bak +1 -0
  626. package/fesm2015/sd-angular-core-timeline.js +2 -1
  627. package/fesm2015/sd-angular-core-timeline.js.__ivy_ngcc_bak +87 -0
  628. package/fesm2015/sd-angular-core-timeline.js.map +1 -1
  629. package/fesm2015/sd-angular-core-timeline.js.map.__ivy_ngcc_bak +1 -0
  630. package/fesm2015/sd-angular-core-translate.js +2 -1
  631. package/fesm2015/sd-angular-core-translate.js.__ivy_ngcc_bak +101 -0
  632. package/fesm2015/sd-angular-core-translate.js.map +1 -1
  633. package/fesm2015/sd-angular-core-translate.js.map.__ivy_ngcc_bak +1 -0
  634. package/fesm2015/sd-angular-core-upload-excel.js +2 -1
  635. package/fesm2015/sd-angular-core-upload-excel.js.__ivy_ngcc_bak +638 -0
  636. package/fesm2015/sd-angular-core-upload-excel.js.map +1 -1
  637. package/fesm2015/sd-angular-core-upload-excel.js.map.__ivy_ngcc_bak +1 -0
  638. package/fesm2015/sd-angular-core-upload-file.js +2 -1
  639. package/fesm2015/sd-angular-core-upload-file.js.__ivy_ngcc_bak +462 -0
  640. package/fesm2015/sd-angular-core-upload-file.js.map +1 -1
  641. package/fesm2015/sd-angular-core-upload-file.js.map.__ivy_ngcc_bak +1 -0
  642. package/fesm2015/sd-angular-core-utility.js +23 -2
  643. package/fesm2015/sd-angular-core-utility.js.__ivy_ngcc_bak +384 -0
  644. package/fesm2015/sd-angular-core-utility.js.map +1 -1
  645. package/fesm2015/sd-angular-core-utility.js.map.__ivy_ngcc_bak +1 -0
  646. package/fesm2015/sd-angular-core-view.js +2 -1
  647. package/fesm2015/sd-angular-core-view.js.__ivy_ngcc_bak +23 -0
  648. package/fesm2015/sd-angular-core-view.js.map +1 -1
  649. package/fesm2015/sd-angular-core-view.js.map.__ivy_ngcc_bak +1 -0
  650. package/filter/package.json +12 -1
  651. package/filter/sd-angular-core-filter.d.ts +2 -0
  652. package/filter/sd-angular-core-filter.d.ts.__ivy_ngcc_bak +7 -0
  653. package/filter/sd-angular-core-filter.d.ts.map +1 -0
  654. package/form/package.json +12 -1
  655. package/form/sd-angular-core-form.d.ts +2 -0
  656. package/form/sd-angular-core-form.d.ts.__ivy_ngcc_bak +4 -0
  657. package/form/sd-angular-core-form.d.ts.map +1 -0
  658. package/grid/package.json +12 -1
  659. package/grid/sd-angular-core-grid.d.ts +2 -0
  660. package/grid/sd-angular-core-grid.d.ts.__ivy_ngcc_bak +4 -0
  661. package/grid/sd-angular-core-grid.d.ts.map +1 -0
  662. package/grid-material/package.json +12 -1
  663. package/grid-material/sd-angular-core-grid-material.d.ts +2 -0
  664. package/grid-material/sd-angular-core-grid-material.d.ts.__ivy_ngcc_bak +46 -0
  665. package/grid-material/sd-angular-core-grid-material.d.ts.map +1 -0
  666. package/group/package.json +12 -1
  667. package/group/sd-angular-core-group.d.ts +2 -0
  668. package/group/sd-angular-core-group.d.ts.__ivy_ngcc_bak +5 -0
  669. package/group/sd-angular-core-group.d.ts.map +1 -0
  670. package/header-title/package.json +12 -1
  671. package/header-title/sd-angular-core-header-title.d.ts +2 -0
  672. package/header-title/sd-angular-core-header-title.d.ts.__ivy_ngcc_bak +5 -0
  673. package/header-title/sd-angular-core-header-title.d.ts.map +1 -0
  674. package/image-preview/package.json +12 -1
  675. package/image-preview/sd-angular-core-image-preview.d.ts +2 -0
  676. package/image-preview/sd-angular-core-image-preview.d.ts.__ivy_ngcc_bak +6 -0
  677. package/image-preview/sd-angular-core-image-preview.d.ts.map +1 -0
  678. package/input/package.json +12 -1
  679. package/input/sd-angular-core-input.d.ts +2 -0
  680. package/input/sd-angular-core-input.d.ts.__ivy_ngcc_bak +5 -0
  681. package/input/sd-angular-core-input.d.ts.map +1 -0
  682. package/input-currency/package.json +12 -1
  683. package/input-currency/sd-angular-core-input-currency.d.ts +2 -0
  684. package/input-currency/sd-angular-core-input-currency.d.ts.__ivy_ngcc_bak +4 -0
  685. package/input-currency/sd-angular-core-input-currency.d.ts.map +1 -0
  686. package/input-dropdown/package.json +12 -1
  687. package/input-dropdown/sd-angular-core-input-dropdown.d.ts +2 -0
  688. package/input-dropdown/sd-angular-core-input-dropdown.d.ts.__ivy_ngcc_bak +4 -0
  689. package/input-dropdown/sd-angular-core-input-dropdown.d.ts.map +1 -0
  690. package/input-number/package.json +12 -1
  691. package/input-number/sd-angular-core-input-number.d.ts +2 -0
  692. package/input-number/sd-angular-core-input-number.d.ts.__ivy_ngcc_bak +4 -0
  693. package/input-number/sd-angular-core-input-number.d.ts.map +1 -0
  694. package/input-upload-file/package.json +12 -1
  695. package/input-upload-file/sd-angular-core-input-upload-file.d.ts +2 -0
  696. package/input-upload-file/sd-angular-core-input-upload-file.d.ts.__ivy_ngcc_bak +4 -0
  697. package/input-upload-file/sd-angular-core-input-upload-file.d.ts.map +1 -0
  698. package/json-editor/package.json +12 -1
  699. package/json-editor/sd-angular-core-json-editor.d.ts +2 -0
  700. package/json-editor/sd-angular-core-json-editor.d.ts.__ivy_ngcc_bak +4 -0
  701. package/json-editor/sd-angular-core-json-editor.d.ts.map +1 -0
  702. package/konva/package.json +12 -1
  703. package/konva/sd-angular-core-konva.d.ts +2 -0
  704. package/konva/sd-angular-core-konva.d.ts.__ivy_ngcc_bak +4 -0
  705. package/konva/sd-angular-core-konva.d.ts.map +1 -0
  706. package/label/package.json +12 -1
  707. package/label/sd-angular-core-label.d.ts +2 -0
  708. package/label/sd-angular-core-label.d.ts.__ivy_ngcc_bak +5 -0
  709. package/label/sd-angular-core-label.d.ts.map +1 -0
  710. package/loading/package.json +12 -1
  711. package/loading/sd-angular-core-loading.d.ts +2 -0
  712. package/loading/sd-angular-core-loading.d.ts.__ivy_ngcc_bak +4 -0
  713. package/loading/sd-angular-core-loading.d.ts.map +1 -0
  714. package/modal/package.json +12 -1
  715. package/modal/sd-angular-core-modal.d.ts +2 -0
  716. package/modal/sd-angular-core-modal.d.ts.__ivy_ngcc_bak +4 -0
  717. package/modal/sd-angular-core-modal.d.ts.map +1 -0
  718. package/modal-resizable/package.json +12 -1
  719. package/modal-resizable/sd-angular-core-modal-resizable.d.ts +2 -0
  720. package/modal-resizable/sd-angular-core-modal-resizable.d.ts.__ivy_ngcc_bak +4 -0
  721. package/modal-resizable/sd-angular-core-modal-resizable.d.ts.map +1 -0
  722. package/notify/package.json +12 -1
  723. package/notify/sd-angular-core-notify.d.ts +2 -0
  724. package/notify/sd-angular-core-notify.d.ts.__ivy_ngcc_bak +4 -0
  725. package/notify/sd-angular-core-notify.d.ts.map +1 -0
  726. package/package.json +1 -1
  727. package/popover/package.json +12 -1
  728. package/popover/sd-angular-core-popover.d.ts +2 -0
  729. package/popover/sd-angular-core-popover.d.ts.__ivy_ngcc_bak +4 -0
  730. package/popover/sd-angular-core-popover.d.ts.map +1 -0
  731. package/quick-action/package.json +12 -1
  732. package/quick-action/sd-angular-core-quick-action.d.ts +2 -0
  733. package/quick-action/sd-angular-core-quick-action.d.ts.__ivy_ngcc_bak +4 -0
  734. package/quick-action/sd-angular-core-quick-action.d.ts.map +1 -0
  735. package/radio/package.json +12 -1
  736. package/radio/sd-angular-core-radio.d.ts +2 -0
  737. package/radio/sd-angular-core-radio.d.ts.__ivy_ngcc_bak +4 -0
  738. package/radio/sd-angular-core-radio.d.ts.map +1 -0
  739. package/sd-angular-core-1.3.0.tgz +0 -0
  740. package/select/package.json +12 -1
  741. package/select/sd-angular-core-select.d.ts +2 -0
  742. package/select/sd-angular-core-select.d.ts.__ivy_ngcc_bak +4 -0
  743. package/select/sd-angular-core-select.d.ts.map +1 -0
  744. package/select-badge/package.json +12 -1
  745. package/select-badge/sd-angular-core-select-badge.d.ts +2 -0
  746. package/select-badge/sd-angular-core-select-badge.d.ts.__ivy_ngcc_bak +4 -0
  747. package/select-badge/sd-angular-core-select-badge.d.ts.map +1 -0
  748. package/select-editor/package.json +12 -1
  749. package/select-editor/sd-angular-core-select-editor.d.ts +2 -0
  750. package/select-editor/sd-angular-core-select-editor.d.ts.__ivy_ngcc_bak +4 -0
  751. package/select-editor/sd-angular-core-select-editor.d.ts.map +1 -0
  752. package/service/package.json +12 -1
  753. package/service/sd-angular-core-service.d.ts +2 -0
  754. package/service/sd-angular-core-service.d.ts.__ivy_ngcc_bak +4 -0
  755. package/service/sd-angular-core-service.d.ts.map +1 -0
  756. package/setting/package.json +12 -1
  757. package/setting/sd-angular-core-setting.d.ts +2 -0
  758. package/setting/sd-angular-core-setting.d.ts.__ivy_ngcc_bak +4 -0
  759. package/setting/sd-angular-core-setting.d.ts.map +1 -0
  760. package/side-drawer/package.json +12 -1
  761. package/side-drawer/sd-angular-core-side-drawer.d.ts +2 -0
  762. package/side-drawer/sd-angular-core-side-drawer.d.ts.__ivy_ngcc_bak +4 -0
  763. package/side-drawer/sd-angular-core-side-drawer.d.ts.map +1 -0
  764. package/switch/package.json +12 -1
  765. package/switch/sd-angular-core-switch.d.ts +2 -0
  766. package/switch/sd-angular-core-switch.d.ts.__ivy_ngcc_bak +4 -0
  767. package/switch/sd-angular-core-switch.d.ts.map +1 -0
  768. package/tab-router/package.json +12 -1
  769. package/tab-router/sd-angular-core-tab-router.d.ts +2 -0
  770. package/tab-router/sd-angular-core-tab-router.d.ts.__ivy_ngcc_bak +6 -0
  771. package/tab-router/sd-angular-core-tab-router.d.ts.map +1 -0
  772. package/textarea/package.json +12 -1
  773. package/textarea/sd-angular-core-textarea.d.ts +2 -0
  774. package/textarea/sd-angular-core-textarea.d.ts.__ivy_ngcc_bak +4 -0
  775. package/textarea/sd-angular-core-textarea.d.ts.map +1 -0
  776. package/time/package.json +12 -1
  777. package/time/sd-angular-core-time.d.ts +2 -0
  778. package/time/sd-angular-core-time.d.ts.__ivy_ngcc_bak +5 -0
  779. package/time/sd-angular-core-time.d.ts.map +1 -0
  780. package/timeline/package.json +12 -1
  781. package/timeline/sd-angular-core-timeline.d.ts +2 -0
  782. package/timeline/sd-angular-core-timeline.d.ts.__ivy_ngcc_bak +5 -0
  783. package/timeline/sd-angular-core-timeline.d.ts.map +1 -0
  784. package/translate/package.json +12 -1
  785. package/translate/sd-angular-core-translate.d.ts +2 -0
  786. package/translate/sd-angular-core-translate.d.ts.__ivy_ngcc_bak +4 -0
  787. package/translate/sd-angular-core-translate.d.ts.map +1 -0
  788. package/upload-excel/package.json +12 -1
  789. package/upload-excel/sd-angular-core-upload-excel.d.ts +2 -0
  790. package/upload-excel/sd-angular-core-upload-excel.d.ts.__ivy_ngcc_bak +6 -0
  791. package/upload-excel/sd-angular-core-upload-excel.d.ts.map +1 -0
  792. package/upload-file/package.json +12 -1
  793. package/upload-file/sd-angular-core-upload-file.d.ts +2 -0
  794. package/upload-file/sd-angular-core-upload-file.d.ts.__ivy_ngcc_bak +4 -0
  795. package/upload-file/sd-angular-core-upload-file.d.ts.map +1 -0
  796. package/utility/package.json +12 -1
  797. package/utility/sd-angular-core-utility.d.ts +2 -0
  798. package/utility/sd-angular-core-utility.d.ts.__ivy_ngcc_bak +4 -0
  799. package/utility/sd-angular-core-utility.d.ts.map +1 -0
  800. package/utility/src/lib/utility.service.d.ts +4 -0
  801. package/view/package.json +12 -1
  802. package/view/sd-angular-core-view.d.ts +2 -0
  803. package/view/sd-angular-core-view.d.ts.__ivy_ngcc_bak +4 -0
  804. package/view/sd-angular-core-view.d.ts.map +1 -0
  805. package/sd-angular-core-1.2.99.tgz +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"sd-angular-core-chart.js","sources":["../../../../projects/sd-core/chart/src/lib/chart.model.ts","../../../../projects/sd-core/chart/src/lib/chart.component.ts","../../../../projects/sd-core/chart/src/lib/chart.module.ts","../../../../projects/sd-core/chart/sd-angular-core-chart.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\r\n\r\nexport const ChartColors = {\r\n Red: 'rgb(255, 99, 132)',\r\n Orange: 'rgb(255, 159, 64)',\r\n Yellow: 'rgb(255, 205, 86)',\r\n Green: 'rgb(75, 192, 192)',\r\n Blue: 'rgb(54, 162, 235)',\r\n Purple: 'rgb(153, 102, 255)',\r\n Grey: 'rgb(201, 203, 207)',\r\n Purple700: '#2E224C',\r\n Purple600: '#453372',\r\n Purple500: '#574191',\r\n Purple400: '#7356BF',\r\n Purple300: '#957FCE',\r\n Purple200: '#C1B4E2',\r\n Purple100: '#E3DDF2',\r\n Purple50: '#F3F1F9',\r\n Blue700: '#0F2C60',\r\n Blue600: '#174291',\r\n Blue500: '#1D53B7',\r\n Blue400: '#276EF1',\r\n Blue300: '#5A90F4',\r\n Blue200: '#9FBFF8',\r\n Blue100: '#D4E2FC',\r\n Blue50: '#EDF3FD',\r\n Green700: '#0D4020',\r\n Green600: '#156A36',\r\n Green500: '#09863D',\r\n Green400: '#21A453',\r\n Green300: '#43BF75',\r\n Green200: '#9EE2B8',\r\n Green100: '#CFF3DD',\r\n Green50: '#F0FAF3',\r\n Yellow700: '#664C1A',\r\n Yellow600: '#997328',\r\n Yellow500: '#C19132',\r\n Yellow400: '#FFC043',\r\n Yellow300: '#FFCF70',\r\n Yellow200: '#FFE3AC',\r\n Yellow100: '#FFF2D9',\r\n Yellow50: '#FFF9EF',\r\n Orange700: '#5F2C14',\r\n Orange600: '#8E421E',\r\n Orange500: '#B45326',\r\n Orange400: '#ED6E33',\r\n Orange300: '#F19063',\r\n Orange200: '#F7BFA5',\r\n Orange100: '#FBE2D6',\r\n Orange50: '#FDF3EE',\r\n Red700: '#541A14',\r\n Red600: '#7F281E',\r\n Red500: '#A13226',\r\n Red400: '#D44333',\r\n Red300: '#DE7063',\r\n Red200: '#ECACA5',\r\n Red100: '#F6D9D6',\r\n Red50: '#FBEFEE',\r\n Brown700: '#3D281E',\r\n Brown600: '#5B3C2D',\r\n Brown500: '#744C39',\r\n Brown400: '#99644C',\r\n Brown300: '#B18976',\r\n Brown200: '#D2BAB0',\r\n Brown100: '#EBE0DB',\r\n Brown50: '#F6F2F0',\r\n Gray900: '#141414',\r\n Gray800: '#1F1F1F',\r\n Gray700: '#333333',\r\n Gray600: '#545454',\r\n Gray500: '#757575',\r\n Gray400: '#AFAFAF',\r\n Gray300: '#CBCBCB',\r\n Gray200: '#E2E2E2',\r\n Gray100: '#EEEEEE',\r\n Gray50: '#F6F6F6',\r\n Platinum700: '#394145',\r\n Platinum600: '#556268',\r\n Platinum500: '#6C7C83',\r\n Platinum400: '#8EA3AD',\r\n Platinum300: '#A1BDCA',\r\n Platinum200: '#CCDFE5',\r\n Platinum100: '#EBF5F7',\r\n Platinum50: '#F4FAFB',\r\n EatsGreen400: '#21A453',\r\n FreightBlue400: '#21A453',\r\n JumpRed400: '#FF0A2D',\r\n Black: '#000000',\r\n White: '#FFFFFF',\r\n};\r\n\r\nexport type SdChartOption = PieChartOption |\r\n BarChartOption |\r\n HorizontalBarChartOption |\r\n LineChartOption |\r\n StackAreaChartOption |\r\n BarLineChartOption;\r\n\r\ninterface BaseChartOption {\r\n title?: string;\r\n height?: string;\r\n hideLegend?: boolean;\r\n tooltips?: {\r\n label: (params: { datasetLabel?: string, label?: string, value?: number }) => string;\r\n };\r\n}\r\n\r\nexport interface PieChartOption extends BaseChartOption {\r\n type: 'pie';\r\n title?: string;\r\n datasets: {\r\n label: string,\r\n value: number,\r\n backgroundColor: string\r\n }[];\r\n hover?: 'ShowAll';\r\n}\r\n\r\nexport interface BarChartOption extends BaseChartOption {\r\n type: 'bar';\r\n xTitle?: string;\r\n yTitle?: string;\r\n labels: string[];\r\n datasets: {\r\n label: string;\r\n data: number[];\r\n borderColor?: string,\r\n backgroundColor?: string;\r\n stack?: string;\r\n }[];\r\n beginAtZero?: boolean;\r\n labelWidth?: number;\r\n ticks?: {\r\n xLabel?: (value: number | string, index: number) => string,\r\n yLabel?: (value: number | string, index: number) => string\r\n };\r\n hover?: 'ShowAll';\r\n}\r\n\r\nexport interface HorizontalBarChartOption extends BaseChartOption {\r\n type: 'horizontalBar';\r\n xTitle?: string;\r\n yTitle?: string;\r\n labels: string[];\r\n datasets: {\r\n label: string;\r\n data: number[];\r\n borderColor?: string,\r\n backgroundColor?: string;\r\n stack?: string;\r\n }[];\r\n beginAtZero?: boolean;\r\n labelWidth?: number;\r\n ticks?: {\r\n xLabel?: (value: number | string, index: number) => string,\r\n yLabel?: (value: number | string, index: number) => string\r\n };\r\n hover?: 'ShowAll';\r\n}\r\n\r\nexport interface LineChartOption extends BaseChartOption {\r\n type: 'line';\r\n xTitle?: string;\r\n yTitle?: string;\r\n labels: string[];\r\n datasets: {\r\n label: string;\r\n data: number[];\r\n borderColor?: string,\r\n backgroundColor?: string;\r\n }[];\r\n beginAtZero?: boolean;\r\n labelWidth?: number;\r\n ticks?: {\r\n xLabel?: (value: number | string, index: number) => string,\r\n yLabel?: (value: number | string, index: number) => string\r\n };\r\n hover?: 'ShowAll';\r\n}\r\n\r\nexport interface StackAreaChartOption extends BaseChartOption {\r\n type: 'stackArea';\r\n xTitle?: string;\r\n yTitle?: string;\r\n labels: string[];\r\n datasets: {\r\n label: string;\r\n data: number[];\r\n borderColor?: string,\r\n backgroundColor?: string;\r\n }[];\r\n beginAtZero?: boolean;\r\n labelWidth?: number;\r\n ticks?: {\r\n xLabel?: (value: number | string, index: number) => string,\r\n yLabel?: (value: number | string, index: number) => string\r\n };\r\n hover?: 'ShowAll';\r\n}\r\n\r\nexport interface BarLineChartOption extends BaseChartOption {\r\n type: 'barline';\r\n xTitle?: string;\r\n yTitle?: string;\r\n yRightTitle?: string;\r\n labels: string[];\r\n datasets: {\r\n type: 'bar' | 'line',\r\n yAlign?: 'left' | 'right',\r\n label: string;\r\n data: number[];\r\n borderColor?: string;\r\n backgroundColor?: string;\r\n }[];\r\n beginAtZero?: boolean;\r\n labelWidth?: number;\r\n ticks?: {\r\n xLabel?: (value: number | string, index: number) => string,\r\n yLabel?: (value: number | string, index: number) => string,\r\n yRightLabel?: (value: number | string, index: number) => string\r\n };\r\n hover?: 'ShowAll';\r\n}\r\n\r\n\r\nexport interface IChartConfiguration {\r\n defaultColors?: {\r\n backgroundColor?: string,\r\n borderColor?: string\r\n }[];\r\n}\r\n\r\nexport const CHART_CONFIG = new InjectionToken<IChartConfiguration>('chart.configuration');\r\n","import { Component, OnInit, AfterViewInit, ViewChild, ElementRef, Input, ChangeDetectorRef, Optional, Inject } from '@angular/core';\r\nimport * as Chart from 'chart.js';\r\nimport {\r\n SdChartOption,\r\n BarChartOption,\r\n LineChartOption,\r\n PieChartOption,\r\n BarLineChartOption,\r\n StackAreaChartOption,\r\n HorizontalBarChartOption,\r\n IChartConfiguration,\r\n CHART_CONFIG\r\n} from './chart.model';\r\nimport $ from 'jquery';\r\nimport * as uuid from 'uuid';\r\n\r\n@Component({\r\n selector: 'sd-chart',\r\n templateUrl: './chart.component.html',\r\n styleUrls: ['./chart.component.scss']\r\n})\r\nexport class SdChart implements OnInit, AfterViewInit {\r\n private initialized = false;\r\n private pChartOption: SdChartOption;\r\n isLoading = false;\r\n\r\n @Input() set chartOption(chartOption: SdChartOption) {\r\n this.pChartOption = chartOption;\r\n if (this.initialized) {\r\n this.renderChart();\r\n }\r\n }\r\n\r\n @ViewChild('chart') chartRef: ElementRef;\r\n @ViewChild('chartWrapper') chartWrapperRef: ElementRef;\r\n @ViewChild('chartAxis') chartAxisRef: ElementRef;\r\n @ViewChild('chartAreaWrapperExtend') chartAreaWrapperExtendRef: ElementRef;\r\n chart: Chart;\r\n visible = true;\r\n height = '300px';\r\n private ctx: CanvasRenderingContext2D;\r\n\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n @Optional() @Inject(CHART_CONFIG) private chartConfiguration: IChartConfiguration\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.renderChart(true);\r\n this.initialized = true;\r\n this.ref.detectChanges();\r\n }\r\n\r\n private async renderChart(firstRender?: boolean) {\r\n this.height = this.pChartOption?.height || '300px';\r\n if (!firstRender) {\r\n this.visible = false;\r\n await new Promise(resolve => setTimeout(resolve, 200));\r\n this.visible = true;\r\n }\r\n await new Promise(resolve => setTimeout(resolve, 200));\r\n if (this.chartRef?.nativeElement) {\r\n const canvas = this.chartRef.nativeElement as HTMLCanvasElement;\r\n this.ctx = canvas.getContext('2d');\r\n switch (this.pChartOption.type) {\r\n case 'pie':\r\n this.renderPieChart(this.pChartOption);\r\n break;\r\n case 'bar':\r\n this.renderBarChart(this.pChartOption);\r\n break;\r\n case 'horizontalBar':\r\n this.renderHorizontalBarChart(this.pChartOption);\r\n break;\r\n case 'line':\r\n this.renderLineChart(this.pChartOption);\r\n break;\r\n case 'stackArea':\r\n this.renderStackAreaChart(this.pChartOption);\r\n break;\r\n case 'barline':\r\n this.renderBarLineChart(this.pChartOption);\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n }\r\n\r\n private renderPieChart(option: PieChartOption) {\r\n const configuration: Chart.ChartConfiguration = {\r\n type: 'pie',\r\n options: {\r\n responsive: true,\r\n title: {\r\n display: true,\r\n text: option.title\r\n },\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel ? `[${datasetLabel}] ` : ''}${label} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n data: {\r\n labels: option.datasets?.map(e => e.label) || [],\r\n datasets: [{\r\n data: option.datasets?.map(e => e.value) || [],\r\n backgroundColor: option.datasets?.map((e, idx) => e.backgroundColor\r\n || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor\r\n || this.dynamicColor) || []\r\n }]\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n private renderBarChart(option: BarChartOption) {\r\n const labelWidth = option.labelWidth ?? 50;\r\n if (option.datasets.length) {\r\n // const newwidth = Math.max(option.labels.length * option.datasets.length * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n const newwidth = option.labels.length * option.datasets.length * labelWidth;\r\n $(this.chartAreaWrapperExtendRef.nativeElement).css('width', `max(100%,${newwidth}px)`);\r\n }\r\n const configuration: Chart.ChartConfiguration = {\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n scales: {\r\n xAxes: [{\r\n display: true,\r\n scaleLabel: {\r\n display: !!option.xTitle,\r\n labelString: option.xTitle || ''\r\n },\r\n ticks: {\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.xLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n }\r\n }],\r\n yAxes: [{\r\n display: true,\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n scaleLabel: {\r\n display: !!option.yTitle,\r\n labelString: option.yTitle || ''\r\n }\r\n }]\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n type: 'bar',\r\n data: {\r\n labels: option.labels,\r\n datasets: option.datasets.map((e, idx) => {\r\n const dynamicColor = this.dynamicColor;\r\n const result: Chart.ChartDataSets = {\r\n label: e.label,\r\n fill: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n backgroundColor: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n data: e.data,\r\n stack: e.stack\r\n };\r\n return result;\r\n })\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n private renderHorizontalBarChart(option: HorizontalBarChartOption) {\r\n // const labelWidth = option.labelWidth ?? 50;\r\n // if (option.datasets.length) {\r\n // const newwidth = Math.max(option.labels.length * option.datasets.length * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n // }\r\n const configuration: Chart.ChartConfiguration = {\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n scales: {\r\n xAxes: [{\r\n display: true,\r\n scaleLabel: {\r\n display: !!option.xTitle,\r\n labelString: option.xTitle || ''\r\n },\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.xLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n }\r\n }],\r\n yAxes: [{\r\n display: true,\r\n ticks: {\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n scaleLabel: {\r\n display: !!option.yTitle,\r\n labelString: option.yTitle || ''\r\n }\r\n }]\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n type: 'horizontalBar',\r\n data: {\r\n labels: option.labels,\r\n datasets: option.datasets.map((e, idx) => {\r\n const dynamicColor = this.dynamicColor;\r\n const result: Chart.ChartDataSets = {\r\n label: e.label,\r\n fill: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n backgroundColor: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n data: e.data,\r\n stack: e.stack\r\n };\r\n return result;\r\n })\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n private renderLineChart(option: LineChartOption) {\r\n const labelWidth = option.labelWidth ?? 50;\r\n if (option.datasets.length) {\r\n // const newwidth = Math.max(option.labels.length * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n const newwidth = option.labels.length * labelWidth;\r\n $(this.chartAreaWrapperExtendRef.nativeElement).css('width', `max(100%,${newwidth}px)`);\r\n }\r\n const configuration: Chart.ChartConfiguration = {\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n scales: {\r\n xAxes: [{\r\n display: true,\r\n scaleLabel: {\r\n display: !!option.xTitle,\r\n labelString: option.xTitle || ''\r\n },\r\n ticks: {\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.xLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n }],\r\n yAxes: [{\r\n display: true,\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n scaleLabel: {\r\n display: !!option.yTitle,\r\n labelString: option.yTitle || ''\r\n }\r\n }]\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n type: 'line',\r\n data: {\r\n labels: option.labels,\r\n datasets: option.datasets.map((e, idx) => {\r\n const dynamicColor = this.dynamicColor;\r\n const result: Chart.ChartDataSets = {\r\n label: e.label,\r\n fill: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n backgroundColor: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n borderColor: e.borderColor || this.chartConfiguration?.defaultColors?.[idx]?.borderColor || dynamicColor,\r\n data: e.data,\r\n lineTension: 0,\r\n };\r\n return result;\r\n })\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n private renderStackAreaChart(option: StackAreaChartOption) {\r\n const labelWidth = option.labelWidth ?? 50;\r\n if (option.datasets.length) {\r\n // const newwidth = Math.max(option.labels.length * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n const newwidth = option.labels.length * labelWidth;\r\n $(this.chartAreaWrapperExtendRef.nativeElement).css('width', `max(100%,${newwidth}px)`);\r\n }\r\n const configuration: Chart.ChartConfiguration = {\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n scales: {\r\n xAxes: [{\r\n display: true,\r\n scaleLabel: {\r\n display: !!option.xTitle,\r\n labelString: option.xTitle || ''\r\n },\r\n ticks: {\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.xLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n }],\r\n yAxes: [{\r\n display: true,\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n stacked: true,\r\n scaleLabel: {\r\n display: !!option.yTitle,\r\n labelString: option.yTitle || ''\r\n }\r\n }]\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n type: 'line',\r\n data: {\r\n labels: option.labels,\r\n datasets: option.datasets.map((e, idx) => {\r\n const dynamicColor = this.dynamicColor;\r\n const result: Chart.ChartDataSets = {\r\n label: e.label,\r\n // fill: e.backgroundColor,\r\n backgroundColor: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n borderColor: e.borderColor || this.chartConfiguration?.defaultColors?.[idx]?.borderColor || dynamicColor,\r\n data: e.data,\r\n lineTension: 0,\r\n };\r\n return result;\r\n })\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n private renderBarLineChart(option: BarLineChartOption) {\r\n const labelWidth = option.labelWidth ?? 50;\r\n if (option.datasets.length) {\r\n const numberOfBars = option.datasets.filter(e => e.type === 'bar').length;\r\n if (numberOfBars <= 1) {\r\n // const newwidth = Math.max(option.labels.length * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n const newwidth = option.labels.length * labelWidth;\r\n $(this.chartAreaWrapperExtendRef.nativeElement).css('width', `max(100%,${newwidth}px)`);\r\n } else {\r\n // const newwidth = Math.max(option.labels.length * numberOfBars * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n const newwidth = option.labels.length * numberOfBars * labelWidth;\r\n $(this.chartAreaWrapperExtendRef.nativeElement).css('width', `max(100%,${newwidth}px)`);\r\n }\r\n }\r\n const leftId = `I${uuid.v4()}`;\r\n const rightId = `I${uuid.v4()}`;\r\n const yAxes = [{\r\n type: 'linear',\r\n display: true,\r\n position: 'left',\r\n id: leftId,\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n suggestedMin: 0,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n scaleLabel: {\r\n display: !!option.yTitle,\r\n labelString: option.yTitle || ''\r\n }\r\n }];\r\n if (option.datasets.some(e => e.yAlign === 'right')) {\r\n yAxes.push({\r\n type: 'linear',\r\n display: true,\r\n position: 'right',\r\n id: rightId,\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n suggestedMin: 0,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yRightLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n scaleLabel: {\r\n display: !!option.yRightTitle,\r\n labelString: option.yRightTitle || ''\r\n }\r\n });\r\n }\r\n const configuration: Chart.ChartConfiguration = {\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n title: {\r\n display: true,\r\n text: option.title\r\n },\r\n scales: {\r\n xAxes: [{\r\n display: true,\r\n scaleLabel: {\r\n display: !!option.xTitle,\r\n labelString: option.xTitle || ''\r\n },\r\n ticks: {\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.xLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n }],\r\n yAxes\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel ? `[${datasetLabel}] ` : ''} ${label} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n data: {\r\n labels: option.labels,\r\n datasets: option.datasets.map((e, idx) => {\r\n const dynamicColor = this.dynamicColor;\r\n const result: Chart.ChartDataSets = {\r\n type: e.type,\r\n label: e.label,\r\n fill: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n backgroundColor: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n borderColor: e.borderColor || this.chartConfiguration?.defaultColors?.[idx]?.borderColor || dynamicColor,\r\n data: e.data,\r\n yAxisID: e.yAlign === 'right' ? rightId : leftId,\r\n lineTension: 0\r\n };\r\n return result;\r\n })\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n loadingStart = () => {\r\n this.isLoading = true;\r\n }\r\n\r\n private get dynamicColor() {\r\n const r = Math.floor(Math.random() * 255);\r\n const g = Math.floor(Math.random() * 255);\r\n const b = Math.floor(Math.random() * 255);\r\n return 'rgb(' + r + ',' + g + ',' + b + ')';\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdChart } from './chart.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n SdChart\r\n ],\r\n exports: [\r\n SdChart\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdChartModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["uuid.v4"],"mappings":";;;;;;;;MAEa,WAAW,GAAG;IACzB,GAAG,EAAE,mBAAmB;IACxB,MAAM,EAAE,mBAAmB;IAC3B,MAAM,EAAE,mBAAmB;IAC3B,KAAK,EAAE,mBAAmB;IAC1B,IAAI,EAAE,mBAAmB;IACzB,MAAM,EAAE,oBAAoB;IAC5B,IAAI,EAAE,oBAAoB;IAC1B,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,QAAQ,EAAE,SAAS;IACnB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,SAAS;IACjB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;IACnB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,QAAQ,EAAE,SAAS;IACnB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,SAAS,EAAE,SAAS;IACpB,QAAQ,EAAE,SAAS;IACnB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;IACnB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,SAAS;IACtB,WAAW,EAAE,SAAS;IACtB,WAAW,EAAE,SAAS;IACtB,WAAW,EAAE,SAAS;IACtB,WAAW,EAAE,SAAS;IACtB,WAAW,EAAE,SAAS;IACtB,WAAW,EAAE,SAAS;IACtB,UAAU,EAAE,SAAS;IACrB,YAAY,EAAE,SAAS;IACvB,cAAc,EAAE,SAAS;IACzB,UAAU,EAAE,SAAS;IACrB,KAAK,EAAE,SAAS;IAChB,KAAK,EAAE,SAAS;EAChB;MA+IW,YAAY,GAAG,IAAI,cAAc,CAAsB,qBAAqB;;MCnN5E,OAAO;IAqBlB,YACU,GAAsB,EACY,kBAAuC;QADzE,QAAG,GAAH,GAAG,CAAmB;QACY,uBAAkB,GAAlB,kBAAkB,CAAqB;QAtB3E,gBAAW,GAAG,KAAK,CAAC;QAE5B,cAAS,GAAG,KAAK,CAAC;QAclB,YAAO,GAAG,IAAI,CAAC;QACf,WAAM,GAAG,OAAO,CAAC;QA6lBjB,iBAAY,GAAG;YACb,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;SACvB,CAAA;KAxlBA;IApBD,IAAa,WAAW,CAAC,WAA0B;QACjD,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,IAAI,CAAC,WAAW,EAAE,CAAC;SACpB;KACF;IAiBD,QAAQ;KACP;IAED,eAAe;QACb,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAEa,WAAW,CAAC,WAAqB;;;YAC7C,IAAI,CAAC,MAAM,GAAG,OAAA,IAAI,CAAC,YAAY,0CAAE,MAAM,KAAI,OAAO,CAAC;YACnD,IAAI,CAAC,WAAW,EAAE;gBAChB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;gBACrB,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;gBACvD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;aACrB;YACD,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;YACvD,UAAI,IAAI,CAAC,QAAQ,0CAAE,aAAa,EAAE;gBAChC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAkC,CAAC;gBAChE,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACnC,QAAQ,IAAI,CAAC,YAAY,CAAC,IAAI;oBAC5B,KAAK,KAAK;wBACR,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;wBACvC,MAAM;oBACR,KAAK,KAAK;wBACR,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;wBACvC,MAAM;oBACR,KAAK,eAAe;wBAClB,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;wBACjD,MAAM;oBACR,KAAK,MAAM;wBACT,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;wBACxC,MAAM;oBACR,KAAK,WAAW;wBACd,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;wBAC7C,MAAM;oBACR,KAAK,SAAS;wBACZ,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;wBAC3C,MAAM;oBACR;wBACE,MAAM;iBACT;aACF;;KACF;IAEO,cAAc,CAAC,MAAsB;;QAC3C,MAAM,aAAa,GAA6B;YAC9C,IAAI,EAAE,KAAK;YACX,OAAO,EAAE;gBACP,UAAU,EAAE,IAAI;gBAChB,KAAK,EAAE;oBACL,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,MAAM,CAAC,KAAK;iBACnB;gBACD,MAAM,EAAE;oBACN,OAAO,EAAE,CAAC,MAAM,CAAC,UAAU;iBAC5B;gBACD,QAAQ,EAAE;oBACR,SAAS,EAAE;wBACT,KAAK,EAAE,CAAC,WAAW,EAAE,IAAI;;4BACvB,MAAM,YAAY,SAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,WAAW,CAAC,YAAY,2CAAG,KAAK,CAAC;4BACrE,MAAM,KAAK,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAW,CAAC;4BACxD,MAAM,KAAK,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,WAAW,CAAC,YAAY,2CAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAW,CAAC;4BAC1F,OAAO,OAAA,MAAM,CAAC,QAAQ,0CAAE,KAAK,CAAC;gCAC5B,YAAY;gCACZ,KAAK;gCACL,KAAK;6BACN,MAAK,GAAG,YAAY,GAAG,IAAI,YAAY,IAAI,GAAG,EAAE,GAAG,KAAK,MAAM,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;yBAC7F;qBACF;iBACF;aACF;YACD,IAAI,EAAE;gBACJ,MAAM,EAAE,OAAA,MAAM,CAAC,QAAQ,0CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,MAAK,EAAE;gBAChD,QAAQ,EAAE,CAAC;wBACT,IAAI,EAAE,OAAA,MAAM,CAAC,QAAQ,0CAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,MAAK,EAAE;wBAC9C,eAAe,EAAE,OAAA,MAAM,CAAC,QAAQ,0CAAE,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG;;4BAAK,OAAA,CAAC,CAAC,eAAe;sDAC9D,IAAI,CAAC,kBAAkB,0CAAE,aAAa,0CAAG,GAAG,2CAAG,eAAe,CAAA;mCAC9D,IAAI,CAAC,YAAY,CAAA;yBAAA,MAAK,EAAE;qBAC9B,CAAC;aACH;SACF,CAAC;QAEF,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE;YAC9B,aAAa,CAAC,OAAO,CAAC,QAAQ,mCACzB,aAAa,CAAC,OAAO,CAAC,QAAQ,KACjC,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,KAAK,GACjB,CAAC;YACF,aAAa,CAAC,OAAO,CAAC,KAAK,mCACtB,aAAa,CAAC,OAAO,CAAC,KAAK,KAC9B,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,KAAK,GACjB,CAAC;SACH;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KACxB;IAEO,cAAc,CAAC,MAAsB;;QAC3C,MAAM,UAAU,SAAG,MAAM,CAAC,UAAU,mCAAI,EAAE,CAAC;QAC3C,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE;;;YAG1B,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,UAAU,CAAC;YAC5E,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,QAAQ,KAAK,CAAC,CAAC;SACzF;QACD,MAAM,aAAa,GAA6B;YAC9C,OAAO,EAAE;gBACP,UAAU,EAAE,IAAI;gBAChB,mBAAmB,EAAE,KAAK;gBAC1B,MAAM,EAAE;oBACN,OAAO,EAAE,CAAC,MAAM,CAAC,UAAU;iBAC5B;gBACD,MAAM,EAAE;oBACN,KAAK,EAAE,CAAC;4BACN,OAAO,EAAE,IAAI;4BACb,UAAU,EAAE;gCACV,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;gCACxB,WAAW,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;6BACjC;4BACD,KAAK,EAAE;gCACL,QAAQ,EAAE,CAAC,KAAsB,EAAE,KAAa;;oCAC9C,OAAO,OAAA,MAAM,CAAC,KAAK,0CAAE,MAAM,CAAC,KAAK,EAAE,KAAK,OAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;iCAC5G;6BACF;yBACF,CAAC;oBACF,KAAK,EAAE,CAAC;4BACN,OAAO,EAAE,IAAI;4BACb,KAAK,EAAE;gCACL,WAAW,QAAE,MAAM,CAAC,WAAW,mCAAI,IAAI;gCACvC,QAAQ,EAAE,CAAC,KAAsB,EAAE,KAAa;;oCAC9C,OAAO,OAAA,MAAM,CAAC,KAAK,0CAAE,MAAM,CAAC,KAAK,EAAE,KAAK,OAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;iCAC5G;6BACF;4BACD,UAAU,EAAE;gCACV,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;gCACxB,WAAW,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;6BACjC;yBACF,CAAC;iBACH;gBACD,QAAQ,EAAE;oBACR,SAAS,EAAE;wBACT,KAAK,EAAE,CAAC,WAAW,EAAE,IAAI;;4BACvB,MAAM,YAAY,SAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,WAAW,CAAC,YAAY,2CAAG,KAAK,CAAC;4BACrE,MAAM,KAAK,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAW,CAAC;4BACxD,MAAM,KAAK,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,WAAW,CAAC,YAAY,2CAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAW,CAAC;4BAC1F,OAAO,OAAA,MAAM,CAAC,QAAQ,0CAAE,KAAK,CAAC;gCAC5B,YAAY;gCACZ,KAAK;gCACL,KAAK;6BACN,MAAK,GAAG,YAAY,MAAM,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;yBACzD;qBACF;iBACF;aACF;YACD,IAAI,EAAE,KAAK;YACX,IAAI,EAAE;gBACJ,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG;;oBACnC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;oBACvC,MAAM,MAAM,GAAwB;wBAClC,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,IAAI,EAAE,CAAC,CAAC,eAAe,uBAAI,IAAI,CAAC,kBAAkB,0CAAE,aAAa,0CAAG,GAAG,2CAAG,eAAe,CAAA,IAAI,YAAY;wBACzG,eAAe,EAAE,CAAC,CAAC,eAAe,uBAAI,IAAI,CAAC,kBAAkB,0CAAE,aAAa,0CAAG,GAAG,2CAAG,eAAe,CAAA,IAAI,YAAY;wBACpH,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,KAAK,EAAE,CAAC,CAAC,KAAK;qBACf,CAAC;oBACF,OAAO,MAAM,CAAC;iBACf,CAAC;aACH;SACF,CAAC;QAEF,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE;YAC9B,aAAa,CAAC,OAAO,CAAC,QAAQ,mCACzB,aAAa,CAAC,OAAO,CAAC,QAAQ,KACjC,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,KAAK,GACjB,CAAC;YACF,aAAa,CAAC,OAAO,CAAC,KAAK,mCACtB,aAAa,CAAC,OAAO,CAAC,KAAK,KAC9B,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,KAAK,GACjB,CAAC;SACH;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KACxB;IAEO,wBAAwB,CAAC,MAAgC;;;;;;;QAM/D,MAAM,aAAa,GAA6B;YAC9C,OAAO,EAAE;gBACP,UAAU,EAAE,IAAI;gBAChB,mBAAmB,EAAE,KAAK;gBAC1B,MAAM,EAAE;oBACN,OAAO,EAAE,CAAC,MAAM,CAAC,UAAU;iBAC5B;gBACD,MAAM,EAAE;oBACN,KAAK,EAAE,CAAC;4BACN,OAAO,EAAE,IAAI;4BACb,UAAU,EAAE;gCACV,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;gCACxB,WAAW,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;6BACjC;4BACD,KAAK,EAAE;gCACL,WAAW,QAAE,MAAM,CAAC,WAAW,mCAAI,IAAI;gCACvC,QAAQ,EAAE,CAAC,KAAsB,EAAE,KAAa;;oCAC9C,OAAO,OAAA,MAAM,CAAC,KAAK,0CAAE,MAAM,CAAC,KAAK,EAAE,KAAK,OAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;iCAC5G;6BACF;yBACF,CAAC;oBACF,KAAK,EAAE,CAAC;4BACN,OAAO,EAAE,IAAI;4BACb,KAAK,EAAE;gCACL,QAAQ,EAAE,CAAC,KAAsB,EAAE,KAAa;;oCAC9C,OAAO,OAAA,MAAM,CAAC,KAAK,0CAAE,MAAM,CAAC,KAAK,EAAE,KAAK,OAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;iCAC5G;6BACF;4BACD,UAAU,EAAE;gCACV,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;gCACxB,WAAW,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;6BACjC;yBACF,CAAC;iBACH;gBACD,QAAQ,EAAE;oBACR,SAAS,EAAE;wBACT,KAAK,EAAE,CAAC,WAAW,EAAE,IAAI;;4BACvB,MAAM,YAAY,SAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,WAAW,CAAC,YAAY,2CAAG,KAAK,CAAC;4BACrE,MAAM,KAAK,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAW,CAAC;4BACxD,MAAM,KAAK,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,WAAW,CAAC,YAAY,2CAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAW,CAAC;4BAC1F,OAAO,OAAA,MAAM,CAAC,QAAQ,0CAAE,KAAK,CAAC;gCAC5B,YAAY;gCACZ,KAAK;gCACL,KAAK;6BACN,MAAK,GAAG,YAAY,MAAM,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;yBACzD;qBACF;iBACF;aACF;YACD,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE;gBACJ,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG;;oBACnC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;oBACvC,MAAM,MAAM,GAAwB;wBAClC,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,IAAI,EAAE,CAAC,CAAC,eAAe,uBAAI,IAAI,CAAC,kBAAkB,0CAAE,aAAa,0CAAG,GAAG,2CAAG,eAAe,CAAA,IAAI,YAAY;wBACzG,eAAe,EAAE,CAAC,CAAC,eAAe,uBAAI,IAAI,CAAC,kBAAkB,0CAAE,aAAa,0CAAG,GAAG,2CAAG,eAAe,CAAA,IAAI,YAAY;wBACpH,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,KAAK,EAAE,CAAC,CAAC,KAAK;qBACf,CAAC;oBACF,OAAO,MAAM,CAAC;iBACf,CAAC;aACH;SACF,CAAC;QAEF,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE;YAC9B,aAAa,CAAC,OAAO,CAAC,QAAQ,mCACzB,aAAa,CAAC,OAAO,CAAC,QAAQ,KACjC,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,KAAK,GACjB,CAAC;YACF,aAAa,CAAC,OAAO,CAAC,KAAK,mCACtB,aAAa,CAAC,OAAO,CAAC,KAAK,KAC9B,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,KAAK,GACjB,CAAC;SACH;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KACxB;IAEO,eAAe,CAAC,MAAuB;;QAC7C,MAAM,UAAU,SAAG,MAAM,CAAC,UAAU,mCAAI,EAAE,CAAC;QAC3C,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE;;;YAG1B,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC;YACnD,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,QAAQ,KAAK,CAAC,CAAC;SACzF;QACD,MAAM,aAAa,GAA6B;YAC9C,OAAO,EAAE;gBACP,UAAU,EAAE,IAAI;gBAChB,mBAAmB,EAAE,KAAK;gBAC1B,MAAM,EAAE;oBACN,OAAO,EAAE,CAAC,MAAM,CAAC,UAAU;iBAC5B;gBACD,MAAM,EAAE;oBACN,KAAK,EAAE,CAAC;4BACN,OAAO,EAAE,IAAI;4BACb,UAAU,EAAE;gCACV,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;gCACxB,WAAW,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;6BACjC;4BACD,KAAK,EAAE;gCACL,QAAQ,EAAE,CAAC,KAAsB,EAAE,KAAa;;oCAC9C,OAAO,OAAA,MAAM,CAAC,KAAK,0CAAE,MAAM,CAAC,KAAK,EAAE,KAAK,OAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;iCAC5G;6BACF;yBACF,CAAC;oBACF,KAAK,EAAE,CAAC;4BACN,OAAO,EAAE,IAAI;4BACb,KAAK,EAAE;gCACL,WAAW,QAAE,MAAM,CAAC,WAAW,mCAAI,IAAI;gCACvC,QAAQ,EAAE,CAAC,KAAsB,EAAE,KAAa;;oCAC9C,OAAO,OAAA,MAAM,CAAC,KAAK,0CAAE,MAAM,CAAC,KAAK,EAAE,KAAK,OAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;iCAC5G;6BACF;4BACD,UAAU,EAAE;gCACV,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;gCACxB,WAAW,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;6BACjC;yBACF,CAAC;iBACH;gBACD,QAAQ,EAAE;oBACR,SAAS,EAAE;wBACT,KAAK,EAAE,CAAC,WAAW,EAAE,IAAI;;4BACvB,MAAM,YAAY,SAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,WAAW,CAAC,YAAY,2CAAG,KAAK,CAAC;4BACrE,MAAM,KAAK,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAW,CAAC;4BACxD,MAAM,KAAK,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,WAAW,CAAC,YAAY,2CAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAW,CAAC;4BAC1F,OAAO,OAAA,MAAM,CAAC,QAAQ,0CAAE,KAAK,CAAC;gCAC5B,YAAY;gCACZ,KAAK;gCACL,KAAK;6BACN,MAAK,GAAG,YAAY,MAAM,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;yBACzD;qBACF;iBACF;aACF;YACD,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE;gBACJ,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG;;oBACnC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;oBACvC,MAAM,MAAM,GAAwB;wBAClC,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,IAAI,EAAE,CAAC,CAAC,eAAe,uBAAI,IAAI,CAAC,kBAAkB,0CAAE,aAAa,0CAAG,GAAG,2CAAG,eAAe,CAAA,IAAI,YAAY;wBACzG,eAAe,EAAE,CAAC,CAAC,eAAe,uBAAI,IAAI,CAAC,kBAAkB,0CAAE,aAAa,0CAAG,GAAG,2CAAG,eAAe,CAAA,IAAI,YAAY;wBACpH,WAAW,EAAE,CAAC,CAAC,WAAW,uBAAI,IAAI,CAAC,kBAAkB,0CAAE,aAAa,0CAAG,GAAG,2CAAG,WAAW,CAAA,IAAI,YAAY;wBACxG,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,WAAW,EAAE,CAAC;qBACf,CAAC;oBACF,OAAO,MAAM,CAAC;iBACf,CAAC;aACH;SACF,CAAC;QAEF,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE;YAC9B,aAAa,CAAC,OAAO,CAAC,QAAQ,mCACzB,aAAa,CAAC,OAAO,CAAC,QAAQ,KACjC,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,KAAK,GACjB,CAAC;YACF,aAAa,CAAC,OAAO,CAAC,KAAK,mCACtB,aAAa,CAAC,OAAO,CAAC,KAAK,KAC9B,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,KAAK,GACjB,CAAC;SACH;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KACxB;IAEO,oBAAoB,CAAC,MAA4B;;QACvD,MAAM,UAAU,SAAG,MAAM,CAAC,UAAU,mCAAI,EAAE,CAAC;QAC3C,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE;;;YAG1B,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC;YACnD,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,QAAQ,KAAK,CAAC,CAAC;SACzF;QACD,MAAM,aAAa,GAA6B;YAC9C,OAAO,EAAE;gBACP,UAAU,EAAE,IAAI;gBAChB,mBAAmB,EAAE,KAAK;gBAC1B,MAAM,EAAE;oBACN,OAAO,EAAE,CAAC,MAAM,CAAC,UAAU;iBAC5B;gBACD,MAAM,EAAE;oBACN,KAAK,EAAE,CAAC;4BACN,OAAO,EAAE,IAAI;4BACb,UAAU,EAAE;gCACV,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;gCACxB,WAAW,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;6BACjC;4BACD,KAAK,EAAE;gCACL,QAAQ,EAAE,CAAC,KAAsB,EAAE,KAAa;;oCAC9C,OAAO,OAAA,MAAM,CAAC,KAAK,0CAAE,MAAM,CAAC,KAAK,EAAE,KAAK,OAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;iCAC5G;6BACF;yBACF,CAAC;oBACF,KAAK,EAAE,CAAC;4BACN,OAAO,EAAE,IAAI;4BACb,KAAK,EAAE;gCACL,WAAW,QAAE,MAAM,CAAC,WAAW,mCAAI,IAAI;gCACvC,QAAQ,EAAE,CAAC,KAAsB,EAAE,KAAa;;oCAC9C,OAAO,OAAA,MAAM,CAAC,KAAK,0CAAE,MAAM,CAAC,KAAK,EAAE,KAAK,OAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;iCAC5G;6BACF;4BACD,OAAO,EAAE,IAAI;4BACb,UAAU,EAAE;gCACV,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;gCACxB,WAAW,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;6BACjC;yBACF,CAAC;iBACH;gBACD,QAAQ,EAAE;oBACR,SAAS,EAAE;wBACT,KAAK,EAAE,CAAC,WAAW,EAAE,IAAI;;4BACvB,MAAM,YAAY,SAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,WAAW,CAAC,YAAY,2CAAG,KAAK,CAAC;4BACrE,MAAM,KAAK,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAW,CAAC;4BACxD,MAAM,KAAK,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,WAAW,CAAC,YAAY,2CAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAW,CAAC;4BAC1F,OAAO,OAAA,MAAM,CAAC,QAAQ,0CAAE,KAAK,CAAC;gCAC5B,YAAY;gCACZ,KAAK;gCACL,KAAK;6BACN,MAAK,GAAG,YAAY,MAAM,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;yBACzD;qBACF;iBACF;aACF;YACD,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE;gBACJ,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG;;oBACnC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;oBACvC,MAAM,MAAM,GAAwB;wBAClC,KAAK,EAAE,CAAC,CAAC,KAAK;;wBAEd,eAAe,EAAE,CAAC,CAAC,eAAe,uBAAI,IAAI,CAAC,kBAAkB,0CAAE,aAAa,0CAAG,GAAG,2CAAG,eAAe,CAAA,IAAI,YAAY;wBACpH,WAAW,EAAE,CAAC,CAAC,WAAW,uBAAI,IAAI,CAAC,kBAAkB,0CAAE,aAAa,0CAAG,GAAG,2CAAG,WAAW,CAAA,IAAI,YAAY;wBACxG,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,WAAW,EAAE,CAAC;qBACf,CAAC;oBACF,OAAO,MAAM,CAAC;iBACf,CAAC;aACH;SACF,CAAC;QAEF,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE;YAC9B,aAAa,CAAC,OAAO,CAAC,QAAQ,mCACzB,aAAa,CAAC,OAAO,CAAC,QAAQ,KACjC,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,KAAK,GACjB,CAAC;YACF,aAAa,CAAC,OAAO,CAAC,KAAK,mCACtB,aAAa,CAAC,OAAO,CAAC,KAAK,KAC9B,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,KAAK,GACjB,CAAC;SACH;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KACxB;IAEO,kBAAkB,CAAC,MAA0B;;QACnD,MAAM,UAAU,SAAG,MAAM,CAAC,UAAU,mCAAI,EAAE,CAAC;QAC3C,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE;YAC1B,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,MAAM,CAAC;YAC1E,IAAI,YAAY,IAAI,CAAC,EAAE;;;gBAGrB,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC;gBACnD,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,QAAQ,KAAK,CAAC,CAAC;aACzF;iBAAM;;;gBAGL,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,YAAY,GAAG,UAAU,CAAC;gBAClE,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,YAAY,QAAQ,KAAK,CAAC,CAAC;aACzF;SACF;QACD,MAAM,MAAM,GAAG,IAAIA,EAAO,EAAE,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,IAAIA,EAAO,EAAE,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,CAAC;gBACb,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,MAAM;gBAChB,EAAE,EAAE,MAAM;gBACV,KAAK,EAAE;oBACL,WAAW,QAAE,MAAM,CAAC,WAAW,mCAAI,IAAI;oBACvC,YAAY,EAAE,CAAC;oBACf,QAAQ,EAAE,CAAC,KAAsB,EAAE,KAAa;;wBAC9C,OAAO,OAAA,MAAM,CAAC,KAAK,0CAAE,MAAM,CAAC,KAAK,EAAE,KAAK,OAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;qBAC5G;iBACF;gBACD,UAAU,EAAE;oBACV,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;oBACxB,WAAW,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;iBACjC;aACF,CAAC,CAAC;QACH,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,EAAE;YACnD,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,OAAO;gBACjB,EAAE,EAAE,OAAO;gBACX,KAAK,EAAE;oBACL,WAAW,QAAE,MAAM,CAAC,WAAW,mCAAI,IAAI;oBACvC,YAAY,EAAE,CAAC;oBACf,QAAQ,EAAE,CAAC,KAAsB,EAAE,KAAa;;wBAC9C,OAAO,OAAA,MAAM,CAAC,KAAK,0CAAE,WAAW,CAAC,KAAK,EAAE,KAAK,OAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;qBACjH;iBACF;gBACD,UAAU,EAAE;oBACV,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW;oBAC7B,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE;iBACtC;aACF,CAAC,CAAC;SACJ;QACD,MAAM,aAAa,GAA6B;YAC9C,OAAO,EAAE;gBACP,UAAU,EAAE,IAAI;gBAChB,mBAAmB,EAAE,KAAK;gBAC1B,MAAM,EAAE;oBACN,OAAO,EAAE,CAAC,MAAM,CAAC,UAAU;iBAC5B;gBACD,KAAK,EAAE;oBACL,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,MAAM,CAAC,KAAK;iBACnB;gBACD,MAAM,EAAE;oBACN,KAAK,EAAE,CAAC;4BACN,OAAO,EAAE,IAAI;4BACb,UAAU,EAAE;gCACV,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM;gCACxB,WAAW,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;6BACjC;4BACD,KAAK,EAAE;gCACL,QAAQ,EAAE,CAAC,KAAsB,EAAE,KAAa;;oCAC9C,OAAO,OAAA,MAAM,CAAC,KAAK,0CAAE,MAAM,CAAC,KAAK,EAAE,KAAK,OAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;iCAC5G;6BACF;yBACF,CAAC;oBACF,KAAK;iBACN;gBACD,QAAQ,EAAE;oBACR,SAAS,EAAE;wBACT,KAAK,EAAE,CAAC,WAAW,EAAE,IAAI;;4BACvB,MAAM,YAAY,SAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,WAAW,CAAC,YAAY,2CAAG,KAAK,CAAC;4BACrE,MAAM,KAAK,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAW,CAAC;4BACxD,MAAM,KAAK,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,CAAC,WAAW,CAAC,YAAY,2CAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAW,CAAC;4BAC1F,OAAO,OAAA,MAAM,CAAC,QAAQ,0CAAE,KAAK,CAAC;gCAC5B,YAAY;gCACZ,KAAK;gCACL,KAAK;6BACN,MAAK,GAAG,YAAY,GAAG,IAAI,YAAY,IAAI,GAAG,EAAE,IAAI,KAAK,MAAM,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;yBAC9F;qBACF;iBACF;aACF;YACD,IAAI,EAAE;gBACJ,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG;;oBACnC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;oBACvC,MAAM,MAAM,GAAwB;wBAClC,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,IAAI,EAAE,CAAC,CAAC,eAAe,uBAAI,IAAI,CAAC,kBAAkB,0CAAE,aAAa,0CAAG,GAAG,2CAAG,eAAe,CAAA,IAAI,YAAY;wBACzG,eAAe,EAAE,CAAC,CAAC,eAAe,uBAAI,IAAI,CAAC,kBAAkB,0CAAE,aAAa,0CAAG,GAAG,2CAAG,eAAe,CAAA,IAAI,YAAY;wBACpH,WAAW,EAAE,CAAC,CAAC,WAAW,uBAAI,IAAI,CAAC,kBAAkB,0CAAE,aAAa,0CAAG,GAAG,2CAAG,WAAW,CAAA,IAAI,YAAY;wBACxG,IAAI,EAAE,CAAC,CAAC,IAAI;wBACZ,OAAO,EAAE,CAAC,CAAC,MAAM,KAAK,OAAO,GAAG,OAAO,GAAG,MAAM;wBAChD,WAAW,EAAE,CAAC;qBACf,CAAC;oBACF,OAAO,MAAM,CAAC;iBACf,CAAC;aACH;SACF,CAAC;QAEF,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE;YAC9B,aAAa,CAAC,OAAO,CAAC,QAAQ,mCACzB,aAAa,CAAC,OAAO,CAAC,QAAQ,KACjC,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,KAAK,GACjB,CAAC;YACF,aAAa,CAAC,OAAO,CAAC,KAAK,mCACtB,aAAa,CAAC,OAAO,CAAC,KAAK,KAC9B,IAAI,EAAE,OAAO,EACb,SAAS,EAAE,KAAK,GACjB,CAAC;SACH;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAChD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;KACxB;IAMD,IAAY,YAAY;QACtB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;QAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;QAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;QAC1C,OAAO,MAAM,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;KAC7C;;;YA7nBF,SAAS,SAAC;gBACT,QAAQ,EAAE,UAAU;gBACpB,ifAAqC;;aAEtC;;;YApBwE,iBAAiB;4CA4CrF,QAAQ,YAAI,MAAM,SAAC,YAAY;;;0BAlBjC,KAAK;uBAOL,SAAS,SAAC,OAAO;8BACjB,SAAS,SAAC,cAAc;2BACxB,SAAS,SAAC,WAAW;wCACrB,SAAS,SAAC,wBAAwB;;;MCnBxB,aAAa;;;YAbzB,QAAQ,SAAC;gBACR,OAAO,EAAE;oBACP,YAAY;iBACb;gBACD,YAAY,EAAE;oBACZ,OAAO;iBACR;gBACD,OAAO,EAAE;oBACP,OAAO;iBACR;gBACD,SAAS,EAAE,EACV;aACF;;;AChBD;;;;;;"}
1
+ {"version":3,"file":"sd-angular-core-chart.js","sources":["../../../../projects/sd-core/chart/src/lib/chart.model.ts","../../../../projects/sd-core/chart/src/lib/chart.component.ts","../../../../projects/sd-core/chart/src/lib/chart.module.ts","../../../../projects/sd-core/chart/sd-angular-core-chart.ts"],"names":["uuid.v4"],"mappings":"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","sourcesContent":["import { InjectionToken } from '@angular/core';\r\n\r\nexport const ChartColors = {\r\n Red: 'rgb(255, 99, 132)',\r\n Orange: 'rgb(255, 159, 64)',\r\n Yellow: 'rgb(255, 205, 86)',\r\n Green: 'rgb(75, 192, 192)',\r\n Blue: 'rgb(54, 162, 235)',\r\n Purple: 'rgb(153, 102, 255)',\r\n Grey: 'rgb(201, 203, 207)',\r\n Purple700: '#2E224C',\r\n Purple600: '#453372',\r\n Purple500: '#574191',\r\n Purple400: '#7356BF',\r\n Purple300: '#957FCE',\r\n Purple200: '#C1B4E2',\r\n Purple100: '#E3DDF2',\r\n Purple50: '#F3F1F9',\r\n Blue700: '#0F2C60',\r\n Blue600: '#174291',\r\n Blue500: '#1D53B7',\r\n Blue400: '#276EF1',\r\n Blue300: '#5A90F4',\r\n Blue200: '#9FBFF8',\r\n Blue100: '#D4E2FC',\r\n Blue50: '#EDF3FD',\r\n Green700: '#0D4020',\r\n Green600: '#156A36',\r\n Green500: '#09863D',\r\n Green400: '#21A453',\r\n Green300: '#43BF75',\r\n Green200: '#9EE2B8',\r\n Green100: '#CFF3DD',\r\n Green50: '#F0FAF3',\r\n Yellow700: '#664C1A',\r\n Yellow600: '#997328',\r\n Yellow500: '#C19132',\r\n Yellow400: '#FFC043',\r\n Yellow300: '#FFCF70',\r\n Yellow200: '#FFE3AC',\r\n Yellow100: '#FFF2D9',\r\n Yellow50: '#FFF9EF',\r\n Orange700: '#5F2C14',\r\n Orange600: '#8E421E',\r\n Orange500: '#B45326',\r\n Orange400: '#ED6E33',\r\n Orange300: '#F19063',\r\n Orange200: '#F7BFA5',\r\n Orange100: '#FBE2D6',\r\n Orange50: '#FDF3EE',\r\n Red700: '#541A14',\r\n Red600: '#7F281E',\r\n Red500: '#A13226',\r\n Red400: '#D44333',\r\n Red300: '#DE7063',\r\n Red200: '#ECACA5',\r\n Red100: '#F6D9D6',\r\n Red50: '#FBEFEE',\r\n Brown700: '#3D281E',\r\n Brown600: '#5B3C2D',\r\n Brown500: '#744C39',\r\n Brown400: '#99644C',\r\n Brown300: '#B18976',\r\n Brown200: '#D2BAB0',\r\n Brown100: '#EBE0DB',\r\n Brown50: '#F6F2F0',\r\n Gray900: '#141414',\r\n Gray800: '#1F1F1F',\r\n Gray700: '#333333',\r\n Gray600: '#545454',\r\n Gray500: '#757575',\r\n Gray400: '#AFAFAF',\r\n Gray300: '#CBCBCB',\r\n Gray200: '#E2E2E2',\r\n Gray100: '#EEEEEE',\r\n Gray50: '#F6F6F6',\r\n Platinum700: '#394145',\r\n Platinum600: '#556268',\r\n Platinum500: '#6C7C83',\r\n Platinum400: '#8EA3AD',\r\n Platinum300: '#A1BDCA',\r\n Platinum200: '#CCDFE5',\r\n Platinum100: '#EBF5F7',\r\n Platinum50: '#F4FAFB',\r\n EatsGreen400: '#21A453',\r\n FreightBlue400: '#21A453',\r\n JumpRed400: '#FF0A2D',\r\n Black: '#000000',\r\n White: '#FFFFFF',\r\n};\r\n\r\nexport type SdChartOption = PieChartOption |\r\n BarChartOption |\r\n HorizontalBarChartOption |\r\n LineChartOption |\r\n StackAreaChartOption |\r\n BarLineChartOption;\r\n\r\ninterface BaseChartOption {\r\n title?: string;\r\n height?: string;\r\n hideLegend?: boolean;\r\n tooltips?: {\r\n label: (params: { datasetLabel?: string, label?: string, value?: number }) => string;\r\n };\r\n}\r\n\r\nexport interface PieChartOption extends BaseChartOption {\r\n type: 'pie';\r\n title?: string;\r\n datasets: {\r\n label: string,\r\n value: number,\r\n backgroundColor: string\r\n }[];\r\n hover?: 'ShowAll';\r\n}\r\n\r\nexport interface BarChartOption extends BaseChartOption {\r\n type: 'bar';\r\n xTitle?: string;\r\n yTitle?: string;\r\n labels: string[];\r\n datasets: {\r\n label: string;\r\n data: number[];\r\n borderColor?: string,\r\n backgroundColor?: string;\r\n stack?: string;\r\n }[];\r\n beginAtZero?: boolean;\r\n labelWidth?: number;\r\n ticks?: {\r\n xLabel?: (value: number | string, index: number) => string,\r\n yLabel?: (value: number | string, index: number) => string\r\n };\r\n hover?: 'ShowAll';\r\n}\r\n\r\nexport interface HorizontalBarChartOption extends BaseChartOption {\r\n type: 'horizontalBar';\r\n xTitle?: string;\r\n yTitle?: string;\r\n labels: string[];\r\n datasets: {\r\n label: string;\r\n data: number[];\r\n borderColor?: string,\r\n backgroundColor?: string;\r\n stack?: string;\r\n }[];\r\n beginAtZero?: boolean;\r\n labelWidth?: number;\r\n ticks?: {\r\n xLabel?: (value: number | string, index: number) => string,\r\n yLabel?: (value: number | string, index: number) => string\r\n };\r\n hover?: 'ShowAll';\r\n}\r\n\r\nexport interface LineChartOption extends BaseChartOption {\r\n type: 'line';\r\n xTitle?: string;\r\n yTitle?: string;\r\n labels: string[];\r\n datasets: {\r\n label: string;\r\n data: number[];\r\n borderColor?: string,\r\n backgroundColor?: string;\r\n }[];\r\n beginAtZero?: boolean;\r\n labelWidth?: number;\r\n ticks?: {\r\n xLabel?: (value: number | string, index: number) => string,\r\n yLabel?: (value: number | string, index: number) => string\r\n };\r\n hover?: 'ShowAll';\r\n}\r\n\r\nexport interface StackAreaChartOption extends BaseChartOption {\r\n type: 'stackArea';\r\n xTitle?: string;\r\n yTitle?: string;\r\n labels: string[];\r\n datasets: {\r\n label: string;\r\n data: number[];\r\n borderColor?: string,\r\n backgroundColor?: string;\r\n }[];\r\n beginAtZero?: boolean;\r\n labelWidth?: number;\r\n ticks?: {\r\n xLabel?: (value: number | string, index: number) => string,\r\n yLabel?: (value: number | string, index: number) => string\r\n };\r\n hover?: 'ShowAll';\r\n}\r\n\r\nexport interface BarLineChartOption extends BaseChartOption {\r\n type: 'barline';\r\n xTitle?: string;\r\n yTitle?: string;\r\n yRightTitle?: string;\r\n labels: string[];\r\n datasets: {\r\n type: 'bar' | 'line',\r\n yAlign?: 'left' | 'right',\r\n label: string;\r\n data: number[];\r\n borderColor?: string;\r\n backgroundColor?: string;\r\n }[];\r\n beginAtZero?: boolean;\r\n labelWidth?: number;\r\n ticks?: {\r\n xLabel?: (value: number | string, index: number) => string,\r\n yLabel?: (value: number | string, index: number) => string,\r\n yRightLabel?: (value: number | string, index: number) => string\r\n };\r\n hover?: 'ShowAll';\r\n}\r\n\r\n\r\nexport interface IChartConfiguration {\r\n defaultColors?: {\r\n backgroundColor?: string,\r\n borderColor?: string\r\n }[];\r\n}\r\n\r\nexport const CHART_CONFIG = new InjectionToken<IChartConfiguration>('chart.configuration');\r\n","import { Component, OnInit, AfterViewInit, ViewChild, ElementRef, Input, ChangeDetectorRef, Optional, Inject } from '@angular/core';\r\nimport * as Chart from 'chart.js';\r\nimport {\r\n SdChartOption,\r\n BarChartOption,\r\n LineChartOption,\r\n PieChartOption,\r\n BarLineChartOption,\r\n StackAreaChartOption,\r\n HorizontalBarChartOption,\r\n IChartConfiguration,\r\n CHART_CONFIG\r\n} from './chart.model';\r\nimport $ from 'jquery';\r\nimport * as uuid from 'uuid';\r\n\r\n@Component({\r\n selector: 'sd-chart',\r\n templateUrl: './chart.component.html',\r\n styleUrls: ['./chart.component.scss']\r\n})\r\nexport class SdChart implements OnInit, AfterViewInit {\r\n private initialized = false;\r\n private pChartOption: SdChartOption;\r\n isLoading = false;\r\n\r\n @Input() set chartOption(chartOption: SdChartOption) {\r\n this.pChartOption = chartOption;\r\n if (this.initialized) {\r\n this.renderChart();\r\n }\r\n }\r\n\r\n @ViewChild('chart') chartRef: ElementRef;\r\n @ViewChild('chartWrapper') chartWrapperRef: ElementRef;\r\n @ViewChild('chartAxis') chartAxisRef: ElementRef;\r\n @ViewChild('chartAreaWrapperExtend') chartAreaWrapperExtendRef: ElementRef;\r\n chart: Chart;\r\n visible = true;\r\n height = '300px';\r\n private ctx: CanvasRenderingContext2D;\r\n\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n @Optional() @Inject(CHART_CONFIG) private chartConfiguration: IChartConfiguration\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.renderChart(true);\r\n this.initialized = true;\r\n this.ref.detectChanges();\r\n }\r\n\r\n private async renderChart(firstRender?: boolean) {\r\n this.height = this.pChartOption?.height || '300px';\r\n if (!firstRender) {\r\n this.visible = false;\r\n await new Promise(resolve => setTimeout(resolve, 200));\r\n this.visible = true;\r\n }\r\n await new Promise(resolve => setTimeout(resolve, 200));\r\n if (this.chartRef?.nativeElement) {\r\n const canvas = this.chartRef.nativeElement as HTMLCanvasElement;\r\n this.ctx = canvas.getContext('2d');\r\n switch (this.pChartOption.type) {\r\n case 'pie':\r\n this.renderPieChart(this.pChartOption);\r\n break;\r\n case 'bar':\r\n this.renderBarChart(this.pChartOption);\r\n break;\r\n case 'horizontalBar':\r\n this.renderHorizontalBarChart(this.pChartOption);\r\n break;\r\n case 'line':\r\n this.renderLineChart(this.pChartOption);\r\n break;\r\n case 'stackArea':\r\n this.renderStackAreaChart(this.pChartOption);\r\n break;\r\n case 'barline':\r\n this.renderBarLineChart(this.pChartOption);\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n }\r\n\r\n private renderPieChart(option: PieChartOption) {\r\n const configuration: Chart.ChartConfiguration = {\r\n type: 'pie',\r\n options: {\r\n responsive: true,\r\n title: {\r\n display: true,\r\n text: option.title\r\n },\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel ? `[${datasetLabel}] ` : ''}${label} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n data: {\r\n labels: option.datasets?.map(e => e.label) || [],\r\n datasets: [{\r\n data: option.datasets?.map(e => e.value) || [],\r\n backgroundColor: option.datasets?.map((e, idx) => e.backgroundColor\r\n || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor\r\n || this.dynamicColor) || []\r\n }]\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n private renderBarChart(option: BarChartOption) {\r\n const labelWidth = option.labelWidth ?? 50;\r\n if (option.datasets.length) {\r\n // const newwidth = Math.max(option.labels.length * option.datasets.length * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n const newwidth = option.labels.length * option.datasets.length * labelWidth;\r\n $(this.chartAreaWrapperExtendRef.nativeElement).css('width', `max(100%,${newwidth}px)`);\r\n }\r\n const configuration: Chart.ChartConfiguration = {\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n scales: {\r\n xAxes: [{\r\n display: true,\r\n scaleLabel: {\r\n display: !!option.xTitle,\r\n labelString: option.xTitle || ''\r\n },\r\n ticks: {\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.xLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n }\r\n }],\r\n yAxes: [{\r\n display: true,\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n scaleLabel: {\r\n display: !!option.yTitle,\r\n labelString: option.yTitle || ''\r\n }\r\n }]\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n type: 'bar',\r\n data: {\r\n labels: option.labels,\r\n datasets: option.datasets.map((e, idx) => {\r\n const dynamicColor = this.dynamicColor;\r\n const result: Chart.ChartDataSets = {\r\n label: e.label,\r\n fill: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n backgroundColor: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n data: e.data,\r\n stack: e.stack\r\n };\r\n return result;\r\n })\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n private renderHorizontalBarChart(option: HorizontalBarChartOption) {\r\n // const labelWidth = option.labelWidth ?? 50;\r\n // if (option.datasets.length) {\r\n // const newwidth = Math.max(option.labels.length * option.datasets.length * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n // }\r\n const configuration: Chart.ChartConfiguration = {\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n scales: {\r\n xAxes: [{\r\n display: true,\r\n scaleLabel: {\r\n display: !!option.xTitle,\r\n labelString: option.xTitle || ''\r\n },\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.xLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n }\r\n }],\r\n yAxes: [{\r\n display: true,\r\n ticks: {\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n scaleLabel: {\r\n display: !!option.yTitle,\r\n labelString: option.yTitle || ''\r\n }\r\n }]\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n type: 'horizontalBar',\r\n data: {\r\n labels: option.labels,\r\n datasets: option.datasets.map((e, idx) => {\r\n const dynamicColor = this.dynamicColor;\r\n const result: Chart.ChartDataSets = {\r\n label: e.label,\r\n fill: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n backgroundColor: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n data: e.data,\r\n stack: e.stack\r\n };\r\n return result;\r\n })\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n private renderLineChart(option: LineChartOption) {\r\n const labelWidth = option.labelWidth ?? 50;\r\n if (option.datasets.length) {\r\n // const newwidth = Math.max(option.labels.length * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n const newwidth = option.labels.length * labelWidth;\r\n $(this.chartAreaWrapperExtendRef.nativeElement).css('width', `max(100%,${newwidth}px)`);\r\n }\r\n const configuration: Chart.ChartConfiguration = {\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n scales: {\r\n xAxes: [{\r\n display: true,\r\n scaleLabel: {\r\n display: !!option.xTitle,\r\n labelString: option.xTitle || ''\r\n },\r\n ticks: {\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.xLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n }],\r\n yAxes: [{\r\n display: true,\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n scaleLabel: {\r\n display: !!option.yTitle,\r\n labelString: option.yTitle || ''\r\n }\r\n }]\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n type: 'line',\r\n data: {\r\n labels: option.labels,\r\n datasets: option.datasets.map((e, idx) => {\r\n const dynamicColor = this.dynamicColor;\r\n const result: Chart.ChartDataSets = {\r\n label: e.label,\r\n fill: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n backgroundColor: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n borderColor: e.borderColor || this.chartConfiguration?.defaultColors?.[idx]?.borderColor || dynamicColor,\r\n data: e.data,\r\n lineTension: 0,\r\n };\r\n return result;\r\n })\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n private renderStackAreaChart(option: StackAreaChartOption) {\r\n const labelWidth = option.labelWidth ?? 50;\r\n if (option.datasets.length) {\r\n // const newwidth = Math.max(option.labels.length * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n const newwidth = option.labels.length * labelWidth;\r\n $(this.chartAreaWrapperExtendRef.nativeElement).css('width', `max(100%,${newwidth}px)`);\r\n }\r\n const configuration: Chart.ChartConfiguration = {\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n scales: {\r\n xAxes: [{\r\n display: true,\r\n scaleLabel: {\r\n display: !!option.xTitle,\r\n labelString: option.xTitle || ''\r\n },\r\n ticks: {\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.xLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n }],\r\n yAxes: [{\r\n display: true,\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n stacked: true,\r\n scaleLabel: {\r\n display: !!option.yTitle,\r\n labelString: option.yTitle || ''\r\n }\r\n }]\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n type: 'line',\r\n data: {\r\n labels: option.labels,\r\n datasets: option.datasets.map((e, idx) => {\r\n const dynamicColor = this.dynamicColor;\r\n const result: Chart.ChartDataSets = {\r\n label: e.label,\r\n // fill: e.backgroundColor,\r\n backgroundColor: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n borderColor: e.borderColor || this.chartConfiguration?.defaultColors?.[idx]?.borderColor || dynamicColor,\r\n data: e.data,\r\n lineTension: 0,\r\n };\r\n return result;\r\n })\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n private renderBarLineChart(option: BarLineChartOption) {\r\n const labelWidth = option.labelWidth ?? 50;\r\n if (option.datasets.length) {\r\n const numberOfBars = option.datasets.filter(e => e.type === 'bar').length;\r\n if (numberOfBars <= 1) {\r\n // const newwidth = Math.max(option.labels.length * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n const newwidth = option.labels.length * labelWidth;\r\n $(this.chartAreaWrapperExtendRef.nativeElement).css('width', `max(100%,${newwidth}px)`);\r\n } else {\r\n // const newwidth = Math.max(option.labels.length * numberOfBars * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n const newwidth = option.labels.length * numberOfBars * labelWidth;\r\n $(this.chartAreaWrapperExtendRef.nativeElement).css('width', `max(100%,${newwidth}px)`);\r\n }\r\n }\r\n const leftId = `I${uuid.v4()}`;\r\n const rightId = `I${uuid.v4()}`;\r\n const yAxes = [{\r\n type: 'linear',\r\n display: true,\r\n position: 'left',\r\n id: leftId,\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n suggestedMin: 0,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n scaleLabel: {\r\n display: !!option.yTitle,\r\n labelString: option.yTitle || ''\r\n }\r\n }];\r\n if (option.datasets.some(e => e.yAlign === 'right')) {\r\n yAxes.push({\r\n type: 'linear',\r\n display: true,\r\n position: 'right',\r\n id: rightId,\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n suggestedMin: 0,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yRightLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n scaleLabel: {\r\n display: !!option.yRightTitle,\r\n labelString: option.yRightTitle || ''\r\n }\r\n });\r\n }\r\n const configuration: Chart.ChartConfiguration = {\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n title: {\r\n display: true,\r\n text: option.title\r\n },\r\n scales: {\r\n xAxes: [{\r\n display: true,\r\n scaleLabel: {\r\n display: !!option.xTitle,\r\n labelString: option.xTitle || ''\r\n },\r\n ticks: {\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.xLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n }],\r\n yAxes\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel ? `[${datasetLabel}] ` : ''} ${label} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n data: {\r\n labels: option.labels,\r\n datasets: option.datasets.map((e, idx) => {\r\n const dynamicColor = this.dynamicColor;\r\n const result: Chart.ChartDataSets = {\r\n type: e.type,\r\n label: e.label,\r\n fill: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n backgroundColor: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n borderColor: e.borderColor || this.chartConfiguration?.defaultColors?.[idx]?.borderColor || dynamicColor,\r\n data: e.data,\r\n yAxisID: e.yAlign === 'right' ? rightId : leftId,\r\n lineTension: 0\r\n };\r\n return result;\r\n })\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n loadingStart = () => {\r\n this.isLoading = true;\r\n }\r\n\r\n private get dynamicColor() {\r\n const r = Math.floor(Math.random() * 255);\r\n const g = Math.floor(Math.random() * 255);\r\n const b = Math.floor(Math.random() * 255);\r\n return 'rgb(' + r + ',' + g + ',' + b + ')';\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdChart } from './chart.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n SdChart\r\n ],\r\n exports: [\r\n SdChart\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdChartModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sd-angular-core-chart.js","sources":["../../../../projects/sd-core/chart/src/lib/chart.model.ts","../../../../projects/sd-core/chart/src/lib/chart.component.ts","../../../../projects/sd-core/chart/src/lib/chart.module.ts","../../../../projects/sd-core/chart/sd-angular-core-chart.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\r\n\r\nexport const ChartColors = {\r\n Red: 'rgb(255, 99, 132)',\r\n Orange: 'rgb(255, 159, 64)',\r\n Yellow: 'rgb(255, 205, 86)',\r\n Green: 'rgb(75, 192, 192)',\r\n Blue: 'rgb(54, 162, 235)',\r\n Purple: 'rgb(153, 102, 255)',\r\n Grey: 'rgb(201, 203, 207)',\r\n Purple700: '#2E224C',\r\n Purple600: '#453372',\r\n Purple500: '#574191',\r\n Purple400: '#7356BF',\r\n Purple300: '#957FCE',\r\n Purple200: '#C1B4E2',\r\n Purple100: '#E3DDF2',\r\n Purple50: '#F3F1F9',\r\n Blue700: '#0F2C60',\r\n Blue600: '#174291',\r\n Blue500: '#1D53B7',\r\n Blue400: '#276EF1',\r\n Blue300: '#5A90F4',\r\n Blue200: '#9FBFF8',\r\n Blue100: '#D4E2FC',\r\n Blue50: '#EDF3FD',\r\n Green700: '#0D4020',\r\n Green600: '#156A36',\r\n Green500: '#09863D',\r\n Green400: '#21A453',\r\n Green300: '#43BF75',\r\n Green200: '#9EE2B8',\r\n Green100: '#CFF3DD',\r\n Green50: '#F0FAF3',\r\n Yellow700: '#664C1A',\r\n Yellow600: '#997328',\r\n Yellow500: '#C19132',\r\n Yellow400: '#FFC043',\r\n Yellow300: '#FFCF70',\r\n Yellow200: '#FFE3AC',\r\n Yellow100: '#FFF2D9',\r\n Yellow50: '#FFF9EF',\r\n Orange700: '#5F2C14',\r\n Orange600: '#8E421E',\r\n Orange500: '#B45326',\r\n Orange400: '#ED6E33',\r\n Orange300: '#F19063',\r\n Orange200: '#F7BFA5',\r\n Orange100: '#FBE2D6',\r\n Orange50: '#FDF3EE',\r\n Red700: '#541A14',\r\n Red600: '#7F281E',\r\n Red500: '#A13226',\r\n Red400: '#D44333',\r\n Red300: '#DE7063',\r\n Red200: '#ECACA5',\r\n Red100: '#F6D9D6',\r\n Red50: '#FBEFEE',\r\n Brown700: '#3D281E',\r\n Brown600: '#5B3C2D',\r\n Brown500: '#744C39',\r\n Brown400: '#99644C',\r\n Brown300: '#B18976',\r\n Brown200: '#D2BAB0',\r\n Brown100: '#EBE0DB',\r\n Brown50: '#F6F2F0',\r\n Gray900: '#141414',\r\n Gray800: '#1F1F1F',\r\n Gray700: '#333333',\r\n Gray600: '#545454',\r\n Gray500: '#757575',\r\n Gray400: '#AFAFAF',\r\n Gray300: '#CBCBCB',\r\n Gray200: '#E2E2E2',\r\n Gray100: '#EEEEEE',\r\n Gray50: '#F6F6F6',\r\n Platinum700: '#394145',\r\n Platinum600: '#556268',\r\n Platinum500: '#6C7C83',\r\n Platinum400: '#8EA3AD',\r\n Platinum300: '#A1BDCA',\r\n Platinum200: '#CCDFE5',\r\n Platinum100: '#EBF5F7',\r\n Platinum50: '#F4FAFB',\r\n EatsGreen400: '#21A453',\r\n FreightBlue400: '#21A453',\r\n JumpRed400: '#FF0A2D',\r\n Black: '#000000',\r\n White: '#FFFFFF',\r\n};\r\n\r\nexport type SdChartOption = PieChartOption |\r\n BarChartOption |\r\n HorizontalBarChartOption |\r\n LineChartOption |\r\n StackAreaChartOption |\r\n BarLineChartOption;\r\n\r\ninterface BaseChartOption {\r\n title?: string;\r\n height?: string;\r\n hideLegend?: boolean;\r\n tooltips?: {\r\n label: (params: { datasetLabel?: string, label?: string, value?: number }) => string;\r\n };\r\n}\r\n\r\nexport interface PieChartOption extends BaseChartOption {\r\n type: 'pie';\r\n title?: string;\r\n datasets: {\r\n label: string,\r\n value: number,\r\n backgroundColor: string\r\n }[];\r\n hover?: 'ShowAll';\r\n}\r\n\r\nexport interface BarChartOption extends BaseChartOption {\r\n type: 'bar';\r\n xTitle?: string;\r\n yTitle?: string;\r\n labels: string[];\r\n datasets: {\r\n label: string;\r\n data: number[];\r\n borderColor?: string,\r\n backgroundColor?: string;\r\n stack?: string;\r\n }[];\r\n beginAtZero?: boolean;\r\n labelWidth?: number;\r\n ticks?: {\r\n xLabel?: (value: number | string, index: number) => string,\r\n yLabel?: (value: number | string, index: number) => string\r\n };\r\n hover?: 'ShowAll';\r\n}\r\n\r\nexport interface HorizontalBarChartOption extends BaseChartOption {\r\n type: 'horizontalBar';\r\n xTitle?: string;\r\n yTitle?: string;\r\n labels: string[];\r\n datasets: {\r\n label: string;\r\n data: number[];\r\n borderColor?: string,\r\n backgroundColor?: string;\r\n stack?: string;\r\n }[];\r\n beginAtZero?: boolean;\r\n labelWidth?: number;\r\n ticks?: {\r\n xLabel?: (value: number | string, index: number) => string,\r\n yLabel?: (value: number | string, index: number) => string\r\n };\r\n hover?: 'ShowAll';\r\n}\r\n\r\nexport interface LineChartOption extends BaseChartOption {\r\n type: 'line';\r\n xTitle?: string;\r\n yTitle?: string;\r\n labels: string[];\r\n datasets: {\r\n label: string;\r\n data: number[];\r\n borderColor?: string,\r\n backgroundColor?: string;\r\n }[];\r\n beginAtZero?: boolean;\r\n labelWidth?: number;\r\n ticks?: {\r\n xLabel?: (value: number | string, index: number) => string,\r\n yLabel?: (value: number | string, index: number) => string\r\n };\r\n hover?: 'ShowAll';\r\n}\r\n\r\nexport interface StackAreaChartOption extends BaseChartOption {\r\n type: 'stackArea';\r\n xTitle?: string;\r\n yTitle?: string;\r\n labels: string[];\r\n datasets: {\r\n label: string;\r\n data: number[];\r\n borderColor?: string,\r\n backgroundColor?: string;\r\n }[];\r\n beginAtZero?: boolean;\r\n labelWidth?: number;\r\n ticks?: {\r\n xLabel?: (value: number | string, index: number) => string,\r\n yLabel?: (value: number | string, index: number) => string\r\n };\r\n hover?: 'ShowAll';\r\n}\r\n\r\nexport interface BarLineChartOption extends BaseChartOption {\r\n type: 'barline';\r\n xTitle?: string;\r\n yTitle?: string;\r\n yRightTitle?: string;\r\n labels: string[];\r\n datasets: {\r\n type: 'bar' | 'line',\r\n yAlign?: 'left' | 'right',\r\n label: string;\r\n data: number[];\r\n borderColor?: string;\r\n backgroundColor?: string;\r\n }[];\r\n beginAtZero?: boolean;\r\n labelWidth?: number;\r\n ticks?: {\r\n xLabel?: (value: number | string, index: number) => string,\r\n yLabel?: (value: number | string, index: number) => string,\r\n yRightLabel?: (value: number | string, index: number) => string\r\n };\r\n hover?: 'ShowAll';\r\n}\r\n\r\n\r\nexport interface IChartConfiguration {\r\n defaultColors?: {\r\n backgroundColor?: string,\r\n borderColor?: string\r\n }[];\r\n}\r\n\r\nexport const CHART_CONFIG = new InjectionToken<IChartConfiguration>('chart.configuration');\r\n","import { Component, OnInit, AfterViewInit, ViewChild, ElementRef, Input, ChangeDetectorRef, Optional, Inject } from '@angular/core';\r\nimport * as Chart from 'chart.js';\r\nimport {\r\n SdChartOption,\r\n BarChartOption,\r\n LineChartOption,\r\n PieChartOption,\r\n BarLineChartOption,\r\n StackAreaChartOption,\r\n HorizontalBarChartOption,\r\n IChartConfiguration,\r\n CHART_CONFIG\r\n} from './chart.model';\r\nimport $ from 'jquery';\r\nimport * as uuid from 'uuid';\r\n\r\n@Component({\r\n selector: 'sd-chart',\r\n templateUrl: './chart.component.html',\r\n styleUrls: ['./chart.component.scss']\r\n})\r\nexport class SdChart implements OnInit, AfterViewInit {\r\n private initialized = false;\r\n private pChartOption: SdChartOption;\r\n isLoading = false;\r\n\r\n @Input() set chartOption(chartOption: SdChartOption) {\r\n this.pChartOption = chartOption;\r\n if (this.initialized) {\r\n this.renderChart();\r\n }\r\n }\r\n\r\n @ViewChild('chart') chartRef: ElementRef;\r\n @ViewChild('chartWrapper') chartWrapperRef: ElementRef;\r\n @ViewChild('chartAxis') chartAxisRef: ElementRef;\r\n @ViewChild('chartAreaWrapperExtend') chartAreaWrapperExtendRef: ElementRef;\r\n chart: Chart;\r\n visible = true;\r\n height = '300px';\r\n private ctx: CanvasRenderingContext2D;\r\n\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n @Optional() @Inject(CHART_CONFIG) private chartConfiguration: IChartConfiguration\r\n ) {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.renderChart(true);\r\n this.initialized = true;\r\n this.ref.detectChanges();\r\n }\r\n\r\n private async renderChart(firstRender?: boolean) {\r\n this.height = this.pChartOption?.height || '300px';\r\n if (!firstRender) {\r\n this.visible = false;\r\n await new Promise(resolve => setTimeout(resolve, 200));\r\n this.visible = true;\r\n }\r\n await new Promise(resolve => setTimeout(resolve, 200));\r\n if (this.chartRef?.nativeElement) {\r\n const canvas = this.chartRef.nativeElement as HTMLCanvasElement;\r\n this.ctx = canvas.getContext('2d');\r\n switch (this.pChartOption.type) {\r\n case 'pie':\r\n this.renderPieChart(this.pChartOption);\r\n break;\r\n case 'bar':\r\n this.renderBarChart(this.pChartOption);\r\n break;\r\n case 'horizontalBar':\r\n this.renderHorizontalBarChart(this.pChartOption);\r\n break;\r\n case 'line':\r\n this.renderLineChart(this.pChartOption);\r\n break;\r\n case 'stackArea':\r\n this.renderStackAreaChart(this.pChartOption);\r\n break;\r\n case 'barline':\r\n this.renderBarLineChart(this.pChartOption);\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n }\r\n\r\n private renderPieChart(option: PieChartOption) {\r\n const configuration: Chart.ChartConfiguration = {\r\n type: 'pie',\r\n options: {\r\n responsive: true,\r\n title: {\r\n display: true,\r\n text: option.title\r\n },\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel ? `[${datasetLabel}] ` : ''}${label} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n data: {\r\n labels: option.datasets?.map(e => e.label) || [],\r\n datasets: [{\r\n data: option.datasets?.map(e => e.value) || [],\r\n backgroundColor: option.datasets?.map((e, idx) => e.backgroundColor\r\n || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor\r\n || this.dynamicColor) || []\r\n }]\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n private renderBarChart(option: BarChartOption) {\r\n const labelWidth = option.labelWidth ?? 50;\r\n if (option.datasets.length) {\r\n // const newwidth = Math.max(option.labels.length * option.datasets.length * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n const newwidth = option.labels.length * option.datasets.length * labelWidth;\r\n $(this.chartAreaWrapperExtendRef.nativeElement).css('width', `max(100%,${newwidth}px)`);\r\n }\r\n const configuration: Chart.ChartConfiguration = {\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n scales: {\r\n xAxes: [{\r\n display: true,\r\n scaleLabel: {\r\n display: !!option.xTitle,\r\n labelString: option.xTitle || ''\r\n },\r\n ticks: {\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.xLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n }\r\n }],\r\n yAxes: [{\r\n display: true,\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n scaleLabel: {\r\n display: !!option.yTitle,\r\n labelString: option.yTitle || ''\r\n }\r\n }]\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n type: 'bar',\r\n data: {\r\n labels: option.labels,\r\n datasets: option.datasets.map((e, idx) => {\r\n const dynamicColor = this.dynamicColor;\r\n const result: Chart.ChartDataSets = {\r\n label: e.label,\r\n fill: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n backgroundColor: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n data: e.data,\r\n stack: e.stack\r\n };\r\n return result;\r\n })\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n private renderHorizontalBarChart(option: HorizontalBarChartOption) {\r\n // const labelWidth = option.labelWidth ?? 50;\r\n // if (option.datasets.length) {\r\n // const newwidth = Math.max(option.labels.length * option.datasets.length * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n // }\r\n const configuration: Chart.ChartConfiguration = {\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n scales: {\r\n xAxes: [{\r\n display: true,\r\n scaleLabel: {\r\n display: !!option.xTitle,\r\n labelString: option.xTitle || ''\r\n },\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.xLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n }\r\n }],\r\n yAxes: [{\r\n display: true,\r\n ticks: {\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n scaleLabel: {\r\n display: !!option.yTitle,\r\n labelString: option.yTitle || ''\r\n }\r\n }]\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n type: 'horizontalBar',\r\n data: {\r\n labels: option.labels,\r\n datasets: option.datasets.map((e, idx) => {\r\n const dynamicColor = this.dynamicColor;\r\n const result: Chart.ChartDataSets = {\r\n label: e.label,\r\n fill: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n backgroundColor: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n data: e.data,\r\n stack: e.stack\r\n };\r\n return result;\r\n })\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n private renderLineChart(option: LineChartOption) {\r\n const labelWidth = option.labelWidth ?? 50;\r\n if (option.datasets.length) {\r\n // const newwidth = Math.max(option.labels.length * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n const newwidth = option.labels.length * labelWidth;\r\n $(this.chartAreaWrapperExtendRef.nativeElement).css('width', `max(100%,${newwidth}px)`);\r\n }\r\n const configuration: Chart.ChartConfiguration = {\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n scales: {\r\n xAxes: [{\r\n display: true,\r\n scaleLabel: {\r\n display: !!option.xTitle,\r\n labelString: option.xTitle || ''\r\n },\r\n ticks: {\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.xLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n }],\r\n yAxes: [{\r\n display: true,\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n scaleLabel: {\r\n display: !!option.yTitle,\r\n labelString: option.yTitle || ''\r\n }\r\n }]\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n type: 'line',\r\n data: {\r\n labels: option.labels,\r\n datasets: option.datasets.map((e, idx) => {\r\n const dynamicColor = this.dynamicColor;\r\n const result: Chart.ChartDataSets = {\r\n label: e.label,\r\n fill: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n backgroundColor: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n borderColor: e.borderColor || this.chartConfiguration?.defaultColors?.[idx]?.borderColor || dynamicColor,\r\n data: e.data,\r\n lineTension: 0,\r\n };\r\n return result;\r\n })\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n private renderStackAreaChart(option: StackAreaChartOption) {\r\n const labelWidth = option.labelWidth ?? 50;\r\n if (option.datasets.length) {\r\n // const newwidth = Math.max(option.labels.length * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n const newwidth = option.labels.length * labelWidth;\r\n $(this.chartAreaWrapperExtendRef.nativeElement).css('width', `max(100%,${newwidth}px)`);\r\n }\r\n const configuration: Chart.ChartConfiguration = {\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n scales: {\r\n xAxes: [{\r\n display: true,\r\n scaleLabel: {\r\n display: !!option.xTitle,\r\n labelString: option.xTitle || ''\r\n },\r\n ticks: {\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.xLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n }],\r\n yAxes: [{\r\n display: true,\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n stacked: true,\r\n scaleLabel: {\r\n display: !!option.yTitle,\r\n labelString: option.yTitle || ''\r\n }\r\n }]\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n type: 'line',\r\n data: {\r\n labels: option.labels,\r\n datasets: option.datasets.map((e, idx) => {\r\n const dynamicColor = this.dynamicColor;\r\n const result: Chart.ChartDataSets = {\r\n label: e.label,\r\n // fill: e.backgroundColor,\r\n backgroundColor: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n borderColor: e.borderColor || this.chartConfiguration?.defaultColors?.[idx]?.borderColor || dynamicColor,\r\n data: e.data,\r\n lineTension: 0,\r\n };\r\n return result;\r\n })\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n private renderBarLineChart(option: BarLineChartOption) {\r\n const labelWidth = option.labelWidth ?? 50;\r\n if (option.datasets.length) {\r\n const numberOfBars = option.datasets.filter(e => e.type === 'bar').length;\r\n if (numberOfBars <= 1) {\r\n // const newwidth = Math.max(option.labels.length * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n const newwidth = option.labels.length * labelWidth;\r\n $(this.chartAreaWrapperExtendRef.nativeElement).css('width', `max(100%,${newwidth}px)`);\r\n } else {\r\n // const newwidth = Math.max(option.labels.length * numberOfBars * labelWidth, $(this.chartWrapperRef.nativeElement).width());\r\n // $(this.chartAreaWrapperExtendRef.nativeElement).width(newwidth);\r\n const newwidth = option.labels.length * numberOfBars * labelWidth;\r\n $(this.chartAreaWrapperExtendRef.nativeElement).css('width', `max(100%,${newwidth}px)`);\r\n }\r\n }\r\n const leftId = `I${uuid.v4()}`;\r\n const rightId = `I${uuid.v4()}`;\r\n const yAxes = [{\r\n type: 'linear',\r\n display: true,\r\n position: 'left',\r\n id: leftId,\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n suggestedMin: 0,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n scaleLabel: {\r\n display: !!option.yTitle,\r\n labelString: option.yTitle || ''\r\n }\r\n }];\r\n if (option.datasets.some(e => e.yAlign === 'right')) {\r\n yAxes.push({\r\n type: 'linear',\r\n display: true,\r\n position: 'right',\r\n id: rightId,\r\n ticks: {\r\n beginAtZero: option.beginAtZero ?? true,\r\n suggestedMin: 0,\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.yRightLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n scaleLabel: {\r\n display: !!option.yRightTitle,\r\n labelString: option.yRightTitle || ''\r\n }\r\n });\r\n }\r\n const configuration: Chart.ChartConfiguration = {\r\n options: {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n legend: {\r\n display: !option.hideLegend\r\n },\r\n title: {\r\n display: true,\r\n text: option.title\r\n },\r\n scales: {\r\n xAxes: [{\r\n display: true,\r\n scaleLabel: {\r\n display: !!option.xTitle,\r\n labelString: option.xTitle || ''\r\n },\r\n ticks: {\r\n callback: (value: number | string, index: number) => {\r\n return option.ticks?.xLabel(value, index) || (Number.isNumber(value) ? Number.toVNCurrency(value) : value);\r\n }\r\n },\r\n }],\r\n yAxes\r\n },\r\n tooltips: {\r\n callbacks: {\r\n label: (tooltipItem, data) => {\r\n const datasetLabel = data?.datasets[tooltipItem.datasetIndex]?.label;\r\n const label = data?.labels[tooltipItem.index] as string;\r\n const value = data?.datasets[tooltipItem.datasetIndex]?.data[tooltipItem.index] as number;\r\n return option.tooltips?.label({\r\n datasetLabel,\r\n label,\r\n value\r\n }) || `${datasetLabel ? `[${datasetLabel}] ` : ''} ${label} : ${Number.toVNCurrency(value)}`;\r\n }\r\n }\r\n }\r\n },\r\n data: {\r\n labels: option.labels,\r\n datasets: option.datasets.map((e, idx) => {\r\n const dynamicColor = this.dynamicColor;\r\n const result: Chart.ChartDataSets = {\r\n type: e.type,\r\n label: e.label,\r\n fill: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n backgroundColor: e.backgroundColor || this.chartConfiguration?.defaultColors?.[idx]?.backgroundColor || dynamicColor,\r\n borderColor: e.borderColor || this.chartConfiguration?.defaultColors?.[idx]?.borderColor || dynamicColor,\r\n data: e.data,\r\n yAxisID: e.yAlign === 'right' ? rightId : leftId,\r\n lineTension: 0\r\n };\r\n return result;\r\n })\r\n }\r\n };\r\n\r\n if (option.hover === 'ShowAll') {\r\n configuration.options.tooltips = {\r\n ...configuration.options.tooltips,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n configuration.options.hover = {\r\n ...configuration.options.hover,\r\n mode: 'index',\r\n intersect: false\r\n };\r\n }\r\n\r\n this.chart = new Chart(this.ctx, configuration);\r\n this.isLoading = false;\r\n }\r\n\r\n loadingStart = () => {\r\n this.isLoading = true;\r\n }\r\n\r\n private get dynamicColor() {\r\n const r = Math.floor(Math.random() * 255);\r\n const g = Math.floor(Math.random() * 255);\r\n const b = Math.floor(Math.random() * 255);\r\n return 'rgb(' + r + ',' + g + ',' + b + ')';\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdChart } from './chart.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule\r\n ],\r\n declarations: [\r\n SdChart\r\n ],\r\n exports: [\r\n SdChart\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdChartModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["uuid.v4"],"mappings":"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"}
@@ -117,4 +117,5 @@ SdCheckboxModule.decorators = [
117
117
  */
118
118
 
119
119
  export { SdCheckboxModule, SdCheckbox as ɵa };
120
- //# sourceMappingURL=sd-angular-core-checkbox.js.map
120
+
121
+ //# sourceMappingURL=sd-angular-core-checkbox.js.map
@@ -0,0 +1,120 @@
1
+ import { EventEmitter, Component, ChangeDetectorRef, Input, Output, NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { MatCheckboxModule } from '@angular/material/checkbox';
4
+ import { MatFormFieldModule } from '@angular/material/form-field';
5
+ import { FormControl, NgForm, FormsModule, ReactiveFormsModule } from '@angular/forms';
6
+ import { __classPrivateFieldSet, __classPrivateFieldGet } from 'tslib';
7
+ import { Subscription } from 'rxjs';
8
+ import { v4 } from 'uuid';
9
+
10
+ var _name, _form, _subscription, _model, _onChange;
11
+ class SdCheckbox {
12
+ constructor(ref) {
13
+ this.ref = ref;
14
+ this.id = `I${v4()}`;
15
+ _name.set(this, v4());
16
+ _form.set(this, void 0);
17
+ this.formControl = new FormControl();
18
+ _subscription.set(this, new Subscription());
19
+ this.color = 'primary';
20
+ _model.set(this, void 0);
21
+ this.modelChange = new EventEmitter();
22
+ this.sdChange = new EventEmitter();
23
+ _onChange.set(this, (value) => {
24
+ this.modelChange.emit(value);
25
+ this.sdChange.emit(value);
26
+ });
27
+ }
28
+ set name(val) {
29
+ if (val) {
30
+ __classPrivateFieldSet(this, _name, val);
31
+ }
32
+ }
33
+ set form(val) {
34
+ if (val) {
35
+ if (val instanceof NgForm) {
36
+ __classPrivateFieldSet(this, _form, val.form);
37
+ }
38
+ else {
39
+ __classPrivateFieldSet(this, _form, val);
40
+ }
41
+ }
42
+ }
43
+ set disabled(val) {
44
+ val = (val === '') || val;
45
+ if (val) {
46
+ this.formControl.disable();
47
+ }
48
+ else {
49
+ this.formControl.enable();
50
+ }
51
+ }
52
+ set model(value) {
53
+ if (__classPrivateFieldGet(this, _model) !== value) {
54
+ __classPrivateFieldSet(this, _model, value);
55
+ this.formControl.setValue(value, {
56
+ emitEvent: false
57
+ });
58
+ }
59
+ }
60
+ ngOnInit() {
61
+ }
62
+ ngAfterViewInit() {
63
+ var _a;
64
+ __classPrivateFieldGet(this, _subscription).add(this.formControl.valueChanges.subscribe(__classPrivateFieldGet(this, _onChange)));
65
+ (_a = __classPrivateFieldGet(this, _form)) === null || _a === void 0 ? void 0 : _a.addControl(__classPrivateFieldGet(this, _name), this.formControl);
66
+ this.ref.detectChanges();
67
+ }
68
+ ngOnDestroy() {
69
+ var _a;
70
+ (_a = __classPrivateFieldGet(this, _form)) === null || _a === void 0 ? void 0 : _a.removeControl(__classPrivateFieldGet(this, _name));
71
+ __classPrivateFieldGet(this, _subscription).unsubscribe();
72
+ }
73
+ }
74
+ _name = new WeakMap(), _form = new WeakMap(), _subscription = new WeakMap(), _model = new WeakMap(), _onChange = new WeakMap();
75
+ SdCheckbox.decorators = [
76
+ { type: Component, args: [{
77
+ selector: 'sd-checkbox',
78
+ template: "<mat-checkbox [formControl]=\"formControl\" [color]=\"color\">{{label}}</mat-checkbox>"
79
+ },] }
80
+ ];
81
+ SdCheckbox.ctorParameters = () => [
82
+ { type: ChangeDetectorRef }
83
+ ];
84
+ SdCheckbox.propDecorators = {
85
+ name: [{ type: Input }],
86
+ form: [{ type: Input }],
87
+ label: [{ type: Input }],
88
+ color: [{ type: Input }],
89
+ disabled: [{ type: Input }],
90
+ model: [{ type: Input }],
91
+ modelChange: [{ type: Output }],
92
+ sdChange: [{ type: Output }]
93
+ };
94
+
95
+ class SdCheckboxModule {
96
+ }
97
+ SdCheckboxModule.decorators = [
98
+ { type: NgModule, args: [{
99
+ imports: [
100
+ CommonModule,
101
+ FormsModule,
102
+ ReactiveFormsModule,
103
+ MatFormFieldModule,
104
+ MatCheckboxModule
105
+ ],
106
+ declarations: [
107
+ SdCheckbox
108
+ ],
109
+ exports: [
110
+ SdCheckbox
111
+ ]
112
+ },] }
113
+ ];
114
+
115
+ /**
116
+ * Generated bundle index. Do not edit.
117
+ */
118
+
119
+ export { SdCheckboxModule, SdCheckbox as ɵa };
120
+ //# sourceMappingURL=sd-angular-core-checkbox.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sd-angular-core-checkbox.js","sources":["../../../../projects/sd-core/checkbox/src/lib/checkbox.component.ts","../../../../projects/sd-core/checkbox/src/lib/checkbox.module.ts","../../../../projects/sd-core/checkbox/sd-angular-core-checkbox.ts"],"sourcesContent":["import { Component, Input, Output, EventEmitter, ChangeDetectorRef, OnDestroy, OnInit, AfterViewInit } from '@angular/core';\r\nimport { FormControl, FormGroup, NgForm } from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport * as uuid from 'uuid';\r\n\r\n@Component({\r\n selector: 'sd-checkbox',\r\n templateUrl: './checkbox.component.html'\r\n})\r\nexport class SdCheckbox implements OnDestroy, OnInit, AfterViewInit {\r\n id = `I${uuid.v4()}`;\r\n #name = uuid.v4();\r\n @Input() set name(val: string) {\r\n if (val) {\r\n this.#name = val;\r\n }\r\n }\r\n #form: FormGroup;\r\n @Input() set form(val: NgForm | FormGroup) {\r\n if (val) {\r\n if (val instanceof NgForm) {\r\n this.#form = val.form;\r\n } else {\r\n this.#form = val;\r\n }\r\n }\r\n }\r\n formControl = new FormControl();\r\n #subscription = new Subscription();\r\n @Input() label: string;\r\n @Input() color: 'primary' | 'warn' = 'primary';\r\n @Input() set disabled(val: boolean | '') {\r\n val = (val === '') || val;\r\n if (val) {\r\n this.formControl.disable();\r\n } else {\r\n this.formControl.enable();\r\n }\r\n }\r\n #model: any;\r\n @Input() set model(value: any) {\r\n if (this.#model !== value) {\r\n this.#model = value;\r\n this.formControl.setValue(value, {\r\n emitEvent: false\r\n });\r\n }\r\n }\r\n @Output() modelChange = new EventEmitter();\r\n @Output() sdChange = new EventEmitter<any>();\r\n constructor(\r\n private ref: ChangeDetectorRef) {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.formControl.valueChanges.subscribe(this.#onChange));\r\n this.#form?.addControl(this.#name, this.formControl);\r\n this.ref.detectChanges();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.#form?.removeControl(this.#name);\r\n this.#subscription.unsubscribe();\r\n }\r\n\r\n #onChange = (value: any) => {\r\n this.modelChange.emit(value);\r\n this.sdChange.emit(value);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { SdCheckbox } from './checkbox.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatCheckboxModule\r\n ],\r\n declarations: [\r\n SdCheckbox\r\n ],\r\n exports: [\r\n SdCheckbox\r\n ]\r\n})\r\nexport class SdCheckboxModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n\nexport {SdCheckbox as ɵa} from './src/lib/checkbox.component';"],"names":["uuid.v4"],"mappings":";;;;;;;;;;MASa,UAAU;IAyCrB,YACU,GAAsB;QAAtB,QAAG,GAAH,GAAG,CAAmB;QAzChC,OAAE,GAAG,IAAIA,EAAO,EAAE,EAAE,CAAC;QACrB,gBAAQA,EAAO,EAAE,EAAC;QAMlB,wBAAiB;QAUjB,gBAAW,GAAG,IAAI,WAAW,EAAE,CAAC;QAChC,wBAAgB,IAAI,YAAY,EAAE,EAAC;QAE1B,UAAK,GAAuB,SAAS,CAAC;QAS/C,yBAAY;QASF,gBAAW,GAAG,IAAI,YAAY,EAAE,CAAC;QACjC,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAmB7C,oBAAY,CAAC,KAAU;YACrB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC3B,EAAA;KAnBA;IAxCD,IAAa,IAAI,CAAC,GAAW;QAC3B,IAAI,GAAG,EAAE;YACP,uBAAA,IAAI,SAAS,GAAG,EAAC;SAClB;KACF;IAED,IAAa,IAAI,CAAC,GAAuB;QACvC,IAAI,GAAG,EAAE;YACP,IAAI,GAAG,YAAY,MAAM,EAAE;gBACzB,uBAAA,IAAI,SAAS,GAAG,CAAC,IAAI,EAAC;aACvB;iBAAM;gBACL,uBAAA,IAAI,SAAS,GAAG,EAAC;aAClB;SACF;KACF;IAKD,IAAa,QAAQ,CAAC,GAAiB;QACrC,GAAG,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,GAAG,CAAC;QAC1B,IAAI,GAAG,EAAE;YACP,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;SAC5B;aAAM;YACL,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;SAC3B;KACF;IAED,IAAa,KAAK,CAAC,KAAU;QAC3B,IAAI,yCAAgB,KAAK,EAAE;YACzB,uBAAA,IAAI,UAAU,KAAK,EAAC;YACpB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,EAAE;gBAC/B,SAAS,EAAE,KAAK;aACjB,CAAC,CAAC;SACJ;KACF;IAOD,QAAQ;KACP;IAED,eAAe;;QACb,4CAAmB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,SAAS,yCAAgB,CAAC,CAAC;QAChF,mFAAY,UAAU,sCAAa,IAAI,CAAC,WAAW,EAAE;QACrD,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAED,WAAW;;QACT,mFAAY,aAAa,sCAAa;QACtC,4CAAmB,WAAW,EAAE,CAAC;KAClC;;;;YA7DF,SAAS,SAAC;gBACT,QAAQ,EAAE,aAAa;gBACvB,kGAAwC;aACzC;;;YARgD,iBAAiB;;;mBAY/D,KAAK;mBAML,KAAK;oBAWL,KAAK;oBACL,KAAK;uBACL,KAAK;oBASL,KAAK;0BAQL,MAAM;uBACN,MAAM;;;MC3BI,gBAAgB;;;YAf5B,QAAQ,SAAC;gBACR,OAAO,EAAE;oBACP,YAAY;oBACZ,WAAW;oBACX,mBAAmB;oBACnB,kBAAkB;oBAClB,iBAAiB;iBAClB;gBACD,YAAY,EAAE;oBACZ,UAAU;iBACX;gBACD,OAAO,EAAE;oBACP,UAAU;iBACX;aACF;;;ACrBD;;;;;;"}
1
+ {"version":3,"file":"sd-angular-core-checkbox.js","sources":["../../../../projects/sd-core/checkbox/src/lib/checkbox.component.ts","../../../../projects/sd-core/checkbox/src/lib/checkbox.module.ts","../../../../projects/sd-core/checkbox/sd-angular-core-checkbox.ts"],"names":["uuid.v4"],"mappings":"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","sourcesContent":["import { Component, Input, Output, EventEmitter, ChangeDetectorRef, OnDestroy, OnInit, AfterViewInit } from '@angular/core';\r\nimport { FormControl, FormGroup, NgForm } from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport * as uuid from 'uuid';\r\n\r\n@Component({\r\n selector: 'sd-checkbox',\r\n templateUrl: './checkbox.component.html'\r\n})\r\nexport class SdCheckbox implements OnDestroy, OnInit, AfterViewInit {\r\n id = `I${uuid.v4()}`;\r\n #name = uuid.v4();\r\n @Input() set name(val: string) {\r\n if (val) {\r\n this.#name = val;\r\n }\r\n }\r\n #form: FormGroup;\r\n @Input() set form(val: NgForm | FormGroup) {\r\n if (val) {\r\n if (val instanceof NgForm) {\r\n this.#form = val.form;\r\n } else {\r\n this.#form = val;\r\n }\r\n }\r\n }\r\n formControl = new FormControl();\r\n #subscription = new Subscription();\r\n @Input() label: string;\r\n @Input() color: 'primary' | 'warn' = 'primary';\r\n @Input() set disabled(val: boolean | '') {\r\n val = (val === '') || val;\r\n if (val) {\r\n this.formControl.disable();\r\n } else {\r\n this.formControl.enable();\r\n }\r\n }\r\n #model: any;\r\n @Input() set model(value: any) {\r\n if (this.#model !== value) {\r\n this.#model = value;\r\n this.formControl.setValue(value, {\r\n emitEvent: false\r\n });\r\n }\r\n }\r\n @Output() modelChange = new EventEmitter();\r\n @Output() sdChange = new EventEmitter<any>();\r\n constructor(\r\n private ref: ChangeDetectorRef) {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.formControl.valueChanges.subscribe(this.#onChange));\r\n this.#form?.addControl(this.#name, this.formControl);\r\n this.ref.detectChanges();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.#form?.removeControl(this.#name);\r\n this.#subscription.unsubscribe();\r\n }\r\n\r\n #onChange = (value: any) => {\r\n this.modelChange.emit(value);\r\n this.sdChange.emit(value);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { SdCheckbox } from './checkbox.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatCheckboxModule\r\n ],\r\n declarations: [\r\n SdCheckbox\r\n ],\r\n exports: [\r\n SdCheckbox\r\n ]\r\n})\r\nexport class SdCheckboxModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n\nexport {SdCheckbox as ɵa} from './src/lib/checkbox.component';"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sd-angular-core-checkbox.js","sources":["../../../../projects/sd-core/checkbox/src/lib/checkbox.component.ts","../../../../projects/sd-core/checkbox/src/lib/checkbox.module.ts","../../../../projects/sd-core/checkbox/sd-angular-core-checkbox.ts"],"sourcesContent":["import { Component, Input, Output, EventEmitter, ChangeDetectorRef, OnDestroy, OnInit, AfterViewInit } from '@angular/core';\r\nimport { FormControl, FormGroup, NgForm } from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport * as uuid from 'uuid';\r\n\r\n@Component({\r\n selector: 'sd-checkbox',\r\n templateUrl: './checkbox.component.html'\r\n})\r\nexport class SdCheckbox implements OnDestroy, OnInit, AfterViewInit {\r\n id = `I${uuid.v4()}`;\r\n #name = uuid.v4();\r\n @Input() set name(val: string) {\r\n if (val) {\r\n this.#name = val;\r\n }\r\n }\r\n #form: FormGroup;\r\n @Input() set form(val: NgForm | FormGroup) {\r\n if (val) {\r\n if (val instanceof NgForm) {\r\n this.#form = val.form;\r\n } else {\r\n this.#form = val;\r\n }\r\n }\r\n }\r\n formControl = new FormControl();\r\n #subscription = new Subscription();\r\n @Input() label: string;\r\n @Input() color: 'primary' | 'warn' = 'primary';\r\n @Input() set disabled(val: boolean | '') {\r\n val = (val === '') || val;\r\n if (val) {\r\n this.formControl.disable();\r\n } else {\r\n this.formControl.enable();\r\n }\r\n }\r\n #model: any;\r\n @Input() set model(value: any) {\r\n if (this.#model !== value) {\r\n this.#model = value;\r\n this.formControl.setValue(value, {\r\n emitEvent: false\r\n });\r\n }\r\n }\r\n @Output() modelChange = new EventEmitter();\r\n @Output() sdChange = new EventEmitter<any>();\r\n constructor(\r\n private ref: ChangeDetectorRef) {\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.formControl.valueChanges.subscribe(this.#onChange));\r\n this.#form?.addControl(this.#name, this.formControl);\r\n this.ref.detectChanges();\r\n }\r\n\r\n ngOnDestroy() {\r\n this.#form?.removeControl(this.#name);\r\n this.#subscription.unsubscribe();\r\n }\r\n\r\n #onChange = (value: any) => {\r\n this.modelChange.emit(value);\r\n this.sdChange.emit(value);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { SdCheckbox } from './checkbox.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatFormFieldModule,\r\n MatCheckboxModule\r\n ],\r\n declarations: [\r\n SdCheckbox\r\n ],\r\n exports: [\r\n SdCheckbox\r\n ]\r\n})\r\nexport class SdCheckboxModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n\nexport {SdCheckbox as ɵa} from './src/lib/checkbox.component';"],"names":["uuid.v4"],"mappings":";;;;;;;;;;MASa,UAAU;IAyCrB,YACU,GAAsB;QAAtB,QAAG,GAAH,GAAG,CAAmB;QAzChC,OAAE,GAAG,IAAIA,EAAO,EAAE,EAAE,CAAC;QACrB,gBAAQA,EAAO,EAAE,EAAC;QAMlB,wBAAiB;QAUjB,gBAAW,GAAG,IAAI,WAAW,EAAE,CAAC;QAChC,wBAAgB,IAAI,YAAY,EAAE,EAAC;QAE1B,UAAK,GAAuB,SAAS,CAAC;QAS/C,yBAAY;QASF,gBAAW,GAAG,IAAI,YAAY,EAAE,CAAC;QACjC,aAAQ,GAAG,IAAI,YAAY,EAAO,CAAC;QAmB7C,oBAAY,CAAC,KAAU;YACrB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC3B,EAAA;KAnBA;IAxCD,IAAa,IAAI,CAAC,GAAW;QAC3B,IAAI,GAAG,EAAE;YACP,uBAAA,IAAI,SAAS,GAAG,EAAC;SAClB;KACF;IAED,IAAa,IAAI,CAAC,GAAuB;QACvC,IAAI,GAAG,EAAE;YACP,IAAI,GAAG,YAAY,MAAM,EAAE;gBACzB,uBAAA,IAAI,SAAS,GAAG,CAAC,IAAI,EAAC;aACvB;iBAAM;gBACL,uBAAA,IAAI,SAAS,GAAG,EAAC;aAClB;SACF;KACF;IAKD,IAAa,QAAQ,CAAC,GAAiB;QACrC,GAAG,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,GAAG,CAAC;QAC1B,IAAI,GAAG,EAAE;YACP,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;SAC5B;aAAM;YACL,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;SAC3B;KACF;IAED,IAAa,KAAK,CAAC,KAAU;QAC3B,IAAI,yCAAgB,KAAK,EAAE;YACzB,uBAAA,IAAI,UAAU,KAAK,EAAC;YACpB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,EAAE;gBAC/B,SAAS,EAAE,KAAK;aACjB,CAAC,CAAC;SACJ;KACF;IAOD,QAAQ;KACP;IAED,eAAe;;QACb,4CAAmB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,SAAS,yCAAgB,CAAC,CAAC;QAChF,mFAAY,UAAU,sCAAa,IAAI,CAAC,WAAW,EAAE;QACrD,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;KAC1B;IAED,WAAW;;QACT,mFAAY,aAAa,sCAAa;QACtC,4CAAmB,WAAW,EAAE,CAAC;KAClC;;;;YA7DF,SAAS,SAAC;gBACT,QAAQ,EAAE,aAAa;gBACvB,kGAAwC;aACzC;;;YARgD,iBAAiB;;;mBAY/D,KAAK;mBAML,KAAK;oBAWL,KAAK;oBACL,KAAK;uBACL,KAAK;oBASL,KAAK;0BAQL,MAAM;uBACN,MAAM;;;MC3BI,gBAAgB;;;YAf5B,QAAQ,SAAC;gBACR,OAAO,EAAE;oBACP,YAAY;oBACZ,WAAW;oBACX,mBAAmB;oBACnB,kBAAkB;oBAClB,iBAAiB;iBAClB;gBACD,YAAY,EAAE;oBACZ,UAAU;iBACX;gBACD,OAAO,EAAE;oBACP,UAAU;iBACX;aACF;;;ACrBD;;;;;;"}
@@ -629,4 +629,5 @@ SdChipModule.decorators = [
629
629
  */
630
630
 
631
631
  export { SdChip, SdChipDisplayDef, SdChipModule, SdRemovableChipPipe as ɵa };
632
- //# sourceMappingURL=sd-angular-core-chip.js.map
632
+
633
+ //# sourceMappingURL=sd-angular-core-chip.js.map