@sd-angular/core 1.2.82 → 1.2.85

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 (560) hide show
  1. package/assets/img/file-types/eps/001-file.eps +143 -143
  2. package/assets/img/file-types/eps/002-file-1.eps +136 -136
  3. package/assets/img/file-types/eps/003-file-2.eps +130 -130
  4. package/assets/img/file-types/eps/004-file-3.eps +127 -127
  5. package/assets/img/file-types/eps/005-file-4.eps +120 -120
  6. package/assets/img/file-types/eps/006-file-5.eps +133 -133
  7. package/assets/img/file-types/eps/007-file-6.eps +133 -133
  8. package/assets/img/file-types/eps/008-file-7.eps +144 -144
  9. package/assets/img/file-types/eps/009-file-8.eps +150 -150
  10. package/assets/img/file-types/eps/010-file-9.eps +155 -155
  11. package/assets/img/file-types/eps/011-file-10.eps +124 -124
  12. package/assets/img/file-types/eps/012-file-11.eps +147 -147
  13. package/assets/img/file-types/eps/013-file-12.eps +125 -125
  14. package/assets/img/file-types/eps/014-file-13.eps +129 -129
  15. package/assets/img/file-types/eps/015-file-14.eps +143 -143
  16. package/assets/img/file-types/eps/016-file-15.eps +130 -130
  17. package/assets/img/file-types/eps/017-file-16.eps +197 -197
  18. package/assets/img/file-types/eps/018-file-17.eps +146 -146
  19. package/assets/img/file-types/eps/019-file-18.eps +131 -131
  20. package/assets/img/file-types/eps/020-file-19.eps +137 -137
  21. package/assets/img/file-types/eps/021-file-20.eps +134 -134
  22. package/assets/img/file-types/eps/022-file-21.eps +130 -130
  23. package/assets/img/file-types/eps/023-file-22.eps +161 -161
  24. package/assets/img/file-types/eps/024-file-23.eps +144 -144
  25. package/assets/img/file-types/eps/025-file-24.eps +164 -164
  26. package/assets/img/file-types/eps/026-file-25.eps +135 -135
  27. package/assets/img/file-types/eps/027-file-26.eps +124 -124
  28. package/assets/img/file-types/eps/028-file-27.eps +120 -120
  29. package/assets/img/file-types/eps/029-file-28.eps +141 -141
  30. package/assets/img/file-types/eps/030-file-29.eps +130 -130
  31. package/assets/img/file-types/eps/031-file-30.eps +157 -157
  32. package/assets/img/file-types/eps/032-file-31.eps +139 -139
  33. package/assets/img/file-types/eps/033-file-32.eps +139 -139
  34. package/assets/img/file-types/eps/034-file-33.eps +189 -189
  35. package/assets/img/file-types/eps/035-file-34.eps +162 -162
  36. package/assets/img/file-types/eps/036-file-35.eps +142 -142
  37. package/assets/img/file-types/eps/037-file-36.eps +123 -123
  38. package/assets/img/file-types/eps/038-file-37.eps +127 -127
  39. package/assets/img/file-types/eps/039-file-38.eps +146 -146
  40. package/assets/img/file-types/eps/040-file-39.eps +126 -126
  41. package/assets/img/file-types/eps/041-file-40.eps +117 -117
  42. package/assets/img/file-types/eps/042-file-41.eps +156 -156
  43. package/assets/img/file-types/eps/043-file-42.eps +118 -118
  44. package/assets/img/file-types/eps/044-file-43.eps +172 -172
  45. package/assets/img/file-types/eps/045-file-44.eps +201 -201
  46. package/assets/img/file-types/eps/046-file-45.eps +94 -94
  47. package/assets/img/file-types/eps/047-file-46.eps +176 -176
  48. package/assets/img/file-types/eps/048-file-47.eps +238 -238
  49. package/assets/img/file-types/eps/049-file-48.eps +187 -187
  50. package/assets/img/file-types/eps/050-file-49.eps +137 -137
  51. package/bundles/sd-angular-core-export.umd.js +5 -0
  52. package/bundles/sd-angular-core-export.umd.js.map +1 -1
  53. package/bundles/sd-angular-core-export.umd.min.js +1 -1
  54. package/bundles/sd-angular-core-export.umd.min.js.map +1 -1
  55. package/bundles/sd-angular-core-grid-material.umd.js +11 -5
  56. package/bundles/sd-angular-core-grid-material.umd.js.map +1 -1
  57. package/bundles/sd-angular-core-grid-material.umd.min.js +1 -1
  58. package/bundles/sd-angular-core-grid-material.umd.min.js.map +1 -1
  59. package/bundles/sd-angular-core-input-number.umd.js +3 -0
  60. package/bundles/sd-angular-core-input-number.umd.js.map +1 -1
  61. package/bundles/sd-angular-core-input-number.umd.min.js +1 -1
  62. package/bundles/sd-angular-core-input-number.umd.min.js.map +1 -1
  63. package/bundles/sd-angular-core-modal.umd.js +1 -1
  64. package/bundles/sd-angular-core-modal.umd.js.map +1 -1
  65. package/bundles/sd-angular-core-modal.umd.min.js +1 -1
  66. package/bundles/sd-angular-core-modal.umd.min.js.map +1 -1
  67. package/bundles/sd-angular-core-select-editor.umd.js +1 -1
  68. package/bundles/sd-angular-core-select-editor.umd.min.js +1 -1
  69. package/bundles/sd-angular-core-select-editor.umd.min.js.map +1 -1
  70. package/bundles/sd-angular-core-tab-router.umd.js +30 -11
  71. package/bundles/sd-angular-core-tab-router.umd.js.map +1 -1
  72. package/bundles/sd-angular-core-tab-router.umd.min.js +2 -2
  73. package/bundles/sd-angular-core-tab-router.umd.min.js.map +1 -1
  74. package/esm2015/api/index.js +1 -1
  75. package/esm2015/api/sd-angular-core-api.js +1 -1
  76. package/esm2015/api/src/lib/api.model.js +1 -1
  77. package/esm2015/api/src/lib/api.module.js +1 -1
  78. package/esm2015/api/src/lib/api.service.js +1 -1
  79. package/esm2015/api/src/lib/http.interceptor.js +1 -1
  80. package/esm2015/api/src/lib/http.service.js +1 -1
  81. package/esm2015/api/src/lib/token.service.js +1 -1
  82. package/esm2015/api/src/public-api.js +1 -1
  83. package/esm2015/autocomplete/index.js +1 -1
  84. package/esm2015/autocomplete/sd-angular-core-autocomplete.js +1 -1
  85. package/esm2015/autocomplete/src/lib/autocomplete-display-def.directive.js +1 -1
  86. package/esm2015/autocomplete/src/lib/autocomplete.component.js +1 -1
  87. package/esm2015/autocomplete/src/lib/autocomplete.module.js +1 -1
  88. package/esm2015/autocomplete/src/public-api.js +1 -1
  89. package/esm2015/badge/index.js +1 -1
  90. package/esm2015/badge/sd-angular-core-badge.js +1 -1
  91. package/esm2015/badge/src/lib/badge.component.js +1 -1
  92. package/esm2015/badge/src/lib/badge.module.js +1 -1
  93. package/esm2015/badge/src/public-api.js +1 -1
  94. package/esm2015/button/index.js +1 -1
  95. package/esm2015/button/sd-angular-core-button.js +1 -1
  96. package/esm2015/button/src/lib/button.component.js +1 -1
  97. package/esm2015/button/src/lib/button.module.js +1 -1
  98. package/esm2015/button/src/public-api.js +1 -1
  99. package/esm2015/cache/index.js +1 -1
  100. package/esm2015/cache/sd-angular-core-cache.js +1 -1
  101. package/esm2015/cache/src/lib/cache.model.js +1 -1
  102. package/esm2015/cache/src/lib/cache.service.js +1 -1
  103. package/esm2015/cache/src/public-api.js +1 -1
  104. package/esm2015/chart/index.js +1 -1
  105. package/esm2015/chart/sd-angular-core-chart.js +1 -1
  106. package/esm2015/chart/src/lib/chart.component.js +1 -1
  107. package/esm2015/chart/src/lib/chart.model.js +1 -1
  108. package/esm2015/chart/src/lib/chart.module.js +1 -1
  109. package/esm2015/chart/src/public-api.js +1 -1
  110. package/esm2015/checkbox/index.js +1 -1
  111. package/esm2015/checkbox/sd-angular-core-checkbox.js +1 -1
  112. package/esm2015/checkbox/src/lib/checkbox.component.js +1 -1
  113. package/esm2015/checkbox/src/lib/checkbox.module.js +1 -1
  114. package/esm2015/checkbox/src/public-api.js +1 -1
  115. package/esm2015/chip/index.js +1 -1
  116. package/esm2015/chip/sd-angular-core-chip.js +1 -1
  117. package/esm2015/chip/src/lib/chip.component.js +1 -1
  118. package/esm2015/chip/src/lib/chip.model.js +1 -1
  119. package/esm2015/chip/src/lib/chip.module.js +1 -1
  120. package/esm2015/chip/src/lib/directives/sd-chip-display-def.directive.js +1 -1
  121. package/esm2015/chip/src/lib/pipes/removable-chip.pipe.js +1 -1
  122. package/esm2015/chip/src/public-api.js +1 -1
  123. package/esm2015/comment/index.js +1 -1
  124. package/esm2015/comment/sd-angular-core-comment.js +1 -1
  125. package/esm2015/comment/src/lib/comment.component.js +1 -1
  126. package/esm2015/comment/src/lib/comment.model.js +1 -1
  127. package/esm2015/comment/src/lib/comment.module.js +1 -1
  128. package/esm2015/comment/src/public-api.js +1 -1
  129. package/esm2015/common/index.js +1 -1
  130. package/esm2015/common/sd-angular-core-common.js +1 -1
  131. package/esm2015/common/src/lib/common.module.js +1 -1
  132. package/esm2015/common/src/lib/configurations/firebase.configuration.js +1 -1
  133. package/esm2015/common/src/lib/configurations/form.configuration.js +1 -1
  134. package/esm2015/common/src/lib/directives/sd-lable.directive.js +1 -1
  135. package/esm2015/common/src/lib/directives/sd-let.directive.js +1 -1
  136. package/esm2015/common/src/lib/directives/sd-scroll.directive.js +1 -1
  137. package/esm2015/common/src/lib/directives/sd-suffix.directive.js +1 -1
  138. package/esm2015/common/src/lib/directives/view-def.directive.js +1 -1
  139. package/esm2015/common/src/lib/models/sd-form-control.js +1 -1
  140. package/esm2015/common/src/lib/services/browser.service.js +1 -1
  141. package/esm2015/common/src/lib/typings/array.extension.js +1 -1
  142. package/esm2015/common/src/lib/typings/date.extension.js +1 -1
  143. package/esm2015/common/src/lib/typings/number.extension.js +1 -1
  144. package/esm2015/common/src/lib/typings/string.extension.js +1 -1
  145. package/esm2015/common/src/public-api.js +1 -1
  146. package/esm2015/confirm/index.js +1 -1
  147. package/esm2015/confirm/sd-angular-core-confirm.js +1 -1
  148. package/esm2015/confirm/src/lib/components/dialog-confirm/dialog-confirm.component.js +1 -1
  149. package/esm2015/confirm/src/lib/confirm.module.js +1 -1
  150. package/esm2015/confirm/src/lib/confirm.service.js +1 -1
  151. package/esm2015/confirm/src/public-api.js +1 -1
  152. package/esm2015/date-month/index.js +1 -1
  153. package/esm2015/date-month/sd-angular-core-date-month.js +1 -1
  154. package/esm2015/date-month/src/lib/date-month.component.js +1 -1
  155. package/esm2015/date-month/src/lib/date-month.module.js +1 -1
  156. package/esm2015/date-month/src/public-api.js +1 -1
  157. package/esm2015/date-range/index.js +1 -1
  158. package/esm2015/date-range/sd-angular-core-date-range.js +1 -1
  159. package/esm2015/date-range/src/lib/date-range.component.js +1 -1
  160. package/esm2015/date-range/src/lib/date-range.module.js +1 -1
  161. package/esm2015/date-range/src/public-api.js +1 -1
  162. package/esm2015/date-time/index.js +1 -1
  163. package/esm2015/date-time/sd-angular-core-date-time.js +1 -1
  164. package/esm2015/date-time/src/lib/date-time.component.js +1 -1
  165. package/esm2015/date-time/src/lib/date-time.module.js +1 -1
  166. package/esm2015/date-time/src/public-api.js +1 -1
  167. package/esm2015/db/index.js +1 -1
  168. package/esm2015/db/sd-angular-core-db.js +1 -1
  169. package/esm2015/db/src/lib/db.model.js +1 -1
  170. package/esm2015/db/src/lib/db.service.js +1 -1
  171. package/esm2015/db/src/public-api.js +1 -1
  172. package/esm2015/dynamic-report/index.js +1 -1
  173. package/esm2015/dynamic-report/sd-angular-core-dynamic-report.js +1 -1
  174. package/esm2015/dynamic-report/src/lib/dynamic-report.component.js +1 -1
  175. package/esm2015/dynamic-report/src/lib/dynamic-report.module.js +1 -1
  176. package/esm2015/dynamic-report/src/public-api.js +1 -1
  177. package/esm2015/editor/index.js +1 -1
  178. package/esm2015/editor/sd-angular-core-editor.js +1 -1
  179. package/esm2015/editor/src/lib/constant.js +1 -1
  180. package/esm2015/editor/src/lib/editor.component.js +1 -1
  181. package/esm2015/editor/src/lib/editor.module.js +1 -1
  182. package/esm2015/editor/src/public-api.js +1 -1
  183. package/esm2015/excel/index.js +1 -1
  184. package/esm2015/excel/sd-angular-core-excel.js +1 -1
  185. package/esm2015/excel/src/lib/excel.model.js +1 -1
  186. package/esm2015/excel/src/lib/excel.service.js +1 -1
  187. package/esm2015/excel/src/public-api.js +1 -1
  188. package/esm2015/export/index.js +1 -1
  189. package/esm2015/export/sd-angular-core-export.js +1 -1
  190. package/esm2015/export/src/lib/export.model.js +1 -1
  191. package/esm2015/export/src/lib/export.service.js +3 -1
  192. package/esm2015/export/src/public-api.js +1 -1
  193. package/esm2015/filter/index.js +1 -1
  194. package/esm2015/filter/sd-angular-core-filter.js +1 -1
  195. package/esm2015/filter/src/lib/directives/sd-filter-def.directive.js +1 -1
  196. package/esm2015/filter/src/lib/filter.component.js +1 -1
  197. package/esm2015/filter/src/lib/filter.model.js +1 -1
  198. package/esm2015/filter/src/lib/filter.module.js +1 -1
  199. package/esm2015/filter/src/lib/filter.service.js +1 -1
  200. package/esm2015/filter/src/lib/pipes/values-local.pipe.js +1 -1
  201. package/esm2015/filter/src/lib/pipes/values-server.pipe.js +1 -1
  202. package/esm2015/filter/src/public-api.js +1 -1
  203. package/esm2015/form/index.js +1 -1
  204. package/esm2015/form/sd-angular-core-form.js +1 -1
  205. package/esm2015/form/src/lib/form.module.js +1 -1
  206. package/esm2015/form/src/public-api.js +1 -1
  207. package/esm2015/grid/index.js +1 -1
  208. package/esm2015/grid/sd-angular-core-grid.js +1 -1
  209. package/esm2015/grid/src/lib/components/grid-config/grid-config.component.js +1 -1
  210. package/esm2015/grid/src/lib/components/grid-config/grid-config.model.js +1 -1
  211. package/esm2015/grid/src/lib/components/grid-desktop-column-children-view/grid-desktop-column-children-view.component.js +1 -1
  212. package/esm2015/grid/src/lib/components/grid-desktop-column-edit/grid-desktop-column-edit.component.js +1 -1
  213. package/esm2015/grid/src/lib/components/grid-desktop-column-view/grid-desktop-column-view.component.js +1 -1
  214. package/esm2015/grid/src/lib/components/grid-desktop-inline-filter/grid-desktop-inline-filter.component.js +1 -1
  215. package/esm2015/grid/src/lib/components/grid-import-excel/grid-import-excel.component.js +1 -1
  216. package/esm2015/grid/src/lib/components/grid-mobile-item-view/grid-mobile-item-view.component.js +1 -1
  217. package/esm2015/grid/src/lib/components/grid-popup-editor/grid-popup-editor.component.js +1 -1
  218. package/esm2015/grid/src/lib/components/grid-popup-export-excel/grid-popup-export-excel.component.js +1 -1
  219. package/esm2015/grid/src/lib/components/grid-popup-export-excel/grid-popup-export-excel.model.js +1 -1
  220. package/esm2015/grid/src/lib/components/grid-popup-filter/grid-popup-filter.component.js +1 -1
  221. package/esm2015/grid/src/lib/components/grid-popup-filter/grid-popup-filter.model.js +1 -1
  222. package/esm2015/grid/src/lib/components/grid-popup-quick-filter-detail/grid-popup-quick-filter-detail.component.js +1 -1
  223. package/esm2015/grid/src/lib/components/grid-sub-information/grid-sub-information.component.js +1 -1
  224. package/esm2015/grid/src/lib/directives/cell-def.directive.js +1 -1
  225. package/esm2015/grid/src/lib/directives/cell-editor-def.directive.js +1 -1
  226. package/esm2015/grid/src/lib/directives/cell-footer-def.directive.js +1 -1
  227. package/esm2015/grid/src/lib/directives/sub-information-header-def.directive.js +1 -1
  228. package/esm2015/grid/src/lib/grid.component.js +1 -1
  229. package/esm2015/grid/src/lib/grid.model.js +1 -1
  230. package/esm2015/grid/src/lib/grid.module.js +1 -1
  231. package/esm2015/grid/src/lib/models/filter-info.model.js +1 -1
  232. package/esm2015/grid/src/lib/models/grid-configuration.model.js +1 -1
  233. package/esm2015/grid/src/lib/models/handler-dotnet.js +1 -1
  234. package/esm2015/grid/src/lib/models/handler-local.js +1 -1
  235. package/esm2015/grid/src/lib/models/handler.js +1 -1
  236. package/esm2015/grid/src/lib/pipes/cell-desktop-class-name.pipe.js +1 -1
  237. package/esm2015/grid/src/lib/pipes/cell-mobile-class-name.pipe.js +1 -1
  238. package/esm2015/grid/src/lib/pipes/column-command-filter.pipe.js +1 -1
  239. package/esm2015/grid/src/lib/pipes/column-html-template.pipe.js +1 -1
  240. package/esm2015/grid/src/lib/pipes/column-title.pipe.js +1 -1
  241. package/esm2015/grid/src/lib/pipes/column-values.pipe.js +1 -1
  242. package/esm2015/grid/src/lib/pipes/command-disabled.pipe.js +1 -1
  243. package/esm2015/grid/src/lib/pipes/command-filter.pipe.js +1 -1
  244. package/esm2015/grid/src/lib/pipes/command-hidden.pipe.js +1 -1
  245. package/esm2015/grid/src/lib/pipes/command-icon.pipe.js +1 -1
  246. package/esm2015/grid/src/lib/pipes/command-title.pipe.js +1 -1
  247. package/esm2015/grid/src/lib/pipes/dynamic-items.pipe.js +1 -1
  248. package/esm2015/grid/src/lib/pipes/editor-dynamic-item.pipe.js +1 -1
  249. package/esm2015/grid/src/lib/pipes/editor-handler.pipe.js +1 -1
  250. package/esm2015/grid/src/lib/pipes/editor-popup-visible.pipe.js +1 -1
  251. package/esm2015/grid/src/lib/pipes/editor-sub-information-handler.pipe.js +1 -1
  252. package/esm2015/grid/src/lib/pipes/editor-validate.pipe.js +1 -1
  253. package/esm2015/grid/src/lib/pipes/filter-mobile.pipe.js +1 -1
  254. package/esm2015/grid/src/lib/pipes/mobile-command-filter.js +1 -1
  255. package/esm2015/grid/src/lib/pipes/mobile-view-html-template.pipe.js +1 -1
  256. package/esm2015/grid/src/lib/pipes/value-transform.pipe.js +1 -1
  257. package/esm2015/grid/src/public-api.js +1 -1
  258. package/esm2015/grid-material/index.js +1 -1
  259. package/esm2015/grid-material/sd-angular-core-grid-material.js +1 -1
  260. package/esm2015/grid-material/src/lib/components/column-inline-filter/column-inline-filter.component.js +1 -1
  261. package/esm2015/grid-material/src/lib/components/desktop-cell/desktop-cell.component.js +1 -1
  262. package/esm2015/grid-material/src/lib/components/desktop-cell-children-view/desktop-cell-children-view.component.js +1 -1
  263. package/esm2015/grid-material/src/lib/components/desktop-cell-editor/desktop-cell-editor.component.js +1 -1
  264. package/esm2015/grid-material/src/lib/components/desktop-cell-view/desktop-cell-view.component.js +1 -1
  265. package/esm2015/grid-material/src/lib/components/desktop-command/desktop-command.component.js +1 -1
  266. package/esm2015/grid-material/src/lib/components/desktop-editor-validation/desktop-editor-validation.component.js +1 -1
  267. package/esm2015/grid-material/src/lib/components/dynamic-column/dynamic-column.component.js +1 -1
  268. package/esm2015/grid-material/src/lib/components/grid-filter/grid-filter.component.js +1 -1
  269. package/esm2015/grid-material/src/lib/components/popup-export/popup-export.component.js +1 -1
  270. package/esm2015/grid-material/src/lib/components/popup-filter/popup-filter.component.js +1 -1
  271. package/esm2015/grid-material/src/lib/components/popup-grid-configuration/popup-grid-configuration.component.js +1 -1
  272. package/esm2015/grid-material/src/lib/components/quick-action/quick-action.component.js +1 -1
  273. package/esm2015/grid-material/src/lib/directives/sd-material-cell-def.directive.js +1 -1
  274. package/esm2015/grid-material/src/lib/directives/sd-material-empty-data-def.directive.js +1 -1
  275. package/esm2015/grid-material/src/lib/directives/sd-material-filter-def.directive.js +1 -1
  276. package/esm2015/grid-material/src/lib/directives/sd-material-footer-def.directive.js +1 -1
  277. package/esm2015/grid-material/src/lib/directives/sd-material-sub-information-def.directive.js +1 -1
  278. package/esm2015/grid-material/src/lib/functions/calculate-sd-id.js +1 -1
  279. package/esm2015/grid-material/src/lib/grid-material.component.js +3 -3
  280. package/esm2015/grid-material/src/lib/grid-material.module.js +1 -1
  281. package/esm2015/grid-material/src/lib/models/grid-action.model.js +1 -1
  282. package/esm2015/grid-material/src/lib/models/grid-cell.model.js +1 -1
  283. package/esm2015/grid-material/src/lib/models/grid-column.model.js +1 -1
  284. package/esm2015/grid-material/src/lib/models/grid-command.model.js +1 -1
  285. package/esm2015/grid-material/src/lib/models/grid-config.model.js +1 -1
  286. package/esm2015/grid-material/src/lib/models/grid-configuration.model.js +1 -1
  287. package/esm2015/grid-material/src/lib/models/grid-editor.model.js +1 -1
  288. package/esm2015/grid-material/src/lib/models/grid-export.model.js +1 -1
  289. package/esm2015/grid-material/src/lib/models/grid-filter.model.js +1 -1
  290. package/esm2015/grid-material/src/lib/models/grid-group.model.js +1 -1
  291. package/esm2015/grid-material/src/lib/models/grid-option.model.js +1 -1
  292. package/esm2015/grid-material/src/lib/models/grid-reload.model.js +1 -1
  293. package/esm2015/grid-material/src/lib/models/grid-selection.model.js +1 -1
  294. package/esm2015/grid-material/src/lib/models/grid-style.model.js +1 -1
  295. package/esm2015/grid-material/src/lib/models/grid-sub-information.model.js +1 -1
  296. package/esm2015/grid-material/src/lib/models/grid.model.js +1 -1
  297. package/esm2015/grid-material/src/lib/pipes/cell-view.pipe.js +9 -3
  298. package/esm2015/grid-material/src/lib/pipes/column-badge.pipe.js +1 -1
  299. package/esm2015/grid-material/src/lib/pipes/column-children-filter.pipe.js +1 -1
  300. package/esm2015/grid-material/src/lib/pipes/column-html-template.pipe.js +1 -1
  301. package/esm2015/grid-material/src/lib/pipes/column-title.pipe.js +1 -1
  302. package/esm2015/grid-material/src/lib/pipes/column-tooltip.pipe.js +1 -1
  303. package/esm2015/grid-material/src/lib/pipes/column-transform.pipe.js +1 -1
  304. package/esm2015/grid-material/src/lib/pipes/column-values.pipe.js +1 -1
  305. package/esm2015/grid-material/src/lib/pipes/command-disable.pipe.js +1 -1
  306. package/esm2015/grid-material/src/lib/pipes/command-filter.pipe.js +1 -1
  307. package/esm2015/grid-material/src/lib/pipes/command-icon.pipe.js +1 -1
  308. package/esm2015/grid-material/src/lib/pipes/command-title.pipe.js +1 -1
  309. package/esm2015/grid-material/src/lib/pipes/editor-handler-column.pipe.js +1 -1
  310. package/esm2015/grid-material/src/lib/pipes/editor-handler-row.pipe.js +1 -1
  311. package/esm2015/grid-material/src/lib/pipes/editor-validate.pipe.js +1 -1
  312. package/esm2015/grid-material/src/lib/pipes/filter-column.pipe.js +1 -1
  313. package/esm2015/grid-material/src/lib/pipes/filter-external.pipe.js +1 -1
  314. package/esm2015/grid-material/src/lib/pipes/grid-configuration-result.pipe.js +1 -1
  315. package/esm2015/grid-material/src/lib/pipes/sd-group.pipe.js +1 -1
  316. package/esm2015/grid-material/src/lib/pipes/selection-action-filter.pipe.js +1 -1
  317. package/esm2015/grid-material/src/lib/pipes/selection-disable.pipe.js +1 -1
  318. package/esm2015/grid-material/src/lib/pipes/selection-visible-select-all.pipe.js +1 -1
  319. package/esm2015/grid-material/src/lib/pipes/selection-visible.pipe.js +1 -1
  320. package/esm2015/grid-material/src/lib/pipes/style-row-css.pipe.js +1 -1
  321. package/esm2015/grid-material/src/lib/services/generated-column/generated-column.model.js +1 -1
  322. package/esm2015/grid-material/src/lib/services/generated-column/generated-column.service.js +1 -1
  323. package/esm2015/grid-material/src/lib/services/grid-configuration.service.js +1 -1
  324. package/esm2015/grid-material/src/lib/services/grid-filter.service.js +1 -1
  325. package/esm2015/grid-material/src/public-api.js +1 -1
  326. package/esm2015/group/index.js +1 -1
  327. package/esm2015/group/sd-angular-core-group.js +1 -1
  328. package/esm2015/group/src/lib/group.component.js +1 -1
  329. package/esm2015/group/src/lib/group.module.js +1 -1
  330. package/esm2015/group/src/public-api.js +1 -1
  331. package/esm2015/header-title/index.js +1 -1
  332. package/esm2015/header-title/sd-angular-core-header-title.js +1 -1
  333. package/esm2015/header-title/src/lib/header-title.component.js +1 -1
  334. package/esm2015/header-title/src/lib/header-title.module.js +1 -1
  335. package/esm2015/header-title/src/public-api.js +1 -1
  336. package/esm2015/image-preview/index.js +1 -1
  337. package/esm2015/image-preview/sd-angular-core-image-preview.js +1 -1
  338. package/esm2015/image-preview/src/lib/directives/image-preview.directive.js +1 -1
  339. package/esm2015/image-preview/src/lib/image-preview/image-preview.component.js +1 -1
  340. package/esm2015/image-preview/src/lib/image-preview/image-preview.module.js +1 -1
  341. package/esm2015/image-preview/src/lib/models/image-preview.model.js +1 -1
  342. package/esm2015/image-preview/src/public-api.js +1 -1
  343. package/esm2015/input/index.js +1 -1
  344. package/esm2015/input/sd-angular-core-input.js +1 -1
  345. package/esm2015/input/src/lib/directives/input-suffix.directive.js +1 -1
  346. package/esm2015/input/src/lib/directives/touch.directive.js +1 -1
  347. package/esm2015/input/src/lib/input-tooltip.pipe.js +1 -1
  348. package/esm2015/input/src/lib/input.component.js +1 -1
  349. package/esm2015/input/src/lib/input.module.js +1 -1
  350. package/esm2015/input/src/public-api.js +1 -1
  351. package/esm2015/input-currency/index.js +1 -1
  352. package/esm2015/input-currency/sd-angular-core-input-currency.js +1 -1
  353. package/esm2015/input-currency/src/lib/input-currency-tooltip.pipe.js +1 -1
  354. package/esm2015/input-currency/src/lib/input-currency.component.js +1 -1
  355. package/esm2015/input-currency/src/lib/input-currency.module.js +1 -1
  356. package/esm2015/input-currency/src/public-api.js +1 -1
  357. package/esm2015/input-dropdown/index.js +1 -1
  358. package/esm2015/input-dropdown/sd-angular-core-input-dropdown.js +1 -1
  359. package/esm2015/input-dropdown/src/lib/input-tooltip.pipe.js +1 -1
  360. package/esm2015/input-dropdown/src/lib/input.component.js +1 -1
  361. package/esm2015/input-dropdown/src/lib/input.module.js +1 -1
  362. package/esm2015/input-dropdown/src/public-api.js +1 -1
  363. package/esm2015/input-number/index.js +1 -1
  364. package/esm2015/input-number/sd-angular-core-input-number.js +1 -1
  365. package/esm2015/input-number/src/lib/input-number.component.js +4 -1
  366. package/esm2015/input-number/src/lib/input-number.module.js +1 -1
  367. package/esm2015/input-number/src/public-api.js +1 -1
  368. package/esm2015/input-upload-file/index.js +1 -1
  369. package/esm2015/input-upload-file/sd-angular-core-input-upload-file.js +1 -1
  370. package/esm2015/input-upload-file/src/lib/input-upload-file.component.js +1 -1
  371. package/esm2015/input-upload-file/src/lib/input-upload-file.module.js +1 -1
  372. package/esm2015/input-upload-file/src/public-api.js +1 -1
  373. package/esm2015/json-editor/index.js +1 -1
  374. package/esm2015/json-editor/sd-angular-core-json-editor.js +1 -1
  375. package/esm2015/json-editor/src/lib/json-editor.component.js +1 -1
  376. package/esm2015/json-editor/src/lib/json-editor.module.js +1 -1
  377. package/esm2015/json-editor/src/public-api.js +1 -1
  378. package/esm2015/konva/index.js +1 -1
  379. package/esm2015/konva/sd-angular-core-konva.js +1 -1
  380. package/esm2015/konva/src/lib/konva.module.js +1 -1
  381. package/esm2015/konva/src/lib/merge-images/merge-images.component.js +1 -1
  382. package/esm2015/konva/src/public-api.js +1 -1
  383. package/esm2015/label/index.js +1 -1
  384. package/esm2015/label/sd-angular-core-label.js +1 -1
  385. package/esm2015/label/src/lib/label.component.js +1 -1
  386. package/esm2015/label/src/lib/label.module.js +1 -1
  387. package/esm2015/label/src/public-api.js +1 -1
  388. package/esm2015/lib/core.module.js +1 -1
  389. package/esm2015/lib/material.module.js +1 -1
  390. package/esm2015/loading/index.js +1 -1
  391. package/esm2015/loading/sd-angular-core-loading.js +1 -1
  392. package/esm2015/loading/src/lib/loading.service.js +1 -1
  393. package/esm2015/loading/src/public-api.js +1 -1
  394. package/esm2015/modal/index.js +1 -1
  395. package/esm2015/modal/sd-angular-core-modal.js +1 -1
  396. package/esm2015/modal/src/lib/bottom-sheet/bottom-sheet-body/bottom-sheet-body.component.js +1 -1
  397. package/esm2015/modal/src/lib/bottom-sheet/bottom-sheet-footer/bottom-sheet-footer.component.js +1 -1
  398. package/esm2015/modal/src/lib/bottom-sheet/bottom-sheet-header/bottom-sheet-header.component.js +1 -1
  399. package/esm2015/modal/src/lib/bottom-sheet/bottom-sheet.component.js +1 -1
  400. package/esm2015/modal/src/lib/modal/modal-body/modal-body.component.js +1 -1
  401. package/esm2015/modal/src/lib/modal/modal-footer/modal-footer.component.js +1 -1
  402. package/esm2015/modal/src/lib/modal/modal-header/modal-header.component.js +1 -1
  403. package/esm2015/modal/src/lib/modal/modal.component.js +2 -2
  404. package/esm2015/modal/src/lib/modal.module.js +1 -1
  405. package/esm2015/modal/src/public-api.js +1 -1
  406. package/esm2015/modal-resizable/index.js +1 -1
  407. package/esm2015/modal-resizable/sd-angular-core-modal-resizable.js +1 -1
  408. package/esm2015/modal-resizable/src/lib/modal-resizable/modal-resizable.component.js +1 -1
  409. package/esm2015/modal-resizable/src/lib/modal-resizable.module.js +1 -1
  410. package/esm2015/modal-resizable/src/public-api.js +1 -1
  411. package/esm2015/notify/index.js +1 -1
  412. package/esm2015/notify/sd-angular-core-notify.js +1 -1
  413. package/esm2015/notify/src/lib/components/dialog-confirm/dialog-confirm.component.js +1 -1
  414. package/esm2015/notify/src/lib/configurations/notify.configuration.js +1 -1
  415. package/esm2015/notify/src/lib/notify.module.js +1 -1
  416. package/esm2015/notify/src/lib/notify.service.js +1 -1
  417. package/esm2015/notify/src/public-api.js +1 -1
  418. package/esm2015/popover/index.js +1 -1
  419. package/esm2015/popover/sd-angular-core-popover.js +1 -1
  420. package/esm2015/popover/src/lib/directives/popover-content.directive.js +1 -1
  421. package/esm2015/popover/src/lib/directives/popover-trigger.directive.js +1 -1
  422. package/esm2015/popover/src/lib/popover/popover.component.js +1 -1
  423. package/esm2015/popover/src/lib/popover.model.js +1 -1
  424. package/esm2015/popover/src/lib/popover.module.js +1 -1
  425. package/esm2015/popover/src/public-api.js +1 -1
  426. package/esm2015/public-api.js +1 -1
  427. package/esm2015/quick-action/index.js +1 -1
  428. package/esm2015/quick-action/sd-angular-core-quick-action.js +1 -1
  429. package/esm2015/quick-action/src/lib/quick-action.component.js +1 -1
  430. package/esm2015/quick-action/src/lib/quick-action.module.js +1 -1
  431. package/esm2015/quick-action/src/public-api.js +1 -1
  432. package/esm2015/radio/index.js +1 -1
  433. package/esm2015/radio/sd-angular-core-radio.js +1 -1
  434. package/esm2015/radio/src/lib/radio.component.js +1 -1
  435. package/esm2015/radio/src/lib/radio.module.js +1 -1
  436. package/esm2015/radio/src/public-api.js +1 -1
  437. package/esm2015/sd-angular-core.js +1 -1
  438. package/esm2015/select/index.js +1 -1
  439. package/esm2015/select/sd-angular-core-select.js +1 -1
  440. package/esm2015/select/src/lib/select-display-def.directive.js +1 -1
  441. package/esm2015/select/src/lib/select.component.js +1 -1
  442. package/esm2015/select/src/lib/select.module.js +1 -1
  443. package/esm2015/select/src/public-api.js +1 -1
  444. package/esm2015/select-badge/index.js +1 -1
  445. package/esm2015/select-badge/sd-angular-core-select-badge.js +1 -1
  446. package/esm2015/select-badge/src/lib/select-badge-display-def.directive.js +1 -1
  447. package/esm2015/select-badge/src/lib/select-badge.component.js +1 -1
  448. package/esm2015/select-badge/src/lib/select-badge.module.js +1 -1
  449. package/esm2015/select-badge/src/public-api.js +1 -1
  450. package/esm2015/select-editor/index.js +1 -1
  451. package/esm2015/select-editor/sd-angular-core-select-editor.js +1 -1
  452. package/esm2015/select-editor/src/lib/select-editor.component.js +2 -2
  453. package/esm2015/select-editor/src/lib/select-editor.module.js +1 -1
  454. package/esm2015/select-editor/src/public-api.js +1 -1
  455. package/esm2015/service/index.js +1 -1
  456. package/esm2015/service/sd-angular-core-service.js +1 -1
  457. package/esm2015/service/src/lib/service.module.js +1 -1
  458. package/esm2015/service/src/public-api.js +1 -1
  459. package/esm2015/setting/index.js +1 -1
  460. package/esm2015/setting/sd-angular-core-setting.js +1 -1
  461. package/esm2015/setting/src/lib/setting.model.js +1 -1
  462. package/esm2015/setting/src/lib/setting.service.js +1 -1
  463. package/esm2015/setting/src/public-api.js +1 -1
  464. package/esm2015/side-drawer/index.js +1 -1
  465. package/esm2015/side-drawer/sd-angular-core-side-drawer.js +1 -1
  466. package/esm2015/side-drawer/src/lib/side-drawer/side-drawer.component.js +1 -1
  467. package/esm2015/side-drawer/src/lib/side-drawer.module.js +1 -1
  468. package/esm2015/side-drawer/src/public-api.js +1 -1
  469. package/esm2015/switch/index.js +1 -1
  470. package/esm2015/switch/sd-angular-core-switch.js +1 -1
  471. package/esm2015/switch/src/lib/switch.component.js +1 -1
  472. package/esm2015/switch/src/lib/switch.module.js +1 -1
  473. package/esm2015/switch/src/public-api.js +1 -1
  474. package/esm2015/tab-router/index.js +1 -1
  475. package/esm2015/tab-router/sd-angular-core-tab-router.js +1 -1
  476. package/esm2015/tab-router/src/lib/actions/tab-router.action.js +1 -1
  477. package/esm2015/tab-router/src/lib/components/tab-router-item/tab-router-item.component.js +21 -7
  478. package/esm2015/tab-router/src/lib/components/tab-router-nav/tab-router-nav.component.js +10 -6
  479. package/esm2015/tab-router/src/lib/components/tab-router-outlet/tab-router-outlet.component.js +3 -1
  480. package/esm2015/tab-router/src/lib/decorators/tab.decorator.js +1 -1
  481. package/esm2015/tab-router/src/lib/directives/router-link-mouse-down.directive.js +1 -1
  482. package/esm2015/tab-router/src/lib/events/tab-router.event.js +1 -1
  483. package/esm2015/tab-router/src/lib/models/tab-router.model.js +1 -1
  484. package/esm2015/tab-router/src/lib/pipes/tab-info.pipe.js +3 -3
  485. package/esm2015/tab-router/src/lib/services/tab-decorator.service.js +1 -1
  486. package/esm2015/tab-router/src/lib/services/tab-router.service.js +1 -1
  487. package/esm2015/tab-router/src/lib/tab-router.module.js +1 -1
  488. package/esm2015/tab-router/src/public-api.js +1 -1
  489. package/esm2015/textarea/index.js +1 -1
  490. package/esm2015/textarea/sd-angular-core-textarea.js +1 -1
  491. package/esm2015/textarea/src/lib/textarea.component.js +1 -1
  492. package/esm2015/textarea/src/lib/textarea.module.js +1 -1
  493. package/esm2015/textarea/src/public-api.js +1 -1
  494. package/esm2015/time/index.js +1 -1
  495. package/esm2015/time/sd-angular-core-time.js +1 -1
  496. package/esm2015/time/src/lib/time.component.js +1 -1
  497. package/esm2015/time/src/lib/time.module.js +1 -1
  498. package/esm2015/time/src/public-api.js +1 -1
  499. package/esm2015/timeline/index.js +1 -1
  500. package/esm2015/timeline/sd-angular-core-timeline.js +1 -1
  501. package/esm2015/timeline/src/lib/components/timeline.component.js +1 -1
  502. package/esm2015/timeline/src/lib/directives/timeline-def.directive.js +1 -1
  503. package/esm2015/timeline/src/lib/timeline.module.js +1 -1
  504. package/esm2015/timeline/src/public-api.js +1 -1
  505. package/esm2015/translate/index.js +1 -1
  506. package/esm2015/translate/sd-angular-core-translate.js +1 -1
  507. package/esm2015/translate/src/lib/translate.model.js +1 -1
  508. package/esm2015/translate/src/lib/translate.module.js +1 -1
  509. package/esm2015/translate/src/lib/translate.pipe.js +1 -1
  510. package/esm2015/translate/src/lib/translate.service.js +1 -1
  511. package/esm2015/upload-excel/index.js +1 -1
  512. package/esm2015/upload-excel/sd-angular-core-upload-excel.js +1 -1
  513. package/esm2015/upload-excel/src/lib/pipes/columm-hidden.pipe.js +1 -1
  514. package/esm2015/upload-excel/src/lib/pipes/column-transform.pipe.js +1 -1
  515. package/esm2015/upload-excel/src/lib/upload-excel.component.js +1 -1
  516. package/esm2015/upload-excel/src/lib/upload-excel.model.js +1 -1
  517. package/esm2015/upload-excel/src/lib/upload-excel.module.js +1 -1
  518. package/esm2015/upload-excel/src/public-api.js +1 -1
  519. package/esm2015/upload-file/index.js +1 -1
  520. package/esm2015/upload-file/sd-angular-core-upload-file.js +1 -1
  521. package/esm2015/upload-file/src/lib/upload-file.component.js +1 -1
  522. package/esm2015/upload-file/src/lib/upload-file.module.js +1 -1
  523. package/esm2015/upload-file/src/public-api.js +1 -1
  524. package/esm2015/utility/index.js +1 -1
  525. package/esm2015/utility/sd-angular-core-utility.js +1 -1
  526. package/esm2015/utility/src/lib/directives/desktop.directive.js +1 -1
  527. package/esm2015/utility/src/lib/directives/mobile-tablet.directive.js +1 -1
  528. package/esm2015/utility/src/lib/directives/mobile.directive.js +1 -1
  529. package/esm2015/utility/src/lib/directives/tablet.directive.js +1 -1
  530. package/esm2015/utility/src/lib/pipes/currency.pipe.js +1 -1
  531. package/esm2015/utility/src/lib/pipes/safe-html.pipe.js +1 -1
  532. package/esm2015/utility/src/lib/pipes/time-different.pipe.js +1 -1
  533. package/esm2015/utility/src/lib/utility.module.js +1 -1
  534. package/esm2015/utility/src/lib/utility.service.js +1 -1
  535. package/esm2015/utility/src/public-api.js +1 -1
  536. package/esm2015/view/index.js +1 -1
  537. package/esm2015/view/sd-angular-core-view.js +1 -1
  538. package/esm2015/view/src/lib/view.module.js +1 -1
  539. package/esm2015/view/src/public-api.js +1 -1
  540. package/export/src/lib/export.service.d.ts +3 -0
  541. package/fesm2015/sd-angular-core-export.js +2 -0
  542. package/fesm2015/sd-angular-core-export.js.map +1 -1
  543. package/fesm2015/sd-angular-core-grid-material.js +10 -4
  544. package/fesm2015/sd-angular-core-grid-material.js.map +1 -1
  545. package/fesm2015/sd-angular-core-input-number.js +3 -0
  546. package/fesm2015/sd-angular-core-input-number.js.map +1 -1
  547. package/fesm2015/sd-angular-core-modal.js +1 -1
  548. package/fesm2015/sd-angular-core-modal.js.map +1 -1
  549. package/fesm2015/sd-angular-core-select-editor.js +1 -1
  550. package/fesm2015/sd-angular-core-tab-router.js +29 -11
  551. package/fesm2015/sd-angular-core-tab-router.js.map +1 -1
  552. package/modal/sd-angular-core-modal.metadata.json +1 -1
  553. package/package.json +1 -1
  554. package/{sd-angular-core-1.2.82.tgz → sd-angular-core-1.2.85.tgz} +0 -0
  555. package/select-editor/sd-angular-core-select-editor.metadata.json +1 -1
  556. package/tab-router/sd-angular-core-tab-router.metadata.json +1 -1
  557. package/tab-router/src/lib/components/tab-router-item/tab-router-item.component.d.ts +9 -4
  558. package/tab-router/src/lib/components/tab-router-nav/tab-router-nav.component.d.ts +3 -2
  559. package/tab-router/src/lib/decorators/tab.decorator.d.ts +1 -0
  560. package/tab-router/src/lib/models/tab-router.model.d.ts +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"sd-angular-core-modal.umd.js","sources":["../../../../projects/sd-core/modal/src/lib/modal/modal.component.ts","../../../../projects/sd-core/modal/src/lib/modal/modal-header/modal-header.component.ts","../../../../projects/sd-core/modal/src/lib/modal/modal-body/modal-body.component.ts","../../../../projects/sd-core/modal/src/lib/modal/modal-footer/modal-footer.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet-header/bottom-sheet-header.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet-body/bottom-sheet-body.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet-footer/bottom-sheet-footer.component.ts","../../../../projects/sd-core/modal/src/lib/modal.module.ts","../../../../projects/sd-core/modal/src/public-api.ts","../../../../projects/sd-core/modal/sd-angular-core-modal.ts"],"sourcesContent":["import { Component, ElementRef, Input, ViewChild, OnInit, OnDestroy, TemplateRef, ViewEncapsulation, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { MatBottomSheet } from '@angular/material/bottom-sheet';\r\nimport { MatBottomSheetRef } from '@angular/material/bottom-sheet';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'sd-modal',\r\n templateUrl: './modal.component.html',\r\n styleUrls: ['./modal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdModal implements OnInit, OnDestroy {\r\n static index = 0;\r\n @ViewChild('templateRef') templateRef: TemplateRef<any>;\r\n @Input() title: string;\r\n @Input() noClose: boolean;\r\n @Input() type: 'primary' | 'info' | 'success' | 'warning' | 'danger';\r\n @Input() width: 'lg' | 'md' | 'sm' | string;\r\n @Input() height = 'auto';\r\n @Input() view: 'dialog' | 'bottomSheet';\r\n @Input() lazyLoadContent = true;\r\n @Input() closeClickOutSide: boolean;\r\n @ViewChild('modal') modal: ElementRef;\r\n isOpened = false;\r\n alreadyOpened = false;\r\n isMobileOrTablet = false;\r\n private bottomSheetRef: MatBottomSheetRef<any>;\r\n private dialogRef: MatDialogRef<any>;\r\n private subcription = new Subscription();\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n private dialog: MatDialog,\r\n private bottomSheet: MatBottomSheet,\r\n deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n ngOnInit(): void {\r\n this.type = this.type || 'primary';\r\n this.width = this.width || '80vw';\r\n if (!this.isMobileOrTablet) {\r\n switch (this.width) {\r\n case 'lg':\r\n this.width = '80vw';\r\n break;\r\n case 'md':\r\n this.width = '60vw';\r\n break;\r\n case 'sm':\r\n this.width = '40vw';\r\n break;\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subcription?.unsubscribe();\r\n }\r\n\r\n open = (): void => {\r\n if (this.isOpened) {\r\n return;\r\n }\r\n this.ref.markForCheck();\r\n this.alreadyOpened = true;\r\n this.isOpened = true;\r\n if ((!this.view && this.isMobileOrTablet) || this.view === 'bottomSheet') {\r\n this.bottomSheetRef = this.bottomSheet.open(this.templateRef);\r\n this.subcription.add(this.bottomSheetRef.afterDismissed().subscribe(() => {\r\n this.isOpened = false;\r\n }));\r\n } else {\r\n this.dialogRef = this.dialog.open(this.templateRef, {\r\n width: this.width,\r\n maxWidth: this.width,\r\n disableClose: !this.closeClickOutSide // mặc định ko cho đóng modal khi click out side\r\n });\r\n this.subcription.add(this.dialogRef.afterClosed().subscribe(() => {\r\n this.isOpened = false;\r\n }));\r\n }\r\n }\r\n\r\n close = (): void => {\r\n this.ref.markForCheck();\r\n this.bottomSheetRef?.dismiss();\r\n this.dialogRef?.close();\r\n }\r\n}\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Component({\r\n selector: 'sd-modal-header',\r\n templateUrl: './modal-header.component.html',\r\n styleUrls: [\r\n './modal-header.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SdModalHeader implements OnInit {\r\n isMobileOrTablet = false;\r\n constructor(deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Component({\r\n selector: 'sd-modal-body',\r\n templateUrl: './modal-body.component.html',\r\n styleUrls: ['./modal-body.component.scss'],\r\n})\r\nexport class SdModalBody implements OnInit {\r\n @Input() height = 'auto';\r\n isMobileOrTablet = false;\r\n constructor(deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n ngOnInit() {\r\n }\r\n}\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Component({\r\n selector: 'sd-modal-footer',\r\n templateUrl: './modal-footer.component.html',\r\n styleUrls: ['./modal-footer.component.scss']\r\n})\r\nexport class SdModalFooter implements OnInit {\r\n isMobileOrTablet = false;\r\n constructor(deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import { Component, ViewChild, TemplateRef, Input } from '@angular/core';\r\nimport { MatBottomSheet } from '@angular/material/bottom-sheet';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet',\r\n templateUrl: './bottom-sheet.component.html'\r\n})\r\nexport class SdBottomSheet {\r\n @ViewChild('templateRef') templateRef: TemplateRef<OptionTemplateContext>;\r\n @Input() title: string;\r\n isOpened = false;\r\n constructor(\r\n private bottomSheet: MatBottomSheet,\r\n ) { }\r\n\r\n open = () => {\r\n this.isOpened = true;\r\n this.bottomSheet.open(this.templateRef);\r\n }\r\n\r\n close = () => {\r\n this.bottomSheet.dismiss();\r\n }\r\n}\r\n\r\ninterface OptionTemplateContext {\r\n $implicit: any;\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet-header',\r\n templateUrl: './bottom-sheet-header.component.html'\r\n})\r\nexport class SdBottomSheetHeader implements OnInit {\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet-body',\r\n templateUrl: './bottom-sheet-body.component.html'\r\n})\r\nexport class SdBottomSheetBody implements OnInit {\r\n @Input() height = 'auto';\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet-footer',\r\n templateUrl: './bottom-sheet-footer.component.html',\r\n styleUrls: ['./bottom-sheet-footer.component.scss']\r\n})\r\nexport class SdBottomSheetFooter implements OnInit {\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdModal } from './modal/modal.component';\r\nimport { SdModalHeader } from './modal/modal-header/modal-header.component';\r\nimport { SdModalBody } from './modal/modal-body/modal-body.component';\r\nimport { SdModalFooter } from './modal/modal-footer/modal-footer.component';\r\nimport { SdBottomSheet } from './bottom-sheet/bottom-sheet.component';\r\nimport { SdBottomSheetHeader } from './bottom-sheet/bottom-sheet-header/bottom-sheet-header.component';\r\nimport { SdBottomSheetBody } from './bottom-sheet/bottom-sheet-body/bottom-sheet-body.component';\r\nimport { SdBottomSheetFooter } from './bottom-sheet/bottom-sheet-footer/bottom-sheet-footer.component';\r\n\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatBottomSheetModule } from '@angular/material/bottom-sheet';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { SdButtonModule } from '@sd-angular/core/button';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n MatIconModule,\r\n MatBottomSheetModule,\r\n MatDialogModule,\r\n MatButtonModule,\r\n SdButtonModule\r\n ],\r\n declarations: [\r\n SdModal,\r\n SdModalHeader,\r\n SdModalBody,\r\n SdModalFooter,\r\n SdBottomSheet,\r\n SdBottomSheetHeader,\r\n SdBottomSheetBody,\r\n SdBottomSheetFooter\r\n ],\r\n exports: [\r\n SdModal,\r\n SdModalHeader,\r\n SdModalBody,\r\n SdModalFooter,\r\n SdBottomSheet,\r\n SdBottomSheetHeader,\r\n SdBottomSheetBody,\r\n SdBottomSheetFooter\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdModalModule {\r\n\r\n}\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport * from './lib/modal/modal.component';\r\nexport * from './lib/modal/modal-header/modal-header.component';\r\nexport * from './lib/modal/modal-body/modal-body.component';\r\nexport * from './lib/modal/modal-footer/modal-footer.component';\r\n\r\nexport * from './lib/bottom-sheet/bottom-sheet.component';\r\nexport * from './lib/bottom-sheet/bottom-sheet-header/bottom-sheet-header.component';\r\nexport * from './lib/bottom-sheet/bottom-sheet-body/bottom-sheet-body.component';\r\nexport * from './lib/bottom-sheet/bottom-sheet-footer/bottom-sheet-footer.component';\r\n\r\nexport * from './lib/modal.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["Subscription","Component","ViewEncapsulation","ChangeDetectionStrategy","ChangeDetectorRef","MatDialog","MatBottomSheet","DeviceDetectorService","ViewChild","Input","NgModule","CommonModule","MatIconModule","MatBottomSheetModule","MatDialogModule","MatButtonModule","SdButtonModule"],"mappings":"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"}
1
+ {"version":3,"file":"sd-angular-core-modal.umd.js","sources":["../../../../projects/sd-core/modal/src/lib/modal/modal.component.ts","../../../../projects/sd-core/modal/src/lib/modal/modal-header/modal-header.component.ts","../../../../projects/sd-core/modal/src/lib/modal/modal-body/modal-body.component.ts","../../../../projects/sd-core/modal/src/lib/modal/modal-footer/modal-footer.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet-header/bottom-sheet-header.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet-body/bottom-sheet-body.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet-footer/bottom-sheet-footer.component.ts","../../../../projects/sd-core/modal/src/lib/modal.module.ts","../../../../projects/sd-core/modal/src/public-api.ts","../../../../projects/sd-core/modal/sd-angular-core-modal.ts"],"sourcesContent":["import { Component, ElementRef, Input, ViewChild, OnInit, OnDestroy, TemplateRef, ViewEncapsulation, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { MatBottomSheet } from '@angular/material/bottom-sheet';\r\nimport { MatBottomSheetRef } from '@angular/material/bottom-sheet';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'sd-modal',\r\n templateUrl: './modal.component.html',\r\n styleUrls: ['./modal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdModal implements OnInit, OnDestroy {\r\n static index = 0;\r\n @ViewChild('templateRef') templateRef: TemplateRef<any>;\r\n @Input() title: string;\r\n @Input() noClose: boolean;\r\n @Input() type: 'primary' | 'info' | 'success' | 'warning' | 'danger';\r\n @Input() width: 'lg' | 'md' | 'sm' | string;\r\n @Input() height = 'auto';\r\n @Input() view: 'dialog' | 'bottomSheet';\r\n @Input() lazyLoadContent = true;\r\n @Input() closeClickOutSide: boolean;\r\n @ViewChild('modal') modal: ElementRef;\r\n isOpened = false;\r\n alreadyOpened = false;\r\n isMobileOrTablet = false;\r\n private bottomSheetRef: MatBottomSheetRef<any>;\r\n private dialogRef: MatDialogRef<any>;\r\n private subcription = new Subscription();\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n private dialog: MatDialog,\r\n private bottomSheet: MatBottomSheet,\r\n deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n ngOnInit(): void {\r\n this.type = this.type || 'primary';\r\n this.width = this.width || '80vw';\r\n if (!this.isMobileOrTablet) {\r\n switch (this.width) {\r\n case 'lg':\r\n this.width = '80vw';\r\n break;\r\n case 'md':\r\n this.width = '60vw';\r\n break;\r\n case 'sm':\r\n this.width = '40vw';\r\n break;\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subcription?.unsubscribe();\r\n }\r\n\r\n open = (): void => {\r\n if (this.isOpened) {\r\n return;\r\n }\r\n this.ref.markForCheck();\r\n this.alreadyOpened = true;\r\n this.isOpened = true;\r\n if ((!this.view && this.isMobileOrTablet) || this.view === 'bottomSheet') {\r\n this.bottomSheetRef = this.bottomSheet.open(this.templateRef);\r\n this.subcription.add(this.bottomSheetRef.afterDismissed().subscribe(() => {\r\n this.isOpened = false;\r\n }));\r\n } else {\r\n this.dialogRef = this.dialog.open(this.templateRef, {\r\n width: this.width,\r\n maxWidth: this.width,\r\n disableClose: !this.closeClickOutSide // mặc định ko cho đóng modal khi click out side\r\n });\r\n this.subcription.add(this.dialogRef.afterClosed().subscribe(() => {\r\n this.isOpened = false;\r\n }));\r\n }\r\n }\r\n\r\n close = (): void => {\r\n this.ref.markForCheck();\r\n this.bottomSheetRef?.dismiss();\r\n this.dialogRef?.close();\r\n }\r\n}\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Component({\r\n selector: 'sd-modal-header',\r\n templateUrl: './modal-header.component.html',\r\n styleUrls: [\r\n './modal-header.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SdModalHeader implements OnInit {\r\n isMobileOrTablet = false;\r\n constructor(deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Component({\r\n selector: 'sd-modal-body',\r\n templateUrl: './modal-body.component.html',\r\n styleUrls: ['./modal-body.component.scss'],\r\n})\r\nexport class SdModalBody implements OnInit {\r\n @Input() height = 'auto';\r\n isMobileOrTablet = false;\r\n constructor(deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n ngOnInit() {\r\n }\r\n}\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Component({\r\n selector: 'sd-modal-footer',\r\n templateUrl: './modal-footer.component.html',\r\n styleUrls: ['./modal-footer.component.scss']\r\n})\r\nexport class SdModalFooter implements OnInit {\r\n isMobileOrTablet = false;\r\n constructor(deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import { Component, ViewChild, TemplateRef, Input } from '@angular/core';\r\nimport { MatBottomSheet } from '@angular/material/bottom-sheet';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet',\r\n templateUrl: './bottom-sheet.component.html'\r\n})\r\nexport class SdBottomSheet {\r\n @ViewChild('templateRef') templateRef: TemplateRef<OptionTemplateContext>;\r\n @Input() title: string;\r\n isOpened = false;\r\n constructor(\r\n private bottomSheet: MatBottomSheet,\r\n ) { }\r\n\r\n open = () => {\r\n this.isOpened = true;\r\n this.bottomSheet.open(this.templateRef);\r\n }\r\n\r\n close = () => {\r\n this.bottomSheet.dismiss();\r\n }\r\n}\r\n\r\ninterface OptionTemplateContext {\r\n $implicit: any;\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet-header',\r\n templateUrl: './bottom-sheet-header.component.html'\r\n})\r\nexport class SdBottomSheetHeader implements OnInit {\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet-body',\r\n templateUrl: './bottom-sheet-body.component.html'\r\n})\r\nexport class SdBottomSheetBody implements OnInit {\r\n @Input() height = 'auto';\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet-footer',\r\n templateUrl: './bottom-sheet-footer.component.html',\r\n styleUrls: ['./bottom-sheet-footer.component.scss']\r\n})\r\nexport class SdBottomSheetFooter implements OnInit {\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdModal } from './modal/modal.component';\r\nimport { SdModalHeader } from './modal/modal-header/modal-header.component';\r\nimport { SdModalBody } from './modal/modal-body/modal-body.component';\r\nimport { SdModalFooter } from './modal/modal-footer/modal-footer.component';\r\nimport { SdBottomSheet } from './bottom-sheet/bottom-sheet.component';\r\nimport { SdBottomSheetHeader } from './bottom-sheet/bottom-sheet-header/bottom-sheet-header.component';\r\nimport { SdBottomSheetBody } from './bottom-sheet/bottom-sheet-body/bottom-sheet-body.component';\r\nimport { SdBottomSheetFooter } from './bottom-sheet/bottom-sheet-footer/bottom-sheet-footer.component';\r\n\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatBottomSheetModule } from '@angular/material/bottom-sheet';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { SdButtonModule } from '@sd-angular/core/button';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n MatIconModule,\r\n MatBottomSheetModule,\r\n MatDialogModule,\r\n MatButtonModule,\r\n SdButtonModule\r\n ],\r\n declarations: [\r\n SdModal,\r\n SdModalHeader,\r\n SdModalBody,\r\n SdModalFooter,\r\n SdBottomSheet,\r\n SdBottomSheetHeader,\r\n SdBottomSheetBody,\r\n SdBottomSheetFooter\r\n ],\r\n exports: [\r\n SdModal,\r\n SdModalHeader,\r\n SdModalBody,\r\n SdModalFooter,\r\n SdBottomSheet,\r\n SdBottomSheetHeader,\r\n SdBottomSheetBody,\r\n SdBottomSheetFooter\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdModalModule {\r\n\r\n}\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport * from './lib/modal/modal.component';\r\nexport * from './lib/modal/modal-header/modal-header.component';\r\nexport * from './lib/modal/modal-body/modal-body.component';\r\nexport * from './lib/modal/modal-footer/modal-footer.component';\r\n\r\nexport * from './lib/bottom-sheet/bottom-sheet.component';\r\nexport * from './lib/bottom-sheet/bottom-sheet-header/bottom-sheet-header.component';\r\nexport * from './lib/bottom-sheet/bottom-sheet-body/bottom-sheet-body.component';\r\nexport * from './lib/bottom-sheet/bottom-sheet-footer/bottom-sheet-footer.component';\r\n\r\nexport * from './lib/modal.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["Subscription","Component","ViewEncapsulation","ChangeDetectionStrategy","ChangeDetectorRef","MatDialog","MatBottomSheet","DeviceDetectorService","ViewChild","Input","NgModule","CommonModule","MatIconModule","MatBottomSheetModule","MatDialogModule","MatButtonModule","SdButtonModule"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/material/dialog"),require("ngx-device-detector"),require("@angular/material/bottom-sheet"),require("rxjs"),require("@angular/common"),require("@angular/material/icon"),require("@angular/material/button"),require("@sd-angular/core/button")):"function"==typeof define&&define.amd?define("@sd-angular/core/modal",["exports","@angular/core","@angular/material/dialog","ngx-device-detector","@angular/material/bottom-sheet","rxjs","@angular/common","@angular/material/icon","@angular/material/button","@sd-angular/core/button"],e):e(((t="undefined"!=typeof globalThis?globalThis:t||self)["sd-angular"]=t["sd-angular"]||{},t["sd-angular"].core=t["sd-angular"].core||{},t["sd-angular"].core.modal={}),t.ng.core,t.ng.material.dialog,t.ngxDeviceDetector,t.ng.material.bottomSheet,t.rxjs,t.ng.common,t.ng.material.icon,t.ng.material.button,t["sd-angular"].core.button)}(this,(function(t,e,n,o,i,r,a,s,l,d){"use strict";var c=function(){function t(t,e,n,o){var i=this;this.ref=t,this.dialog=e,this.bottomSheet=n,this.height="auto",this.lazyLoadContent=!0,this.isOpened=!1,this.alreadyOpened=!1,this.isMobileOrTablet=!1,this.subcription=new r.Subscription,this.open=function(){i.isOpened||(i.ref.markForCheck(),i.alreadyOpened=!0,i.isOpened=!0,!i.view&&i.isMobileOrTablet||"bottomSheet"===i.view?(i.bottomSheetRef=i.bottomSheet.open(i.templateRef),i.subcription.add(i.bottomSheetRef.afterDismissed().subscribe((function(){i.isOpened=!1})))):(i.dialogRef=i.dialog.open(i.templateRef,{width:i.width,maxWidth:i.width,disableClose:!i.closeClickOutSide}),i.subcription.add(i.dialogRef.afterClosed().subscribe((function(){i.isOpened=!1})))))},this.close=function(){var t,e;i.ref.markForCheck(),null===(t=i.bottomSheetRef)||void 0===t||t.dismiss(),null===(e=i.dialogRef)||void 0===e||e.close()},this.isMobileOrTablet=!o.isDesktop()}return t.prototype.ngOnInit=function(){if(this.type=this.type||"primary",this.width=this.width||"80vw",!this.isMobileOrTablet)switch(this.width){case"lg":this.width="80vw";break;case"md":this.width="60vw";break;case"sm":this.width="40vw"}},t.prototype.ngOnDestroy=function(){var t;null===(t=this.subcription)||void 0===t||t.unsubscribe()},t}();c.index=0,c.decorators=[{type:e.Component,args:[{selector:"sd-modal",template:'<ng-template #templateRef>\r\n <ng-container *ngIf="!lazyLoadContent || alreadyOpened">\r\n <sd-modal-header *ngIf="title">\r\n <span [innerHtml]="title"></span>\r\n <button *ngIf="!noClose" class="float-right" type="button" (click)="close()" mat-icon-button>\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </sd-modal-header>\r\n <div class="d-flex flex-column px-12 px-md-24 pb-6 overflow-auto w-100 mh-100">\r\n <ng-content></ng-content>\r\n </div>\r\n </ng-container>\r\n</ng-template>',encapsulation:e.ViewEncapsulation.None,changeDetection:e.ChangeDetectionStrategy.OnPush,styles:['button:focus{outline:none!important}.mat-dialog-container{padding:0!important}.mat-dialog-container .mat-dialog-content{max-height:80vh}.mat-dialog-container .mat-dialog-actions{margin-bottom:0;min-height:auto;padding:0}.mat-bottom-sheet-container{max-height:"inherit"}sd-modal-header{display:block;padding:12px 24px;width:100%}@media (max-width:640px){sd-modal-header{padding:12px}}.cdk-global-overlay-wrapper .mat-bottom-sheet-container{border-top-left-radius:4px;border-top-right-radius:4px;box-sizing:border-box;display:flex;flex-direction:column;max-height:80vh;min-width:100vw;outline:0;overflow:hidden;padding:0}']}]}],c.ctorParameters=function(){return[{type:e.ChangeDetectorRef},{type:n.MatDialog},{type:i.MatBottomSheet},{type:o.DeviceDetectorService}]},c.propDecorators={templateRef:[{type:e.ViewChild,args:["templateRef"]}],title:[{type:e.Input}],noClose:[{type:e.Input}],type:[{type:e.Input}],width:[{type:e.Input}],height:[{type:e.Input}],view:[{type:e.Input}],lazyLoadContent:[{type:e.Input}],closeClickOutSide:[{type:e.Input}],modal:[{type:e.ViewChild,args:["modal"]}]};var p=function(){function t(t){this.isMobileOrTablet=!1,this.isMobileOrTablet=!t.isDesktop()}return t.prototype.ngOnInit=function(){},t}();p.decorators=[{type:e.Component,args:[{selector:"sd-modal-header",template:'<h3 class="mb-0" mat-dialog-title *ngIf="!isMobileOrTablet">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n</h3>\r\n<sd-bottom-sheet-header *ngIf="isMobileOrTablet">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n</sd-bottom-sheet-header>\r\n<ng-template #content>\r\n <ng-content></ng-content>\r\n</ng-template>',encapsulation:e.ViewEncapsulation.None,styles:[".mat-dialog-title{align-items:center;display:flex;justify-content:space-between}button:focus{outline:none!important}"]}]}],p.ctorParameters=function(){return[{type:o.DeviceDetectorService}]};var g=function(){function t(t){this.height="auto",this.isMobileOrTablet=!1,this.isMobileOrTablet=!t.isDesktop()}return t.prototype.ngOnInit=function(){},t}();g.decorators=[{type:e.Component,args:[{selector:"sd-modal-body",template:'<mat-dialog-content *ngIf="!isMobileOrTablet" [ngStyle]="{\'height\': height}" class="pb-5">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n</mat-dialog-content>\r\n<sd-bottom-sheet-body *ngIf="isMobileOrTablet" [height]="height">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n</sd-bottom-sheet-body>\r\n<ng-template #content>\r\n <ng-content></ng-content>\r\n</ng-template>',styles:[":host{width:100%}"]}]}],g.ctorParameters=function(){return[{type:o.DeviceDetectorService}]},g.propDecorators={height:[{type:e.Input}]};var u=function(){function t(t){this.isMobileOrTablet=!1,this.isMobileOrTablet=!t.isDesktop()}return t.prototype.ngOnInit=function(){},t}();u.decorators=[{type:e.Component,args:[{selector:"sd-modal-footer",template:'\x3c!-- <div class="modal-footer" style="padding:5px"><ng-content></ng-content></div> --\x3e\r\n<mat-dialog-actions *ngIf="!isMobileOrTablet">\r\n <div class="c-footer">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n </div>\r\n</mat-dialog-actions>\r\n<sd-bottom-sheet-footer *ngIf="isMobileOrTablet">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n</sd-bottom-sheet-footer>\r\n<ng-template #content>\r\n <ng-content></ng-content>\r\n</ng-template>',styles:[":host{width:100%}:host .c-footer{align-items:center;display:flex;flex:auto;justify-content:flex-end;padding:8px 0}"]}]}],u.ctorParameters=function(){return[{type:o.DeviceDetectorService}]};var m=function(t){var e=this;this.bottomSheet=t,this.isOpened=!1,this.open=function(){e.isOpened=!0,e.bottomSheet.open(e.templateRef)},this.close=function(){e.bottomSheet.dismiss()}};m.decorators=[{type:e.Component,args:[{selector:"sd-bottom-sheet",template:'<ng-template #templateRef>\r\n <ng-container *ngIf="isOpened">\r\n <sd-bottom-sheet-header *ngIf="title">{{title}}</sd-bottom-sheet-header>\r\n <ng-content></ng-content>\r\n </ng-container>\r\n</ng-template>'}]}],m.ctorParameters=function(){return[{type:i.MatBottomSheet}]},m.propDecorators={templateRef:[{type:e.ViewChild,args:["templateRef"]}],title:[{type:e.Input}]};var h=function(){function t(){}return t.prototype.ngOnInit=function(){},t}();h.decorators=[{type:e.Component,args:[{selector:"sd-bottom-sheet-header",template:'<h3 class="mb-0" mat-dialog-title><ng-content></ng-content></h3>'}]}],h.ctorParameters=function(){return[]};var f=function(){function t(){this.height="auto"}return t.prototype.ngOnInit=function(){},t}();f.decorators=[{type:e.Component,args:[{selector:"sd-bottom-sheet-body",template:"<div [ngStyle]=\"{'height': height}\">\r\n <ng-content></ng-content>\r\n<div>"}]}],f.ctorParameters=function(){return[]},f.propDecorators={height:[{type:e.Input}]};var b=function(){function t(){}return t.prototype.ngOnInit=function(){},t}();b.decorators=[{type:e.Component,args:[{selector:"sd-bottom-sheet-footer",template:'\x3c!-- <div class="modal-footer" style="padding:5px"><ng-content></ng-content></div> --\x3e\r\n<div class="c-footer">\r\n <ng-content></ng-content>\r\n</div>',styles:[".c-footer{align-items:center;display:flex;flex:auto;justify-content:flex-end;padding-bottom:5px;padding-top:5px}"]}]}],b.ctorParameters=function(){return[]};var y=function(){};y.decorators=[{type:e.NgModule,args:[{imports:[a.CommonModule,s.MatIconModule,i.MatBottomSheetModule,n.MatDialogModule,l.MatButtonModule,d.SdButtonModule],declarations:[c,p,g,u,m,h,f,b],exports:[c,p,g,u,m,h,f,b],providers:[]}]}],t.SdBottomSheet=m,t.SdBottomSheetBody=f,t.SdBottomSheetFooter=b,t.SdBottomSheetHeader=h,t.SdModal=c,t.SdModalBody=g,t.SdModalFooter=u,t.SdModalHeader=p,t.SdModalModule=y,Object.defineProperty(t,"__esModule",{value:!0})}));
1
+ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/material/dialog"),require("ngx-device-detector"),require("@angular/material/bottom-sheet"),require("rxjs"),require("@angular/common"),require("@angular/material/icon"),require("@angular/material/button"),require("@sd-angular/core/button")):"function"==typeof define&&define.amd?define("@sd-angular/core/modal",["exports","@angular/core","@angular/material/dialog","ngx-device-detector","@angular/material/bottom-sheet","rxjs","@angular/common","@angular/material/icon","@angular/material/button","@sd-angular/core/button"],e):e(((t="undefined"!=typeof globalThis?globalThis:t||self)["sd-angular"]=t["sd-angular"]||{},t["sd-angular"].core=t["sd-angular"].core||{},t["sd-angular"].core.modal={}),t.ng.core,t.ng.material.dialog,t.ngxDeviceDetector,t.ng.material.bottomSheet,t.rxjs,t.ng.common,t.ng.material.icon,t.ng.material.button,t["sd-angular"].core.button)}(this,(function(t,e,n,o,i,r,a,s,l,d){"use strict";var c=function(){function t(t,e,n,o){var i=this;this.ref=t,this.dialog=e,this.bottomSheet=n,this.height="auto",this.lazyLoadContent=!0,this.isOpened=!1,this.alreadyOpened=!1,this.isMobileOrTablet=!1,this.subcription=new r.Subscription,this.open=function(){i.isOpened||(i.ref.markForCheck(),i.alreadyOpened=!0,i.isOpened=!0,!i.view&&i.isMobileOrTablet||"bottomSheet"===i.view?(i.bottomSheetRef=i.bottomSheet.open(i.templateRef),i.subcription.add(i.bottomSheetRef.afterDismissed().subscribe((function(){i.isOpened=!1})))):(i.dialogRef=i.dialog.open(i.templateRef,{width:i.width,maxWidth:i.width,disableClose:!i.closeClickOutSide}),i.subcription.add(i.dialogRef.afterClosed().subscribe((function(){i.isOpened=!1})))))},this.close=function(){var t,e;i.ref.markForCheck(),null===(t=i.bottomSheetRef)||void 0===t||t.dismiss(),null===(e=i.dialogRef)||void 0===e||e.close()},this.isMobileOrTablet=!o.isDesktop()}return t.prototype.ngOnInit=function(){if(this.type=this.type||"primary",this.width=this.width||"80vw",!this.isMobileOrTablet)switch(this.width){case"lg":this.width="80vw";break;case"md":this.width="60vw";break;case"sm":this.width="40vw"}},t.prototype.ngOnDestroy=function(){var t;null===(t=this.subcription)||void 0===t||t.unsubscribe()},t}();c.index=0,c.decorators=[{type:e.Component,args:[{selector:"sd-modal",template:'<ng-template #templateRef>\r\n <ng-container *ngIf="!lazyLoadContent || alreadyOpened">\r\n <sd-modal-header *ngIf="title">\r\n <span [innerHtml]="title"></span>\r\n <div class="d-flex align-items-center">\r\n <ng-content select="[sdModalHeaderRight]"></ng-content>\r\n <button *ngIf="!noClose" type="button" (click)="close()" mat-icon-button>\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </div>\r\n </sd-modal-header>\r\n <div class="d-flex flex-column px-12 px-md-24 pb-6 overflow-auto w-100 mh-100">\r\n <ng-content></ng-content>\r\n </div>\r\n </ng-container>\r\n</ng-template>',encapsulation:e.ViewEncapsulation.None,changeDetection:e.ChangeDetectionStrategy.OnPush,styles:['button:focus{outline:none!important}.mat-dialog-container{padding:0!important}.mat-dialog-container .mat-dialog-content{max-height:80vh}.mat-dialog-container .mat-dialog-actions{margin-bottom:0;min-height:auto;padding:0}.mat-bottom-sheet-container{max-height:"inherit"}sd-modal-header{display:block;padding:12px 24px;width:100%}@media (max-width:640px){sd-modal-header{padding:12px}}.cdk-global-overlay-wrapper .mat-bottom-sheet-container{border-top-left-radius:4px;border-top-right-radius:4px;box-sizing:border-box;display:flex;flex-direction:column;max-height:80vh;min-width:100vw;outline:0;overflow:hidden;padding:0}']}]}],c.ctorParameters=function(){return[{type:e.ChangeDetectorRef},{type:n.MatDialog},{type:i.MatBottomSheet},{type:o.DeviceDetectorService}]},c.propDecorators={templateRef:[{type:e.ViewChild,args:["templateRef"]}],title:[{type:e.Input}],noClose:[{type:e.Input}],type:[{type:e.Input}],width:[{type:e.Input}],height:[{type:e.Input}],view:[{type:e.Input}],lazyLoadContent:[{type:e.Input}],closeClickOutSide:[{type:e.Input}],modal:[{type:e.ViewChild,args:["modal"]}]};var p=function(){function t(t){this.isMobileOrTablet=!1,this.isMobileOrTablet=!t.isDesktop()}return t.prototype.ngOnInit=function(){},t}();p.decorators=[{type:e.Component,args:[{selector:"sd-modal-header",template:'<h3 class="mb-0" mat-dialog-title *ngIf="!isMobileOrTablet">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n</h3>\r\n<sd-bottom-sheet-header *ngIf="isMobileOrTablet">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n</sd-bottom-sheet-header>\r\n<ng-template #content>\r\n <ng-content></ng-content>\r\n</ng-template>',encapsulation:e.ViewEncapsulation.None,styles:[".mat-dialog-title{align-items:center;display:flex;justify-content:space-between}button:focus{outline:none!important}"]}]}],p.ctorParameters=function(){return[{type:o.DeviceDetectorService}]};var g=function(){function t(t){this.height="auto",this.isMobileOrTablet=!1,this.isMobileOrTablet=!t.isDesktop()}return t.prototype.ngOnInit=function(){},t}();g.decorators=[{type:e.Component,args:[{selector:"sd-modal-body",template:'<mat-dialog-content *ngIf="!isMobileOrTablet" [ngStyle]="{\'height\': height}" class="pb-5">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n</mat-dialog-content>\r\n<sd-bottom-sheet-body *ngIf="isMobileOrTablet" [height]="height">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n</sd-bottom-sheet-body>\r\n<ng-template #content>\r\n <ng-content></ng-content>\r\n</ng-template>',styles:[":host{width:100%}"]}]}],g.ctorParameters=function(){return[{type:o.DeviceDetectorService}]},g.propDecorators={height:[{type:e.Input}]};var m=function(){function t(t){this.isMobileOrTablet=!1,this.isMobileOrTablet=!t.isDesktop()}return t.prototype.ngOnInit=function(){},t}();m.decorators=[{type:e.Component,args:[{selector:"sd-modal-footer",template:'\x3c!-- <div class="modal-footer" style="padding:5px"><ng-content></ng-content></div> --\x3e\r\n<mat-dialog-actions *ngIf="!isMobileOrTablet">\r\n <div class="c-footer">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n </div>\r\n</mat-dialog-actions>\r\n<sd-bottom-sheet-footer *ngIf="isMobileOrTablet">\r\n <ng-container *ngTemplateOutlet="content"></ng-container>\r\n</sd-bottom-sheet-footer>\r\n<ng-template #content>\r\n <ng-content></ng-content>\r\n</ng-template>',styles:[":host{width:100%}:host .c-footer{align-items:center;display:flex;flex:auto;justify-content:flex-end;padding:8px 0}"]}]}],m.ctorParameters=function(){return[{type:o.DeviceDetectorService}]};var u=function(t){var e=this;this.bottomSheet=t,this.isOpened=!1,this.open=function(){e.isOpened=!0,e.bottomSheet.open(e.templateRef)},this.close=function(){e.bottomSheet.dismiss()}};u.decorators=[{type:e.Component,args:[{selector:"sd-bottom-sheet",template:'<ng-template #templateRef>\r\n <ng-container *ngIf="isOpened">\r\n <sd-bottom-sheet-header *ngIf="title">{{title}}</sd-bottom-sheet-header>\r\n <ng-content></ng-content>\r\n </ng-container>\r\n</ng-template>'}]}],u.ctorParameters=function(){return[{type:i.MatBottomSheet}]},u.propDecorators={templateRef:[{type:e.ViewChild,args:["templateRef"]}],title:[{type:e.Input}]};var h=function(){function t(){}return t.prototype.ngOnInit=function(){},t}();h.decorators=[{type:e.Component,args:[{selector:"sd-bottom-sheet-header",template:'<h3 class="mb-0" mat-dialog-title><ng-content></ng-content></h3>'}]}],h.ctorParameters=function(){return[]};var f=function(){function t(){this.height="auto"}return t.prototype.ngOnInit=function(){},t}();f.decorators=[{type:e.Component,args:[{selector:"sd-bottom-sheet-body",template:"<div [ngStyle]=\"{'height': height}\">\r\n <ng-content></ng-content>\r\n<div>"}]}],f.ctorParameters=function(){return[]},f.propDecorators={height:[{type:e.Input}]};var b=function(){function t(){}return t.prototype.ngOnInit=function(){},t}();b.decorators=[{type:e.Component,args:[{selector:"sd-bottom-sheet-footer",template:'\x3c!-- <div class="modal-footer" style="padding:5px"><ng-content></ng-content></div> --\x3e\r\n<div class="c-footer">\r\n <ng-content></ng-content>\r\n</div>',styles:[".c-footer{align-items:center;display:flex;flex:auto;justify-content:flex-end;padding-bottom:5px;padding-top:5px}"]}]}],b.ctorParameters=function(){return[]};var y=function(){};y.decorators=[{type:e.NgModule,args:[{imports:[a.CommonModule,s.MatIconModule,i.MatBottomSheetModule,n.MatDialogModule,l.MatButtonModule,d.SdButtonModule],declarations:[c,p,g,m,u,h,f,b],exports:[c,p,g,m,u,h,f,b],providers:[]}]}],t.SdBottomSheet=u,t.SdBottomSheetBody=f,t.SdBottomSheetFooter=b,t.SdBottomSheetHeader=h,t.SdModal=c,t.SdModalBody=g,t.SdModalFooter=m,t.SdModalHeader=p,t.SdModalModule=y,Object.defineProperty(t,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=sd-angular-core-modal.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../projects/sd-core/modal/src/lib/modal/modal.component.ts","../../../../projects/sd-core/modal/src/lib/modal/modal-header/modal-header.component.ts","../../../../projects/sd-core/modal/src/lib/modal/modal-body/modal-body.component.ts","../../../../projects/sd-core/modal/src/lib/modal/modal-footer/modal-footer.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet-header/bottom-sheet-header.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet-body/bottom-sheet-body.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet-footer/bottom-sheet-footer.component.ts","../../../../projects/sd-core/modal/src/lib/modal.module.ts"],"names":["SdModal","ref","dialog","bottomSheet","deviceService","_this","this","height","lazyLoadContent","isOpened","alreadyOpened","isMobileOrTablet","subcription","Subscription","open","markForCheck","view","bottomSheetRef","templateRef","add","afterDismissed","subscribe","dialogRef","width","maxWidth","disableClose","closeClickOutSide","afterClosed","close","_a","dismiss","_b","isDesktop","prototype","ngOnInit","type","ngOnDestroy","unsubscribe","index","Component","args","selector","template","encapsulation","ViewEncapsulation","None","changeDetection","ChangeDetectionStrategy","OnPush","ChangeDetectorRef","MatDialog","MatBottomSheet","DeviceDetectorService","ViewChild","Input","SdModalHeader","SdModalBody","SdModalFooter","SdBottomSheetHeader","SdBottomSheetBody","SdBottomSheetFooter","NgModule","imports","CommonModule","MatIconModule","MatBottomSheetModule","MatDialogModule","MatButtonModule","SdButtonModule","declarations","SdBottomSheet","exports","providers"],"mappings":"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","sourcesContent":["import { Component, ElementRef, Input, ViewChild, OnInit, OnDestroy, TemplateRef, ViewEncapsulation, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { MatBottomSheet } from '@angular/material/bottom-sheet';\r\nimport { MatBottomSheetRef } from '@angular/material/bottom-sheet';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'sd-modal',\r\n templateUrl: './modal.component.html',\r\n styleUrls: ['./modal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdModal implements OnInit, OnDestroy {\r\n static index = 0;\r\n @ViewChild('templateRef') templateRef: TemplateRef<any>;\r\n @Input() title: string;\r\n @Input() noClose: boolean;\r\n @Input() type: 'primary' | 'info' | 'success' | 'warning' | 'danger';\r\n @Input() width: 'lg' | 'md' | 'sm' | string;\r\n @Input() height = 'auto';\r\n @Input() view: 'dialog' | 'bottomSheet';\r\n @Input() lazyLoadContent = true;\r\n @Input() closeClickOutSide: boolean;\r\n @ViewChild('modal') modal: ElementRef;\r\n isOpened = false;\r\n alreadyOpened = false;\r\n isMobileOrTablet = false;\r\n private bottomSheetRef: MatBottomSheetRef<any>;\r\n private dialogRef: MatDialogRef<any>;\r\n private subcription = new Subscription();\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n private dialog: MatDialog,\r\n private bottomSheet: MatBottomSheet,\r\n deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n ngOnInit(): void {\r\n this.type = this.type || 'primary';\r\n this.width = this.width || '80vw';\r\n if (!this.isMobileOrTablet) {\r\n switch (this.width) {\r\n case 'lg':\r\n this.width = '80vw';\r\n break;\r\n case 'md':\r\n this.width = '60vw';\r\n break;\r\n case 'sm':\r\n this.width = '40vw';\r\n break;\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subcription?.unsubscribe();\r\n }\r\n\r\n open = (): void => {\r\n if (this.isOpened) {\r\n return;\r\n }\r\n this.ref.markForCheck();\r\n this.alreadyOpened = true;\r\n this.isOpened = true;\r\n if ((!this.view && this.isMobileOrTablet) || this.view === 'bottomSheet') {\r\n this.bottomSheetRef = this.bottomSheet.open(this.templateRef);\r\n this.subcription.add(this.bottomSheetRef.afterDismissed().subscribe(() => {\r\n this.isOpened = false;\r\n }));\r\n } else {\r\n this.dialogRef = this.dialog.open(this.templateRef, {\r\n width: this.width,\r\n maxWidth: this.width,\r\n disableClose: !this.closeClickOutSide // mặc định ko cho đóng modal khi click out side\r\n });\r\n this.subcription.add(this.dialogRef.afterClosed().subscribe(() => {\r\n this.isOpened = false;\r\n }));\r\n }\r\n }\r\n\r\n close = (): void => {\r\n this.ref.markForCheck();\r\n this.bottomSheetRef?.dismiss();\r\n this.dialogRef?.close();\r\n }\r\n}\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Component({\r\n selector: 'sd-modal-header',\r\n templateUrl: './modal-header.component.html',\r\n styleUrls: [\r\n './modal-header.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SdModalHeader implements OnInit {\r\n isMobileOrTablet = false;\r\n constructor(deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Component({\r\n selector: 'sd-modal-body',\r\n templateUrl: './modal-body.component.html',\r\n styleUrls: ['./modal-body.component.scss'],\r\n})\r\nexport class SdModalBody implements OnInit {\r\n @Input() height = 'auto';\r\n isMobileOrTablet = false;\r\n constructor(deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n ngOnInit() {\r\n }\r\n}\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Component({\r\n selector: 'sd-modal-footer',\r\n templateUrl: './modal-footer.component.html',\r\n styleUrls: ['./modal-footer.component.scss']\r\n})\r\nexport class SdModalFooter implements OnInit {\r\n isMobileOrTablet = false;\r\n constructor(deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import { Component, ViewChild, TemplateRef, Input } from '@angular/core';\r\nimport { MatBottomSheet } from '@angular/material/bottom-sheet';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet',\r\n templateUrl: './bottom-sheet.component.html'\r\n})\r\nexport class SdBottomSheet {\r\n @ViewChild('templateRef') templateRef: TemplateRef<OptionTemplateContext>;\r\n @Input() title: string;\r\n isOpened = false;\r\n constructor(\r\n private bottomSheet: MatBottomSheet,\r\n ) { }\r\n\r\n open = () => {\r\n this.isOpened = true;\r\n this.bottomSheet.open(this.templateRef);\r\n }\r\n\r\n close = () => {\r\n this.bottomSheet.dismiss();\r\n }\r\n}\r\n\r\ninterface OptionTemplateContext {\r\n $implicit: any;\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet-header',\r\n templateUrl: './bottom-sheet-header.component.html'\r\n})\r\nexport class SdBottomSheetHeader implements OnInit {\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet-body',\r\n templateUrl: './bottom-sheet-body.component.html'\r\n})\r\nexport class SdBottomSheetBody implements OnInit {\r\n @Input() height = 'auto';\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet-footer',\r\n templateUrl: './bottom-sheet-footer.component.html',\r\n styleUrls: ['./bottom-sheet-footer.component.scss']\r\n})\r\nexport class SdBottomSheetFooter implements OnInit {\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdModal } from './modal/modal.component';\r\nimport { SdModalHeader } from './modal/modal-header/modal-header.component';\r\nimport { SdModalBody } from './modal/modal-body/modal-body.component';\r\nimport { SdModalFooter } from './modal/modal-footer/modal-footer.component';\r\nimport { SdBottomSheet } from './bottom-sheet/bottom-sheet.component';\r\nimport { SdBottomSheetHeader } from './bottom-sheet/bottom-sheet-header/bottom-sheet-header.component';\r\nimport { SdBottomSheetBody } from './bottom-sheet/bottom-sheet-body/bottom-sheet-body.component';\r\nimport { SdBottomSheetFooter } from './bottom-sheet/bottom-sheet-footer/bottom-sheet-footer.component';\r\n\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatBottomSheetModule } from '@angular/material/bottom-sheet';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { SdButtonModule } from '@sd-angular/core/button';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n MatIconModule,\r\n MatBottomSheetModule,\r\n MatDialogModule,\r\n MatButtonModule,\r\n SdButtonModule\r\n ],\r\n declarations: [\r\n SdModal,\r\n SdModalHeader,\r\n SdModalBody,\r\n SdModalFooter,\r\n SdBottomSheet,\r\n SdBottomSheetHeader,\r\n SdBottomSheetBody,\r\n SdBottomSheetFooter\r\n ],\r\n exports: [\r\n SdModal,\r\n SdModalHeader,\r\n SdModalBody,\r\n SdModalFooter,\r\n SdBottomSheet,\r\n SdBottomSheetHeader,\r\n SdBottomSheetBody,\r\n SdBottomSheetFooter\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdModalModule {\r\n\r\n}\r\n"]}
1
+ {"version":3,"sources":["../../../../projects/sd-core/modal/src/lib/modal/modal.component.ts","../../../../projects/sd-core/modal/src/lib/modal/modal-header/modal-header.component.ts","../../../../projects/sd-core/modal/src/lib/modal/modal-body/modal-body.component.ts","../../../../projects/sd-core/modal/src/lib/modal/modal-footer/modal-footer.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet-header/bottom-sheet-header.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet-body/bottom-sheet-body.component.ts","../../../../projects/sd-core/modal/src/lib/bottom-sheet/bottom-sheet-footer/bottom-sheet-footer.component.ts","../../../../projects/sd-core/modal/src/lib/modal.module.ts"],"names":["SdModal","ref","dialog","bottomSheet","deviceService","_this","this","height","lazyLoadContent","isOpened","alreadyOpened","isMobileOrTablet","subcription","Subscription","open","markForCheck","view","bottomSheetRef","templateRef","add","afterDismissed","subscribe","dialogRef","width","maxWidth","disableClose","closeClickOutSide","afterClosed","close","_a","dismiss","_b","isDesktop","prototype","ngOnInit","type","ngOnDestroy","unsubscribe","index","Component","args","selector","template","encapsulation","ViewEncapsulation","None","changeDetection","ChangeDetectionStrategy","OnPush","ChangeDetectorRef","MatDialog","MatBottomSheet","DeviceDetectorService","ViewChild","Input","SdModalHeader","SdModalBody","SdModalFooter","SdBottomSheetHeader","SdBottomSheetBody","SdBottomSheetFooter","NgModule","imports","CommonModule","MatIconModule","MatBottomSheetModule","MatDialogModule","MatButtonModule","SdButtonModule","declarations","SdBottomSheet","exports","providers"],"mappings":"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","sourcesContent":["import { Component, ElementRef, Input, ViewChild, OnInit, OnDestroy, TemplateRef, ViewEncapsulation, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { MatBottomSheet } from '@angular/material/bottom-sheet';\r\nimport { MatBottomSheetRef } from '@angular/material/bottom-sheet';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'sd-modal',\r\n templateUrl: './modal.component.html',\r\n styleUrls: ['./modal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdModal implements OnInit, OnDestroy {\r\n static index = 0;\r\n @ViewChild('templateRef') templateRef: TemplateRef<any>;\r\n @Input() title: string;\r\n @Input() noClose: boolean;\r\n @Input() type: 'primary' | 'info' | 'success' | 'warning' | 'danger';\r\n @Input() width: 'lg' | 'md' | 'sm' | string;\r\n @Input() height = 'auto';\r\n @Input() view: 'dialog' | 'bottomSheet';\r\n @Input() lazyLoadContent = true;\r\n @Input() closeClickOutSide: boolean;\r\n @ViewChild('modal') modal: ElementRef;\r\n isOpened = false;\r\n alreadyOpened = false;\r\n isMobileOrTablet = false;\r\n private bottomSheetRef: MatBottomSheetRef<any>;\r\n private dialogRef: MatDialogRef<any>;\r\n private subcription = new Subscription();\r\n constructor(\r\n private ref: ChangeDetectorRef,\r\n private dialog: MatDialog,\r\n private bottomSheet: MatBottomSheet,\r\n deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n ngOnInit(): void {\r\n this.type = this.type || 'primary';\r\n this.width = this.width || '80vw';\r\n if (!this.isMobileOrTablet) {\r\n switch (this.width) {\r\n case 'lg':\r\n this.width = '80vw';\r\n break;\r\n case 'md':\r\n this.width = '60vw';\r\n break;\r\n case 'sm':\r\n this.width = '40vw';\r\n break;\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subcription?.unsubscribe();\r\n }\r\n\r\n open = (): void => {\r\n if (this.isOpened) {\r\n return;\r\n }\r\n this.ref.markForCheck();\r\n this.alreadyOpened = true;\r\n this.isOpened = true;\r\n if ((!this.view && this.isMobileOrTablet) || this.view === 'bottomSheet') {\r\n this.bottomSheetRef = this.bottomSheet.open(this.templateRef);\r\n this.subcription.add(this.bottomSheetRef.afterDismissed().subscribe(() => {\r\n this.isOpened = false;\r\n }));\r\n } else {\r\n this.dialogRef = this.dialog.open(this.templateRef, {\r\n width: this.width,\r\n maxWidth: this.width,\r\n disableClose: !this.closeClickOutSide // mặc định ko cho đóng modal khi click out side\r\n });\r\n this.subcription.add(this.dialogRef.afterClosed().subscribe(() => {\r\n this.isOpened = false;\r\n }));\r\n }\r\n }\r\n\r\n close = (): void => {\r\n this.ref.markForCheck();\r\n this.bottomSheetRef?.dismiss();\r\n this.dialogRef?.close();\r\n }\r\n}\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Component({\r\n selector: 'sd-modal-header',\r\n templateUrl: './modal-header.component.html',\r\n styleUrls: [\r\n './modal-header.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class SdModalHeader implements OnInit {\r\n isMobileOrTablet = false;\r\n constructor(deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Component({\r\n selector: 'sd-modal-body',\r\n templateUrl: './modal-body.component.html',\r\n styleUrls: ['./modal-body.component.scss'],\r\n})\r\nexport class SdModalBody implements OnInit {\r\n @Input() height = 'auto';\r\n isMobileOrTablet = false;\r\n constructor(deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n ngOnInit() {\r\n }\r\n}\r\n","import { Component, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\n\r\n@Component({\r\n selector: 'sd-modal-footer',\r\n templateUrl: './modal-footer.component.html',\r\n styleUrls: ['./modal-footer.component.scss']\r\n})\r\nexport class SdModalFooter implements OnInit {\r\n isMobileOrTablet = false;\r\n constructor(deviceService: DeviceDetectorService) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnInit() {\r\n }\r\n\r\n}\r\n","import { Component, ViewChild, TemplateRef, Input } from '@angular/core';\r\nimport { MatBottomSheet } from '@angular/material/bottom-sheet';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet',\r\n templateUrl: './bottom-sheet.component.html'\r\n})\r\nexport class SdBottomSheet {\r\n @ViewChild('templateRef') templateRef: TemplateRef<OptionTemplateContext>;\r\n @Input() title: string;\r\n isOpened = false;\r\n constructor(\r\n private bottomSheet: MatBottomSheet,\r\n ) { }\r\n\r\n open = () => {\r\n this.isOpened = true;\r\n this.bottomSheet.open(this.templateRef);\r\n }\r\n\r\n close = () => {\r\n this.bottomSheet.dismiss();\r\n }\r\n}\r\n\r\ninterface OptionTemplateContext {\r\n $implicit: any;\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet-header',\r\n templateUrl: './bottom-sheet-header.component.html'\r\n})\r\nexport class SdBottomSheetHeader implements OnInit {\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet-body',\r\n templateUrl: './bottom-sheet-body.component.html'\r\n})\r\nexport class SdBottomSheetBody implements OnInit {\r\n @Input() height = 'auto';\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'sd-bottom-sheet-footer',\r\n templateUrl: './bottom-sheet-footer.component.html',\r\n styleUrls: ['./bottom-sheet-footer.component.scss']\r\n})\r\nexport class SdBottomSheetFooter implements OnInit {\r\n constructor() { }\r\n\r\n ngOnInit() {\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SdModal } from './modal/modal.component';\r\nimport { SdModalHeader } from './modal/modal-header/modal-header.component';\r\nimport { SdModalBody } from './modal/modal-body/modal-body.component';\r\nimport { SdModalFooter } from './modal/modal-footer/modal-footer.component';\r\nimport { SdBottomSheet } from './bottom-sheet/bottom-sheet.component';\r\nimport { SdBottomSheetHeader } from './bottom-sheet/bottom-sheet-header/bottom-sheet-header.component';\r\nimport { SdBottomSheetBody } from './bottom-sheet/bottom-sheet-body/bottom-sheet-body.component';\r\nimport { SdBottomSheetFooter } from './bottom-sheet/bottom-sheet-footer/bottom-sheet-footer.component';\r\n\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatBottomSheetModule } from '@angular/material/bottom-sheet';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { SdButtonModule } from '@sd-angular/core/button';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n MatIconModule,\r\n MatBottomSheetModule,\r\n MatDialogModule,\r\n MatButtonModule,\r\n SdButtonModule\r\n ],\r\n declarations: [\r\n SdModal,\r\n SdModalHeader,\r\n SdModalBody,\r\n SdModalFooter,\r\n SdBottomSheet,\r\n SdBottomSheetHeader,\r\n SdBottomSheetBody,\r\n SdBottomSheetFooter\r\n ],\r\n exports: [\r\n SdModal,\r\n SdModalHeader,\r\n SdModalBody,\r\n SdModalFooter,\r\n SdBottomSheet,\r\n SdBottomSheetHeader,\r\n SdBottomSheetBody,\r\n SdBottomSheetFooter\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdModalModule {\r\n\r\n}\r\n"]}
@@ -364,7 +364,7 @@
364
364
  selector: "sd-select-editor",
365
365
  template: "<label *ngIf=\"!appearance && label && !sdLabelDef?.templateRef\" class=\"d-block mb-0 T14M\">{{label}} <span class=\"text-danger mb-2\"\r\n *ngIf=\"isRequired\">*</span></label>\r\n<ng-container *ngIf=\"sdLabelDef?.templateRef\" matSuffix>\r\n <ng-container *ngTemplateOutlet=\"sdLabelDef.templateRef\">\r\n </ng-container>\r\n</ng-container>\r\n<div class=\"d-flex align-items-center\" [class.sd-view]=\"sdView?.templateRef\" [class.c-focused]=\"isFocused\"\r\n[class.c-disabled]=\"formControl.disabled\" (click)=\"onClick()\">\r\n<ng-container *ngIf=\"sdView?.templateRef && !isFocused; else default\">\r\n <ng-container\r\n *ngTemplateOutlet=\"sdView.templateRef;context: { value: formControl.value, selectedItems: selectedItems | async }\">\r\n </ng-container>\r\n</ng-container>\r\n<ng-template #default>\r\n <mat-form-field class=\"sd-md\" [ngClass]=\"{'sd-sm': size === 'sm', 'no-padding-wrapper': disableErrorMessage}\"\r\n [appearance]=\"appearance || 'outline'\">\r\n <mat-label *ngIf=\"appearance && label\">{{label}}</mat-label>\r\n <mat-select #select [formControl]=\"formControl\" [placeholder]=\"placeholder || (appearance ? label : '')\" multiple\r\n (selectionChange)=\"onSelectionChange($event)\" disableOptionCentering=\"true\" panelClass=\"sd-select-panel\"\r\n [ngClass]=\"{'sd-selected': !isRequired && (multiple ? formControl?.value?.length : formControl?.value != null)}\"\r\n [required]=\"isRequired\" (openedChange)=\"onOpenChange($event)\" [attr.data-qclabel]=\"label\"\r\n [attr.data-qcid]=\"qcId\" *ngIf=\"multiple\">\r\n <mat-select-trigger>\r\n {{display | async }}\r\n </mat-select-trigger>\r\n <mat-option *ngIf=\"filtered\" class=\"sd-filtered-input\" (keyup.Space)=\"$event.stopPropagation()\" disabled=\"true\">\r\n <mat-form-field class=\"sd-md\" appearance=\"outline\">\r\n <mat-icon matPrefix>search</mat-icon>\r\n <input #input placeholder=\"{{'Search' | sdTranslate}}\" matInput autocomplete=\"off\"\r\n (keydown)=\"$event.stopPropagation()\" (keyup)=\"searchTerm$.next($event.target.value)\">\r\n </mat-form-field>\r\n </mat-option>\r\n <ng-container *ngIf=\"multiple && selectAll\">\r\n <mat-checkbox class=\"mat-option\" [(ngModel)]=\"allSelected\" [ngModelOptions]=\"{standalone: true}\"\r\n (change)=\"onSelectAll()\">\r\n T\u1EA5t c\u1EA3</mat-checkbox>\r\n </ng-container>\r\n <ng-container *ngIf=\"valueField && displayField\">\r\n <mat-option *ngFor=\"let item of filteredItems | async; trackBy: trackByKey\" [value]=\"item[valueField]\">\r\n <div matTooltipPosition=\"above\" [matTooltip]=\"item[displayField]\" class=\"d-flex justify-content-between\">\r\n <ng-container *ngIf=\"selectDisplayDef?.templateRef\">\r\n <ng-container *ngTemplateOutlet=\"selectDisplayDef.templateRef;context:{item: item}\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!selectDisplayDef?.templateRef\">\r\n {{ item[displayField] }}\r\n </ng-container>\r\n <div>\r\n <mat-icon *ngIf=\"editable && sdEdit?.observers?.length\" class=\"mr-1 c-fa-icon\" (click)=\"onEdit($event, item)\">\r\n edit</mat-icon>\r\n <mat-icon *ngIf=\"deletable && sdDelete?.observers?.length\" class=\"mr-0 c-fa-icon\" (click)=\"onDelete($event, item)\">\r\n delete</mat-icon>\r\n </div>\r\n </div>\r\n </mat-option>\r\n </ng-container>\r\n <ng-container *ngIf=\"!valueField && !displayField\">\r\n <mat-option *ngFor=\"let item of filteredItems | async; trackBy: trackByKey\" [value]=\"item\">\r\n <div matTooltipPosition=\"above\" [matTooltip]=\"item\" class=\"d-flex justify-content-between\">\r\n <ng-container *ngIf=\"selectDisplayDef?.templateRef\">\r\n <ng-container *ngTemplateOutlet=\"selectDisplayDef.templateRef;context:{item: item}\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!selectDisplayDef?.templateRef\">\r\n {{ item }}\r\n </ng-container>\r\n <div>\r\n <mat-icon *ngIf=\"editable && sdEdit?.observers?.length\" class=\"mr-1 c-fa-icon\" (click)=\"onEdit($event, item)\">\r\n edit</mat-icon>\r\n <mat-icon *ngIf=\"deletable && sdDelete?.observers?.length\" class=\"mr-0 c-fa-icon\" (click)=\"onDelete($event, item)\">\r\n delete</mat-icon>\r\n </div>\r\n </div>\r\n </mat-option>\r\n </ng-container>\r\n <mat-option class=\"sd__option--add\" *ngIf=\"addable && sdAdd?.observers?.length\" (keyup.Space)=\"$event.stopPropagation()\" disabled=\"true\">\r\n <div (click)=\"onAdd($event)\">\r\n <mat-icon class=\"mr-1\">add</mat-icon>\r\n {{'New item' | sdTranslate}}\r\n </div>\r\n </mat-option>\r\n </mat-select>\r\n <mat-select #select [formControl]=\"formControl\" [placeholder]=\"placeholder || (appearance ? label : '')\"\r\n (selectionChange)=\"onSelectionChange($event)\" disableOptionCentering=\"true\" panelClass=\"sd-select-panel\"\r\n [ngClass]=\"{'sd-selected': !isRequired && formControl?.value != null}\" [required]=\"isRequired\"\r\n (openedChange)=\"onOpenChange($event)\" [attr.data-qclabel]=\"label\" [attr.data-qcid]=\"qcId\" *ngIf=\"!multiple\">\r\n <mat-select-trigger>\r\n {{display | async }}\r\n </mat-select-trigger>\r\n <mat-option *ngIf=\"filtered\" class=\"sd-filtered-input\" (keyup.Space)=\"$event.stopPropagation()\" disabled=\"true\">\r\n <mat-form-field class=\"sd-md\" appearance=\"outline\">\r\n <mat-icon matPrefix>search</mat-icon>\r\n <input #input placeholder=\"{{'Search' | sdTranslate}}\" matInput autocomplete=\"off\"\r\n (keydown)=\"$event.stopPropagation()\" (keyup)=\"searchTerm$.next($event.target.value)\">\r\n </mat-form-field>\r\n </mat-option>\r\n <ng-container *ngIf=\"valueField && displayField\">\r\n <mat-option *ngFor=\"let item of filteredItems | async; trackBy: trackByKey\" [value]=\"item[valueField]\">\r\n <div matTooltipPosition=\"above\" [matTooltip]=\"item[displayField]\" class=\"d-flex justify-content-between\">\r\n <ng-container *ngIf=\"selectDisplayDef?.templateRef\">\r\n <ng-container *ngTemplateOutlet=\"selectDisplayDef.templateRef;context:{item: item}\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!selectDisplayDef?.templateRef\">\r\n {{ item[displayField] }}\r\n </ng-container>\r\n <div>\r\n <mat-icon *ngIf=\"editable && sdEdit?.observers?.length\" class=\"mr-1 c-fa-icon\" (click)=\"onEdit($event, item)\">\r\n edit</mat-icon>\r\n <mat-icon *ngIf=\"deletable && sdDelete?.observers?.length\" class=\"mr-0 c-fa-icon\" (click)=\"onDelete($event, item)\">\r\n delete</mat-icon>\r\n </div>\r\n </div>\r\n </mat-option>\r\n </ng-container>\r\n <ng-container *ngIf=\"!valueField && !displayField\">\r\n <mat-option *ngFor=\"let item of filteredItems | async; trackBy: trackByKey\" [value]=\"item\">\r\n <div matTooltipPosition=\"above\" [matTooltip]=\"item\" class=\"d-flex justify-content-between\">\r\n <ng-container *ngIf=\"selectDisplayDef?.templateRef\">\r\n <ng-container *ngTemplateOutlet=\"selectDisplayDef.templateRef;context:{item: item}\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!selectDisplayDef?.templateRef\">\r\n {{ item }}\r\n </ng-container>\r\n <div>\r\n <mat-icon *ngIf=\"editable && sdEdit?.observers?.length\" class=\"mr-1 c-fa-icon\" (click)=\"onEdit($event, item)\">\r\n edit</mat-icon>\r\n <mat-icon *ngIf=\"deletable && sdDelete?.observers?.length\" class=\"mr-0 c-fa-icon\" (click)=\"onDelete($event, item)\">\r\n delete</mat-icon>\r\n </div>\r\n </div>\r\n </mat-option>\r\n </ng-container>\r\n <mat-option class=\"sd__option--add\" *ngIf=\"addable && sdAdd?.observers?.length\" (keyup.Space)=\"$event.stopPropagation()\" disabled=\"true\">\r\n <div (click)=\"onAdd($event)\">\r\n <mat-icon class=\"mr-1\">add</mat-icon>\r\n {{'New item' | sdTranslate}}\r\n </div>\r\n </mat-option>\r\n </mat-select>\r\n <mat-icon\r\n *ngIf=\"(multiple ? formControl?.value?.length : formControl?.value != null) && !isRequired && !formControl.disabled\"\r\n class=\"pointer sd-suffix-icon\" (click)=\"clear($event)\" matSuffix>cancel\r\n </mat-icon>\r\n <mat-error *ngIf=\"formControl.errors?.required && !disableErrorMessage\">\r\n {{'This field is required' | sdTranslate}}\r\n </mat-error>\r\n <mat-error *ngIf=\"formControl?.errors?.customValidator && !disableErrorMessage\">\r\n {{formControl?.errors?.customValidator}}\r\n </mat-error>\r\n </mat-form-field>\r\n</ng-template>\r\n</div>",
366
366
  changeDetection: core.ChangeDetectionStrategy.OnPush,
367
- styles: [":host{display:block;padding-top:5px}:host ::ng-deep .mat-form-field.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:none}:host ::ng-deep .sd-selected .mat-select-arrow{border:none}:host ::ng-deep .mat-form-field.no-padding-wrapper .mat-form-field-wrapper{padding-bottom:0}:host ::ng-deep .mat-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline{background:#f6f6f6;color:#e9e9e9}:host ::ng-deep .mat-form-field mat-select.mat-select-disabled .mat-select-value{color:#4d4d4d!important}:host ::ng-deep .mat-form-field .mat-placeholder-required{color:#f82c13}.sd-view:not(.c-focused):not(.c-disabled):hover{background-color:#ebecf0}::ng-deep .sd-select-panel .mat-option.sd-filtered-input{background-color:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:10}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field.mat-form-field-appearance-outline{width:100%}::ng-deep .sd-select-panel .mat-option.sd-filtered-input mat-pseudo-checkbox{display:none}::ng-deep .mat-select-panel .mat-option.sd-filtered-input{height:auto}::ng-deep .sd-select-panel .mat-option.sd-filtered-input input{color:#000}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field-prefix .mat-icon{margin-right:0}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field.mat-form-field-appearance-outline .mat-form-field-wrapper{padding:10px 0}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field.mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-outline{background-color:rgba(0,0,0,.04)}.sd__option--add{background-color:#fff;bottom:0;color:rgba(0,0,0,.87);cursor:pointer;position:-webkit-sticky;position:sticky;z-index:10}"]
367
+ styles: [":host{display:block;padding-top:5px}:host ::ng-deep .mat-form-field.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:none}:host ::ng-deep .sd-selected .mat-select-arrow{border:none}:host ::ng-deep .mat-form-field.no-padding-wrapper .mat-form-field-wrapper{padding-bottom:0}:host ::ng-deep .mat-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline{background:#f6f6f6;color:#e9e9e9}:host ::ng-deep .mat-form-field mat-select.mat-select-disabled .mat-select-value{color:#4d4d4d!important}:host ::ng-deep .mat-form-field .mat-placeholder-required{color:#f82c13}.sd-view:not(.c-focused):not(.c-disabled):hover{background-color:#ebecf0}::ng-deep .sd-select-panel .mat-option.sd-filtered-input{background-color:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:10}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field.mat-form-field-appearance-outline{width:100%}::ng-deep .sd-select-panel .mat-option.sd-filtered-input mat-pseudo-checkbox{display:none}::ng-deep .mat-select-panel .mat-option.sd-filtered-input{height:auto}::ng-deep .sd-select-panel .mat-option.sd-filtered-input input{color:#000}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field-prefix .mat-icon{margin-right:0}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field.mat-form-field-appearance-outline .mat-form-field-wrapper{padding:10px 0}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field.mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-outline{background-color:rgba(0,0,0,.04)}.sd__option--add{background-color:#fff;bottom:0;color:rgba(0,0,0,.87);cursor:pointer;position:-webkit-sticky;position:sticky;z-index:10}.sd__option--add ::ng-deep mat-pseudo-checkbox{display:none}"]
368
368
  },] }
369
369
  ];
