@colijnit/corecomponents_v12 12.2.26 → 12.2.27

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 (438) hide show
  1. package/bundles/colijnit-corecomponents_v12.umd.js +13684 -13680
  2. package/bundles/colijnit-corecomponents_v12.umd.js.map +1 -1
  3. package/colijnit-corecomponents_v12.d.ts +43 -43
  4. package/colijnit-corecomponents_v12.metadata.json +1 -1
  5. package/esm2015/colijnit-corecomponents_v12.js +43 -43
  6. package/esm2015/lib/components/article-tile/article-tile.component.js +49 -49
  7. package/esm2015/lib/components/article-tile/article-tile.module.js +34 -34
  8. package/esm2015/lib/components/base/base-input.component.js +833 -833
  9. package/esm2015/lib/components/base/base.module.js +21 -21
  10. package/esm2015/lib/components/base/commit-buttons/commit-buttons.component.js +85 -85
  11. package/esm2015/lib/components/base/commit-buttons/commit-buttons.module.js +20 -20
  12. package/esm2015/lib/components/base/dialog-base.component.js +5 -5
  13. package/esm2015/lib/components/base-input-date-picker/base-input-date-picker.directive.js +24 -24
  14. package/esm2015/lib/components/button/button.component.js +73 -73
  15. package/esm2015/lib/components/button/button.module.js +18 -18
  16. package/esm2015/lib/components/calendar/calendar-template.component.js +281 -281
  17. package/esm2015/lib/components/calendar/calendar.component.js +32 -32
  18. package/esm2015/lib/components/calendar/calendar.module.js +27 -27
  19. package/esm2015/lib/components/card/card.component.js +50 -50
  20. package/esm2015/lib/components/card/card.module.js +34 -34
  21. package/esm2015/lib/components/carousel/carousel.component.js +109 -109
  22. package/esm2015/lib/components/carousel/carousel.module.js +31 -31
  23. package/esm2015/lib/components/carousel-3d/carousel-3d.component.js +293 -293
  24. package/esm2015/lib/components/carousel-3d/carousel-3d.module.js +18 -18
  25. package/esm2015/lib/components/carousel-3d/carouselItem.js +53 -53
  26. package/esm2015/lib/components/checkmark-overlay/checkmark-overlay.component.js +72 -72
  27. package/esm2015/lib/components/checkmark-overlay/checkmark-overlay.module.js +18 -18
  28. package/esm2015/lib/components/co-dialog/co-dialog.component.js +91 -91
  29. package/esm2015/lib/components/co-dialog/co-dialog.module.js +18 -18
  30. package/esm2015/lib/components/co-dialog-wizard/co-dialog-wizard.component.js +35 -35
  31. package/esm2015/lib/components/co-dialog-wizard/co-dialog-wizard.module.js +16 -16
  32. package/esm2015/lib/components/collapsible/collapsible.component.js +67 -67
  33. package/esm2015/lib/components/collapsible/collapsible.module.js +18 -18
  34. package/esm2015/lib/components/color-picker/color-picker.component.js +33 -33
  35. package/esm2015/lib/components/color-picker/color-picker.module.js +20 -20
  36. package/esm2015/lib/components/core-dialog/confirmation-dialog/confirmation-dialog.component.js +46 -46
  37. package/esm2015/lib/components/core-dialog/core-dialog.module.js +38 -38
  38. package/esm2015/lib/components/core-dialog/core-dialog.service.js +66 -66
  39. package/esm2015/lib/components/core-dialog/core-dynamic-component.service.js +92 -92
  40. package/esm2015/lib/components/double-calendar/double-calendar.component.js +62 -62
  41. package/esm2015/lib/components/double-calendar/double-calendar.module.js +24 -24
  42. package/esm2015/lib/components/filter-item/filter-item-viewmodel.js +12 -12
  43. package/esm2015/lib/components/filter-item/filter-item.component.js +496 -496
  44. package/esm2015/lib/components/filter-item/filter-item.module.js +42 -42
  45. package/esm2015/lib/components/filter-item/filter-viewmodel.js +10 -10
  46. package/esm2015/lib/components/form/form.component.js +181 -181
  47. package/esm2015/lib/components/form/form.module.js +22 -22
  48. package/esm2015/lib/components/grid-toolbar/grid-toolbar.component.js +48 -48
  49. package/esm2015/lib/components/grid-toolbar/grid-toolbar.module.js +22 -22
  50. package/esm2015/lib/components/grid-toolbar-button/grid-toolbar-button.component.js +23 -23
  51. package/esm2015/lib/components/grid-toolbar-button/grid-toolbar-button.module.js +18 -18
  52. package/esm2015/lib/components/icon/icon-cache.service.js +51 -51
  53. package/esm2015/lib/components/icon/icon.component.js +47 -47
  54. package/esm2015/lib/components/icon/icon.module.js +24 -24
  55. package/esm2015/lib/components/icon-collapse-handle/icon-collapse-handle.component.js +56 -56
  56. package/esm2015/lib/components/icon-collapse-handle/icon-collapse-handle.module.js +22 -22
  57. package/esm2015/lib/components/image/image.component.js +31 -31
  58. package/esm2015/lib/components/image/image.module.js +13 -13
  59. package/esm2015/lib/components/input-checkbox/input-checkbox.component.js +71 -71
  60. package/esm2015/lib/components/input-checkbox/input-checkbox.module.js +18 -18
  61. package/esm2015/lib/components/input-date-picker/input-date-picker.component.js +74 -74
  62. package/esm2015/lib/components/input-date-picker/input-date-picker.module.js +25 -25
  63. package/esm2015/lib/components/input-date-range-picker/input-date-range-picker.component.js +107 -107
  64. package/esm2015/lib/components/input-date-range-picker/input-date-range-picker.module.js +26 -26
  65. package/esm2015/lib/components/input-number-picker/input-number-picker.component.js +285 -285
  66. package/esm2015/lib/components/input-number-picker/input-number-picker.module.js +22 -22
  67. package/esm2015/lib/components/input-radio-button/input-radio-button.component.js +77 -77
  68. package/esm2015/lib/components/input-radio-button/input-radio-button.module.js +18 -18
  69. package/esm2015/lib/components/input-scanner/bar-code-scanner.js +22 -22
  70. package/esm2015/lib/components/input-scanner/input-scanner.component.js +56 -56
  71. package/esm2015/lib/components/input-scanner/input-scanner.module.js +20 -20
  72. package/esm2015/lib/components/input-scanner/scanner.service.js +27 -27
  73. package/esm2015/lib/components/input-search/input-search.component.js +67 -63
  74. package/esm2015/lib/components/input-search/input-search.module.js +20 -20
  75. package/esm2015/lib/components/input-text/input-text.component.js +192 -192
  76. package/esm2015/lib/components/input-text/input-text.module.js +32 -32
  77. package/esm2015/lib/components/input-textarea/input-textarea.component.js +55 -55
  78. package/esm2015/lib/components/input-textarea/input-textarea.module.js +26 -26
  79. package/esm2015/lib/components/level-indicator/level-indicator-level.enum.js +6 -6
  80. package/esm2015/lib/components/level-indicator/level-indicator.component.js +29 -29
  81. package/esm2015/lib/components/level-indicator/level-indicator.module.js +14 -14
  82. package/esm2015/lib/components/list-of-values/list-of-values-multiselect-popup.component.js +87 -87
  83. package/esm2015/lib/components/list-of-values/list-of-values-popup.component.js +218 -218
  84. package/esm2015/lib/components/list-of-values/list-of-values.component.js +199 -199
  85. package/esm2015/lib/components/list-of-values/list-of-values.module.js +37 -37
  86. package/esm2015/lib/components/loader/loader.component.js +16 -16
  87. package/esm2015/lib/components/loader/loader.module.js +18 -18
  88. package/esm2015/lib/components/pagination/paginate.pipe.js +98 -98
  89. package/esm2015/lib/components/pagination/pagination-instance.js +1 -1
  90. package/esm2015/lib/components/pagination/pagination.component.js +107 -107
  91. package/esm2015/lib/components/pagination/pagination.module.js +27 -27
  92. package/esm2015/lib/components/pagination/pagination.service.js +87 -87
  93. package/esm2015/lib/components/pagination-bar/pagination-bar.component.js +136 -136
  94. package/esm2015/lib/components/pagination-bar/pagination-bar.module.js +18 -18
  95. package/esm2015/lib/components/popup/const/popup-window-token.js +2 -2
  96. package/esm2015/lib/components/popup/interface/popup-button.js +7 -7
  97. package/esm2015/lib/components/popup/interface/popup-close-event.js +1 -1
  98. package/esm2015/lib/components/popup/interface/popup-settings.js +41 -41
  99. package/esm2015/lib/components/popup/interface/popup.js +1 -1
  100. package/esm2015/lib/components/popup/model/popup-button-globals.js +10 -10
  101. package/esm2015/lib/components/popup/model/popup-window.js +37 -37
  102. package/esm2015/lib/components/popup/popup-buttons.component.js +42 -42
  103. package/esm2015/lib/components/popup/popup-message-display.component.js +37 -37
  104. package/esm2015/lib/components/popup/popup-window-shell.component.js +141 -141
  105. package/esm2015/lib/components/popup/popup.module.js +48 -48
  106. package/esm2015/lib/components/popup/service/popup-shower.service.js +89 -89
  107. package/esm2015/lib/components/popup/service/prompt.service.js +126 -126
  108. package/esm2015/lib/components/popup/text-input-popup.component.js +33 -33
  109. package/esm2015/lib/components/responsive-text/responsive-text.component.js +17 -17
  110. package/esm2015/lib/components/responsive-text/responsive-text.module.js +18 -18
  111. package/esm2015/lib/components/simple-grid/base-simple-grid.component.js +163 -163
  112. package/esm2015/lib/components/simple-grid/simple-grid-cell.component.js +141 -141
  113. package/esm2015/lib/components/simple-grid/simple-grid-column.directive.js +110 -110
  114. package/esm2015/lib/components/simple-grid/simple-grid.component.js +378 -378
  115. package/esm2015/lib/components/simple-grid/simple-grid.module.js +40 -40
  116. package/esm2015/lib/components/tile/tile.component.js +44 -44
  117. package/esm2015/lib/components/tile/tile.module.js +22 -22
  118. package/esm2015/lib/components/tile-select/tile-select.component.js +26 -26
  119. package/esm2015/lib/components/tile-select/tile-select.module.js +20 -20
  120. package/esm2015/lib/components/tooltip/tooltip.component.js +74 -74
  121. package/esm2015/lib/components/tooltip/tooltip.module.js +18 -18
  122. package/esm2015/lib/components/validation-error/validation-error.component.js +30 -30
  123. package/esm2015/lib/components/validation-error/validation-error.module.js +24 -24
  124. package/esm2015/lib/components/view-mode-buttons/content-view-mode.enum.js +10 -10
  125. package/esm2015/lib/components/view-mode-buttons/view-mode-buttons.component.js +41 -41
  126. package/esm2015/lib/components/view-mode-buttons/view-mode-buttons.module.js +20 -20
  127. package/esm2015/lib/core/constant/default-upper-bound-for-range-components.js +3 -3
  128. package/esm2015/lib/core/constant/java-max-int.js +1 -1
  129. package/esm2015/lib/core/constant/number-inputs-key-down-white-list.js +44 -44
  130. package/esm2015/lib/core/decorator/input-boolean.decorator.js +33 -33
  131. package/esm2015/lib/core/enum/co-direction.js +8 -8
  132. package/esm2015/lib/core/enum/co-document-image-display-kind.enum.js +6 -6
  133. package/esm2015/lib/core/enum/co-document-type.enum.js +10 -10
  134. package/esm2015/lib/core/enum/co-orientation.js +16 -16
  135. package/esm2015/lib/core/enum/core-components-icon.enum.js +299 -299
  136. package/esm2015/lib/core/enum/file-type-internal.enum.js +16 -16
  137. package/esm2015/lib/core/enum/file-type.enum.js +10 -10
  138. package/esm2015/lib/core/enum/filterItem-mode.enum.js +42 -42
  139. package/esm2015/lib/core/enum/input-number-picker-show-mode.enum.js +7 -7
  140. package/esm2015/lib/core/enum/keyboard-code.enum.js +73 -73
  141. package/esm2015/lib/core/enum/keyboard-key.enum.js +75 -75
  142. package/esm2015/lib/core/enum/object-right-type.enum.js +6 -6
  143. package/esm2015/lib/core/enum/popup-button-type.enum.js +11 -11
  144. package/esm2015/lib/core/enum/popup-type.enum.js +10 -10
  145. package/esm2015/lib/core/enum/table-name.enum.js +80 -80
  146. package/esm2015/lib/core/function/any-nill.function.js +5 -5
  147. package/esm2015/lib/core/function/is-nill.function.js +4 -4
  148. package/esm2015/lib/core/function/none-nill.function.js +16 -16
  149. package/esm2015/lib/core/function/not-nill.function.js +4 -4
  150. package/esm2015/lib/core/model/bounds-constrained-number-value.js +170 -170
  151. package/esm2015/lib/core/model/check-precision-and-scale-result.js +1 -1
  152. package/esm2015/lib/core/model/check-within-stepped-bounds-result.js +1 -1
  153. package/esm2015/lib/core/model/co-document-right.bo.js +2 -2
  154. package/esm2015/lib/core/model/co-document.bo.js +120 -120
  155. package/esm2015/lib/core/model/core-components-icon-svg.js +298 -298
  156. package/esm2015/lib/core/model/element-position.js +9 -9
  157. package/esm2015/lib/core/model/event/string-prompt-result-event.js +7 -7
  158. package/esm2015/lib/core/service/form-input-user-change-listener.service.js +24 -24
  159. package/esm2015/lib/core/service/form-master.service.js +101 -101
  160. package/esm2015/lib/core/service/ng-zone-wrapper.service.js +19 -19
  161. package/esm2015/lib/core/utils/array-utils.js +263 -263
  162. package/esm2015/lib/core/utils/browser-utils.js +99 -99
  163. package/esm2015/lib/core/utils/direction-enum-utils.js +13 -13
  164. package/esm2015/lib/core/utils/event-utils.js +52 -52
  165. package/esm2015/lib/core/utils/file-utils.js +266 -266
  166. package/esm2015/lib/core/utils/number-utils.js +308 -308
  167. package/esm2015/lib/core/utils/object-utils.js +185 -185
  168. package/esm2015/lib/core/utils/string-utils.js +93 -93
  169. package/esm2015/lib/core/validator/email.validator.js +5 -5
  170. package/esm2015/lib/core/validator/equal.validator.js +10 -10
  171. package/esm2015/lib/core/validator/max-string-length.validator.js +9 -9
  172. package/esm2015/lib/core/validator/password.validator.js +30 -30
  173. package/esm2015/lib/core/validator/precision-scale.validator.js +10 -10
  174. package/esm2015/lib/core/validator/required.validator.js +4 -4
  175. package/esm2015/lib/directives/clickoutside/click-outside-master.service.js +56 -56
  176. package/esm2015/lib/directives/clickoutside/click-outside.directive.js +70 -70
  177. package/esm2015/lib/directives/clickoutside/clickoutside.module.js +18 -18
  178. package/esm2015/lib/directives/observe-visibility/observe-visibility.directive.js +52 -52
  179. package/esm2015/lib/directives/observe-visibility/observe-visibility.module.js +14 -14
  180. package/esm2015/lib/directives/overlay/overlay-parent.directive.js +18 -18
  181. package/esm2015/lib/directives/overlay/overlay.directive.js +160 -160
  182. package/esm2015/lib/directives/overlay/overlay.module.js +17 -17
  183. package/esm2015/lib/directives/ripple/ripple-ref.js +25 -25
  184. package/esm2015/lib/directives/ripple/ripple-renderer.js +159 -159
  185. package/esm2015/lib/directives/ripple/ripple.directive.js +79 -79
  186. package/esm2015/lib/directives/ripple/ripple.module.js +23 -23
  187. package/esm2015/lib/directives/ripple/scroll-dispatcher.service.js +107 -107
  188. package/esm2015/lib/directives/ripple/scrollable.directive.js +39 -39
  189. package/esm2015/lib/directives/ripple/viewport-ruler.service.js +72 -72
  190. package/esm2015/lib/directives/screen-configuration/screen-configuration.directive.js +157 -157
  191. package/esm2015/lib/directives/screen-configuration/screen-configuration.module.js +18 -18
  192. package/esm2015/lib/directives/stopclick/stop-click.directive.js +37 -37
  193. package/esm2015/lib/directives/stopclick/stop-click.module.js +14 -14
  194. package/esm2015/lib/directives/template-wrapper/template-wrapper.directive.js +67 -67
  195. package/esm2015/lib/directives/template-wrapper/template-wrapper.module.js +14 -14
  196. package/esm2015/lib/directives/tooltip/tooltip-directive.module.js +18 -18
  197. package/esm2015/lib/directives/tooltip/tooltip.directive.js +77 -77
  198. package/esm2015/lib/interfaces/dialog-response.interface.js +1 -1
  199. package/esm2015/lib/interfaces/scanner-input.interface.js +1 -1
  200. package/esm2015/lib/interfaces/screen-config-adapter-component-interface-name.js +3 -3
  201. package/esm2015/lib/interfaces/screen-config-adapter.component.interface.js +1 -1
  202. package/esm2015/lib/model/enum/app-button-type.enum.js +10 -10
  203. package/esm2015/lib/model/enum/app-popup-type.enum.js +7 -7
  204. package/esm2015/lib/pipes/append.pipe.js +16 -16
  205. package/esm2015/lib/pipes/append.pipe.module.js +14 -14
  206. package/esm2015/lib/pipes/filter.pipe.js +15 -15
  207. package/esm2015/lib/pipes/filter.pipe.module.js +14 -14
  208. package/esm2015/lib/pipes/prepend.pipe.js +16 -16
  209. package/esm2015/lib/pipes/prepend.pipe.module.js +14 -14
  210. package/esm2015/lib/pipes/price-display-pipe.module.js +14 -14
  211. package/esm2015/lib/pipes/price-display.pipe.js +19 -19
  212. package/esm2015/lib/service/base-module-screen-config.service.js +204 -204
  213. package/esm2015/lib/service/base-module.service.js +41 -41
  214. package/esm2015/lib/service/color-sequence.service.js +22 -22
  215. package/esm2015/lib/service/overlay.service.js +72 -72
  216. package/esm2015/lib/translation/core-components-translation.module.js +28 -28
  217. package/esm2015/lib/translation/core-components-translation.service.js +16 -16
  218. package/esm2015/lib/translation/core-dictionary.service.js +28 -28
  219. package/esm2015/lib/translation/core-localize.pipe.js +25 -25
  220. package/esm2015/public-api.js +129 -129
  221. package/fesm2015/colijnit-corecomponents_v12.js +12090 -12086
  222. package/fesm2015/colijnit-corecomponents_v12.js.map +1 -1
  223. package/lib/components/article-tile/article-tile.component.d.ts +22 -22
  224. package/lib/components/article-tile/article-tile.module.d.ts +2 -2
  225. package/lib/components/base/base-input.component.d.ts +182 -182
  226. package/lib/components/base/base.module.d.ts +2 -2
  227. package/lib/components/base/commit-buttons/commit-buttons.component.d.ts +21 -21
  228. package/lib/components/base/commit-buttons/commit-buttons.module.d.ts +2 -2
  229. package/lib/components/base/dialog-base.component.d.ts +4 -4
  230. package/lib/components/base-input-date-picker/base-input-date-picker.directive.d.ts +15 -15
  231. package/lib/components/button/button.component.d.ts +29 -29
  232. package/lib/components/button/button.module.d.ts +2 -2
  233. package/lib/components/calendar/calendar-template.component.d.ts +60 -60
  234. package/lib/components/calendar/calendar.component.d.ts +13 -13
  235. package/lib/components/calendar/calendar.module.d.ts +2 -2
  236. package/lib/components/card/card.component.d.ts +23 -23
  237. package/lib/components/card/card.module.d.ts +2 -2
  238. package/lib/components/carousel/carousel.component.d.ts +23 -23
  239. package/lib/components/carousel/carousel.module.d.ts +6 -6
  240. package/lib/components/carousel-3d/carousel-3d.component.d.ts +55 -55
  241. package/lib/components/carousel-3d/carousel-3d.module.d.ts +2 -2
  242. package/lib/components/carousel-3d/carouselItem.d.ts +13 -13
  243. package/lib/components/checkmark-overlay/checkmark-overlay.component.d.ts +17 -17
  244. package/lib/components/checkmark-overlay/checkmark-overlay.module.d.ts +2 -2
  245. package/lib/components/co-dialog/co-dialog.component.d.ts +23 -23
  246. package/lib/components/co-dialog/co-dialog.module.d.ts +2 -2
  247. package/lib/components/co-dialog-wizard/co-dialog-wizard.component.d.ts +9 -9
  248. package/lib/components/co-dialog-wizard/co-dialog-wizard.module.d.ts +2 -2
  249. package/lib/components/collapsible/collapsible.component.d.ts +22 -22
  250. package/lib/components/collapsible/collapsible.module.d.ts +2 -2
  251. package/lib/components/color-picker/color-picker.component.d.ts +6 -6
  252. package/lib/components/color-picker/color-picker.module.d.ts +2 -2
  253. package/lib/components/core-dialog/confirmation-dialog/confirmation-dialog.component.d.ts +20 -20
  254. package/lib/components/core-dialog/core-dialog.module.d.ts +4 -4
  255. package/lib/components/core-dialog/core-dialog.service.d.ts +15 -15
  256. package/lib/components/core-dialog/core-dynamic-component.service.d.ts +12 -12
  257. package/lib/components/double-calendar/double-calendar.component.d.ts +18 -18
  258. package/lib/components/double-calendar/double-calendar.module.d.ts +2 -2
  259. package/lib/components/filter-item/filter-item-viewmodel.d.ts +9 -9
  260. package/lib/components/filter-item/filter-item.component.d.ts +80 -80
  261. package/lib/components/filter-item/filter-item.module.d.ts +2 -2
  262. package/lib/components/filter-item/filter-viewmodel.d.ts +8 -8
  263. package/lib/components/form/form.component.d.ts +39 -39
  264. package/lib/components/form/form.module.d.ts +2 -2
  265. package/lib/components/grid-toolbar/grid-toolbar.component.d.ts +19 -19
  266. package/lib/components/grid-toolbar/grid-toolbar.module.d.ts +2 -2
  267. package/lib/components/grid-toolbar-button/grid-toolbar-button.component.d.ts +8 -8
  268. package/lib/components/grid-toolbar-button/grid-toolbar-button.module.d.ts +2 -2
  269. package/lib/components/icon/icon-cache.service.d.ts +20 -20
  270. package/lib/components/icon/icon.component.d.ts +17 -17
  271. package/lib/components/icon/icon.module.d.ts +2 -2
  272. package/lib/components/icon-collapse-handle/icon-collapse-handle.component.d.ts +21 -21
  273. package/lib/components/icon-collapse-handle/icon-collapse-handle.module.d.ts +2 -2
  274. package/lib/components/image/image.component.d.ts +20 -20
  275. package/lib/components/image/image.module.d.ts +2 -2
  276. package/lib/components/input-checkbox/input-checkbox.component.d.ts +24 -24
  277. package/lib/components/input-checkbox/input-checkbox.module.d.ts +2 -2
  278. package/lib/components/input-date-picker/input-date-picker.component.d.ts +12 -12
  279. package/lib/components/input-date-picker/input-date-picker.module.d.ts +2 -2
  280. package/lib/components/input-date-range-picker/input-date-range-picker.component.d.ts +20 -20
  281. package/lib/components/input-date-range-picker/input-date-range-picker.module.d.ts +2 -2
  282. package/lib/components/input-number-picker/input-number-picker.component.d.ts +73 -73
  283. package/lib/components/input-number-picker/input-number-picker.module.d.ts +2 -2
  284. package/lib/components/input-radio-button/input-radio-button.component.d.ts +19 -19
  285. package/lib/components/input-radio-button/input-radio-button.module.d.ts +2 -2
  286. package/lib/components/input-scanner/bar-code-scanner.d.ts +7 -7
  287. package/lib/components/input-scanner/input-scanner.component.d.ts +24 -24
  288. package/lib/components/input-scanner/input-scanner.module.d.ts +2 -2
  289. package/lib/components/input-scanner/scanner.service.d.ts +11 -11
  290. package/lib/components/input-search/input-search.component.d.ts +20 -19
  291. package/lib/components/input-search/input-search.module.d.ts +2 -2
  292. package/lib/components/input-text/input-text.component.d.ts +65 -65
  293. package/lib/components/input-text/input-text.module.d.ts +2 -2
  294. package/lib/components/input-textarea/input-textarea.component.d.ts +19 -19
  295. package/lib/components/input-textarea/input-textarea.module.d.ts +2 -2
  296. package/lib/components/level-indicator/level-indicator-level.enum.d.ts +5 -5
  297. package/lib/components/level-indicator/level-indicator.component.d.ts +10 -10
  298. package/lib/components/level-indicator/level-indicator.module.d.ts +2 -2
  299. package/lib/components/list-of-values/list-of-values-multiselect-popup.component.d.ts +25 -25
  300. package/lib/components/list-of-values/list-of-values-popup.component.d.ts +47 -47
  301. package/lib/components/list-of-values/list-of-values.component.d.ts +37 -37
  302. package/lib/components/list-of-values/list-of-values.module.d.ts +2 -2
  303. package/lib/components/loader/loader.component.d.ts +3 -3
  304. package/lib/components/loader/loader.module.d.ts +2 -2
  305. package/lib/components/pagination/paginate.pipe.d.ts +15 -15
  306. package/lib/components/pagination/pagination-instance.d.ts +14 -14
  307. package/lib/components/pagination/pagination.component.d.ts +38 -38
  308. package/lib/components/pagination/pagination.module.d.ts +2 -2
  309. package/lib/components/pagination/pagination.service.d.ts +24 -24
  310. package/lib/components/pagination-bar/pagination-bar.component.d.ts +33 -33
  311. package/lib/components/pagination-bar/pagination-bar.module.d.ts +2 -2
  312. package/lib/components/popup/const/popup-window-token.d.ts +3 -3
  313. package/lib/components/popup/interface/popup-button.d.ts +8 -8
  314. package/lib/components/popup/interface/popup-close-event.d.ts +5 -5
  315. package/lib/components/popup/interface/popup-settings.d.ts +21 -21
  316. package/lib/components/popup/interface/popup.d.ts +9 -9
  317. package/lib/components/popup/model/popup-button-globals.d.ts +9 -9
  318. package/lib/components/popup/model/popup-window.d.ts +21 -21
  319. package/lib/components/popup/popup-buttons.component.d.ts +13 -13
  320. package/lib/components/popup/popup-message-display.component.d.ts +12 -12
  321. package/lib/components/popup/popup-window-shell.component.d.ts +42 -42
  322. package/lib/components/popup/popup.module.d.ts +4 -4
  323. package/lib/components/popup/service/popup-shower.service.d.ts +17 -17
  324. package/lib/components/popup/service/prompt.service.d.ts +17 -17
  325. package/lib/components/popup/text-input-popup.component.d.ts +12 -12
  326. package/lib/components/responsive-text/responsive-text.component.d.ts +4 -4
  327. package/lib/components/responsive-text/responsive-text.module.d.ts +2 -2
  328. package/lib/components/simple-grid/base-simple-grid.component.d.ts +52 -52
  329. package/lib/components/simple-grid/simple-grid-cell.component.d.ts +30 -30
  330. package/lib/components/simple-grid/simple-grid-column.directive.d.ts +42 -42
  331. package/lib/components/simple-grid/simple-grid.component.d.ts +64 -64
  332. package/lib/components/simple-grid/simple-grid.module.d.ts +2 -2
  333. package/lib/components/tile/tile.component.d.ts +16 -16
  334. package/lib/components/tile/tile.module.d.ts +2 -2
  335. package/lib/components/tile-select/tile-select.component.d.ts +8 -8
  336. package/lib/components/tile-select/tile-select.module.d.ts +2 -2
  337. package/lib/components/tooltip/tooltip.component.d.ts +18 -18
  338. package/lib/components/tooltip/tooltip.module.d.ts +2 -2
  339. package/lib/components/validation-error/validation-error.component.d.ts +12 -12
  340. package/lib/components/validation-error/validation-error.module.d.ts +2 -2
  341. package/lib/components/view-mode-buttons/content-view-mode.enum.d.ts +8 -8
  342. package/lib/components/view-mode-buttons/view-mode-buttons.component.d.ts +17 -17
  343. package/lib/components/view-mode-buttons/view-mode-buttons.module.d.ts +2 -2
  344. package/lib/core/constant/default-upper-bound-for-range-components.d.ts +2 -2
  345. package/lib/core/constant/java-max-int.d.ts +1 -1
  346. package/lib/core/constant/number-inputs-key-down-white-list.d.ts +2 -2
  347. package/lib/core/decorator/input-boolean.decorator.d.ts +8 -8
  348. package/lib/core/enum/co-direction.d.ts +6 -6
  349. package/lib/core/enum/co-document-image-display-kind.enum.d.ts +5 -5
  350. package/lib/core/enum/co-document-type.enum.d.ts +5 -5
  351. package/lib/core/enum/co-orientation.d.ts +6 -6
  352. package/lib/core/enum/core-components-icon.enum.d.ts +298 -298
  353. package/lib/core/enum/file-type-internal.enum.d.ts +15 -15
  354. package/lib/core/enum/file-type.enum.d.ts +5 -5
  355. package/lib/core/enum/filterItem-mode.enum.d.ts +15 -15
  356. package/lib/core/enum/input-number-picker-show-mode.enum.d.ts +5 -5
  357. package/lib/core/enum/keyboard-code.enum.d.ts +71 -71
  358. package/lib/core/enum/keyboard-key.enum.d.ts +70 -70
  359. package/lib/core/enum/object-right-type.enum.d.ts +5 -5
  360. package/lib/core/enum/popup-button-type.enum.d.ts +9 -9
  361. package/lib/core/enum/popup-type.enum.d.ts +9 -9
  362. package/lib/core/enum/table-name.enum.d.ts +79 -79
  363. package/lib/core/function/any-nill.function.d.ts +1 -1
  364. package/lib/core/function/is-nill.function.d.ts +1 -1
  365. package/lib/core/function/none-nill.function.d.ts +1 -1
  366. package/lib/core/function/not-nill.function.d.ts +1 -1
  367. package/lib/core/model/bounds-constrained-number-value.d.ts +46 -46
  368. package/lib/core/model/check-precision-and-scale-result.d.ts +4 -4
  369. package/lib/core/model/check-within-stepped-bounds-result.d.ts +8 -8
  370. package/lib/core/model/co-document-right.bo.d.ts +6 -6
  371. package/lib/core/model/co-document.bo.d.ts +61 -61
  372. package/lib/core/model/core-components-icon-svg.d.ts +4 -4
  373. package/lib/core/model/element-position.d.ts +7 -7
  374. package/lib/core/model/event/string-prompt-result-event.d.ts +6 -6
  375. package/lib/core/service/form-input-user-change-listener.service.d.ts +10 -10
  376. package/lib/core/service/form-master.service.d.ts +26 -26
  377. package/lib/core/service/ng-zone-wrapper.service.d.ts +6 -6
  378. package/lib/core/utils/array-utils.d.ts +85 -85
  379. package/lib/core/utils/browser-utils.d.ts +15 -15
  380. package/lib/core/utils/direction-enum-utils.d.ts +5 -5
  381. package/lib/core/utils/event-utils.d.ts +12 -12
  382. package/lib/core/utils/file-utils.d.ts +29 -29
  383. package/lib/core/utils/number-utils.d.ts +89 -89
  384. package/lib/core/utils/object-utils.d.ts +31 -31
  385. package/lib/core/utils/string-utils.d.ts +25 -25
  386. package/lib/core/validator/email.validator.d.ts +2 -2
  387. package/lib/core/validator/equal.validator.d.ts +2 -2
  388. package/lib/core/validator/max-string-length.validator.d.ts +2 -2
  389. package/lib/core/validator/password.validator.d.ts +3 -3
  390. package/lib/core/validator/precision-scale.validator.d.ts +2 -2
  391. package/lib/core/validator/required.validator.d.ts +2 -2
  392. package/lib/directives/clickoutside/click-outside-master.service.d.ts +15 -15
  393. package/lib/directives/clickoutside/click-outside.directive.d.ts +18 -18
  394. package/lib/directives/clickoutside/clickoutside.module.d.ts +2 -2
  395. package/lib/directives/observe-visibility/observe-visibility.directive.d.ts +14 -14
  396. package/lib/directives/observe-visibility/observe-visibility.module.d.ts +2 -2
  397. package/lib/directives/overlay/overlay-parent.directive.d.ts +6 -6
  398. package/lib/directives/overlay/overlay.directive.d.ts +25 -25
  399. package/lib/directives/overlay/overlay.module.d.ts +2 -2
  400. package/lib/directives/ripple/ripple-ref.d.ts +21 -21
  401. package/lib/directives/ripple/ripple-renderer.d.ts +56 -56
  402. package/lib/directives/ripple/ripple.directive.d.ts +56 -56
  403. package/lib/directives/ripple/ripple.module.d.ts +2 -2
  404. package/lib/directives/ripple/scroll-dispatcher.service.d.ts +51 -51
  405. package/lib/directives/ripple/scrollable.directive.d.ts +20 -20
  406. package/lib/directives/ripple/viewport-ruler.service.d.ts +29 -29
  407. package/lib/directives/screen-configuration/screen-configuration.directive.d.ts +32 -32
  408. package/lib/directives/screen-configuration/screen-configuration.module.d.ts +2 -2
  409. package/lib/directives/stopclick/stop-click.directive.d.ts +10 -10
  410. package/lib/directives/stopclick/stop-click.module.d.ts +2 -2
  411. package/lib/directives/template-wrapper/template-wrapper.directive.d.ts +13 -13
  412. package/lib/directives/template-wrapper/template-wrapper.module.d.ts +2 -2
  413. package/lib/directives/tooltip/tooltip-directive.module.d.ts +2 -2
  414. package/lib/directives/tooltip/tooltip.directive.d.ts +20 -20
  415. package/lib/interfaces/dialog-response.interface.d.ts +6 -6
  416. package/lib/interfaces/scanner-input.interface.d.ts +3 -3
  417. package/lib/interfaces/screen-config-adapter-component-interface-name.d.ts +3 -3
  418. package/lib/interfaces/screen-config-adapter.component.interface.d.ts +10 -10
  419. package/lib/model/enum/app-button-type.enum.d.ts +9 -9
  420. package/lib/model/enum/app-popup-type.enum.d.ts +6 -6
  421. package/lib/pipes/append.pipe.d.ts +4 -4
  422. package/lib/pipes/append.pipe.module.d.ts +2 -2
  423. package/lib/pipes/filter.pipe.d.ts +4 -4
  424. package/lib/pipes/filter.pipe.module.d.ts +2 -2
  425. package/lib/pipes/prepend.pipe.d.ts +4 -4
  426. package/lib/pipes/prepend.pipe.module.d.ts +2 -2
  427. package/lib/pipes/price-display-pipe.module.d.ts +2 -2
  428. package/lib/pipes/price-display.pipe.d.ts +4 -4
  429. package/lib/service/base-module-screen-config.service.d.ts +47 -47
  430. package/lib/service/base-module.service.d.ts +22 -22
  431. package/lib/service/color-sequence.service.d.ts +4 -4
  432. package/lib/service/overlay.service.d.ts +13 -13
  433. package/lib/translation/core-components-translation.module.d.ts +4 -4
  434. package/lib/translation/core-components-translation.service.d.ts +6 -6
  435. package/lib/translation/core-dictionary.service.d.ts +12 -12
  436. package/lib/translation/core-localize.pipe.d.ts +7 -7
  437. package/package.json +1 -1
  438. package/public-api.d.ts +126 -126
