@guiexpert/table 1.0.2 → 1.0.5

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 (407) hide show
  1. package/esm2022/guiexpert-table.mjs +5 -0
  2. package/esm2022/index.mjs +140 -0
  3. package/esm2022/lib/table/action/action-id.type.mjs +20 -0
  4. package/esm2022/lib/table/action/on-action-triggered.if.mjs +2 -0
  5. package/esm2022/lib/table/action/osx-shortcut-actionId-mapping.mjs +21 -0
  6. package/esm2022/lib/table/action/shortcut-actionid-mapping.type.mjs +2 -0
  7. package/esm2022/lib/table/action/shortcut.service.mjs +114 -0
  8. package/esm2022/lib/table/action/windows-shortcut-actionId-mapping.mjs +19 -0
  9. package/esm2022/lib/table/checkbox/checkbox-model.if.mjs +2 -0
  10. package/esm2022/lib/table/checkbox/checkbox-model.mjs +50 -0
  11. package/esm2022/lib/table/checkbox/tree-checkbox-model.mjs +107 -0
  12. package/esm2022/lib/table/color/color-rgb.if.mjs +2 -0
  13. package/esm2022/lib/table/color/color-rgb.mjs +11 -0
  14. package/esm2022/lib/table/color/ge-css-color-util.mjs +26 -0
  15. package/esm2022/lib/table/color/three-color-gradient-arg.if.mjs +2 -0
  16. package/esm2022/lib/table/color/three-color-gradient-arg.mjs +17 -0
  17. package/esm2022/lib/table/color/two-color-gradient-arg.if.mjs +2 -0
  18. package/esm2022/lib/table/color/two-color-gradient-arg.mjs +13 -0
  19. package/esm2022/lib/table/css-vars.mjs +238 -0
  20. package/esm2022/lib/table/data/chunk/chunk.data-event.if.mjs +2 -0
  21. package/esm2022/lib/table/data/chunk/chunk.data-event.mjs +12 -0
  22. package/esm2022/lib/table/data/chunk/request-chunk.if.mjs +2 -0
  23. package/esm2022/lib/table/data/chunk/request-chunk.mjs +22 -0
  24. package/esm2022/lib/table/data/common/aligns.mjs +19 -0
  25. package/esm2022/lib/table/data/common/area-map-factory.mjs +7 -0
  26. package/esm2022/lib/table/data/common/area-map.mjs +11 -0
  27. package/esm2022/lib/table/data/common/area-map.type.mjs +2 -0
  28. package/esm2022/lib/table/data/common/args-adjust-columns-to-row-parent-params.mjs +2 -0
  29. package/esm2022/lib/table/data/common/args-render-cell-div.mjs +2 -0
  30. package/esm2022/lib/table/data/common/boolean-function.mjs +3 -0
  31. package/esm2022/lib/table/data/common/cell-range.mjs +36 -0
  32. package/esm2022/lib/table/data/common/checkbox-column-def.mjs +13 -0
  33. package/esm2022/lib/table/data/common/checked-type.mjs +2 -0
  34. package/esm2022/lib/table/data/common/event/ge-cell-indices.mjs +9 -0
  35. package/esm2022/lib/table/data/common/event/ge-key-event.mjs +9 -0
  36. package/esm2022/lib/table/data/common/event/ge-model-change-event.mjs +11 -0
  37. package/esm2022/lib/table/data/common/event/ge-mouse-event.mjs +30 -0
  38. package/esm2022/lib/table/data/common/event/input/table-cell-update-event.if.mjs +2 -0
  39. package/esm2022/lib/table/data/common/event/input/table-cell-update-event.mjs +13 -0
  40. package/esm2022/lib/table/data/common/filter-function.mjs +2 -0
  41. package/esm2022/lib/table/data/common/get-t.mjs +2 -0
  42. package/esm2022/lib/table/data/common/index-and-px.mjs +9 -0
  43. package/esm2022/lib/table/data/common/size.if.mjs +2 -0
  44. package/esm2022/lib/table/data/common/size.mjs +9 -0
  45. package/esm2022/lib/table/data/common/sizes.mjs +33 -0
  46. package/esm2022/lib/table/data/common/sort-item.mjs +9 -0
  47. package/esm2022/lib/table/data/common/sort-state.type.mjs +2 -0
  48. package/esm2022/lib/table/data/common/tree-arrow.type.mjs +2 -0
  49. package/esm2022/lib/table/data/common/tree-row-if.mjs +2 -0
  50. package/esm2022/lib/table/data/common/tree-row.mjs +19 -0
  51. package/esm2022/lib/table/data/common/value-label.if.mjs +2 -0
  52. package/esm2022/lib/table/data/common/value-label.mjs +9 -0
  53. package/esm2022/lib/table/data/div-scope.type.mjs +2 -0
  54. package/esm2022/lib/table/data/event/mouse-target-data.mjs +36 -0
  55. package/esm2022/lib/table/data/geo-data.mjs +15 -0
  56. package/esm2022/lib/table/data/options/auto-restore-options.if.mjs +2 -0
  57. package/esm2022/lib/table/data/options/auto-restore-options.mjs +40 -0
  58. package/esm2022/lib/table/data/options/default-row-heights.if.mjs +2 -0
  59. package/esm2022/lib/table/data/options/default-row-heights.mjs +11 -0
  60. package/esm2022/lib/table/data/options/icon.if.mjs +2 -0
  61. package/esm2022/lib/table/data/options/icon.mjs +11 -0
  62. package/esm2022/lib/table/data/options/sorted-options.if.mjs +2 -0
  63. package/esm2022/lib/table/data/options/sorted-options.mjs +12 -0
  64. package/esm2022/lib/table/data/options/table-options.if.mjs +2 -0
  65. package/esm2022/lib/table/data/options/table-options.mjs +44 -0
  66. package/esm2022/lib/table/data/options/tree-options.if.mjs +2 -0
  67. package/esm2022/lib/table/data/options/tree-options.mjs +14 -0
  68. package/esm2022/lib/table/data/side-ident.type.mjs +2 -0
  69. package/esm2022/lib/table/data/table-model-and-options.if.mjs +2 -0
  70. package/esm2022/lib/table/data/table-model-and-options.mjs +9 -0
  71. package/esm2022/lib/table/data/tablemodel/area-ident.type.mjs +14 -0
  72. package/esm2022/lib/table/data/tablemodel/areamodel/abstract-area-model.mjs +137 -0
  73. package/esm2022/lib/table/data/tablemodel/areamodel/area-model-array-of-arrays.mjs +47 -0
  74. package/esm2022/lib/table/data/tablemodel/areamodel/area-model-cell-groups.mjs +163 -0
  75. package/esm2022/lib/table/data/tablemodel/areamodel/area-model-hidden.mjs +84 -0
  76. package/esm2022/lib/table/data/tablemodel/areamodel/area-model-object-array-with-columndefs.mjs +15 -0
  77. package/esm2022/lib/table/data/tablemodel/areamodel/area-model-object-array.mjs +88 -0
  78. package/esm2022/lib/table/data/tablemodel/areamodel/area-model-tree.mjs +181 -0
  79. package/esm2022/lib/table/data/tablemodel/areamodel/area-model.if.mjs +2 -0
  80. package/esm2022/lib/table/data/tablemodel/areamodel/area-model.mjs +76 -0
  81. package/esm2022/lib/table/data/tablemodel/areamodel/col-and-rowspan-model.mjs +51 -0
  82. package/esm2022/lib/table/data/tablemodel/areamodel/has-default-row-height-if.mjs +2 -0
  83. package/esm2022/lib/table/data/tablemodel/cellgroup/cell-group-ext.mjs +133 -0
  84. package/esm2022/lib/table/data/tablemodel/cellgroup/cell-group.if.mjs +2 -0
  85. package/esm2022/lib/table/data/tablemodel/cellgroup/cell-group.mjs +18 -0
  86. package/esm2022/lib/table/data/tablemodel/cellgroup/cellgroup-factory.mjs +110 -0
  87. package/esm2022/lib/table/data/tablemodel/column/column-def.if.mjs +2 -0
  88. package/esm2022/lib/table/data/tablemodel/column/column-def.mjs +52 -0
  89. package/esm2022/lib/table/data/tablemodel/padding.mjs +13 -0
  90. package/esm2022/lib/table/data/tablemodel/table-model.if.mjs +2 -0
  91. package/esm2022/lib/table/data/tablemodel/table-model.mjs +308 -0
  92. package/esm2022/lib/table/ele-scope.mjs +199 -0
  93. package/esm2022/lib/table/event-adapter.mjs +17 -0
  94. package/esm2022/lib/table/event-listener.if.mjs +2 -0
  95. package/esm2022/lib/table/factory/table-factory.mjs +186 -0
  96. package/esm2022/lib/table/factory/tree-factory.mjs +32 -0
  97. package/esm2022/lib/table/focus/focus-model.if.mjs +2 -0
  98. package/esm2022/lib/table/focus/focus-model.mjs +33 -0
  99. package/esm2022/lib/table/focus/focus.type.mjs +2 -0
  100. package/esm2022/lib/table/input-handler.mjs +25 -0
  101. package/esm2022/lib/table/mouse-handler.mjs +196 -0
  102. package/esm2022/lib/table/render-scope.mjs +719 -0
  103. package/esm2022/lib/table/renderer/cell-group-ext-cell-renderer.mjs +8 -0
  104. package/esm2022/lib/table/renderer/cell-render.if.mjs +2 -0
  105. package/esm2022/lib/table/renderer/checkbox-boolean-property-cell-renderer.mjs +47 -0
  106. package/esm2022/lib/table/renderer/checkbox-cell-renderer.mjs +22 -0
  107. package/esm2022/lib/table/renderer/date-to-int-date-cell-renderer.mjs +24 -0
  108. package/esm2022/lib/table/renderer/date-to-iso-cell-renderer.mjs +9 -0
  109. package/esm2022/lib/table/renderer/date-to-locale-date-cell-renderer.mjs +9 -0
  110. package/esm2022/lib/table/renderer/date-to-tec-cell-renderer.mjs +12 -0
  111. package/esm2022/lib/table/renderer/edit/edit-cell-renderer.type.mjs +2 -0
  112. package/esm2022/lib/table/renderer/edit/edit-input-pipe-for-number.mjs +4 -0
  113. package/esm2022/lib/table/renderer/edit/edit-input-pipe.if.mjs +2 -0
  114. package/esm2022/lib/table/renderer/edit/input-cell-renderer.mjs +23 -0
  115. package/esm2022/lib/table/renderer/edit/select-cell-renderer.mjs +36 -0
  116. package/esm2022/lib/table/renderer/male-female-to-icon-cell-renderer.mjs +12 -0
  117. package/esm2022/lib/table/renderer/number-cell-renderer.mjs +21 -0
  118. package/esm2022/lib/table/renderer/progress-bar-cell-renderer.mjs +44 -0
  119. package/esm2022/lib/table/renderer/renderer-cleanup-fn.type.mjs +2 -0
  120. package/esm2022/lib/table/renderer/renderer.mjs +7 -0
  121. package/esm2022/lib/table/renderer/star-rating-cell-renderer.mjs +27 -0
  122. package/esm2022/lib/table/renderer/true-false-cell-renderer.mjs +15 -0
  123. package/esm2022/lib/table/selection/selection-model.if.mjs +2 -0
  124. package/esm2022/lib/table/selection/selection-model.mjs +99 -0
  125. package/esm2022/lib/table/selection/selection-service.mjs +101 -0
  126. package/esm2022/lib/table/selection/selection.type.mjs +2 -0
  127. package/esm2022/lib/table/service/abstract-store-state.service.mjs +50 -0
  128. package/esm2022/lib/table/service/convenience-dom.service.mjs +405 -0
  129. package/esm2022/lib/table/service/data/collapsed-expanded.data.mjs +13 -0
  130. package/esm2022/lib/table/service/data/html-style.type.mjs +2 -0
  131. package/esm2022/lib/table/service/dom-service.if.mjs +2 -0
  132. package/esm2022/lib/table/service/ge-filter.service.mjs +98 -0
  133. package/esm2022/lib/table/service/simple-dom-service.mjs +34 -0
  134. package/esm2022/lib/table/service/sorter.service.mjs +27 -0
  135. package/esm2022/lib/table/service/store-state-collapsed-expand.service.mjs +57 -0
  136. package/esm2022/lib/table/service/store-state-scroll-pos.service.mjs +29 -0
  137. package/esm2022/lib/table/service/store-state-sorting.service.mjs +29 -0
  138. package/esm2022/lib/table/service/tree-row.service.mjs +23 -0
  139. package/esm2022/lib/table/table-api.mjs +42 -0
  140. package/esm2022/lib/table/table-scope.mjs +364 -0
  141. package/{src/index.ts → index.d.ts} +4 -24
  142. package/lib/table/action/action-id.type.d.ts +2 -0
  143. package/{src/lib/table/action/on-action-triggered.if.ts → lib/table/action/on-action-triggered.if.d.ts} +1 -4
  144. package/lib/table/action/osx-shortcut-actionId-mapping.d.ts +6 -0
  145. package/lib/table/action/shortcut-actionid-mapping.type.d.ts +4 -0
  146. package/lib/table/action/shortcut.service.d.ts +18 -0
  147. package/lib/table/action/windows-shortcut-actionId-mapping.d.ts +6 -0
  148. package/lib/table/checkbox/checkbox-model.d.ts +12 -0
  149. package/lib/table/checkbox/checkbox-model.if.d.ts +9 -0
  150. package/lib/table/checkbox/tree-checkbox-model.d.ts +17 -0
  151. package/lib/table/color/color-rgb.d.ts +7 -0
  152. package/lib/table/color/color-rgb.if.d.ts +5 -0
  153. package/lib/table/color/ge-css-color-util.d.ts +7 -0
  154. package/lib/table/color/three-color-gradient-arg.d.ts +11 -0
  155. package/lib/table/color/three-color-gradient-arg.if.d.ts +9 -0
  156. package/lib/table/color/two-color-gradient-arg.d.ts +9 -0
  157. package/lib/table/color/two-color-gradient-arg.if.d.ts +7 -0
  158. package/lib/table/css-vars.d.ts +9 -0
  159. package/lib/table/data/chunk/chunk.data-event.d.ts +9 -0
  160. package/lib/table/data/chunk/chunk.data-event.if.d.ts +4 -0
  161. package/lib/table/data/chunk/request-chunk.d.ts +14 -0
  162. package/lib/table/data/chunk/request-chunk.if.d.ts +9 -0
  163. package/lib/table/data/common/aligns.d.ts +24 -0
  164. package/lib/table/data/common/area-map-factory.d.ts +5 -0
  165. package/lib/table/data/common/area-map.d.ts +7 -0
  166. package/lib/table/data/common/area-map.type.d.ts +5 -0
  167. package/{src/lib/table/data/common/args-adjust-columns-to-row-parent-params.ts → lib/table/data/common/args-adjust-columns-to-row-parent-params.d.ts} +10 -11
  168. package/lib/table/data/common/args-render-cell-div.d.ts +17 -0
  169. package/lib/table/data/common/boolean-function.d.ts +3 -0
  170. package/lib/table/data/common/cell-range.d.ts +19 -0
  171. package/lib/table/data/common/checkbox-column-def.d.ts +13 -0
  172. package/lib/table/data/common/event/ge-cell-indices.d.ts +5 -0
  173. package/lib/table/data/common/event/ge-key-event.d.ts +5 -0
  174. package/lib/table/data/common/event/ge-model-change-event.d.ts +6 -0
  175. package/lib/table/data/common/event/ge-mouse-event.d.ts +17 -0
  176. package/lib/table/data/common/event/input/table-cell-update-event.d.ts +9 -0
  177. package/{src/lib/table/data/common/event/input/table-cell-update-event.if.ts → lib/table/data/common/event/input/table-cell-update-event.if.d.ts} +4 -7
  178. package/lib/table/data/common/index-and-px.d.ts +5 -0
  179. package/lib/table/data/common/size.d.ts +6 -0
  180. package/lib/table/data/common/size.if.d.ts +4 -0
  181. package/lib/table/data/common/sizes.d.ts +32 -0
  182. package/lib/table/data/common/sort-item.d.ts +6 -0
  183. package/lib/table/data/common/tree-row-if.d.ts +10 -0
  184. package/lib/table/data/common/tree-row.d.ts +11 -0
  185. package/lib/table/data/common/value-label.d.ts +6 -0
  186. package/lib/table/data/common/value-label.if.d.ts +4 -0
  187. package/lib/table/data/div-scope.type.d.ts +7 -0
  188. package/lib/table/data/event/mouse-target-data.d.ts +15 -0
  189. package/lib/table/data/geo-data.d.ts +8 -0
  190. package/lib/table/data/options/auto-restore-options.d.ts +11 -0
  191. package/lib/table/data/options/auto-restore-options.if.d.ts +16 -0
  192. package/lib/table/data/options/default-row-heights.d.ts +7 -0
  193. package/lib/table/data/options/default-row-heights.if.d.ts +5 -0
  194. package/lib/table/data/options/icon.d.ts +7 -0
  195. package/lib/table/data/options/icon.if.d.ts +5 -0
  196. package/lib/table/data/options/sorted-options.d.ts +8 -0
  197. package/{src/lib/table/data/options/sorted-options.if.ts → lib/table/data/options/sorted-options.if.d.ts} +3 -6
  198. package/lib/table/data/options/table-options.d.ts +41 -0
  199. package/lib/table/data/options/table-options.if.d.ts +42 -0
  200. package/lib/table/data/options/tree-options.d.ts +9 -0
  201. package/lib/table/data/options/tree-options.if.d.ts +7 -0
  202. package/lib/table/data/table-model-and-options.d.ts +8 -0
  203. package/{src/lib/table/data/table-model-and-options.if.ts → lib/table/data/table-model-and-options.if.d.ts} +2 -4
  204. package/{src/lib/table/data/tablemodel/area-ident.type.ts → lib/table/data/tablemodel/area-ident.type.d.ts} +1 -10
  205. package/lib/table/data/tablemodel/areamodel/abstract-area-model.d.ts +47 -0
  206. package/lib/table/data/tablemodel/areamodel/area-model-array-of-arrays.d.ts +19 -0
  207. package/lib/table/data/tablemodel/areamodel/area-model-cell-groups.d.ts +51 -0
  208. package/lib/table/data/tablemodel/areamodel/area-model-hidden.d.ts +41 -0
  209. package/lib/table/data/tablemodel/areamodel/area-model-object-array-with-columndefs.d.ts +10 -0
  210. package/lib/table/data/tablemodel/areamodel/area-model-object-array.d.ts +28 -0
  211. package/lib/table/data/tablemodel/areamodel/area-model-tree.d.ts +39 -0
  212. package/lib/table/data/tablemodel/areamodel/area-model.d.ts +37 -0
  213. package/lib/table/data/tablemodel/areamodel/area-model.if.d.ts +158 -0
  214. package/lib/table/data/tablemodel/areamodel/col-and-rowspan-model.d.ts +12 -0
  215. package/{src/lib/table/data/tablemodel/areamodel/has-default-row-height-if.ts → lib/table/data/tablemodel/areamodel/has-default-row-height-if.d.ts} +1 -1
  216. package/lib/table/data/tablemodel/cellgroup/cell-group-ext.d.ts +21 -0
  217. package/lib/table/data/tablemodel/cellgroup/cell-group.d.ts +11 -0
  218. package/lib/table/data/tablemodel/cellgroup/cell-group.if.d.ts +9 -0
  219. package/lib/table/data/tablemodel/cellgroup/cellgroup-factory.d.ts +10 -0
  220. package/lib/table/data/tablemodel/column/column-def.d.ts +52 -0
  221. package/lib/table/data/tablemodel/column/column-def.if.d.ts +25 -0
  222. package/lib/table/data/tablemodel/padding.d.ts +7 -0
  223. package/lib/table/data/tablemodel/table-model.d.ts +88 -0
  224. package/lib/table/data/tablemodel/table-model.if.d.ts +56 -0
  225. package/lib/table/ele-scope.d.ts +37 -0
  226. package/lib/table/event-adapter.d.ts +12 -0
  227. package/lib/table/event-listener.if.d.ts +11 -0
  228. package/lib/table/factory/table-factory.d.ts +65 -0
  229. package/lib/table/factory/tree-factory.d.ts +6 -0
  230. package/lib/table/focus/focus-model.d.ts +15 -0
  231. package/lib/table/focus/focus-model.if.d.ts +8 -0
  232. package/{src/lib/table/focus/focus.type.ts → lib/table/focus/focus.type.d.ts} +0 -3
  233. package/lib/table/input-handler.d.ts +6 -0
  234. package/lib/table/mouse-handler.d.ts +25 -0
  235. package/lib/table/render-scope.d.ts +86 -0
  236. package/lib/table/renderer/cell-group-ext-cell-renderer.d.ts +9 -0
  237. package/{src/lib/table/renderer/cell-render.if.ts → lib/table/renderer/cell-render.if.d.ts} +1 -10
  238. package/lib/table/renderer/checkbox-boolean-property-cell-renderer.d.ts +15 -0
  239. package/lib/table/renderer/checkbox-cell-renderer.d.ts +8 -0
  240. package/lib/table/renderer/date-to-int-date-cell-renderer.d.ts +9 -0
  241. package/lib/table/renderer/date-to-iso-cell-renderer.d.ts +8 -0
  242. package/lib/table/renderer/date-to-locale-date-cell-renderer.d.ts +8 -0
  243. package/lib/table/renderer/date-to-tec-cell-renderer.d.ts +8 -0
  244. package/{src/lib/table/renderer/edit/edit-cell-renderer.type.ts → lib/table/renderer/edit/edit-cell-renderer.type.d.ts} +0 -1
  245. package/lib/table/renderer/edit/edit-input-pipe-for-number.d.ts +2 -0
  246. package/lib/table/renderer/edit/edit-input-pipe.if.d.ts +3 -0
  247. package/lib/table/renderer/edit/input-cell-renderer.d.ts +8 -0
  248. package/lib/table/renderer/edit/select-cell-renderer.d.ts +12 -0
  249. package/lib/table/renderer/male-female-to-icon-cell-renderer.d.ts +8 -0
  250. package/lib/table/renderer/number-cell-renderer.d.ts +11 -0
  251. package/lib/table/renderer/progress-bar-cell-renderer.d.ts +15 -0
  252. package/lib/table/renderer/renderer.d.ts +5 -0
  253. package/lib/table/renderer/star-rating-cell-renderer.d.ts +13 -0
  254. package/lib/table/renderer/true-false-cell-renderer.d.ts +8 -0
  255. package/lib/table/selection/selection-model.d.ts +21 -0
  256. package/lib/table/selection/selection-model.if.d.ts +11 -0
  257. package/lib/table/selection/selection-service.d.ts +17 -0
  258. package/{src/lib/table/selection/selection.type.ts → lib/table/selection/selection.type.d.ts} +0 -3
  259. package/lib/table/service/abstract-store-state.service.d.ts +10 -0
  260. package/lib/table/service/convenience-dom.service.d.ts +46 -0
  261. package/lib/table/service/data/collapsed-expanded.data.d.ts +7 -0
  262. package/lib/table/service/data/html-style.type.d.ts +3 -0
  263. package/lib/table/service/dom-service.if.d.ts +9 -0
  264. package/lib/table/service/ge-filter.service.d.ts +5 -0
  265. package/lib/table/service/simple-dom-service.d.ts +10 -0
  266. package/lib/table/service/sorter.service.d.ts +3 -0
  267. package/lib/table/service/store-state-collapsed-expand.service.d.ts +15 -0
  268. package/lib/table/service/store-state-scroll-pos.service.d.ts +10 -0
  269. package/lib/table/service/store-state-sorting.service.d.ts +11 -0
  270. package/lib/table/service/tree-row.service.d.ts +5 -0
  271. package/lib/table/table-api.d.ts +18 -0
  272. package/lib/table/table-scope.d.ts +56 -0
  273. package/package.json +17 -10
  274. package/.eslintrc.json +0 -42
  275. package/LICENSE +0 -35
  276. package/README.md +0 -102
  277. package/jest.config.ts +0 -18
  278. package/ng-package.json +0 -7
  279. package/project.json +0 -47
  280. package/src/lib/table/action/action-id.type.ts +0 -24
  281. package/src/lib/table/action/osx-shortcut-actionId-mapping.ts +0 -29
  282. package/src/lib/table/action/shortcut-actionid-mapping.type.ts +0 -3
  283. package/src/lib/table/action/shortcut.service.ts +0 -134
  284. package/src/lib/table/action/windows-shortcut-actionId-mapping.ts +0 -27
  285. package/src/lib/table/checkbox/checkbox-model.if.ts +0 -16
  286. package/src/lib/table/checkbox/checkbox-model.ts +0 -62
  287. package/src/lib/table/checkbox/tree-checkbox-model.ts +0 -123
  288. package/src/lib/table/color/color-rgb.if.ts +0 -7
  289. package/src/lib/table/color/color-rgb.ts +0 -10
  290. package/src/lib/table/color/ge-css-color-util.ts +0 -43
  291. package/src/lib/table/color/three-color-gradient-arg.if.ts +0 -10
  292. package/src/lib/table/color/three-color-gradient-arg.ts +0 -14
  293. package/src/lib/table/color/two-color-gradient-arg.if.ts +0 -8
  294. package/src/lib/table/color/two-color-gradient-arg.ts +0 -12
  295. package/src/lib/table/css-vars.ts +0 -243
  296. package/src/lib/table/data/common/aligns.ts +0 -19
  297. package/src/lib/table/data/common/area-map-factory.ts +0 -14
  298. package/src/lib/table/data/common/area-map.ts +0 -11
  299. package/src/lib/table/data/common/area-map.type.ts +0 -5
  300. package/src/lib/table/data/common/args-render-cell-div.ts +0 -18
  301. package/src/lib/table/data/common/boolean-function.ts +0 -4
  302. package/src/lib/table/data/common/cell-range.ts +0 -57
  303. package/src/lib/table/data/common/checkbox-column-def.ts +0 -25
  304. package/src/lib/table/data/common/event/ge-cell-indices.ts +0 -9
  305. package/src/lib/table/data/common/event/ge-key-event.ts +0 -10
  306. package/src/lib/table/data/common/event/ge-model-change-event.ts +0 -13
  307. package/src/lib/table/data/common/event/ge-mouse-event.ts +0 -38
  308. package/src/lib/table/data/common/event/input/table-cell-update-event.ts +0 -14
  309. package/src/lib/table/data/common/index-and-px.ts +0 -9
  310. package/src/lib/table/data/common/size.if.ts +0 -4
  311. package/src/lib/table/data/common/size.ts +0 -9
  312. package/src/lib/table/data/common/sizes.ts +0 -35
  313. package/src/lib/table/data/common/sort-item.ts +0 -11
  314. package/src/lib/table/data/common/tree-row-if.ts +0 -11
  315. package/src/lib/table/data/common/tree-row.ts +0 -16
  316. package/src/lib/table/data/common/value-label.if.ts +0 -6
  317. package/src/lib/table/data/common/value-label.ts +0 -13
  318. package/src/lib/table/data/div-scope.type.ts +0 -5
  319. package/src/lib/table/data/event/mouse-target-data.ts +0 -45
  320. package/src/lib/table/data/geo-data.ts +0 -13
  321. package/src/lib/table/data/options/auto-restore-options.if.ts +0 -21
  322. package/src/lib/table/data/options/auto-restore-options.ts +0 -50
  323. package/src/lib/table/data/options/default-row-heights.if.ts +0 -5
  324. package/src/lib/table/data/options/default-row-heights.ts +0 -10
  325. package/src/lib/table/data/options/icon.if.ts +0 -7
  326. package/src/lib/table/data/options/icon.ts +0 -10
  327. package/src/lib/table/data/options/sorted-options.ts +0 -15
  328. package/src/lib/table/data/options/table-options.if.ts +0 -54
  329. package/src/lib/table/data/options/table-options.ts +0 -66
  330. package/src/lib/table/data/options/tree-options.if.ts +0 -10
  331. package/src/lib/table/data/options/tree-options.ts +0 -32
  332. package/src/lib/table/data/table-model-and-options.ts +0 -13
  333. package/src/lib/table/data/tablemodel/areamodel/abstract-area-model.ts +0 -183
  334. package/src/lib/table/data/tablemodel/areamodel/area-model-array-of-arrays.ts +0 -59
  335. package/src/lib/table/data/tablemodel/areamodel/area-model-cell-groups.ts +0 -210
  336. package/src/lib/table/data/tablemodel/areamodel/area-model-hidden.ts +0 -120
  337. package/src/lib/table/data/tablemodel/areamodel/area-model-object-array-with-columndefs.ts +0 -23
  338. package/src/lib/table/data/tablemodel/areamodel/area-model-object-array.ts +0 -105
  339. package/src/lib/table/data/tablemodel/areamodel/area-model-tree.ts +0 -215
  340. package/src/lib/table/data/tablemodel/areamodel/area-model.if.ts +0 -186
  341. package/src/lib/table/data/tablemodel/areamodel/area-model.ts +0 -110
  342. package/src/lib/table/data/tablemodel/areamodel/col-and-rowspan-model.ts +0 -61
  343. package/src/lib/table/data/tablemodel/cellgroup/cell-group-ext.ts +0 -167
  344. package/src/lib/table/data/tablemodel/cellgroup/cell-group.if.ts +0 -12
  345. package/src/lib/table/data/tablemodel/cellgroup/cell-group.ts +0 -18
  346. package/src/lib/table/data/tablemodel/cellgroup/cellgroup-factory.ts +0 -148
  347. package/src/lib/table/data/tablemodel/column/column-def.if.ts +0 -28
  348. package/src/lib/table/data/tablemodel/column/column-def.ts +0 -104
  349. package/src/lib/table/data/tablemodel/padding.ts +0 -9
  350. package/src/lib/table/data/tablemodel/table-model.if.ts +0 -90
  351. package/src/lib/table/data/tablemodel/table-model.ts +0 -352
  352. package/src/lib/table/ele-scope.ts +0 -283
  353. package/src/lib/table/event-adapter.ts +0 -28
  354. package/src/lib/table/event-listener.if.ts +0 -19
  355. package/src/lib/table/factory/table-factory.ts +0 -378
  356. package/src/lib/table/factory/tree-factory.ts +0 -51
  357. package/src/lib/table/focus/focus-model.if.ts +0 -14
  358. package/src/lib/table/focus/focus-model.ts +0 -48
  359. package/src/lib/table/input-handler.ts +0 -34
  360. package/src/lib/table/mouse-handler.ts +0 -236
  361. package/src/lib/table/render-scope.ts +0 -936
  362. package/src/lib/table/renderer/cell-group-ext-cell-renderer.ts +0 -27
  363. package/src/lib/table/renderer/checkbox-boolean-property-cell-renderer.ts +0 -63
  364. package/src/lib/table/renderer/checkbox-cell-renderer.ts +0 -39
  365. package/src/lib/table/renderer/date-to-int-date-cell-renderer.ts +0 -39
  366. package/src/lib/table/renderer/date-to-iso-cell-renderer.ts +0 -25
  367. package/src/lib/table/renderer/date-to-locale-date-cell-renderer.ts +0 -24
  368. package/src/lib/table/renderer/date-to-tec-cell-renderer.ts +0 -28
  369. package/src/lib/table/renderer/edit/edit-input-pipe-for-number.ts +0 -6
  370. package/src/lib/table/renderer/edit/edit-input-pipe.if.ts +0 -7
  371. package/src/lib/table/renderer/edit/input-cell-renderer.ts +0 -41
  372. package/src/lib/table/renderer/edit/select-cell-renderer.ts +0 -60
  373. package/src/lib/table/renderer/male-female-to-icon-cell-renderer.ts +0 -26
  374. package/src/lib/table/renderer/number-cell-renderer.ts +0 -38
  375. package/src/lib/table/renderer/progress-bar-cell-renderer.ts +0 -60
  376. package/src/lib/table/renderer/renderer.ts +0 -11
  377. package/src/lib/table/renderer/star-rating-cell-renderer.ts +0 -45
  378. package/src/lib/table/renderer/true-false-cell-renderer.ts +0 -28
  379. package/src/lib/table/selection/selection-model.if.ts +0 -20
  380. package/src/lib/table/selection/selection-model.ts +0 -109
  381. package/src/lib/table/selection/selection-service.ts +0 -120
  382. package/src/lib/table/service/abstract-store-state.service.ts +0 -105
  383. package/src/lib/table/service/convenience-dom.service.ts +0 -548
  384. package/src/lib/table/service/data/collapsed-expanded.data.ts +0 -11
  385. package/src/lib/table/service/data/html-style.type.ts +0 -1
  386. package/src/lib/table/service/dom-service.if.ts +0 -16
  387. package/src/lib/table/service/ge-filter.service.ts +0 -123
  388. package/src/lib/table/service/simple-dom-service.ts +0 -46
  389. package/src/lib/table/service/sorter.service.ts +0 -30
  390. package/src/lib/table/service/store-state-collapsed-expand.service.ts +0 -76
  391. package/src/lib/table/service/store-state-scroll-pos.service.ts +0 -40
  392. package/src/lib/table/service/store-state-sorting.service.ts +0 -41
  393. package/src/lib/table/service/tree-row.service.ts +0 -31
  394. package/src/lib/table/table-api.ts +0 -61
  395. package/src/lib/table/table-scope.ts +0 -433
  396. package/src/test-setup.ts +0 -1
  397. package/tsconfig.json +0 -22
  398. package/tsconfig.lib.json +0 -19
  399. package/tsconfig.lib.prod.json +0 -7
  400. package/tsconfig.spec.json +0 -20
  401. /package/{src/lib/table/data/common/checked-type.ts → lib/table/data/common/checked-type.d.ts} +0 -0
  402. /package/{src/lib/table/data/common/filter-function.ts → lib/table/data/common/filter-function.d.ts} +0 -0
  403. /package/{src/lib/table/data/common/get-t.ts → lib/table/data/common/get-t.d.ts} +0 -0
  404. /package/{src/lib/table/data/common/sort-state.type.ts → lib/table/data/common/sort-state.type.d.ts} +0 -0
  405. /package/{src/lib/table/data/common/tree-arrow.type.ts → lib/table/data/common/tree-arrow.type.d.ts} +0 -0
  406. /package/{src/lib/table/data/side-ident.type.ts → lib/table/data/side-ident.type.d.ts} +0 -0
  407. /package/{src/lib/table/renderer/renderer-cleanup-fn.type.ts → lib/table/renderer/renderer-cleanup-fn.type.d.ts} +0 -0
