@sd-angular/core 1.2.87 → 1.2.88

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 (786) hide show
  1. package/api/package.json +1 -12
  2. package/api/sd-angular-core-api.d.ts +0 -2
  3. package/autocomplete/package.json +1 -12
  4. package/autocomplete/sd-angular-core-autocomplete.d.ts +0 -2
  5. package/badge/package.json +1 -12
  6. package/badge/sd-angular-core-badge.d.ts +0 -2
  7. package/bundles/sd-angular-core-api.umd.js +1 -2
  8. package/bundles/sd-angular-core-api.umd.js.map +1 -1
  9. package/bundles/sd-angular-core-autocomplete.umd.js +1 -2
  10. package/bundles/sd-angular-core-autocomplete.umd.js.map +1 -1
  11. package/bundles/sd-angular-core-badge.umd.js +1 -2
  12. package/bundles/sd-angular-core-badge.umd.js.map +1 -1
  13. package/bundles/sd-angular-core-button.umd.js +1 -2
  14. package/bundles/sd-angular-core-button.umd.js.map +1 -1
  15. package/bundles/sd-angular-core-cache.umd.js +1 -2
  16. package/bundles/sd-angular-core-cache.umd.js.map +1 -1
  17. package/bundles/sd-angular-core-chart.umd.js +1 -2
  18. package/bundles/sd-angular-core-chart.umd.js.map +1 -1
  19. package/bundles/sd-angular-core-checkbox.umd.js +1 -2
  20. package/bundles/sd-angular-core-checkbox.umd.js.map +1 -1
  21. package/bundles/sd-angular-core-chip.umd.js +1 -2
  22. package/bundles/sd-angular-core-chip.umd.js.map +1 -1
  23. package/bundles/sd-angular-core-comment.umd.js +2 -3
  24. package/bundles/sd-angular-core-comment.umd.js.map +1 -1
  25. package/bundles/sd-angular-core-comment.umd.min.js +1 -1
  26. package/bundles/sd-angular-core-comment.umd.min.js.map +1 -1
  27. package/bundles/sd-angular-core-common.umd.js +1 -2
  28. package/bundles/sd-angular-core-common.umd.js.map +1 -1
  29. package/bundles/sd-angular-core-confirm.umd.js +1 -2
  30. package/bundles/sd-angular-core-confirm.umd.js.map +1 -1
  31. package/bundles/sd-angular-core-date-month.umd.js +1 -2
  32. package/bundles/sd-angular-core-date-month.umd.js.map +1 -1
  33. package/bundles/sd-angular-core-date-range.umd.js +1 -2
  34. package/bundles/sd-angular-core-date-range.umd.js.map +1 -1
  35. package/bundles/sd-angular-core-date-time.umd.js +1 -2
  36. package/bundles/sd-angular-core-date-time.umd.js.map +1 -1
  37. package/bundles/sd-angular-core-db.umd.js +1 -2
  38. package/bundles/sd-angular-core-db.umd.js.map +1 -1
  39. package/bundles/sd-angular-core-dynamic-report.umd.js +1 -2
  40. package/bundles/sd-angular-core-dynamic-report.umd.js.map +1 -1
  41. package/bundles/sd-angular-core-editor.umd.js +164 -118
  42. package/bundles/sd-angular-core-editor.umd.js.map +1 -1
  43. package/bundles/sd-angular-core-editor.umd.min.js +2 -2
  44. package/bundles/sd-angular-core-editor.umd.min.js.map +1 -1
  45. package/bundles/sd-angular-core-excel.umd.js +1 -2
  46. package/bundles/sd-angular-core-excel.umd.js.map +1 -1
  47. package/bundles/sd-angular-core-export.umd.js +1 -2
  48. package/bundles/sd-angular-core-export.umd.js.map +1 -1
  49. package/bundles/sd-angular-core-form.umd.js +1 -2
  50. package/bundles/sd-angular-core-form.umd.js.map +1 -1
  51. package/bundles/sd-angular-core-grid-material.umd.js +1 -2
  52. package/bundles/sd-angular-core-grid-material.umd.js.map +1 -1
  53. package/bundles/sd-angular-core-group.umd.js +1 -2
  54. package/bundles/sd-angular-core-group.umd.js.map +1 -1
  55. package/bundles/sd-angular-core-header-title.umd.js +1 -2
  56. package/bundles/sd-angular-core-header-title.umd.js.map +1 -1
  57. package/bundles/sd-angular-core-image-preview.umd.js +1 -2
  58. package/bundles/sd-angular-core-image-preview.umd.js.map +1 -1
  59. package/bundles/sd-angular-core-input-currency.umd.js +1 -2
  60. package/bundles/sd-angular-core-input-currency.umd.js.map +1 -1
  61. package/bundles/sd-angular-core-input-dropdown.umd.js +1 -2
  62. package/bundles/sd-angular-core-input-dropdown.umd.js.map +1 -1
  63. package/bundles/sd-angular-core-input-number.umd.js +1 -2
  64. package/bundles/sd-angular-core-input-number.umd.js.map +1 -1
  65. package/bundles/sd-angular-core-input-upload-file.umd.js +1 -2
  66. package/bundles/sd-angular-core-input-upload-file.umd.js.map +1 -1
  67. package/bundles/sd-angular-core-input.umd.js +1 -2
  68. package/bundles/sd-angular-core-input.umd.js.map +1 -1
  69. package/bundles/sd-angular-core-json-editor.umd.js +1 -2
  70. package/bundles/sd-angular-core-json-editor.umd.js.map +1 -1
  71. package/bundles/sd-angular-core-konva.umd.js +1 -2
  72. package/bundles/sd-angular-core-konva.umd.js.map +1 -1
  73. package/bundles/sd-angular-core-label.umd.js +1 -2
  74. package/bundles/sd-angular-core-label.umd.js.map +1 -1
  75. package/bundles/sd-angular-core-loading.umd.js +1 -2
  76. package/bundles/sd-angular-core-loading.umd.js.map +1 -1
  77. package/bundles/sd-angular-core-modal-resizable.umd.js +1 -2
  78. package/bundles/sd-angular-core-modal-resizable.umd.js.map +1 -1
  79. package/bundles/sd-angular-core-modal.umd.js +1 -2
  80. package/bundles/sd-angular-core-modal.umd.js.map +1 -1
  81. package/bundles/sd-angular-core-notify.umd.js +1 -2
  82. package/bundles/sd-angular-core-notify.umd.js.map +1 -1
  83. package/bundles/sd-angular-core-popover.umd.js +1 -2
  84. package/bundles/sd-angular-core-popover.umd.js.map +1 -1
  85. package/bundles/sd-angular-core-quick-action.umd.js +1 -2
  86. package/bundles/sd-angular-core-quick-action.umd.js.map +1 -1
  87. package/bundles/sd-angular-core-radio.umd.js +1 -2
  88. package/bundles/sd-angular-core-radio.umd.js.map +1 -1
  89. package/bundles/sd-angular-core-select-badge.umd.js +1 -2
  90. package/bundles/sd-angular-core-select-badge.umd.js.map +1 -1
  91. package/bundles/sd-angular-core-select-editor.umd.js +1 -2
  92. package/bundles/sd-angular-core-select-editor.umd.js.map +1 -1
  93. package/bundles/sd-angular-core-select.umd.js +1 -2
  94. package/bundles/sd-angular-core-select.umd.js.map +1 -1
  95. package/bundles/sd-angular-core-service.umd.js +1 -2
  96. package/bundles/sd-angular-core-service.umd.js.map +1 -1
  97. package/bundles/sd-angular-core-setting.umd.js +1 -2
  98. package/bundles/sd-angular-core-setting.umd.js.map +1 -1
  99. package/bundles/sd-angular-core-side-drawer.umd.js +1 -2
  100. package/bundles/sd-angular-core-side-drawer.umd.js.map +1 -1
  101. package/bundles/sd-angular-core-switch.umd.js +1 -2
  102. package/bundles/sd-angular-core-switch.umd.js.map +1 -1
  103. package/bundles/sd-angular-core-tab-router.umd.js +1 -2
  104. package/bundles/sd-angular-core-tab-router.umd.js.map +1 -1
  105. package/bundles/sd-angular-core-textarea.umd.js +1 -2
  106. package/bundles/sd-angular-core-textarea.umd.js.map +1 -1
  107. package/bundles/sd-angular-core-time.umd.js +1 -2
  108. package/bundles/sd-angular-core-time.umd.js.map +1 -1
  109. package/bundles/sd-angular-core-timeline.umd.js +1 -2
  110. package/bundles/sd-angular-core-timeline.umd.js.map +1 -1
  111. package/bundles/sd-angular-core-translate.umd.js +1 -2
  112. package/bundles/sd-angular-core-translate.umd.js.map +1 -1
  113. package/bundles/sd-angular-core-upload-excel.umd.js +1 -2
  114. package/bundles/sd-angular-core-upload-excel.umd.js.map +1 -1
  115. package/bundles/sd-angular-core-upload-file.umd.js +1 -2
  116. package/bundles/sd-angular-core-upload-file.umd.js.map +1 -1
  117. package/bundles/sd-angular-core-utility.umd.js +1 -2
  118. package/bundles/sd-angular-core-utility.umd.js.map +1 -1
  119. package/bundles/sd-angular-core-view.umd.js +1 -2
  120. package/bundles/sd-angular-core-view.umd.js.map +1 -1
  121. package/button/package.json +1 -12
  122. package/button/sd-angular-core-button.d.ts +0 -2
  123. package/cache/package.json +1 -12
  124. package/cache/sd-angular-core-cache.d.ts +0 -2
  125. package/chart/package.json +1 -12
  126. package/chart/sd-angular-core-chart.d.ts +0 -2
  127. package/checkbox/package.json +1 -12
  128. package/checkbox/sd-angular-core-checkbox.d.ts +0 -2
  129. package/chip/package.json +1 -12
  130. package/chip/sd-angular-core-chip.d.ts +0 -2
  131. package/comment/package.json +1 -12
  132. package/comment/sd-angular-core-comment.d.ts +0 -2
  133. package/comment/sd-angular-core-comment.metadata.json +1 -1
  134. package/comment/src/lib/comment.model.d.ts +1 -2
  135. package/common/package.json +1 -12
  136. package/common/sd-angular-core-common.d.ts +0 -2
  137. package/confirm/package.json +1 -12
  138. package/confirm/sd-angular-core-confirm.d.ts +0 -2
  139. package/date-month/package.json +1 -12
  140. package/date-month/sd-angular-core-date-month.d.ts +0 -2
  141. package/date-range/package.json +1 -12
  142. package/date-range/sd-angular-core-date-range.d.ts +0 -2
  143. package/date-time/package.json +1 -12
  144. package/date-time/sd-angular-core-date-time.d.ts +0 -2
  145. package/db/package.json +1 -12
  146. package/db/sd-angular-core-db.d.ts +0 -2
  147. package/dynamic-report/package.json +1 -12
  148. package/dynamic-report/sd-angular-core-dynamic-report.d.ts +0 -2
  149. package/editor/package.json +1 -12
  150. package/editor/sd-angular-core-editor.d.ts +0 -2
  151. package/editor/sd-angular-core-editor.metadata.json +1 -1
  152. package/editor/src/lib/editor.component.d.ts +0 -3
  153. package/editor/src/lib/editor.model.d.ts +12 -2
  154. package/esm2015/api/sd-angular-core-api.js +1 -1
  155. package/esm2015/autocomplete/sd-angular-core-autocomplete.js +1 -1
  156. package/esm2015/badge/sd-angular-core-badge.js +1 -1
  157. package/esm2015/button/sd-angular-core-button.js +1 -1
  158. package/esm2015/cache/sd-angular-core-cache.js +1 -1
  159. package/esm2015/chart/sd-angular-core-chart.js +1 -1
  160. package/esm2015/checkbox/sd-angular-core-checkbox.js +1 -1
  161. package/esm2015/chip/sd-angular-core-chip.js +1 -1
  162. package/esm2015/comment/sd-angular-core-comment.js +1 -1
  163. package/esm2015/comment/src/lib/comment.component.js +2 -2
  164. package/esm2015/comment/src/lib/comment.model.js +1 -1
  165. package/esm2015/common/sd-angular-core-common.js +1 -1
  166. package/esm2015/confirm/sd-angular-core-confirm.js +1 -1
  167. package/esm2015/date-month/sd-angular-core-date-month.js +1 -1
  168. package/esm2015/date-range/sd-angular-core-date-range.js +1 -1
  169. package/esm2015/date-time/sd-angular-core-date-time.js +1 -1
  170. package/esm2015/db/sd-angular-core-db.js +1 -1
  171. package/esm2015/dynamic-report/sd-angular-core-dynamic-report.js +1 -1
  172. package/esm2015/editor/sd-angular-core-editor.js +1 -1
  173. package/esm2015/editor/src/lib/editor.component.js +149 -116
  174. package/esm2015/editor/src/lib/editor.model.js +1 -1
  175. package/esm2015/excel/sd-angular-core-excel.js +1 -1
  176. package/esm2015/export/sd-angular-core-export.js +1 -1
  177. package/esm2015/form/sd-angular-core-form.js +1 -1
  178. package/esm2015/grid-material/sd-angular-core-grid-material.js +1 -1
  179. package/esm2015/group/sd-angular-core-group.js +1 -1
  180. package/esm2015/header-title/sd-angular-core-header-title.js +1 -1
  181. package/esm2015/image-preview/sd-angular-core-image-preview.js +1 -1
  182. package/esm2015/input/sd-angular-core-input.js +1 -1
  183. package/esm2015/input-currency/sd-angular-core-input-currency.js +1 -1
  184. package/esm2015/input-dropdown/sd-angular-core-input-dropdown.js +1 -1
  185. package/esm2015/input-number/sd-angular-core-input-number.js +1 -1
  186. package/esm2015/input-upload-file/sd-angular-core-input-upload-file.js +1 -1
  187. package/esm2015/json-editor/sd-angular-core-json-editor.js +1 -1
  188. package/esm2015/konva/sd-angular-core-konva.js +1 -1
  189. package/esm2015/label/sd-angular-core-label.js +1 -1
  190. package/esm2015/loading/sd-angular-core-loading.js +1 -1
  191. package/esm2015/modal/sd-angular-core-modal.js +1 -1
  192. package/esm2015/modal-resizable/sd-angular-core-modal-resizable.js +1 -1
  193. package/esm2015/notify/sd-angular-core-notify.js +1 -1
  194. package/esm2015/popover/sd-angular-core-popover.js +1 -1
  195. package/esm2015/quick-action/sd-angular-core-quick-action.js +1 -1
  196. package/esm2015/radio/sd-angular-core-radio.js +1 -1
  197. package/esm2015/select/sd-angular-core-select.js +1 -1
  198. package/esm2015/select-badge/sd-angular-core-select-badge.js +1 -1
  199. package/esm2015/select-editor/sd-angular-core-select-editor.js +1 -1
  200. package/esm2015/service/sd-angular-core-service.js +1 -1
  201. package/esm2015/setting/sd-angular-core-setting.js +1 -1
  202. package/esm2015/side-drawer/sd-angular-core-side-drawer.js +1 -1
  203. package/esm2015/switch/sd-angular-core-switch.js +1 -1
  204. package/esm2015/tab-router/sd-angular-core-tab-router.js +1 -1
  205. package/esm2015/textarea/sd-angular-core-textarea.js +1 -1
  206. package/esm2015/time/sd-angular-core-time.js +1 -1
  207. package/esm2015/timeline/sd-angular-core-timeline.js +1 -1
  208. package/esm2015/translate/sd-angular-core-translate.js +1 -1
  209. package/esm2015/upload-excel/sd-angular-core-upload-excel.js +1 -1
  210. package/esm2015/upload-file/sd-angular-core-upload-file.js +1 -1
  211. package/esm2015/utility/sd-angular-core-utility.js +1 -1
  212. package/esm2015/view/sd-angular-core-view.js +1 -1
  213. package/excel/package.json +1 -12
  214. package/excel/sd-angular-core-excel.d.ts +0 -2
  215. package/export/package.json +1 -12
  216. package/export/sd-angular-core-export.d.ts +0 -2
  217. package/fesm2015/sd-angular-core-api.js +1 -2
  218. package/fesm2015/sd-angular-core-api.js.map +1 -1
  219. package/fesm2015/sd-angular-core-autocomplete.js +1 -2
  220. package/fesm2015/sd-angular-core-autocomplete.js.map +1 -1
  221. package/fesm2015/sd-angular-core-badge.js +1 -2
  222. package/fesm2015/sd-angular-core-badge.js.map +1 -1
  223. package/fesm2015/sd-angular-core-button.js +1 -2
  224. package/fesm2015/sd-angular-core-button.js.map +1 -1
  225. package/fesm2015/sd-angular-core-cache.js +1 -2
  226. package/fesm2015/sd-angular-core-cache.js.map +1 -1
  227. package/fesm2015/sd-angular-core-chart.js +1 -2
  228. package/fesm2015/sd-angular-core-chart.js.map +1 -1
  229. package/fesm2015/sd-angular-core-checkbox.js +1 -2
  230. package/fesm2015/sd-angular-core-checkbox.js.map +1 -1
  231. package/fesm2015/sd-angular-core-chip.js +1 -2
  232. package/fesm2015/sd-angular-core-chip.js.map +1 -1
  233. package/fesm2015/sd-angular-core-comment.js +2 -3
  234. package/fesm2015/sd-angular-core-comment.js.map +1 -1
  235. package/fesm2015/sd-angular-core-common.js +1 -2
  236. package/fesm2015/sd-angular-core-common.js.map +1 -1
  237. package/fesm2015/sd-angular-core-confirm.js +1 -2
  238. package/fesm2015/sd-angular-core-confirm.js.map +1 -1
  239. package/fesm2015/sd-angular-core-date-month.js +1 -2
  240. package/fesm2015/sd-angular-core-date-month.js.map +1 -1
  241. package/fesm2015/sd-angular-core-date-range.js +1 -2
  242. package/fesm2015/sd-angular-core-date-range.js.map +1 -1
  243. package/fesm2015/sd-angular-core-date-time.js +1 -2
  244. package/fesm2015/sd-angular-core-date-time.js.map +1 -1
  245. package/fesm2015/sd-angular-core-db.js +1 -2
  246. package/fesm2015/sd-angular-core-db.js.map +1 -1
  247. package/fesm2015/sd-angular-core-dynamic-report.js +1 -2
  248. package/fesm2015/sd-angular-core-dynamic-report.js.map +1 -1
  249. package/fesm2015/sd-angular-core-editor.js +149 -117
  250. package/fesm2015/sd-angular-core-editor.js.map +1 -1
  251. package/fesm2015/sd-angular-core-excel.js +1 -2
  252. package/fesm2015/sd-angular-core-excel.js.map +1 -1
  253. package/fesm2015/sd-angular-core-export.js +1 -2
  254. package/fesm2015/sd-angular-core-export.js.map +1 -1
  255. package/fesm2015/sd-angular-core-form.js +1 -2
  256. package/fesm2015/sd-angular-core-form.js.map +1 -1
  257. package/fesm2015/sd-angular-core-grid-material.js +1 -2
  258. package/fesm2015/sd-angular-core-grid-material.js.map +1 -1
  259. package/fesm2015/sd-angular-core-group.js +1 -2
  260. package/fesm2015/sd-angular-core-group.js.map +1 -1
  261. package/fesm2015/sd-angular-core-header-title.js +1 -2
  262. package/fesm2015/sd-angular-core-header-title.js.map +1 -1
  263. package/fesm2015/sd-angular-core-image-preview.js +1 -2
  264. package/fesm2015/sd-angular-core-image-preview.js.map +1 -1
  265. package/fesm2015/sd-angular-core-input-currency.js +1 -2
  266. package/fesm2015/sd-angular-core-input-currency.js.map +1 -1
  267. package/fesm2015/sd-angular-core-input-dropdown.js +1 -2
  268. package/fesm2015/sd-angular-core-input-dropdown.js.map +1 -1
  269. package/fesm2015/sd-angular-core-input-number.js +1 -2
  270. package/fesm2015/sd-angular-core-input-number.js.map +1 -1
  271. package/fesm2015/sd-angular-core-input-upload-file.js +1 -2
  272. package/fesm2015/sd-angular-core-input-upload-file.js.map +1 -1
  273. package/fesm2015/sd-angular-core-input.js +1 -2
  274. package/fesm2015/sd-angular-core-input.js.map +1 -1
  275. package/fesm2015/sd-angular-core-json-editor.js +1 -2
  276. package/fesm2015/sd-angular-core-json-editor.js.map +1 -1
  277. package/fesm2015/sd-angular-core-konva.js +1 -2
  278. package/fesm2015/sd-angular-core-konva.js.map +1 -1
  279. package/fesm2015/sd-angular-core-label.js +1 -2
  280. package/fesm2015/sd-angular-core-label.js.map +1 -1
  281. package/fesm2015/sd-angular-core-loading.js +1 -2
  282. package/fesm2015/sd-angular-core-loading.js.map +1 -1
  283. package/fesm2015/sd-angular-core-modal-resizable.js +1 -2
  284. package/fesm2015/sd-angular-core-modal-resizable.js.map +1 -1
  285. package/fesm2015/sd-angular-core-modal.js +1 -2
  286. package/fesm2015/sd-angular-core-modal.js.map +1 -1
  287. package/fesm2015/sd-angular-core-notify.js +1 -2
  288. package/fesm2015/sd-angular-core-notify.js.map +1 -1
  289. package/fesm2015/sd-angular-core-popover.js +1 -2
  290. package/fesm2015/sd-angular-core-popover.js.map +1 -1
  291. package/fesm2015/sd-angular-core-quick-action.js +1 -2
  292. package/fesm2015/sd-angular-core-quick-action.js.map +1 -1
  293. package/fesm2015/sd-angular-core-radio.js +1 -2
  294. package/fesm2015/sd-angular-core-radio.js.map +1 -1
  295. package/fesm2015/sd-angular-core-select-badge.js +1 -2
  296. package/fesm2015/sd-angular-core-select-badge.js.map +1 -1
  297. package/fesm2015/sd-angular-core-select-editor.js +1 -2
  298. package/fesm2015/sd-angular-core-select-editor.js.map +1 -1
  299. package/fesm2015/sd-angular-core-select.js +1 -2
  300. package/fesm2015/sd-angular-core-select.js.map +1 -1
  301. package/fesm2015/sd-angular-core-service.js +1 -2
  302. package/fesm2015/sd-angular-core-service.js.map +1 -1
  303. package/fesm2015/sd-angular-core-setting.js +1 -2
  304. package/fesm2015/sd-angular-core-setting.js.map +1 -1
  305. package/fesm2015/sd-angular-core-side-drawer.js +1 -2
  306. package/fesm2015/sd-angular-core-side-drawer.js.map +1 -1
  307. package/fesm2015/sd-angular-core-switch.js +1 -2
  308. package/fesm2015/sd-angular-core-switch.js.map +1 -1
  309. package/fesm2015/sd-angular-core-tab-router.js +1 -2
  310. package/fesm2015/sd-angular-core-tab-router.js.map +1 -1
  311. package/fesm2015/sd-angular-core-textarea.js +1 -2
  312. package/fesm2015/sd-angular-core-textarea.js.map +1 -1
  313. package/fesm2015/sd-angular-core-time.js +1 -2
  314. package/fesm2015/sd-angular-core-time.js.map +1 -1
  315. package/fesm2015/sd-angular-core-timeline.js +1 -2
  316. package/fesm2015/sd-angular-core-timeline.js.map +1 -1
  317. package/fesm2015/sd-angular-core-translate.js +1 -2
  318. package/fesm2015/sd-angular-core-translate.js.map +1 -1
  319. package/fesm2015/sd-angular-core-upload-excel.js +1 -2
  320. package/fesm2015/sd-angular-core-upload-excel.js.map +1 -1
  321. package/fesm2015/sd-angular-core-upload-file.js +1 -2
  322. package/fesm2015/sd-angular-core-upload-file.js.map +1 -1
  323. package/fesm2015/sd-angular-core-utility.js +1 -2
  324. package/fesm2015/sd-angular-core-utility.js.map +1 -1
  325. package/fesm2015/sd-angular-core-view.js +1 -2
  326. package/fesm2015/sd-angular-core-view.js.map +1 -1
  327. package/form/package.json +1 -12
  328. package/form/sd-angular-core-form.d.ts +0 -2
  329. package/grid-material/package.json +1 -12
  330. package/grid-material/sd-angular-core-grid-material.d.ts +0 -2
  331. package/group/package.json +1 -12
  332. package/group/sd-angular-core-group.d.ts +0 -2
  333. package/header-title/package.json +1 -12
  334. package/header-title/sd-angular-core-header-title.d.ts +0 -2
  335. package/image-preview/package.json +1 -12
  336. package/image-preview/sd-angular-core-image-preview.d.ts +0 -2
  337. package/input/package.json +1 -12
  338. package/input/sd-angular-core-input.d.ts +0 -2
  339. package/input-currency/package.json +1 -12
  340. package/input-currency/sd-angular-core-input-currency.d.ts +0 -2
  341. package/input-dropdown/package.json +1 -12
  342. package/input-dropdown/sd-angular-core-input-dropdown.d.ts +0 -2
  343. package/input-number/package.json +1 -12
  344. package/input-number/sd-angular-core-input-number.d.ts +0 -2
  345. package/input-upload-file/package.json +1 -12
  346. package/input-upload-file/sd-angular-core-input-upload-file.d.ts +0 -2
  347. package/json-editor/package.json +1 -12
  348. package/json-editor/sd-angular-core-json-editor.d.ts +0 -2
  349. package/konva/package.json +1 -12
  350. package/konva/sd-angular-core-konva.d.ts +0 -2
  351. package/label/package.json +1 -12
  352. package/label/sd-angular-core-label.d.ts +0 -2
  353. package/loading/package.json +1 -12
  354. package/loading/sd-angular-core-loading.d.ts +0 -2
  355. package/modal/package.json +1 -12
  356. package/modal/sd-angular-core-modal.d.ts +0 -2
  357. package/modal-resizable/package.json +1 -12
  358. package/modal-resizable/sd-angular-core-modal-resizable.d.ts +0 -2
  359. package/notify/package.json +1 -12
  360. package/notify/sd-angular-core-notify.d.ts +0 -2
  361. package/package.json +1 -1
  362. package/popover/package.json +1 -12
  363. package/popover/sd-angular-core-popover.d.ts +0 -2
  364. package/quick-action/package.json +1 -12
  365. package/quick-action/sd-angular-core-quick-action.d.ts +0 -2
  366. package/radio/package.json +1 -12
  367. package/radio/sd-angular-core-radio.d.ts +0 -2
  368. package/sd-angular-core-1.2.88.tgz +0 -0
  369. package/select/package.json +1 -12
  370. package/select/sd-angular-core-select.d.ts +0 -2
  371. package/select-badge/package.json +1 -12
  372. package/select-badge/sd-angular-core-select-badge.d.ts +0 -2
  373. package/select-editor/package.json +1 -12
  374. package/select-editor/sd-angular-core-select-editor.d.ts +0 -2
  375. package/service/package.json +1 -12
  376. package/service/sd-angular-core-service.d.ts +0 -2
  377. package/setting/package.json +1 -12
  378. package/setting/sd-angular-core-setting.d.ts +0 -2
  379. package/side-drawer/package.json +1 -12
  380. package/side-drawer/sd-angular-core-side-drawer.d.ts +0 -2
  381. package/switch/package.json +1 -12
  382. package/switch/sd-angular-core-switch.d.ts +0 -2
  383. package/tab-router/package.json +1 -12
  384. package/tab-router/sd-angular-core-tab-router.d.ts +0 -2
  385. package/textarea/package.json +1 -12
  386. package/textarea/sd-angular-core-textarea.d.ts +0 -2
  387. package/time/package.json +1 -12
  388. package/time/sd-angular-core-time.d.ts +0 -2
  389. package/timeline/package.json +1 -12
  390. package/timeline/sd-angular-core-timeline.d.ts +0 -2
  391. package/translate/package.json +1 -12
  392. package/translate/sd-angular-core-translate.d.ts +0 -2
  393. package/upload-excel/package.json +1 -12
  394. package/upload-excel/sd-angular-core-upload-excel.d.ts +0 -2
  395. package/upload-file/package.json +1 -12
  396. package/upload-file/sd-angular-core-upload-file.d.ts +0 -2
  397. package/utility/package.json +1 -12
  398. package/utility/sd-angular-core-utility.d.ts +0 -2
  399. package/view/package.json +1 -12
  400. package/view/sd-angular-core-view.d.ts +0 -2
  401. package/api/sd-angular-core-api.d.ts.__ivy_ngcc_bak +0 -4
  402. package/api/sd-angular-core-api.d.ts.map +0 -1
  403. package/autocomplete/sd-angular-core-autocomplete.d.ts.__ivy_ngcc_bak +0 -4
  404. package/autocomplete/sd-angular-core-autocomplete.d.ts.map +0 -1
  405. package/badge/sd-angular-core-badge.d.ts.__ivy_ngcc_bak +0 -4
  406. package/badge/sd-angular-core-badge.d.ts.map +0 -1
  407. package/bundles/sd-angular-core-api.umd.js.__ivy_ngcc_bak +0 -876
  408. package/bundles/sd-angular-core-api.umd.js.map.__ivy_ngcc_bak +0 -1
  409. package/bundles/sd-angular-core-autocomplete.umd.js.__ivy_ngcc_bak +0 -791
  410. package/bundles/sd-angular-core-autocomplete.umd.js.map.__ivy_ngcc_bak +0 -1
  411. package/bundles/sd-angular-core-badge.umd.js.__ivy_ngcc_bak +0 -89
  412. package/bundles/sd-angular-core-badge.umd.js.map.__ivy_ngcc_bak +0 -1
  413. package/bundles/sd-angular-core-button.umd.js.__ivy_ngcc_bak +0 -444
  414. package/bundles/sd-angular-core-button.umd.js.map.__ivy_ngcc_bak +0 -1
  415. package/bundles/sd-angular-core-cache.umd.js.__ivy_ngcc_bak +0 -623
  416. package/bundles/sd-angular-core-cache.umd.js.map.__ivy_ngcc_bak +0 -1
  417. package/bundles/sd-angular-core-chart.umd.js.__ivy_ngcc_bak +0 -1106
  418. package/bundles/sd-angular-core-chart.umd.js.map.__ivy_ngcc_bak +0 -1
  419. package/bundles/sd-angular-core-checkbox.umd.js.__ivy_ngcc_bak +0 -461
  420. package/bundles/sd-angular-core-checkbox.umd.js.map.__ivy_ngcc_bak +0 -1
  421. package/bundles/sd-angular-core-chip.umd.js.__ivy_ngcc_bak +0 -1051
  422. package/bundles/sd-angular-core-chip.umd.js.map.__ivy_ngcc_bak +0 -1
  423. package/bundles/sd-angular-core-comment.umd.js.__ivy_ngcc_bak +0 -456
  424. package/bundles/sd-angular-core-comment.umd.js.map.__ivy_ngcc_bak +0 -1
  425. package/bundles/sd-angular-core-common.umd.js.__ivy_ngcc_bak +0 -962
  426. package/bundles/sd-angular-core-common.umd.js.map.__ivy_ngcc_bak +0 -1
  427. package/bundles/sd-angular-core-confirm.umd.js.__ivy_ngcc_bak +0 -159
  428. package/bundles/sd-angular-core-confirm.umd.js.map.__ivy_ngcc_bak +0 -1
  429. package/bundles/sd-angular-core-date-month.umd.js.__ivy_ngcc_bak +0 -650
  430. package/bundles/sd-angular-core-date-month.umd.js.map.__ivy_ngcc_bak +0 -1
  431. package/bundles/sd-angular-core-date-range.umd.js.__ivy_ngcc_bak +0 -660
  432. package/bundles/sd-angular-core-date-range.umd.js.map.__ivy_ngcc_bak +0 -1
  433. package/bundles/sd-angular-core-date-time.umd.js.__ivy_ngcc_bak +0 -734
  434. package/bundles/sd-angular-core-date-time.umd.js.map.__ivy_ngcc_bak +0 -1
  435. package/bundles/sd-angular-core-db.umd.js.__ivy_ngcc_bak +0 -464
  436. package/bundles/sd-angular-core-db.umd.js.map.__ivy_ngcc_bak +0 -1
  437. package/bundles/sd-angular-core-dynamic-report.umd.js.__ivy_ngcc_bak +0 -96
  438. package/bundles/sd-angular-core-dynamic-report.umd.js.map.__ivy_ngcc_bak +0 -1
  439. package/bundles/sd-angular-core-editor.umd.js.__ivy_ngcc_bak +0 -888
  440. package/bundles/sd-angular-core-editor.umd.js.map.__ivy_ngcc_bak +0 -1
  441. package/bundles/sd-angular-core-excel.umd.js.__ivy_ngcc_bak +0 -500
  442. package/bundles/sd-angular-core-excel.umd.js.map.__ivy_ngcc_bak +0 -1
  443. package/bundles/sd-angular-core-export.umd.js.__ivy_ngcc_bak +0 -712
  444. package/bundles/sd-angular-core-export.umd.js.map.__ivy_ngcc_bak +0 -1
  445. package/bundles/sd-angular-core-form.umd.js.__ivy_ngcc_bak +0 -88
  446. package/bundles/sd-angular-core-form.umd.js.map.__ivy_ngcc_bak +0 -1
  447. package/bundles/sd-angular-core-grid-material.umd.js.__ivy_ngcc_bak +0 -5029
  448. package/bundles/sd-angular-core-grid-material.umd.js.map.__ivy_ngcc_bak +0 -1
  449. package/bundles/sd-angular-core-group.umd.js.__ivy_ngcc_bak +0 -93
  450. package/bundles/sd-angular-core-group.umd.js.map.__ivy_ngcc_bak +0 -1
  451. package/bundles/sd-angular-core-header-title.umd.js.__ivy_ngcc_bak +0 -56
  452. package/bundles/sd-angular-core-header-title.umd.js.map.__ivy_ngcc_bak +0 -1
  453. package/bundles/sd-angular-core-image-preview.umd.js.__ivy_ngcc_bak +0 -121
  454. package/bundles/sd-angular-core-image-preview.umd.js.map.__ivy_ngcc_bak +0 -1
  455. package/bundles/sd-angular-core-input-currency.umd.js.__ivy_ngcc_bak +0 -737
  456. package/bundles/sd-angular-core-input-currency.umd.js.map.__ivy_ngcc_bak +0 -1
  457. package/bundles/sd-angular-core-input-dropdown.umd.js.__ivy_ngcc_bak +0 -634
  458. package/bundles/sd-angular-core-input-dropdown.umd.js.map.__ivy_ngcc_bak +0 -1
  459. package/bundles/sd-angular-core-input-number.umd.js.__ivy_ngcc_bak +0 -792
  460. package/bundles/sd-angular-core-input-number.umd.js.map.__ivy_ngcc_bak +0 -1
  461. package/bundles/sd-angular-core-input-upload-file.umd.js.__ivy_ngcc_bak +0 -648
  462. package/bundles/sd-angular-core-input-upload-file.umd.js.map.__ivy_ngcc_bak +0 -1
  463. package/bundles/sd-angular-core-input.umd.js.__ivy_ngcc_bak +0 -798
  464. package/bundles/sd-angular-core-input.umd.js.map.__ivy_ngcc_bak +0 -1
  465. package/bundles/sd-angular-core-json-editor.umd.js.__ivy_ngcc_bak +0 -523
  466. package/bundles/sd-angular-core-json-editor.umd.js.map.__ivy_ngcc_bak +0 -1
  467. package/bundles/sd-angular-core-konva.umd.js.__ivy_ngcc_bak +0 -605
  468. package/bundles/sd-angular-core-konva.umd.js.map.__ivy_ngcc_bak +0 -1
  469. package/bundles/sd-angular-core-label.umd.js.__ivy_ngcc_bak +0 -60
  470. package/bundles/sd-angular-core-label.umd.js.map.__ivy_ngcc_bak +0 -1
  471. package/bundles/sd-angular-core-loading.umd.js.__ivy_ngcc_bak +0 -413
  472. package/bundles/sd-angular-core-loading.umd.js.map.__ivy_ngcc_bak +0 -1
  473. package/bundles/sd-angular-core-modal-resizable.umd.js.__ivy_ngcc_bak +0 -487
  474. package/bundles/sd-angular-core-modal-resizable.umd.js.map.__ivy_ngcc_bak +0 -1
  475. package/bundles/sd-angular-core-modal.umd.js.__ivy_ngcc_bak +0 -307
  476. package/bundles/sd-angular-core-modal.umd.js.map.__ivy_ngcc_bak +0 -1
  477. package/bundles/sd-angular-core-notify.umd.js.__ivy_ngcc_bak +0 -719
  478. package/bundles/sd-angular-core-notify.umd.js.map.__ivy_ngcc_bak +0 -1
  479. package/bundles/sd-angular-core-popover.umd.js.__ivy_ngcc_bak +0 -752
  480. package/bundles/sd-angular-core-popover.umd.js.map.__ivy_ngcc_bak +0 -1
  481. package/bundles/sd-angular-core-quick-action.umd.js.__ivy_ngcc_bak +0 -66
  482. package/bundles/sd-angular-core-quick-action.umd.js.map.__ivy_ngcc_bak +0 -1
  483. package/bundles/sd-angular-core-radio.umd.js.__ivy_ngcc_bak +0 -535
  484. package/bundles/sd-angular-core-radio.umd.js.map.__ivy_ngcc_bak +0 -1
  485. package/bundles/sd-angular-core-select-badge.umd.js.__ivy_ngcc_bak +0 -486
  486. package/bundles/sd-angular-core-select-badge.umd.js.map.__ivy_ngcc_bak +0 -1
  487. package/bundles/sd-angular-core-select-editor.umd.js.__ivy_ngcc_bak +0 -431
  488. package/bundles/sd-angular-core-select-editor.umd.js.map.__ivy_ngcc_bak +0 -1
  489. package/bundles/sd-angular-core-select.umd.js.__ivy_ngcc_bak +0 -921
  490. package/bundles/sd-angular-core-select.umd.js.map.__ivy_ngcc_bak +0 -1
  491. package/bundles/sd-angular-core-service.umd.js.__ivy_ngcc_bak +0 -42
  492. package/bundles/sd-angular-core-service.umd.js.map.__ivy_ngcc_bak +0 -1
  493. package/bundles/sd-angular-core-setting.umd.js.__ivy_ngcc_bak +0 -664
  494. package/bundles/sd-angular-core-setting.umd.js.map.__ivy_ngcc_bak +0 -1
  495. package/bundles/sd-angular-core-side-drawer.umd.js.__ivy_ngcc_bak +0 -438
  496. package/bundles/sd-angular-core-side-drawer.umd.js.map.__ivy_ngcc_bak +0 -1
  497. package/bundles/sd-angular-core-switch.umd.js.__ivy_ngcc_bak +0 -454
  498. package/bundles/sd-angular-core-switch.umd.js.map.__ivy_ngcc_bak +0 -1
  499. package/bundles/sd-angular-core-tab-router.umd.js.__ivy_ngcc_bak +0 -941
  500. package/bundles/sd-angular-core-tab-router.umd.js.map.__ivy_ngcc_bak +0 -1
  501. package/bundles/sd-angular-core-textarea.umd.js.__ivy_ngcc_bak +0 -642
  502. package/bundles/sd-angular-core-textarea.umd.js.map.__ivy_ngcc_bak +0 -1
  503. package/bundles/sd-angular-core-time.umd.js.__ivy_ngcc_bak +0 -497
  504. package/bundles/sd-angular-core-time.umd.js.map.__ivy_ngcc_bak +0 -1
  505. package/bundles/sd-angular-core-timeline.umd.js.__ivy_ngcc_bak +0 -102
  506. package/bundles/sd-angular-core-timeline.umd.js.map.__ivy_ngcc_bak +0 -1
  507. package/bundles/sd-angular-core-translate.umd.js.__ivy_ngcc_bak +0 -119
  508. package/bundles/sd-angular-core-translate.umd.js.map.__ivy_ngcc_bak +0 -1
  509. package/bundles/sd-angular-core-upload-excel.umd.js.__ivy_ngcc_bak +0 -1114
  510. package/bundles/sd-angular-core-upload-excel.umd.js.map.__ivy_ngcc_bak +0 -1
  511. package/bundles/sd-angular-core-upload-file.umd.js.__ivy_ngcc_bak +0 -880
  512. package/bundles/sd-angular-core-upload-file.umd.js.map.__ivy_ngcc_bak +0 -1
  513. package/bundles/sd-angular-core-utility.umd.js.__ivy_ngcc_bak +0 -708
  514. package/bundles/sd-angular-core-utility.umd.js.map.__ivy_ngcc_bak +0 -1
  515. package/bundles/sd-angular-core-view.umd.js.__ivy_ngcc_bak +0 -32
  516. package/bundles/sd-angular-core-view.umd.js.map.__ivy_ngcc_bak +0 -1
  517. package/button/sd-angular-core-button.d.ts.__ivy_ngcc_bak +0 -4
  518. package/button/sd-angular-core-button.d.ts.map +0 -1
  519. package/cache/sd-angular-core-cache.d.ts.__ivy_ngcc_bak +0 -4
  520. package/cache/sd-angular-core-cache.d.ts.map +0 -1
  521. package/chart/sd-angular-core-chart.d.ts.__ivy_ngcc_bak +0 -4
  522. package/chart/sd-angular-core-chart.d.ts.map +0 -1
  523. package/checkbox/sd-angular-core-checkbox.d.ts.__ivy_ngcc_bak +0 -5
  524. package/checkbox/sd-angular-core-checkbox.d.ts.map +0 -1
  525. package/chip/sd-angular-core-chip.d.ts.__ivy_ngcc_bak +0 -5
  526. package/chip/sd-angular-core-chip.d.ts.map +0 -1
  527. package/comment/sd-angular-core-comment.d.ts.__ivy_ngcc_bak +0 -4
  528. package/comment/sd-angular-core-comment.d.ts.map +0 -1
  529. package/common/sd-angular-core-common.d.ts.__ivy_ngcc_bak +0 -4
  530. package/common/sd-angular-core-common.d.ts.map +0 -1
  531. package/confirm/sd-angular-core-confirm.d.ts.__ivy_ngcc_bak +0 -4
  532. package/confirm/sd-angular-core-confirm.d.ts.map +0 -1
  533. package/date-month/sd-angular-core-date-month.d.ts.__ivy_ngcc_bak +0 -5
  534. package/date-month/sd-angular-core-date-month.d.ts.map +0 -1
  535. package/date-range/sd-angular-core-date-range.d.ts.__ivy_ngcc_bak +0 -4
  536. package/date-range/sd-angular-core-date-range.d.ts.map +0 -1
  537. package/date-time/sd-angular-core-date-time.d.ts.__ivy_ngcc_bak +0 -4
  538. package/date-time/sd-angular-core-date-time.d.ts.map +0 -1
  539. package/db/sd-angular-core-db.d.ts.__ivy_ngcc_bak +0 -4
  540. package/db/sd-angular-core-db.d.ts.map +0 -1
  541. package/dynamic-report/sd-angular-core-dynamic-report.d.ts.__ivy_ngcc_bak +0 -4
  542. package/dynamic-report/sd-angular-core-dynamic-report.d.ts.map +0 -1
  543. package/editor/sd-angular-core-editor.d.ts.__ivy_ngcc_bak +0 -4
  544. package/editor/sd-angular-core-editor.d.ts.map +0 -1
  545. package/esm2015/api/sd-angular-core-api.js.__ivy_ngcc_bak +0 -5
  546. package/esm2015/autocomplete/sd-angular-core-autocomplete.js.__ivy_ngcc_bak +0 -5
  547. package/esm2015/badge/sd-angular-core-badge.js.__ivy_ngcc_bak +0 -5
  548. package/esm2015/button/sd-angular-core-button.js.__ivy_ngcc_bak +0 -5
  549. package/esm2015/cache/sd-angular-core-cache.js.__ivy_ngcc_bak +0 -5
  550. package/esm2015/chart/sd-angular-core-chart.js.__ivy_ngcc_bak +0 -5
  551. package/esm2015/checkbox/sd-angular-core-checkbox.js.__ivy_ngcc_bak +0 -6
  552. package/esm2015/chip/sd-angular-core-chip.js.__ivy_ngcc_bak +0 -6
  553. package/esm2015/comment/sd-angular-core-comment.js.__ivy_ngcc_bak +0 -5
  554. package/esm2015/common/sd-angular-core-common.js.__ivy_ngcc_bak +0 -5
  555. package/esm2015/confirm/sd-angular-core-confirm.js.__ivy_ngcc_bak +0 -5
  556. package/esm2015/date-month/sd-angular-core-date-month.js.__ivy_ngcc_bak +0 -6
  557. package/esm2015/date-range/sd-angular-core-date-range.js.__ivy_ngcc_bak +0 -5
  558. package/esm2015/date-time/sd-angular-core-date-time.js.__ivy_ngcc_bak +0 -5
  559. package/esm2015/db/sd-angular-core-db.js.__ivy_ngcc_bak +0 -5
  560. package/esm2015/dynamic-report/sd-angular-core-dynamic-report.js.__ivy_ngcc_bak +0 -5
  561. package/esm2015/editor/sd-angular-core-editor.js.__ivy_ngcc_bak +0 -5
  562. package/esm2015/excel/sd-angular-core-excel.js.__ivy_ngcc_bak +0 -5
  563. package/esm2015/export/sd-angular-core-export.js.__ivy_ngcc_bak +0 -5
  564. package/esm2015/form/sd-angular-core-form.js.__ivy_ngcc_bak +0 -5
  565. package/esm2015/grid-material/sd-angular-core-grid-material.js.__ivy_ngcc_bak +0 -47
  566. package/esm2015/group/sd-angular-core-group.js.__ivy_ngcc_bak +0 -6
  567. package/esm2015/header-title/sd-angular-core-header-title.js.__ivy_ngcc_bak +0 -6
  568. package/esm2015/image-preview/sd-angular-core-image-preview.js.__ivy_ngcc_bak +0 -7
  569. package/esm2015/input/sd-angular-core-input.js.__ivy_ngcc_bak +0 -6
  570. package/esm2015/input-currency/sd-angular-core-input-currency.js.__ivy_ngcc_bak +0 -5
  571. package/esm2015/input-dropdown/sd-angular-core-input-dropdown.js.__ivy_ngcc_bak +0 -5
  572. package/esm2015/input-number/sd-angular-core-input-number.js.__ivy_ngcc_bak +0 -5
  573. package/esm2015/input-upload-file/sd-angular-core-input-upload-file.js.__ivy_ngcc_bak +0 -5
  574. package/esm2015/json-editor/sd-angular-core-json-editor.js.__ivy_ngcc_bak +0 -5
  575. package/esm2015/konva/sd-angular-core-konva.js.__ivy_ngcc_bak +0 -5
  576. package/esm2015/label/sd-angular-core-label.js.__ivy_ngcc_bak +0 -6
  577. package/esm2015/loading/sd-angular-core-loading.js.__ivy_ngcc_bak +0 -5
  578. package/esm2015/modal/sd-angular-core-modal.js.__ivy_ngcc_bak +0 -5
  579. package/esm2015/modal-resizable/sd-angular-core-modal-resizable.js.__ivy_ngcc_bak +0 -5
  580. package/esm2015/notify/sd-angular-core-notify.js.__ivy_ngcc_bak +0 -5
  581. package/esm2015/popover/sd-angular-core-popover.js.__ivy_ngcc_bak +0 -5
  582. package/esm2015/quick-action/sd-angular-core-quick-action.js.__ivy_ngcc_bak +0 -5
  583. package/esm2015/radio/sd-angular-core-radio.js.__ivy_ngcc_bak +0 -5
  584. package/esm2015/select/sd-angular-core-select.js.__ivy_ngcc_bak +0 -5
  585. package/esm2015/select-badge/sd-angular-core-select-badge.js.__ivy_ngcc_bak +0 -5
  586. package/esm2015/select-editor/sd-angular-core-select-editor.js.__ivy_ngcc_bak +0 -5
  587. package/esm2015/service/sd-angular-core-service.js.__ivy_ngcc_bak +0 -5
  588. package/esm2015/setting/sd-angular-core-setting.js.__ivy_ngcc_bak +0 -5
  589. package/esm2015/side-drawer/sd-angular-core-side-drawer.js.__ivy_ngcc_bak +0 -5
  590. package/esm2015/switch/sd-angular-core-switch.js.__ivy_ngcc_bak +0 -5
  591. package/esm2015/tab-router/sd-angular-core-tab-router.js.__ivy_ngcc_bak +0 -7
  592. package/esm2015/textarea/sd-angular-core-textarea.js.__ivy_ngcc_bak +0 -5
  593. package/esm2015/time/sd-angular-core-time.js.__ivy_ngcc_bak +0 -6
  594. package/esm2015/timeline/sd-angular-core-timeline.js.__ivy_ngcc_bak +0 -6
  595. package/esm2015/translate/sd-angular-core-translate.js.__ivy_ngcc_bak +0 -5
  596. package/esm2015/upload-excel/sd-angular-core-upload-excel.js.__ivy_ngcc_bak +0 -7
  597. package/esm2015/upload-file/sd-angular-core-upload-file.js.__ivy_ngcc_bak +0 -5
  598. package/esm2015/utility/sd-angular-core-utility.js.__ivy_ngcc_bak +0 -5
  599. package/esm2015/view/sd-angular-core-view.js.__ivy_ngcc_bak +0 -5
  600. package/excel/sd-angular-core-excel.d.ts.__ivy_ngcc_bak +0 -4
  601. package/excel/sd-angular-core-excel.d.ts.map +0 -1
  602. package/export/sd-angular-core-export.d.ts.__ivy_ngcc_bak +0 -4
  603. package/export/sd-angular-core-export.d.ts.map +0 -1
  604. package/fesm2015/sd-angular-core-api.js.__ivy_ngcc_bak +0 -496
  605. package/fesm2015/sd-angular-core-api.js.map.__ivy_ngcc_bak +0 -1
  606. package/fesm2015/sd-angular-core-autocomplete.js.__ivy_ngcc_bak +0 -427
  607. package/fesm2015/sd-angular-core-autocomplete.js.map.__ivy_ngcc_bak +0 -1
  608. package/fesm2015/sd-angular-core-badge.js.__ivy_ngcc_bak +0 -70
  609. package/fesm2015/sd-angular-core-badge.js.map.__ivy_ngcc_bak +0 -1
  610. package/fesm2015/sd-angular-core-button.js.__ivy_ngcc_bak +0 -115
  611. package/fesm2015/sd-angular-core-button.js.map.__ivy_ngcc_bak +0 -1
  612. package/fesm2015/sd-angular-core-cache.js.__ivy_ngcc_bak +0 -259
  613. package/fesm2015/sd-angular-core-cache.js.map.__ivy_ngcc_bak +0 -1
  614. package/fesm2015/sd-angular-core-chart.js.__ivy_ngcc_bak +0 -727
  615. package/fesm2015/sd-angular-core-chart.js.map.__ivy_ngcc_bak +0 -1
  616. package/fesm2015/sd-angular-core-checkbox.js.__ivy_ngcc_bak +0 -120
  617. package/fesm2015/sd-angular-core-checkbox.js.map.__ivy_ngcc_bak +0 -1
  618. package/fesm2015/sd-angular-core-chip.js.__ivy_ngcc_bak +0 -632
  619. package/fesm2015/sd-angular-core-chip.js.map.__ivy_ngcc_bak +0 -1
  620. package/fesm2015/sd-angular-core-comment.js.__ivy_ngcc_bak +0 -118
  621. package/fesm2015/sd-angular-core-comment.js.map.__ivy_ngcc_bak +0 -1
  622. package/fesm2015/sd-angular-core-common.js.__ivy_ngcc_bak +0 -562
  623. package/fesm2015/sd-angular-core-common.js.map.__ivy_ngcc_bak +0 -1
  624. package/fesm2015/sd-angular-core-confirm.js.__ivy_ngcc_bak +0 -154
  625. package/fesm2015/sd-angular-core-confirm.js.map.__ivy_ngcc_bak +0 -1
  626. package/fesm2015/sd-angular-core-date-month.js.__ivy_ngcc_bak +0 -289
  627. package/fesm2015/sd-angular-core-date-month.js.map.__ivy_ngcc_bak +0 -1
  628. package/fesm2015/sd-angular-core-date-range.js.__ivy_ngcc_bak +0 -297
  629. package/fesm2015/sd-angular-core-date-range.js.map.__ivy_ngcc_bak +0 -1
  630. package/fesm2015/sd-angular-core-date-time.js.__ivy_ngcc_bak +0 -367
  631. package/fesm2015/sd-angular-core-date-time.js.map.__ivy_ngcc_bak +0 -1
  632. package/fesm2015/sd-angular-core-db.js.__ivy_ngcc_bak +0 -91
  633. package/fesm2015/sd-angular-core-db.js.map.__ivy_ngcc_bak +0 -1
  634. package/fesm2015/sd-angular-core-dynamic-report.js.__ivy_ngcc_bak +0 -82
  635. package/fesm2015/sd-angular-core-dynamic-report.js.map.__ivy_ngcc_bak +0 -1
  636. package/fesm2015/sd-angular-core-editor.js.__ivy_ngcc_bak +0 -536
  637. package/fesm2015/sd-angular-core-editor.js.map.__ivy_ngcc_bak +0 -1
  638. package/fesm2015/sd-angular-core-excel.js.__ivy_ngcc_bak +0 -100
  639. package/fesm2015/sd-angular-core-excel.js.map.__ivy_ngcc_bak +0 -1
  640. package/fesm2015/sd-angular-core-export.js.__ivy_ngcc_bak +0 -272
  641. package/fesm2015/sd-angular-core-export.js.map.__ivy_ngcc_bak +0 -1
  642. package/fesm2015/sd-angular-core-form.js.__ivy_ngcc_bak +0 -104
  643. package/fesm2015/sd-angular-core-form.js.map.__ivy_ngcc_bak +0 -1
  644. package/fesm2015/sd-angular-core-grid-material.js.__ivy_ngcc_bak +0 -3740
  645. package/fesm2015/sd-angular-core-grid-material.js.map.__ivy_ngcc_bak +0 -1
  646. package/fesm2015/sd-angular-core-group.js.__ivy_ngcc_bak +0 -74
  647. package/fesm2015/sd-angular-core-group.js.map.__ivy_ngcc_bak +0 -1
  648. package/fesm2015/sd-angular-core-header-title.js.__ivy_ngcc_bak +0 -45
  649. package/fesm2015/sd-angular-core-header-title.js.map.__ivy_ngcc_bak +0 -1
  650. package/fesm2015/sd-angular-core-image-preview.js.__ivy_ngcc_bak +0 -107
  651. package/fesm2015/sd-angular-core-image-preview.js.map.__ivy_ngcc_bak +0 -1
  652. package/fesm2015/sd-angular-core-input-currency.js.__ivy_ngcc_bak +0 -330
  653. package/fesm2015/sd-angular-core-input-currency.js.map.__ivy_ngcc_bak +0 -1
  654. package/fesm2015/sd-angular-core-input-dropdown.js.__ivy_ngcc_bak +0 -268
  655. package/fesm2015/sd-angular-core-input-dropdown.js.map.__ivy_ngcc_bak +0 -1
  656. package/fesm2015/sd-angular-core-input-number.js.__ivy_ngcc_bak +0 -415
  657. package/fesm2015/sd-angular-core-input-number.js.map.__ivy_ngcc_bak +0 -1
  658. package/fesm2015/sd-angular-core-input-upload-file.js.__ivy_ngcc_bak +0 -274
  659. package/fesm2015/sd-angular-core-input-upload-file.js.map.__ivy_ngcc_bak +0 -1
  660. package/fesm2015/sd-angular-core-input.js.__ivy_ngcc_bak +0 -398
  661. package/fesm2015/sd-angular-core-input.js.map.__ivy_ngcc_bak +0 -1
  662. package/fesm2015/sd-angular-core-json-editor.js.__ivy_ngcc_bak +0 -180
  663. package/fesm2015/sd-angular-core-json-editor.js.map.__ivy_ngcc_bak +0 -1
  664. package/fesm2015/sd-angular-core-konva.js.__ivy_ngcc_bak +0 -237
  665. package/fesm2015/sd-angular-core-konva.js.map.__ivy_ngcc_bak +0 -1
  666. package/fesm2015/sd-angular-core-label.js.__ivy_ngcc_bak +0 -49
  667. package/fesm2015/sd-angular-core-label.js.map.__ivy_ngcc_bak +0 -1
  668. package/fesm2015/sd-angular-core-loading.js.__ivy_ngcc_bak +0 -83
  669. package/fesm2015/sd-angular-core-loading.js.map.__ivy_ngcc_bak +0 -1
  670. package/fesm2015/sd-angular-core-modal-resizable.js.__ivy_ngcc_bak +0 -161
  671. package/fesm2015/sd-angular-core-modal-resizable.js.map.__ivy_ngcc_bak +0 -1
  672. package/fesm2015/sd-angular-core-modal.js.__ivy_ngcc_bak +0 -284
  673. package/fesm2015/sd-angular-core-modal.js.map.__ivy_ngcc_bak +0 -1
  674. package/fesm2015/sd-angular-core-notify.js.__ivy_ngcc_bak +0 -402
  675. package/fesm2015/sd-angular-core-notify.js.map.__ivy_ngcc_bak +0 -1
  676. package/fesm2015/sd-angular-core-popover.js.__ivy_ngcc_bak +0 -415
  677. package/fesm2015/sd-angular-core-popover.js.map.__ivy_ngcc_bak +0 -1
  678. package/fesm2015/sd-angular-core-quick-action.js.__ivy_ngcc_bak +0 -53
  679. package/fesm2015/sd-angular-core-quick-action.js.map.__ivy_ngcc_bak +0 -1
  680. package/fesm2015/sd-angular-core-radio.js.__ivy_ngcc_bak +0 -188
  681. package/fesm2015/sd-angular-core-radio.js.map.__ivy_ngcc_bak +0 -1
  682. package/fesm2015/sd-angular-core-select-badge.js.__ivy_ngcc_bak +0 -156
  683. package/fesm2015/sd-angular-core-select-badge.js.map.__ivy_ngcc_bak +0 -1
  684. package/fesm2015/sd-angular-core-select-editor.js.__ivy_ngcc_bak +0 -110
  685. package/fesm2015/sd-angular-core-select-editor.js.map.__ivy_ngcc_bak +0 -1
  686. package/fesm2015/sd-angular-core-select.js.__ivy_ngcc_bak +0 -487
  687. package/fesm2015/sd-angular-core-select.js.map.__ivy_ngcc_bak +0 -1
  688. package/fesm2015/sd-angular-core-service.js.__ivy_ngcc_bak +0 -36
  689. package/fesm2015/sd-angular-core-service.js.map.__ivy_ngcc_bak +0 -1
  690. package/fesm2015/sd-angular-core-setting.js.__ivy_ngcc_bak +0 -290
  691. package/fesm2015/sd-angular-core-setting.js.map.__ivy_ngcc_bak +0 -1
  692. package/fesm2015/sd-angular-core-side-drawer.js.__ivy_ngcc_bak +0 -115
  693. package/fesm2015/sd-angular-core-side-drawer.js.map.__ivy_ngcc_bak +0 -1
  694. package/fesm2015/sd-angular-core-switch.js.__ivy_ngcc_bak +0 -116
  695. package/fesm2015/sd-angular-core-switch.js.map.__ivy_ngcc_bak +0 -1
  696. package/fesm2015/sd-angular-core-tab-router.js.__ivy_ngcc_bak +0 -531
  697. package/fesm2015/sd-angular-core-tab-router.js.map.__ivy_ngcc_bak +0 -1
  698. package/fesm2015/sd-angular-core-textarea.js.__ivy_ngcc_bak +0 -266
  699. package/fesm2015/sd-angular-core-textarea.js.map.__ivy_ngcc_bak +0 -1
  700. package/fesm2015/sd-angular-core-time.js.__ivy_ngcc_bak +0 -143
  701. package/fesm2015/sd-angular-core-time.js.map.__ivy_ngcc_bak +0 -1
  702. package/fesm2015/sd-angular-core-timeline.js.__ivy_ngcc_bak +0 -87
  703. package/fesm2015/sd-angular-core-timeline.js.map.__ivy_ngcc_bak +0 -1
  704. package/fesm2015/sd-angular-core-translate.js.__ivy_ngcc_bak +0 -101
  705. package/fesm2015/sd-angular-core-translate.js.map.__ivy_ngcc_bak +0 -1
  706. package/fesm2015/sd-angular-core-upload-excel.js.__ivy_ngcc_bak +0 -638
  707. package/fesm2015/sd-angular-core-upload-excel.js.map.__ivy_ngcc_bak +0 -1
  708. package/fesm2015/sd-angular-core-upload-file.js.__ivy_ngcc_bak +0 -462
  709. package/fesm2015/sd-angular-core-upload-file.js.map.__ivy_ngcc_bak +0 -1
  710. package/fesm2015/sd-angular-core-utility.js.__ivy_ngcc_bak +0 -364
  711. package/fesm2015/sd-angular-core-utility.js.map.__ivy_ngcc_bak +0 -1
  712. package/fesm2015/sd-angular-core-view.js.__ivy_ngcc_bak +0 -23
  713. package/fesm2015/sd-angular-core-view.js.map.__ivy_ngcc_bak +0 -1
  714. package/form/sd-angular-core-form.d.ts.__ivy_ngcc_bak +0 -4
  715. package/form/sd-angular-core-form.d.ts.map +0 -1
  716. package/grid-material/sd-angular-core-grid-material.d.ts.__ivy_ngcc_bak +0 -46
  717. package/grid-material/sd-angular-core-grid-material.d.ts.map +0 -1
  718. package/group/sd-angular-core-group.d.ts.__ivy_ngcc_bak +0 -5
  719. package/group/sd-angular-core-group.d.ts.map +0 -1
  720. package/header-title/sd-angular-core-header-title.d.ts.__ivy_ngcc_bak +0 -5
  721. package/header-title/sd-angular-core-header-title.d.ts.map +0 -1
  722. package/image-preview/sd-angular-core-image-preview.d.ts.__ivy_ngcc_bak +0 -6
  723. package/image-preview/sd-angular-core-image-preview.d.ts.map +0 -1
  724. package/input/sd-angular-core-input.d.ts.__ivy_ngcc_bak +0 -5
  725. package/input/sd-angular-core-input.d.ts.map +0 -1
  726. package/input-currency/sd-angular-core-input-currency.d.ts.__ivy_ngcc_bak +0 -4
  727. package/input-currency/sd-angular-core-input-currency.d.ts.map +0 -1
  728. package/input-dropdown/sd-angular-core-input-dropdown.d.ts.__ivy_ngcc_bak +0 -4
  729. package/input-dropdown/sd-angular-core-input-dropdown.d.ts.map +0 -1
  730. package/input-number/sd-angular-core-input-number.d.ts.__ivy_ngcc_bak +0 -4
  731. package/input-number/sd-angular-core-input-number.d.ts.map +0 -1
  732. package/input-upload-file/sd-angular-core-input-upload-file.d.ts.__ivy_ngcc_bak +0 -4
  733. package/input-upload-file/sd-angular-core-input-upload-file.d.ts.map +0 -1
  734. package/json-editor/sd-angular-core-json-editor.d.ts.__ivy_ngcc_bak +0 -4
  735. package/json-editor/sd-angular-core-json-editor.d.ts.map +0 -1
  736. package/konva/sd-angular-core-konva.d.ts.__ivy_ngcc_bak +0 -4
  737. package/konva/sd-angular-core-konva.d.ts.map +0 -1
  738. package/label/sd-angular-core-label.d.ts.__ivy_ngcc_bak +0 -5
  739. package/label/sd-angular-core-label.d.ts.map +0 -1
  740. package/loading/sd-angular-core-loading.d.ts.__ivy_ngcc_bak +0 -4
  741. package/loading/sd-angular-core-loading.d.ts.map +0 -1
  742. package/modal/sd-angular-core-modal.d.ts.__ivy_ngcc_bak +0 -4
  743. package/modal/sd-angular-core-modal.d.ts.map +0 -1
  744. package/modal-resizable/sd-angular-core-modal-resizable.d.ts.__ivy_ngcc_bak +0 -4
  745. package/modal-resizable/sd-angular-core-modal-resizable.d.ts.map +0 -1
  746. package/notify/sd-angular-core-notify.d.ts.__ivy_ngcc_bak +0 -4
  747. package/notify/sd-angular-core-notify.d.ts.map +0 -1
  748. package/popover/sd-angular-core-popover.d.ts.__ivy_ngcc_bak +0 -4
  749. package/popover/sd-angular-core-popover.d.ts.map +0 -1
  750. package/quick-action/sd-angular-core-quick-action.d.ts.__ivy_ngcc_bak +0 -4
  751. package/quick-action/sd-angular-core-quick-action.d.ts.map +0 -1
  752. package/radio/sd-angular-core-radio.d.ts.__ivy_ngcc_bak +0 -4
  753. package/radio/sd-angular-core-radio.d.ts.map +0 -1
  754. package/sd-angular-core-1.2.87.tgz +0 -0
  755. package/select/sd-angular-core-select.d.ts.__ivy_ngcc_bak +0 -4
  756. package/select/sd-angular-core-select.d.ts.map +0 -1
  757. package/select-badge/sd-angular-core-select-badge.d.ts.__ivy_ngcc_bak +0 -4
  758. package/select-badge/sd-angular-core-select-badge.d.ts.map +0 -1
  759. package/select-editor/sd-angular-core-select-editor.d.ts.__ivy_ngcc_bak +0 -4
  760. package/select-editor/sd-angular-core-select-editor.d.ts.map +0 -1
  761. package/service/sd-angular-core-service.d.ts.__ivy_ngcc_bak +0 -4
  762. package/service/sd-angular-core-service.d.ts.map +0 -1
  763. package/setting/sd-angular-core-setting.d.ts.__ivy_ngcc_bak +0 -4
  764. package/setting/sd-angular-core-setting.d.ts.map +0 -1
  765. package/side-drawer/sd-angular-core-side-drawer.d.ts.__ivy_ngcc_bak +0 -4
  766. package/side-drawer/sd-angular-core-side-drawer.d.ts.map +0 -1
  767. package/switch/sd-angular-core-switch.d.ts.__ivy_ngcc_bak +0 -4
  768. package/switch/sd-angular-core-switch.d.ts.map +0 -1
  769. package/tab-router/sd-angular-core-tab-router.d.ts.__ivy_ngcc_bak +0 -6
  770. package/tab-router/sd-angular-core-tab-router.d.ts.map +0 -1
  771. package/textarea/sd-angular-core-textarea.d.ts.__ivy_ngcc_bak +0 -4
  772. package/textarea/sd-angular-core-textarea.d.ts.map +0 -1
  773. package/time/sd-angular-core-time.d.ts.__ivy_ngcc_bak +0 -5
  774. package/time/sd-angular-core-time.d.ts.map +0 -1
  775. package/timeline/sd-angular-core-timeline.d.ts.__ivy_ngcc_bak +0 -5
  776. package/timeline/sd-angular-core-timeline.d.ts.map +0 -1
  777. package/translate/sd-angular-core-translate.d.ts.__ivy_ngcc_bak +0 -4
  778. package/translate/sd-angular-core-translate.d.ts.map +0 -1
  779. package/upload-excel/sd-angular-core-upload-excel.d.ts.__ivy_ngcc_bak +0 -6
  780. package/upload-excel/sd-angular-core-upload-excel.d.ts.map +0 -1
  781. package/upload-file/sd-angular-core-upload-file.d.ts.__ivy_ngcc_bak +0 -4
  782. package/upload-file/sd-angular-core-upload-file.d.ts.map +0 -1
  783. package/utility/sd-angular-core-utility.d.ts.__ivy_ngcc_bak +0 -4
  784. package/utility/sd-angular-core-utility.d.ts.map +0 -1
  785. package/view/sd-angular-core-view.d.ts.__ivy_ngcc_bak +0 -4
  786. package/view/sd-angular-core-view.d.ts.map +0 -1