@@ -1,125 +1,125 @@
1
- import { ChangeDetectorRef, Component, EventEmitter, HostBinding, HostListener, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
2
- import { ColumnAlign } from "./simple-grid-column.directive";
3
- import { BaseInputComponent } from "../base/base-input.component";
4
- export class SimpleGridCellComponent {
5
- constructor(_changeDetector) {
6
- this._changeDetector = _changeDetector;
7
- this.defaultTextAlign = ColumnAlign.Left;
8
- this._editMode = false;
9
- this.cellClick = new EventEmitter();
10
- this._fieldEditMode = false;
11
- this._focused = false;
12
- }
13
- get editMode() {
14
- return this._editMode;
15
- }
16
- set editMode(value) {
17
- this._editMode = value;
18
- }
19
- set editTemplateContent(template) {
20
- if (template) {
21
- this._editTemplate = template;
22
- this._setFocusComponent();
23
- }
24
- }
25
- set noEditTemplateContent(template) {
26
- if (template) {
27
- this._template = template;
28
- this._setFocusComponent();
29
- }
30
- }
31
- set noTemplateContent(template) {
32
- if (template) {
33
- this._inputTemplate = template;
34
- this._setFocusComponent();
35
- }
36
- }
37
- set fieldEditMode(value) {
38
- this._fieldEditMode = value;
39
- this._setFocusComponent();
40
- }
41
- get fieldEditMode() {
42
- return this._fieldEditMode;
43
- }
44
- showClass() {
45
- return true;
46
- }
47
- handleClick(event) {
48
- if (this.column && !this.column.readonly) {
49
- this.cellClick.next();
50
- }
51
- }
52
- _setFocusComponent() {
53
- if (this._editMode && this.fieldEditMode) {
54
- const element = this._getElement();
55
- if (element) {
56
- const focusEvent = this._createNewEvent(element, 'focus');
57
- element.focus();
58
- element.dispatchEvent(focusEvent);
59
- this._focused = true;
60
- }
61
- }
62
- else {
63
- if (this._focused) {
64
- const element = this._getElement();
65
- if (element) {
66
- const blurEvent = this._createNewEvent(element, 'blur');
67
- element.blur();
68
- element.dispatchEvent(blurEvent);
69
- }
70
- this._focused = false;
71
- }
72
- }
73
- this._detectChanges();
74
- }
75
- _getFirstFormInput(parent) {
76
- if (parent) {
77
- const collection = Array.from(parent.getElementsByTagName('input'));
78
- const otherCollection = Array.from(parent.getElementsByTagName('textarea'));
79
- otherCollection.map(o => collection.push(o));
80
- if (collection.length > 0) {
81
- return collection[0];
82
- }
83
- }
84
- }
85
- _createNewEvent(element, eventType) {
86
- let event;
87
- if ("createEvent" in document) {
88
- event = document.createEvent("Event");
89
- event.initEvent(eventType, true, true);
90
- }
91
- else if ("Event" in window) {
92
- event = new Event(eventType, { bubbles: true, cancelable: true });
93
- }
94
- return event;
95
- }
96
- _getElement() {
97
- let templ;
98
- if (this._editTemplate) {
99
- templ = this._editTemplate;
100
- }
101
- else if (this._template) {
102
- templ = this._template;
103
- }
104
- else {
105
- templ = this._inputTemplate;
106
- }
107
- if (templ) {
108
- if (templ && templ.elementRef) {
109
- const inputElement = this._getFirstFormInput(templ.elementRef.nativeElement.parentElement);
110
- if (inputElement) {
111
- return inputElement;
112
- }
113
- }
114
- }
115
- }
116
- _detectChanges() {
117
- this._changeDetector.detectChanges();
118
- }
119
- }
120
- SimpleGridCellComponent.decorators = [
121
- { type: Component, args: [{
122
- selector: "co-simple-grid-cell",
1
+ import { ChangeDetectorRef, Component, EventEmitter, HostBinding, HostListener, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
2
+ import { ColumnAlign } from "./simple-grid-column.directive";
3
+ import { BaseInputComponent } from "../base/base-input.component";
4
+ export class SimpleGridCellComponent {
5
+ constructor(_changeDetector) {
6
+ this._changeDetector = _changeDetector;
7
+ this.defaultTextAlign = ColumnAlign.Left;
8
+ this._editMode = false;
9
+ this.cellClick = new EventEmitter();
10
+ this._fieldEditMode = false;
11
+ this._focused = false;
12
+ }
13
+ get editMode() {
14
+ return this._editMode;
15
+ }
16
+ set editMode(value) {
17
+ this._editMode = value;
18
+ }
19
+ set editTemplateContent(template) {
20
+ if (template) {
21
+ this._editTemplate = template;
22
+ this._setFocusComponent();
23
+ }
24
+ }
25
+ set noEditTemplateContent(template) {
26
+ if (template) {
27
+ this._template = template;
28
+ this._setFocusComponent();
29
+ }
30
+ }
31
+ set noTemplateContent(template) {
32
+ if (template) {
33
+ this._inputTemplate = template;
34
+ this._setFocusComponent();
35
+ }
36
+ }
37
+ set fieldEditMode(value) {
38
+ this._fieldEditMode = value;
39
+ this._setFocusComponent();
40
+ }
41
+ get fieldEditMode() {
42
+ return this._fieldEditMode;
43
+ }
44
+ showClass() {
45
+ return true;
46
+ }
47
+ handleClick(event) {
48
+ if (this.column && !this.column.readonly) {
49
+ this.cellClick.next();
50
+ }
51
+ }
52
+ _setFocusComponent() {
53
+ if (this._editMode && this.fieldEditMode) {
54
+ const element = this._getElement();
55
+ if (element) {
56
+ const focusEvent = this._createNewEvent(element, 'focus');
57
+ element.focus();
58
+ element.dispatchEvent(focusEvent);
59
+ this._focused = true;
60
+ }
61
+ }
62
+ else {
63
+ if (this._focused) {
64
+ const element = this._getElement();
65
+ if (element) {
66
+ const blurEvent = this._createNewEvent(element, 'blur');
67
+ element.blur();
68
+ element.dispatchEvent(blurEvent);
69
+ }
70
+ this._focused = false;
71
+ }
72
+ }
73
+ this._detectChanges();
74
+ }
75
+ _getFirstFormInput(parent) {
76
+ if (parent) {
77
+ const collection = Array.from(parent.getElementsByTagName('input'));
78
+ const otherCollection = Array.from(parent.getElementsByTagName('textarea'));
79
+ otherCollection.map(o => collection.push(o));
80
+ if (collection.length > 0) {
81
+ return collection[0];
82
+ }
83
+ }
84
+ }
85
+ _createNewEvent(element, eventType) {
86
+ let event;
87
+ if ("createEvent" in document) {
88
+ event = document.createEvent("Event");
89
+ event.initEvent(eventType, true, true);
90
+ }
91
+ else if ("Event" in window) {
92
+ event = new Event(eventType, { bubbles: true, cancelable: true });
93
+ }
94
+ return event;
95
+ }
96
+ _getElement() {
97
+ let templ;
98
+ if (this._editTemplate) {
99
+ templ = this._editTemplate;
100
+ }
101
+ else if (this._template) {
102
+ templ = this._template;
103
+ }
104
+ else {
105
+ templ = this._inputTemplate;
106
+ }
107
+ if (templ) {
108
+ if (templ && templ.elementRef) {
109
+ const inputElement = this._getFirstFormInput(templ.elementRef.nativeElement.parentElement);
110
+ if (inputElement) {
111
+ return inputElement;
112
+ }
113
+ }
114
+ }
115
+ }
116
+ _detectChanges() {
117
+ this._changeDetector.detectChanges();
118
+ }
119
+ }
120
+ SimpleGridCellComponent.decorators = [
121
+ { type: Component, args: [{
122
+ selector: "co-simple-grid-cell",
123
123
  template: `
124
124
  <div class="simple-grid-column-cell-value" [ngClass]="column.textAlign ? column.textAlign : defaultTextAlign">
125
125
  <ng-container *ngIf="editMode; else noInlineEdit">
@@ -150,23 +150,23 @@ SimpleGridCellComponent.decorators = [
150
150
  </div>
151
151
  </ng-template>
152
152
  </div>
153
- `,
154
- encapsulation: ViewEncapsulation.None
155
- },] }
156
- ];
157
- SimpleGridCellComponent.ctorParameters = () => [
158
- { type: ChangeDetectorRef }
159
- ];
160
- SimpleGridCellComponent.propDecorators = {
161
- editMode: [{ type: Input }],
162
- editTemplateContent: [{ type: ViewChild, args: ["editTemplate", { read: BaseInputComponent },] }],
163
- noEditTemplateContent: [{ type: ViewChild, args: ["noEditTemplate",] }],
164
- noTemplateContent: [{ type: ViewChild, args: ["noTemplate",] }],
165
- column: [{ type: Input }],
166
- row: [{ type: Input }],
167
- fieldEditMode: [{ type: Input }],
168
- cellClick: [{ type: Output }],
169
- showClass: [{ type: HostBinding, args: ["class.co-simple-grid-cell",] }],
170
- handleClick: [{ type: HostListener, args: ['click', ['$event'],] }]
171
- };
153
+ `,
154
+ encapsulation: ViewEncapsulation.None
155
+ },] }
156
+ ];
157
+ SimpleGridCellComponent.ctorParameters = () => [
158
+ { type: ChangeDetectorRef }
159
+ ];
160
+ SimpleGridCellComponent.propDecorators = {
161
+ editMode: [{ type: Input }],
162
+ editTemplateContent: [{ type: ViewChild, args: ["editTemplate", { read: BaseInputComponent },] }],
163
+ noEditTemplateContent: [{ type: ViewChild, args: ["noEditTemplate",] }],
164
+ noTemplateContent: [{ type: ViewChild, args: ["noTemplate",] }],
165
+ column: [{ type: Input }],
166
+ row: [{ type: Input }],
167
+ fieldEditMode: [{ type: Input }],
168
+ cellClick: [{ type: Output }],
169
+ showClass: [{ type: HostBinding, args: ["class.co-simple-grid-cell",] }],
170
+ handleClick: [{ type: HostListener, args: ['click', ['$event'],] }]
171
+ };
172
172
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWdyaWQtY2VsbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvc2ltcGxlLWdyaWQvc2ltcGxlLWdyaWQtY2VsbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQTZCLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFxQ2xFLE1BQU0sT0FBTyx1QkFBdUI7SUFzRWxDLFlBQW9CLGVBQWtDO1FBQWxDLG9CQUFlLEdBQWYsZUFBZSxDQUFtQjtRQTlEdEMscUJBQWdCLEdBQWdCLFdBQVcsQ0FBQyxJQUFJLENBQUM7UUE2QnpELGNBQVMsR0FBWSxLQUFLLENBQUM7UUFhNUIsY0FBUyxHQUE2QixJQUFJLFlBQVksRUFBYyxDQUFDO1FBY3BFLG1CQUFjLEdBQVksS0FBSyxDQUFDO1FBQ2hDLGFBQVEsR0FBWSxLQUFLLENBQUM7SUFNbEMsQ0FBQztJQXRFRCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUNELElBQ0ksUUFBUSxDQUFDLEtBQWM7UUFDekIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7SUFDekIsQ0FBQztJQUdELElBQTJELG1CQUFtQixDQUFDLFFBQVE7UUFDckYsSUFBSSxRQUFRLEVBQUU7WUFDWixJQUFJLENBQUMsYUFBYSxHQUFHLFFBQVEsQ0FBQztZQUM5QixJQUFJLENBQUMsa0JBQWtCLEVB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O3VCQXFEaEIsS0FBSztrQ0FNTCxTQUFTLFNBQUMsY0FBYyxFQUFFLEVBQUMsSUFBSSxFQUFFLGtCQUFrQixFQUFDO29DQU9wRCxTQUFTLFNBQUMsZ0JBQWdCO2dDQU8xQixTQUFTLFNBQUMsWUFBWTtxQkFPdEIsS0FBSztrQkFHTCxLQUFLOzRCQUtMLEtBQUs7d0JBVUwsTUFBTTt3QkFHTixXQUFXLFNBQUMsMkJBQTJCOzBCQUt2QyxZQUFZLFNBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBJbnB1dCwgT25DaGFuZ2VzLFxyXG4gIE91dHB1dCwgU2ltcGxlQ2hhbmdlcyxcclxuICBUZW1wbGF0ZVJlZixcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29sdW1uQWxpZ24sIFNpbXBsZUdyaWRDb2x1bW5EaXJlY3RpdmUgfSBmcm9tIFwiLi9zaW1wbGUtZ3JpZC1jb2x1bW4uZGlyZWN0aXZlXCI7XHJcbmltcG9ydCB7IEJhc2VJbnB1dENvbXBvbmVudCB9IGZyb20gXCIuLi9iYXNlL2Jhc2UtaW5wdXQuY29tcG9uZW50XCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJjby1zaW1wbGUtZ3JpZC1jZWxsXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgICAgPGRpdiBjbGFzcz1cInNpbXBsZS1ncmlkLWNvbHVtbi1jZWxsLXZhbHVlXCIgW25nQ2xhc3NdPVwiY29sdW1uLnRleHRBbGlnbiA/IGNvbHVtbi50ZXh0QWxpZ24gOiBkZWZhdWx0VGV4dEFsaWduXCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZWRpdE1vZGU7IGVsc2Ugbm9JbmxpbmVFZGl0XCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNpbXBsZS1ncmlkLWNvbHVtbi1jZWxsLWZpZWxkXCI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICNlZGl0VGVtcGxhdGUgKm5nSWY9XCJjb2x1bW4uZWRpdFRlbXBsYXRlOyBlbHNlIG5vRWRpdFRlbXBsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY29sdW1uLmVkaXRUZW1wbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7dmFsdWU6IHJvd1tjb2x1bW4uZmllbGRdLCByb3c6IHJvd31cIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbm9FZGl0VGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbHVtbi50ZW1wbGF0ZTsgZWxzZSBub1RlbXBsYXRlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY29sdW1uLnRlbXBsYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie3ZhbHVlOiByb3dbY29sdW1uLmZpZWxkXSwgcm93OiByb3d9XCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNub1RlbXBsYXRlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8Y28taW5wdXQtdGV4dCBbKG1vZGVsKV09XCJyb3dbY29sdW1uLmZpZWxkXVwiIFtyZXF1aXJlZF09XCJjb2x1bW4ucmVxdWlyZWRcIj48L2NvLWlucHV0LXRleHQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbm9JbmxpbmVFZGl0PlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaW1wbGUtZ3JpZC1jb2x1bW4tY2VsbC1maWVsZFwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbHVtbi50ZW1wbGF0ZTsgZWxzZSBub1RlbXBsYXRlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjb2x1bW4udGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInt2YWx1ZTogcm93W2NvbHVtbi5maWVsZF0sIHJvdzogcm93fVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI25vVGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gW3RleHRDb250ZW50XT1cImNvbHVtbi5nZXRGaWVsZFZhbHVlKHJvd1tjb2x1bW4uZmllbGRdKVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICA8L2Rpdj5cclxuICBgLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFNpbXBsZUdyaWRDZWxsQ29tcG9uZW50IHtcclxuICBnZXQgZWRpdE1vZGUoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fZWRpdE1vZGU7XHJcbiAgfVxyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGVkaXRNb2RlKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9lZGl0TW9kZSA9IHZhbHVlO1xyXG4gIH1cclxuICBwdWJsaWMgcmVhZG9ubHkgZGVmYXVsdFRleHRBbGlnbjogQ29sdW1uQWxpZ24gPSBDb2x1bW5BbGlnbi5MZWZ0O1xyXG5cclxuICBAVmlld0NoaWxkKFwiZWRpdFRlbXBsYXRlXCIsIHtyZWFkOiBCYXNlSW5wdXRDb21wb25lbnR9KSBzZXQgZWRpdFRlbXBsYXRlQ29udGVudCh0ZW1wbGF0ZSkge1xyXG4gICAgaWYgKHRlbXBsYXRlKSB7XHJcbiAgICAgIHRoaXMuX2VkaXRUZW1wbGF0ZSA9IHRlbXBsYXRlO1xyXG4gICAgICB0aGlzLl9zZXRGb2N1c0NvbXBvbmVudCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQFZpZXdDaGlsZChcIm5vRWRpdFRlbXBsYXRlXCIpIHNldCBub0VkaXRUZW1wbGF0ZUNvbnRlbnQodGVtcGxhdGUpIHtcclxuICAgIGlmICh0ZW1wbGF0ZSkge1xyXG4gICAgICB0aGlzLl90ZW1wbGF0ZSA9IHRlbXBsYXRlO1xyXG4gICAgICB0aGlzLl9zZXRGb2N1c0NvbXBvbmVudCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQFZpZXdDaGlsZChcIm5vVGVtcGxhdGVcIikgc2V0IG5vVGVtcGxhdGVDb250ZW50KHRlbXBsYXRlKSB7XHJcbiAgICBpZiAodGVtcGxhdGUpIHtcclxuICAgICAgdGhpcy5faW5wdXRUZW1wbGF0ZSA9IHRlbXBsYXRlO1xyXG4gICAgICB0aGlzLl9zZXRGb2N1c0NvbXBvbmVudCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgY29sdW1uOiBTaW1wbGVHcmlkQ29sdW1uRGlyZWN0aXZlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyByb3c6IHt9O1xyXG5cclxuICBwcml2YXRlIF9lZGl0TW9kZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgZmllbGRFZGl0TW9kZSh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fZmllbGRFZGl0TW9kZSA9IHZhbHVlO1xyXG4gICAgdGhpcy5fc2V0Rm9jdXNDb21wb25lbnQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZmllbGRFZGl0TW9kZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9maWVsZEVkaXRNb2RlO1xyXG4gIH1cclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGNlbGxDbGljazogRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICBASG9zdEJpbmRpbmcoXCJjbGFzcy5jby1zaW1wbGUtZ3JpZC1jZWxsXCIpXHJcbiAgcHVibGljIHNob3dDbGFzcygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxyXG4gIHB1YmxpYyBoYW5kbGVDbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuY29sdW1uICYmICF0aGlzLmNvbHVtbi5yZWFkb25seSkge1xyXG4gICAgICB0aGlzLmNlbGxDbGljay5uZXh0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9maWVsZEVkaXRNb2RlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSBfZm9jdXNlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHByaXZhdGUgX2VkaXRUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBwcml2YXRlIF90ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICBwcml2YXRlIF9pbnB1dFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3NldEZvY3VzQ29tcG9uZW50KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuX2VkaXRNb2RlICYmIHRoaXMuZmllbGRFZGl0TW9kZSkge1xyXG4gICAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5fZ2V0RWxlbWVudCgpO1xyXG4gICAgICBpZiAoZWxlbWVudCkge1xyXG4gICAgICAgIGNvbnN0IGZvY3VzRXZlbnQgPSB0aGlzLl9jcmVhdGVOZXdFdmVudChlbGVtZW50LCAnZm9jdXMnKTtcclxuICAgICAgICBlbGVtZW50LmZvY3VzKCk7XHJcbiAgICAgICAgZWxlbWVudC5kaXNwYXRjaEV2ZW50KGZvY3VzRXZlbnQpO1xyXG4gICAgICAgIHRoaXMuX2ZvY3VzZWQgPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAodGhpcy5fZm9jdXNlZCkge1xyXG4gICAgICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9nZXRFbGVtZW50KCk7XHJcbiAgICAgICAgaWYgKGVsZW1lbnQpIHtcclxuICAgICAgICAgIGNvbnN0IGJsdXJFdmVudCA9IHRoaXMuX2NyZWF0ZU5ld0V2ZW50KGVsZW1lbnQsICdibHVyJyk7XHJcbiAgICAgICAgICBlbGVtZW50LmJsdXIoKTtcclxuICAgICAgICAgIGVsZW1lbnQuZGlzcGF0Y2hFdmVudChibHVyRXZlbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLl9mb2N1c2VkID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMuX2RldGVjdENoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2dldEZpcnN0Rm9ybUlucHV0KHBhcmVudDogYW55KTogYW55IHtcclxuICAgIGlmIChwYXJlbnQpIHtcclxuICAgICAgY29uc3QgY29sbGVjdGlvbiA9IEFycmF5LmZyb20ocGFyZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdpbnB1dCcpKTtcclxuICAgICAgY29uc3Qgb3RoZXJDb2xsZWN0aW9uID0gQXJyYXkuZnJvbShwYXJlbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3RleHRhcmVhJykpO1xyXG4gICAgICBvdGhlckNvbGxlY3Rpb24ubWFwKG8gPT4gY29sbGVjdGlvbi5wdXNoKG8pKTtcclxuICAgICAgaWYgKGNvbGxlY3Rpb24ubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIHJldHVybiBjb2xsZWN0aW9uWzBdO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9jcmVhdGVOZXdFdmVudChlbGVtZW50OiBhbnksIGV2ZW50VHlwZTogc3RyaW5nKTogRXZlbnQge1xyXG4gICAgbGV0IGV2ZW50O1xyXG4gICAgaWYgKFwiY3JlYXRlRXZlbnRcIiBpbiBkb2N1bWVudCkge1xyXG4gICAgICBldmVudCA9IGRvY3VtZW50LmNyZWF0ZUV2ZW50KFwiRXZlbnRcIik7XHJcbiAgICAgIGV2ZW50LmluaXRFdmVudChldmVudFR5cGUsIHRydWUsIHRydWUpO1xyXG4gICAgfSBlbHNlIGlmIChcIkV2ZW50XCIgaW4gd2luZG93KSB7XHJcbiAgICAgIGV2ZW50ID0gbmV3IEV2ZW50KGV2ZW50VHlwZSwgeyBidWJibGVzOiB0cnVlLCBjYW5jZWxhYmxlOiB0cnVlIH0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGV2ZW50O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XHJcbiAgICBsZXQgdGVtcGw6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgICBpZiAodGhpcy5fZWRpdFRlbXBsYXRlKSB7XHJcbiAgICAgIHRlbXBsID0gdGhpcy5fZWRpdFRlbXBsYXRlO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLl90ZW1wbGF0ZSkge1xyXG4gICAgICB0ZW1wbCA9IHRoaXMuX3RlbXBsYXRlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGVtcGwgPSB0aGlzLl9pbnB1dFRlbXBsYXRlO1xyXG4gICAgfVxyXG4gICAgaWYgKHRlbXBsKSB7XHJcbiAgICAgIGlmICh0ZW1wbCAmJiB0ZW1wbC5lbGVtZW50UmVmKSB7XHJcbiAgICAgICAgY29uc3QgaW5wdXRFbGVtZW50ID0gdGhpcy5fZ2V0Rmlyc3RGb3JtSW5wdXQodGVtcGwuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQpO1xyXG4gICAgICAgIGlmIChpbnB1dEVsZW1lbnQpIHtcclxuICAgICAgICAgIHJldHVybiBpbnB1dEVsZW1lbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9kZXRlY3RDaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,111 +1,111 @@
1
- import { ContentChild, Directive, ElementRef, Input } from '@angular/core';
2
- export var ColumnAlign;
3
- (function (ColumnAlign) {
4
- ColumnAlign["Left"] = "left-align";
5
- ColumnAlign["Center"] = "center-align";
6
- ColumnAlign["Right"] = "right-align";
7
- })(ColumnAlign || (ColumnAlign = {}));
8
- export class SimpleGridColumnDirective {
9
- constructor(elementRef) {
10
- this.elementRef = elementRef;
11
- this.resizable = true;
12
- this.required = false;
13
- this.autoFit = false;
14
- this.readonly = false;
15
- this.order = 0;
16
- this.singleColumn = false;
17
- }
18
- set headerTemplate(template) {
19
- if (template) {
20
- this._headerTemplate = template;
21
- }
22
- }
23
- get headerTemplate() {
24
- return this._headerTemplate;
25
- }
26
- set template(template) {
27
- if (template) {
28
- this._template = template;
29
- }
30
- }
31
- get template() {
32
- return this._template;
33
- }
34
- set editTemplate(template) {
35
- if (template) {
36
- this._editTemplate = template;
37
- }
38
- }
39
- get editTemplate() {
40
- return this._editTemplate;
41
- }
42
- set width(value) {
43
- if (typeof value === 'string') {
44
- if (value.indexOf('%')) {
45
- this.widthPercentage = value;
46
- }
47
- else {
48
- this._width = value;
49
- }
50
- }
51
- else {
52
- this._width = value;
53
- }
54
- }
55
- get width() {
56
- return this._width;
57
- }
58
- ngOnInit() {
59
- this._setSingleColumnProps();
60
- }
61
- ngOnDestroy() {
62
- this._headerTemplate = undefined;
63
- this._template = undefined;
64
- this._editTemplate = undefined;
65
- }
66
- getFieldValue(value) {
67
- if (this.collection && this.displayField) {
68
- const result = this.collection.find(c => c[this.codeField] === value);
69
- if (result) {
70
- return result[this.displayField];
71
- }
72
- }
73
- return value;
74
- }
75
- _setSingleColumnProps() {
76
- if (this.singleColumn) {
77
- this.resizable = false;
78
- this.readonly = true;
79
- this.width = 0;
80
- }
81
- }
82
- }
83
- SimpleGridColumnDirective._MinManualResizeWidthPx = 50;
84
- SimpleGridColumnDirective.decorators = [
85
- { type: Directive, args: [{
86
- selector: "co-simple-grid-column"
87
- },] }
88
- ];
89
- SimpleGridColumnDirective.ctorParameters = () => [
90
- { type: ElementRef }
91
- ];
92
- SimpleGridColumnDirective.propDecorators = {
93
- headerTemplate: [{ type: ContentChild, args: ['headerTemplate',] }],
94
- template: [{ type: ContentChild, args: ['template',] }],
95
- editTemplate: [{ type: ContentChild, args: ['editTemplate',] }],
96
- headerText: [{ type: Input }],
97
- field: [{ type: Input }],
98
- codeField: [{ type: Input }],
99
- displayField: [{ type: Input }],
100
- textAlign: [{ type: Input }],
101
- format: [{ type: Input }],
102
- resizable: [{ type: Input }],
103
- required: [{ type: Input }],
104
- autoFit: [{ type: Input }],
105
- width: [{ type: Input }],
106
- readonly: [{ type: Input }],
107
- collection: [{ type: Input }],
108
- order: [{ type: Input }],
109
- singleColumn: [{ type: Input }]
110
- };
1
+ import { ContentChild, Directive, ElementRef, Input } from '@angular/core';
2
+ export var ColumnAlign;
3
+ (function (ColumnAlign) {
4
+ ColumnAlign["Left"] = "left-align";
5
+ ColumnAlign["Center"] = "center-align";
6
+ ColumnAlign["Right"] = "right-align";
7
+ })(ColumnAlign || (ColumnAlign = {}));
8
+ export class SimpleGridColumnDirective {
9
+ constructor(elementRef) {
10
+ this.elementRef = elementRef;
11
+ this.resizable = true;
12
+ this.required = false;
13
+ this.autoFit = false;
14
+ this.readonly = false;
15
+ this.order = 0;
16
+ this.singleColumn = false;
17
+ }
18
+ set headerTemplate(template) {
19
+ if (template) {
20
+ this._headerTemplate = template;
21
+ }
22
+ }
23
+ get headerTemplate() {
24
+ return this._headerTemplate;
25
+ }
26
+ set template(template) {
27
+ if (template) {
28
+ this._template = template;
29
+ }
30
+ }
31
+ get template() {
32
+ return this._template;
33
+ }
34
+ set editTemplate(template) {
35
+ if (template) {
36
+ this._editTemplate = template;
37
+ }
38
+ }
39
+ get editTemplate() {
40
+ return this._editTemplate;
41
+ }
42
+ set width(value) {
43
+ if (typeof value === 'string') {
44
+ if (value.indexOf('%')) {
45
+ this.widthPercentage = value;
46
+ }
47
+ else {
48
+ this._width = value;
49
+ }
50
+ }
51
+ else {
52
+ this._width = value;
53
+ }
54
+ }
55
+ get width() {
56
+ return this._width;
57
+ }
58
+ ngOnInit() {
59
+ this._setSingleColumnProps();
60
+ }
61
+ ngOnDestroy() {
62
+ this._headerTemplate = undefined;
63
+ this._template = undefined;
64
+ this._editTemplate = undefined;
65
+ }
66
+ getFieldValue(value) {
67
+ if (this.collection && this.displayField) {
68
+ const result = this.collection.find(c => c[this.codeField] === value);
69
+ if (result) {
70
+ return result[this.displayField];
71
+ }
72
+ }
73
+ return value;
74
+ }
75
+ _setSingleColumnProps() {
76
+ if (this.singleColumn) {
77
+ this.resizable = false;
78
+ this.readonly = true;
79
+ this.width = 0;
80
+ }
81
+ }
82
+ }
83
+ SimpleGridColumnDirective._MinManualResizeWidthPx = 50;
84
+ SimpleGridColumnDirective.decorators = [
85
+ { type: Directive, args: [{
86
+ selector: "co-simple-grid-column"
87
+ },] }
88
+ ];
89
+ SimpleGridColumnDirective.ctorParameters = () => [
90
+ { type: ElementRef }
91
+ ];
92
+ SimpleGridColumnDirective.propDecorators = {
93
+ headerTemplate: [{ type: ContentChild, args: ['headerTemplate',] }],
94
+ template: [{ type: ContentChild, args: ['template',] }],
95
+ editTemplate: [{ type: ContentChild, args: ['editTemplate',] }],
96
+ headerText: [{ type: Input }],
97
+ field: [{ type: Input }],
98
+ codeField: [{ type: Input }],
99
+ displayField: [{ type: Input }],
100
+ textAlign: [{ type: Input }],
101
+ format: [{ type: Input }],
102
+ resizable: [{ type: Input }],
103
+ required: [{ type: Input }],
104
+ autoFit: [{ type: Input }],
105
+ width: [{ type: Input }],
106
+ readonly: [{ type: Input }],
107
+ collection: [{ type: Input }],
108
+ order: [{ type: Input }],
109
+ singleColumn: [{ type: Input }]
110
+ };
111
111
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWdyaWQtY29sdW1uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9zaW1wbGUtZ3JpZC9zaW1wbGUtZ3JpZC1jb2x1bW4uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQWlDLE1BQU0sZUFBZSxDQUFDO0FBRXpHLE1BQU0sQ0FBTixJQUFZLFdBSVg7QUFKRCxXQUFZLFdBQVc7SUFDckIsa0NBQW1CLENBQUE7SUFDbkIsc0NBQXVCLENBQUE7SUFDdkIsb0NBQXFCLENBQUE7QUFDdkIsQ0FBQyxFQUpXLFdBQVcsS0FBWCxXQUFXLFFBSXRCO0FBS0QsTUFBTSxPQUFPLHlCQUF5QjtJQWlHcEMsWUFBbUIsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQTFDbEMsY0FBUyxHQUFZLElBQUksQ0FBQztRQUcxQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBRzFCLFlBQU8sR0FBWSxLQUFLLENBQUM7UUFvQnpCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFNMUIsVUFBSyxHQUFXLENBQUMsQ0FBQztRQUdsQixpQkFBWSxHQUFZLEtBQUssQ0FBQztJQVFyQyxDQUFDO0lBL0ZELElBQ1csY0FBYyxDQUFDLFFBQTBCO1FBQ2xELElBQUksUUFBUSxFQUFFO1lBQ1osSUFBSSxDQUFDLGVBQWUsR0FBRyxRQUFRLENBQUM7U0FDakM7SUFDSCxDQUFDO0lBRUQsSUFBVyxjQUFjO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0lBRUQsSUFDVyxRQUFRLENBQUMsUUFBMEI7UUFDNUMsSUFBSSxRQUFRLEVBQUU7WUFDWixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztTQUMzQjtJQUNILENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUNXLFlBQVksQ0FBQyxRQUEwQjtRQUNoRCxJQUFJLFFBQVEsRUFBRTtZQUNaLElBQUksQ0FBQyxhQUFhLEdBQUcsUUFBUSxDQUFDO1NBQy9CO0lBQ0gsQ0FBQztJQUVELElBQVcsWUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQTZCRCxJQUNXLEtBQUssQ0FBQyxLQUFzQjtRQUNyQyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtZQUM3QixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ3RCLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO2FBQzlCO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO2FBQ3JCO1NBQ0Y7YUFBTTtZQUNMLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1NBQ3JCO0lBQ0gsQ0FBQztJQUVELElBQVcsS0FBSztRQUNkLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBc0JELFFBQVE7UUFDTixJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQTtJQUM5QixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxlQUFlLEdBQUcsU0FBUyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxhQUFhLEdBQUcsU0FBUyxDQUFDO0lBQ2pDLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBVTtRQUM3QixJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUN4QyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUM7WUFDdEUsSUFBSSxNQUFNLEVBQUU7Z0JBQ1YsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO2FBQ2xDO1NBQ0Y7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFNTyxxQkFBcUI7UUFDM0IsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFDO1lBQ3BCLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1NBQ2hCO0lBQ0gsQ0FBQzs7QUFqSWMsaURBQXVCLEdBQVcsRUFBRSxDQUFDOztZQUpyRCxTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjthQUNsQzs7O1lBVmdDLFVBQVU7Ozs2QkFjeEMsWUFBWSxTQUFDLGdCQUFnQjt1QkFXN0IsWUFBWSxTQUFDLFVBQVU7MkJBV3ZCLFlBQVksU0FBQyxjQUFjO3lCQVczQixLQUFLO29CQUdMLEtBQUs7d0JBR0wsS0FBSzsyQkFHTCxLQUFLO3dCQUdMLEtBQUs7cUJBR0wsS0FBSzt3QkFHTCxLQUFLO3VCQUdMLEtBQUs7c0JBR0wsS0FBSztvQkFHTCxLQUFLO3VCQWlCTCxLQUFLO3lCQUdMLEtBQUs7b0JBR0wsS0FBSzsyQkFHTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb250ZW50Q2hpbGQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBUZW1wbGF0ZVJlZn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5leHBvcnQgZW51bSBDb2x1bW5BbGlnbiB7XHJcbiAgTGVmdCA9IFwibGVmdC1hbGlnblwiLFxyXG4gIENlbnRlciA9IFwiY2VudGVyLWFsaWduXCIsXHJcbiAgUmlnaHQgPSBcInJpZ2h0LWFsaWduXCJcclxufVxyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6IFwiY28tc2ltcGxlLWdyaWQtY29sdW1uXCJcclxufSlcclxuZXhwb3J0IGNsYXNzIFNpbXBsZUdyaWRDb2x1bW5EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcHJpdmF0ZSBzdGF0aWMgX01pbk1hbnVhbFJlc2l6ZVdpZHRoUHg6IG51bWJlciA9IDUwO1xyXG5cclxuICBAQ29udGVudENoaWxkKCdoZWFkZXJUZW1wbGF0ZScpXHJcbiAgcHVibGljIHNldCBoZWFkZXJUZW1wbGF0ZSh0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pikge1xyXG4gICAgaWYgKHRlbXBsYXRlKSB7XHJcbiAgICAgIHRoaXMuX2hlYWRlclRlbXBsYXRlID0gdGVtcGxhdGU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0IGhlYWRlclRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2hlYWRlclRlbXBsYXRlO1xyXG4gIH1cclxuXHJcbiAgQENvbnRlbnRDaGlsZCgndGVtcGxhdGUnKVxyXG4gIHB1YmxpYyBzZXQgdGVtcGxhdGUodGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcclxuICAgIGlmICh0ZW1wbGF0ZSkge1xyXG4gICAgICB0aGlzLl90ZW1wbGF0ZSA9IHRlbXBsYXRlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCB0ZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlZjxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLl90ZW1wbGF0ZTtcclxuICB9XHJcblxyXG4gIEBDb250ZW50Q2hpbGQoJ2VkaXRUZW1wbGF0ZScpXHJcbiAgcHVibGljIHNldCBlZGl0VGVtcGxhdGUodGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHtcclxuICAgIGlmICh0ZW1wbGF0ZSkge1xyXG4gICAgICB0aGlzLl9lZGl0VGVtcGxhdGUgPSB0ZW1wbGF0ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgZWRpdFRlbXBsYXRlKCk6IFRlbXBsYXRlUmVmPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2VkaXRUZW1wbGF0ZTtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGhlYWRlclRleHQ6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZmllbGQ6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgY29kZUZpZWxkOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGRpc3BsYXlGaWVsZDogc3RyaW5nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB0ZXh0QWxpZ246IENvbHVtbkFsaWduO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBmb3JtYXQ6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcmVzaXphYmxlOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYXV0b0ZpdDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzZXQgd2lkdGgodmFsdWU6IG51bWJlciB8IHN0cmluZykge1xyXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgaWYgKHZhbHVlLmluZGV4T2YoJyUnKSkge1xyXG4gICAgICAgIHRoaXMud2lkdGhQZXJjZW50YWdlID0gdmFsdWU7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5fd2lkdGggPSB2YWx1ZTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5fd2lkdGggPSB2YWx1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXQgd2lkdGgoKTogbnVtYmVyIHwgc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl93aWR0aDtcclxuICB9XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHJlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGNvbGxlY3Rpb246IHt9W107XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIG9yZGVyOiBudW1iZXIgPSAwO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzaW5nbGVDb2x1bW46IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcHVibGljIG9yaWdpbmFsV2lkdGg6IG51bWJlciB8IHN0cmluZztcclxuICBwdWJsaWMgd2lkdGhQZXJjZW50YWdlOiBzdHJpbmc7XHJcblxyXG4gIHByaXZhdGUgX3dpZHRoOiBudW1iZXIgfCBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3NldFNpbmdsZUNvbHVtblByb3BzKClcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5faGVhZGVyVGVtcGxhdGUgPSB1bmRlZmluZWQ7XHJcbiAgICB0aGlzLl90ZW1wbGF0ZSA9IHVuZGVmaW5lZDtcclxuICAgIHRoaXMuX2VkaXRUZW1wbGF0ZSA9IHVuZGVmaW5lZDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRGaWVsZFZhbHVlKHZhbHVlOiBhbnkpOiBzdHJpbmcge1xyXG4gICAgaWYgKHRoaXMuY29sbGVjdGlvbiAmJiB0aGlzLmRpc3BsYXlGaWVsZCkge1xyXG4gICAgICBjb25zdCByZXN1bHQgPSB0aGlzLmNvbGxlY3Rpb24uZmluZChjID0+IGNbdGhpcy5jb2RlRmllbGRdID09PSB2YWx1ZSk7XHJcbiAgICAgIGlmIChyZXN1bHQpIHtcclxuICAgICAgICByZXR1cm4gcmVzdWx0W3RoaXMuZGlzcGxheUZpZWxkXTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHZhbHVlO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaGVhZGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgcHJpdmF0ZSBfdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgcHJpdmF0ZSBfZWRpdFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBwcml2YXRlIF9zZXRTaW5nbGVDb2x1bW5Qcm9wcygpe1xyXG4gICAgaWYgKHRoaXMuc2luZ2xlQ29sdW1uKXtcclxuICAgICAgdGhpcy5yZXNpemFibGUgPSBmYWxzZTtcclxuICAgICAgdGhpcy5yZWFkb25seSA9IHRydWU7XHJcbiAgICAgIHRoaXMud2lkdGggPSAwO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0=