@@ -1,548 +0,0 @@
1
- import { DomServiceIf } from "./dom-service.if";
2
- import { DivScope } from "./../data/div-scope.type";
3
- import { GeoData } from "./../data/geo-data";
4
- import { TreeArrowType } from "../data/common/tree-arrow.type";
5
- import { TreeOptionsIf } from "../data/options/tree-options.if";
6
- import { TreeOptions } from "../data/options/tree-options";
7
- import { AreaIdent } from "../data/tablemodel/area-ident.type";
8
- import { IconIf } from "../data/options/icon.if";
9
- import { TableOptionsIf } from "../data/options/table-options.if";
10
- import { CheckedType } from "../data/common/checked-type";
11
- import { SideIdent } from "../data/side-ident.type";
12
- import { SortState } from "../data/common/sort-state.type";
13
- import { SortedOptions } from "../data/options/sorted-options";
14
- import { SortedOptionsIf } from "../data/options/sorted-options.if";
15
- import { HtmlStyle } from "./data/html-style.type";
16
-
17
-
18
- export class ConvenienceDomService {
19
-
20
- constructor(
21
- public readonly domService: DomServiceIf
22
- ) {
23
- }
24
-
25
-
26
- setStyle(el: any, style: string, value: any): any {
27
- this.domService.setStyle(el, style, value);
28
- return el;
29
- };
30
-
31
-
32
- applyStyle(ele: HTMLDivElement, style: HtmlStyle): HTMLDivElement {
33
- for (const key in style) {
34
- this.domService.setStyle(ele, key, style[key]);
35
- }
36
- return ele;
37
- }
38
-
39
- applyDisplayNoneStyle(ele: HTMLDivElement): HTMLDivElement {
40
- this.domService.setStyle(ele, "display", "none");
41
- return ele;
42
- }
43
-
44
- applyDisplayBlockStyle(ele: HTMLDivElement): HTMLDivElement {
45
- this.domService.setStyle(ele, "display", "block");
46
- return ele;
47
- }
48
-
49
- applyStyleInPx(ele: HTMLDivElement, geoData: GeoData): HTMLDivElement {
50
- Object.entries(geoData)
51
- .forEach(([key, value]) => this.domService.setStyle(ele, key, value + "px"));
52
- return ele;
53
- }
54
-
55
- applyStylePosistionRelative(ele: HTMLDivElement): HTMLDivElement {
56
- this.domService.setStyle(ele, "position", "relative");
57
- this.domService.setStyle(ele, "overflow", "clip");
58
- return ele;
59
- }
60
-
61
- applyStylePosistionAbsolute(ele: HTMLDivElement): HTMLDivElement {
62
- this.domService.setStyle(ele, "position", "absolute");
63
- return ele;
64
- }
65
-
66
- applyStyleFullSize(ele: HTMLDivElement): HTMLDivElement {
67
- this.domService.setStyle(ele, "width", "100%");
68
- this.domService.setStyle(ele, "height", "100%");
69
- return ele;
70
- }
71
-
72
- applyStyleOverflowAuto(
73
- overflowX: "scroll" | "auto" = "auto",
74
- overflowY: "scroll" | "auto" = "auto",
75
- ele: HTMLDivElement
76
- ): HTMLDivElement {
77
- this.domService.setStyle(ele, "overflow-x", overflowX);
78
- this.domService.setStyle(ele, "overflow-y", overflowY);
79
- return ele;
80
- }
81
-
82
- applyStyleNoPadding(ele: HTMLDivElement): HTMLDivElement {
83
- this.domService.setStyle(ele, "padding", "0");
84
- this.domService.setStyle(ele, "margin", "0");
85
- this.domService.setStyle(ele, "border", "0");
86
- return ele;
87
- }
88
-
89
- appendRelativeChildDiv(parent: HTMLDivElement): DivScope {
90
- const child =
91
- this.applyStylePosistionRelative(
92
- this.applyStyleFullSize(
93
- this.applyStyleNoPadding(
94
- this.domService.createElement<HTMLDivElement>("div")
95
- )
96
- )
97
- );
98
- this.domService.appendChild(parent, child);
99
- this.applyStylePosistionAbsolute(parent);
100
- const cache = {};
101
- return { parent, child, cache };
102
- }
103
-
104
- appendText(parent: HTMLDivElement, text: string): HTMLElement {
105
- const div = this.domService.createText(text);
106
- this.domService.appendChild(parent, div);
107
- return div;
108
- }
109
-
110
-
111
- addClass(clazz: string, div: HTMLDivElement) {
112
- if (clazz.includes(" ")) {
113
- clazz.split(" ").forEach(c => this.domService.addClass(div, c));
114
- } else {
115
- this.domService.addClass(div, clazz);
116
- }
117
- return div;
118
- }
119
-
120
- addClasses(classes: string[] | undefined, div: HTMLDivElement) {
121
- if (classes) {
122
- for (const c of classes) {
123
- this.domService.addClass(div, c);
124
- }
125
- }
126
- return div;
127
- }
128
-
129
- setAttribute(div: HTMLDivElement, key: string, value: string) {
130
- if (key && value) {
131
- this.domService.setAttribute(div, key, value);
132
- }
133
- return div;
134
- }
135
-
136
-
137
- createAreaDivWithClass(clazz: string, parent: HTMLDivElement, areaIdent: AreaIdent, sideIdent: SideIdent): HTMLDivElement {
138
- const div = this.domService.createElement<HTMLDivElement>("div");
139
- this.addClass(clazz, div);
140
- this.domService.setAttribute(div, "data-area", areaIdent);
141
- this.domService.setAttribute(div, "data-side", sideIdent);
142
- this.domService.appendChild(parent, div);
143
- return div;
144
- }
145
-
146
- createDivWithClass(clazz: string, parent: HTMLDivElement): HTMLDivElement {
147
- const div = this.domService.createElement<HTMLDivElement>("div");
148
- this.addClass(clazz, div);
149
- this.domService.appendChild(parent, div);
150
- return div;
151
- }
152
-
153
-
154
- addRowDiv(
155
- divScope: DivScope,
156
- geo: GeoData,
157
- rowIndex: number = -1,
158
- areaIdent: AreaIdent,
159
- sideIdent: SideIdent,
160
- text: string = ""
161
- ): HTMLDivElement {
162
-
163
- const cacheKey = geo.index ?? -1;
164
- const div = this.getDivOrCreateDiv(cacheKey, divScope);
165
-
166
- this.domService.addClass(div, "ge-table-row-div");
167
- this.domService.addClass(div, `ge-table-row-div-${geo.index}`);
168
- if (areaIdent === "body" && sideIdent === "center") {
169
- const oddEven = (geo?.index ?? 0) % 2 === 0 ? "even" : "odd";
170
- this.domService.addClass(div, `ge-table-row-${oddEven}`);
171
- }
172
- this.domService.setStyle(div, "display", "clip");
173
- this.domService.setStyle(div, "position", "absolute");
174
-
175
- this.domService.setStyle(div, "left", `${geo.left}px`);
176
- this.domService.setStyle(div, "top", `${geo.top}px`);
177
- this.domService.setStyle(div, "width", `${geo.width}px`);
178
- this.domService.setStyle(div, "height", `${geo.height}px`);
179
- this.domService.setAttribute(div, "data-row-index", `${rowIndex}`);
180
- this.domService.setAttribute(div, "data-area", `${areaIdent}`);
181
-
182
- // debugging:
183
- if (text) {
184
- const textElement = this.domService.createText(text);
185
- this.domService.appendChild(div, textElement);
186
- }
187
- // -------------
188
-
189
- this.domService.appendChild(divScope.child, div);
190
- return div;
191
- }
192
-
193
-
194
- addColumnDiv(
195
- parent: HTMLDivElement,
196
- geo: GeoData,
197
- rowIndex: number = -1,
198
- columnIndex: number = -1,
199
- areaIdent: AreaIdent,
200
- sideIdent: SideIdent,
201
- text: string = "",
202
- treeArrow?: TreeArrowType,
203
- tableOptions?: TableOptionsIf,
204
- checkedType: CheckedType | undefined = undefined,
205
- sortState?: SortState
206
- ): HTMLDivElement {
207
-
208
- const treeOptions = tableOptions?.treeOptions;
209
- const checkboxWithoutExtraColumn = tableOptions?.showCheckboxWihoutExtraColumn;
210
-
211
- const div = this.domService.createElement<HTMLDivElement>("div");
212
- this.domService.addClass(div, "ge-table-col-div");
213
- this.domService.addClass(div, `ge-table-col-div-${geo.index}`);
214
- this.domService.setAttribute(div, "data-col-index", `${geo.index}`);
215
- this.domService.setAttribute(div, "data-row-index", `${rowIndex}`);
216
- this.domService.setAttribute(div, "data-area", `${areaIdent}`);
217
- const oddEven = (geo?.index ?? 0) % 2 === 0 ? "even" : "odd";
218
- if (areaIdent === "body" && sideIdent === "center") {
219
- this.domService.addClass(div, `ge-table-column-${oddEven}`);
220
- }
221
-
222
- this.domService.setStyle(div, "display", "clip");
223
- this.domService.setStyle(div, "position", "absolute");
224
- this.domService.setStyle(div, "left", `${geo.left}px`);
225
- this.domService.setStyle(div, "top", `${geo.top}px`);
226
- this.domService.setStyle(div, "width", `${geo.width}px`);
227
- this.domService.setStyle(div, "height", `${geo.height}px`);
228
-
229
- if (treeArrow && treeArrow !== "none") {
230
- this.domService.addClass(div, "ge-table-col-tree");
231
- this.addArrowDiv(div, treeArrow, treeOptions, rowIndex, columnIndex, areaIdent);
232
- }
233
- if (checkboxWithoutExtraColumn && columnIndex === 0 && checkedType) {
234
- this.addCheckboxToDiv(div, checkedType, areaIdent, rowIndex);
235
- }
236
- if (text) {
237
- const firstTreeColumn = (treeArrow !== "none" && columnIndex === 0);
238
- this.addLabelDiv(div, text, firstTreeColumn, rowIndex, columnIndex, areaIdent);
239
- }
240
- if (sortState) {
241
- this.addSortedIcon(div, sortState, tableOptions?.sortedOptions, columnIndex);
242
- }
243
-
244
-
245
- this.domService.appendChild(parent, div);
246
- return div;
247
- }
248
-
249
-
250
- addCheckboxToDiv(
251
- parent: HTMLDivElement,
252
- checkedType: CheckedType,
253
- areaIdent: AreaIdent,
254
- rowIndex: number): HTMLDivElement {
255
-
256
- const div = this.domService.createElement<HTMLDivElement>("div");
257
- const checked = (checkedType === "full") ? "checked" : "";
258
- div.innerHTML = `
259
- <input
260
- type="checkbox"
261
- data-area="${areaIdent}"
262
- data-row-index="${rowIndex}"
263
- data-input-type="checkbox"
264
- ${checked}
265
- class="ge-table-row-checkbox"> `;
266
- this.domService.setStyle(div, "display", "inline");
267
- this.domService.setStyle(div, "width", "inherit");
268
- this.domService.setAttribute(div, "data-row-index", `${rowIndex}`);
269
- this.domService.appendChild(parent, div);
270
- return div;
271
- }
272
-
273
-
274
- addLabelDiv(
275
- parent: HTMLDivElement,
276
- text: string = "",
277
- firstTreeColumn: boolean = false,
278
- rowIndex: number = -1,
279
- columnIndex: number = -1,
280
- areaIdent: AreaIdent = "body"): HTMLDivElement {
281
-
282
- const div = this.domService.createElement<HTMLDivElement>("div");
283
- this.domService.addClass(div, "ge-table-label-div");
284
- // this.domService.setStyle(div, 'display', 'inline');
285
- this.domService.setStyle(div, "position", "relative");
286
- this.domService.setStyle(div, "background", "transparent");
287
- this.domService.setStyle(div, "width", "100%");
288
- this.domService.setStyle(div, "height", "100%");
289
- this.domService.setAttribute(div, "data-row-index", `${rowIndex}`);
290
- this.domService.setAttribute(div, "data-col-index", `${columnIndex}`);
291
- this.domService.setAttribute(div, "data-area", `${areaIdent}`);
292
-
293
- if (text) {
294
- if (firstTreeColumn) {
295
- const textElement = this.domService.createText(text);
296
- this.domService.appendChild(div, textElement);
297
- } else {
298
- // normal cell:
299
- const div2 = this.domService.createElement<HTMLDivElement>("div");
300
- this.domService.appendChild(div, div2);
301
- const textElement = this.domService.createText(text);
302
- this.domService.addClass(div2, "ge-table-label");
303
- this.domService.appendChild(div2, textElement);
304
- this.domService.setAttribute(div2, "data-row-index", `${rowIndex}`);
305
- this.domService.setAttribute(div2, "data-col-index", `${columnIndex}`);
306
- this.domService.setAttribute(div2, "data-area", `${areaIdent}`);
307
- }
308
- }
309
-
310
- this.domService.appendChild(parent, div);
311
- return div;
312
- }
313
-
314
- addSortedIcon(
315
- parent: HTMLDivElement,
316
- sorted: SortState = "",
317
- sortedOptions: SortedOptionsIf = new SortedOptions(),
318
- columnIndex: number = -1
319
- ): HTMLDivElement {
320
-
321
- const div = this.domService.createElement<HTMLDivElement>("div");
322
- this.domService.addClass(div, "ge-table-sorted-icon-div");
323
- this.domService.setStyle(div, "position", "absolute");
324
- this.domService.setStyle(div, "top", "0");
325
- this.domService.setStyle(div, "right", "0");
326
- this.domService.setStyle(div, "width", "20px");
327
- this.domService.setStyle(div, "background", "transparent");
328
- this.domService.setStyle(div, "cursor", "pointer");
329
- this.domService.setAttribute(div, "data-col-index", `${columnIndex}`);
330
- this.domService.setAttribute(div, "data-area", "header");
331
-
332
- let treeOptionsArrow: IconIf;
333
- if (sorted === "asc") {
334
- treeOptionsArrow = sortedOptions.iconAsc;
335
- } else if (sorted === "desc") {
336
- treeOptionsArrow = sortedOptions.iconDesc;
337
- } else {
338
- treeOptionsArrow = sortedOptions.iconPlaceholder;
339
- }
340
- // Text:
341
- const content = treeOptionsArrow.content;
342
- const textElement = this.domService.createText(content);
343
- this.domService.appendChild(div, textElement);
344
-
345
- // Style:
346
- if (treeOptionsArrow.style) {
347
- this.applyStyleString(div, treeOptionsArrow.style);
348
- }
349
-
350
- // Classes:
351
- for (const clazz of treeOptionsArrow.classes) {
352
- this.domService.addClass(div, clazz);
353
- }
354
-
355
- this.domService.appendChild(parent, div);
356
- return div;
357
- }
358
-
359
-
360
- addArrowDiv(
361
- parent: HTMLDivElement,
362
- arrow: TreeArrowType = "none",
363
- treeOptions: TreeOptionsIf = new TreeOptions(),
364
- rowIndex: number = -1,
365
- columnIndex: number = -1,
366
- areaIdent: AreaIdent = "body"
367
- ): HTMLDivElement {
368
- const div = this.domService.createElement<HTMLDivElement>("div");
369
- this.domService.addClass(div, "ge-table-tree-arrow-div");
370
- this.domService.setStyle(div, "display", "inline-block");
371
- this.domService.setStyle(div, "position", "");
372
- this.domService.setStyle(div, "width", "20px");
373
- this.domService.setStyle(div, "background", "transparent");
374
- this.domService.setStyle(div, "cursor", "pointer");
375
- this.domService.setAttribute(div, "data-row-index", `${rowIndex}`);
376
- this.domService.setAttribute(div, "data-col-index", `${columnIndex}`);
377
- this.domService.setAttribute(div, "data-area", `${areaIdent}`);
378
-
379
- let treeOptionsArrow: IconIf;
380
- if (arrow === "expanded") {
381
- treeOptionsArrow = treeOptions.arrowExpanded;
382
- } else if (arrow === "collapsed") {
383
- treeOptionsArrow = treeOptions.arrowCollapsed;
384
- } else {
385
- treeOptionsArrow = treeOptions.arrowPlaceholder;
386
- }
387
- // Text:
388
- const content = treeOptionsArrow.content;
389
- const textElement = this.domService.createText(content);
390
- this.domService.appendChild(div, textElement);
391
-
392
- // Style:
393
- if (treeOptionsArrow.style) {
394
- this.applyStyleString(div, treeOptionsArrow.style);
395
- }
396
-
397
- // Classes:
398
- for (const clazz of treeOptionsArrow.classes) {
399
- this.domService.addClass(div, clazz);
400
- }
401
-
402
- this.domService.appendChild(parent, div);
403
- return div;
404
- }
405
-
406
- addColumnBorderDivs(
407
- tableOptions: TableOptionsIf,
408
- parent: HTMLDivElement,
409
- geo: GeoData,
410
- areaIdent: AreaIdent,
411
- sideIdent: SideIdent
412
- ): HTMLDivElement {
413
- if (tableOptions.verticalBorderVisible) {
414
- const clazz = `ge-table-${areaIdent}-${sideIdent}-vertical-border`;
415
- this.addVerticalBorder(geo, parent, clazz);
416
- }
417
- if (tableOptions.horizontalBorderVisible) {
418
- const clazz = `ge-table-${areaIdent}-${sideIdent}-horizontal-border`;
419
- this.addHorizontalBorder(geo, parent, clazz);
420
- }
421
-
422
- return parent;
423
- }
424
-
425
-
426
- addHorizontalBorder(
427
- geo: GeoData,
428
- parent: HTMLDivElement,
429
- clazz: string = "ge-table-body-center-horizontal-border"): HTMLDivElement {
430
- // Border south:
431
- const div = this.domService.createElement<HTMLDivElement>("div");
432
- this.domService.addClass(div, clazz);
433
- this.domService.setStyle(div, "display", "clip");
434
- this.domService.setStyle(div, "position", "absolute");
435
- this.domService.setStyle(div, "left", `${geo.left}px`);
436
- this.domService.setStyle(div, "top", `${(geo.top)}px`);
437
- this.domService.setStyle(div, "width", `${geo.width}px`);
438
- this.domService.setStyle(div, "height", `1px`);
439
- this.domService.appendChild(parent, div);
440
- return div;
441
- }
442
-
443
- addFocusBorderDivs(parent: HTMLDivElement, geo: GeoData, style: HtmlStyle): HTMLDivElement {
444
- // Border west:
445
- let div = this.domService.createElement<HTMLDivElement>("div");
446
- this.domService.addClass(div, "ge-table-focus-border");
447
- this.domService.setStyle(div, "display", "clip");
448
- this.domService.setStyle(div, "position", "absolute");
449
- this.domService.setStyle(div, "left", `${geo.left}px`);
450
- this.domService.setStyle(div, "top", `${geo.top}px`);
451
- this.domService.setStyle(div, "width", `1px`);
452
- this.domService.setStyle(div, "height", `${geo.height}px`);
453
- this.applyStyle(div, style);
454
- this.domService.appendChild(parent, div);
455
-
456
- // Border east:
457
- div = this.domService.createElement<HTMLDivElement>("div");
458
- this.domService.addClass(div, "ge-table-focus-border");
459
- this.domService.setStyle(div, "display", "clip");
460
- this.domService.setStyle(div, "position", "absolute");
461
- this.domService.setStyle(div, "left", `${geo.left + geo.width - 1}px`);
462
- this.domService.setStyle(div, "top", `${geo.top}px`);
463
- this.domService.setStyle(div, "width", `1px`);
464
- this.domService.setStyle(div, "height", `${geo.height}px`);
465
- this.applyStyle(div, style);
466
- this.domService.appendChild(parent, div);
467
-
468
- // Border north:
469
- div = this.domService.createElement<HTMLDivElement>("div");
470
- this.domService.addClass(div, "ge-table-focus-border");
471
- this.domService.setStyle(div, "display", "clip");
472
- this.domService.setStyle(div, "position", "absolute");
473
- this.domService.setStyle(div, "left", `${geo.left}px`);
474
- this.domService.setStyle(div, "top", `${(geo.top)}px`);
475
- this.domService.setStyle(div, "width", `${geo.width}px`);
476
- this.domService.setStyle(div, "height", `1px`);
477
- this.applyStyle(div, style);
478
- this.domService.appendChild(parent, div);
479
-
480
-
481
- // Border south:
482
- div = this.domService.createElement<HTMLDivElement>("div");
483
- this.domService.addClass(div, "ge-table-focus-border");
484
- this.domService.setStyle(div, "display", "clip");
485
- this.domService.setStyle(div, "position", "absolute");
486
- this.domService.setStyle(div, "left", `${geo.left}px`);
487
- this.domService.setStyle(div, "top", `${(geo.top + geo.height - 1)}px`);
488
- this.domService.setStyle(div, "width", `${geo.width}px`);
489
- this.domService.setStyle(div, "height", `1px`);
490
- this.applyStyle(div, style);
491
- this.domService.appendChild(parent, div);
492
-
493
- return parent;
494
- }
495
-
496
- addVerticalBorder(
497
- geo: GeoData,
498
- parent: HTMLDivElement,
499
- clazz: string = "ge-table-body-center-vertical-border"
500
- ): HTMLDivElement {
501
- // Border east:
502
- const div = this.domService.createElement<HTMLDivElement>("div");
503
- this.domService.addClass(div, clazz);
504
- this.domService.setStyle(div, "display", "clip");
505
- this.domService.setStyle(div, "position", "absolute");
506
- this.domService.setStyle(div, "left", `${geo.left}px`);
507
- this.domService.setStyle(div, "top", `${geo.top}px`);
508
- this.domService.setStyle(div, "width", `1px`);
509
- this.domService.setStyle(div, "height", `${geo.height}px`);
510
- this.domService.appendChild(parent, div);
511
- return div;
512
- }
513
-
514
- addDiv(parent: HTMLDivElement, geo: GeoData, clazz: string = ""): HTMLDivElement {
515
- const div = this.domService.createElement<HTMLDivElement>("div");
516
- if (clazz) {
517
- this.domService.addClass(div, clazz);
518
- }
519
- this.domService.setStyle(div, "display", "clip");
520
- this.domService.setStyle(div, "position", "absolute");
521
- this.domService.setStyle(div, "left", `${geo.left}px`);
522
- this.domService.setStyle(div, "top", `${geo.top}px`);
523
- this.domService.setStyle(div, "width", `${geo.width}px`);
524
- this.domService.setStyle(div, "height", `${geo.height}px`);
525
- this.domService.appendChild(parent, div);
526
- return div;
527
- }
528
-
529
- applyStyleString(div: HTMLDivElement, style: string) {
530
- // transform: rotate(-90deg) translate(-100%, 0); transform-origin: left top; font-size: 1.5em;
531
- const cmds = style.split(";").map(s => s.trim()).filter(s => s);
532
- for (const cmd of cmds) {
533
- const [key, value] = cmd.split(":");
534
- this.domService.setStyle(div, key.trim(), value.trim());
535
- }
536
- }
537
-
538
- private getDivOrCreateDiv(cacheKey: number, divScope: DivScope): HTMLDivElement {
539
- let div = divScope.cache[cacheKey];
540
- if (div) {
541
- div.innerText = ""; // erst mal leer machen, später col-cache nutzen
542
- return div;
543
- }
544
- div = this.domService.createElement<HTMLDivElement>("div");
545
- divScope.cache[cacheKey] = div;
546
- return div;
547
- }
548
- }
@@ -1,11 +0,0 @@
1
- export class CollapsedExpandedData {
2
-
3
- constructor(
4
- public mode: "collapsed" | "expanded" = "collapsed",
5
- public rowIds: Array<string | number> = [],
6
- public allCollapsed: boolean = false,
7
- public allExpanded: boolean = false
8
- ) {
9
- }
10
-
11
- }
@@ -1 +0,0 @@
1
- export type HtmlStyle = { [key: string]: string | number };
@@ -1,16 +0,0 @@
1
- export interface DomServiceIf {
2
-
3
- setStyle(el: any, style: string, value: any): any;
4
-
5
- addClass(div: HTMLElement, clazz: string): HTMLDivElement;
6
-
7
- createElement<T>(ele: string): T;
8
-
9
- createText(text: string): HTMLElement;
10
-
11
- appendText(parent: HTMLDivElement, text: string): HTMLDivElement;
12
-
13
- appendChild(parent: HTMLElement, child: HTMLElement): void;
14
-
15
- setAttribute(ele: HTMLElement, key: string, value: string): void;
16
- }
@@ -1,123 +0,0 @@
1
- export class GeFilterService {
2
-
3
-
4
- filterPredict<T>(
5
- item: T,
6
- filterString: string,
7
- toString: (t: T) => string = this.objectToString.bind(this)
8
- ): boolean {
9
-
10
- if (!item) {
11
- return false;
12
- }
13
- if (!filterString) {
14
- return true;
15
- }
16
- filterString = filterString.toLowerCase();
17
-
18
- const prefixMust = "+";
19
- const prefixNot = "-";
20
- const arr = filterString.toLowerCase().split(" ").filter(s => s !== prefixMust && s !== prefixNot && s !== "");
21
-
22
- const ors: string[] = arr
23
- .filter(f => !f.startsWith(prefixMust) && !f.startsWith(prefixNot));
24
-
25
- const musts: string[] = arr
26
- .filter(f => f.startsWith(prefixMust))
27
- .map(s => s.replace(/\+/g, ""));
28
-
29
- const nots: string[] = arr
30
- .filter(f => f.startsWith(prefixNot))
31
- .map(s => s.replace(/-/g, ""));
32
-
33
- let or = !ors.length;
34
- for (let i = 0; i < ors.length; i++) {
35
- if (or || toString(item).includes(ors[i])) {
36
- or = true;
37
- }
38
- }
39
- if (!or) {
40
- return false;
41
- }
42
- for (let i = 0; i < musts.length; i++) {
43
- if (!toString(item).includes(musts[i])) {
44
- return false;
45
- }
46
- }
47
- for (let i = 0; i < nots.length; i++) {
48
- if (toString(item).includes(nots[i])) {
49
- return false;
50
- }
51
- }
52
- return true;
53
- }
54
-
55
-
56
- filterRows<T>(
57
- rows: T[],
58
- filterString: string,
59
- toString: (t: T) => string = (t: T) => JSON.stringify(t).toLowerCase()
60
- ): T[] {
61
-
62
- if (!rows) {
63
- return [];
64
- }
65
- if (!filterString) {
66
- return [...rows];
67
- }
68
- filterString = filterString.toLowerCase();
69
-
70
- const prefixMust = "+";
71
- const prefixNot = "-";
72
- const arr = filterString.toLowerCase().split(" ").filter(s => s !== prefixMust && s !== prefixNot && s !== "");
73
-
74
- const ors: string[] = arr
75
- .filter(f => !f.startsWith(prefixMust) && !f.startsWith(prefixNot));
76
-
77
- const musts: string[] = arr
78
- .filter(f => f.startsWith(prefixMust))
79
- .map(s => s.replace(/\+/g, ""));
80
-
81
- const nots: string[] = arr
82
- .filter(f => f.startsWith(prefixNot))
83
- .map(s => s.replace(/-/g, ""));
84
-
85
- return rows?.filter(f => {
86
- let or = !ors.length;
87
- for (let i = 0; i < ors.length; i++) {
88
- if (or || toString(f).includes(ors[i])) {
89
- or = true;
90
- }
91
- }
92
- if (!or) {
93
- return false;
94
- }
95
- for (let i = 0; i < musts.length; i++) {
96
- if (!toString(f).includes(musts[i])) {
97
- return false;
98
- }
99
- }
100
- for (let i = 0; i < nots.length; i++) {
101
- if (toString(f).includes(nots[i])) {
102
- return false;
103
- }
104
- }
105
- return true;
106
- });
107
- }
108
-
109
- objectToString<T>(o: T): string {
110
- if (!o) {
111
- return "";
112
- }
113
- const buf: unknown[] = [];
114
- const keys = Object.keys(o);
115
- for (let i = 0; i < keys.length; i++) {
116
- const key = keys[i];
117
- // @ts-ignore
118
- buf.push(o[key]);
119
- }
120
- return buf.join(" ").toLowerCase();
121
- }
122
-
123
- }