@sd-angular/core 1.3.137 → 1.3.139

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 (548) 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-grid-material.umd.js +165 -143
  52. package/bundles/sd-angular-core-grid-material.umd.js.map +1 -1
  53. package/bundles/sd-angular-core-grid-material.umd.min.js +1 -1
  54. package/bundles/sd-angular-core-grid-material.umd.min.js.map +1 -1
  55. package/esm2015/api/index.js +1 -1
  56. package/esm2015/api/sd-angular-core-api.js +1 -1
  57. package/esm2015/api/src/lib/api.model.js +1 -1
  58. package/esm2015/api/src/lib/api.module.js +1 -1
  59. package/esm2015/api/src/lib/api.service.js +1 -1
  60. package/esm2015/api/src/lib/http.interceptor.js +1 -1
  61. package/esm2015/api/src/lib/http.service.js +1 -1
  62. package/esm2015/api/src/lib/token.service.js +1 -1
  63. package/esm2015/api/src/public-api.js +1 -1
  64. package/esm2015/autocomplete/index.js +1 -1
  65. package/esm2015/autocomplete/sd-angular-core-autocomplete.js +1 -1
  66. package/esm2015/autocomplete/src/lib/autocomplete-display-def.directive.js +1 -1
  67. package/esm2015/autocomplete/src/lib/autocomplete.component.js +1 -1
  68. package/esm2015/autocomplete/src/lib/autocomplete.module.js +1 -1
  69. package/esm2015/autocomplete/src/public-api.js +1 -1
  70. package/esm2015/badge/index.js +1 -1
  71. package/esm2015/badge/sd-angular-core-badge.js +1 -1
  72. package/esm2015/badge/src/lib/badge.component.js +1 -1
  73. package/esm2015/badge/src/lib/badge.module.js +1 -1
  74. package/esm2015/badge/src/public-api.js +1 -1
  75. package/esm2015/button/index.js +1 -1
  76. package/esm2015/button/sd-angular-core-button.js +1 -1
  77. package/esm2015/button/src/lib/button.component.js +1 -1
  78. package/esm2015/button/src/lib/button.module.js +1 -1
  79. package/esm2015/button/src/public-api.js +1 -1
  80. package/esm2015/cache/index.js +1 -1
  81. package/esm2015/cache/sd-angular-core-cache.js +1 -1
  82. package/esm2015/cache/src/lib/cache.model.js +1 -1
  83. package/esm2015/cache/src/lib/cache.service.js +1 -1
  84. package/esm2015/cache/src/public-api.js +1 -1
  85. package/esm2015/chart/index.js +1 -1
  86. package/esm2015/chart/sd-angular-core-chart.js +1 -1
  87. package/esm2015/chart/src/lib/chart.component.js +1 -1
  88. package/esm2015/chart/src/lib/chart.model.js +1 -1
  89. package/esm2015/chart/src/lib/chart.module.js +1 -1
  90. package/esm2015/chart/src/public-api.js +1 -1
  91. package/esm2015/checkbox/index.js +1 -1
  92. package/esm2015/checkbox/sd-angular-core-checkbox.js +1 -1
  93. package/esm2015/checkbox/src/lib/checkbox.component.js +1 -1
  94. package/esm2015/checkbox/src/lib/checkbox.module.js +1 -1
  95. package/esm2015/checkbox/src/public-api.js +1 -1
  96. package/esm2015/chip/index.js +1 -1
  97. package/esm2015/chip/sd-angular-core-chip.js +1 -1
  98. package/esm2015/chip/src/lib/chip.component.js +1 -1
  99. package/esm2015/chip/src/lib/chip.model.js +1 -1
  100. package/esm2015/chip/src/lib/chip.module.js +1 -1
  101. package/esm2015/chip/src/lib/directives/sd-chip-display-def.directive.js +1 -1
  102. package/esm2015/chip/src/lib/pipes/removable-chip.pipe.js +1 -1
  103. package/esm2015/chip/src/public-api.js +1 -1
  104. package/esm2015/comment/index.js +1 -1
  105. package/esm2015/comment/sd-angular-core-comment.js +1 -1
  106. package/esm2015/comment/src/lib/comment.component.js +1 -1
  107. package/esm2015/comment/src/lib/comment.model.js +1 -1
  108. package/esm2015/comment/src/lib/comment.module.js +1 -1
  109. package/esm2015/comment/src/public-api.js +1 -1
  110. package/esm2015/common/index.js +1 -1
  111. package/esm2015/common/sd-angular-core-common.js +1 -1
  112. package/esm2015/common/src/lib/common.module.js +1 -1
  113. package/esm2015/common/src/lib/configurations/firebase.configuration.js +1 -1
  114. package/esm2015/common/src/lib/configurations/form.configuration.js +1 -1
  115. package/esm2015/common/src/lib/directives/sd-lable.directive.js +1 -1
  116. package/esm2015/common/src/lib/directives/sd-let.directive.js +1 -1
  117. package/esm2015/common/src/lib/directives/sd-scroll.directive.js +1 -1
  118. package/esm2015/common/src/lib/directives/sd-suffix.directive.js +1 -1
  119. package/esm2015/common/src/lib/directives/view-def.directive.js +1 -1
  120. package/esm2015/common/src/lib/models/sd-form-control.js +1 -1
  121. package/esm2015/common/src/lib/others/detectIncognito.js +1 -1
  122. package/esm2015/common/src/lib/services/browser.service.js +1 -1
  123. package/esm2015/common/src/lib/typings/array.extension.js +1 -1
  124. package/esm2015/common/src/lib/typings/date.extension.js +1 -1
  125. package/esm2015/common/src/lib/typings/index.js +1 -1
  126. package/esm2015/common/src/lib/typings/number.extension.js +1 -1
  127. package/esm2015/common/src/lib/typings/string.extension.js +1 -1
  128. package/esm2015/common/src/lib/typings/utility.extension.js +1 -1
  129. package/esm2015/common/src/public-api.js +1 -1
  130. package/esm2015/confirm/index.js +1 -1
  131. package/esm2015/confirm/sd-angular-core-confirm.js +1 -1
  132. package/esm2015/confirm/src/lib/components/dialog-confirm/dialog-confirm.component.js +1 -1
  133. package/esm2015/confirm/src/lib/confirm.module.js +1 -1
  134. package/esm2015/confirm/src/lib/confirm.service.js +1 -1
  135. package/esm2015/confirm/src/public-api.js +1 -1
  136. package/esm2015/date-month/index.js +1 -1
  137. package/esm2015/date-month/sd-angular-core-date-month.js +1 -1
  138. package/esm2015/date-month/src/lib/date-month.component.js +1 -1
  139. package/esm2015/date-month/src/lib/date-month.module.js +1 -1
  140. package/esm2015/date-month/src/public-api.js +1 -1
  141. package/esm2015/date-range/index.js +1 -1
  142. package/esm2015/date-range/sd-angular-core-date-range.js +1 -1
  143. package/esm2015/date-range/src/lib/date-range.component.js +1 -1
  144. package/esm2015/date-range/src/lib/date-range.module.js +1 -1
  145. package/esm2015/date-range/src/public-api.js +1 -1
  146. package/esm2015/date-time/index.js +1 -1
  147. package/esm2015/date-time/sd-angular-core-date-time.js +1 -1
  148. package/esm2015/date-time/src/lib/date-time.component.js +1 -1
  149. package/esm2015/date-time/src/lib/date-time.module.js +1 -1
  150. package/esm2015/date-time/src/public-api.js +1 -1
  151. package/esm2015/db/index.js +1 -1
  152. package/esm2015/db/sd-angular-core-db.js +1 -1
  153. package/esm2015/db/src/lib/db.model.js +1 -1
  154. package/esm2015/db/src/lib/db.service.js +1 -1
  155. package/esm2015/db/src/public-api.js +1 -1
  156. package/esm2015/dynamic-report/index.js +1 -1
  157. package/esm2015/dynamic-report/sd-angular-core-dynamic-report.js +1 -1
  158. package/esm2015/dynamic-report/src/lib/dynamic-report.component.js +1 -1
  159. package/esm2015/dynamic-report/src/lib/dynamic-report.module.js +1 -1
  160. package/esm2015/dynamic-report/src/public-api.js +1 -1
  161. package/esm2015/editor/index.js +1 -1
  162. package/esm2015/editor/sd-angular-core-editor.js +1 -1
  163. package/esm2015/editor/src/lib/constant.js +1 -1
  164. package/esm2015/editor/src/lib/editor.component.js +1 -1
  165. package/esm2015/editor/src/lib/editor.model.js +1 -1
  166. package/esm2015/editor/src/lib/editor.module.js +1 -1
  167. package/esm2015/editor/src/public-api.js +1 -1
  168. package/esm2015/export/index.js +1 -1
  169. package/esm2015/export/sd-angular-core-export.js +1 -1
  170. package/esm2015/export/src/lib/excel.model.js +1 -1
  171. package/esm2015/export/src/lib/export.model.js +1 -1
  172. package/esm2015/export/src/lib/export.service.js +1 -1
  173. package/esm2015/export/src/public-api.js +1 -1
  174. package/esm2015/filter/index.js +1 -1
  175. package/esm2015/filter/sd-angular-core-filter.js +1 -1
  176. package/esm2015/filter/src/lib/directives/sd-filter-def.directive.js +1 -1
  177. package/esm2015/filter/src/lib/filter.component.js +1 -1
  178. package/esm2015/filter/src/lib/filter.model.js +1 -1
  179. package/esm2015/filter/src/lib/filter.module.js +1 -1
  180. package/esm2015/filter/src/lib/filter.service.js +1 -1
  181. package/esm2015/filter/src/lib/pipes/values-local.pipe.js +1 -1
  182. package/esm2015/filter/src/lib/pipes/values-server.pipe.js +1 -1
  183. package/esm2015/filter/src/public-api.js +1 -1
  184. package/esm2015/form/index.js +1 -1
  185. package/esm2015/form/sd-angular-core-form.js +1 -1
  186. package/esm2015/form/src/lib/form.module.js +1 -1
  187. package/esm2015/form/src/public-api.js +1 -1
  188. package/esm2015/grid/index.js +1 -1
  189. package/esm2015/grid/sd-angular-core-grid.js +1 -1
  190. package/esm2015/grid/src/lib/components/grid-config/grid-config.component.js +1 -1
  191. package/esm2015/grid/src/lib/components/grid-config/grid-config.model.js +1 -1
  192. package/esm2015/grid/src/lib/components/grid-desktop-column-children-view/grid-desktop-column-children-view.component.js +1 -1
  193. package/esm2015/grid/src/lib/components/grid-desktop-column-edit/grid-desktop-column-edit.component.js +1 -1
  194. package/esm2015/grid/src/lib/components/grid-desktop-column-view/grid-desktop-column-view.component.js +1 -1
  195. package/esm2015/grid/src/lib/components/grid-desktop-inline-filter/grid-desktop-inline-filter.component.js +1 -1
  196. package/esm2015/grid/src/lib/components/grid-import-excel/grid-import-excel.component.js +1 -1
  197. package/esm2015/grid/src/lib/components/grid-mobile-item-view/grid-mobile-item-view.component.js +1 -1
  198. package/esm2015/grid/src/lib/components/grid-popup-editor/grid-popup-editor.component.js +1 -1
  199. package/esm2015/grid/src/lib/components/grid-popup-export-excel/grid-popup-export-excel.component.js +1 -1
  200. package/esm2015/grid/src/lib/components/grid-popup-export-excel/grid-popup-export-excel.model.js +1 -1
  201. package/esm2015/grid/src/lib/components/grid-popup-filter/grid-popup-filter.component.js +1 -1
  202. package/esm2015/grid/src/lib/components/grid-popup-filter/grid-popup-filter.model.js +1 -1
  203. package/esm2015/grid/src/lib/components/grid-popup-quick-filter-detail/grid-popup-quick-filter-detail.component.js +1 -1
  204. package/esm2015/grid/src/lib/components/grid-sub-information/grid-sub-information.component.js +1 -1
  205. package/esm2015/grid/src/lib/directives/cell-def.directive.js +1 -1
  206. package/esm2015/grid/src/lib/directives/cell-editor-def.directive.js +1 -1
  207. package/esm2015/grid/src/lib/directives/cell-footer-def.directive.js +1 -1
  208. package/esm2015/grid/src/lib/directives/sub-information-header-def.directive.js +1 -1
  209. package/esm2015/grid/src/lib/grid.component.js +1 -1
  210. package/esm2015/grid/src/lib/grid.model.js +1 -1
  211. package/esm2015/grid/src/lib/grid.module.js +1 -1
  212. package/esm2015/grid/src/lib/models/filter-info.model.js +1 -1
  213. package/esm2015/grid/src/lib/models/grid-configuration.model.js +1 -1
  214. package/esm2015/grid/src/lib/models/handler-dotnet.js +1 -1
  215. package/esm2015/grid/src/lib/models/handler-local.js +1 -1
  216. package/esm2015/grid/src/lib/models/handler.js +1 -1
  217. package/esm2015/grid/src/lib/pipes/cell-desktop-class-name.pipe.js +1 -1
  218. package/esm2015/grid/src/lib/pipes/cell-mobile-class-name.pipe.js +1 -1
  219. package/esm2015/grid/src/lib/pipes/column-command-filter.pipe.js +1 -1
  220. package/esm2015/grid/src/lib/pipes/column-html-template.pipe.js +1 -1
  221. package/esm2015/grid/src/lib/pipes/column-title.pipe.js +1 -1
  222. package/esm2015/grid/src/lib/pipes/column-values.pipe.js +1 -1
  223. package/esm2015/grid/src/lib/pipes/command-disabled.pipe.js +1 -1
  224. package/esm2015/grid/src/lib/pipes/command-filter.pipe.js +1 -1
  225. package/esm2015/grid/src/lib/pipes/command-hidden.pipe.js +1 -1
  226. package/esm2015/grid/src/lib/pipes/command-icon.pipe.js +1 -1
  227. package/esm2015/grid/src/lib/pipes/command-title.pipe.js +1 -1
  228. package/esm2015/grid/src/lib/pipes/dynamic-items.pipe.js +1 -1
  229. package/esm2015/grid/src/lib/pipes/editor-dynamic-item.pipe.js +1 -1
  230. package/esm2015/grid/src/lib/pipes/editor-handler.pipe.js +1 -1
  231. package/esm2015/grid/src/lib/pipes/editor-popup-visible.pipe.js +1 -1
  232. package/esm2015/grid/src/lib/pipes/editor-sub-information-handler.pipe.js +1 -1
  233. package/esm2015/grid/src/lib/pipes/editor-validate.pipe.js +1 -1
  234. package/esm2015/grid/src/lib/pipes/filter-mobile.pipe.js +1 -1
  235. package/esm2015/grid/src/lib/pipes/mobile-command-filter.js +1 -1
  236. package/esm2015/grid/src/lib/pipes/mobile-view-html-template.pipe.js +1 -1
  237. package/esm2015/grid/src/lib/pipes/value-transform.pipe.js +1 -1
  238. package/esm2015/grid/src/public-api.js +1 -1
  239. package/esm2015/grid-material/index.js +1 -1
  240. package/esm2015/grid-material/sd-angular-core-grid-material.js +1 -1
  241. package/esm2015/grid-material/src/lib/components/column-inline-filter/column-inline-filter.component.js +32 -13
  242. package/esm2015/grid-material/src/lib/components/desktop-cell/desktop-cell.component.js +1 -1
  243. package/esm2015/grid-material/src/lib/components/desktop-cell-children-view/desktop-cell-children-view.component.js +1 -1
  244. package/esm2015/grid-material/src/lib/components/desktop-cell-editor/desktop-cell-editor.component.js +1 -1
  245. package/esm2015/grid-material/src/lib/components/desktop-cell-view/desktop-cell-view.component.js +1 -1
  246. package/esm2015/grid-material/src/lib/components/desktop-command/desktop-command.component.js +1 -1
  247. package/esm2015/grid-material/src/lib/components/desktop-editor-validation/desktop-editor-validation.component.js +1 -1
  248. package/esm2015/grid-material/src/lib/components/dynamic-column/dynamic-column.component.js +1 -1
  249. package/esm2015/grid-material/src/lib/components/grid-filter/grid-filter.component.js +1 -1
  250. package/esm2015/grid-material/src/lib/components/popup-export/popup-export.component.js +1 -1
  251. package/esm2015/grid-material/src/lib/components/popup-filter/popup-filter.component.js +1 -1
  252. package/esm2015/grid-material/src/lib/components/popup-grid-configuration/popup-grid-configuration.component.js +1 -1
  253. package/esm2015/grid-material/src/lib/components/quick-action/quick-action.component.js +1 -1
  254. package/esm2015/grid-material/src/lib/directives/sd-material-cell-def.directive.js +1 -1
  255. package/esm2015/grid-material/src/lib/directives/sd-material-empty-data-def.directive.js +1 -1
  256. package/esm2015/grid-material/src/lib/directives/sd-material-filter-def.directive.js +1 -1
  257. package/esm2015/grid-material/src/lib/directives/sd-material-footer-def.directive.js +1 -1
  258. package/esm2015/grid-material/src/lib/directives/sd-material-sub-information-def.directive.js +1 -1
  259. package/esm2015/grid-material/src/lib/functions/calculate-sd-id.js +1 -1
  260. package/esm2015/grid-material/src/lib/grid-material.component.js +7 -4
  261. package/esm2015/grid-material/src/lib/grid-material.module.js +1 -1
  262. package/esm2015/grid-material/src/lib/models/grid-action.model.js +1 -1
  263. package/esm2015/grid-material/src/lib/models/grid-cell.model.js +1 -1
  264. package/esm2015/grid-material/src/lib/models/grid-column.model.js +1 -1
  265. package/esm2015/grid-material/src/lib/models/grid-command.model.js +1 -1
  266. package/esm2015/grid-material/src/lib/models/grid-config.model.js +1 -1
  267. package/esm2015/grid-material/src/lib/models/grid-configuration.model.js +1 -1
  268. package/esm2015/grid-material/src/lib/models/grid-editor.model.js +1 -1
  269. package/esm2015/grid-material/src/lib/models/grid-export.model.js +1 -1
  270. package/esm2015/grid-material/src/lib/models/grid-group.model.js +1 -1
  271. package/esm2015/grid-material/src/lib/models/grid-option.model.js +1 -1
  272. package/esm2015/grid-material/src/lib/models/grid-reload.model.js +1 -1
  273. package/esm2015/grid-material/src/lib/models/grid-selection.model.js +1 -1
  274. package/esm2015/grid-material/src/lib/models/grid-style.model.js +1 -1
  275. package/esm2015/grid-material/src/lib/models/grid-sub-information.model.js +1 -1
  276. package/esm2015/grid-material/src/lib/models/grid.model.js +1 -1
  277. package/esm2015/grid-material/src/lib/pipes/cell-view.pipe.js +1 -1
  278. package/esm2015/grid-material/src/lib/pipes/column-badge.pipe.js +1 -1
  279. package/esm2015/grid-material/src/lib/pipes/column-children-filter.pipe.js +1 -1
  280. package/esm2015/grid-material/src/lib/pipes/column-html-template.pipe.js +1 -1
  281. package/esm2015/grid-material/src/lib/pipes/column-title.pipe.js +1 -1
  282. package/esm2015/grid-material/src/lib/pipes/column-tooltip.pipe.js +1 -1
  283. package/esm2015/grid-material/src/lib/pipes/column-transform.pipe.js +1 -1
  284. package/esm2015/grid-material/src/lib/pipes/column-values.pipe.js +1 -1
  285. package/esm2015/grid-material/src/lib/pipes/command-disable.pipe.js +1 -1
  286. package/esm2015/grid-material/src/lib/pipes/command-filter.pipe.js +1 -1
  287. package/esm2015/grid-material/src/lib/pipes/command-icon.pipe.js +1 -1
  288. package/esm2015/grid-material/src/lib/pipes/command-title.pipe.js +1 -1
  289. package/esm2015/grid-material/src/lib/pipes/editor-handler-column.pipe.js +1 -1
  290. package/esm2015/grid-material/src/lib/pipes/editor-handler-row.pipe.js +1 -1
  291. package/esm2015/grid-material/src/lib/pipes/editor-validate.pipe.js +1 -1
  292. package/esm2015/grid-material/src/lib/pipes/filter-column.pipe.js +1 -1
  293. package/esm2015/grid-material/src/lib/pipes/filter-external.pipe.js +1 -1
  294. package/esm2015/grid-material/src/lib/pipes/grid-configuration-result.pipe.js +1 -1
  295. package/esm2015/grid-material/src/lib/pipes/sd-group.pipe.js +1 -1
  296. package/esm2015/grid-material/src/lib/pipes/selection-action-filter.pipe.js +1 -1
  297. package/esm2015/grid-material/src/lib/pipes/selection-disable.pipe.js +1 -1
  298. package/esm2015/grid-material/src/lib/pipes/selection-visible-select-all.pipe.js +1 -1
  299. package/esm2015/grid-material/src/lib/pipes/selection-visible.pipe.js +1 -1
  300. package/esm2015/grid-material/src/lib/pipes/style-row-css.pipe.js +1 -1
  301. package/esm2015/grid-material/src/lib/services/generated-column/generated-column.model.js +1 -1
  302. package/esm2015/grid-material/src/lib/services/generated-column/generated-column.service.js +1 -1
  303. package/esm2015/grid-material/src/lib/services/grid-configuration.service.js +1 -1
  304. package/esm2015/grid-material/src/lib/services/grid-filter/grid-filter.model.js +1 -1
  305. package/esm2015/grid-material/src/lib/services/grid-filter/grid-filter.service.js +1 -1
  306. package/esm2015/grid-material/src/public-api.js +1 -1
  307. package/esm2015/group/index.js +1 -1
  308. package/esm2015/group/sd-angular-core-group.js +1 -1
  309. package/esm2015/group/src/lib/group.component.js +1 -1
  310. package/esm2015/group/src/lib/group.module.js +1 -1
  311. package/esm2015/group/src/public-api.js +1 -1
  312. package/esm2015/header-title/index.js +1 -1
  313. package/esm2015/header-title/sd-angular-core-header-title.js +1 -1
  314. package/esm2015/header-title/src/lib/header-title.component.js +1 -1
  315. package/esm2015/header-title/src/lib/header-title.module.js +1 -1
  316. package/esm2015/header-title/src/public-api.js +1 -1
  317. package/esm2015/image-preview/index.js +1 -1
  318. package/esm2015/image-preview/sd-angular-core-image-preview.js +1 -1
  319. package/esm2015/image-preview/src/lib/directives/image-preview.directive.js +1 -1
  320. package/esm2015/image-preview/src/lib/image-preview/image-preview-sdmodal.component.js +1 -1
  321. package/esm2015/image-preview/src/lib/image-preview/image-preview.component.js +1 -1
  322. package/esm2015/image-preview/src/lib/image-preview/image-preview.module.js +1 -1
  323. package/esm2015/image-preview/src/lib/models/image-preview.model.js +1 -1
  324. package/esm2015/image-preview/src/public-api.js +1 -1
  325. package/esm2015/input/index.js +1 -1
  326. package/esm2015/input/sd-angular-core-input.js +1 -1
  327. package/esm2015/input/src/lib/directives/input-suffix.directive.js +1 -1
  328. package/esm2015/input/src/lib/directives/touch.directive.js +1 -1
  329. package/esm2015/input/src/lib/input-tooltip.pipe.js +1 -1
  330. package/esm2015/input/src/lib/input.component.js +1 -1
  331. package/esm2015/input/src/lib/input.module.js +1 -1
  332. package/esm2015/input/src/public-api.js +1 -1
  333. package/esm2015/input-currency/index.js +1 -1
  334. package/esm2015/input-currency/sd-angular-core-input-currency.js +1 -1
  335. package/esm2015/input-currency/src/lib/input-currency-tooltip.pipe.js +1 -1
  336. package/esm2015/input-currency/src/lib/input-currency.component.js +1 -1
  337. package/esm2015/input-currency/src/lib/input-currency.module.js +1 -1
  338. package/esm2015/input-currency/src/public-api.js +1 -1
  339. package/esm2015/input-dropdown/index.js +1 -1
  340. package/esm2015/input-dropdown/sd-angular-core-input-dropdown.js +1 -1
  341. package/esm2015/input-dropdown/src/lib/input-tooltip.pipe.js +1 -1
  342. package/esm2015/input-dropdown/src/lib/input.component.js +1 -1
  343. package/esm2015/input-dropdown/src/lib/input.module.js +1 -1
  344. package/esm2015/input-dropdown/src/public-api.js +1 -1
  345. package/esm2015/input-number/index.js +1 -1
  346. package/esm2015/input-number/sd-angular-core-input-number.js +1 -1
  347. package/esm2015/input-number/src/lib/input-number.component.js +1 -1
  348. package/esm2015/input-number/src/lib/input-number.module.js +1 -1
  349. package/esm2015/input-number/src/public-api.js +1 -1
  350. package/esm2015/input-upload-file/index.js +1 -1
  351. package/esm2015/input-upload-file/sd-angular-core-input-upload-file.js +1 -1
  352. package/esm2015/input-upload-file/src/lib/input-upload-file.component.js +1 -1
  353. package/esm2015/input-upload-file/src/lib/input-upload-file.module.js +1 -1
  354. package/esm2015/input-upload-file/src/public-api.js +1 -1
  355. package/esm2015/json-editor/index.js +1 -1
  356. package/esm2015/json-editor/sd-angular-core-json-editor.js +1 -1
  357. package/esm2015/json-editor/src/lib/json-editor.component.js +1 -1
  358. package/esm2015/json-editor/src/lib/json-editor.module.js +1 -1
  359. package/esm2015/json-editor/src/public-api.js +1 -1
  360. package/esm2015/konva/index.js +1 -1
  361. package/esm2015/konva/sd-angular-core-konva.js +1 -1
  362. package/esm2015/konva/src/lib/konva.module.js +1 -1
  363. package/esm2015/konva/src/lib/merge-images/merge-images.component.js +1 -1
  364. package/esm2015/konva/src/public-api.js +1 -1
  365. package/esm2015/label/index.js +1 -1
  366. package/esm2015/label/sd-angular-core-label.js +1 -1
  367. package/esm2015/label/src/lib/label.component.js +1 -1
  368. package/esm2015/label/src/lib/label.module.js +1 -1
  369. package/esm2015/label/src/public-api.js +1 -1
  370. package/esm2015/lib/core.module.js +1 -1
  371. package/esm2015/lib/material.module.js +1 -1
  372. package/esm2015/loading/index.js +1 -1
  373. package/esm2015/loading/sd-angular-core-loading.js +1 -1
  374. package/esm2015/loading/src/lib/loading.service.js +1 -1
  375. package/esm2015/loading/src/public-api.js +1 -1
  376. package/esm2015/modal/index.js +1 -1
  377. package/esm2015/modal/sd-angular-core-modal.js +1 -1
  378. package/esm2015/modal/src/lib/bottom-sheet/bottom-sheet-body/bottom-sheet-body.component.js +1 -1
  379. package/esm2015/modal/src/lib/bottom-sheet/bottom-sheet-footer/bottom-sheet-footer.component.js +1 -1
  380. package/esm2015/modal/src/lib/bottom-sheet/bottom-sheet-header/bottom-sheet-header.component.js +1 -1
  381. package/esm2015/modal/src/lib/bottom-sheet/bottom-sheet.component.js +1 -1
  382. package/esm2015/modal/src/lib/modal/modal-body/modal-body.component.js +1 -1
  383. package/esm2015/modal/src/lib/modal/modal-footer/modal-footer.component.js +1 -1
  384. package/esm2015/modal/src/lib/modal/modal-header/modal-header.component.js +1 -1
  385. package/esm2015/modal/src/lib/modal/modal.component.js +1 -1
  386. package/esm2015/modal/src/lib/modal.module.js +1 -1
  387. package/esm2015/modal/src/public-api.js +1 -1
  388. package/esm2015/modal-resizable/index.js +1 -1
  389. package/esm2015/modal-resizable/sd-angular-core-modal-resizable.js +1 -1
  390. package/esm2015/modal-resizable/src/lib/modal-resizable/modal-resizable.component.js +1 -1
  391. package/esm2015/modal-resizable/src/lib/modal-resizable.module.js +1 -1
  392. package/esm2015/modal-resizable/src/public-api.js +1 -1
  393. package/esm2015/notify/index.js +1 -1
  394. package/esm2015/notify/sd-angular-core-notify.js +1 -1
  395. package/esm2015/notify/src/lib/components/dialog-confirm/dialog-confirm.component.js +1 -1
  396. package/esm2015/notify/src/lib/configurations/notify.configuration.js +1 -1
  397. package/esm2015/notify/src/lib/notify.module.js +1 -1
  398. package/esm2015/notify/src/lib/notify.service.js +1 -1
  399. package/esm2015/notify/src/public-api.js +1 -1
  400. package/esm2015/pdf/index.js +1 -1
  401. package/esm2015/pdf/sd-angular-core-pdf.js +1 -1
  402. package/esm2015/pdf/src/lib/pdf.module.js +1 -1
  403. package/esm2015/pdf/src/lib/pdf.service.js +1 -1
  404. package/esm2015/pdf/src/public-api.js +1 -1
  405. package/esm2015/popover/index.js +1 -1
  406. package/esm2015/popover/sd-angular-core-popover.js +1 -1
  407. package/esm2015/popover/src/lib/directives/popover-content.directive.js +1 -1
  408. package/esm2015/popover/src/lib/directives/popover-trigger.directive.js +1 -1
  409. package/esm2015/popover/src/lib/popover/popover.component.js +1 -1
  410. package/esm2015/popover/src/lib/popover.model.js +1 -1
  411. package/esm2015/popover/src/lib/popover.module.js +1 -1
  412. package/esm2015/popover/src/public-api.js +1 -1
  413. package/esm2015/print/index.js +1 -1
  414. package/esm2015/print/sd-angular-core-print.js +1 -1
  415. package/esm2015/print/src/lib/fonts/times/bold-italic.js +1 -1
  416. package/esm2015/print/src/lib/fonts/times/bold.js +1 -1
  417. package/esm2015/print/src/lib/fonts/times/italic.js +1 -1
  418. package/esm2015/print/src/lib/fonts/times/normal.js +1 -1
  419. package/esm2015/print/src/lib/print.component.js +1 -1
  420. package/esm2015/print/src/lib/print.module.js +1 -1
  421. package/esm2015/print/src/public-api.js +1 -1
  422. package/esm2015/public-api.js +1 -1
  423. package/esm2015/quick-action/index.js +1 -1
  424. package/esm2015/quick-action/sd-angular-core-quick-action.js +1 -1
  425. package/esm2015/quick-action/src/lib/quick-action.component.js +1 -1
  426. package/esm2015/quick-action/src/lib/quick-action.module.js +1 -1
  427. package/esm2015/quick-action/src/public-api.js +1 -1
  428. package/esm2015/radio/index.js +1 -1
  429. package/esm2015/radio/sd-angular-core-radio.js +1 -1
  430. package/esm2015/radio/src/lib/radio.component.js +1 -1
  431. package/esm2015/radio/src/lib/radio.module.js +1 -1
  432. package/esm2015/radio/src/public-api.js +1 -1
  433. package/esm2015/sd-angular-core.js +1 -1
  434. package/esm2015/select/index.js +1 -1
  435. package/esm2015/select/sd-angular-core-select.js +1 -1
  436. package/esm2015/select/src/lib/select-display-def.directive.js +1 -1
  437. package/esm2015/select/src/lib/select.component.js +1 -1
  438. package/esm2015/select/src/lib/select.module.js +1 -1
  439. package/esm2015/select/src/public-api.js +1 -1
  440. package/esm2015/select-badge/index.js +1 -1
  441. package/esm2015/select-badge/sd-angular-core-select-badge.js +1 -1
  442. package/esm2015/select-badge/src/lib/select-badge-display-def.directive.js +1 -1
  443. package/esm2015/select-badge/src/lib/select-badge.component.js +1 -1
  444. package/esm2015/select-badge/src/lib/select-badge.module.js +1 -1
  445. package/esm2015/select-badge/src/public-api.js +1 -1
  446. package/esm2015/select-editor/index.js +1 -1
  447. package/esm2015/select-editor/sd-angular-core-select-editor.js +1 -1
  448. package/esm2015/select-editor/src/lib/select-editor.component.js +1 -1
  449. package/esm2015/select-editor/src/lib/select-editor.module.js +1 -1
  450. package/esm2015/select-editor/src/public-api.js +1 -1
  451. package/esm2015/service/index.js +1 -1
  452. package/esm2015/service/sd-angular-core-service.js +1 -1
  453. package/esm2015/service/src/lib/service.module.js +1 -1
  454. package/esm2015/service/src/public-api.js +1 -1
  455. package/esm2015/setting/index.js +1 -1
  456. package/esm2015/setting/sd-angular-core-setting.js +1 -1
  457. package/esm2015/setting/src/lib/setting.model.js +1 -1
  458. package/esm2015/setting/src/lib/setting.service.js +1 -1
  459. package/esm2015/setting/src/public-api.js +1 -1
  460. package/esm2015/side-drawer/index.js +1 -1
  461. package/esm2015/side-drawer/sd-angular-core-side-drawer.js +1 -1
  462. package/esm2015/side-drawer/src/lib/side-drawer/side-drawer.component.js +1 -1
  463. package/esm2015/side-drawer/src/lib/side-drawer.module.js +1 -1
  464. package/esm2015/side-drawer/src/public-api.js +1 -1
  465. package/esm2015/switch/index.js +1 -1
  466. package/esm2015/switch/sd-angular-core-switch.js +1 -1
  467. package/esm2015/switch/src/lib/switch.component.js +1 -1
  468. package/esm2015/switch/src/lib/switch.module.js +1 -1
  469. package/esm2015/switch/src/public-api.js +1 -1
  470. package/esm2015/tab-router/index.js +1 -1
  471. package/esm2015/tab-router/sd-angular-core-tab-router.js +1 -1
  472. package/esm2015/tab-router/src/lib/actions/tab-router.action.js +1 -1
  473. package/esm2015/tab-router/src/lib/components/tab-router-item/tab-router-item.component.js +1 -1
  474. package/esm2015/tab-router/src/lib/components/tab-router-nav/tab-router-nav.component.js +1 -1
  475. package/esm2015/tab-router/src/lib/components/tab-router-outlet/tab-router-outlet.component.js +1 -1
  476. package/esm2015/tab-router/src/lib/decorators/tab.decorator.js +1 -1
  477. package/esm2015/tab-router/src/lib/directives/router-link-mouse-down.directive.js +1 -1
  478. package/esm2015/tab-router/src/lib/events/tab-router.event.js +1 -1
  479. package/esm2015/tab-router/src/lib/models/tab-router.model.js +1 -1
  480. package/esm2015/tab-router/src/lib/pipes/tab-info.pipe.js +1 -1
  481. package/esm2015/tab-router/src/lib/services/tab-decorator.service.js +1 -1
  482. package/esm2015/tab-router/src/lib/services/tab-router.service.js +1 -1
  483. package/esm2015/tab-router/src/lib/tab-router.module.js +1 -1
  484. package/esm2015/tab-router/src/public-api.js +1 -1
  485. package/esm2015/textarea/index.js +1 -1
  486. package/esm2015/textarea/sd-angular-core-textarea.js +1 -1
  487. package/esm2015/textarea/src/lib/textarea.component.js +1 -1
  488. package/esm2015/textarea/src/lib/textarea.module.js +1 -1
  489. package/esm2015/textarea/src/public-api.js +1 -1
  490. package/esm2015/time/index.js +1 -1
  491. package/esm2015/time/sd-angular-core-time.js +1 -1
  492. package/esm2015/time/src/lib/time.component.js +1 -1
  493. package/esm2015/time/src/lib/time.module.js +1 -1
  494. package/esm2015/time/src/public-api.js +1 -1
  495. package/esm2015/timeline/index.js +1 -1
  496. package/esm2015/timeline/sd-angular-core-timeline.js +1 -1
  497. package/esm2015/timeline/src/lib/components/timeline.component.js +1 -1
  498. package/esm2015/timeline/src/lib/directives/timeline-def.directive.js +1 -1
  499. package/esm2015/timeline/src/lib/timeline.module.js +1 -1
  500. package/esm2015/timeline/src/public-api.js +1 -1
  501. package/esm2015/translate/index.js +1 -1
  502. package/esm2015/translate/sd-angular-core-translate.js +1 -1
  503. package/esm2015/translate/src/lib/translate.model.js +1 -1
  504. package/esm2015/translate/src/lib/translate.module.js +1 -1
  505. package/esm2015/translate/src/lib/translate.pipe.js +1 -1
  506. package/esm2015/translate/src/lib/translate.service.js +1 -1
  507. package/esm2015/upload-excel/index.js +1 -1
  508. package/esm2015/upload-excel/sd-angular-core-upload-excel.js +1 -1
  509. package/esm2015/upload-excel/src/lib/pipes/columm-hidden.pipe.js +1 -1
  510. package/esm2015/upload-excel/src/lib/pipes/column-transform.pipe.js +1 -1
  511. package/esm2015/upload-excel/src/lib/upload-excel.component.js +1 -1
  512. package/esm2015/upload-excel/src/lib/upload-excel.model.js +1 -1
  513. package/esm2015/upload-excel/src/lib/upload-excel.module.js +1 -1
  514. package/esm2015/upload-excel/src/public-api.js +1 -1
  515. package/esm2015/upload-file/index.js +1 -1
  516. package/esm2015/upload-file/sd-angular-core-upload-file.js +1 -1
  517. package/esm2015/upload-file/src/lib/upload-file.component.js +1 -1
  518. package/esm2015/upload-file/src/lib/upload-file.module.js +1 -1
  519. package/esm2015/upload-file/src/public-api.js +1 -1
  520. package/esm2015/utility/index.js +1 -1
  521. package/esm2015/utility/sd-angular-core-utility.js +1 -1
  522. package/esm2015/utility/src/lib/directives/desktop.directive.js +1 -1
  523. package/esm2015/utility/src/lib/directives/mobile-tablet.directive.js +1 -1
  524. package/esm2015/utility/src/lib/directives/mobile.directive.js +1 -1
  525. package/esm2015/utility/src/lib/directives/tablet.directive.js +1 -1
  526. package/esm2015/utility/src/lib/pipes/currency.pipe.js +1 -1
  527. package/esm2015/utility/src/lib/pipes/safe-html.pipe.js +1 -1
  528. package/esm2015/utility/src/lib/pipes/time-different.pipe.js +1 -1
  529. package/esm2015/utility/src/lib/utility.module.js +1 -1
  530. package/esm2015/utility/src/lib/utility.service.js +1 -1
  531. package/esm2015/utility/src/public-api.js +1 -1
  532. package/esm2015/view/index.js +1 -1
  533. package/esm2015/view/sd-angular-core-view.js +1 -1
  534. package/esm2015/view/src/lib/view.module.js +1 -1
  535. package/esm2015/view/src/public-api.js +1 -1
  536. package/esm2015/zip/index.js +1 -1
  537. package/esm2015/zip/sd-angular-core-zip.js +1 -1
  538. package/esm2015/zip/src/lib/zip.module.js +1 -1
  539. package/esm2015/zip/src/lib/zip.service.js +1 -1
  540. package/esm2015/zip/src/public-api.js +1 -1
  541. package/fesm2015/sd-angular-core-grid-material.js +35 -13
  542. package/fesm2015/sd-angular-core-grid-material.js.map +1 -1
  543. package/grid-material/sd-angular-core-grid-material.metadata.json +1 -1
  544. package/grid-material/src/lib/components/column-inline-filter/column-inline-filter.component.d.ts +12 -5
  545. package/grid-material/src/lib/models/grid-configuration.model.d.ts +1 -0
  546. package/package.json +1 -1
  547. package/{sd-angular-core-1.3.137.tgz → sd-angular-core-1.3.139.tgz} +0 -0
  548. package/utility/src/lib/utility.service.d.ts +1 -1