370
370
  SdSelectEditor.ctorParameters = function () { return [
@@ -12,5 +12,5 @@
12
12
  LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
13
  OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
14
  PERFORMANCE OF THIS SOFTWARE.
15
- ***************************************************************************** */var g=function(e,t){return(g=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};Object.create;Object.create;var u=function(e){function n(n,a){var r=e.call(this,n,a)||this;return r.cdRef=n,r.formConfiguration=a,r.addable=!0,r.editable=!0,r.deletable=!0,r.sdAdd=new t.EventEmitter,r.sdEdit=new t.EventEmitter,r.sdDelete=new t.EventEmitter,r.onAdd=function(e){var t;e.stopPropagation(),null==e||e.preventDefault(),null===(t=r.matSelect)||void 0===t||t.close(),r.sdAdd.emit()},r.onEdit=function(e,t){var n;e.stopPropagation(),null==e||e.preventDefault(),null===(n=r.matSelect)||void 0===n||n.close(),r.sdEdit.emit(t)},r.onDelete=function(e,t){var n;e.stopPropagation(),null==e||e.preventDefault(),null===(n=r.matSelect)||void 0===n||n.close(),r.sdDelete.emit(t)},r}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}g(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(n,e),n}(c.SdSelect);u.decorators=[{type:t.Component,args:[{selector:"sd-select-editor",template:'<label *ngIf="!appearance && label && !sdLabelDef?.templateRef" class="d-block mb-0 T14M">{{label}} <span class="text-danger mb-2"\r\n *ngIf="isRequired">*</span></label>\r\n<ng-container *ngIf="sdLabelDef?.templateRef" matSuffix>\r\n <ng-container *ngTemplateOutlet="sdLabelDef.templateRef">\r\n </ng-container>\r\n</ng-container>\r\n<div class="d-flex align-items-center" [class.sd-view]="sdView?.templateRef" [class.c-focused]="isFocused"\r\n[class.c-disabled]="formControl.disabled" (click)="onClick()">\r\n<ng-container *ngIf="sdView?.templateRef && !isFocused; else default">\r\n <ng-container\r\n *ngTemplateOutlet="sdView.templateRef;context: { value: formControl.value, selectedItems: selectedItems | async }">\r\n </ng-container>\r\n</ng-container>\r\n<ng-template #default>\r\n <mat-form-field class="sd-md" [ngClass]="{\'sd-sm\': size === \'sm\', \'no-padding-wrapper\': disableErrorMessage}"\r\n [appearance]="appearance || \'outline\'">\r\n <mat-label *ngIf="appearance && label">{{label}}</mat-label>\r\n <mat-select #select [formControl]="formControl" [placeholder]="placeholder || (appearance ? label : \'\')" multiple\r\n (selectionChange)="onSelectionChange($event)" disableOptionCentering="true" panelClass="sd-select-panel"\r\n [ngClass]="{\'sd-selected\': !isRequired && (multiple ? formControl?.value?.length : formControl?.value != null)}"\r\n [required]="isRequired" (openedChange)="onOpenChange($event)" [attr.data-qclabel]="label"\r\n [attr.data-qcid]="qcId" *ngIf="multiple">\r\n <mat-select-trigger>\r\n {{display | async }}\r\n </mat-select-trigger>\r\n <mat-option *ngIf="filtered" class="sd-filtered-input" (keyup.Space)="$event.stopPropagation()" disabled="true">\r\n <mat-form-field class="sd-md" appearance="outline">\r\n <mat-icon matPrefix>search</mat-icon>\r\n <input #input placeholder="{{\'Search\' | sdTranslate}}" matInput autocomplete="off"\r\n (keydown)="$event.stopPropagation()" (keyup)="searchTerm$.next($event.target.value)">\r\n </mat-form-field>\r\n </mat-option>\r\n <ng-container *ngIf="multiple && selectAll">\r\n <mat-checkbox class="mat-option" [(ngModel)]="allSelected" [ngModelOptions]="{standalone: true}"\r\n (change)="onSelectAll()">\r\n Tất cả</mat-checkbox>\r\n </ng-container>\r\n <ng-container *ngIf="valueField && displayField">\r\n <mat-option *ngFor="let item of filteredItems | async; trackBy: trackByKey" [value]="item[valueField]">\r\n <div matTooltipPosition="above" [matTooltip]="item[displayField]" class="d-flex justify-content-between">\r\n <ng-container *ngIf="selectDisplayDef?.templateRef">\r\n <ng-container *ngTemplateOutlet="selectDisplayDef.templateRef;context:{item: item}">\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf="!selectDisplayDef?.templateRef">\r\n {{ item[displayField] }}\r\n </ng-container>\r\n <div>\r\n <mat-icon *ngIf="editable && sdEdit?.observers?.length" class="mr-1 c-fa-icon" (click)="onEdit($event, item)">\r\n edit</mat-icon>\r\n <mat-icon *ngIf="deletable && sdDelete?.observers?.length" class="mr-0 c-fa-icon" (click)="onDelete($event, item)">\r\n delete</mat-icon>\r\n </div>\r\n </div>\r\n </mat-option>\r\n </ng-container>\r\n <ng-container *ngIf="!valueField && !displayField">\r\n <mat-option *ngFor="let item of filteredItems | async; trackBy: trackByKey" [value]="item">\r\n <div matTooltipPosition="above" [matTooltip]="item" class="d-flex justify-content-between">\r\n <ng-container *ngIf="selectDisplayDef?.templateRef">\r\n <ng-container *ngTemplateOutlet="selectDisplayDef.templateRef;context:{item: item}">\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf="!selectDisplayDef?.templateRef">\r\n {{ item }}\r\n </ng-container>\r\n <div>\r\n <mat-icon *ngIf="editable && sdEdit?.observers?.length" class="mr-1 c-fa-icon" (click)="onEdit($event, item)">\r\n edit</mat-icon>\r\n <mat-icon *ngIf="deletable && sdDelete?.observers?.length" class="mr-0 c-fa-icon" (click)="onDelete($event, item)">\r\n delete</mat-icon>\r\n </div>\r\n </div>\r\n </mat-option>\r\n </ng-container>\r\n <mat-option class="sd__option--add" *ngIf="addable && sdAdd?.observers?.length" (keyup.Space)="$event.stopPropagation()" disabled="true">\r\n <div (click)="onAdd($event)">\r\n <mat-icon class="mr-1">add</mat-icon>\r\n {{\'New item\' | sdTranslate}}\r\n </div>\r\n </mat-option>\r\n </mat-select>\r\n <mat-select #select [formControl]="formControl" [placeholder]="placeholder || (appearance ? label : \'\')"\r\n (selectionChange)="onSelectionChange($event)" disableOptionCentering="true" panelClass="sd-select-panel"\r\n [ngClass]="{\'sd-selected\': !isRequired && formControl?.value != null}" [required]="isRequired"\r\n (openedChange)="onOpenChange($event)" [attr.data-qclabel]="label" [attr.data-qcid]="qcId" *ngIf="!multiple">\r\n <mat-select-trigger>\r\n {{display | async }}\r\n </mat-select-trigger>\r\n <mat-option *ngIf="filtered" class="sd-filtered-input" (keyup.Space)="$event.stopPropagation()" disabled="true">\r\n <mat-form-field class="sd-md" appearance="outline">\r\n <mat-icon matPrefix>search</mat-icon>\r\n <input #input placeholder="{{\'Search\' | sdTranslate}}" matInput autocomplete="off"\r\n (keydown)="$event.stopPropagation()" (keyup)="searchTerm$.next($event.target.value)">\r\n </mat-form-field>\r\n </mat-option>\r\n <ng-container *ngIf="valueField && displayField">\r\n <mat-option *ngFor="let item of filteredItems | async; trackBy: trackByKey" [value]="item[valueField]">\r\n <div matTooltipPosition="above" [matTooltip]="item[displayField]" class="d-flex justify-content-between">\r\n <ng-container *ngIf="selectDisplayDef?.templateRef">\r\n <ng-container *ngTemplateOutlet="selectDisplayDef.templateRef;context:{item: item}">\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf="!selectDisplayDef?.templateRef">\r\n {{ item[displayField] }}\r\n </ng-container>\r\n <div>\r\n <mat-icon *ngIf="editable && sdEdit?.observers?.length" class="mr-1 c-fa-icon" (click)="onEdit($event, item)">\r\n edit</mat-icon>\r\n <mat-icon *ngIf="deletable && sdDelete?.observers?.length" class="mr-0 c-fa-icon" (click)="onDelete($event, item)">\r\n delete</mat-icon>\r\n </div>\r\n </div>\r\n </mat-option>\r\n </ng-container>\r\n <ng-container *ngIf="!valueField && !displayField">\r\n <mat-option *ngFor="let item of filteredItems | async; trackBy: trackByKey" [value]="item">\r\n <div matTooltipPosition="above" [matTooltip]="item" class="d-flex justify-content-between">\r\n <ng-container *ngIf="selectDisplayDef?.templateRef">\r\n <ng-container *ngTemplateOutlet="selectDisplayDef.templateRef;context:{item: item}">\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf="!selectDisplayDef?.templateRef">\r\n {{ item }}\r\n </ng-container>\r\n <div>\r\n <mat-icon *ngIf="editable && sdEdit?.observers?.length" class="mr-1 c-fa-icon" (click)="onEdit($event, item)">\r\n edit</mat-icon>\r\n <mat-icon *ngIf="deletable && sdDelete?.observers?.length" class="mr-0 c-fa-icon" (click)="onDelete($event, item)">\r\n delete</mat-icon>\r\n </div>\r\n </div>\r\n </mat-option>\r\n </ng-container>\r\n <mat-option class="sd__option--add" *ngIf="addable && sdAdd?.observers?.length" (keyup.Space)="$event.stopPropagation()" disabled="true">\r\n <div (click)="onAdd($event)">\r\n <mat-icon class="mr-1">add</mat-icon>\r\n {{\'New item\' | sdTranslate}}\r\n </div>\r\n </mat-option>\r\n </mat-select>\r\n <mat-icon\r\n *ngIf="(multiple ? formControl?.value?.length : formControl?.value != null) && !isRequired && !formControl.disabled"\r\n class="pointer sd-suffix-icon" (click)="clear($event)" matSuffix>cancel\r\n </mat-icon>\r\n <mat-error *ngIf="formControl.errors?.required && !disableErrorMessage">\r\n {{\'This field is required\' | sdTranslate}}\r\n </mat-error>\r\n <mat-error *ngIf="formControl?.errors?.customValidator && !disableErrorMessage">\r\n {{formControl?.errors?.customValidator}}\r\n </mat-error>\r\n </mat-form-field>\r\n</ng-template>\r\n</div>',changeDetection:t.ChangeDetectionStrategy.OnPush,styles:[":host{display:block;padding-top:5px}:host ::ng-deep .mat-form-field.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:none}:host ::ng-deep .sd-selected .mat-select-arrow{border:none}:host ::ng-deep .mat-form-field.no-padding-wrapper .mat-form-field-wrapper{padding-bottom:0}:host ::ng-deep .mat-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline{background:#f6f6f6;color:#e9e9e9}:host ::ng-deep .mat-form-field mat-select.mat-select-disabled .mat-select-value{color:#4d4d4d!important}:host ::ng-deep .mat-form-field .mat-placeholder-required{color:#f82c13}.sd-view:not(.c-focused):not(.c-disabled):hover{background-color:#ebecf0}::ng-deep .sd-select-panel .mat-option.sd-filtered-input{background-color:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:10}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field.mat-form-field-appearance-outline{width:100%}::ng-deep .sd-select-panel .mat-option.sd-filtered-input mat-pseudo-checkbox{display:none}::ng-deep .mat-select-panel .mat-option.sd-filtered-input{height:auto}::ng-deep .sd-select-panel .mat-option.sd-filtered-input input{color:#000}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field-prefix .mat-icon{margin-right:0}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field.mat-form-field-appearance-outline .mat-form-field-wrapper{padding:10px 0}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field.mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-outline{background-color:rgba(0,0,0,.04)}.sd__option--add{background-color:#fff;bottom:0;color:rgba(0,0,0,.87);cursor:pointer;position:-webkit-sticky;position:sticky;z-index:10}"]}]}],u.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:void 0,decorators:[{type:t.Inject,args:[d.FORM_CONFIG]},{type:t.Optional}]}]},u.propDecorators={matSelect:[{type:t.ViewChild,args:[s.MatSelect]}],addable:[{type:t.Input}],editable:[{type:t.Input}],deletable:[{type:t.Input}],sdAdd:[{type:t.Output}],sdEdit:[{type:t.Output}],sdDelete:[{type:t.Output}],sdLabelDef:[{type:t.ContentChild,args:[d.SdLabelDefDirective]}]};var v=function(){};v.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,a.FormsModule,a.ReactiveFormsModule,o.MatInputModule,i.MatTooltipModule,r.MatFormFieldModule,l.MatIconModule,s.MatSelectModule,m.SdTranslateModule,p.MatCheckboxModule,f.MatProgressSpinnerModule,d.SdCommonModule,c.SdSelectModule],declarations:[u],exports:[u],providers:[]}]}],e.SdSelectEditor=u,e.SdSelectEditorModule=v,Object.defineProperty(e,"__esModule",{value:!0})}));
15
+ ***************************************************************************** */var g=function(e,t){return(g=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};Object.create;Object.create;var u=function(e){function n(n,a){var r=e.call(this,n,a)||this;return r.cdRef=n,r.formConfiguration=a,r.addable=!0,r.editable=!0,r.deletable=!0,r.sdAdd=new t.EventEmitter,r.sdEdit=new t.EventEmitter,r.sdDelete=new t.EventEmitter,r.onAdd=function(e){var t;e.stopPropagation(),null==e||e.preventDefault(),null===(t=r.matSelect)||void 0===t||t.close(),r.sdAdd.emit()},r.onEdit=function(e,t){var n;e.stopPropagation(),null==e||e.preventDefault(),null===(n=r.matSelect)||void 0===n||n.close(),r.sdEdit.emit(t)},r.onDelete=function(e,t){var n;e.stopPropagation(),null==e||e.preventDefault(),null===(n=r.matSelect)||void 0===n||n.close(),r.sdDelete.emit(t)},r}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}g(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(n,e),n}(c.SdSelect);u.decorators=[{type:t.Component,args:[{selector:"sd-select-editor",template:'<label *ngIf="!appearance && label && !sdLabelDef?.templateRef" class="d-block mb-0 T14M">{{label}} <span class="text-danger mb-2"\r\n *ngIf="isRequired">*</span></label>\r\n<ng-container *ngIf="sdLabelDef?.templateRef" matSuffix>\r\n <ng-container *ngTemplateOutlet="sdLabelDef.templateRef">\r\n </ng-container>\r\n</ng-container>\r\n<div class="d-flex align-items-center" [class.sd-view]="sdView?.templateRef" [class.c-focused]="isFocused"\r\n[class.c-disabled]="formControl.disabled" (click)="onClick()">\r\n<ng-container *ngIf="sdView?.templateRef && !isFocused; else default">\r\n <ng-container\r\n *ngTemplateOutlet="sdView.templateRef;context: { value: formControl.value, selectedItems: selectedItems | async }">\r\n </ng-container>\r\n</ng-container>\r\n<ng-template #default>\r\n <mat-form-field class="sd-md" [ngClass]="{\'sd-sm\': size === \'sm\', \'no-padding-wrapper\': disableErrorMessage}"\r\n [appearance]="appearance || \'outline\'">\r\n <mat-label *ngIf="appearance && label">{{label}}</mat-label>\r\n <mat-select #select [formControl]="formControl" [placeholder]="placeholder || (appearance ? label : \'\')" multiple\r\n (selectionChange)="onSelectionChange($event)" disableOptionCentering="true" panelClass="sd-select-panel"\r\n [ngClass]="{\'sd-selected\': !isRequired && (multiple ? formControl?.value?.length : formControl?.value != null)}"\r\n [required]="isRequired" (openedChange)="onOpenChange($event)" [attr.data-qclabel]="label"\r\n [attr.data-qcid]="qcId" *ngIf="multiple">\r\n <mat-select-trigger>\r\n {{display | async }}\r\n </mat-select-trigger>\r\n <mat-option *ngIf="filtered" class="sd-filtered-input" (keyup.Space)="$event.stopPropagation()" disabled="true">\r\n <mat-form-field class="sd-md" appearance="outline">\r\n <mat-icon matPrefix>search</mat-icon>\r\n <input #input placeholder="{{\'Search\' | sdTranslate}}" matInput autocomplete="off"\r\n (keydown)="$event.stopPropagation()" (keyup)="searchTerm$.next($event.target.value)">\r\n </mat-form-field>\r\n </mat-option>\r\n <ng-container *ngIf="multiple && selectAll">\r\n <mat-checkbox class="mat-option" [(ngModel)]="allSelected" [ngModelOptions]="{standalone: true}"\r\n (change)="onSelectAll()">\r\n Tất cả</mat-checkbox>\r\n </ng-container>\r\n <ng-container *ngIf="valueField && displayField">\r\n <mat-option *ngFor="let item of filteredItems | async; trackBy: trackByKey" [value]="item[valueField]">\r\n <div matTooltipPosition="above" [matTooltip]="item[displayField]" class="d-flex justify-content-between">\r\n <ng-container *ngIf="selectDisplayDef?.templateRef">\r\n <ng-container *ngTemplateOutlet="selectDisplayDef.templateRef;context:{item: item}">\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf="!selectDisplayDef?.templateRef">\r\n {{ item[displayField] }}\r\n </ng-container>\r\n <div>\r\n <mat-icon *ngIf="editable && sdEdit?.observers?.length" class="mr-1 c-fa-icon" (click)="onEdit($event, item)">\r\n edit</mat-icon>\r\n <mat-icon *ngIf="deletable && sdDelete?.observers?.length" class="mr-0 c-fa-icon" (click)="onDelete($event, item)">\r\n delete</mat-icon>\r\n </div>\r\n </div>\r\n </mat-option>\r\n </ng-container>\r\n <ng-container *ngIf="!valueField && !displayField">\r\n <mat-option *ngFor="let item of filteredItems | async; trackBy: trackByKey" [value]="item">\r\n <div matTooltipPosition="above" [matTooltip]="item" class="d-flex justify-content-between">\r\n <ng-container *ngIf="selectDisplayDef?.templateRef">\r\n <ng-container *ngTemplateOutlet="selectDisplayDef.templateRef;context:{item: item}">\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf="!selectDisplayDef?.templateRef">\r\n {{ item }}\r\n </ng-container>\r\n <div>\r\n <mat-icon *ngIf="editable && sdEdit?.observers?.length" class="mr-1 c-fa-icon" (click)="onEdit($event, item)">\r\n edit</mat-icon>\r\n <mat-icon *ngIf="deletable && sdDelete?.observers?.length" class="mr-0 c-fa-icon" (click)="onDelete($event, item)">\r\n delete</mat-icon>\r\n </div>\r\n </div>\r\n </mat-option>\r\n </ng-container>\r\n <mat-option class="sd__option--add" *ngIf="addable && sdAdd?.observers?.length" (keyup.Space)="$event.stopPropagation()" disabled="true">\r\n <div (click)="onAdd($event)">\r\n <mat-icon class="mr-1">add</mat-icon>\r\n {{\'New item\' | sdTranslate}}\r\n </div>\r\n </mat-option>\r\n </mat-select>\r\n <mat-select #select [formControl]="formControl" [placeholder]="placeholder || (appearance ? label : \'\')"\r\n (selectionChange)="onSelectionChange($event)" disableOptionCentering="true" panelClass="sd-select-panel"\r\n [ngClass]="{\'sd-selected\': !isRequired && formControl?.value != null}" [required]="isRequired"\r\n (openedChange)="onOpenChange($event)" [attr.data-qclabel]="label" [attr.data-qcid]="qcId" *ngIf="!multiple">\r\n <mat-select-trigger>\r\n {{display | async }}\r\n </mat-select-trigger>\r\n <mat-option *ngIf="filtered" class="sd-filtered-input" (keyup.Space)="$event.stopPropagation()" disabled="true">\r\n <mat-form-field class="sd-md" appearance="outline">\r\n <mat-icon matPrefix>search</mat-icon>\r\n <input #input placeholder="{{\'Search\' | sdTranslate}}" matInput autocomplete="off"\r\n (keydown)="$event.stopPropagation()" (keyup)="searchTerm$.next($event.target.value)">\r\n </mat-form-field>\r\n </mat-option>\r\n <ng-container *ngIf="valueField && displayField">\r\n <mat-option *ngFor="let item of filteredItems | async; trackBy: trackByKey" [value]="item[valueField]">\r\n <div matTooltipPosition="above" [matTooltip]="item[displayField]" class="d-flex justify-content-between">\r\n <ng-container *ngIf="selectDisplayDef?.templateRef">\r\n <ng-container *ngTemplateOutlet="selectDisplayDef.templateRef;context:{item: item}">\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf="!selectDisplayDef?.templateRef">\r\n {{ item[displayField] }}\r\n </ng-container>\r\n <div>\r\n <mat-icon *ngIf="editable && sdEdit?.observers?.length" class="mr-1 c-fa-icon" (click)="onEdit($event, item)">\r\n edit</mat-icon>\r\n <mat-icon *ngIf="deletable && sdDelete?.observers?.length" class="mr-0 c-fa-icon" (click)="onDelete($event, item)">\r\n delete</mat-icon>\r\n </div>\r\n </div>\r\n </mat-option>\r\n </ng-container>\r\n <ng-container *ngIf="!valueField && !displayField">\r\n <mat-option *ngFor="let item of filteredItems | async; trackBy: trackByKey" [value]="item">\r\n <div matTooltipPosition="above" [matTooltip]="item" class="d-flex justify-content-between">\r\n <ng-container *ngIf="selectDisplayDef?.templateRef">\r\n <ng-container *ngTemplateOutlet="selectDisplayDef.templateRef;context:{item: item}">\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf="!selectDisplayDef?.templateRef">\r\n {{ item }}\r\n </ng-container>\r\n <div>\r\n <mat-icon *ngIf="editable && sdEdit?.observers?.length" class="mr-1 c-fa-icon" (click)="onEdit($event, item)">\r\n edit</mat-icon>\r\n <mat-icon *ngIf="deletable && sdDelete?.observers?.length" class="mr-0 c-fa-icon" (click)="onDelete($event, item)">\r\n delete</mat-icon>\r\n </div>\r\n </div>\r\n </mat-option>\r\n </ng-container>\r\n <mat-option class="sd__option--add" *ngIf="addable && sdAdd?.observers?.length" (keyup.Space)="$event.stopPropagation()" disabled="true">\r\n <div (click)="onAdd($event)">\r\n <mat-icon class="mr-1">add</mat-icon>\r\n {{\'New item\' | sdTranslate}}\r\n </div>\r\n </mat-option>\r\n </mat-select>\r\n <mat-icon\r\n *ngIf="(multiple ? formControl?.value?.length : formControl?.value != null) && !isRequired && !formControl.disabled"\r\n class="pointer sd-suffix-icon" (click)="clear($event)" matSuffix>cancel\r\n </mat-icon>\r\n <mat-error *ngIf="formControl.errors?.required && !disableErrorMessage">\r\n {{\'This field is required\' | sdTranslate}}\r\n </mat-error>\r\n <mat-error *ngIf="formControl?.errors?.customValidator && !disableErrorMessage">\r\n {{formControl?.errors?.customValidator}}\r\n </mat-error>\r\n </mat-form-field>\r\n</ng-template>\r\n</div>',changeDetection:t.ChangeDetectionStrategy.OnPush,styles:[":host{display:block;padding-top:5px}:host ::ng-deep .mat-form-field.mat-form-field-appearance-outline .mat-select-arrow-wrapper{transform:none}:host ::ng-deep .sd-selected .mat-select-arrow{border:none}:host ::ng-deep .mat-form-field.no-padding-wrapper .mat-form-field-wrapper{padding-bottom:0}:host ::ng-deep .mat-form-field.mat-form-field-appearance-outline.mat-form-field-disabled .mat-form-field-outline{background:#f6f6f6;color:#e9e9e9}:host ::ng-deep .mat-form-field mat-select.mat-select-disabled .mat-select-value{color:#4d4d4d!important}:host ::ng-deep .mat-form-field .mat-placeholder-required{color:#f82c13}.sd-view:not(.c-focused):not(.c-disabled):hover{background-color:#ebecf0}::ng-deep .sd-select-panel .mat-option.sd-filtered-input{background-color:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:10}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field.mat-form-field-appearance-outline{width:100%}::ng-deep .sd-select-panel .mat-option.sd-filtered-input mat-pseudo-checkbox{display:none}::ng-deep .mat-select-panel .mat-option.sd-filtered-input{height:auto}::ng-deep .sd-select-panel .mat-option.sd-filtered-input input{color:#000}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field-prefix .mat-icon{margin-right:0}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field.mat-form-field-appearance-outline .mat-form-field-wrapper{padding:10px 0}::ng-deep .sd-select-panel .mat-option.sd-filtered-input .mat-form-field.mat-form-field-appearance-outline .mat-form-field-wrapper .mat-form-field-outline{background-color:rgba(0,0,0,.04)}.sd__option--add{background-color:#fff;bottom:0;color:rgba(0,0,0,.87);cursor:pointer;position:-webkit-sticky;position:sticky;z-index:10}.sd__option--add ::ng-deep mat-pseudo-checkbox{display:none}"]}]}],u.ctorParameters=function(){return[{type:t.ChangeDetectorRef},{type:void 0,decorators:[{type:t.Inject,args:[d.FORM_CONFIG]},{type:t.Optional}]}]},u.propDecorators={matSelect:[{type:t.ViewChild,args:[s.MatSelect]}],addable:[{type:t.Input}],editable:[{type:t.Input}],deletable:[{type:t.Input}],sdAdd:[{type:t.Output}],sdEdit:[{type:t.Output}],sdDelete:[{type:t.Output}],sdLabelDef:[{type:t.ContentChild,args:[d.SdLabelDefDirective]}]};var v=function(){};v.decorators=[{type:t.NgModule,args:[{imports:[n.CommonModule,a.FormsModule,a.ReactiveFormsModule,o.MatInputModule,i.MatTooltipModule,r.MatFormFieldModule,l.MatIconModule,s.MatSelectModule,m.SdTranslateModule,p.MatCheckboxModule,f.MatProgressSpinnerModule,d.SdCommonModule,c.SdSelectModule],declarations:[u],exports:[u],providers:[]}]}],e.SdSelectEditor=u,e.SdSelectEditorModule=v,Object.defineProperty(e,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=sd-angular-core-select-editor.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/select-editor/src/lib/select-editor.component.ts","../../../../projects/sd-core/select-editor/src/lib/select-editor.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","create","SdSelectEditor","cdRef","formConfiguration","_this","_super","this","addable","editable","deletable","sdAdd","EventEmitter","sdEdit","sdDelete","onAdd","$event","stopPropagation","preventDefault","_a","matSelect","close","emit","onEdit","item","onDelete","TypeError","String","__","constructor","__extends","SdSelect","Component","args","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","ChangeDetectorRef","Inject","FORM_CONFIG","type","Optional","ViewChild","MatSelect","Input","Output","ContentChild","SdLabelDefDirective","NgModule","imports","CommonModule","FormsModule","ReactiveFormsModule","MatInputModule","MatTooltipModule","MatFormFieldModule","MatIconModule","MatSelectModule","SdTranslateModule","MatCheckboxModule","MatProgressSpinnerModule","SdCommonModule","SdSelectModule","declarations","exports","providers"],"mappings":";;;;;;;;;;;;;;oFAgBA,IAAIA,EAAgB,SAASC,EAAGC,GAI5B,OAHAF,EAAgBG,OAAOC,gBAClB,CAAEC,UAAW,cAAgBC,OAAS,SAAUL,EAAGC,GAAKD,EAAEI,UAAYH,IACvE,SAAUD,EAAGC,GAAK,IAAK,IAAIK,KAAKL,EAAOC,OAAOK,UAAUC,eAAeC,KAAKR,EAAGK,KAAIN,EAAEM,GAAKL,EAAEK,MAC3EN,EAAGC,IAuFCC,OAAOQ,OAsGXR,OAAOQ,yBCzK9B,SAAAC,EACUC,EAGAC,GAJV,IAAAC,EAMEC,EAAAN,KAAAO,KAAMJ,EAAOC,IAAkBG,YALvBF,EAAAF,MAAAA,EAGAE,EAAAD,kBAAAA,EAbDC,EAAAG,SAAmB,EACnBH,EAAAI,UAAoB,EACpBJ,EAAAK,WAAqB,EAEpBL,EAAAM,MAAQ,IAAIC,EAAAA,aACZP,EAAAQ,OAAS,IAAID,EAAAA,aACbP,EAAAS,SAAW,IAAIF,EAAAA,aAYzBP,EAAAU,MAAQ,SAACC,SACPA,EAAOC,kBACPD,MAAAA,GAAAA,EAAQE,iBACM,QAAdC,EAAAd,EAAKe,iBAAS,IAAAD,GAAAA,EAAEE,QAChBhB,EAAKM,MAAMW,QAGbjB,EAAAkB,OAAS,SAACP,EAAeQ,SACvBR,EAAOC,kBACPD,MAAAA,GAAAA,EAAQE,iBACM,QAAdC,EAAAd,EAAKe,iBAAS,IAAAD,GAAAA,EAAEE,QAChBhB,EAAKQ,OAAOS,KAAKE,IAGnBnB,EAAAoB,SAAW,SAACT,EAAeQ,SACzBR,EAAOC,kBACPD,MAAAA,GAAAA,EAAQE,iBACM,QAAdC,EAAAd,EAAKe,iBAAS,IAAAD,GAAAA,EAAEE,QAChBhB,EAAKS,SAASQ,KAAKE,sBD5CGjC,EAAGC,GACzB,GAAiB,mBAANA,GAA0B,OAANA,EAC3B,MAAM,IAAIkC,UAAU,uBAAyBC,OAAOnC,GAAK,iCAE7D,SAASoC,IAAOrB,KAAKsB,YAActC,EADnCD,EAAcC,EAAGC,GAEjBD,EAAEO,UAAkB,OAANN,EAAaC,OAAOQ,OAAOT,IAAMoC,EAAG9B,UAAYN,EAAEM,UAAW,IAAI8B,GCA/CE,CAAA5B,EAAAI,MAAAyB,EAAAA,8BANnCC,EAAAA,UAASC,KAAA,CAAC,CACTC,SAAU,mBACVC,SAAA,y4RAEAC,gBAAiBC,EAAAA,wBAAwBC,0xDAtBzCC,EAAAA,kDAsCGC,EAAAA,OAAMP,KAAA,CAACQ,EAAAA,cAAW,CAAAC,KAClBC,EAAAA,iDAdFC,EAAAA,UAASX,KAAA,CAACY,EAAAA,4BAEVC,EAAAA,wBACAA,EAAAA,yBACAA,EAAAA,qBAEAC,EAAAA,uBACAA,EAAAA,yBACAA,EAAAA,2BACAC,EAAAA,aAAYf,KAAA,CAACgB,EAAAA,8BCEhB,iCAzBCC,EAAAA,SAAQjB,KAAA,CAAC,CACRkB,QAAS,CACPC,EAAAA,aACAC,EAAAA,YACAC,EAAAA,oBACAC,EAAAA,eACAC,EAAAA,iBACAC,EAAAA,mBACAC,EAAAA,cACAC,EAAAA,gBACAC,EAAAA,kBACAC,EAAAA,kBACAC,EAAAA,yBACAC,EAAAA,eACAC,EAAAA,gBAEFC,aAAc,CACZ/D,GAEFgE,QAAS,CACPhE,GAEFiE,UAAW","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import {\r\n Component,\r\n Output,\r\n EventEmitter,\r\n ChangeDetectorRef,\r\n OnDestroy,\r\n OnInit,\r\n ViewChild,\r\n Optional,\r\n Inject,\r\n Input,\r\n ChangeDetectionStrategy,\r\n ContentChild,\r\n} from \"@angular/core\";\r\nimport { MatSelect } from \"@angular/material/select\";\r\nimport { SdLabelDefDirective } from \"@sd-angular/core/common\";\r\nimport {\r\n FORM_CONFIG,\r\n IFormConfiguration\r\n} from \"@sd-angular/core/common\";\r\nimport { SdSelect } from \"@sd-angular/core/select\";\r\n\r\n@Component({\r\n selector: \"sd-select-editor\",\r\n templateUrl: \"./select-editor.component.html\",\r\n styleUrls: [\"./select-editor.component.scss\"],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdSelectEditor extends SdSelect implements OnInit, OnDestroy {\r\n @ViewChild(MatSelect) matSelect: MatSelect;\r\n\r\n @Input() addable: boolean = true;\r\n @Input() editable: boolean = true;\r\n @Input() deletable: boolean = true;\r\n\r\n @Output() sdAdd = new EventEmitter();\r\n @Output() sdEdit = new EventEmitter<any>();\r\n @Output() sdDelete = new EventEmitter<any>();\r\n @ContentChild(SdLabelDefDirective) sdLabelDef: SdLabelDefDirective;\r\n\r\n constructor(\r\n private cdRef: ChangeDetectorRef,\r\n @Inject(FORM_CONFIG)\r\n @Optional()\r\n private formConfiguration: IFormConfiguration\r\n ) {\r\n super(cdRef, formConfiguration);\r\n }\r\n\r\n onAdd = ($event: Event) => {\r\n $event.stopPropagation();\r\n $event?.preventDefault();\r\n this.matSelect?.close();\r\n this.sdAdd.emit();\r\n };\r\n\r\n onEdit = ($event: Event, item: any) => {\r\n $event.stopPropagation();\r\n $event?.preventDefault();\r\n this.matSelect?.close();\r\n this.sdEdit.emit(item);\r\n };\r\n\r\n onDelete = ($event: Event, item: any) => {\r\n $event.stopPropagation();\r\n $event?.preventDefault();\r\n this.matSelect?.close();\r\n this.sdDelete.emit(item);\r\n };\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { SdSelectEditor } from './select-editor.component';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { SdCommonModule } from '@sd-angular/core/common';\r\nimport { SdSelectModule } from '@sd-angular/core/select';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatInputModule,\r\n MatTooltipModule,\r\n MatFormFieldModule,\r\n MatIconModule,\r\n MatSelectModule,\r\n SdTranslateModule,\r\n MatCheckboxModule,\r\n MatProgressSpinnerModule,\r\n SdCommonModule,\r\n SdSelectModule\r\n ],\r\n declarations: [\r\n SdSelectEditor\r\n ],\r\n exports: [\r\n SdSelectEditor\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdSelectEditorModule {\r\n\r\n}\r\n"]}
1
+ {"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/select-editor/src/lib/select-editor.component.ts","../../../../projects/sd-core/select-editor/src/lib/select-editor.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","create","SdSelectEditor","cdRef","formConfiguration","_this","_super","this","addable","editable","deletable","sdAdd","EventEmitter","sdEdit","sdDelete","onAdd","$event","stopPropagation","preventDefault","_a","matSelect","close","emit","onEdit","item","onDelete","TypeError","String","__","constructor","__extends","SdSelect","Component","args","selector","template","changeDetection","ChangeDetectionStrategy","OnPush","ChangeDetectorRef","Inject","FORM_CONFIG","type","Optional","ViewChild","MatSelect","Input","Output","ContentChild","SdLabelDefDirective","NgModule","imports","CommonModule","FormsModule","ReactiveFormsModule","MatInputModule","MatTooltipModule","MatFormFieldModule","MatIconModule","MatSelectModule","SdTranslateModule","MatCheckboxModule","MatProgressSpinnerModule","SdCommonModule","SdSelectModule","declarations","exports","providers"],"mappings":";;;;;;;;;;;;;;oFAgBA,IAAIA,EAAgB,SAASC,EAAGC,GAI5B,OAHAF,EAAgBG,OAAOC,gBAClB,CAAEC,UAAW,cAAgBC,OAAS,SAAUL,EAAGC,GAAKD,EAAEI,UAAYH,IACvE,SAAUD,EAAGC,GAAK,IAAK,IAAIK,KAAKL,EAAOC,OAAOK,UAAUC,eAAeC,KAAKR,EAAGK,KAAIN,EAAEM,GAAKL,EAAEK,MAC3EN,EAAGC,IAuFCC,OAAOQ,OAsGXR,OAAOQ,yBCzK9B,SAAAC,EACUC,EAGAC,GAJV,IAAAC,EAMEC,EAAAN,KAAAO,KAAMJ,EAAOC,IAAkBG,YALvBF,EAAAF,MAAAA,EAGAE,EAAAD,kBAAAA,EAbDC,EAAAG,SAAmB,EACnBH,EAAAI,UAAoB,EACpBJ,EAAAK,WAAqB,EAEpBL,EAAAM,MAAQ,IAAIC,EAAAA,aACZP,EAAAQ,OAAS,IAAID,EAAAA,aACbP,EAAAS,SAAW,IAAIF,EAAAA,aAYzBP,EAAAU,MAAQ,SAACC,SACPA,EAAOC,kBACPD,MAAAA,GAAAA,EAAQE,iBACM,QAAdC,EAAAd,EAAKe,iBAAS,IAAAD,GAAAA,EAAEE,QAChBhB,EAAKM,MAAMW,QAGbjB,EAAAkB,OAAS,SAACP,EAAeQ,SACvBR,EAAOC,kBACPD,MAAAA,GAAAA,EAAQE,iBACM,QAAdC,EAAAd,EAAKe,iBAAS,IAAAD,GAAAA,EAAEE,QAChBhB,EAAKQ,OAAOS,KAAKE,IAGnBnB,EAAAoB,SAAW,SAACT,EAAeQ,SACzBR,EAAOC,kBACPD,MAAAA,GAAAA,EAAQE,iBACM,QAAdC,EAAAd,EAAKe,iBAAS,IAAAD,GAAAA,EAAEE,QAChBhB,EAAKS,SAASQ,KAAKE,sBD5CGjC,EAAGC,GACzB,GAAiB,mBAANA,GAA0B,OAANA,EAC3B,MAAM,IAAIkC,UAAU,uBAAyBC,OAAOnC,GAAK,iCAE7D,SAASoC,IAAOrB,KAAKsB,YAActC,EADnCD,EAAcC,EAAGC,GAEjBD,EAAEO,UAAkB,OAANN,EAAaC,OAAOQ,OAAOT,IAAMoC,EAAG9B,UAAYN,EAAEM,UAAW,IAAI8B,GCA/CE,CAAA5B,EAAAI,MAAAyB,EAAAA,8BANnCC,EAAAA,UAASC,KAAA,CAAC,CACTC,SAAU,mBACVC,SAAA,y4RAEAC,gBAAiBC,EAAAA,wBAAwBC,s1DAtBzCC,EAAAA,kDAsCGC,EAAAA,OAAMP,KAAA,CAACQ,EAAAA,cAAW,CAAAC,KAClBC,EAAAA,iDAdFC,EAAAA,UAASX,KAAA,CAACY,EAAAA,4BAEVC,EAAAA,wBACAA,EAAAA,yBACAA,EAAAA,qBAEAC,EAAAA,uBACAA,EAAAA,yBACAA,EAAAA,2BACAC,EAAAA,aAAYf,KAAA,CAACgB,EAAAA,8BCEhB,iCAzBCC,EAAAA,SAAQjB,KAAA,CAAC,CACRkB,QAAS,CACPC,EAAAA,aACAC,EAAAA,YACAC,EAAAA,oBACAC,EAAAA,eACAC,EAAAA,iBACAC,EAAAA,mBACAC,EAAAA,cACAC,EAAAA,gBACAC,EAAAA,kBACAC,EAAAA,kBACAC,EAAAA,yBACAC,EAAAA,eACAC,EAAAA,gBAEFC,aAAc,CACZ/D,GAEFgE,QAAS,CACPhE,GAEFiE,UAAW","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import {\r\n Component,\r\n Output,\r\n EventEmitter,\r\n ChangeDetectorRef,\r\n OnDestroy,\r\n OnInit,\r\n ViewChild,\r\n Optional,\r\n Inject,\r\n Input,\r\n ChangeDetectionStrategy,\r\n ContentChild,\r\n} from \"@angular/core\";\r\nimport { MatSelect } from \"@angular/material/select\";\r\nimport { SdLabelDefDirective } from \"@sd-angular/core/common\";\r\nimport {\r\n FORM_CONFIG,\r\n IFormConfiguration\r\n} from \"@sd-angular/core/common\";\r\nimport { SdSelect } from \"@sd-angular/core/select\";\r\n\r\n@Component({\r\n selector: \"sd-select-editor\",\r\n templateUrl: \"./select-editor.component.html\",\r\n styleUrls: [\"./select-editor.component.scss\"],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class SdSelectEditor extends SdSelect implements OnInit, OnDestroy {\r\n @ViewChild(MatSelect) matSelect: MatSelect;\r\n\r\n @Input() addable: boolean = true;\r\n @Input() editable: boolean = true;\r\n @Input() deletable: boolean = true;\r\n\r\n @Output() sdAdd = new EventEmitter();\r\n @Output() sdEdit = new EventEmitter<any>();\r\n @Output() sdDelete = new EventEmitter<any>();\r\n @ContentChild(SdLabelDefDirective) sdLabelDef: SdLabelDefDirective;\r\n\r\n constructor(\r\n private cdRef: ChangeDetectorRef,\r\n @Inject(FORM_CONFIG)\r\n @Optional()\r\n private formConfiguration: IFormConfiguration\r\n ) {\r\n super(cdRef, formConfiguration);\r\n }\r\n\r\n onAdd = ($event: Event) => {\r\n $event.stopPropagation();\r\n $event?.preventDefault();\r\n this.matSelect?.close();\r\n this.sdAdd.emit();\r\n };\r\n\r\n onEdit = ($event: Event, item: any) => {\r\n $event.stopPropagation();\r\n $event?.preventDefault();\r\n this.matSelect?.close();\r\n this.sdEdit.emit(item);\r\n };\r\n\r\n onDelete = ($event: Event, item: any) => {\r\n $event.stopPropagation();\r\n $event?.preventDefault();\r\n this.matSelect?.close();\r\n this.sdDelete.emit(item);\r\n };\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { SdSelectEditor } from './select-editor.component';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { SdTranslateModule } from '@sd-angular/core/translate';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { SdCommonModule } from '@sd-angular/core/common';\r\nimport { SdSelectModule } from '@sd-angular/core/select';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n MatInputModule,\r\n MatTooltipModule,\r\n MatFormFieldModule,\r\n MatIconModule,\r\n MatSelectModule,\r\n SdTranslateModule,\r\n MatCheckboxModule,\r\n MatProgressSpinnerModule,\r\n SdCommonModule,\r\n SdSelectModule\r\n ],\r\n declarations: [\r\n SdSelectEditor\r\n ],\r\n exports: [\r\n SdSelectEditor\r\n ],\r\n providers: [\r\n ]\r\n})\r\nexport class SdSelectEditorModule {\r\n\r\n}\r\n"]}
@@ -485,26 +485,39 @@
485
485
  };