@@ -120,7 +120,7 @@ const PROMOTION_FORM = {
120
120
  }
121
121
  };
122
122
 
123
- var _name, _subscription, _model, _form, _updateValidator, _initUploadImage, _uploadImage, _uploadFile;
123
+ var _name, _subscription, _model, _form, _updateValidator, _initUploadImage;
124
124
  class SdEditor {
125
125
  constructor(ngZone, ref, sdApiService, loadingService, configuration) {
126
126
  this.ngZone = ngZone;
@@ -207,34 +207,6 @@ class SdEditor {
207
207
  this.customButtonFileSVG = '<svg xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><g><rect fill="none" height="24" width="24"/><path d="M20.41,8.41l-4.83-4.83C15.21,3.21,14.7,3,14.17,3H5C3.9,3,3,3.9,3,5v14c0,1.1,0.9,2,2,2h14c1.1,0,2-0.9,2-2V9.83 C21,9.3,20.79,8.79,20.41,8.41z M7,7h7v2H7V7z M17,17H7v-2h10V17z M17,13H7v-2h10V13z"/></g></svg>';
208
208
  this.sdChange = new EventEmitter();
209
209
  this.timerLoadQuillToolbar = null;
210
- this.customFileHandler = (e) => {
211
- const customButton = e.currentTarget;
212
- const quillToolbar = customButton.closest('.ql-formats').closest('.ql-toolbar');
213
- const quillBox = quillToolbar.closest('.ql-formats');
214
- let fileInput = quillToolbar.querySelector('input.ql-customFile[type=file]');
215
- if (fileInput == null) {
216
- fileInput = document.createElement('input');
217
- fileInput.setAttribute('type', Constants.FILE);
218
- fileInput.setAttribute('accept', '*');
219
- fileInput.classList.add('ql-customFile');
220
- fileInput.addEventListener('change', () => {
221
- const files = fileInput.files;
222
- if (!files || !files.length) {
223
- return;
224
- }
225
- const formData = new FormData();
226
- formData.append(Constants.FILE, files[0]);
227
- let range = localStorage.getItem('quillRange');
228
- if (range) {
229
- range = JSON.parse(range);
230
- }
231
- this.quillEvent.enable(false);
232
- __classPrivateFieldGet(this, _uploadFile).call(this, formData, this.quillEvent, range, fileInput, quillToolbar.closest('quill-editor').id);
233
- });
234
- quillToolbar.appendChild(fileInput);
235
- }
236
- fileInput.click();
237
- };
238
210
  _updateValidator.set(this, () => {
239
211
  this.formControl.clearValidators();
240
212
  this.formControl.clearAsyncValidators();
@@ -273,30 +245,31 @@ class SdEditor {
273
245
  // // this.formControl.setValue(html);
274
246
  // });
275
247
  const self = this;
276
- this.ngZone.runOutsideAngular(() => {
277
- quill.getModule('toolbar').addHandler('image', function () {
278
- let fileInput = this.container.querySelector('input.ql-image[type=file]');
279
- if (fileInput == null) {
280
- fileInput = document.createElement('input');
281
- fileInput.setAttribute('type', Constants.FILE);
282
- fileInput.setAttribute('accept', 'image/png, image/gif, image/jpeg, image/bmp, image/x-icon');
283
- fileInput.classList.add('ql-image');
284
- fileInput.addEventListener('change', () => {
285
- const files = fileInput.files;
286
- const range = this.quill.getSelection(true);
287
- if (!files || !files.length) {
288
- return;
289
- }
290
- const formData = new FormData();
291
- formData.append(Constants.FILE, files[0]);
292
- this.quill.enable(false);
293
- __classPrivateFieldGet(self, _uploadImage).call(self, formData, quill, range, fileInput);
294
- });
295
- this.container.appendChild(fileInput);
296
- }
297
- fileInput.click();
298
- });
299
- });
248
+ __classPrivateFieldGet(this, _initUploadImage).call(this, quill);
249
+ // this.ngZone.runOutsideAngular(() => {
250
+ // quill.getModule('toolbar').addHandler('image', function () {
251
+ // let fileInput = this.container.querySelector('input.ql-image[type=file]');
252
+ // if (fileInput == null) {
253
+ // fileInput = document.createElement('input');
254
+ // fileInput.setAttribute('type', Constants.FILE);
255
+ // fileInput.setAttribute('accept', 'image/png, image/gif, image/jpeg, image/bmp, image/x-icon');
256
+ // fileInput.classList.add('ql-image');
257
+ // fileInput.addEventListener('change', () => {
258
+ // const files = fileInput.files;
259
+ // const range = this.quill.getSelection(true);
260
+ // if (!files || !files.length) {
261
+ // return;
262
+ // }
263
+ // const formData = new FormData();
264
+ // formData.append(Constants.FILE, files[0]);
265
+ // this.quill.enable(false);
266
+ // self.#uploadImage(formData, quill, range, fileInput);
267
+ // });
268
+ // this.container.appendChild(fileInput);
269
+ // }
270
+ // fileInput.click();
271
+ // });
272
+ // });
300
273
  this.ref.markForCheck();
301
274
  };
302
275
  _initUploadImage.set(this, (quill) => {
@@ -310,6 +283,7 @@ class SdEditor {
310
283
  fileInput.setAttribute('accept', 'image/png, image/gif, image/jpeg, image/bmp, image/x-icon');
311
284
  fileInput.classList.add('ql-image');
312
285
  fileInput.addEventListener('change', () => {
286
+ var _a;
313
287
  const files = fileInput.files;
314
288
  const range = this.quill.getSelection(true);
315
289
  if (!files || !files.length) {
@@ -318,7 +292,20 @@ class SdEditor {
318
292
  const formData = new FormData();
319
293
  formData.append(Constants.FILE, files[0]);
320
294
  this.quill.enable(false);
321
- __classPrivateFieldGet(self, _uploadImage).call(self, formData, quill, range, fileInput);
295
+ // self.#uploadImage(formData, quill, range, fileInput);
296
+ (_a = self.configuration) === null || _a === void 0 ? void 0 : _a.uploadImage(formData, self.args).then(url => {
297
+ self.ngZone.runOutsideAngular(() => {
298
+ quill.enable(true);
299
+ // quill.editor.insertEmbed(range.index, 'image', resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '');
300
+ quill.getModule('clipboard').dangerouslyPasteHTML(range.index, '<a target="_blank" href="' + (url || '')
301
+ + '"><img src="' + (url || '') + '" alt="c-image-editor-quill"></a>', 'user');
302
+ // quill.insertText();
303
+ const content = quill.getContents();
304
+ quill.setContents(content);
305
+ quill.setSelection(range.index + 1, 'user');
306
+ fileInput.value = '';
307
+ });
308
+ });
322
309
  });
323
310
  this.container.appendChild(fileInput);
324
311
  }
@@ -335,52 +322,6 @@ class SdEditor {
335
322
  this.showHtmlEditor = !this.showHtmlEditor;
336
323
  this.ref.markForCheck();
337
324
  };
338
- _uploadImage.set(this, (formData, quill, range, fileInput) => {
339
- if (!this.urlUploadImage) {
340
- this.urlUploadImage = '/partner/v2/merchandise/file/uploaduserfile';
341
- }
342
- // this.domain = 'https://api-commerce-qc.vinid.dev';
343
- this.sdApiService.post(this.urlUploadImage, formData).then((resp) => {
344
- this.ngZone.runOutsideAngular(() => {
345
- var _a, _b, _c, _d;
346
- quill.enable(true);
347
- // quill.editor.insertEmbed(range.index, 'image', resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '');
348
- quill.getModule('clipboard').dangerouslyPasteHTML(range.index, '<a target="_blank" href="' + (((_a = resp === null || resp === void 0 ? void 0 : resp.data) === null || _a === void 0 ? void 0 : _a.imageUrl) || ((_b = resp === null || resp === void 0 ? void 0 : resp.data) === null || _b === void 0 ? void 0 : _b.publish_url) || (resp === null || resp === void 0 ? void 0 : resp.url) || '')
349
- + '"><img src="' + (((_c = resp === null || resp === void 0 ? void 0 : resp.data) === null || _c === void 0 ? void 0 : _c.imageUrl) || ((_d = resp === null || resp === void 0 ? void 0 : resp.data) === null || _d === void 0 ? void 0 : _d.publish_url) || (resp === null || resp === void 0 ? void 0 : resp.url) || '') + '" alt="c-image-editor-quill"></a>', 'user');
350
- // quill.insertText();
351
- const content = quill.getContents();
352
- quill.setContents(content);
353
- quill.setSelection(range.index + 1, 'user');
354
- fileInput.value = '';
355
- });
356
- });
357
- this.ref.markForCheck();
358
- });
359
- _uploadFile.set(this, (formData, quill, range, fileInput, loadingID) => {
360
- if (!this.urlUploadFile) {
361
- this.urlUploadFile = '/partner/v2/merchandise/file/uploaduserfile';
362
- }
363
- // this.domain = 'https://api-commerce-qc.vinid.dev';
364
- this.loadingService.start('#box-' + loadingID);
365
- this.sdApiService.post(this.urlUploadFile, formData).then((resp) => {
366
- this.ngZone.runOutsideAngular(() => {
367
- var _a, _b, _c, _d;
368
- quill.enable(true);
369
- // quill.editor.insertEmbed(range.index, 'image', resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '');
370
- quill.getModule('clipboard').dangerouslyPasteHTML(range.index, '<a target="_blank" href="' + (((_a = resp === null || resp === void 0 ? void 0 : resp.data) === null || _a === void 0 ? void 0 : _a.imageUrl) || ((_b = resp === null || resp === void 0 ? void 0 : resp.data) === null || _b === void 0 ? void 0 : _b.publish_url) || (resp === null || resp === void 0 ? void 0 : resp.url) || '')
371
- + '">' + (((_c = resp === null || resp === void 0 ? void 0 : resp.data) === null || _c === void 0 ? void 0 : _c.imageUrl) || ((_d = resp === null || resp === void 0 ? void 0 : resp.data) === null || _d === void 0 ? void 0 : _d.publish_url) || (resp === null || resp === void 0 ? void 0 : resp.url) || '') + '</a>', 'user');
372
- // quill.insertText();
373
- const content = quill.getContents();
374
- quill.setContents(content);
375
- quill.setSelection(range.index + 1, 'user');
376
- fileInput.value = '';
377
- });
378
- this.loadingService.stop('#box-' + loadingID);
379
- }).catch((er) => {
380
- this.loadingService.stop('#box-' + loadingID);
381
- });
382
- this.ref.markForCheck();
383
- });
384
325
  }
385
326
  set model(val) {
386
327
  __classPrivateFieldSet(this, _model, val);
@@ -422,26 +363,76 @@ class SdEditor {
422
363
  }
423
364
  }
424
365
  ngOnInit() {
425
- var _a;
366
+ var _a, _b;
426
367
  (_a = __classPrivateFieldGet(this, _form)) === null || _a === void 0 ? void 0 : _a.addControl(__classPrivateFieldGet(this, _name), this.formControl);
427
368
  if (this.toolbar) {
428
369
  this.quillConfig.toolbar.container = this.toolbar;
429
370
  }
430
- if (this.quillConfig.toolbar.container.toString().includes('customFile')) {
431
- this.timerLoadQuillToolbar = setInterval(() => {
432
- if (document.querySelector('button.ql-customFile')) {
433
- clearInterval(this.timerLoadQuillToolbar);
434
- document.querySelector('button.ql-customFile').innerHTML = this.customButtonFileSVG;
435
- const customButton = document.querySelector('button.ql-customFile');
436
- if (customButton.getAttribute('listener') !== '1') {
437
- customButton.setAttribute('listener', '1');
438
- customButton.addEventListener('click', this.customFileHandler);
371
+ for (const action of (((_b = this.configuration) === null || _b === void 0 ? void 0 : _b.actions) || [])) {
372
+ if (this.quillConfig.toolbar.container.toString().includes(action.key)) {
373
+ const qlKey = `button.ql-${action.key}`;
374
+ const interval = setInterval(() => {
375
+ if (document.querySelector(qlKey)) {
376
+ clearInterval(interval);
377
+ document.querySelector(qlKey).innerHTML = this.customButtonFileSVG;
378
+ const customButton = document.querySelector(qlKey);
379
+ if (customButton.getAttribute('listener') !== '1') {
380
+ customButton.setAttribute('listener', '1');
381
+ customButton.addEventListener('click', (e) => {
382
+ const cursorPosition = localStorage.getItem('quillRange');
383
+ action.click(e, {
384
+ cursorPosition: JSON.parse(cursorPosition),
385
+ args: this.args
386
+ });
387
+ });
388
+ }
439
389
  }
440
- }
441
- }, 1000);
390
+ }, 1000);
391
+ }
442
392
  }
393
+ // if (this.quillConfig.toolbar.container.toString().includes('customFile')) {
394
+ // this.timerLoadQuillToolbar = setInterval(() => {
395
+ // if (document.querySelector('button.ql-customFile')) {
396
+ // clearInterval(this.timerLoadQuillToolbar);
397
+ // document.querySelector('button.ql-customFile').innerHTML = this.customButtonFileSVG;
398
+ // const customButton = document.querySelector('button.ql-customFile');
399
+ // if (customButton.getAttribute('listener') !== '1') {
400
+ // customButton.setAttribute('listener', '1');
401
+ // customButton.addEventListener('click', this.customFileHandler);
402
+ // }
403
+ // }
404
+ // }, 1000);
405
+ // }
443
406
  this.ref.markForCheck();
444
407
  }
408
+ // customFileHandler = (e) => {
409
+ // const customButton = e.currentTarget;
410
+ // const quillToolbar = customButton.closest('.ql-formats').closest('.ql-toolbar');
411
+ // const quillBox = quillToolbar.closest('.ql-formats')
412
+ // let fileInput: HTMLInputElement = quillToolbar.querySelector('input.ql-customFile[type=file]');
413
+ // if (fileInput == null) {
414
+ // fileInput = document.createElement('input');
415
+ // fileInput.setAttribute('type', Constants.FILE);
416
+ // fileInput.setAttribute('accept', '*');
417
+ // fileInput.classList.add('ql-customFile');
418
+ // fileInput.addEventListener('change', () => {
419
+ // const files = fileInput.files;
420
+ // if (!files || !files.length) {
421
+ // return;
422
+ // }
423
+ // const formData = new FormData();
424
+ // formData.append(Constants.FILE, files[0]);
425
+ // let range = localStorage.getItem('quillRange');
426
+ // if (range) {
427
+ // range = JSON.parse(range);
428
+ // }
429
+ // this.quillEvent.enable(false);
430
+ // this.#uploadFile(formData, this.quillEvent, range, fileInput, quillToolbar.closest('quill-editor').id);
431
+ // });
432
+ // quillToolbar.appendChild(fileInput);
433
+ // }
434
+ // fileInput.click();
435
+ // }
445
436
  ngAfterViewInit() {
446
437
  __classPrivateFieldGet(this, _subscription).add(this.formControl.valueChanges.subscribe((val) => {
447
438
  this.modelChange.emit(val);
@@ -453,6 +444,50 @@ class SdEditor {
453
444
  (_a = __classPrivateFieldGet(this, _form)) === null || _a === void 0 ? void 0 : _a.removeControl(__classPrivateFieldGet(this, _name));
454
445
  __classPrivateFieldGet(this, _subscription).unsubscribe();
455
446
  }
447
+ // #uploadImage = (formData, quill, range, fileInput) => {
448
+ // if (!this.urlUploadImage) {
449
+ // this.urlUploadImage = '/partner/v2/merchandise/file/uploaduserfile';
450
+ // }
451
+ // // this.domain = 'https://api-commerce-qc.vinid.dev';
452
+ // this.sdApiService.post(this.urlUploadImage, formData).then((resp: any) => {
453
+ // this.ngZone.runOutsideAngular(() => {
454
+ // quill.enable(true);
455
+ // // quill.editor.insertEmbed(range.index, 'image', resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '');
456
+ // quill.getModule('clipboard').dangerouslyPasteHTML(range.index, '<a target="_blank" href="' + (resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '')
457
+ // + '"><img src="' + (resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '') + '" alt="c-image-editor-quill"></a>', 'user');
458
+ // // quill.insertText();
459
+ // const content = quill.getContents();
460
+ // quill.setContents(content);
461
+ // quill.setSelection(range.index + 1, 'user');
462
+ // fileInput.value = '';
463
+ // });
464
+ // });
465
+ // this.ref.markForCheck();
466
+ // }
467
+ // #uploadFile = (formData, quill, range, fileInput, loadingID) => {
468
+ // if (!this.urlUploadFile) {
469
+ // this.urlUploadFile = '/partner/v2/merchandise/file/uploaduserfile';
470
+ // }
471
+ // // this.domain = 'https://api-commerce-qc.vinid.dev';
472
+ // this.loadingService.start('#box-' + loadingID);
473
+ // this.sdApiService.post(this.urlUploadFile, formData).then((resp: any) => {
474
+ // this.ngZone.runOutsideAngular(() => {
475
+ // quill.enable(true);
476
+ // // quill.editor.insertEmbed(range.index, 'image', resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '');
477
+ // quill.getModule('clipboard').dangerouslyPasteHTML(range.index, '<a target="_blank" href="' + (resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '')
478
+ // + '">' + (resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '') + '</a>', 'user');
479
+ // // quill.insertText();
480
+ // const content = quill.getContents();
481
+ // quill.setContents(content);
482
+ // quill.setSelection(range.index + 1, 'user');
483
+ // fileInput.value = '';
484
+ // });
485
+ // this.loadingService.stop('#box-' + loadingID);
486
+ // }).catch((er) => {
487
+ // this.loadingService.stop('#box-' + loadingID);
488
+ // });
489
+ // this.ref.markForCheck();
490
+ // }
456
491
  onSelectionChanged(e) {
457
492
  // localStorage.setItem('quillRange', e.range ? JSON.stringify(e.range) : (e.oldRange ? JSON.stringify(e.oldRange) : null));
458
493
  localStorage.setItem('quillRange', e.editor.getSelection() ? JSON.stringify(e.editor.getSelection()) : null);
@@ -464,7 +499,7 @@ class SdEditor {
464
499
  }));
465
500
  }
466
501
  }
467
- _name = new WeakMap(), _subscription = new WeakMap(), _model = new WeakMap(), _form = new WeakMap(), _updateValidator = new WeakMap(), _initUploadImage = new WeakMap(), _uploadImage = new WeakMap(), _uploadFile = new WeakMap();
502
+ _name = new WeakMap(), _subscription = new WeakMap(), _model = new WeakMap(), _form = new WeakMap(), _updateValidator = new WeakMap(), _initUploadImage = new WeakMap();
468
503
  SdEditor.decorators = [
469
504
  { type: Component, args: [{
470
505
  selector: 'sd-editor',
@@ -493,8 +528,6 @@ SdEditor.propDecorators = {
493
528
  styles: [{ type: Input }],
494
529
  args: [{ type: Input }],
495
530
  domain: [{ type: Input }],
496
- urlUploadImage: [{ type: Input }],
497
- urlUploadFile: [{ type: Input }],
498
531
  form: [{ type: Input }],
499
532
  toolbar: [{ type: Input }],
500
533
  enableHTMLButton: [{ type: Input }],
@@ -533,5 +566,4 @@ SdEditorModule.decorators = [
533
566
  */
534
567
 
535
568
  export { Constants, EDITOR_CONFIG, PROMOTION_FORM, PROMOTION_PERMISSIONS, SdEditor, SdEditorModule, ValidateMessageConstants };
536
-
537
- //# sourceMappingURL=sd-angular-core-editor.js.map
569
+ //# sourceMappingURL=sd-angular-core-editor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sd-angular-core-editor.js","sources":["../../../../projects/sd-core/editor/src/lib/editor.model.ts","../../../../projects/sd-core/editor/src/lib/constant.ts","../../../../projects/sd-core/editor/src/lib/editor.component.ts","../../../../projects/sd-core/editor/src/lib/editor.module.ts","../../../../projects/sd-core/editor/src/public-api.ts","../../../../projects/sd-core/editor/sd-angular-core-editor.ts"],"names":["uuid.v4"],"mappings":";;;;;;;;;;;;;;;MAOa,aAAa,GAAG,IAAI,cAAc,CAAuB,sBAAsB;AAAG;AAAC,MCPnF,SAAS,GAAG;AACzB,IAAI,sBAAsB,EAAE,kCAAkC;AAC9D,IAAI,MAAM,EAAE,QAAQ;AACpB,IAAI,SAAS,EAAE,UAAU;AACzB,IAAI,OAAO,EAAE,SAAS;AACtB,IAAI,UAAU,EAAE,WAAW;AAC3B,IAAI,iBAAiB,EAAE,yCAAyC;AAChE,IAAI,iBAAiB,EACf,2DAA2D;AACjE,IAAI,aAAa,EAAE,KAAK;AACxB,IAAI,cAAc,EAAE,MAAM;AAC1B,IAAI,IAAI,EAAE,QAAQ;AAClB,IAAI,iBAAiB,EAAE,eAAe;AACtC,IAAI,UAAU,EAAE,OAAO;AACvB,IAAI,OAAO,EAAE,SAAS;AACtB,IAAI,mBAAmB,EAAE,sBAAsB;AAC/C,IAAI,KAAK,EAAE,OAAO;AAClB,IAAI,MAAM,EAAE,MAAM;AAClB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,IAAI,EAAE,MAAM;AAChB,IAAI,oBAAoB,EAAE,8BAA8B;AACxD,IAAI,kBAAkB,EAAE,yBAAyB;AACjD,IAAI,sBAAsB,EAAE,+BAA+B;AAC3D,IAAI,uBAAuB,EAAE,+BAA+B;AAC5D,IAAI,aAAa,EAAE,eAAe;AAClC,IAAI,OAAO,EAAE;AACb,QAAM;AACN,YAAQ,KAAK,EAAE,CAAC;AAChB,YAAQ,IAAI,EAAE,cAAc;AAC5B,SAAO;AACP,QAAM;AACN,YAAQ,KAAK,EAAE,CAAC;AAChB,YAAQ,IAAI,EAAE,OAAO;AACrB,SAAO;AACP,KAAK;AACL,IAAI,IAAI,EAAE;AACV,QAAM;AACN,YAAQ,KAAK,EAAE,IAAI;AACnB,YAAQ,IAAI,EAAE,YAAY;AAC1B,SAAO;AACP,QAAM;AACN,YAAQ,KAAK,EAAE,KAAK;AACpB,YAAQ,IAAI,EAAE,WAAW;AACzB,SAAO;AACP,KAAK;AACL,IAAI,WAAW,EAAE;AACjB,QAAQ,EAAE,EAAE,EAAE;AACd,QAAQ,UAAU,EAAE,EAAE;AACtB,QAAQ,WAAW,EAAE,EAAE;AACvB,QAAQ,MAAM,EAAE,EAAE;AAClB,QAAQ,OAAO,EAAE,EAAE;AACnB,KAAO;AACP,IAAI,mBAAmB,EAAE,EAAE;AAC3B,EAAE;AACF,MACa,qBAAqB,GAAG,CAAC,eAAe,EAAE,iBAAiB,EAAE,eAAe;AACzF,IAAE,2BAA2B,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE;AACxF,MACa,wBAAwB,GAAG;AACxC,IAAI,cAAc,EAAE,mBAAmB;AACvC,IAAI,eAAe,EAAE,sCAAsC;AAC3D,IAAI,aAAa,EAAE,mBAAmB;AACtC,IACI,mBAAmB,EAAE,wBAAwB;AACjD,IACI,qBAAqB,EAAE,0BAA0B;AACrD,IACI,uBAAuB,EAAE,4BAA4B;AACzD,IACI,qBAAqB,EAAE,0BAA0B;AACrD,IACI,yBAAyB,EAAE,8BAA8B;AAC7D,IAAI,oBAAoB,EAAE,mDAAmD;AAC7E,IAAI,oBAAoB,EAAE,+CAA+C;AACzE,EAAE;AACF,MACa,cAAc,GAAG;AAC9B,IAAE,WAAW,EAAE;AACf,QAAI,KAAK,EAAE,EAAE;AACb,QAAI,SAAS,EAAE,EAAE;AACjB,QAAI,aAAa,EAAE,EAAE;AACrB,QAAI,UAAU,EAAE,EAAE;AAClB,QAAI,eAAe,EAAE,EAAE;AACvB,QAAI,QAAQ,EAAE,EAAE;AAChB,QAAI,YAAY,EAAE,EAAE;AACpB,QAAI,WAAW,EAAE,EAAE;AACnB,QAAI,IAAI,EAAE,EAAE;AACZ,KAAG;AACH,IAAE,mBAAmB,EAAE;AACvB,QAAI,KAAK,EAAE;AACX,YAAM,QAAQ,EAAE,wBAAwB,CAAC,cAAc;AACvD,YAAM,SAAS,EAAE,wBAAwB,CAAC,eAAe;AACzD,YAAM,OAAO,EAAE,wBAAwB,CAAC,aAAa;AACrD,SAAK;AACL,QAAI,SAAS,EAAE;AACf,YAAM,QAAQ,EAAE,wBAAwB,CAAC,mBAAmB;AAC5D,SAAK;AACL,QAAI,UAAU,EAAE;AAChB,YAAM,QAAQ,EAAE,wBAAwB,CAAC,qBAAqB;AAC9D,SAAK;AACL,QAAI,aAAa,EAAE;AACnB,YAAM,QAAQ,EAAE,wBAAwB,CAAC,uBAAuB;AAChE,SAAK;AACL,QAAI,eAAe,EAAE;AACrB,YAAM,QAAQ,EAAE,wBAAwB,CAAC,yBAAyB;AAClE,YAAM,GAAG,EAAE,wBAAwB,CAAC,oBAAoB;AACxD,YAAM,GAAG,EAAE,wBAAwB,CAAC,oBAAoB;AACxD,SAAK;AACL,QAAI,IAAI,EAAE;AACV,YAAM,QAAQ,EAAE,wBAAwB,CAAC,qBAAqB;AAC9D,SAAK;AACL,KAAG;AACH;AACA;AAAC;AAAwG,MC/E5F,QAAQ;AAAG,IAqJtB,YACU,MAAc,EACd,GAAsB,EACtB,YAA0B,EAC1B,cAAgC,EACG,aAAmC;AAChF,QALU,WAAM,GAAN,MAAM,CAAQ;AAAC,QACf,QAAG,GAAH,GAAG,CAAmB;AAAC,QACvB,iBAAY,GAAZ,YAAY,CAAc;AAAC,QAC3B,mBAAc,GAAd,cAAc,CAAkB;AAAC,QACE,kBAAa,GAAb,aAAa,CAAsB;AAAC,QAzJjF,gBAAQ,IAAIA,EAAO,EAAE,EAAE,EAAC;AAC1B,QAAE,OAAE,GAAW,IAAIA,EAAO,EAAE,EAAE,CAAC;AAC/B,QAAE,wBAAgB,IAAI,YAAY,EAAE,EAAC;AACrC,QAEE,yBAAe;AACjB,QAkBE,aAAQ,GAAG,KAAK,CAAC;AACnB,QAoBY,gBAAW,GAAG,IAAI,YAAY,EAAU,CAAC;AACrD,QACW,gBAAW,GAAW,EAAE,CAAC;AACpC,QACW,WAAM,GAAQ,EAAC,MAAM,EAAE,OAAO,EAAC,CAAC;AAC3C,QAGE,gBAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAClC,QACW,WAAM,GAAG,EAAE,CAAC;AACvB,QAEE,wBAAiB;AACnB,QAWW,qBAAgB,GAAG,KAAK,CAAC;AACpC,QAAE,mBAAc,GAAG,KAAK,CAAC;AACzB,QAME,gBAAW,GAAG;AAChB;AACQ,YAAJ,OAAO,EAAE;AACb,gBAAM,SAAS,EAAE;AACjB,oBAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,CAAC;AAAE,oBAC3C,CAAC,YAAY,EAAE,YAAY,CAAC;AACpC,oBACQ,CAAC,EAAC,QAAQ,EAAE,CAAC,EAAC,EAAE,EAAC,QAAQ,EAAE,CAAC,EAAC,CAAC;AAAE,oBAChC,CAAC,EAAC,MAAM,EAAE,SAAS,EAAC,EAAE,EAAC,MAAM,EAAE,QAAQ,EAAC,CAAC;AACjD,oBAAQ,CAAC,EAAC,QAAQ,EAAE,KAAK,EAAC,EAAE,EAAC,QAAQ,EAAE,OAAO,EAAC,CAAC;AAAE,oBAC1C,CAAC,EAAC,QAAQ,EAAE,IAAI,EAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;AAAE,oBACtC,CAAC,EAAC,WAAW,EAAE,KAAK,EAAC,CAAC;AAAE,oBAExB,CAAC,EAAC,MAAM,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,EAAC,CAAC;AAAE,oBAC/C,CAAC,EAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAC,CAAC;AAC/C,oBACQ,CAAC,EAAC,OAAO,EAAE,EAAE,EAAC,EAAE,EAAC,YAAY,EAAE,EAAE,EAAC,CAAC;AAAE,oBACrC,CAAC,EAAC,MAAM,EAAE,EAAE,EAAC,CAAC;AACtB,oBAAQ,CAAC,EAAC,OAAO,EAAE,EAAE,EAAC,CAAC;AACvB,oBACQ,CAAC,OAAO,CAAC;AAAE,oBAEX,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;AAA0B,iBACrD;AACP,aAAK;AACL,YAAI,OAAO,EAAE;AACb,gBAAM,YAAY,EAAE,2BAA2B;AAC/C,gBAAM,sBAAsB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;AACxC,gBAAM,MAAM,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW;AAClD,oBAAQ,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,WAAW,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,IAAI,WAAW,KAAK,GAAG,CAAC,EAAE;AACxG,wBAAU,IAAI,MAAM,CAAC;AACrB,wBAAU,IAAI,WAAW,KAAK,GAAG,EAAE;AACnC,4BAAY,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;AACxC,yBAAW;AAAC,6BAAK,IAAI,WAAW,KAAK,GAAG,EAAE;AAC1C,4BAAY,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;AACxC,yBAAW;AAAC,6BAAK;AACjB,4BAAY,MAAM,GAAG,EAAE,CAAC;AACxB,yBAAW;AACX,wBACU,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;AACvC,4BAAY,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAC3C,yBAAW;AAAC,6BAAK;AACjB,4BAAY,MAAM,OAAO,GAAG,EAAE,CAAC;AAC/B;AACgB,4BAAJ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACpD;AACkB,gCAAJ,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,EAAE;AACpF,oCAAgB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACxC,iCAAe;AACf,6BAAa;AACb,4BAAY,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AAC5C,yBAAW;AACX,qBAAS;AACT,iBAAO;AACP,aAAK;AACL,YAAI,QAAQ,EAAE;AACd,gBAAM,QAAQ,EAAE;AAChB,oBAAQ,KAAK,EAAE;AACf,wBAAU,GAAG,EAAE,EAAE;AACjB,wBAAU,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO;AAClC,4BAAY,OAAO,IAAI,CAAC;AACxB,yBAAW;AACX,qBAAS;AACT,iBAAO;AACP,aAAK;AACL,SAAG,CAAC;AACJ,QAAE,wBAAmB,GAAG,6YAA6Y,CAAC;AACta,QAAY,aAAQ,GAAG,IAAI,YAAY,EAAU,CAAC;AAClD,QAAE,0BAAqB,GAAG,IAAI,CAAC;AAC/B,QAkCE,sBAAiB,GAAG,CAAC,CAAC;AACxB,YAAI,MAAM,YAAY,GAAG,CAAC,CAAC,aAAa,CAAC;AACzC,YAAI,MAAM,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;AACpF,YAAI,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;AACxD,YAAI,IAAI,SAAS,GAAqB,YAAY,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC;AACnG,YAAI,IAAI,SAAS,IAAI,IAAI,EAAE;AAC3B,gBAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AAClD,gBAAM,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;AACrD,gBAAM,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AAC5C,gBAAM,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AAC/C,gBAAM,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE;AAC3C,oBAAQ,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;AACtC,oBAAQ,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;AACrC,wBAAU,OAAO;AACjB,qBAAS;AACT,oBACQ,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;AACxC,oBAAQ,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,oBACQ,IAAI,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;AACvD,oBAAQ,IAAI,KAAK,EAAE;AACnB,wBAAU,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AACpC,qBAAS;AACT,oBAAQ,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACtC,oBAAQ,+CAAA,IAAI,EAAa,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;AAC/G,iBAAO,CAAC,CAAC;AACT,gBAAM,YAAY,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;AAC1C,aAAK;AACL,YAAI,SAAS,CAAC,KAAK,EAAE,CAAC;AACtB,SAAG,CAAA;AACH,QAaE,2BAAmB;AACrB,YAAI,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC;AACvC,YAAI,IAAI,CAAC,WAAW,CAAC,oBAAoB,EAAE,CAAC;AAC5C,YAAI,MAAM,UAAU,GAAkB,EAAE,CAAC;AACzC,YAAI,IAAI,IAAI,CAAC,QAAQ,EAAE;AACvB,gBAAM,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAC3C,aAAK;AACL,YAAI,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE;AAC5B,gBAAM,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;AAC5D,aAAK;AACL,YAAI,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE;AAC5B,gBAAM,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;AAC5D,aAAK;AACL,YAAI,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;AAC/C,YAAI,IAAI,CAAC,WAAW,CAAC,sBAAsB,EAAE,CAAC;AAC9C,YAAI,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AAC5B,SAAG,EAAA;AACH,QACE,eAAU,GAAG,CAAC,KAAK;AACrB,YAAI,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;AAC5B;AACQ;AACQ;AACQ;AACQ;AACQ;AACQ;AAEO;AAGjC;AACO;AACb;AAEf;AACQ;AAAuC;AAEnB;AAGJ;AACpB;AAAqD;AAChD,YAHN,MAAM,IAAI,GAAG,IAAI,CAAC;AACtB,YAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;AAClC,gBAAM,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE;AACrD,oBAAQ,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,2BAA2B,CAAC,CAAC;AAClF,oBACQ,IAAI,SAAS,IAAI,IAAI,EAAE;AAC/B,wBAAU,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AACtD,wBAAU,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;AACzD,wBAAU,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,2DAA2D,CAAC,CAAC;AACxG,wBAAU,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AAC9C,wBAAU,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE;AAC/C,4BAAY,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;AAC1C,4BAAY,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;AACxD,4BAAY,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;AACzC,gCAAc,OAAO;AACrB,6BAAa;AACb,4BACY,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;AAC5C,4BAAY,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACtD,4BACY,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACrC,4BACY,gDAAA,IAAI,EAAc,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;AACjE,yBAAW,CAAC,CAAC;AACb,wBAAU,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;AAChD,qBAAS;AACT,oBAAQ,SAAS,CAAC,KAAK,EAAE,CAAC;AAC1B,iBAAO,CAAC,CAAC;AACT,aACK,CAAC,CAAC;AACP,YAAI,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AAC5B,SAAG,CAAA;AACH,QACE,2BAAmB,CAAC,KAAY;AAClC,YAAI,MAAM,IAAI,GAAG,IAAI,CAAC;AACtB,YAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;AAClC,gBAAM,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE;AACrD,oBAAQ,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,2BAA2B,CAAC,CAAC;AAClF,oBAAQ,IAAI,SAAS,IAAI,IAAI,EAAE;AAC/B,wBAAU,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AACtD,wBAAU,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;AACzD,wBAAU,SAAS,CAAC,YAAY,CAAC,QAAQ,EAAE,2DAA2D,CAAC,CAAC;AACxG,wBAAU,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;AAC9C,wBAAU,SAAS,CAAC,gBAAgB,CAAC,QAAQ,EAAE;AAC/C,4BAAY,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;AAC1C,4BAAY,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;AACxD,4BAAY,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;AACzC,gCAAc,OAAO;AACrB,6BAAa;AACb,4BACY,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAC;AAC5C,4BAAY,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACtD,4BACY,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACrC,4BACY,gDAAA,IAAI,EAAc,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;AACjE,yBAAW,CAAC,CAAC;AACb,wBAAU,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;AAChD,qBAAS;AACT,oBAAQ,SAAS,CAAC,KAAK,EAAE,CAAC;AAC1B,iBAAO,CAAC,CAAC;AACT,aACK,CAAC,CAAC;AACP,SAAG,EAAA;AACH,QACE,kBAAa,GAAG,CAAC,GAAW;AAC9B,YAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;AACnC,YAAI,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;AACzB,YAAI,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AAC5B,SAAG,CAAA;AACH,QACE,0BAAqB,GAAG;AAC1B,YAAI,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC;AAC/C,YAAI,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AAC5B,SAAG,CAAA;AACH,QACE,uBAAe,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS;AACnD,YAAI,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;AAC9B,gBAAM,IAAI,CAAC,cAAc,GAAG,6CAA6C,CAAC;AAC1E,aAAK;AACL;AACQ,YAAJ,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,IAAS;AACzE,gBAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;AACpC;AACY,oBADJ,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC3B;AACY,oBAAJ,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,EAAE,2BAA2B,IAAI,OAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,0CAAE,QAAQ,YAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,0CAAE,WAAW,CAAA,KAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,GAAG,CAAA,IAAI,EAAE,CAAC;AACzK,0BAAY,cAAc,IAAI,OAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,0CAAE,QAAQ,YAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,0CAAE,WAAW,CAAA,KAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,GAAG,CAAA,IAAI,EAAE,CAAC,GAAG,mCAAmC,EAAE,MAAM,CAAC,CAAC;AACjJ;AACY,oBAAJ,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;AAC5C,oBAAQ,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AACnC,oBAAQ,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;AACpD,oBAAQ,SAAS,CAAC,KAAK,GAAG,EAAE,CAAC;AAC7B,iBAAO,CAAC,CAAC;AACT,aAAK,CAAC,CAAC;AACP,YAAI,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AAC5B,SAAG,EAAA;AACH,QACE,sBAAc,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS;AAC7D,YAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;AAC7B,gBAAM,IAAI,CAAC,aAAa,GAAG,6CAA6C,CAAC;AACzE,aAAK;AACL;AACQ,YAAJ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;AACnD,YAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,IAAS;AACxE,gBAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;AACpC;AACY,oBADJ,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC3B;AACY,oBAAJ,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,EAAE,2BAA2B,IAAI,OAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,0CAAE,QAAQ,YAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,0CAAE,WAAW,CAAA,KAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,GAAG,CAAA,IAAI,EAAE,CAAC;AACzK,0BAAY,IAAI,IAAI,OAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,0CAAE,QAAQ,YAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,0CAAE,WAAW,CAAA,KAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,GAAG,CAAA,IAAI,EAAE,CAAC,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1G;AACY,oBAAJ,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;AAC5C,oBAAQ,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AACnC,oBAAQ,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;AACpD,oBAAQ,SAAS,CAAC,KAAK,GAAG,EAAE,CAAC;AAC7B,iBAAO,CAAC,CAAC;AACT,gBAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;AACpD,aAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;AAChB,gBAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;AACpD,aAAK,CAAC,CAAC;AACP,YAAI,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AAC5B,SAAG,EAAA;AACH,KArOG;AACH,IAvJE,IAAa,KAAK,CAAC,GAAW;AAChC,QAAI,uBAAA,IAAI,UAAU,GAAG,EAAC;AACtB,QAAI,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;AACzB,QAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,uCAAc;AAC3C,YAAM,SAAS,EAAE,KAAK;AACtB,SAAK,CAAC,CAAC;AACP,QAAI,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;AAC7B,KAAG;AACH,IACE,IAAa,QAAQ,CAAC,GAAiB;AACzC,QAAI,GAAG,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,GAAG,CAAC;AAC9B,QAAI,IAAI,GAAG,EAAE;AACb,YAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;AACjC,SAAK;AAAC,aAAK;AACX,YAAM,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;AAChC,SAAK;AACL,KAAG;AACH,IAGE,IAAa,SAAS,CAAC,GAAiB;AAC1C,QAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,GAAG,CAAC;AACxC,QAAI,oDAAA,IAAI,CAAmB,CAAC;AAC5B,KAAG;AACH,IAGE,IAAwB,UAAU,CAAC,GAAW;AAChD,QAAI,IAAI,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC;AAC1B,QAAI,oDAAA,IAAI,CAAmB,CAAC;AAC5B,KAAG;AACH,IAGE,IAAwB,UAAU,CAAC,GAAW;AAChD,QAAI,IAAI,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC;AAC1B,QAAI,oDAAA,IAAI,CAAmB,CAAC;AAC5B,KAAG;AACH,IAeE,IAAa,IAAI,CAAC,GAAuB;AAC3C,QAAI,IAAI,GAAG,EAAE;AACb,YAAM,IAAI,GAAG,YAAY,MAAM,EAAE;AACjC,gBAAQ,uBAAA,IAAI,SAAS,GAAG,CAAC,IAAI,EAAC;AAC9B,aAAO;AAAC,iBAAK;AACb,gBAAQ,uBAAA,IAAI,SAAS,GAAG,EAAC;AACzB,aAAO;AACP,SAAK;AACL,KAAG;AACH,IA0FE,QAAQ;AACV;AAAgB,QAAZ,mFAAY,UAAU,sCAAa,IAAI,CAAC,WAAW,EAAE;AACzD,QACI,IAAI,IAAI,CAAC,OAAO,EAAE;AACtB,YAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC;AACxD,SAAK;AACL,QAAI,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;AAC9E,YAAM,IAAI,CAAC,qBAAqB,GAAG,WAAW,CAAC;AAC/C,gBAAQ,IAAI,QAAQ,CAAC,aAAa,CAAC,sBAAsB,CAAC,EAAE;AAC5D,oBAAU,aAAa,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;AACpD,oBAAU,QAAQ,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,mBAAmB,CAAC;AAC9F,oBAAU,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;AAC9E,oBAAU,IAAI,YAAY,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,GAAG,EAAE;AAC7D,wBAAY,YAAY,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;AACvD,wBAAY,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;AAC3E,qBAAW;AACX,iBAAS;AACT,aAAO,EAAE,IAAI,CAAC,CAAC;AACf,SAAK;AACL,QACI,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;AAC5B,KAAG;AACH,IAgCE,eAAe;AACjB,QAAI,4CAAmB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,GAAG;AACvE,YAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACjC,YAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC9B,SAAK,CAAC,CAAC,CAAC;AACR,KAAG;AACH,IACE,WAAW;AACb;AAAgB,QAAZ,mFAAY,aAAa,sCAAa;AAC1C,QAAI,4CAAmB,WAAW,EAAE,CAAC;AACrC,KAAG;AACH,IAmKE,kBAAkB,CAAC,CAAkB;AACvC;AACI,QAAA,YAAY,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;AACjH,KAAG;AACH,IACE,gBAAgB,CAAC,CAAgB;AACnC,QAAI,YAAY,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC;AACtD,YAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;AAClE,YAAM,MAAM,EAAE,CAAC;AACf,SAAK,CAAC,CAAC,CAAC;AACR,KAAG;AACH;AACA;AAAoO;AAAwB,YArZ3P,SAAS,SAAC;AACX,gBAAE,QAAQ,EAAE,WAAW;AACvB,gBAAE,4kEAAsC;AACxC,gBACE,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAChD;AAImB,aAJnB;AACE;AAAG;AAAkC,YAzBtC,MAAM;AACN,YAPA,iBAAiB;AACjB,YAiBM,YAAY;AAAI,YAGhB,gBAAgB;AAAI,4CAoKvB,MAAM,SAAC,aAAa,cAAG,QAAQ;AAAM;AAAG;AAA4B,qBAtJtE,SAAS,SAAC,QAAQ;AAAO,oBACzB,KAAK;AAAK,oBAEV,KAAK;AAAK,uBASV,KAAK;AAAK,wBAWV,KAAK;AAAK,yBAOV,KAAK,SAAC,WAAW;AAAO,yBAOxB,KAAK,SAAC,WAAW;AAAO,0BAKxB,MAAM;AAAK,0BAEX,KAAK;AAAK,qBAEV,KAAK;AAAK,mBAEV,KAAK;AAAK,qBAIV,KAAK;AAAK,6BACV,KAAK;AAAK,4BACV,KAAK;AAAK,mBAEV,KAAK;AAAK,sBAUV,KAAK;AAAK,+BACV,KAAK;AAAK,4BAKV,KAAK;AAAK,4BACV,KAAK;AAAK,yBACV,YAAY,SAAC,mBAAmB;AAAO,uBAoEvC,MAAM;AAAI;AAAG;AAAC,MC3JJ,cAAc;AAAG;AAC9B;AAA8B,YAhB7B,QAAQ,SAAC;AACV,gBAAE,YAAY,EAAE,CAAC,QAAQ,CAAC;AAC1B,gBAAE,OAAO,EAAE;AACX,oBAAI,YAAY;AAChB,oBAAI,WAAW;AACf,oBAAI,mBAAmB;AACvB,oBAAI,WAAW,CAAC,OAAO,EAAE;AACzB,oBAAI,iBAAiB;AACrB,oBAAI,cAAc;AAClB,oBAAI,gBAAgB;AACpB,oBAAI,WAAW;AACf,iBAAG;AACH,gBAAE,OAAO,EAAE,CAAC,QAAQ,CAAC;AACrB,gBAAE,SAAS,EAAE,EAAE;AACf,aAAC;AACE;AAAG;ACzBN;AACA;AACA;AACA;ACHA;AACA;AACA;AACA;AACA;AACuG","sourcesContent":["import { InjectionToken } from \"@angular/core\";\r\n\r\nexport interface IEditorConfiguration {\r\n uploadImage: (formData: FormData, args?: any) => Promise<string>;\r\n uploadFile: (formData: FormData, args?: any) => Promise<string>;\r\n}\r\n\r\nexport const EDITOR_CONFIG = new InjectionToken<IEditorConfiguration>('editor.configuration');","export const Constants = {\r\n ARE_YOU_WANT_TO_DELETE: 'Are you sure you want to delete?',\r\n ACTIVE: 'active',\r\n IN_ACTIVE: 'inactive',\r\n APPROVE: 'approve',\r\n UN_APPROVE: 'unapprove',\r\n ACCEPT_SIZE_IMAGE: 'Logo only accept image with size <= 2MB',\r\n ACCEPT_TYPE_IMAGE:\r\n 'image/png, image/gif, image/jpeg, image/bmp, image/x-icon',\r\n PAGE_TYPE_NEW: 'new',\r\n PAGE_TYPE_EDIT: 'edit',\r\n SAVE: 'saveOb',\r\n SAVE_AND_CONTINUE: 'saveAndContOb',\r\n IMAGE_SIZE: 2048000,\r\n SUCCESS: 'Success',\r\n IMPORT_SUCCESSFULLY: 'Import successfully!',\r\n ERROR: 'Error',\r\n FAILED: 'fail',\r\n FILE: 'file',\r\n NONE: 'none',\r\n NOT_EXIST_ID_OR_LINK: 'This ID/Link is not existing',\r\n FEATURE_IS_PENDING: 'This feature is pending',\r\n NOT_SUPPORT_FILE_IMAGE: 'File upload is not supported.',\r\n NOT_SUPPORT_FILE_IMPORT: 'File import is not supported.',\r\n NETWORK_ERROR: 'Network Error',\r\n SORT_BY: [\r\n {\r\n value: 0,\r\n name: 'Created Date'\r\n },\r\n {\r\n value: 1,\r\n name: 'Title'\r\n }\r\n ],\r\n DESC: [\r\n {\r\n value: true,\r\n name: 'Descending'\r\n },\r\n {\r\n value: false,\r\n name: 'Ascending'\r\n }\r\n ],\r\n FORM_ERRORS: {\r\n Id: '',\r\n textSearch: '',\r\n ImportLogId: '',\r\n SortBy: '',\r\n Reverse: '',\r\n },\r\n VALIDATION_MESSAGES: {}\r\n};\r\n\r\nexport const PROMOTION_PERMISSIONS = ['ListPromotion', 'AddNewPromotion', 'EditPromotion',\r\n 'ActiveOrInactivePromotion', 'RemovePromotion', 'ImportPromotion', 'ExportPromotion'];\r\n\r\nexport const ValidateMessageConstants = {\r\n TITLE_REQUIRED: 'Title is required',\r\n TITLE_MAXLENGTH: 'Title is not more than 55 characters',\r\n TITLE_PATTERN: 'Title is required',\r\n\r\n CREATED_AT_REQUIRED: 'Created At is required',\r\n\r\n SHOW_ON_HOME_REQUIRED: 'Show On Home is required',\r\n\r\n DISPLAY_NUMBER_REQUIRED: 'Display Number is required',\r\n\r\n CONTENT_TYPE_REQUIRED: 'Content Type is required',\r\n\r\n DISCOUNT_PERCENT_REQUIRED: 'Discount percent is required',\r\n DISCOUNT_PERCENT_MAX: 'Max discount percent is 100, cannot input greater',\r\n DISCOUNT_PERCENT_MIN: 'Min discount percent is 0, cannot input lower'\r\n};\r\n\r\nexport const PROMOTION_FORM = {\r\n FORM_ERRORS: {\r\n title: '',\r\n createdAt: '',\r\n displayNumber: '',\r\n showOnHome: '',\r\n discountPercent: '',\r\n isActive: '',\r\n ctaLabelName: '',\r\n ctaDeepLink: '',\r\n tags: ''\r\n },\r\n VALIDATION_MESSAGES: {\r\n title: {\r\n required: ValidateMessageConstants.TITLE_REQUIRED,\r\n maxlength: ValidateMessageConstants.TITLE_MAXLENGTH,\r\n pattern: ValidateMessageConstants.TITLE_PATTERN\r\n },\r\n createdAt: {\r\n required: ValidateMessageConstants.CREATED_AT_REQUIRED\r\n },\r\n showOnHome: {\r\n required: ValidateMessageConstants.SHOW_ON_HOME_REQUIRED\r\n },\r\n displayNumber: {\r\n required: ValidateMessageConstants.DISPLAY_NUMBER_REQUIRED\r\n },\r\n discountPercent: {\r\n required: ValidateMessageConstants.DISCOUNT_PERCENT_REQUIRED,\r\n max: ValidateMessageConstants.DISCOUNT_PERCENT_MAX,\r\n min: ValidateMessageConstants.DISCOUNT_PERCENT_MIN\r\n },\r\n tags: {\r\n required: ValidateMessageConstants.CONTENT_TYPE_REQUIRED\r\n }\r\n }\r\n};\r\n","import {\r\n AfterViewInit,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChild,\r\n EventEmitter,\r\n Inject,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n OnInit,\r\n Optional,\r\n Output,\r\n ViewChild\r\n} from '@angular/core';\r\nimport {ContentChange, QuillEditorComponent, SelectionChange} from 'ngx-quill';\r\nimport * as uuid from 'uuid';\r\nimport {FormControl, FormGroup, NgForm, ValidatorFn, Validators} from '@angular/forms';\r\nimport {Constants} from './constant';\r\nimport {Subscription} from 'rxjs';\r\nimport {SdApiService} from '@sd-angular/core/api';\r\nimport 'quill-mention';\r\nimport {SdLabelDefDirective} from '@sd-angular/core/common';\r\nimport {SdLoadingService} from \"@sd-angular/core/loading\";\r\nimport { EDITOR_CONFIG, IEditorConfiguration } from './editor.model';\r\nimport Quill from 'quill';\r\n\r\n@Component({\r\n selector: 'sd-editor',\r\n templateUrl: './editor.component.html',\r\n styleUrls: ['./editor.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdEditor implements OnInit, AfterViewInit, OnDestroy {\r\n #name = `N${uuid.v4()}`;\r\n id: string = `I${uuid.v4()}`;\r\n #subscription = new Subscription();\r\n @ViewChild('editor') editor: QuillEditorComponent;\r\n @Input() label: string;\r\n #model: string;\r\n @Input() set model(val: string) {\r\n this.#model = val;\r\n this.modelHTML = val;\r\n this.formControl.setValue(this.#model, {\r\n emitEvent: false\r\n });\r\n this.ref.detectChanges();\r\n }\r\n\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\r\n required = false;\r\n\r\n @Input() set pRequired(val: boolean | '') {\r\n this.required = (val === '') || val;\r\n this.#updateValidator();\r\n }\r\n\r\n minlength: number;\r\n\r\n @Input('minlength') set _minlength(val: number) {\r\n this.minlength = +val;\r\n this.#updateValidator();\r\n }\r\n\r\n maxlength: number;\r\n\r\n @Input('maxlength') set _maxlength(val: number) {\r\n this.maxlength = +val;\r\n this.#updateValidator();\r\n }\r\n\r\n @Output() modelChange = new EventEmitter<string>();\r\n\r\n @Input() placeholder: string = '';\r\n\r\n @Input() styles: any = {height: '250px'};\r\n\r\n @Input() args: any;\r\n\r\n formControl = new FormControl();\r\n\r\n @Input() domain = '';\r\n @Input() urlUploadImage: string;\r\n @Input() urlUploadFile: string;\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\r\n @Input() toolbar: any;\r\n @Input() enableHTMLButton = false;\r\n showHtmlEditor = false;\r\n modelHTML: string;\r\n\r\n quillEvent: any;\r\n @Input() mentionValues: { id: string, value: string, link?: string }[];\r\n @Input() hashTagValues: { id: string, value: string, link?: string }[];\r\n @ContentChild(SdLabelDefDirective) sdLabelDef: SdLabelDefDirective;\r\n quillConfig = {\r\n // toolbar: '.toolbar',\r\n toolbar: {\r\n container: [\r\n ['bold', 'italic', 'underline', 'strike'], // toggled buttons\r\n ['blockquote', 'code-block'],\r\n\r\n [{'header': 1}, {'header': 2}], // custom button values\r\n [{'list': 'ordered'}, {'list': 'bullet'}],\r\n [{'script': 'sub'}, {'script': 'super'}], // superscript/subscript\r\n [{'indent': '-1'}, {'indent': '+1'}], // outdent/indent\r\n [{'direction': 'rtl'}], // text direction\r\n\r\n [{'size': ['small', false, 'large', 'huge']}], // custom dropdown\r\n [{'header': [1, 2, 3, 4, 5, 6, false]}],\r\n\r\n [{'color': []}, {'background': []}], // dropdown with defaults from theme\r\n [{'font': []}],\r\n [{'align': []}],\r\n\r\n ['clean'], // remove formatting button\r\n\r\n ['link', 'image', 'video'] // link and image, video\r\n ]\r\n },\r\n mention: {\r\n allowedChars: /^[A-Za-z0-9\\sÅÄÖåäö._-]*$/,\r\n mentionDenotationChars: ['@', '#'],\r\n source: (searchTerm, renderList, mentionChar) => {\r\n if ((this.mentionValues && mentionChar === '@') || (this.hashTagValues && mentionChar === '#')) {\r\n let values;\r\n if (mentionChar === '@') {\r\n values = this.mentionValues;\r\n } else if (mentionChar === '#') {\r\n values = this.hashTagValues;\r\n } else {\r\n values = [];\r\n }\r\n\r\n if (searchTerm.length === 0) {\r\n renderList(values, searchTerm);\r\n } else {\r\n const matches = [];\r\n // tslint:disable-next-line:prefer-for-of\r\n for (let i = 0; i < values.length; i++) {\r\n // tslint:disable-next-line:no-bitwise\r\n if (~values[i].value.toLowerCase().indexOf(searchTerm.toLowerCase())) {\r\n matches.push(values[i]);\r\n }\r\n }\r\n renderList(matches, searchTerm);\r\n }\r\n }\r\n },\r\n },\r\n keyboard: {\r\n bindings: {\r\n enter: {\r\n key: 13,\r\n handler: (range, context) => {\r\n return true;\r\n }\r\n }\r\n }\r\n }\r\n };\r\n customButtonFileSVG = '<svg xmlns=\"http://www.w3.org/2000/svg\" enable-background=\"new 0 0 24 24\" height=\"24px\" viewBox=\"0 0 24 24\" width=\"24px\" fill=\"#000000\"><g><rect fill=\"none\" height=\"24\" width=\"24\"/><path d=\"M20.41,8.41l-4.83-4.83C15.21,3.21,14.7,3,14.17,3H5C3.9,3,3,3.9,3,5v14c0,1.1,0.9,2,2,2h14c1.1,0,2-0.9,2-2V9.83 C21,9.3,20.79,8.79,20.41,8.41z M7,7h7v2H7V7z M17,17H7v-2h10V17z M17,13H7v-2h10V13z\"/></g></svg>';\r\n @Output() sdChange = new EventEmitter<string>();\r\n timerLoadQuillToolbar = null;\r\n\r\n constructor(\r\n private ngZone: NgZone,\r\n private ref: ChangeDetectorRef,\r\n private sdApiService: SdApiService,\r\n private loadingService: SdLoadingService,\r\n @Inject(EDITOR_CONFIG) @Optional() private configuration: IEditorConfiguration,\r\n ) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.#form?.addControl(this.#name, this.formControl);\r\n\r\n if (this.toolbar) {\r\n this.quillConfig.toolbar.container = this.toolbar;\r\n }\r\n if (this.quillConfig.toolbar.container.toString().includes('customFile')) {\r\n this.timerLoadQuillToolbar = setInterval(() => {\r\n if (document.querySelector('button.ql-customFile')) {\r\n clearInterval(this.timerLoadQuillToolbar);\r\n document.querySelector('button.ql-customFile').innerHTML = this.customButtonFileSVG;\r\n const customButton = document.querySelector('button.ql-customFile');\r\n if (customButton.getAttribute('listener') !== '1') {\r\n customButton.setAttribute('listener', '1');\r\n customButton.addEventListener('click', this.customFileHandler);\r\n }\r\n }\r\n }, 1000);\r\n }\r\n\r\n this.ref.markForCheck();\r\n }\r\n\r\n customFileHandler = (e) => {\r\n const customButton = e.currentTarget;\r\n const quillToolbar = customButton.closest('.ql-formats').closest('.ql-toolbar');\r\n const quillBox = quillToolbar.closest('.ql-formats')\r\n let fileInput: HTMLInputElement = quillToolbar.querySelector('input.ql-customFile[type=file]');\r\n if (fileInput == null) {\r\n fileInput = document.createElement('input');\r\n fileInput.setAttribute('type', Constants.FILE);\r\n fileInput.setAttribute('accept', '*');\r\n fileInput.classList.add('ql-customFile');\r\n fileInput.addEventListener('change', () => {\r\n const files = fileInput.files;\r\n if (!files || !files.length) {\r\n return;\r\n }\r\n\r\n const formData = new FormData();\r\n formData.append(Constants.FILE, files[0]);\r\n\r\n let range = localStorage.getItem('quillRange');\r\n if (range) {\r\n range = JSON.parse(range);\r\n }\r\n this.quillEvent.enable(false);\r\n this.#uploadFile(formData, this.quillEvent, range, fileInput, quillToolbar.closest('quill-editor').id);\r\n });\r\n quillToolbar.appendChild(fileInput);\r\n }\r\n fileInput.click();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.formControl.valueChanges.subscribe((val) => {\r\n this.modelChange.emit(val);\r\n this.sdChange.emit(val);\r\n }));\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 #updateValidator = () => {\r\n this.formControl.clearValidators();\r\n this.formControl.clearAsyncValidators();\r\n const validators: ValidatorFn[] = [];\r\n if (this.required) {\r\n validators.push(Validators.required);\r\n }\r\n if (this.minlength > 0) {\r\n validators.push(Validators.minLength(this.minlength));\r\n }\r\n if (this.maxlength > 0) {\r\n validators.push(Validators.maxLength(this.maxlength));\r\n }\r\n this.formControl.setValidators(validators);\r\n this.formControl.updateValueAndValidity();\r\n this.ref.markForCheck();\r\n }\r\n\r\n editorInit = (quill) => {\r\n this.quillEvent = quill;\r\n // const txtArea = document.createElement('textarea');\r\n // txtArea.style.cssText =\r\n // 'width: 100%;margin: 0px;background: rgb(29, 29, 29);' +\r\n // 'box-sizing: border-box;color: rgb(204, 204, 204);' +\r\n // 'font-size: 15px;outline: none;padding: 20px;' +\r\n // 'line-height: 24px;font-family: Consolas, Menlo, Monaco, &quot;Courier New&quot;, monospace;' +\r\n // 'position: absolute;top: 0;bottom: 0;border: none;display:none';\r\n\r\n // const htmlEditor = quill.addContainer('ql-custom');\r\n // htmlEditor.appendChild(txtArea);\r\n\r\n // const myEditor = quill.container;\r\n // quill.on('text-change', (delta, oldDelta, source) => {\r\n // const html = myEditor.children[0].innerHTML;\r\n // txtArea.value = html;\r\n // // if (quill.getLength() > this.maxlength) {\r\n // // quill.deleteText(this.maxlength, quill.getLength());\r\n // // }\r\n // // this.formControl.setValue(html);\r\n // });\r\n const self = this;\r\n this.ngZone.runOutsideAngular(() => {\r\n quill.getModule('toolbar').addHandler('image', function () {\r\n let fileInput = this.container.querySelector('input.ql-image[type=file]');\r\n\r\n if (fileInput == null) {\r\n fileInput = document.createElement('input');\r\n fileInput.setAttribute('type', Constants.FILE);\r\n fileInput.setAttribute('accept', 'image/png, image/gif, image/jpeg, image/bmp, image/x-icon');\r\n fileInput.classList.add('ql-image');\r\n fileInput.addEventListener('change', () => {\r\n const files = fileInput.files;\r\n const range = this.quill.getSelection(true);\r\n if (!files || !files.length) {\r\n return;\r\n }\r\n\r\n const formData = new FormData();\r\n formData.append(Constants.FILE, files[0]);\r\n\r\n this.quill.enable(false);\r\n\r\n self.#uploadImage(formData, quill, range, fileInput);\r\n });\r\n this.container.appendChild(fileInput);\r\n }\r\n fileInput.click();\r\n });\r\n\r\n });\r\n this.ref.markForCheck();\r\n }\r\n\r\n #initUploadImage = (quill: Quill) => {\r\n const self = this;\r\n this.ngZone.runOutsideAngular(() => {\r\n quill.getModule('toolbar').addHandler('image', function () {\r\n let fileInput = this.container.querySelector('input.ql-image[type=file]');\r\n if (fileInput == null) {\r\n fileInput = document.createElement('input');\r\n fileInput.setAttribute('type', Constants.FILE);\r\n fileInput.setAttribute('accept', 'image/png, image/gif, image/jpeg, image/bmp, image/x-icon');\r\n fileInput.classList.add('ql-image');\r\n fileInput.addEventListener('change', () => {\r\n const files = fileInput.files;\r\n const range = this.quill.getSelection(true);\r\n if (!files || !files.length) {\r\n return;\r\n }\r\n\r\n const formData = new FormData();\r\n formData.append(Constants.FILE, files[0]);\r\n\r\n this.quill.enable(false);\r\n \r\n self.#uploadImage(formData, quill, range, fileInput);\r\n });\r\n this.container.appendChild(fileInput);\r\n }\r\n fileInput.click();\r\n });\r\n\r\n });\r\n }\r\n\r\n onModelChange = (val: string) => {\r\n this.formControl.setValue(val);\r\n this.modelHTML = val;\r\n this.ref.markForCheck();\r\n }\r\n\r\n onClickShowHtmlEditor = () => {\r\n this.showHtmlEditor = !this.showHtmlEditor;\r\n this.ref.markForCheck();\r\n }\r\n\r\n #uploadImage = (formData, quill, range, fileInput) => {\r\n if (!this.urlUploadImage) {\r\n this.urlUploadImage = '/partner/v2/merchandise/file/uploaduserfile';\r\n }\r\n // this.domain = 'https://api-commerce-qc.vinid.dev';\r\n this.sdApiService.post(this.urlUploadImage, formData).then((resp: any) => {\r\n this.ngZone.runOutsideAngular(() => {\r\n quill.enable(true);\r\n // quill.editor.insertEmbed(range.index, 'image', resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '');\r\n quill.getModule('clipboard').dangerouslyPasteHTML(range.index, '<a target=\"_blank\" href=\"' + (resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '')\r\n + '\"><img src=\"' + (resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '') + '\" alt=\"c-image-editor-quill\"></a>', 'user');\r\n // quill.insertText();\r\n const content = quill.getContents();\r\n quill.setContents(content);\r\n quill.setSelection(range.index + 1, 'user');\r\n fileInput.value = '';\r\n });\r\n });\r\n this.ref.markForCheck();\r\n }\r\n\r\n #uploadFile = (formData, quill, range, fileInput, loadingID) => {\r\n if (!this.urlUploadFile) {\r\n this.urlUploadFile = '/partner/v2/merchandise/file/uploaduserfile';\r\n }\r\n // this.domain = 'https://api-commerce-qc.vinid.dev';\r\n this.loadingService.start('#box-' + loadingID);\r\n this.sdApiService.post(this.urlUploadFile, formData).then((resp: any) => {\r\n this.ngZone.runOutsideAngular(() => {\r\n quill.enable(true);\r\n // quill.editor.insertEmbed(range.index, 'image', resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '');\r\n quill.getModule('clipboard').dangerouslyPasteHTML(range.index, '<a target=\"_blank\" href=\"' + (resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '')\r\n + '\">' + (resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '') + '</a>', 'user');\r\n // quill.insertText();\r\n const content = quill.getContents();\r\n quill.setContents(content);\r\n quill.setSelection(range.index + 1, 'user');\r\n fileInput.value = '';\r\n });\r\n this.loadingService.stop('#box-' + loadingID);\r\n }).catch((er) => {\r\n this.loadingService.stop('#box-' + loadingID);\r\n });\r\n this.ref.markForCheck();\r\n }\r\n\r\n onSelectionChanged(e: SelectionChange) {\r\n // localStorage.setItem('quillRange', e.range ? JSON.stringify(e.range) : (e.oldRange ? JSON.stringify(e.oldRange) : null));\r\n localStorage.setItem('quillRange', e.editor.getSelection() ? JSON.stringify(e.editor.getSelection()) : null);\r\n }\r\n\r\n onContentChanged(e: ContentChange) {\r\n localStorage.setItem('quillRange', JSON.stringify({\r\n index: (e.editor.getLength() ? e.editor.getLength() - 1 : 0),\r\n length: 0\r\n }));\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { QuillModule } from 'ngx-quill';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { SdEditor } from './editor.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport {SdButtonModule} from '@sd-angular/core/button';\r\nimport {SdTextareaModule} from '@sd-angular/core/textarea';\r\nimport {SdApiModule, SdApiService} from '@sd-angular/core/api';\r\n\r\n@NgModule({\r\n declarations: [SdEditor],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n QuillModule.forRoot(),\r\n SdTranslateModule,\r\n SdButtonModule,\r\n SdTextareaModule,\r\n SdApiModule\r\n ],\r\n exports: [SdEditor],\r\n providers: [],\r\n})\r\nexport class SdEditorModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport * from './lib/editor.model';\r\nexport * from './lib/editor.module';\r\nexport * from './lib/constant';\r\nexport * from './lib/editor.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"]}
1
+ {"version":3,"file":"sd-angular-core-editor.js","sources":["../../../../projects/sd-core/editor/src/lib/editor.model.ts","../../../../projects/sd-core/editor/src/lib/constant.ts","../../../../projects/sd-core/editor/src/lib/editor.component.ts","../../../../projects/sd-core/editor/src/lib/editor.module.ts","../../../../projects/sd-core/editor/src/public-api.ts","../../../../projects/sd-core/editor/sd-angular-core-editor.ts"],"sourcesContent":["import { InjectionToken } from \"@angular/core\";\r\n\r\nexport interface IEditorConfiguration {\r\n uploadImage?: (formData: FormData, args?: any) => Promise<string>;\r\n actions: {\r\n key: string;\r\n icon: string;\r\n click: (event: Event, args?: {\r\n cursorPosition: {\r\n index: number;\r\n length: number;\r\n },\r\n args?: any\r\n }) => void\r\n }[];\r\n}\r\n\r\nexport const EDITOR_CONFIG = new InjectionToken<IEditorConfiguration>('editor.configuration');","export const Constants = {\r\n ARE_YOU_WANT_TO_DELETE: 'Are you sure you want to delete?',\r\n ACTIVE: 'active',\r\n IN_ACTIVE: 'inactive',\r\n APPROVE: 'approve',\r\n UN_APPROVE: 'unapprove',\r\n ACCEPT_SIZE_IMAGE: 'Logo only accept image with size <= 2MB',\r\n ACCEPT_TYPE_IMAGE:\r\n 'image/png, image/gif, image/jpeg, image/bmp, image/x-icon',\r\n PAGE_TYPE_NEW: 'new',\r\n PAGE_TYPE_EDIT: 'edit',\r\n SAVE: 'saveOb',\r\n SAVE_AND_CONTINUE: 'saveAndContOb',\r\n IMAGE_SIZE: 2048000,\r\n SUCCESS: 'Success',\r\n IMPORT_SUCCESSFULLY: 'Import successfully!',\r\n ERROR: 'Error',\r\n FAILED: 'fail',\r\n FILE: 'file',\r\n NONE: 'none',\r\n NOT_EXIST_ID_OR_LINK: 'This ID/Link is not existing',\r\n FEATURE_IS_PENDING: 'This feature is pending',\r\n NOT_SUPPORT_FILE_IMAGE: 'File upload is not supported.',\r\n NOT_SUPPORT_FILE_IMPORT: 'File import is not supported.',\r\n NETWORK_ERROR: 'Network Error',\r\n SORT_BY: [\r\n {\r\n value: 0,\r\n name: 'Created Date'\r\n },\r\n {\r\n value: 1,\r\n name: 'Title'\r\n }\r\n ],\r\n DESC: [\r\n {\r\n value: true,\r\n name: 'Descending'\r\n },\r\n {\r\n value: false,\r\n name: 'Ascending'\r\n }\r\n ],\r\n FORM_ERRORS: {\r\n Id: '',\r\n textSearch: '',\r\n ImportLogId: '',\r\n SortBy: '',\r\n Reverse: '',\r\n },\r\n VALIDATION_MESSAGES: {}\r\n};\r\n\r\nexport const PROMOTION_PERMISSIONS = ['ListPromotion', 'AddNewPromotion', 'EditPromotion',\r\n 'ActiveOrInactivePromotion', 'RemovePromotion', 'ImportPromotion', 'ExportPromotion'];\r\n\r\nexport const ValidateMessageConstants = {\r\n TITLE_REQUIRED: 'Title is required',\r\n TITLE_MAXLENGTH: 'Title is not more than 55 characters',\r\n TITLE_PATTERN: 'Title is required',\r\n\r\n CREATED_AT_REQUIRED: 'Created At is required',\r\n\r\n SHOW_ON_HOME_REQUIRED: 'Show On Home is required',\r\n\r\n DISPLAY_NUMBER_REQUIRED: 'Display Number is required',\r\n\r\n CONTENT_TYPE_REQUIRED: 'Content Type is required',\r\n\r\n DISCOUNT_PERCENT_REQUIRED: 'Discount percent is required',\r\n DISCOUNT_PERCENT_MAX: 'Max discount percent is 100, cannot input greater',\r\n DISCOUNT_PERCENT_MIN: 'Min discount percent is 0, cannot input lower'\r\n};\r\n\r\nexport const PROMOTION_FORM = {\r\n FORM_ERRORS: {\r\n title: '',\r\n createdAt: '',\r\n displayNumber: '',\r\n showOnHome: '',\r\n discountPercent: '',\r\n isActive: '',\r\n ctaLabelName: '',\r\n ctaDeepLink: '',\r\n tags: ''\r\n },\r\n VALIDATION_MESSAGES: {\r\n title: {\r\n required: ValidateMessageConstants.TITLE_REQUIRED,\r\n maxlength: ValidateMessageConstants.TITLE_MAXLENGTH,\r\n pattern: ValidateMessageConstants.TITLE_PATTERN\r\n },\r\n createdAt: {\r\n required: ValidateMessageConstants.CREATED_AT_REQUIRED\r\n },\r\n showOnHome: {\r\n required: ValidateMessageConstants.SHOW_ON_HOME_REQUIRED\r\n },\r\n displayNumber: {\r\n required: ValidateMessageConstants.DISPLAY_NUMBER_REQUIRED\r\n },\r\n discountPercent: {\r\n required: ValidateMessageConstants.DISCOUNT_PERCENT_REQUIRED,\r\n max: ValidateMessageConstants.DISCOUNT_PERCENT_MAX,\r\n min: ValidateMessageConstants.DISCOUNT_PERCENT_MIN\r\n },\r\n tags: {\r\n required: ValidateMessageConstants.CONTENT_TYPE_REQUIRED\r\n }\r\n }\r\n};\r\n","import {\r\n AfterViewInit,\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ContentChild,\r\n EventEmitter,\r\n Inject,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n OnInit,\r\n Optional,\r\n Output,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { ContentChange, QuillEditorComponent, SelectionChange } from 'ngx-quill';\r\nimport * as uuid from 'uuid';\r\nimport { FormControl, FormGroup, NgForm, ValidatorFn, Validators } from '@angular/forms';\r\nimport { Constants } from './constant';\r\nimport { Subscription } from 'rxjs';\r\nimport { SdApiService } from '@sd-angular/core/api';\r\nimport 'quill-mention';\r\nimport { SdLabelDefDirective } from '@sd-angular/core/common';\r\nimport { SdLoadingService } from \"@sd-angular/core/loading\";\r\nimport { EDITOR_CONFIG, IEditorConfiguration } from './editor.model';\r\nimport Quill from 'quill';\r\n\r\n@Component({\r\n selector: 'sd-editor',\r\n templateUrl: './editor.component.html',\r\n styleUrls: ['./editor.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdEditor implements OnInit, AfterViewInit, OnDestroy {\r\n #name = `N${uuid.v4()}`;\r\n id: string = `I${uuid.v4()}`;\r\n #subscription = new Subscription();\r\n @ViewChild('editor') editor: QuillEditorComponent;\r\n @Input() label: string;\r\n #model: string;\r\n @Input() set model(val: string) {\r\n this.#model = val;\r\n this.modelHTML = val;\r\n this.formControl.setValue(this.#model, {\r\n emitEvent: false\r\n });\r\n this.ref.detectChanges();\r\n }\r\n\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\r\n required = false;\r\n\r\n @Input() set pRequired(val: boolean | '') {\r\n this.required = (val === '') || val;\r\n this.#updateValidator();\r\n }\r\n\r\n minlength: number;\r\n\r\n @Input('minlength') set _minlength(val: number) {\r\n this.minlength = +val;\r\n this.#updateValidator();\r\n }\r\n\r\n maxlength: number;\r\n\r\n @Input('maxlength') set _maxlength(val: number) {\r\n this.maxlength = +val;\r\n this.#updateValidator();\r\n }\r\n\r\n @Output() modelChange = new EventEmitter<string>();\r\n\r\n @Input() placeholder: string = '';\r\n\r\n @Input() styles: any = { height: '250px' };\r\n\r\n @Input() args: any;\r\n\r\n formControl = new FormControl();\r\n\r\n @Input() domain = '';\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\r\n @Input() toolbar: any;\r\n @Input() enableHTMLButton = false;\r\n showHtmlEditor = false;\r\n modelHTML: string;\r\n\r\n quillEvent: any;\r\n @Input() mentionValues: { id: string, value: string, link?: string }[];\r\n @Input() hashTagValues: { id: string, value: string, link?: string }[];\r\n @ContentChild(SdLabelDefDirective) sdLabelDef: SdLabelDefDirective;\r\n quillConfig = {\r\n // toolbar: '.toolbar',\r\n toolbar: {\r\n container: [\r\n ['bold', 'italic', 'underline', 'strike'], // toggled buttons\r\n ['blockquote', 'code-block'],\r\n\r\n [{ 'header': 1 }, { 'header': 2 }], // custom button values\r\n [{ 'list': 'ordered' }, { 'list': 'bullet' }],\r\n [{ 'script': 'sub' }, { 'script': 'super' }], // superscript/subscript\r\n [{ 'indent': '-1' }, { 'indent': '+1' }], // outdent/indent\r\n [{ 'direction': 'rtl' }], // text direction\r\n\r\n [{ 'size': ['small', false, 'large', 'huge'] }], // custom dropdown\r\n [{ 'header': [1, 2, 3, 4, 5, 6, false] }],\r\n\r\n [{ 'color': [] }, { 'background': [] }], // dropdown with defaults from theme\r\n [{ 'font': [] }],\r\n [{ 'align': [] }],\r\n\r\n ['clean'], // remove formatting button\r\n\r\n ['link', 'image', 'video'] // link and image, video\r\n ]\r\n },\r\n mention: {\r\n allowedChars: /^[A-Za-z0-9\\sÅÄÖåäö._-]*$/,\r\n mentionDenotationChars: ['@', '#'],\r\n source: (searchTerm, renderList, mentionChar) => {\r\n if ((this.mentionValues && mentionChar === '@') || (this.hashTagValues && mentionChar === '#')) {\r\n let values;\r\n if (mentionChar === '@') {\r\n values = this.mentionValues;\r\n } else if (mentionChar === '#') {\r\n values = this.hashTagValues;\r\n } else {\r\n values = [];\r\n }\r\n\r\n if (searchTerm.length === 0) {\r\n renderList(values, searchTerm);\r\n } else {\r\n const matches = [];\r\n // tslint:disable-next-line:prefer-for-of\r\n for (let i = 0; i < values.length; i++) {\r\n // tslint:disable-next-line:no-bitwise\r\n if (~values[i].value.toLowerCase().indexOf(searchTerm.toLowerCase())) {\r\n matches.push(values[i]);\r\n }\r\n }\r\n renderList(matches, searchTerm);\r\n }\r\n }\r\n },\r\n },\r\n keyboard: {\r\n bindings: {\r\n enter: {\r\n key: 13,\r\n handler: (range, context) => {\r\n return true;\r\n }\r\n }\r\n }\r\n }\r\n };\r\n customButtonFileSVG = '<svg xmlns=\"http://www.w3.org/2000/svg\" enable-background=\"new 0 0 24 24\" height=\"24px\" viewBox=\"0 0 24 24\" width=\"24px\" fill=\"#000000\"><g><rect fill=\"none\" height=\"24\" width=\"24\"/><path d=\"M20.41,8.41l-4.83-4.83C15.21,3.21,14.7,3,14.17,3H5C3.9,3,3,3.9,3,5v14c0,1.1,0.9,2,2,2h14c1.1,0,2-0.9,2-2V9.83 C21,9.3,20.79,8.79,20.41,8.41z M7,7h7v2H7V7z M17,17H7v-2h10V17z M17,13H7v-2h10V13z\"/></g></svg>';\r\n @Output() sdChange = new EventEmitter<string>();\r\n timerLoadQuillToolbar = null;\r\n constructor(\r\n private ngZone: NgZone,\r\n private ref: ChangeDetectorRef,\r\n private sdApiService: SdApiService,\r\n private loadingService: SdLoadingService,\r\n @Inject(EDITOR_CONFIG) @Optional() private configuration: IEditorConfiguration,\r\n ) {\r\n\r\n }\r\n\r\n ngOnInit() {\r\n this.#form?.addControl(this.#name, this.formControl);\r\n\r\n if (this.toolbar) {\r\n this.quillConfig.toolbar.container = this.toolbar;\r\n }\r\n\r\n for (const action of (this.configuration?.actions || [])) {\r\n if (this.quillConfig.toolbar.container.toString().includes(action.key)) {\r\n const qlKey = `button.ql-${action.key}`\r\n const interval = setInterval(() => {\r\n if (document.querySelector(qlKey)) {\r\n clearInterval(interval);\r\n document.querySelector(qlKey).innerHTML = this.customButtonFileSVG;\r\n const customButton = document.querySelector(qlKey);\r\n if (customButton.getAttribute('listener') !== '1') {\r\n customButton.setAttribute('listener', '1');\r\n customButton.addEventListener('click', (e) => {\r\n const cursorPosition = localStorage.getItem('quillRange');\r\n action.click(e, {\r\n cursorPosition: JSON.parse(cursorPosition),\r\n args: this.args\r\n });\r\n });\r\n }\r\n }\r\n }, 1000);\r\n }\r\n }\r\n\r\n // if (this.quillConfig.toolbar.container.toString().includes('customFile')) {\r\n // this.timerLoadQuillToolbar = setInterval(() => {\r\n // if (document.querySelector('button.ql-customFile')) {\r\n // clearInterval(this.timerLoadQuillToolbar);\r\n // document.querySelector('button.ql-customFile').innerHTML = this.customButtonFileSVG;\r\n // const customButton = document.querySelector('button.ql-customFile');\r\n // if (customButton.getAttribute('listener') !== '1') {\r\n // customButton.setAttribute('listener', '1');\r\n // customButton.addEventListener('click', this.customFileHandler);\r\n // }\r\n // }\r\n // }, 1000);\r\n // }\r\n\r\n this.ref.markForCheck();\r\n }\r\n\r\n // customFileHandler = (e) => {\r\n // const customButton = e.currentTarget;\r\n // const quillToolbar = customButton.closest('.ql-formats').closest('.ql-toolbar');\r\n // const quillBox = quillToolbar.closest('.ql-formats')\r\n // let fileInput: HTMLInputElement = quillToolbar.querySelector('input.ql-customFile[type=file]');\r\n // if (fileInput == null) {\r\n // fileInput = document.createElement('input');\r\n // fileInput.setAttribute('type', Constants.FILE);\r\n // fileInput.setAttribute('accept', '*');\r\n // fileInput.classList.add('ql-customFile');\r\n // fileInput.addEventListener('change', () => {\r\n // const files = fileInput.files;\r\n // if (!files || !files.length) {\r\n // return;\r\n // }\r\n\r\n // const formData = new FormData();\r\n // formData.append(Constants.FILE, files[0]);\r\n // let range = localStorage.getItem('quillRange');\r\n // if (range) {\r\n // range = JSON.parse(range);\r\n // }\r\n // this.quillEvent.enable(false);\r\n // this.#uploadFile(formData, this.quillEvent, range, fileInput, quillToolbar.closest('quill-editor').id);\r\n // });\r\n // quillToolbar.appendChild(fileInput);\r\n // }\r\n // fileInput.click();\r\n // }\r\n\r\n ngAfterViewInit() {\r\n this.#subscription.add(this.formControl.valueChanges.subscribe((val) => {\r\n this.modelChange.emit(val);\r\n this.sdChange.emit(val);\r\n }));\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 #updateValidator = () => {\r\n this.formControl.clearValidators();\r\n this.formControl.clearAsyncValidators();\r\n const validators: ValidatorFn[] = [];\r\n if (this.required) {\r\n validators.push(Validators.required);\r\n }\r\n if (this.minlength > 0) {\r\n validators.push(Validators.minLength(this.minlength));\r\n }\r\n if (this.maxlength > 0) {\r\n validators.push(Validators.maxLength(this.maxlength));\r\n }\r\n this.formControl.setValidators(validators);\r\n this.formControl.updateValueAndValidity();\r\n this.ref.markForCheck();\r\n }\r\n\r\n editorInit = (quill) => {\r\n this.quillEvent = quill;\r\n // const txtArea = document.createElement('textarea');\r\n // txtArea.style.cssText =\r\n // 'width: 100%;margin: 0px;background: rgb(29, 29, 29);' +\r\n // 'box-sizing: border-box;color: rgb(204, 204, 204);' +\r\n // 'font-size: 15px;outline: none;padding: 20px;' +\r\n // 'line-height: 24px;font-family: Consolas, Menlo, Monaco, &quot;Courier New&quot;, monospace;' +\r\n // 'position: absolute;top: 0;bottom: 0;border: none;display:none';\r\n\r\n // const htmlEditor = quill.addContainer('ql-custom');\r\n // htmlEditor.appendChild(txtArea);\r\n\r\n // const myEditor = quill.container;\r\n // quill.on('text-change', (delta, oldDelta, source) => {\r\n // const html = myEditor.children[0].innerHTML;\r\n // txtArea.value = html;\r\n // // if (quill.getLength() > this.maxlength) {\r\n // // quill.deleteText(this.maxlength, quill.getLength());\r\n // // }\r\n // // this.formControl.setValue(html);\r\n // });\r\n const self = this;\r\n this.#initUploadImage(quill);\r\n // this.ngZone.runOutsideAngular(() => {\r\n // quill.getModule('toolbar').addHandler('image', function () {\r\n // let fileInput = this.container.querySelector('input.ql-image[type=file]');\r\n\r\n // if (fileInput == null) {\r\n // fileInput = document.createElement('input');\r\n // fileInput.setAttribute('type', Constants.FILE);\r\n // fileInput.setAttribute('accept', 'image/png, image/gif, image/jpeg, image/bmp, image/x-icon');\r\n // fileInput.classList.add('ql-image');\r\n // fileInput.addEventListener('change', () => {\r\n // const files = fileInput.files;\r\n // const range = this.quill.getSelection(true);\r\n // if (!files || !files.length) {\r\n // return;\r\n // }\r\n\r\n // const formData = new FormData();\r\n // formData.append(Constants.FILE, files[0]);\r\n\r\n // this.quill.enable(false);\r\n\r\n // self.#uploadImage(formData, quill, range, fileInput);\r\n // });\r\n // this.container.appendChild(fileInput);\r\n // }\r\n // fileInput.click();\r\n // });\r\n\r\n // });\r\n this.ref.markForCheck();\r\n }\r\n\r\n #initUploadImage = (quill: Quill) => {\r\n const self = this;\r\n this.ngZone.runOutsideAngular(() => {\r\n quill.getModule('toolbar').addHandler('image', function () {\r\n let fileInput = this.container.querySelector('input.ql-image[type=file]');\r\n if (fileInput == null) {\r\n fileInput = document.createElement('input');\r\n fileInput.setAttribute('type', Constants.FILE);\r\n fileInput.setAttribute('accept', 'image/png, image/gif, image/jpeg, image/bmp, image/x-icon');\r\n fileInput.classList.add('ql-image');\r\n fileInput.addEventListener('change', () => {\r\n const files = fileInput.files;\r\n const range = this.quill.getSelection(true);\r\n if (!files || !files.length) {\r\n return;\r\n }\r\n const formData = new FormData();\r\n formData.append(Constants.FILE, files[0]);\r\n this.quill.enable(false);\r\n // self.#uploadImage(formData, quill, range, fileInput);\r\n self.configuration?.uploadImage(formData, self.args).then(url => {\r\n self.ngZone.runOutsideAngular(() => {\r\n quill.enable(true);\r\n // quill.editor.insertEmbed(range.index, 'image', resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '');\r\n quill.getModule('clipboard').dangerouslyPasteHTML(range.index, '<a target=\"_blank\" href=\"' + (url || '')\r\n + '\"><img src=\"' + (url || '') + '\" alt=\"c-image-editor-quill\"></a>', 'user');\r\n // quill.insertText();\r\n const content = quill.getContents();\r\n quill.setContents(content);\r\n quill.setSelection(range.index + 1, 'user');\r\n fileInput.value = '';\r\n });\r\n });\r\n });\r\n this.container.appendChild(fileInput);\r\n }\r\n fileInput.click();\r\n });\r\n\r\n });\r\n }\r\n\r\n onModelChange = (val: string) => {\r\n this.formControl.setValue(val);\r\n this.modelHTML = val;\r\n this.ref.markForCheck();\r\n }\r\n\r\n onClickShowHtmlEditor = () => {\r\n this.showHtmlEditor = !this.showHtmlEditor;\r\n this.ref.markForCheck();\r\n }\r\n\r\n // #uploadImage = (formData, quill, range, fileInput) => {\r\n // if (!this.urlUploadImage) {\r\n // this.urlUploadImage = '/partner/v2/merchandise/file/uploaduserfile';\r\n // }\r\n // // this.domain = 'https://api-commerce-qc.vinid.dev';\r\n // this.sdApiService.post(this.urlUploadImage, formData).then((resp: any) => {\r\n // this.ngZone.runOutsideAngular(() => {\r\n // quill.enable(true);\r\n // // quill.editor.insertEmbed(range.index, 'image', resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '');\r\n // quill.getModule('clipboard').dangerouslyPasteHTML(range.index, '<a target=\"_blank\" href=\"' + (resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '')\r\n // + '\"><img src=\"' + (resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '') + '\" alt=\"c-image-editor-quill\"></a>', 'user');\r\n // // quill.insertText();\r\n // const content = quill.getContents();\r\n // quill.setContents(content);\r\n // quill.setSelection(range.index + 1, 'user');\r\n // fileInput.value = '';\r\n // });\r\n // });\r\n // this.ref.markForCheck();\r\n // }\r\n\r\n // #uploadFile = (formData, quill, range, fileInput, loadingID) => {\r\n // if (!this.urlUploadFile) {\r\n // this.urlUploadFile = '/partner/v2/merchandise/file/uploaduserfile';\r\n // }\r\n // // this.domain = 'https://api-commerce-qc.vinid.dev';\r\n // this.loadingService.start('#box-' + loadingID);\r\n // this.sdApiService.post(this.urlUploadFile, formData).then((resp: any) => {\r\n // this.ngZone.runOutsideAngular(() => {\r\n // quill.enable(true);\r\n // // quill.editor.insertEmbed(range.index, 'image', resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '');\r\n // quill.getModule('clipboard').dangerouslyPasteHTML(range.index, '<a target=\"_blank\" href=\"' + (resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '')\r\n // + '\">' + (resp?.data?.imageUrl || resp?.data?.publish_url || resp?.url || '') + '</a>', 'user');\r\n // // quill.insertText();\r\n // const content = quill.getContents();\r\n // quill.setContents(content);\r\n // quill.setSelection(range.index + 1, 'user');\r\n // fileInput.value = '';\r\n // });\r\n // this.loadingService.stop('#box-' + loadingID);\r\n // }).catch((er) => {\r\n // this.loadingService.stop('#box-' + loadingID);\r\n // });\r\n // this.ref.markForCheck();\r\n // }\r\n\r\n onSelectionChanged(e: SelectionChange) {\r\n // localStorage.setItem('quillRange', e.range ? JSON.stringify(e.range) : (e.oldRange ? JSON.stringify(e.oldRange) : null));\r\n localStorage.setItem('quillRange', e.editor.getSelection() ? JSON.stringify(e.editor.getSelection()) : null);\r\n }\r\n\r\n onContentChanged(e: ContentChange) {\r\n localStorage.setItem('quillRange', JSON.stringify({\r\n index: (e.editor.getLength() ? e.editor.getLength() - 1 : 0),\r\n length: 0\r\n }));\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { QuillModule } from 'ngx-quill';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { SdEditor } from './editor.component';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport {SdButtonModule} from '@sd-angular/core/button';\r\nimport {SdTextareaModule} from '@sd-angular/core/textarea';\r\nimport {SdApiModule, SdApiService} from '@sd-angular/core/api';\r\n\r\n@NgModule({\r\n declarations: [SdEditor],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n QuillModule.forRoot(),\r\n SdTranslateModule,\r\n SdButtonModule,\r\n SdTextareaModule,\r\n SdApiModule\r\n ],\r\n exports: [SdEditor],\r\n providers: [],\r\n})\r\nexport class SdEditorModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport * from './lib/editor.model';\r\nexport * from './lib/editor.module';\r\nexport * from './lib/constant';\r\nexport * from './lib/editor.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["uuid.v4"],"mappings":"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"}
@@ -97,5 +97,4 @@ SdExcelService.ctorParameters = () => [
97
97
  */
98
98
 
99
99
  export { EXCEL_CONFIG, SdExcelService };
100
-
101
- //# sourceMappingURL=sd-angular-core-excel.js.map
100
+ //# sourceMappingURL=sd-angular-core-excel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sd-angular-core-excel.js","sources":["../../../../projects/sd-core/excel/src/lib/excel.model.ts","../../../../projects/sd-core/excel/src/lib/excel.service.ts","../../../../projects/sd-core/excel/src/public-api.ts","../../../../projects/sd-core/excel/sd-angular-core-excel.ts"],"names":["uuid.v4"],"mappings":"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","sourcesContent":["import { InjectionToken } from '@angular/core';\r\n\r\nexport interface ExcelTemplate {\r\n fileName?: string;\r\n columns: ExcelTempateColumn[];\r\n sheets?: {\r\n name: string,\r\n items: any[],\r\n fields: string[]\r\n }[];\r\n}\r\n\r\nexport interface ExcelTempateColumn {\r\n field: string;\r\n title: string;\r\n required?: boolean;\r\n color?: string;\r\n width?: string;\r\n description?: string;\r\n}\r\n\r\nexport interface ExcelConfig {\r\n removable?: boolean;\r\n name?: string;\r\n fullPath?: string;\r\n}\r\n\r\nexport interface IExportOption {\r\n columns: ExcelTempateColumn[];\r\n items: any[];\r\n}\r\n\r\nexport interface IBigExportRequest {\r\n filePath?: string;\r\n destination?: string;\r\n latestRow: number;\r\n columns: {\r\n field: string,\r\n title: string,\r\n description?: string,\r\n width?: string,\r\n }[];\r\n items: any[];\r\n}\r\n\r\nexport interface IBigExportResponse {\r\n filePath: string;\r\n destination: string;\r\n latestRow: number;\r\n}\r\n\r\nexport interface IExcelConfiguration {\r\n generateTemplate: (excelTemplate: ExcelTemplate) => Promise<{ filePath: string }>;\r\n generateAndUploadTemplate: (key: string, excelTemplate: ExcelTemplate) => Promise<{ fileName: string, filePath: string }>;\r\n uploadTemplate: (key?: string, validator?: (fileName: string) => string) => Promise<ExcelConfig>;\r\n download: (filePath: string, fileName?: string) => Promise<void>;\r\n generateExcelDataByTemplate: (filePath: string, columns: any[], items: any[], fileName?: string) => Promise<{ filePath: string }>;\r\n export?: (option: IExportOption) => Promise<{ filePath: string }>;\r\n bigExport?: (request: IBigExportRequest) => Promise<IBigExportResponse>;\r\n getFiles: (key?: string) => Promise<ExcelConfig[]>;\r\n remove: (key?: string, name?: string) => Promise<void>;\r\n}\r\n\r\nexport const EXCEL_CONFIG = new InjectionToken<IExcelConfiguration>('excel.configuration');\r\n","import { Optional } from '@angular/core';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport * as uuid from 'uuid';\r\nimport { ExcelTemplate, IExcelConfiguration, EXCEL_CONFIG, IExportOption, IBigExportRequest, IBigExportResponse } from './excel.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdExcelService {\r\n importId = 'I' + uuid.v4();\r\n constructor(\r\n @Inject(EXCEL_CONFIG) @Optional() private configuration: IExcelConfiguration) {\r\n }\r\n\r\n generateExcelTemplate = async (excelTemplate: ExcelTemplate) => {\r\n if (!this.configuration) {\r\n throw new Error('Please init excel configuration');\r\n }\r\n return await this.configuration.generateTemplate(excelTemplate);\r\n }\r\n\r\n generateAndUploadExcelTemplate = async (key: string, excelTemplate: ExcelTemplate) => {\r\n if (!this.configuration) {\r\n throw new Error('Please init excel configuration');\r\n }\r\n return await this.configuration.generateAndUploadTemplate(key, excelTemplate);\r\n }\r\n\r\n uploadTemplate = async (key?: string, validator?: (fileName: string) => string) => {\r\n if (!this.configuration) {\r\n throw new Error('Please init excel configuration');\r\n }\r\n return await this.configuration.uploadTemplate(key, validator);\r\n }\r\n\r\n downloadTemplate = async (filePath: string, fileName?: string) => {\r\n if (!this.configuration) {\r\n throw new Error('Please init excel configuration');\r\n }\r\n await this.configuration.download(filePath, fileName);\r\n }\r\n\r\n generateExcelDataByTemplate = async (filePath: string, columns: any[], items: any[], fileName?: string) => {\r\n if (!this.configuration) {\r\n throw new Error('Please init excel configuration');\r\n }\r\n const result = await this.configuration.generateExcelDataByTemplate(filePath, columns, items);\r\n if (result?.filePath) {\r\n await this.configuration.download(result.filePath, fileName || `${uuid.v4()}.xlsx`);\r\n }\r\n }\r\n\r\n export = async (option: IExportOption) => {\r\n if (!this.configuration?.export) {\r\n throw new Error('Please init excel export configuration');\r\n }\r\n const result = await this.configuration.export(option);\r\n if (result?.filePath) {\r\n await this.configuration.download(result.filePath);\r\n }\r\n }\r\n\r\n bigExport = async (request: IBigExportRequest): Promise<IBigExportResponse> => {\r\n if (!this.configuration?.bigExport) {\r\n throw new Error('Please init excel big export configuration');\r\n }\r\n return await this.configuration.bigExport(request);\r\n }\r\n\r\n getFiles = async (key?: string) => {\r\n if (!this.configuration) {\r\n throw new Error('Please init excel configuration');\r\n }\r\n return await this.configuration.getFiles(key);\r\n }\r\n\r\n download = async (filePath: string) => {\r\n if (!filePath) {\r\n return;\r\n }\r\n await this.configuration.download(filePath);\r\n }\r\n\r\n remove = async (key?: string, name?: string) => {\r\n if (!this.configuration) {\r\n throw new Error('Please init excel configuration');\r\n }\r\n return await this.configuration.remove(key, name);\r\n }\r\n}\r\n\r\nexport interface IExportInfo {\r\n data: any[];\r\n sheetName?: string;\r\n fileName?: string;\r\n}\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport * from './lib/excel.model';\r\nexport * from './lib/excel.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"]}
1
+ {"version":3,"file":"sd-angular-core-excel.js","sources":["../../../../projects/sd-core/excel/src/lib/excel.model.ts","../../../../projects/sd-core/excel/src/lib/excel.service.ts","../../../../projects/sd-core/excel/src/public-api.ts","../../../../projects/sd-core/excel/sd-angular-core-excel.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\r\n\r\nexport interface ExcelTemplate {\r\n fileName?: string;\r\n columns: ExcelTempateColumn[];\r\n sheets?: {\r\n name: string,\r\n items: any[],\r\n fields: string[]\r\n }[];\r\n}\r\n\r\nexport interface ExcelTempateColumn {\r\n field: string;\r\n title: string;\r\n required?: boolean;\r\n color?: string;\r\n width?: string;\r\n description?: string;\r\n}\r\n\r\nexport interface ExcelConfig {\r\n removable?: boolean;\r\n name?: string;\r\n fullPath?: string;\r\n}\r\n\r\nexport interface IExportOption {\r\n columns: ExcelTempateColumn[];\r\n items: any[];\r\n}\r\n\r\nexport interface IBigExportRequest {\r\n filePath?: string;\r\n destination?: string;\r\n latestRow: number;\r\n columns: {\r\n field: string,\r\n title: string,\r\n description?: string,\r\n width?: string,\r\n }[];\r\n items: any[];\r\n}\r\n\r\nexport interface IBigExportResponse {\r\n filePath: string;\r\n destination: string;\r\n latestRow: number;\r\n}\r\n\r\nexport interface IExcelConfiguration {\r\n generateTemplate: (excelTemplate: ExcelTemplate) => Promise<{ filePath: string }>;\r\n generateAndUploadTemplate: (key: string, excelTemplate: ExcelTemplate) => Promise<{ fileName: string, filePath: string }>;\r\n uploadTemplate: (key?: string, validator?: (fileName: string) => string) => Promise<ExcelConfig>;\r\n download: (filePath: string, fileName?: string) => Promise<void>;\r\n generateExcelDataByTemplate: (filePath: string, columns: any[], items: any[], fileName?: string) => Promise<{ filePath: string }>;\r\n export?: (option: IExportOption) => Promise<{ filePath: string }>;\r\n bigExport?: (request: IBigExportRequest) => Promise<IBigExportResponse>;\r\n getFiles: (key?: string) => Promise<ExcelConfig[]>;\r\n remove: (key?: string, name?: string) => Promise<void>;\r\n}\r\n\r\nexport const EXCEL_CONFIG = new InjectionToken<IExcelConfiguration>('excel.configuration');\r\n","import { Optional } from '@angular/core';\r\nimport { Injectable, Inject } from '@angular/core';\r\nimport * as uuid from 'uuid';\r\nimport { ExcelTemplate, IExcelConfiguration, EXCEL_CONFIG, IExportOption, IBigExportRequest, IBigExportResponse } from './excel.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SdExcelService {\r\n importId = 'I' + uuid.v4();\r\n constructor(\r\n @Inject(EXCEL_CONFIG) @Optional() private configuration: IExcelConfiguration) {\r\n }\r\n\r\n generateExcelTemplate = async (excelTemplate: ExcelTemplate) => {\r\n if (!this.configuration) {\r\n throw new Error('Please init excel configuration');\r\n }\r\n return await this.configuration.generateTemplate(excelTemplate);\r\n }\r\n\r\n generateAndUploadExcelTemplate = async (key: string, excelTemplate: ExcelTemplate) => {\r\n if (!this.configuration) {\r\n throw new Error('Please init excel configuration');\r\n }\r\n return await this.configuration.generateAndUploadTemplate(key, excelTemplate);\r\n }\r\n\r\n uploadTemplate = async (key?: string, validator?: (fileName: string) => string) => {\r\n if (!this.configuration) {\r\n throw new Error('Please init excel configuration');\r\n }\r\n return await this.configuration.uploadTemplate(key, validator);\r\n }\r\n\r\n downloadTemplate = async (filePath: string, fileName?: string) => {\r\n if (!this.configuration) {\r\n throw new Error('Please init excel configuration');\r\n }\r\n await this.configuration.download(filePath, fileName);\r\n }\r\n\r\n generateExcelDataByTemplate = async (filePath: string, columns: any[], items: any[], fileName?: string) => {\r\n if (!this.configuration) {\r\n throw new Error('Please init excel configuration');\r\n }\r\n const result = await this.configuration.generateExcelDataByTemplate(filePath, columns, items);\r\n if (result?.filePath) {\r\n await this.configuration.download(result.filePath, fileName || `${uuid.v4()}.xlsx`);\r\n }\r\n }\r\n\r\n export = async (option: IExportOption) => {\r\n if (!this.configuration?.export) {\r\n throw new Error('Please init excel export configuration');\r\n }\r\n const result = await this.configuration.export(option);\r\n if (result?.filePath) {\r\n await this.configuration.download(result.filePath);\r\n }\r\n }\r\n\r\n bigExport = async (request: IBigExportRequest): Promise<IBigExportResponse> => {\r\n if (!this.configuration?.bigExport) {\r\n throw new Error('Please init excel big export configuration');\r\n }\r\n return await this.configuration.bigExport(request);\r\n }\r\n\r\n getFiles = async (key?: string) => {\r\n if (!this.configuration) {\r\n throw new Error('Please init excel configuration');\r\n }\r\n return await this.configuration.getFiles(key);\r\n }\r\n\r\n download = async (filePath: string) => {\r\n if (!filePath) {\r\n return;\r\n }\r\n await this.configuration.download(filePath);\r\n }\r\n\r\n remove = async (key?: string, name?: string) => {\r\n if (!this.configuration) {\r\n throw new Error('Please init excel configuration');\r\n }\r\n return await this.configuration.remove(key, name);\r\n }\r\n}\r\n\r\nexport interface IExportInfo {\r\n data: any[];\r\n sheetName?: string;\r\n fileName?: string;\r\n}\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport * from './lib/excel.model';\r\nexport * from './lib/excel.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["uuid.v4"],"mappings":"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"}
@@ -269,5 +269,4 @@ SdExportService.ctorParameters = () => [
269
269
  */
270
270
 
271
271
  export { API, EXPORT_CONFIG, SdExportService };
272
-
273
- //# sourceMappingURL=sd-angular-core-export.js.map
272
+ //# sourceMappingURL=sd-angular-core-export.js.map