@@ -2033,11 +2033,11 @@
2033
2033
  this.exportTitle = 'Export';
2034
2034
  _loadCompleted.set(this, false);
2035
2035
  _initCellDef.set(this, function () {
2036
- var e_1, _5;
2036
+ var e_1, _8;
2037
2037
  _this.cellDef = {};
2038
2038
  try {
2039
- for (var _6 = __values(_this.sdCellDefs), _7 = _6.next(); !_7.done; _7 = _6.next()) {
2040
- var cellDef = _7.value;
2039
+ for (var _9 = __values(_this.sdCellDefs), _10 = _9.next(); !_10.done; _10 = _9.next()) {
2040
+ var cellDef = _10.value;
2041
2041
  if (cellDef.sdMaterialCellDef) {
2042
2042
  _this.cellDef[cellDef.sdMaterialCellDef] = cellDef;
2043
2043
  }
@@ -2046,35 +2046,35 @@
2046
2046
  catch (e_1_1) { e_1 = { error: e_1_1 }; }
2047
2047
  finally {
2048
2048
  try {
2049
- if (_7 && !_7.done && (_5 = _6.return)) _5.call(_6);
2049
+ if (_10 && !_10.done && (_8 = _9.return)) _8.call(_9);
2050
2050
  }
2051
2051
  finally { if (e_1) throw e_1.error; }
2052
2052
  }
2053
2053
  });
2054
2054
  _initFilterDef.set(this, function () {
2055
- var e_2, _5;
2055
+ var e_2, _8;
2056
2056
  _this.filterDefs = [];
2057
2057
  try {
2058
- for (var _6 = __values(_this.sdFilterDefs), _7 = _6.next(); !_7.done; _7 = _6.next()) {
2059
- var filterDef = _7.value;
2058
+ for (var _9 = __values(_this.sdFilterDefs), _10 = _9.next(); !_10.done; _10 = _9.next()) {
2059
+ var filterDef = _10.value;
2060
2060
  _this.filterDefs.push(filterDef);
2061
2061
  }
2062
2062
  }
2063
2063
  catch (e_2_1) { e_2 = { error: e_2_1 }; }
2064
2064
  finally {
2065
2065
  try {
2066
- if (_7 && !_7.done && (_5 = _6.return)) _5.call(_6);
2066
+ if (_10 && !_10.done && (_8 = _9.return)) _8.call(_9);
2067
2067
  }
2068
2068
  finally { if (e_2) throw e_2.error; }
2069
2069
  }
2070
2070
  });
2071
2071
  _initFooterDef.set(this, function () {
2072
- var e_3, _5;
2072
+ var e_3, _8;
2073
2073
  _this.footerDef = {};
2074
2074
  _this.hasFooter = false;
2075
2075
  try {
2076
- for (var _6 = __values(_this.sdFooterDefs), _7 = _6.next(); !_7.done; _7 = _6.next()) {
2077
- var footerDef = _7.value;
2076
+ for (var _9 = __values(_this.sdFooterDefs), _10 = _9.next(); !_10.done; _10 = _9.next()) {
2077
+ var footerDef = _10.value;
2078
2078
  if (footerDef.sdMaterialFooterDef) {
2079
2079
  _this.hasFooter = true;
2080
2080
  _this.footerDef[footerDef.sdMaterialFooterDef] = footerDef;
@@ -2084,14 +2084,14 @@
2084
2084
  catch (e_3_1) { e_3 = { error: e_3_1 }; }
2085
2085
  finally {
2086
2086
  try {
2087
- if (_7 && !_7.done && (_5 = _6.return)) _5.call(_6);
2087
+ if (_10 && !_10.done && (_8 = _9.return)) _8.call(_9);
2088
2088
  }
2089
2089
  finally { if (e_3) throw e_3.error; }
2090
2090
  }
2091
2091
  });
2092
2092
  _filterExportInfo.set(this, function (pageNumber, pageSize) {
2093
2093
  var _a, _b;
2094
- var _5 = _this.filterRegister.value.get(), columnOperator = _5.columnOperator, columnFilter = _5.columnFilter, externalFilter = _5.externalFilter, filterDef = _5.filterDef;
2094
+ var _8 = _this.filterRegister.value.get(), columnOperator = _8.columnOperator, columnFilter = _8.columnFilter, externalFilter = _8.externalFilter, filterDef = _8.filterDef;
2095
2095
  return {
2096
2096
  columnOperator: columnOperator || {},
2097
2097
  rawColumnFilter: columnFilter || {},
@@ -2105,8 +2105,8 @@
2105
2105
  };
2106
2106
  });
2107
2107
  _initConfiguration$1.set(this, function (option) {
2108
- var e_4, _5;
2109
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4;
2108
+ var e_4, _8;
2109
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7;
2110
2110
  // Init pagination
2111
2111
  option.paginate = {
2112
2112
  hidden: (_a = option === null || option === void 0 ? void 0 : option.paginate) === null || _a === void 0 ? void 0 : _a.hidden,
@@ -2115,8 +2115,8 @@
2115
2115
  showFirstLastButtons: (_q = (_p = option === null || option === void 0 ? void 0 : option.paginate) === null || _p === void 0 ? void 0 : _p.showFirstLastButtons) !== null && _q !== void 0 ? _q : false,
2116
2116
  };
2117
2117
  try {
2118
- for (var _6 = __values(option.columns || []), _7 = _6.next(); !_7.done; _7 = _6.next()) {
2119
- var column = _7.value;
2118
+ for (var _9 = __values(option.columns || []), _10 = _9.next(); !_10.done; _10 = _9.next()) {
2119
+ var column = _10.value;
2120
2120
  if (((_s = (_r = column.filter) === null || _r === void 0 ? void 0 : _r.operator) === null || _s === void 0 ? void 0 : _s.enable) && !((_v = (_u = (_t = column.filter) === null || _t === void 0 ? void 0 : _t.operator) === null || _u === void 0 ? void 0 : _u.list) === null || _v === void 0 ? void 0 : _v.length)) {
2121
2121
  if (column.type === 'string') {
2122
2122
  column.filter.operator.list = ((_y = (_x = (_w = _this.configuration) === null || _w === void 0 ? void 0 : _w.filter) === null || _x === void 0 ? void 0 : _x.operator) === null || _y === void 0 ? void 0 : _y.defaultListString) || [];
@@ -2124,8 +2124,11 @@
2124
2124
  if (column.type === 'number') {
2125
2125
  column.filter.operator.list = ((_1 = (_0 = (_z = _this.configuration) === null || _z === void 0 ? void 0 : _z.filter) === null || _0 === void 0 ? void 0 : _0.operator) === null || _1 === void 0 ? void 0 : _1.defaultListNumber) || [];
2126
2126
  }
2127
+ if (column.type === 'values') {
2128
+ column.filter.operator.list = ((_4 = (_3 = (_2 = _this.configuration) === null || _2 === void 0 ? void 0 : _2.filter) === null || _3 === void 0 ? void 0 : _3.operator) === null || _4 === void 0 ? void 0 : _4.defaultListValues) || [];
2129
+ }
2127
2130
  if (column.type === 'date' || column.type === 'datetime') {
2128
- column.filter.operator.list = ((_4 = (_3 = (_2 = _this.configuration) === null || _2 === void 0 ? void 0 : _2.filter) === null || _3 === void 0 ? void 0 : _3.operator) === null || _4 === void 0 ? void 0 : _4.defaultListDate) || [];
2131
+ column.filter.operator.list = ((_7 = (_6 = (_5 = _this.configuration) === null || _5 === void 0 ? void 0 : _5.filter) === null || _6 === void 0 ? void 0 : _6.operator) === null || _7 === void 0 ? void 0 : _7.defaultListDate) || [];
2129
2132
  }
2130
2133
  }
2131
2134
  }
@@ -2133,7 +2136,7 @@
2133
2136
  catch (e_4_1) { e_4 = { error: e_4_1 }; }
2134
2137
  finally {
2135
2138
  try {
2136
- if (_7 && !_7.done && (_5 = _6.return)) _5.call(_6);
2139
+ if (_10 && !_10.done && (_8 = _9.return)) _8.call(_9);
2137
2140
  }
2138
2141
  finally { if (e_4) throw e_4.error; }
2139
2142
  }
@@ -2170,7 +2173,7 @@
2170
2173
  var columns = _this.gridOption.columns;
2171
2174
  var rawColumnFilter = filterInfo.rawColumnFilter, orderBy = filterInfo.orderBy, orderDirection = filterInfo.orderDirection, pageSize = filterInfo.pageSize, pageNumber = filterInfo.pageNumber;
2172
2175
  var items = localItems.filter(function (item) {
2173
- var e_5, _5;
2176
+ var e_5, _8;
2174
2177
  var _a, _b, _c, _d;
2175
2178
  try {
2176
2179
  for (var columns_1 = __values(columns), columns_1_1 = columns_1.next(); !columns_1_1.done; columns_1_1 = columns_1.next()) {
@@ -2250,7 +2253,7 @@
2250
2253
  catch (e_5_1) { e_5 = { error: e_5_1 }; }
2251
2254
  finally {
2252
2255
  try {
2253
- if (columns_1_1 && !columns_1_1.done && (_5 = columns_1.return)) _5.call(columns_1);
2256
+ if (columns_1_1 && !columns_1_1.done && (_8 = columns_1.return)) _8.call(columns_1);
2254
2257
  }
2255
2258
  finally { if (e_5) throw e_5.error; }
2256
2259
  }
@@ -2294,7 +2297,7 @@
2294
2297
  });
2295
2298
  _getFilter.set(this, function () {
2296
2299
  var _a, _b, _c, _d, _e, _f;
2297
- var _5 = _this.filterRegister.value.get(), columnOperator = _5.columnOperator, columnFilter = _5.columnFilter, externalFilter = _5.externalFilter, filterDef = _5.filterDef;
2300
+ var _8 = _this.filterRegister.value.get(), columnOperator = _8.columnOperator, columnFilter = _8.columnFilter, externalFilter = _8.externalFilter, filterDef = _8.filterDef;
2298
2301
  return {
2299
2302
  columnOperator: columnOperator || {},
2300
2303
  rawColumnFilter: columnFilter || {},
@@ -2309,28 +2312,28 @@
2309
2312
  _load$1.set(this, function (filterReq, force) {
2310
2313
  if (force === void 0) { force = true; }
2311
2314
  return __awaiter(_this, void 0, void 0, function () {
2312
- var result, data, error_1, results, _5, _6, error_2;
2313
- return __generator(this, function (_7) {
2314
- switch (_7.label) {
2315
+ var result, data, error_1, results, _8, _9, error_2;
2316
+ return __generator(this, function (_10) {
2317
+ switch (_10.label) {
2315
2318
  case 0:
2316
2319
  this.isLoading = true;
2317
2320
  if (!(this.gridOption.type === 'server')) return [3 /*break*/, 6];
2318
- _7.label = 1;
2321
+ _10.label = 1;
2319
2322
  case 1:
2320
- _7.trys.push([1, 3, 4, 5]);
2323
+ _10.trys.push([1, 3, 4, 5]);
2321
2324
  result = this.gridOption.items(filterReq);
2322
2325
  if (rxjs.isObservable(result)) {
2323
2326
  result = result.toPromise();
2324
2327
  }
2325
2328
  return [4 /*yield*/, result];
2326
2329
  case 2:
2327
- data = _7.sent();
2330
+ data = _10.sent();
2328
2331
  return [2 /*return*/, {
2329
2332
  items: (data === null || data === void 0 ? void 0 : data.items) || [],
2330
2333
  total: (data === null || data === void 0 ? void 0 : data.total) || 0,
2331
2334
  }];
2332
2335
  case 3:
2333
- error_1 = _7.sent();
2336
+ error_1 = _10.sent();
2334
2337
  console.error(error_1);
2335
2338
  this.notifyService.notify.warning('Có lỗi xảy ra');
2336
2339
  return [2 /*return*/, {
@@ -2344,20 +2347,20 @@
2344
2347
  case 5: return [3 /*break*/, 14];
2345
2348
  case 6:
2346
2349
  if (!force) return [3 /*break*/, 13];
2347
- _7.label = 7;
2350
+ _10.label = 7;
2348
2351
  case 7:
2349
- _7.trys.push([7, 11, 12, 13]);
2352
+ _10.trys.push([7, 11, 12, 13]);
2350
2353
  results = this.gridOption.items();
2351
2354
  if (!(results instanceof Promise)) return [3 /*break*/, 9];
2352
- _5 = __classPrivateFieldSet;
2353
- _6 = [this, _localItems];
2355
+ _8 = __classPrivateFieldSet;
2356
+ _9 = [this, _localItems];
2354
2357
  return [4 /*yield*/, results];
2355
2358
  case 8:
2356
- _5.apply(void 0, _6.concat([(_7.sent()) || []]));
2359
+ _8.apply(void 0, _9.concat([(_10.sent()) || []]));
2357
2360
  return [3 /*break*/, 10];
2358
2361
  case 9:
2359
2362
  __classPrivateFieldSet(this, _localItems, results || []);
2360
- _7.label = 10;
2363
+ _10.label = 10;
2361
2364
  case 10:
2362
2365
  if (!Array.isArray(__classPrivateFieldGet(this, _localItems))) {
2363
2366
  this.notifyService.notify.warning('Dữ liệu không phải là một mảng');
@@ -2365,7 +2368,7 @@
2365
2368
  }
2366
2369
  return [3 /*break*/, 13];
2367
2370
  case 11:
2368
- error_2 = _7.sent();
2371
+ error_2 = _10.sent();
2369
2372
  console.error(error_2);
2370
2373
  this.notifyService.notify.warning('Có lỗi xảy ra');
2371
2374
  __classPrivateFieldSet(this, _localItems, []);
@@ -2385,8 +2388,8 @@
2385
2388
  });
2386
2389
  _render.set(this, function (args) { return __awaiter(_this, void 0, void 0, function () {
2387
2390
  var _a, _b, _c, _d;
2388
- return __generator(this, function (_5) {
2389
- switch (_5.label) {
2391
+ return __generator(this, function (_8) {
2392
+ switch (_8.label) {
2390
2393
  case 0:
2391
2394
  (_a = this.sdScroll) === null || _a === void 0 ? void 0 : _a.scrollTop();
2392
2395
  this.items = (args === null || args === void 0 ? void 0 : args.items) || [];
@@ -2397,7 +2400,7 @@
2397
2400
  });
2398
2401
  return [4 /*yield*/, ((_d = (_c = (_b = this.gridOption) === null || _b === void 0 ? void 0 : _b.reload) === null || _c === void 0 ? void 0 : _c.onReload) === null || _d === void 0 ? void 0 : _d.call(_c, this.items))];
2399
2402
  case 1:
2400
- _5.sent();
2403
+ _8.sent();
2401
2404
  this.isSelectAll = this.items.every(function (e) { return e.isSelected; });
2402
2405
  __classPrivateFieldGet(this, _updateSelectedItems).call(this);
2403
2406
  return [2 /*return*/];
@@ -2408,13 +2411,13 @@
2408
2411
  if (force === void 0) { force = true; }
2409
2412
  return __awaiter(_this, void 0, void 0, function () {
2410
2413
  var _e, _f, data;
2411
- return __generator(this, function (_5) {
2412
- switch (_5.label) {
2414
+ return __generator(this, function (_8) {
2415
+ switch (_8.label) {
2413
2416
  case 0:
2414
2417
  (_f = (_e = this.gridFilter) === null || _e === void 0 ? void 0 : _e.updateFilter) === null || _f === void 0 ? void 0 : _f.call(_e);
2415
2418
  return [4 /*yield*/, __classPrivateFieldGet(this, _load$1).call(this, __classPrivateFieldGet(this, _getFilter).call(this), force)];
2416
2419
  case 1:
2417
- data = _5.sent();
2420
+ data = _8.sent();
2418
2421
  __classPrivateFieldGet(this, _render).call(this, data);
2419
2422
  return [2 /*return*/];
2420
2423
  }
@@ -2426,8 +2429,8 @@
2426
2429
  if (pageSize === void 0) { pageSize = 10000; }
2427
2430
  return __awaiter(_this, void 0, void 0, function () {
2428
2431
  var _g, _h, result, filterInfo, result, exportedItems, results;
2429
- return __generator(this, function (_5) {
2430
- switch (_5.label) {
2432
+ return __generator(this, function (_8) {
2433
+ switch (_8.label) {
2431
2434
  case 0:
2432
2435
  if (!((_g = this.gridOption.export) === null || _g === void 0 ? void 0 : _g.items)) return [3 /*break*/, 2];
2433
2436
  result = (_h = this.gridOption.export) === null || _h === void 0 ? void 0 : _h.items(__classPrivateFieldGet(this, _filterExportInfo).call(this, pageNumber, pageSize));
@@ -2441,7 +2444,7 @@
2441
2444
  result = result.toPromise();
2442
2445
  }
2443
2446
  return [4 /*yield*/, result];
2444
- case 1: return [2 /*return*/, _5.sent()];
2447
+ case 1: return [2 /*return*/, _8.sent()];
2445
2448
  case 2:
2446
2449
  filterInfo = __classPrivateFieldGet(this, _filterExportInfo).call(this, pageNumber, pageSize);
2447
2450
  if (!(this.gridOption.type === 'server')) return [3 /*break*/, 4];
@@ -2450,7 +2453,7 @@
2450
2453
  result = result.toPromise();
2451
2454
  }
2452
2455
  return [4 /*yield*/, result];
2453
- case 3: return [2 /*return*/, _5.sent()];
2456
+ case 3: return [2 /*return*/, _8.sent()];
2454
2457
  case 4:
2455
2458
  exportedItems = [];
2456
2459
  if (!(typeof this.gridOption.items === 'function')) return [3 /*break*/, 8];
@@ -2458,15 +2461,15 @@
2458
2461
  if (!(results instanceof Promise)) return [3 /*break*/, 6];
2459
2462
  return [4 /*yield*/, results];
2460
2463
  case 5:
2461
- exportedItems = _5.sent();
2464
+ exportedItems = _8.sent();
2462
2465
  return [3 /*break*/, 7];
2463
2466
  case 6:
2464
2467
  exportedItems = results;
2465
- _5.label = 7;
2468
+ _8.label = 7;
2466
2469
  case 7: return [3 /*break*/, 9];
2467
2470
  case 8:
2468
2471
  exportedItems = this.gridOption.items;
2469
- _5.label = 9;
2472
+ _8.label = 9;
2470
2473
  case 9: return [2 /*return*/, __classPrivateFieldGet(this, _filterLocal).call(this, exportedItems, filterInfo)];
2471
2474
  }
2472
2475
  });
@@ -2508,13 +2511,13 @@
2508
2511
  return ((_b = (_a = _this.gridOption.export) === null || _a === void 0 ? void 0 : _a.columns) === null || _b === void 0 ? void 0 : _b.filter(function (e) { var _a; return !((_a = e.export) === null || _a === void 0 ? void 0 : _a.disabled); })) || [];
2509
2512
  });
2510
2513
  _onExport.set(this, function (args) { return __awaiter(_this, void 0, void 0, function () {
2511
- var _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, file, isCSV, columns_2, pageSize_1, batch, total_1, pageNumber_1, exportItems_1, items_1, promises_1, handleData, sheets, _5, _6, sheet, _7, _8, _9, e_6_1;
2512
- var e_6, _10;
2514
+ var _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, file, isCSV, columns_2, pageSize_1, batch, total_1, pageNumber_1, exportItems_1, items_1, promises_1, handleData, sheets, _8, _9, sheet, _10, _11, _12, e_6_1;
2515
+ var e_6, _13;
2513
2516
  var _this = this;
2514
- return __generator(this, function (_11) {
2515
- switch (_11.label) {
2517
+ return __generator(this, function (_14) {
2518
+ switch (_14.label) {
2516
2519
  case 0:
2517
- _11.trys.push([0, , 20, 21]);
2520
+ _14.trys.push([0, , 20, 21]);
2518
2521
  file = args.file, isCSV = args.isCSV;
2519
2522
  columns_2 = args.columns;
2520
2523
  pageSize_1 = ((_k = (_j = this.gridOption) === null || _j === void 0 ? void 0 : _j.export) === null || _k === void 0 ? void 0 : _k.maxItemsPerRequest) || 1000;
@@ -2527,13 +2530,13 @@
2527
2530
  promises_1 = [];
2528
2531
  handleData = function () { return __awaiter(_this, void 0, void 0, function () {
2529
2532
  var _u, results, results_1, results_1_1, result, results_2, totalPage, percent, allColumns, allExportedColumns, _loop_1, exportItems_2, exportItems_2_1, item, e_7_1;
2530
- var e_8, _5, e_7, _6;
2533
+ var e_8, _8, e_7, _9;
2531
2534
  var _this = this;
2532
- return __generator(this, function (_7) {
2533
- switch (_7.label) {
2535
+ return __generator(this, function (_10) {
2536
+ switch (_10.label) {
2534
2537
  case 0: return [4 /*yield*/, Promise.all(promises_1)];
2535
2538
  case 1:
2536
- results = _7.sent();
2539
+ results = _10.sent();
2537
2540
  promises_1 = [];
2538
2541
  exportItems_1 = [];
2539
2542
  try {
@@ -2551,7 +2554,7 @@
2551
2554
  catch (e_8_1) { e_8 = { error: e_8_1 }; }
2552
2555
  finally {
2553
2556
  try {
2554
- if (results_1_1 && !results_1_1.done && (_5 = results_1.return)) _5.call(results_1);
2557
+ if (results_1_1 && !results_1_1.done && (_8 = results_1.return)) _8.call(results_1);
2555
2558
  }
2556
2559
  finally { if (e_8) throw e_8.error; }
2557
2560
  }
@@ -2560,11 +2563,11 @@
2560
2563
  if (!(results_2 instanceof Promise)) return [3 /*break*/, 3];
2561
2564
  return [4 /*yield*/, results_2];
2562
2565
  case 2:
2563
- exportItems_1 = _7.sent();
2566
+ exportItems_1 = _10.sent();
2564
2567
  return [3 /*break*/, 4];
2565
2568
  case 3:
2566
2569
  exportItems_1 = results_2;
2567
- _7.label = 4;
2570
+ _10.label = 4;
2568
2571
  case 4:
2569
2572
  totalPage = total_1 / pageSize_1;
2570
2573
  percent = Math.round(((pageNumber_1 - 1) * 100.0) / totalPage);
@@ -2573,15 +2576,15 @@
2573
2576
  allExportedColumns = __classPrivateFieldGet(this, _allExportedColumns).call(this);
2574
2577
  _loop_1 = function (item) {
2575
2578
  var obj, handle, columns_3, columns_3_1, exportColumn, e_9_1;
2576
- var e_9, _5;
2577
- return __generator(this, function (_6) {
2578
- switch (_6.label) {
2579
+ var e_9, _8;
2580
+ return __generator(this, function (_9) {
2581
+ switch (_9.label) {
2579
2582
  case 0:
2580
2583
  obj = {};
2581
2584
  handle = function (exportColumn) { return __awaiter(_this, void 0, void 0, function () {
2582
- var _v, _w, _x, column, exportedColumn, transform, _5, _6, date, transformDate, date, transformDate, date, transformDate, _7, _8;
2583
- return __generator(this, function (_9) {
2584
- switch (_9.label) {
2585
+ var _v, _w, _x, column, exportedColumn, transform, _8, _9, date, transformDate, date, transformDate, date, transformDate, _10, _11;
2586
+ return __generator(this, function (_12) {
2587
+ switch (_12.label) {
2585
2588
  case 0:
2586
2589
  obj[exportColumn.field] = item[exportColumn.field];
2587
2590
  column = allColumns.find(function (e) { return e.field === exportColumn.field; });
@@ -2605,15 +2608,15 @@
2605
2608
  isExport: true,
2606
2609
  });
2607
2610
  if (!(transform instanceof Promise)) return [3 /*break*/, 2];
2608
- _5 = obj;
2609
- _6 = column.field;
2611
+ _8 = obj;
2612
+ _9 = column.field;
2610
2613
  return [4 /*yield*/, transform];
2611
2614
  case 1:
2612
- _5[_6] = _9.sent();
2615
+ _8[_9] = _12.sent();
2613
2616
  return [3 /*break*/, 3];
2614
2617
  case 2:
2615
2618
  obj[column.field] = transform;
2616
- _9.label = 3;
2619
+ _12.label = 3;
2617
2620
  case 3:
2618
2621
  obj[column.field] = (_v = obj[column.field]) !== null && _v !== void 0 ? _v : '';
2619
2622
  return [3 /*break*/, 13];
@@ -2669,43 +2672,43 @@
2669
2672
  case 10:
2670
2673
  if (!(column.type === 'values')) return [3 /*break*/, 12];
2671
2674
  // Nếu là values thì lấy giá trị của value được chọn
2672
- _7 = obj;
2673
- _8 = column.field;
2675
+ _10 = obj;
2676
+ _11 = column.field;
2674
2677
  return [4 /*yield*/, this.columnValuesPipe.transform(item[column.field], column)];
2675
2678
  case 11:
2676
2679
  // Nếu là values thì lấy giá trị của value được chọn
2677
- _7[_8] = _9.sent();
2680
+ _10[_11] = _12.sent();
2678
2681
  return [3 /*break*/, 13];
2679
2682
  case 12:
2680
2683
  obj[column.field] = item[column.field];
2681
- _9.label = 13;
2684
+ _12.label = 13;
2682
2685
  case 13: return [2 /*return*/];
2683
2686
  }
2684
2687
  });
2685
2688
  }); };
2686
- _6.label = 1;
2689
+ _9.label = 1;
2687
2690
  case 1:
2688
- _6.trys.push([1, 6, 7, 8]);
2691
+ _9.trys.push([1, 6, 7, 8]);
2689
2692
  columns_3 = (e_9 = void 0, __values(columns_2)), columns_3_1 = columns_3.next();
2690
- _6.label = 2;
2693
+ _9.label = 2;
2691
2694
  case 2:
2692
2695
  if (!!columns_3_1.done) return [3 /*break*/, 5];
2693
2696
  exportColumn = columns_3_1.value;
2694
2697
  return [4 /*yield*/, handle(exportColumn)];
2695
2698
  case 3:
2696
- _6.sent();
2697
- _6.label = 4;
2699
+ _9.sent();
2700
+ _9.label = 4;
2698
2701
  case 4:
2699
2702
  columns_3_1 = columns_3.next();
2700
2703
  return [3 /*break*/, 2];
2701
2704
  case 5: return [3 /*break*/, 8];
2702
2705
  case 6:
2703
- e_9_1 = _6.sent();
2706
+ e_9_1 = _9.sent();
2704
2707
  e_9 = { error: e_9_1 };
2705
2708
  return [3 /*break*/, 8];
2706
2709
  case 7:
2707
2710
  try {
2708
- if (columns_3_1 && !columns_3_1.done && (_5 = columns_3.return)) _5.call(columns_3);
2711
+ if (columns_3_1 && !columns_3_1.done && (_8 = columns_3.return)) _8.call(columns_3);
2709
2712
  }
2710
2713
  finally { if (e_9) throw e_9.error; }
2711
2714
  return [7 /*endfinally*/];
@@ -2715,29 +2718,29 @@
2715
2718
  }
2716
2719
  });
2717
2720
  };
2718
- _7.label = 5;
2721
+ _10.label = 5;
2719
2722
  case 5:
2720
- _7.trys.push([5, 10, 11, 12]);
2723
+ _10.trys.push([5, 10, 11, 12]);
2721
2724
  exportItems_2 = __values(exportItems_1), exportItems_2_1 = exportItems_2.next();
2722
- _7.label = 6;
2725
+ _10.label = 6;
2723
2726
  case 6:
2724
2727
  if (!!exportItems_2_1.done) return [3 /*break*/, 9];
2725
2728
  item = exportItems_2_1.value;
2726
2729
  return [5 /*yield**/, _loop_1(item)];
2727
2730
  case 7:
2728
- _7.sent();
2729
- _7.label = 8;
2731
+ _10.sent();
2732
+ _10.label = 8;
2730
2733
  case 8:
2731
2734
  exportItems_2_1 = exportItems_2.next();
2732
2735
  return [3 /*break*/, 6];
2733
2736
  case 9: return [3 /*break*/, 12];
2734
2737
  case 10:
2735
- e_7_1 = _7.sent();
2738
+ e_7_1 = _10.sent();
2736
2739
  e_7 = { error: e_7_1 };
2737
2740
  return [3 /*break*/, 12];
2738
2741
  case 11:
2739
2742
  try {
2740
- if (exportItems_2_1 && !exportItems_2_1.done && (_6 = exportItems_2.return)) _6.call(exportItems_2);
2743
+ if (exportItems_2_1 && !exportItems_2_1.done && (_9 = exportItems_2.return)) _9.call(exportItems_2);
2741
2744
  }
2742
2745
  finally { if (e_7) throw e_7.error; }
2743
2746
  return [7 /*endfinally*/];
@@ -2745,7 +2748,7 @@
2745
2748
  }
2746
2749
  });
2747
2750
  }); };
2748
- _11.label = 1;
2751
+ _14.label = 1;
2749
2752
  case 1:
2750
2753
  if (!(pageNumber_1 * pageSize_1 < total_1)) return [3 /*break*/, 3];
2751
2754
  promises_1.push(__classPrivateFieldGet(this, _exportedItems).call(this, pageNumber_1, pageSize_1));
@@ -2755,14 +2758,14 @@
2755
2758
  }
2756
2759
  return [4 /*yield*/, handleData()];
2757
2760
  case 2:
2758
- _11.sent();
2761
+ _14.sent();
2759
2762
  return [3 /*break*/, 1];
2760
2763
  case 3:
2761
2764
  if (!(promises_1.length > 0)) return [3 /*break*/, 5];
2762
2765
  return [4 /*yield*/, handleData()];
2763
2766
  case 4:
2764
- _11.sent();
2765
- _11.label = 5;
2767
+ _14.sent();
2768
+ _14.label = 5;
2766
2769
  case 5:
2767
2770
  if (!!(file === null || file === void 0 ? void 0 : file.filePath)) return [3 /*break*/, 18];
2768
2771
  if (!isCSV) return [3 /*break*/, 7];
@@ -2772,19 +2775,19 @@
2772
2775
  fileName: (_p = (_o = this.gridOption) === null || _o === void 0 ? void 0 : _o.export) === null || _p === void 0 ? void 0 : _p.fileName,
2773
2776
  })];
2774
2777
  case 6:
2775
- _11.sent();
2778
+ _14.sent();
2776
2779
  return [2 /*return*/];
2777
2780
  case 7:
2778
2781
  sheets = [];
2779
2782
  if (!Array.isArray((_r = (_q = this.gridOption) === null || _q === void 0 ? void 0 : _q.export) === null || _r === void 0 ? void 0 : _r.sheets)) return [3 /*break*/, 16];
2780
- _11.label = 8;
2783
+ _14.label = 8;
2781
2784
  case 8:
2782
- _11.trys.push([8, 14, 15, 16]);
2783
- _5 = __values(this.gridOption.export.sheets), _6 = _5.next();
2784
- _11.label = 9;
2785
+ _14.trys.push([8, 14, 15, 16]);
2786
+ _8 = __values(this.gridOption.export.sheets), _9 = _8.next();
2787
+ _14.label = 9;
2785
2788
  case 9:
2786
- if (!!_6.done) return [3 /*break*/, 13];
2787
- sheet = _6.value;
2789
+ if (!!_9.done) return [3 /*break*/, 13];
2790
+ sheet = _9.value;
2788
2791
  if (!(sheet.name && sheet.items && sheet.fields)) return [3 /*break*/, 12];
2789
2792
  if (!Array.isArray(sheet.items)) return [3 /*break*/, 10];
2790
2793
  sheets.push({
@@ -2794,27 +2797,27 @@
2794
2797
  });
2795
2798
  return [3 /*break*/, 12];
2796
2799
  case 10:
2797
- _8 = (_7 = sheets).push;
2798
- _9 = {
2800
+ _11 = (_10 = sheets).push;
2801
+ _12 = {
2799
2802
  name: sheet.name
2800
2803
  };
2801
2804
  return [4 /*yield*/, sheet.items()];
2802
2805
  case 11:
2803
- _8.apply(_7, [(_9.items = _11.sent(),
2804
- _9.fields = sheet.fields,
2805
- _9)]);
2806
- _11.label = 12;
2806
+ _11.apply(_10, [(_12.items = _14.sent(),
2807
+ _12.fields = sheet.fields,
2808
+ _12)]);
2809
+ _14.label = 12;
2807
2810
  case 12:
2808
- _6 = _5.next();
2811
+ _9 = _8.next();
2809
2812
  return [3 /*break*/, 9];
2810
2813
  case 13: return [3 /*break*/, 16];
2811
2814
  case 14:
2812
- e_6_1 = _11.sent();
2815
+ e_6_1 = _14.sent();
2813
2816
  e_6 = { error: e_6_1 };
2814
2817
  return [3 /*break*/, 16];
2815
2818
  case 15:
2816
2819
  try {
2817
- if (_6 && !_6.done && (_10 = _5.return)) _10.call(_5);
2820
+ if (_9 && !_9.done && (_13 = _8.return)) _13.call(_8);
2818
2821
  }
2819
2822
  finally { if (e_6) throw e_6.error; }
2820
2823
  return [7 /*endfinally*/];
@@ -2825,7 +2828,7 @@
2825
2828
  sheets: sheets,
2826
2829
  })];
2827
2830
  case 17:
2828
- _11.sent();
2831
+ _14.sent();
2829
2832
  return [2 /*return*/];
2830
2833
  case 18: return [4 /*yield*/, this.exportService.exportByTemplate({
2831
2834
  filePath: file.filePath,
@@ -2834,7 +2837,7 @@
2834
2837
  items: items_1,
2835
2838
  })];
2836
2839
  case 19:
2837
- _11.sent();
2840
+ _14.sent();
2838
2841
  return [3 /*break*/, 21];
2839
2842
  case 20:
2840
2843
  this.isExporting = false;
@@ -2846,7 +2849,7 @@
2846
2849
  });
2847
2850
  }); });
2848
2851
  this.onExport = function (args) { return __awaiter(_this, void 0, void 0, function () {
2849
- return __generator(this, function (_5) {
2852
+ return __generator(this, function (_8) {
2850
2853
  __classPrivateFieldGet(this, _onExport).call(this, args);
2851
2854
  return [2 /*return*/];
2852
2855
  });
@@ -2866,7 +2869,7 @@
2866
2869
  };
2867
2870
  this.onExpand = function (rowData) { return __awaiter(_this, void 0, void 0, function () {
2868
2871
  var _y, _z, _0, _1, _2, data;
2869
- return __generator(this, function (_5) {
2872
+ return __generator(this, function (_8) {
2870
2873
  if ((_y = this.gridOption.subInformation) === null || _y === void 0 ? void 0 : _y.always) {
2871
2874
  return [2 /*return*/];
2872
2875
  }
@@ -2949,7 +2952,7 @@
2949
2952
  };
2950
2953
  this.setFilter = function (args) {
2951
2954
  var _a, _b;
2952
- var _5 = args || {}, columnFilter = _5.columnFilter, externalFilter = _5.externalFilter, filterDef = _5.filterDef;
2955
+ var _8 = args || {}, columnFilter = _8.columnFilter, externalFilter = _8.externalFilter, filterDef = _8.filterDef;
2953
2956
  if (((_b = (_a = _this.gridOption) === null || _a === void 0 ? void 0 : _a.filter) === null || _b === void 0 ? void 0 : _b.inlineColumn) && columnFilter) {
2954
2957
  _this.columnFilter = columnFilter;
2955
2958
  }
@@ -2961,7 +2964,7 @@
2961
2964
  };
2962
2965
  this.onCreate = function () {
2963
2966
  var _a, _b;
2964
- var _5 = _this.gridOption, type = _5.type, editor = _5.editor, columns = _5.columns;
2967
+ var _8 = _this.gridOption, type = _8.type, editor = _8.editor, columns = _8.columns;
2965
2968
  if (!(editor === null || editor === void 0 ? void 0 : editor.addable)) {
2966
2969
  return;
2967
2970
  }
@@ -3017,23 +3020,23 @@
3017
3020
  };
3018
3021
  this.onSave = function (item) { return __awaiter(_this, void 0, void 0, function () {
3019
3022
  var editor, result, message, result, err_1;
3020
- return __generator(this, function (_5) {
3021
- switch (_5.label) {
3023
+ return __generator(this, function (_8) {
3024
+ switch (_8.label) {
3022
3025
  case 0:
3023
3026
  if (item.editorHandlerRow.saving) {
3024
3027
  return [2 /*return*/];
3025
3028
  }
3026
3029
  editor = this.gridOption.editor;
3027
- _5.label = 1;
3030
+ _8.label = 1;
3028
3031
  case 1:
3029
- _5.trys.push([1, 7, 8, 9]);
3032
+ _8.trys.push([1, 7, 8, 9]);
3030
3033
  item.editorHandlerRow.saving = true;
3031
3034
  if (!editor.validate) return [3 /*break*/, 4];
3032
3035
  result = editor.validate(item, this.items.indexOf(item));
3033
3036
  if (!(result instanceof Promise)) return [3 /*break*/, 3];
3034
3037
  return [4 /*yield*/, result];
3035
3038
  case 2:
3036
- message = _5.sent();
3039
+ message = _8.sent();
3037
3040
  if (message) {
3038
3041
  throw message;
3039
3042
  }
@@ -3042,15 +3045,15 @@
3042
3045
  if (result) {
3043
3046
  throw result;
3044
3047
  }
3045
- _5.label = 4;
3048
+ _8.label = 4;
3046
3049
  case 4:
3047
3050
  if (!editor.onSave) return [3 /*break*/, 6];
3048
3051
  result = editor.onSave(item);
3049
3052
  if (!(result instanceof Promise)) return [3 /*break*/, 6];
3050
3053
  return [4 /*yield*/, result];
3051
3054
  case 5:
3052
- _5.sent();
3053
- _5.label = 6;
3055
+ _8.sent();
3056
+ _8.label = 6;
3054
3057
  case 6:
3055
3058
  if (item.editorStatus === 'create' && editor.type === 'popup') {
3056
3059
  if (this.gridOption.type === 'local') {
@@ -3061,7 +3064,7 @@
3061
3064
  item.editorStatus = undefined;
3062
3065
  return [3 /*break*/, 9];
3063
3066
  case 7:
3064
- err_1 = _5.sent();
3067
+ err_1 = _8.sent();
3065
3068
  this.notifyService.notify.warning(err_1);
3066
3069
  return [3 /*break*/, 9];
3067
3070
  case 8:
@@ -3113,8 +3116,8 @@
3113
3116
  };
3114
3117
  this.onRemove = function (item) { return __awaiter(_this, void 0, void 0, function () {
3115
3118
  var _3, _4, editor, beforeRemove, result, idx2, idx1;
3116
- return __generator(this, function (_5) {
3117
- switch (_5.label) {
3119
+ return __generator(this, function (_8) {
3120
+ switch (_8.label) {
3118
3121
  case 0:
3119
3122
  editor = this.gridOption.editor;
3120
3123
  if (!(editor === null || editor === void 0 ? void 0 : editor.beforeRemove)) return [3 /*break*/, 3];
@@ -3122,7 +3125,7 @@
3122
3125
  if (!(beforeRemove instanceof Promise)) return [3 /*break*/, 2];
3123
3126
  return [4 /*yield*/, beforeRemove];
3124
3127
  case 1:
3125
- result = _5.sent();
3128
+ result = _8.sent();
3126
3129
  if (!result) {
3127
3130
  return [2 /*return*/];
3128
3131
  }
@@ -3131,7 +3134,7 @@
3131
3134
  if (!beforeRemove) {
3132
3135
  return [2 /*return*/];
3133
3136
  }
3134
- _5.label = 3;
3137
+ _8.label = 3;
3135
3138
  case 3:
3136
3139
  if (editor.type === 'inline') {
3137
3140
  if (this.gridOption.type === 'local') {
@@ -3258,13 +3261,13 @@
3258
3261
  var _this = this;
3259
3262
  __classPrivateFieldGet(this, _subscription$1).add(__classPrivateFieldGet(this, _reload).pipe(operators.debounceTime(200), operators.switchMap(function (data) { return __awaiter(_this, void 0, void 0, function () {
3260
3263
  var filterInfo, result;
3261
- return __generator(this, function (_5) {
3262
- switch (_5.label) {
3264
+ return __generator(this, function (_8) {
3265
+ switch (_8.label) {
3263
3266
  case 0:
3264
3267
  filterInfo = __classPrivateFieldGet(this, _getFilter).call(this);
3265
3268
  return [4 /*yield*/, __classPrivateFieldGet(this, _load$1).call(this, filterInfo, !__classPrivateFieldGet(this, _loadCompleted) || data.force)];
3266
3269
  case 1:
3267
- result = _5.sent();
3270
+ result = _8.sent();
3268
3271
  __classPrivateFieldSet(this, _loadCompleted, true);
3269
3272
  return [2 /*return*/, result];
3270
3273
  }
@@ -3355,7 +3358,7 @@
3355
3358
  SdGridMaterial.decorators = [
3356
3359
  { type: core.Component, args: [{
3357
3360
  selector: 'sd-grid-material',
3358
- template: "<ng-container *ngIf=\"gridConfigurationObserver | async as gridConfiguration\">\r\n <ng-container *ngIf=\"\r\n gridConfiguration\r\n | sdGridConfigurationResult\r\n : gridOption\r\n : sdSubInformation as configuration\r\n \">\r\n <sd-grid-filter *ngIf=\"!gridOption.filter?.disabled && filterRegister\" [filterRegister]=\"filterRegister\" [filter]=\"gridOption?.filter\"\r\n [columns]=\"configuration.firstColumns\" [externalFilters]=\"gridOption?.filter?.externalFilters\" [filterDefs]=\"filterDefs\" #gridFilter>\r\n </sd-grid-filter>\r\n <ng-container *ngIf=\"items | sdGroup:gridOption; $implicit as groupedItems\">\r\n <div class=\"c-container {{ gridOption?.style?.grid }}\" [ngClass]=\"{ 'mat-elevation-z2': gridOption?.shadow }\">\r\n <div class=\"c-loading\" *ngIf=\"isLoading\">\r\n <mat-spinner *ngIf=\"isLoading\"></mat-spinner>\r\n </div>\r\n <ng-container>\r\n <div class=\"c-table\" sdScroll [ngStyle]=\"{\r\n 'max-height': gridOption?.maxHeight,\r\n 'min-height': gridOption?.minHeight\r\n }\">\r\n <table *ngIf=\"items?.length; else elseEmpty\" mat-table [dataSource]=\"groupedItems\" matSort\r\n [matSortDisabled]=\"!gridOption.sortable\" cdkDropList cdkDropListOrientation=\"horizontal\"\r\n [cdkDropListDisabled]=\"!gridOption.dropDragColumnEnable\"\r\n (cdkDropListDropped)=\"drop($event, configuration.displayedColumns)\" multiTemplateDataRows>\r\n\r\n <ng-container matColumnDef=\"sdSubInformation\" sticky>\r\n <td class=\"p-0\" mat-cell *matCellDef=\"let item\" [attr.colspan]=\"configuration.displayedColumns.length\">\r\n <ng-container *ngIf=\"sdSubInformation?.templateRef\">\r\n <ng-container *ngIf=\"gridOption?.subInformation?.always;else useExpandCollapse\">\r\n <ng-container *ngTemplateOutlet=\"\r\n sdSubInformation.templateRef;\r\n context: { item: item }\r\n \">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #useExpandCollapse>\r\n <div [@detailExpand]=\"item.isExpanded ? 'expanded' : 'collapsed'\">\r\n <ng-container *ngIf=\"item.isExpanded\">\r\n <ng-container *ngTemplateOutlet=\"\r\n sdSubInformation.templateRef;\r\n context: { item: item }\r\n \">\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdSubInformationAction\" stickyEnd>\r\n <th class=\"p-0\" mat-header-cell *matHeaderCellDef style=\"width: 1px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\"></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button *ngIf=\"!element.isExpanding && !gridOption?.subInformation?.always\" mat-icon-button\r\n aria-label=\"Expand & Collapse\" (click)=\"onExpand(element)\">\r\n <mat-icon *ngIf=\"!element.isExpanded\">expand_more</mat-icon>\r\n <mat-icon *ngIf=\"element.isExpanded\">expand_less</mat-icon>\r\n </button>\r\n <div *ngIf=\"element.isExpanding\" class=\"lds-ring\">\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n </div>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdSelection\" sticky>\r\n <th class=\"text-center px-15\" mat-header-cell *matHeaderCellDef style=\"min-width: 50px; max-width: 50px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\">\r\n <ng-container *ngIf=\"items | selectionVisibleSelectAll: gridOption?.selection | async\">\r\n <mat-checkbox *ngIf=\"!gridOption.selection?.single\" class=\"c-selection\" color=\"primary\"\r\n [(ngModel)]=\"isSelectAll\" (change)=\"onSelectAll()\">\r\n </mat-checkbox>\r\n </ng-container>\r\n\r\n </th>\r\n <td class=\"text-center px-15\" mat-cell *matCellDef=\"let item\" style=\"min-width: 50px; max-width: 50px\">\r\n <ng-container *ngIf=\"item | selectionVisible:gridOption?.selection\">\r\n <mat-checkbox class=\"c-selection\" color=\"primary\" [(ngModel)]=\"item.isSelected\"\r\n (change)=\"onSelect(item)\" [disabled]=\"\r\n selectedItems | selectionDisable: item:gridOption?.selection\r\n \">\r\n </mat-checkbox>\r\n </ng-container>\r\n\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdEditorValidation\">\r\n <th class=\"p-0\" mat-header-cell *matHeaderCellDef style=\"width: 2px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\">\r\n </th>\r\n <td class=\"p-0 position-relative\" mat-cell *matCellDef=\"let item; index as idx\">\r\n <sd-desktop-editor-validation [sdId]=\"item.sdId\" [item]=\"item\" [items]=\"items\"\r\n [gridOption]=\"gridOption\">\r\n </sd-desktop-editor-validation>\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdEditor\">\r\n <th class=\"px-8 py-8\" mat-header-cell *matHeaderCellDef style=\"width: 50px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\">\r\n <button class=\"c-btn-add\"\r\n *ngIf=\"gridOption.editor?.addable && (!gridOption.editor.limit || gridOption.editor.limit > items.length)\"\r\n (click)=\"onCreate()\" aria-hidden=\"true\" mat-icon-button>\r\n <mat-icon class=\"c-icon-add\">add</mat-icon>\r\n </button>\r\n </th>\r\n <td class=\"px-8\" mat-cell *matCellDef=\"let item; index as idx\">\r\n <ng-container *sdLet=\"item.editorStatus | sdEditorHandlerRow:item:gridOption as editorHandler\">\r\n <div *ngIf=\"editorHandler\" class=\"d-flex align-items-center justify-content-center\">\r\n <button *ngIf=\"editorHandler.editable\" class=\"mx-2\" (click)=\"onUpdate(item)\" aria-hidden=\"true\"\r\n mat-icon-button>\r\n <mat-icon class=\"c-icon\">edit</mat-icon>\r\n </button>\r\n <button *ngIf=\"editorHandler.removable\" class=\"mx-2\" (click)=\"onRemove(item)\" aria-hidden=\"true\"\r\n mat-icon-button>\r\n <mat-icon class=\"c-icon\">delete</mat-icon>\r\n </button>\r\n <button *ngIf=\"editorHandler.savable\" class=\"mx-2\" (click)=\"onSave(item)\" aria-hidden=\"true\"\r\n mat-icon-button>\r\n <mat-icon class=\"c-icon\">save</mat-icon>\r\n </button>\r\n <button *ngIf=\"editorHandler.cancelable\" class=\"mx-2\" (click)=\"onCancel(item)\" aria-hidden=\"true\"\r\n mat-icon-button>\r\n <mat-icon class=\"c-icon\">close</mat-icon>\r\n </button>\r\n </div>\r\n </ng-container>\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdCommand\">\r\n <th class=\"px-8 py-8\" mat-header-cell *matHeaderCellDef style=\"width: 50px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\"></th>\r\n <td class=\"px-8\" mat-cell *matCellDef=\"let item\">\r\n <sd-desktop-command [commands]=\"gridOption.commands\" [item]=\"item\"></sd-desktop-command>\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdGroup\">\r\n <th mat-header-cell *matHeaderCellDef class=\"px-8 py-8\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\">\r\n </th>\r\n <td class=\"p-0\" mat-cell *matCellDef=\"let item\"\r\n [attr.colspan]=\"!item?.sdGroup ? 1 : configuration.displayedColumns.length\">\r\n <div [innerHtml]=\"item?.sdGroup?.htmlTemplate | safeHtml\">\r\n </div>\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container *ngFor=\"let column of configuration.firstColumns; let i = index\"\r\n [matColumnDef]=\"column.field\" [sticky]=\"configuration.fixedColumn[column.field]\">\r\n <th mat-header-cell *matHeaderCellDef cdkDrag class=\"px-8 py-8 c-th\"\r\n [ngStyle]=\"{ 'min-width': configuration.firstColumns[i].width }\" [attr.rowspan]=\"\r\n configuration.multipleHeader && column.type !== 'children-col'\r\n ? 2\r\n : 1\r\n \" [attr.colspan]=\"\r\n column.type === 'children-col' ? column.children?.length : 1\r\n \">\r\n <div>\r\n <div aria-hidden=\"false\" role=\"presentation\" mat-sort-header [disabled]=\"\r\n !column.sortable || column.type === 'children-col'\r\n \" [class.text-right]=\"column.align === 'right' || (!column.align && column.type === 'number')\"\r\n [class.text-center]=\"column.align === 'center'\"\r\n [innerHTML]=\"configuration.firstColumns[i].titleHtml || configuration.firstColumns[i].title\">\r\n </div>\r\n <sd-column-inline-filter *ngIf=\"gridOption.filter?.inlineColumn\"\r\n [value]=\"columnFilter[column.field]\" [columnOperator]=\"columnOperator\" [columnFilter]=\"columnFilter\" [column]=\"column\"\r\n (filterChange)=\"onFilterChange()\">\r\n </sd-column-inline-filter>\r\n </div>\r\n </th>\r\n <td class=\"c-td px-0\" mat-cell *matCellDef=\"let item\">\r\n <sd-desktop-cell class=\"d-block px-8\" *ngIf=\"!item?.sdGroup\" [sdId]=\"item.sdId\" [key]=\"key\"\r\n [value]=\"item[column.field]\" [column]=\"column\" [item]=\"item\" [idx]=\"i\" [cellDef]=\"cellDef\"\r\n [gridOption]=\"gridOption\">\r\n </sd-desktop-cell>\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef>\r\n <ng-container *ngIf=\"footerDef[column.field]\">\r\n <ng-container *ngTemplateOutlet=\"\r\n footerDef[column.field].templateRef;\r\n context: { items: items, column: column }\r\n \">\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n <ng-container *ngFor=\"let column of configuration.secondColumns; let i = index\"\r\n [matColumnDef]=\"column.field\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header class=\"c-th px-8\"\r\n [ngStyle]=\"{ 'min-width': column.width }\">\r\n <div>\r\n <div [class.text-right]=\"column.align === 'right' || (!column.align && column.type === 'number')\"\r\n [class.text-center]=\"column.align === 'center'\" [innerHTML]=\"column.titleHtml || column.title\">\r\n </div>\r\n <sd-column-inline-filter *ngIf=\"gridOption.filter?.inlineColumn\"\r\n [value]=\"columnFilter[column.field]\" [columnFilter]=\"columnFilter\" [column]=\"column\"\r\n (filterChange)=\"onFilterChange()\">\r\n </sd-column-inline-filter>\r\n </div>\r\n </th>\r\n <td class=\"c-td px-0\" mat-cell *matCellDef=\"let item\">\r\n <sd-desktop-cell class=\"d-block px-8\" [sdId]=\"item.sdId\" [key]=\"key\" [value]=\"item[column.field]\"\r\n [column]=\"column\" [item]=\"item\" [idx]=\"i\" [cellDef]=\"cellDef\" [gridOption]=\"gridOption\">\r\n </sd-desktop-cell>\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef>\r\n <ng-container *ngIf=\"footerDef[column.field]\">\r\n <ng-container *ngTemplateOutlet=\"\r\n footerDef[column.field].templateRef;\r\n context: { items: items, column: column }\r\n \">\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n <tr class=\"c-first-header\" mat-header-row *matHeaderRowDef=\"configuration.firstHeaders; sticky: true\">\r\n </tr>\r\n <ng-container *ngIf=\"configuration.secondHeaders?.length\">\r\n <tr class=\"c-second-header\" mat-header-row *matHeaderRowDef=\"configuration.secondHeaders; sticky: true\">\r\n </tr>\r\n </ng-container>\r\n <tr mat-row *matRowDef=\"let row; columns: configuration.displayedColumns\" matRipple class=\"c-row\"\r\n [class.selected]=\"row.isSelected\" [style]=\"row | sdStyleRowCss:gridOption\"></tr>\r\n\r\n <tr mat-row *matRowDef=\"let row; columns: ['sdSubInformation']\" class=\"c-detail-row\"></tr>\r\n <ng-container *ngIf=\"hasFooter && configuration.displayedFooters?.length\">\r\n <tr mat-footer-row *matFooterRowDef=\"configuration.displayedFooters; sticky: true\"></tr>\r\n </ng-container>\r\n </table>\r\n <ng-template #elseEmpty>\r\n <table mat-table [dataSource]=\"[{}]\">\r\n <ng-container matColumnDef=\"sdSelection\" sticky>\r\n <th class=\"px-15\" mat-header-cell *matHeaderCellDef style=\"min-width: 50px; max-width: 50px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\"></th>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdEditorValidation\">\r\n <th class=\"p-0\" mat-header-cell *matHeaderCellDef style=\"width: 4px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\">\r\n </th>\r\n <td class=\"p-0\" mat-cell *matCellDef=\"let item\">\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdEditor\">\r\n <th class=\"px-8 py-8\" mat-header-cell *matHeaderCellDef style=\"min-width: 50px; max-width: 50px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\">\r\n <button class=\"c-btn-add\"\r\n *ngIf=\"gridOption.editor?.addable && (!gridOption.editor.limit || gridOption.editor.limit > items.length)\"\r\n (click)=\"onCreate()\" aria-hidden=\"true\" mat-icon-button>\r\n <mat-icon class=\"c-icon-add\">add</mat-icon>\r\n </button>\r\n </th>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdCommand\">\r\n <th class=\"px-8\" mat-header-cell *matHeaderCellDef style=\"min-width: 50px; max-width: 50px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\"></th>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdSubInformationAction\">\r\n <th class=\"p-0\" mat-header-cell *matHeaderCellDef style=\"width: 1px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\"></th>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdEmpty\">\r\n <td class=\"c-empty\" mat-cell *matCellDef=\"let item\"\r\n [attr.colspan]=\"configuration.displayedColumns.length\">\r\n <ng-container *ngIf=\"sdEmptyData?.templateRef; else sdEmptyDataNoRef\">\r\n <ng-container *ngTemplateOutlet=\"\r\n sdEmptyData.templateRef;\r\n context: { item: item }\r\n \">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #sdEmptyDataNoRef>\r\n <mat-icon fontSet=\"material-icons-outlined\">leaderboard</mat-icon>\r\n </ng-template>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdGroup\">\r\n <th mat-header-cell *matHeaderCellDef class=\"px-8 py-8\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\">\r\n </th>\r\n <td class=\"p-0\" mat-cell *matCellDef=\"let item\">\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container *ngFor=\"let column of configuration.columns\" [matColumnDef]=\"column.field\"\r\n [sticky]=\"configuration.fixedColumn[column.field]\">\r\n <th mat-header-cell *matHeaderCellDef class=\"c-th px-8 py-8\"\r\n [ngStyle]=\"{ 'min-width': column.width }\">\r\n <div [class.text-right]=\"column.align === 'right' || (!column.align && column.type === 'number')\"\r\n [class.text-center]=\"column.align === 'center'\" [innerHTML]=\"column.titleHtml || column.title\">\r\n </div>\r\n </th>\r\n </ng-container>\r\n <ng-container *ngFor=\"let column of configuration.firstColumns; let i = index\"\r\n [matColumnDef]=\"column.field\" [sticky]=\"configuration.fixedColumn[column.field]\">\r\n <th mat-header-cell *matHeaderCellDef class=\"c-th px-8 py-8\"\r\n [ngStyle]=\"{ 'min-width': configuration.firstColumns[i].width }\" [attr.rowspan]=\"\r\n configuration.multipleHeader &&\r\n column.type !== 'children-col'\r\n ? 2\r\n : 1\r\n \" [attr.colspan]=\"\r\n column.type === 'children-col' ? column.children?.length : 1\r\n \">\r\n <div>\r\n <div [class.text-right]=\"column.align === 'right' || (!column.align && column.type === 'number')\"\r\n [class.text-center]=\"column.align === 'center'\"\r\n [innerHTML]=\"configuration.firstColumns[i].titleHtml || configuration.firstColumns[i].title\">\r\n </div>\r\n <sd-column-inline-filter *ngIf=\"gridOption.filter?.inlineColumn\"\r\n [value]=\"columnFilter[column.field]\" [columnFilter]=\"columnFilter\" [column]=\"column\"\r\n (filterChange)=\"onFilterChange()\"></sd-column-inline-filter>\r\n </div>\r\n </th>\r\n </ng-container>\r\n <ng-container *ngFor=\"let column of configuration.secondColumns\" [matColumnDef]=\"column.field\">\r\n <th mat-header-cell *matHeaderCellDef class=\"c-th px-8 py-8\"\r\n [ngStyle]=\"{ 'min-width': column.width }\">\r\n <div>\r\n <div [class.text-right]=\"column.align === 'right' || (!column.align && column.type === 'number')\"\r\n [class.text-center]=\"column.align === 'center'\" [innerHTML]=\"column.titleHtml || column.title\">\r\n </div>\r\n <sd-column-inline-filter *ngIf=\"gridOption.filter?.inlineColumn\"\r\n [value]=\"columnFilter[column.field]\" [columnFilter]=\"columnFilter\" [column]=\"column\"\r\n (filterChange)=\"onFilterChange()\"></sd-column-inline-filter>\r\n </div>\r\n </th>\r\n </ng-container>\r\n <tr class=\"c-first-header\" mat-header-row *matHeaderRowDef=\"configuration.firstHeaders; sticky: true\">\r\n </tr>\r\n <tr class=\"c-second-header\" mat-header-row *matHeaderRowDef=\"configuration.secondHeaders; sticky: true\">\r\n </tr>\r\n <tr mat-row *matRowDef=\"let row; columns: ['sdEmpty']\"></tr>\r\n </table>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n <div class=\"c-paginator\">\r\n <div class=\"c-action\">\r\n <sd-button *ngIf=\"gridFilter && !gridOption.filter?.inlineColumn\r\n \" class=\"mr-10\" [title]=\"'Filter' | sdTranslate\" icon=\"filter_alt\" size=\"sm\" (action)=\"gridFilter.open()\"\r\n type=\"link\">\r\n </sd-button>\r\n <sd-button *ngIf=\"gridOption.reload?.visible\" class=\"mr-10\" [title]=\"'Reload' | sdTranslate\" icon=\"refresh\"\r\n size=\"sm\" (action)=\"reload()\" [disabled]=\"!items?.length\" type=\"link\">\r\n </sd-button>\r\n <ng-container *ngIf=\"gridOption.export?.visible && items?.length\">\r\n <ng-container *ngIf=\"isExporting; else unExporting\">\r\n <sd-button class=\"mr-10\" [loading]=\"isExporting\" [title]=\"exportTitle | sdTranslate\" icon=\"get_app\"\r\n size=\"sm\" type=\"link\">\r\n </sd-button>\r\n </ng-container>\r\n <ng-template #unExporting>\r\n <sd-button class=\"mr-10\" [title]=\"exportTitle | sdTranslate\" icon=\"get_app\" size=\"sm\"\r\n [matMenuTriggerFor]=\"menu\" type=\"link\">\r\n </sd-button>\r\n </ng-template>\r\n\r\n <mat-menu #menu=\"matMenu\">\r\n <button *ngIf=\"gridOption.export?.visibleExcel !== false\" mat-menu-item\r\n (click)=\"sdPopupExport.exportDefault()\" type=\"button\">\r\n <mat-icon fontSet=\"material-icons-outlined\">file_download</mat-icon>\r\n <span> {{ \"Export excel\" | sdTranslate }}</span>\r\n </button>\r\n <button *ngIf=\"gridOption.export?.visibleCSV !== false\" mat-menu-item\r\n (click)=\"sdPopupExport.exportCSV()\" type=\"button\">\r\n <mat-icon fontSet=\"material-icons-outlined\">file_download</mat-icon>\r\n <span> {{ \"Export CSV\" | sdTranslate }}</span>\r\n </button>\r\n <button *ngIf=\"gridOption.export?.key\" mat-menu-item (click)=\"sdPopupExport.open()\" type=\"button\">\r\n <mat-icon fontSet=\"material-icons-outlined\">settings</mat-icon>\r\n <span> {{ \"Configure\" | sdTranslate }}</span>\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n <sd-button *ngIf=\"gridOption.config?.visible\" class=\"mr-10\" [title]=\"'Configure' | sdTranslate\"\r\n icon=\"settings\" size=\"sm\" (action)=\"popupGridConfiguration.open()\" type=\"link\">\r\n </sd-button>\r\n </div>\r\n <mat-paginator [class.d-none]=\"gridOption.paginate?.hidden\" [length]=\"total\"\r\n [pageSize]=\"gridOption.paginate?.pageSize\" [pageSizeOptions]=\"gridOption.paginate?.pages\"\r\n [showFirstLastButtons]=\"gridOption.paginate?.showFirstLastButtons\"></mat-paginator>\r\n </div>\r\n </div>\r\n <sd-grid-quick-action [gridOption]=\"gridOption\" [selectedItems]=\"selectedItems\"\r\n (clear)=\"onClearSelection(groupedItems)\">\r\n </sd-grid-quick-action>\r\n <sd-popup-export *ngIf=\"gridOption.export?.visible\" [configuration]=\"configuration\" [gridOption]=\"gridOption\"\r\n (export)=\"onExport($event)\" #sdPopupExport>\r\n </sd-popup-export>\r\n <sd-popup-grid-configuration [gridOption]=\"gridOption\" [key]=\"key\" #popupGridConfiguration>\r\n </sd-popup-grid-configuration>\r\n </ng-container>\r\n </ng-container>\r\n</ng-container>",
3361
+ template: "<ng-container *ngIf=\"gridConfigurationObserver | async as gridConfiguration\">\r\n <ng-container *ngIf=\"\r\n gridConfiguration\r\n | sdGridConfigurationResult\r\n : gridOption\r\n : sdSubInformation as configuration\r\n \">\r\n <sd-grid-filter *ngIf=\"!gridOption.filter?.disabled && filterRegister\" [filterRegister]=\"filterRegister\" [filter]=\"gridOption?.filter\"\r\n [columns]=\"configuration.firstColumns\" [externalFilters]=\"gridOption?.filter?.externalFilters\" [filterDefs]=\"filterDefs\" #gridFilter>\r\n </sd-grid-filter>\r\n <ng-container *ngIf=\"items | sdGroup:gridOption; $implicit as groupedItems\">\r\n <div class=\"c-container {{ gridOption?.style?.grid }}\" [ngClass]=\"{ 'mat-elevation-z2': gridOption?.shadow }\">\r\n <div class=\"c-loading\" *ngIf=\"isLoading\">\r\n <mat-spinner *ngIf=\"isLoading\"></mat-spinner>\r\n </div>\r\n <ng-container>\r\n <div class=\"c-table\" sdScroll [ngStyle]=\"{\r\n 'max-height': gridOption?.maxHeight,\r\n 'min-height': gridOption?.minHeight\r\n }\">\r\n <table *ngIf=\"items?.length; else elseEmpty\" mat-table [dataSource]=\"groupedItems\" matSort\r\n [matSortDisabled]=\"!gridOption.sortable\" cdkDropList cdkDropListOrientation=\"horizontal\"\r\n [cdkDropListDisabled]=\"!gridOption.dropDragColumnEnable\"\r\n (cdkDropListDropped)=\"drop($event, configuration.displayedColumns)\" multiTemplateDataRows>\r\n\r\n <ng-container matColumnDef=\"sdSubInformation\" sticky>\r\n <td class=\"p-0\" mat-cell *matCellDef=\"let item\" [attr.colspan]=\"configuration.displayedColumns.length\">\r\n <ng-container *ngIf=\"sdSubInformation?.templateRef\">\r\n <ng-container *ngIf=\"gridOption?.subInformation?.always;else useExpandCollapse\">\r\n <ng-container *ngTemplateOutlet=\"\r\n sdSubInformation.templateRef;\r\n context: { item: item }\r\n \">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #useExpandCollapse>\r\n <div [@detailExpand]=\"item.isExpanded ? 'expanded' : 'collapsed'\">\r\n <ng-container *ngIf=\"item.isExpanded\">\r\n <ng-container *ngTemplateOutlet=\"\r\n sdSubInformation.templateRef;\r\n context: { item: item }\r\n \">\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdSubInformationAction\" stickyEnd>\r\n <th class=\"p-0\" mat-header-cell *matHeaderCellDef style=\"width: 1px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\"></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button *ngIf=\"!element.isExpanding && !gridOption?.subInformation?.always\" mat-icon-button\r\n aria-label=\"Expand & Collapse\" (click)=\"onExpand(element)\">\r\n <mat-icon *ngIf=\"!element.isExpanded\">expand_more</mat-icon>\r\n <mat-icon *ngIf=\"element.isExpanded\">expand_less</mat-icon>\r\n </button>\r\n <div *ngIf=\"element.isExpanding\" class=\"lds-ring\">\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n </div>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdSelection\" sticky>\r\n <th class=\"text-center px-15\" mat-header-cell *matHeaderCellDef style=\"min-width: 50px; max-width: 50px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\">\r\n <ng-container *ngIf=\"items | selectionVisibleSelectAll: gridOption?.selection | async\">\r\n <mat-checkbox *ngIf=\"!gridOption.selection?.single\" class=\"c-selection\" color=\"primary\"\r\n [(ngModel)]=\"isSelectAll\" (change)=\"onSelectAll()\">\r\n </mat-checkbox>\r\n </ng-container>\r\n\r\n </th>\r\n <td class=\"text-center px-15\" mat-cell *matCellDef=\"let item\" style=\"min-width: 50px; max-width: 50px\">\r\n <ng-container *ngIf=\"item | selectionVisible:gridOption?.selection\">\r\n <mat-checkbox class=\"c-selection\" color=\"primary\" [(ngModel)]=\"item.isSelected\"\r\n (change)=\"onSelect(item)\" [disabled]=\"\r\n selectedItems | selectionDisable: item:gridOption?.selection\r\n \">\r\n </mat-checkbox>\r\n </ng-container>\r\n\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdEditorValidation\">\r\n <th class=\"p-0\" mat-header-cell *matHeaderCellDef style=\"width: 2px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\">\r\n </th>\r\n <td class=\"p-0 position-relative\" mat-cell *matCellDef=\"let item; index as idx\">\r\n <sd-desktop-editor-validation [sdId]=\"item.sdId\" [item]=\"item\" [items]=\"items\"\r\n [gridOption]=\"gridOption\">\r\n </sd-desktop-editor-validation>\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdEditor\">\r\n <th class=\"px-8 py-8\" mat-header-cell *matHeaderCellDef style=\"width: 50px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\">\r\n <button class=\"c-btn-add\"\r\n *ngIf=\"gridOption.editor?.addable && (!gridOption.editor.limit || gridOption.editor.limit > items.length)\"\r\n (click)=\"onCreate()\" aria-hidden=\"true\" mat-icon-button>\r\n <mat-icon class=\"c-icon-add\">add</mat-icon>\r\n </button>\r\n </th>\r\n <td class=\"px-8\" mat-cell *matCellDef=\"let item; index as idx\">\r\n <ng-container *sdLet=\"item.editorStatus | sdEditorHandlerRow:item:gridOption as editorHandler\">\r\n <div *ngIf=\"editorHandler\" class=\"d-flex align-items-center justify-content-center\">\r\n <button *ngIf=\"editorHandler.editable\" class=\"mx-2\" (click)=\"onUpdate(item)\" aria-hidden=\"true\"\r\n mat-icon-button>\r\n <mat-icon class=\"c-icon\">edit</mat-icon>\r\n </button>\r\n <button *ngIf=\"editorHandler.removable\" class=\"mx-2\" (click)=\"onRemove(item)\" aria-hidden=\"true\"\r\n mat-icon-button>\r\n <mat-icon class=\"c-icon\">delete</mat-icon>\r\n </button>\r\n <button *ngIf=\"editorHandler.savable\" class=\"mx-2\" (click)=\"onSave(item)\" aria-hidden=\"true\"\r\n mat-icon-button>\r\n <mat-icon class=\"c-icon\">save</mat-icon>\r\n </button>\r\n <button *ngIf=\"editorHandler.cancelable\" class=\"mx-2\" (click)=\"onCancel(item)\" aria-hidden=\"true\"\r\n mat-icon-button>\r\n <mat-icon class=\"c-icon\">close</mat-icon>\r\n </button>\r\n </div>\r\n </ng-container>\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdCommand\">\r\n <th class=\"px-8 py-8\" mat-header-cell *matHeaderCellDef style=\"width: 50px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\"></th>\r\n <td class=\"px-8\" mat-cell *matCellDef=\"let item\">\r\n <sd-desktop-command [commands]=\"gridOption.commands\" [item]=\"item\"></sd-desktop-command>\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdGroup\">\r\n <th mat-header-cell *matHeaderCellDef class=\"px-8 py-8\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\">\r\n </th>\r\n <td class=\"p-0\" mat-cell *matCellDef=\"let item\"\r\n [attr.colspan]=\"!item?.sdGroup ? 1 : configuration.displayedColumns.length\">\r\n <div [innerHtml]=\"item?.sdGroup?.htmlTemplate | safeHtml\">\r\n </div>\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container *ngFor=\"let column of configuration.firstColumns; let i = index\"\r\n [matColumnDef]=\"column.field\" [sticky]=\"configuration.fixedColumn[column.field]\">\r\n <th mat-header-cell *matHeaderCellDef cdkDrag class=\"px-8 py-8 c-th\"\r\n [ngStyle]=\"{ 'min-width': configuration.firstColumns[i].width }\" [attr.rowspan]=\"\r\n configuration.multipleHeader && column.type !== 'children-col'\r\n ? 2\r\n : 1\r\n \" [attr.colspan]=\"\r\n column.type === 'children-col' ? column.children?.length : 1\r\n \">\r\n <div>\r\n <div aria-hidden=\"false\" role=\"presentation\" mat-sort-header [disabled]=\"\r\n !column.sortable || column.type === 'children-col'\r\n \" [class.text-right]=\"column.align === 'right' || (!column.align && column.type === 'number')\"\r\n [class.text-center]=\"column.align === 'center'\"\r\n [innerHTML]=\"configuration.firstColumns[i].titleHtml || configuration.firstColumns[i].title\">\r\n </div>\r\n <sd-column-inline-filter *ngIf=\"gridOption.filter?.inlineColumn\"\r\n [value]=\"columnFilter[column.field]\" [inlineOperator]=\"columnOperator[column.field]\" [columnFilter]=\"columnFilter\" [column]=\"column\"\r\n (filterChange)=\"onFilterChange()\">\r\n </sd-column-inline-filter>\r\n </div>\r\n </th>\r\n <td class=\"c-td px-0\" mat-cell *matCellDef=\"let item\">\r\n <sd-desktop-cell class=\"d-block px-8\" *ngIf=\"!item?.sdGroup\" [sdId]=\"item.sdId\" [key]=\"key\"\r\n [value]=\"item[column.field]\" [column]=\"column\" [item]=\"item\" [idx]=\"i\" [cellDef]=\"cellDef\"\r\n [gridOption]=\"gridOption\">\r\n </sd-desktop-cell>\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef>\r\n <ng-container *ngIf=\"footerDef[column.field]\">\r\n <ng-container *ngTemplateOutlet=\"\r\n footerDef[column.field].templateRef;\r\n context: { items: items, column: column }\r\n \">\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n <ng-container *ngFor=\"let column of configuration.secondColumns; let i = index\"\r\n [matColumnDef]=\"column.field\">\r\n <th mat-header-cell *matHeaderCellDef mat-sort-header class=\"c-th px-8\"\r\n [ngStyle]=\"{ 'min-width': column.width }\">\r\n <div>\r\n <div [class.text-right]=\"column.align === 'right' || (!column.align && column.type === 'number')\"\r\n [class.text-center]=\"column.align === 'center'\" [innerHTML]=\"column.titleHtml || column.title\">\r\n </div>\r\n <sd-column-inline-filter *ngIf=\"gridOption.filter?.inlineColumn\"\r\n [value]=\"columnFilter[column.field]\" [columnFilter]=\"columnFilter\" [column]=\"column\"\r\n (filterChange)=\"onFilterChange()\">\r\n </sd-column-inline-filter>\r\n </div>\r\n </th>\r\n <td class=\"c-td px-0\" mat-cell *matCellDef=\"let item\">\r\n <sd-desktop-cell class=\"d-block px-8\" [sdId]=\"item.sdId\" [key]=\"key\" [value]=\"item[column.field]\"\r\n [column]=\"column\" [item]=\"item\" [idx]=\"i\" [cellDef]=\"cellDef\" [gridOption]=\"gridOption\">\r\n </sd-desktop-cell>\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef>\r\n <ng-container *ngIf=\"footerDef[column.field]\">\r\n <ng-container *ngTemplateOutlet=\"\r\n footerDef[column.field].templateRef;\r\n context: { items: items, column: column }\r\n \">\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n <tr class=\"c-first-header\" mat-header-row *matHeaderRowDef=\"configuration.firstHeaders; sticky: true\">\r\n </tr>\r\n <ng-container *ngIf=\"configuration.secondHeaders?.length\">\r\n <tr class=\"c-second-header\" mat-header-row *matHeaderRowDef=\"configuration.secondHeaders; sticky: true\">\r\n </tr>\r\n </ng-container>\r\n <tr mat-row *matRowDef=\"let row; columns: configuration.displayedColumns\" matRipple class=\"c-row\"\r\n [class.selected]=\"row.isSelected\" [style]=\"row | sdStyleRowCss:gridOption\"></tr>\r\n\r\n <tr mat-row *matRowDef=\"let row; columns: ['sdSubInformation']\" class=\"c-detail-row\"></tr>\r\n <ng-container *ngIf=\"hasFooter && configuration.displayedFooters?.length\">\r\n <tr mat-footer-row *matFooterRowDef=\"configuration.displayedFooters; sticky: true\"></tr>\r\n </ng-container>\r\n </table>\r\n <ng-template #elseEmpty>\r\n <table mat-table [dataSource]=\"[{}]\">\r\n <ng-container matColumnDef=\"sdSelection\" sticky>\r\n <th class=\"px-15\" mat-header-cell *matHeaderCellDef style=\"min-width: 50px; max-width: 50px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\"></th>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdEditorValidation\">\r\n <th class=\"p-0\" mat-header-cell *matHeaderCellDef style=\"width: 4px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\">\r\n </th>\r\n <td class=\"p-0\" mat-cell *matCellDef=\"let item\">\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdEditor\">\r\n <th class=\"px-8 py-8\" mat-header-cell *matHeaderCellDef style=\"min-width: 50px; max-width: 50px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\">\r\n <button class=\"c-btn-add\"\r\n *ngIf=\"gridOption.editor?.addable && (!gridOption.editor.limit || gridOption.editor.limit > items.length)\"\r\n (click)=\"onCreate()\" aria-hidden=\"true\" mat-icon-button>\r\n <mat-icon class=\"c-icon-add\">add</mat-icon>\r\n </button>\r\n </th>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdCommand\">\r\n <th class=\"px-8\" mat-header-cell *matHeaderCellDef style=\"min-width: 50px; max-width: 50px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\"></th>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdSubInformationAction\">\r\n <th class=\"p-0\" mat-header-cell *matHeaderCellDef style=\"width: 1px\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\"></th>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdEmpty\">\r\n <td class=\"c-empty\" mat-cell *matCellDef=\"let item\"\r\n [attr.colspan]=\"configuration.displayedColumns.length\">\r\n <ng-container *ngIf=\"sdEmptyData?.templateRef; else sdEmptyDataNoRef\">\r\n <ng-container *ngTemplateOutlet=\"\r\n sdEmptyData.templateRef;\r\n context: { item: item }\r\n \">\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #sdEmptyDataNoRef>\r\n <mat-icon fontSet=\"material-icons-outlined\">leaderboard</mat-icon>\r\n </ng-template>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"sdGroup\">\r\n <th mat-header-cell *matHeaderCellDef class=\"px-8 py-8\"\r\n [attr.rowspan]=\"configuration.multipleHeader ? 2 : 1\">\r\n </th>\r\n <td class=\"p-0\" mat-cell *matCellDef=\"let item\">\r\n </td>\r\n <td mat-footer-cell *matFooterCellDef></td>\r\n </ng-container>\r\n <ng-container *ngFor=\"let column of configuration.columns\" [matColumnDef]=\"column.field\"\r\n [sticky]=\"configuration.fixedColumn[column.field]\">\r\n <th mat-header-cell *matHeaderCellDef class=\"c-th px-8 py-8\"\r\n [ngStyle]=\"{ 'min-width': column.width }\">\r\n <div [class.text-right]=\"column.align === 'right' || (!column.align && column.type === 'number')\"\r\n [class.text-center]=\"column.align === 'center'\" [innerHTML]=\"column.titleHtml || column.title\">\r\n </div>\r\n </th>\r\n </ng-container>\r\n <ng-container *ngFor=\"let column of configuration.firstColumns; let i = index\"\r\n [matColumnDef]=\"column.field\" [sticky]=\"configuration.fixedColumn[column.field]\">\r\n <th mat-header-cell *matHeaderCellDef class=\"c-th px-8 py-8\"\r\n [ngStyle]=\"{ 'min-width': configuration.firstColumns[i].width }\" [attr.rowspan]=\"\r\n configuration.multipleHeader &&\r\n column.type !== 'children-col'\r\n ? 2\r\n : 1\r\n \" [attr.colspan]=\"\r\n column.type === 'children-col' ? column.children?.length : 1\r\n \">\r\n <div>\r\n <div [class.text-right]=\"column.align === 'right' || (!column.align && column.type === 'number')\"\r\n [class.text-center]=\"column.align === 'center'\"\r\n [innerHTML]=\"configuration.firstColumns[i].titleHtml || configuration.firstColumns[i].title\">\r\n </div>\r\n <sd-column-inline-filter *ngIf=\"gridOption.filter?.inlineColumn\"\r\n [value]=\"columnFilter[column.field]\" [columnFilter]=\"columnFilter\" [column]=\"column\"\r\n (filterChange)=\"onFilterChange()\"></sd-column-inline-filter>\r\n </div>\r\n </th>\r\n </ng-container>\r\n <ng-container *ngFor=\"let column of configuration.secondColumns\" [matColumnDef]=\"column.field\">\r\n <th mat-header-cell *matHeaderCellDef class=\"c-th px-8 py-8\"\r\n [ngStyle]=\"{ 'min-width': column.width }\">\r\n <div>\r\n <div [class.text-right]=\"column.align === 'right' || (!column.align && column.type === 'number')\"\r\n [class.text-center]=\"column.align === 'center'\" [innerHTML]=\"column.titleHtml || column.title\">\r\n </div>\r\n <sd-column-inline-filter *ngIf=\"gridOption.filter?.inlineColumn\"\r\n [value]=\"columnFilter[column.field]\" [columnFilter]=\"columnFilter\" [column]=\"column\"\r\n (filterChange)=\"onFilterChange()\"></sd-column-inline-filter>\r\n </div>\r\n </th>\r\n </ng-container>\r\n <tr class=\"c-first-header\" mat-header-row *matHeaderRowDef=\"configuration.firstHeaders; sticky: true\">\r\n </tr>\r\n <tr class=\"c-second-header\" mat-header-row *matHeaderRowDef=\"configuration.secondHeaders; sticky: true\">\r\n </tr>\r\n <tr mat-row *matRowDef=\"let row; columns: ['sdEmpty']\"></tr>\r\n </table>\r\n </ng-template>\r\n </div>\r\n </ng-container>\r\n <div class=\"c-paginator\">\r\n <div class=\"c-action\">\r\n <sd-button *ngIf=\"gridFilter && !gridOption.filter?.inlineColumn\r\n \" class=\"mr-10\" [title]=\"'Filter' | sdTranslate\" icon=\"filter_alt\" size=\"sm\" (action)=\"gridFilter.open()\"\r\n type=\"link\">\r\n </sd-button>\r\n <sd-button *ngIf=\"gridOption.reload?.visible\" class=\"mr-10\" [title]=\"'Reload' | sdTranslate\" icon=\"refresh\"\r\n size=\"sm\" (action)=\"reload()\" [disabled]=\"!items?.length\" type=\"link\">\r\n </sd-button>\r\n <ng-container *ngIf=\"gridOption.export?.visible && items?.length\">\r\n <ng-container *ngIf=\"isExporting; else unExporting\">\r\n <sd-button class=\"mr-10\" [loading]=\"isExporting\" [title]=\"exportTitle | sdTranslate\" icon=\"get_app\"\r\n size=\"sm\" type=\"link\">\r\n </sd-button>\r\n </ng-container>\r\n <ng-template #unExporting>\r\n <sd-button class=\"mr-10\" [title]=\"exportTitle | sdTranslate\" icon=\"get_app\" size=\"sm\"\r\n [matMenuTriggerFor]=\"menu\" type=\"link\">\r\n </sd-button>\r\n </ng-template>\r\n\r\n <mat-menu #menu=\"matMenu\">\r\n <button *ngIf=\"gridOption.export?.visibleExcel !== false\" mat-menu-item\r\n (click)=\"sdPopupExport.exportDefault()\" type=\"button\">\r\n <mat-icon fontSet=\"material-icons-outlined\">file_download</mat-icon>\r\n <span> {{ \"Export excel\" | sdTranslate }}</span>\r\n </button>\r\n <button *ngIf=\"gridOption.export?.visibleCSV !== false\" mat-menu-item\r\n (click)=\"sdPopupExport.exportCSV()\" type=\"button\">\r\n <mat-icon fontSet=\"material-icons-outlined\">file_download</mat-icon>\r\n <span> {{ \"Export CSV\" | sdTranslate }}</span>\r\n </button>\r\n <button *ngIf=\"gridOption.export?.key\" mat-menu-item (click)=\"sdPopupExport.open()\" type=\"button\">\r\n <mat-icon fontSet=\"material-icons-outlined\">settings</mat-icon>\r\n <span> {{ \"Configure\" | sdTranslate }}</span>\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n <sd-button *ngIf=\"gridOption.config?.visible\" class=\"mr-10\" [title]=\"'Configure' | sdTranslate\"\r\n icon=\"settings\" size=\"sm\" (action)=\"popupGridConfiguration.open()\" type=\"link\">\r\n </sd-button>\r\n </div>\r\n <mat-paginator [class.d-none]=\"gridOption.paginate?.hidden\" [length]=\"total\"\r\n [pageSize]=\"gridOption.paginate?.pageSize\" [pageSizeOptions]=\"gridOption.paginate?.pages\"\r\n [showFirstLastButtons]=\"gridOption.paginate?.showFirstLastButtons\"></mat-paginator>\r\n </div>\r\n </div>\r\n <sd-grid-quick-action [gridOption]=\"gridOption\" [selectedItems]=\"selectedItems\"\r\n (clear)=\"onClearSelection(groupedItems)\">\r\n </sd-grid-quick-action>\r\n <sd-popup-export *ngIf=\"gridOption.export?.visible\" [configuration]=\"configuration\" [gridOption]=\"gridOption\"\r\n (export)=\"onExport($event)\" #sdPopupExport>\r\n </sd-popup-export>\r\n <sd-popup-grid-configuration [gridOption]=\"gridOption\" [key]=\"key\" #popupGridConfiguration>\r\n </sd-popup-grid-configuration>\r\n </ng-container>\r\n </ng-container>\r\n</ng-container>",
3359
3362
  animations: [
3360
3363
  animations.trigger('detailExpand', [
3361
3364
  animations.state('collapsed', animations.style({ height: '0', minHeight: '0', visibility: 'hidden' })),
@@ -4791,12 +4794,14 @@
4791
4794
  },
4792
4795
  ];
4793
4796
 
4794
- var _valueChanges, _subcription;
4797
+ var _inlineOperator_1, _valueChanges, _subcription;
4795
4798
  var SdColumnInlineFilter = /** @class */ (function () {
4796
- function SdColumnInlineFilter() {
4799
+ function SdColumnInlineFilter(ref) {
4797
4800
  var _this = this;
4798
- this.columnOperator = {};
4799
- this.columnSymbol = 'filter_alt';
4801
+ this.ref = ref;
4802
+ this.inlineSymbol = 'filter_alt';
4803
+ _inlineOperator_1.set(this, void 0);
4804
+ this.inlineOperatorChange = new core.EventEmitter();
4800
4805
  this.columnFilter = {};
4801
4806
  this.operators = [];
4802
4807
  this.filterChange = new core.EventEmitter();
@@ -4805,14 +4810,28 @@
4805
4810
  this.onFilterChange = function () {
4806
4811
  _this.filterChange.emit();
4807
4812
  };
4813
+ this.onChangeOperator = function (event) {
4814
+ if (event) {
4815
+ __classPrivateFieldSet(_this, _inlineOperator_1, event.value);
4816
+ _this.inlineSymbol = event.symbol;
4817
+ }
4818
+ else {
4819
+ __classPrivateFieldSet(_this, _inlineOperator_1, null);
4820
+ _this.inlineSymbol = 'filter_alt';
4821
+ }
4822
+ _this.inlineOperatorChange.emit(__classPrivateFieldGet(_this, _inlineOperator_1));
4823
+ _this.ref.markForCheck();
4824
+ };
4808
4825
  }
4809
4826
  SdColumnInlineFilter.prototype._value = function (value) {
4810
4827
  this.value = value;
4811
4828
  __classPrivateFieldGet(this, _valueChanges).next();
4812
4829
  };
4813
- Object.defineProperty(SdColumnInlineFilter.prototype, "_columnOperator", {
4814
- set: function (columnOperator) {
4815
- this.columnOperator = columnOperator || {};
4830
+ Object.defineProperty(SdColumnInlineFilter.prototype, "_inlineOperator", {
4831
+ set: function (inlineOperator) {
4832
+ var _a, _b;
4833
+ __classPrivateFieldSet(this, _inlineOperator_1, inlineOperator);
4834
+ this.inlineSymbol = (_b = (_a = SdFilterOperators.find(function (e) { return e.value === inlineOperator; })) === null || _a === void 0 ? void 0 : _a.symbol) !== null && _b !== void 0 ? _b : 'filter_alt';
4816
4835
  },
4817
4836
  enumerable: false,
4818
4837
  configurable: true
@@ -4858,19 +4877,22 @@
4858
4877
  };
4859
4878
  return SdColumnInlineFilter;
4860
4879
  }());
4861
- _valueChanges = new WeakMap(), _subcription = new WeakMap();
4880
+ _inlineOperator_1 = new WeakMap(), _valueChanges = new WeakMap(), _subcription = new WeakMap();
4862
4881
  SdColumnInlineFilter.decorators = [
4863
4882
  { type: core.Component, args: [{
4864
4883
  selector: 'sd-column-inline-filter',
4865
- template: "<div class=\"d-flex c-inline-column align-items-end\">\r\n <ng-container\r\n *ngIf=\"\r\n column.type === 'string' ||\r\n column.type === 'number' ||\r\n column.type === 'bool' ||\r\n column.type === 'values' ||\r\n column.type === 'date' ||\r\n column.type === 'datetime' ||\r\n column.type === 'time';\r\n else noFilter\r\n \">\r\n <ng-container *ngIf=\"operators.length\">\r\n <!-- <div style=\"width: 60px; margin-right: 4px\" [matMenuTriggerFor]=\"menu\">\r\n <span>=</span>\r\n </div> -->\r\n <sd-button class=\"mr-2\" fontSet=\"material-symbols-outlined\" [icon]=\"columnSymbol\" size=\"sm\" [matMenuTriggerFor]=\"menu\" type=\"link\"> </sd-button>\r\n <mat-menu #menu=\"matMenu\">\r\n <button\r\n *ngFor=\"let operator of operators\"\r\n (click)=\"columnOperator[column.field] = operator.value; columnSymbol = operator.symbol\"\r\n mat-menu-item\r\n type=\"button\">\r\n <mat-icon fontSet=\"material-symbols-outlined\">{{ operator.symbol }}</mat-icon>\r\n <span> {{ operator.display }}</span>\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n <!-- <sd-select\r\n *ngIf=\"operators.length\"\r\n style=\"width: 60px; margin-right: 4px\"\r\n size=\"sm\"\r\n [items]=\"operators\"\r\n valueField=\"value\"\r\n displayField=\"display\"\r\n [(model)]=\"columnOperator[column.field]\"></sd-select> -->\r\n <sd-input\r\n *ngIf=\"column.type === 'string'\"\r\n style=\"flex: 1\"\r\n size=\"sm\"\r\n type=\"text\"\r\n [(model)]=\"columnFilter[column.field]\"\r\n (keyupEnter)=\"onFilterChange()\"\r\n [disabled]=\"column.filter?.disabled\">\r\n </sd-input>\r\n <sd-input-number\r\n *ngIf=\"column.type === 'number'\"\r\n style=\"flex: 1\"\r\n size=\"sm\"\r\n [(model)]=\"columnFilter[column.field]\"\r\n (keyupEnter)=\"onFilterChange()\"\r\n [disabled]=\"column.filter?.disabled\">\r\n </sd-input-number>\r\n <sd-select\r\n *ngIf=\"column.type === 'bool'\"\r\n style=\"flex: 1\"\r\n size=\"sm\"\r\n [items]=\"[\r\n { value: '1', display: column.option?.displayOnTrue || 'True' },\r\n { value: '0', display: column.option?.displayOnFalse || 'False' }\r\n ]\"\r\n valueField=\"value\"\r\n displayField=\"display\"\r\n [(model)]=\"columnFilter[column.field]\"\r\n (sdChange)=\"onFilterChange()\"\r\n [disabled]=\"column.filter?.disabled\">\r\n <ng-template sdSelectDisplayDef let-item=\"item\">\r\n <sd-badge *ngIf=\"item.value === '1'\" color=\"success\" [title]=\"column.option?.displayOnTrue || 'True'\"> </sd-badge>\r\n <sd-badge *ngIf=\"item.value === '0'\" color=\"danger\" [title]=\"column.option?.displayOnFalse || 'False'\"> </sd-badge>\r\n </ng-template>\r\n </sd-select>\r\n <sd-select\r\n *ngIf=\"column.type === 'values' && column?.option?.selection !== 'AUTOCOMPLETE'\"\r\n style=\"flex: 1\"\r\n size=\"sm\"\r\n [items]=\"column.option.items\"\r\n [valueField]=\"column.option.valueField\"\r\n [displayField]=\"column.option.displayField\"\r\n [(model)]=\"columnFilter[column.field]\"\r\n (sdChange)=\"onFilterChange()\"\r\n [disabled]=\"column.filter?.disabled\"\r\n [multiple]=\"column?.option?.selection === 'MULTIPLE' || column?.option?.selection === 'MULTIPLEAUTOCOMPLETE'\"\r\n [filtered]=\"column?.option?.selection === 'MULTIPLEAUTOCOMPLETE'\">\r\n </sd-select>\r\n <sd-autocomplete\r\n *ngIf=\"column.type === 'values' && column?.option?.selection === 'AUTOCOMPLETE'\"\r\n style=\"flex: 1\"\r\n size=\"sm\"\r\n [items]=\"column.option.items\"\r\n [valueField]=\"column.option.valueField\"\r\n [displayField]=\"column.option.displayField\"\r\n [(model)]=\"columnFilter[column.field]\"\r\n (sdChange)=\"onFilterChange()\"\r\n [disabled]=\"column.filter?.disabled\">\r\n </sd-autocomplete>\r\n <ng-container *ngIf=\"column.type === 'date' || column.type === 'datetime' || column.type === 'time'\">\r\n <sd-date-range\r\n *ngIf=\"!column.option?.useFilterDate\"\r\n style=\"flex: 1\"\r\n size=\"sm\"\r\n [(from)]=\"columnFilter[column.field].from\"\r\n [(to)]=\"columnFilter[column.field].to\"\r\n (sdChange)=\"onFilterChange()\"\r\n [disabled]=\"column.filter?.disabled\">\r\n </sd-date-range>\r\n <sd-date-time\r\n *ngIf=\"column.option?.useFilterDate\"\r\n style=\"flex: 1\"\r\n type=\"date\"\r\n size=\"sm\"\r\n [(model)]=\"columnFilter[column.field]\"\r\n (sdChange)=\"onFilterChange()\"\r\n [disabled]=\"column.filter?.disabled\">\r\n </sd-date-time>\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #noFilter>\r\n <sd-input type=\"text\" size=\"sm\" disabled> </sd-input>\r\n </ng-template>\r\n</div>\r\n",
4884
+ template: "<div class=\"d-flex c-inline-column align-items-end\">\r\n <ng-container *ngIf=\"\r\n column.type === 'string' ||\r\n column.type === 'number' ||\r\n column.type === 'bool' ||\r\n column.type === 'values' ||\r\n column.type === 'date' ||\r\n column.type === 'datetime' ||\r\n column.type === 'time';\r\n else noFilter\r\n \">\r\n <ng-container *ngIf=\"operators.length\">\r\n <!-- <div style=\"width: 60px; margin-right: 4px\" [matMenuTriggerFor]=\"menu\">\r\n <span>=</span>\r\n </div> -->\r\n <sd-button class=\"mr-2\" fontSet=\"material-symbols-outlined\" [icon]=\"inlineSymbol\" size=\"sm\"\r\n [matMenuTriggerFor]=\"menu\" type=\"link\"> </sd-button>\r\n <mat-menu #menu=\"matMenu\">\r\n <button *ngFor=\"let operator of operators\" (click)=\"onChangeOperator(operator)\" mat-menu-item type=\"button\">\r\n <mat-icon fontSet=\"material-symbols-outlined\">{{ operator.symbol }}</mat-icon>\r\n <span> {{ operator.display }}</span>\r\n </button>\r\n </mat-menu>\r\n </ng-container>\r\n <!-- <sd-select\r\n *ngIf=\"operators.length\"\r\n style=\"width: 60px; margin-right: 4px\"\r\n size=\"sm\"\r\n [items]=\"operators\"\r\n valueField=\"value\"\r\n displayField=\"display\"\r\n [(model)]=\"columnOperator[column.field]\"></sd-select> -->\r\n <sd-input *ngIf=\"column.type === 'string'\" style=\"flex: 1\" size=\"sm\" type=\"text\"\r\n [(model)]=\"columnFilter[column.field]\" (keyupEnter)=\"onFilterChange()\" [disabled]=\"column.filter?.disabled\">\r\n </sd-input>\r\n <sd-input-number *ngIf=\"column.type === 'number'\" style=\"flex: 1\" size=\"sm\" [(model)]=\"columnFilter[column.field]\"\r\n (keyupEnter)=\"onFilterChange()\" [disabled]=\"column.filter?.disabled\">\r\n </sd-input-number>\r\n <sd-select *ngIf=\"column.type === 'bool'\" style=\"flex: 1\" size=\"sm\" [items]=\"[\r\n { value: '1', display: column.option?.displayOnTrue || 'True' },\r\n { value: '0', display: column.option?.displayOnFalse || 'False' }\r\n ]\" valueField=\"value\" displayField=\"display\" [(model)]=\"columnFilter[column.field]\" (sdChange)=\"onFilterChange()\"\r\n [disabled]=\"column.filter?.disabled\">\r\n <ng-template sdSelectDisplayDef let-item=\"item\">\r\n <sd-badge *ngIf=\"item.value === '1'\" color=\"success\" [title]=\"column.option?.displayOnTrue || 'True'\">\r\n </sd-badge>\r\n <sd-badge *ngIf=\"item.value === '0'\" color=\"danger\" [title]=\"column.option?.displayOnFalse || 'False'\">\r\n </sd-badge>\r\n </ng-template>\r\n </sd-select>\r\n <sd-select *ngIf=\"column.type === 'values' && column?.option?.selection !== 'AUTOCOMPLETE'\" style=\"flex: 1\"\r\n size=\"sm\" [items]=\"column.option.items\" [valueField]=\"column.option.valueField\"\r\n [displayField]=\"column.option.displayField\" [(model)]=\"columnFilter[column.field]\" (sdChange)=\"onFilterChange()\"\r\n [disabled]=\"column.filter?.disabled\"\r\n [multiple]=\"column?.option?.selection === 'MULTIPLE' || column?.option?.selection === 'MULTIPLEAUTOCOMPLETE'\"\r\n [filtered]=\"column?.option?.selection === 'MULTIPLEAUTOCOMPLETE'\">\r\n </sd-select>\r\n <sd-autocomplete *ngIf=\"column.type === 'values' && column?.option?.selection === 'AUTOCOMPLETE'\" style=\"flex: 1\"\r\n size=\"sm\" [items]=\"column.option.items\" [valueField]=\"column.option.valueField\"\r\n [displayField]=\"column.option.displayField\" [(model)]=\"columnFilter[column.field]\" (sdChange)=\"onFilterChange()\"\r\n [disabled]=\"column.filter?.disabled\">\r\n </sd-autocomplete>\r\n <ng-container *ngIf=\"column.type === 'date' || column.type === 'datetime' || column.type === 'time'\">\r\n <sd-date-range *ngIf=\"!column.option?.useFilterDate\" style=\"flex: 1\" size=\"sm\"\r\n [(from)]=\"columnFilter[column.field].from\" [(to)]=\"columnFilter[column.field].to\" (sdChange)=\"onFilterChange()\"\r\n [disabled]=\"column.filter?.disabled\">\r\n </sd-date-range>\r\n <sd-date-time *ngIf=\"column.option?.useFilterDate\" style=\"flex: 1\" type=\"date\" size=\"sm\"\r\n [(model)]=\"columnFilter[column.field]\" (sdChange)=\"onFilterChange()\" [disabled]=\"column.filter?.disabled\">\r\n </sd-date-time>\r\n </ng-container>\r\n </ng-container>\r\n <ng-template #noFilter>\r\n <sd-input type=\"text\" size=\"sm\" disabled> </sd-input>\r\n </ng-template>\r\n</div>",
4866
4885
  changeDetection: core.ChangeDetectionStrategy.OnPush,
4867
4886
  styles: [":host ::ng-deep .c-inline-column .mat-form-field-wrapper{background-color:#fff;border-radius:8px;margin:8px 0 0!important;padding:0!important}"]
4868
4887
  },] }
4869
4888
  ];
4870
- SdColumnInlineFilter.ctorParameters = function () { return []; };
4889
+ SdColumnInlineFilter.ctorParameters = function () { return [
4890
+ { type: core.ChangeDetectorRef }
4891
+ ]; };
4871
4892
  SdColumnInlineFilter.propDecorators = {
4872
4893
  _value: [{ type: core.Input, args: ['value',] }],
4873
- _columnOperator: [{ type: core.Input, args: ['columnOperator',] }],
4894
+ _inlineOperator: [{ type: core.Input, args: ['inlineOperator',] }],
4895
+ inlineOperatorChange: [{ type: core.Output }],
4874
4896
  _columnFilter: [{ type: core.Input, args: ['columnFilter',] }],
4875
4897
  _column: [{ type: core.Input, args: ['column',] }],
4876
4898
  filterChange: [{ type: core.Output }]