486
486
  }
487
487
 
488
+ var _subsctiption;
488
489
  var SdTabRouterItemComponent = /** @class */ (function () {
489
- function SdTabRouterItemComponent(tabRouterService) {
490
+ function SdTabRouterItemComponent(cdRef, tabRouterService) {
490
491
  var _this = this;
492
+ this.cdRef = cdRef;
491
493
  this.tabRouterService = tabRouterService;
494
+ _subsctiption.set(this, new rxjs.Subscription());
492
495
  this.close = function (event) {
493
496
  event.preventDefault();
494
497
  event.stopPropagation();
495
498
  _this.tabRouterService.close(_this.tab);
496
499
  };
497
500
  }
501
+ SdTabRouterItemComponent.prototype.ngOnInit = function () {
502
+ var _this = this;
503
+ __classPrivateFieldGet(this, _subsctiption).add(this.tabRouterService.events.subscribe(function () { return _this.cdRef.markForCheck(); }));
504
+ };
505
+ SdTabRouterItemComponent.prototype.ngOnDestroy = function () {
506
+ __classPrivateFieldGet(this, _subsctiption).unsubscribe();
507
+ };
498
508
  return SdTabRouterItemComponent;
499
509
  }());
510
+ _subsctiption = new WeakMap();
500
511
  SdTabRouterItemComponent.decorators = [
501
512
  { type: i0.Component, args: [{
502
- selector: 'sd-tab-router-item',
503
- template: "<a\r\n [routerLink]=\"[tab.url]\"\r\n [queryParams]=\"tab.queryParams\"\r\n [state]=\"{ switchTab: true }\"\r\n class=\"tab-router__item d-flex align-items-center\"\r\n [ngClass]=\"{\r\n 'tab-router__item--active': tab.isActive\r\n }\">\r\n <ng-container *ngIf=\"tab.overrideTabInfo | sdTabInfo:tab | async as tabInfo\">\r\n <div class=\"\r\n tab-router__icon\r\n d-flex\r\n align-items-center\r\n justify-content-center\r\n mr-8\r\n \" [ngStyle]=\"{\r\n 'background-color': tabInfo.color\r\n }\" [matTooltip]=\"tabInfo.tooltip || tabInfo.name\" matTooltipPosition=\"below\" matTooltipShowDelay=\"1000\">\r\n {{ tabInfo.initialName || 'SD' }}\r\n </div>\r\n <div class=\"flex-1\">\r\n <div\r\n class=\"tab-router__name\"\r\n [matTooltip]=\"tabInfo.tooltip || tabInfo.name\"\r\n matTooltipPosition=\"below\"\r\n matTooltipShowDelay=\"1000\"\r\n >\r\n {{ tabInfo.name }}\r\n </div>\r\n </div>\r\n <button\r\n type=\"button\"\r\n class=\"tab-router__close d-flex align-items-center justify-content-center ml-4\"\r\n (click)=\"close($event)\"\r\n (mousedown)=\"$event.stopPropagation()\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </ng-container>\r\n</a>\r\n",
504
- styles: [":host{flex:1 1 auto;max-width:240px;position:relative}:host:after{background:#dde0e5;bottom:0;content:\"\";height:16px;margin:auto;position:absolute;right:0;top:0;width:1px}:host:last-child:after{content:none}.flex-1{flex:1}.tab-router__icon{background-color:#5c6bc0;border-radius:2px;color:#fff;font-size:10px;height:16px;line-height:1;text-transform:uppercase;width:16px}.tab-router__icon .mat-icon{font-size:10px;height:10px;width:10px}.tab-router__close{background:none;border:0;border-radius:50%;color:#757575;height:16px;outline:none;width:16px}.tab-router__close:hover{background-color:rgba(0,0,0,.12)}.tab-router__close .mat-icon{font-size:12px;height:12px;width:12px}.tab-router__item{background:#f2f3f4;color:inherit;font-size:12px;line-height:16px;padding:16px 16px 8px;text-decoration:none}.tab-router__item:hover{background-color:#fff}.tab-router__name{-webkit-box-orient:vertical;-webkit-line-clamp:1;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.tab-router__item--active{background-color:#fff;border-radius:8px 8px 0 0}"]
513
+ selector: "sd-tab-router-item",
514
+ template: "<a\r\n [routerLink]=\"[tab.url]\"\r\n [queryParams]=\"tab.queryParams\"\r\n [state]=\"{ switchTab: true }\"\r\n class=\"tab-router__item d-flex align-items-center\"\r\n [ngClass]=\"{\r\n 'tab-router__item--active': tab.isActive\r\n }\">\r\n <ng-container *ngIf=\"tab.overrideTabInfo | sdTabInfo:tab | async as tabInfo\">\r\n <div class=\"\r\n tab-router__icon\r\n mr-8\r\n \" [ngStyle]=\"{\r\n 'background-color': tabInfo.color\r\n }\" [matTooltip]=\"tabInfo.tooltip || tabInfo.name\" matTooltipPosition=\"below\" matTooltipShowDelay=\"1000\">\r\n {{ tabInfo.initialName || 'SD' }}\r\n </div>\r\n <div class=\"flex-1 overflow-hidden\">\r\n <div\r\n class=\"tab-router__name\"\r\n [matTooltip]=\"tabInfo.tooltip || tabInfo.name\"\r\n matTooltipPosition=\"below\"\r\n matTooltipShowDelay=\"1000\"\r\n >\r\n {{ tabInfo.name }}\r\n </div>\r\n </div>\r\n <button\r\n type=\"button\"\r\n class=\"tab-router__close d-flex align-items-center justify-content-center ml-4\"\r\n (click)=\"close($event)\"\r\n (mousedown)=\"$event.stopPropagation()\"\r\n >\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </ng-container>\r\n</a>\r\n",
515
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
516
+ styles: [":host{display:block;flex:1 1 64px;max-width:240px;overflow:hidden;position:relative}:host:after{background:#dde0e5;bottom:0;content:\"\";height:16px;margin:auto;position:absolute;right:0;top:0;width:1px}:host:last-child:after{content:none}.flex-1{flex:1}.tab-router__icon{background-color:#5c6bc0;border-radius:2px;color:#fff;font-size:10px;height:16px;line-height:16px;text-align:center;text-transform:uppercase;width:16px}.tab-router__icon .mat-icon{font-size:10px;height:10px;width:10px}.tab-router__close{background:none;border:0;border-radius:50%;color:#757575;height:16px;outline:none;width:16px}.tab-router__close:hover{background-color:rgba(0,0,0,.12)}.tab-router__close .mat-icon{font-size:12px;height:12px;width:12px}.tab-router__item{background:#f2f3f4;color:inherit;font-size:12px;line-height:16px;overflow:hidden;padding:16px 16px 8px;text-decoration:none}.tab-router__item:hover{background-color:#fff}.tab-router__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab-router__item--active{background-color:#fff;border-radius:8px 8px 0 0}"]
505
517
  },] }
506
518
  ];
507
519
  SdTabRouterItemComponent.ctorParameters = function () { return [
520
+ { type: i0.ChangeDetectorRef },
508
521
  { type: SdTabRouterService }
509
522
  ]; };
510
523
  SdTabRouterItemComponent.propDecorators = {
@@ -512,19 +525,21 @@
512
525
  };
513
526
 
514
527
  var SdTabRouterNavComponent = /** @class */ (function () {
515
- function SdTabRouterNavComponent(elementRef) {
528
+ function SdTabRouterNavComponent(cdRef, elementRef) {
516
529
  var _this = this;
530
+ this.cdRef = cdRef;
517
531
  this.elementRef = elementRef;
518
532
  this.mode = 'default';
519
533
  this.checkUI = function () {
520
534
  var width = _this.tabRouterNav.nativeElement.clientWidth;
521
- var nameWidth = (width - _this.tabs.length * 64) / _this.tabs.length;
535
+ var nameWidth = (width - _this.tabs.length * 68) / _this.tabs.length;
522
536
  if (nameWidth <= 20) {
523
537
  _this.mode = 'compact';
524
538
  }
525
539
  else {
526
540
  _this.mode = 'default';
527
541
  }
542
+ _this.cdRef.markForCheck();
528
543
  };
529
544
  this.onDrop = function (event) {
530
545
  dragDrop.moveItemInArray(_this.tabs, event.previousIndex, event.currentIndex);
@@ -538,11 +553,13 @@
538
553
  SdTabRouterNavComponent.decorators = [
539
554
  { type: i0.Component, args: [{
540
555
  selector: 'sd-tab-router-nav',
541
- template: "<div\r\n #tabRouterNav\r\n cdkDropList\r\n cdkDropListLockAxis=\"x\"\r\n cdkDropListOrientation=\"horizontal\"\r\n (cdkDropListDropped)=\"onDrop($event)\"\r\n class=\"tab-router__nav tab-router__nav--{{ mode }} d-flex align-items-center\"\r\n>\r\n <ng-container *ngFor=\"let tab of tabs\">\r\n <sd-tab-router-item [tab]=\"tab\" cdkDrag [cdkDragBoundary]=\"elementRef?.nativeElement\"></sd-tab-router-item>\r\n </ng-container>\r\n</div>\r\n",
542
- styles: [".tab-router__nav{background:#f9f9f9}.tab-router__nav--compact::ng-deep .tab-router__name{display:none}.tab-router__nav--compact::ng-deep .tab-router__icon{margin:0!important}.tab-router__nav--compact::ng-deep .tab-router__item--active{min-width:240px}.tab-router__nav--compact::ng-deep .tab-router__item--active .tab-router__icon{margin-right:8px!important}.tab-router__nav--compact::ng-deep .tab-router__item--active .tab-router__name{display:-webkit-box}"]
556
+ template: "<div\r\n #tabRouterNav\r\n cdkDropList\r\n cdkDropListLockAxis=\"x\"\r\n cdkDropListOrientation=\"horizontal\"\r\n (cdkDropListDropped)=\"onDrop($event)\"\r\n class=\"tab-router__nav tab-router__nav--{{ mode }} d-flex align-items-center flex-nowrap\"\r\n>\r\n <ng-container *ngFor=\"let tab of tabs\">\r\n <sd-tab-router-item [tab]=\"tab\" cdkDrag [cdkDragBoundary]=\"elementRef?.nativeElement\"></sd-tab-router-item>\r\n </ng-container>\r\n</div>\r\n",
557
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
558
+ styles: [".tab-router__nav{background:#f9f9f9;overflow:hidden}.tab-router__nav--compact::ng-deep .tab-router__name{display:none}.tab-router__nav--compact::ng-deep .tab-router__icon{margin:0!important}.tab-router__nav--compact::ng-deep .tab-router__item--active{min-width:240px}.tab-router__nav--compact::ng-deep .tab-router__item--active .tab-router__icon{margin-right:8px!important}.tab-router__nav--compact::ng-deep .tab-router__item--active .tab-router__name{display:-webkit-box}"]
543
559
  },] }
544
560
  ];
545
561
  SdTabRouterNavComponent.ctorParameters = function () { return [
562
+ { type: i0.ChangeDetectorRef },
546
563
  { type: i0.ElementRef }
547
564
  ]; };
548
565
  SdTabRouterNavComponent.propDecorators = {
@@ -615,7 +632,7 @@
615
632
  }
616
633
  });
617
634
  _activeRoute.set(this, function (fullUrl, route) { return __awaiter(_this, void 0, void 0, function () {
618
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, component, queryParams, params, _k, url, key, existedIndex, activatedIndex, currentNavigation, existedTab, module, factory, injector_1, activatedRoute_1, tab;
635
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, component, queryParams, params, data, _k, url, key, existedIndex, activatedIndex, currentNavigation, existedTab, module, factory, injector_1, activatedRoute_1, tab;
619
636
  var _this = this;
620
637
  return __generator(this, function (_l) {
621
638
  switch (_l.label) {
@@ -626,6 +643,7 @@
626
643
  component = route.component;
627
644
  queryParams = Object.assign({}, (route.queryParams || {}));
628
645
  params = Object.assign({}, (route.params || {}));
646
+ data = Object.assign({}, (route.data || {}));
629
647
  _k = __read(fullUrl.split('?'), 1), url = _k[0];
630
648
  key = hash__default['default']({ url: url, queryParams: queryParams });
631
649
  existedIndex = -1;
@@ -668,6 +686,7 @@
668
686
  url: url,
669
687
  params: params,
670
688
  queryParams: queryParams,
689
+ data: data
671
690
  };
672
691
  this.tabRouterService.setCurrentTab(tab);
673
692
  if (activatedIndex >= 0 && ((_f = (_e = currentNavigation === null || currentNavigation === void 0 ? void 0 : currentNavigation.extras) === null || _e === void 0 ? void 0 : _e.state) === null || _f === void 0 ? void 0 : _f.replaceTab)) {
@@ -809,10 +828,10 @@
809
828
  return this.tabRouterService.builders.pipe(operators.map(function (builders) {
810
829
  var builder = builders.find(function (e) { return e.component === tab.component; });
811
830
  if (builder) {
812
- var url = tab.url, params = tab.params, queryParams = tab.queryParams;
831
+ var url = tab.url, params = tab.params, queryParams = tab.queryParams, data = tab.data;
813
832
  tab.tabInfo = {
814
833
  name: typeof (builder.name) === 'function' ?
815
- builder.name({ url: url, params: params, queryParams: queryParams }) : builder.name,
834
+ builder.name({ url: url, params: params, queryParams: queryParams, data: data }) : builder.name,
816
835
  initialName: typeof (builder.initialName) === 'function' ?
817
836
  builder.initialName({ url: url, params: params, queryParams: queryParams }) : builder.initialName,
818
837
  tooltip: typeof (builder.tooltip) === 'function' ?