@guiexpert/table 0.0.2 → 1.0.1

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 (348) hide show
  1. package/.eslintrc.json +42 -0
  2. package/LICENSE +35 -0
  3. package/README.md +102 -0
  4. package/jest.config.ts +18 -0
  5. package/ng-package.json +7 -0
  6. package/package.json +10 -20
  7. package/project.json +47 -0
  8. package/{index.d.ts → src/index.ts} +69 -20
  9. package/src/lib/table/action/action-id.type.ts +24 -0
  10. package/{lib/table/action/on-action-triggered.if.d.ts → src/lib/table/action/on-action-triggered.if.ts} +4 -1
  11. package/src/lib/table/action/osx-shortcut-actionId-mapping.ts +29 -0
  12. package/src/lib/table/action/shortcut-actionid-mapping.type.ts +3 -0
  13. package/src/lib/table/action/shortcut.service.ts +134 -0
  14. package/src/lib/table/action/windows-shortcut-actionId-mapping.ts +27 -0
  15. package/src/lib/table/checkbox/checkbox-model.if.ts +16 -0
  16. package/src/lib/table/checkbox/checkbox-model.ts +62 -0
  17. package/src/lib/table/checkbox/tree-checkbox-model.ts +123 -0
  18. package/src/lib/table/color/color-rgb.if.ts +7 -0
  19. package/src/lib/table/color/color-rgb.ts +10 -0
  20. package/src/lib/table/color/ge-css-color-util.ts +43 -0
  21. package/src/lib/table/color/three-color-gradient-arg.if.ts +10 -0
  22. package/src/lib/table/color/three-color-gradient-arg.ts +14 -0
  23. package/src/lib/table/color/two-color-gradient-arg.if.ts +8 -0
  24. package/src/lib/table/color/two-color-gradient-arg.ts +12 -0
  25. package/src/lib/table/css-vars.ts +243 -0
  26. package/src/lib/table/data/common/aligns.ts +19 -0
  27. package/src/lib/table/data/common/area-map-factory.ts +14 -0
  28. package/src/lib/table/data/common/area-map.ts +11 -0
  29. package/src/lib/table/data/common/area-map.type.ts +5 -0
  30. package/{lib/table/data/common/args-adjust-columns-to-row-parent-params.d.ts → src/lib/table/data/common/args-adjust-columns-to-row-parent-params.ts} +11 -9
  31. package/src/lib/table/data/common/args-render-cell-div.ts +18 -0
  32. package/src/lib/table/data/common/boolean-function.ts +4 -0
  33. package/src/lib/table/data/common/cell-range.ts +57 -0
  34. package/src/lib/table/data/common/checkbox-column-def.ts +25 -0
  35. package/src/lib/table/data/common/checked-type.ts +1 -0
  36. package/src/lib/table/data/common/event/ge-cell-indices.ts +9 -0
  37. package/src/lib/table/data/common/event/ge-key-event.ts +10 -0
  38. package/src/lib/table/data/common/event/ge-model-change-event.ts +13 -0
  39. package/src/lib/table/data/common/event/ge-mouse-event.ts +38 -0
  40. package/src/lib/table/data/common/event/input/table-cell-update-event.if.ts +10 -0
  41. package/src/lib/table/data/common/event/input/table-cell-update-event.ts +14 -0
  42. package/src/lib/table/data/common/index-and-px.ts +9 -0
  43. package/src/lib/table/data/common/size.if.ts +4 -0
  44. package/src/lib/table/data/common/size.ts +9 -0
  45. package/src/lib/table/data/common/sizes.ts +35 -0
  46. package/src/lib/table/data/common/sort-item.ts +11 -0
  47. package/src/lib/table/data/common/tree-row-if.ts +11 -0
  48. package/src/lib/table/data/common/tree-row.ts +16 -0
  49. package/src/lib/table/data/common/value-label.if.ts +6 -0
  50. package/src/lib/table/data/common/value-label.ts +13 -0
  51. package/src/lib/table/data/div-scope.type.ts +5 -0
  52. package/src/lib/table/data/event/mouse-target-data.ts +45 -0
  53. package/src/lib/table/data/geo-data.ts +13 -0
  54. package/src/lib/table/data/options/auto-restore-options.if.ts +21 -0
  55. package/src/lib/table/data/options/auto-restore-options.ts +50 -0
  56. package/src/lib/table/data/options/default-row-heights.if.ts +5 -0
  57. package/src/lib/table/data/options/default-row-heights.ts +10 -0
  58. package/src/lib/table/data/options/icon.if.ts +7 -0
  59. package/src/lib/table/data/options/icon.ts +10 -0
  60. package/{lib/table/data/options/sorted-options.if.d.ts → src/lib/table/data/options/sorted-options.if.ts} +6 -3
  61. package/src/lib/table/data/options/sorted-options.ts +15 -0
  62. package/src/lib/table/data/options/table-options.if.ts +54 -0
  63. package/src/lib/table/data/options/table-options.ts +66 -0
  64. package/src/lib/table/data/options/tree-options.if.ts +10 -0
  65. package/src/lib/table/data/options/tree-options.ts +32 -0
  66. package/src/lib/table/data/table-model-and-options.if.ts +8 -0
  67. package/src/lib/table/data/table-model-and-options.ts +13 -0
  68. package/src/lib/table/data/tablemodel/area-ident.type.ts +18 -0
  69. package/src/lib/table/data/tablemodel/areamodel/abstract-area-model.ts +183 -0
  70. package/src/lib/table/data/tablemodel/areamodel/area-model-array-of-arrays.ts +59 -0
  71. package/src/lib/table/data/tablemodel/areamodel/area-model-cell-groups.ts +210 -0
  72. package/src/lib/table/data/tablemodel/areamodel/area-model-hidden.ts +120 -0
  73. package/src/lib/table/data/tablemodel/areamodel/area-model-object-array-with-columndefs.ts +23 -0
  74. package/src/lib/table/data/tablemodel/areamodel/area-model-object-array.ts +105 -0
  75. package/src/lib/table/data/tablemodel/areamodel/area-model-tree.ts +215 -0
  76. package/src/lib/table/data/tablemodel/areamodel/area-model.if.ts +186 -0
  77. package/src/lib/table/data/tablemodel/areamodel/area-model.ts +110 -0
  78. package/src/lib/table/data/tablemodel/areamodel/col-and-rowspan-model.ts +61 -0
  79. package/src/lib/table/data/tablemodel/areamodel/has-default-row-height-if.ts +3 -0
  80. package/src/lib/table/data/tablemodel/cellgroup/cell-group-ext.ts +167 -0
  81. package/src/lib/table/data/tablemodel/cellgroup/cell-group.if.ts +12 -0
  82. package/src/lib/table/data/tablemodel/cellgroup/cell-group.ts +18 -0
  83. package/src/lib/table/data/tablemodel/cellgroup/cellgroup-factory.ts +148 -0
  84. package/src/lib/table/data/tablemodel/column/column-def.if.ts +28 -0
  85. package/src/lib/table/data/tablemodel/column/column-def.ts +104 -0
  86. package/src/lib/table/data/tablemodel/padding.ts +9 -0
  87. package/src/lib/table/data/tablemodel/table-model.if.ts +90 -0
  88. package/src/lib/table/data/tablemodel/table-model.ts +352 -0
  89. package/src/lib/table/ele-scope.ts +283 -0
  90. package/src/lib/table/event-adapter.ts +28 -0
  91. package/src/lib/table/event-listener.if.ts +19 -0
  92. package/src/lib/table/factory/table-factory.ts +378 -0
  93. package/src/lib/table/factory/tree-factory.ts +51 -0
  94. package/src/lib/table/focus/focus-model.if.ts +14 -0
  95. package/src/lib/table/focus/focus-model.ts +48 -0
  96. package/{lib/table/focus/focus.type.d.ts → src/lib/table/focus/focus.type.ts} +3 -0
  97. package/src/lib/table/input-handler.ts +34 -0
  98. package/src/lib/table/mouse-handler.ts +237 -0
  99. package/src/lib/table/render-scope.ts +936 -0
  100. package/src/lib/table/renderer/cell-group-ext-cell-renderer.ts +27 -0
  101. package/{lib/table/renderer/cell-render.if.d.ts → src/lib/table/renderer/cell-render.if.ts} +10 -1
  102. package/src/lib/table/renderer/checkbox-boolean-property-cell-renderer.ts +58 -0
  103. package/src/lib/table/renderer/checkbox-cell-renderer.ts +39 -0
  104. package/src/lib/table/renderer/date-to-int-date-cell-renderer.ts +34 -0
  105. package/src/lib/table/renderer/date-to-iso-cell-renderer.ts +25 -0
  106. package/src/lib/table/renderer/date-to-locale-date-cell-renderer.ts +24 -0
  107. package/src/lib/table/renderer/date-to-tec-cell-renderer.ts +28 -0
  108. package/{lib/table/renderer/edit/edit-cell-renderer.type.d.ts → src/lib/table/renderer/edit/edit-cell-renderer.type.ts} +1 -0
  109. package/src/lib/table/renderer/edit/edit-input-pipe-for-number.ts +6 -0
  110. package/src/lib/table/renderer/edit/edit-input-pipe.if.ts +7 -0
  111. package/src/lib/table/renderer/edit/input-cell-renderer.ts +41 -0
  112. package/src/lib/table/renderer/edit/select-cell-renderer.ts +60 -0
  113. package/src/lib/table/renderer/male-female-to-icon-cell-renderer.ts +26 -0
  114. package/src/lib/table/renderer/number-cell-renderer.ts +38 -0
  115. package/src/lib/table/renderer/renderer.ts +11 -0
  116. package/src/lib/table/renderer/true-false-cell-renderer.ts +28 -0
  117. package/src/lib/table/selection/selection-model.if.ts +20 -0
  118. package/src/lib/table/selection/selection-model.ts +109 -0
  119. package/src/lib/table/selection/selection-service.ts +120 -0
  120. package/{lib/table/selection/selection.type.d.ts → src/lib/table/selection/selection.type.ts} +3 -0
  121. package/src/lib/table/service/abstract-store-state.service.ts +105 -0
  122. package/src/lib/table/service/convenience-dom.service.ts +548 -0
  123. package/src/lib/table/service/data/collapsed-expanded.data.ts +11 -0
  124. package/src/lib/table/service/data/html-style.type.ts +1 -0
  125. package/src/lib/table/service/dom-service.if.ts +16 -0
  126. package/src/lib/table/service/ge-filter.service.ts +123 -0
  127. package/src/lib/table/service/simple-dom-service.ts +46 -0
  128. package/src/lib/table/service/sorter.service.ts +30 -0
  129. package/src/lib/table/service/store-state-collapsed-expand.service.ts +76 -0
  130. package/src/lib/table/service/store-state-scroll-pos.service.ts +40 -0
  131. package/src/lib/table/service/store-state-sorting.service.ts +41 -0
  132. package/src/lib/table/service/tree-row.service.ts +31 -0
  133. package/src/lib/table/table-api.ts +61 -0
  134. package/src/lib/table/table-scope.ts +433 -0
  135. package/src/test-setup.ts +1 -0
  136. package/tsconfig.json +22 -0
  137. package/tsconfig.lib.json +19 -0
  138. package/tsconfig.lib.prod.json +7 -0
  139. package/tsconfig.spec.json +20 -0
  140. package/esm2020/guiexpert-table.mjs +0 -5
  141. package/esm2020/index.mjs +0 -108
  142. package/esm2020/lib/table/action/action-id.type.mjs +0 -20
  143. package/esm2020/lib/table/action/on-action-triggered.if.mjs +0 -2
  144. package/esm2020/lib/table/action/osx-shortcut-actionId-mapping.mjs +0 -17
  145. package/esm2020/lib/table/action/shortcut-actionid-mapping.type.mjs +0 -2
  146. package/esm2020/lib/table/action/shortcut.service.mjs +0 -105
  147. package/esm2020/lib/table/action/windows-shortcut-actionId-mapping.mjs +0 -15
  148. package/esm2020/lib/table/checkbox/checkbox-model.if.mjs +0 -2
  149. package/esm2020/lib/table/checkbox/checkbox-model.mjs +0 -52
  150. package/esm2020/lib/table/checkbox/tree-checkbox-model.mjs +0 -106
  151. package/esm2020/lib/table/data/common/aligns.mjs +0 -19
  152. package/esm2020/lib/table/data/common/area-map-factory.mjs +0 -7
  153. package/esm2020/lib/table/data/common/area-map.mjs +0 -8
  154. package/esm2020/lib/table/data/common/area-map.type.mjs +0 -2
  155. package/esm2020/lib/table/data/common/args-adjust-columns-to-row-parent-params.mjs +0 -2
  156. package/esm2020/lib/table/data/common/args-render-cell-div.mjs +0 -2
  157. package/esm2020/lib/table/data/common/boolean-function.mjs +0 -3
  158. package/esm2020/lib/table/data/common/cell-range.mjs +0 -27
  159. package/esm2020/lib/table/data/common/checkbox-column.mjs +0 -15
  160. package/esm2020/lib/table/data/common/checked-type.mjs +0 -2
  161. package/esm2020/lib/table/data/common/event/ge-cell-indices.mjs +0 -7
  162. package/esm2020/lib/table/data/common/event/ge-key-event.mjs +0 -7
  163. package/esm2020/lib/table/data/common/event/ge-model-change-event.mjs +0 -10
  164. package/esm2020/lib/table/data/common/event/ge-mouse-event.mjs +0 -19
  165. package/esm2020/lib/table/data/common/filter-function.mjs +0 -2
  166. package/esm2020/lib/table/data/common/get-t.mjs +0 -2
  167. package/esm2020/lib/table/data/common/index-and-px.mjs +0 -7
  168. package/esm2020/lib/table/data/common/size.if.mjs +0 -2
  169. package/esm2020/lib/table/data/common/size.mjs +0 -7
  170. package/esm2020/lib/table/data/common/sizes.mjs +0 -33
  171. package/esm2020/lib/table/data/common/sort-item.mjs +0 -7
  172. package/esm2020/lib/table/data/common/sort-state.type.mjs +0 -2
  173. package/esm2020/lib/table/data/common/tree-arrow.type.mjs +0 -2
  174. package/esm2020/lib/table/data/common/tree-row-if.mjs +0 -2
  175. package/esm2020/lib/table/data/common/tree-row.mjs +0 -12
  176. package/esm2020/lib/table/data/common/value-label.if.mjs +0 -2
  177. package/esm2020/lib/table/data/common/value-label.mjs +0 -7
  178. package/esm2020/lib/table/data/div-scope.type.mjs +0 -2
  179. package/esm2020/lib/table/data/geo-data.mjs +0 -10
  180. package/esm2020/lib/table/data/options/auto-restore-options.if.mjs +0 -2
  181. package/esm2020/lib/table/data/options/auto-restore-options.mjs +0 -42
  182. package/esm2020/lib/table/data/options/default-row-heights.if.mjs +0 -2
  183. package/esm2020/lib/table/data/options/default-row-heights.mjs +0 -8
  184. package/esm2020/lib/table/data/options/icon.if.mjs +0 -2
  185. package/esm2020/lib/table/data/options/icon.mjs +0 -8
  186. package/esm2020/lib/table/data/options/sorted-options.if.mjs +0 -2
  187. package/esm2020/lib/table/data/options/sorted-options.mjs +0 -9
  188. package/esm2020/lib/table/data/options/table-options.if.mjs +0 -2
  189. package/esm2020/lib/table/data/options/table-options.mjs +0 -37
  190. package/esm2020/lib/table/data/options/tree-options.if.mjs +0 -2
  191. package/esm2020/lib/table/data/options/tree-options.mjs +0 -10
  192. package/esm2020/lib/table/data/side-ident.type.mjs +0 -2
  193. package/esm2020/lib/table/data/tablemodel/area-ident.type.mjs +0 -10
  194. package/esm2020/lib/table/data/tablemodel/areamodel/abstract-area-model.mjs +0 -108
  195. package/esm2020/lib/table/data/tablemodel/areamodel/area-model-array-array.mjs +0 -34
  196. package/esm2020/lib/table/data/tablemodel/areamodel/area-model-hidden.mjs +0 -80
  197. package/esm2020/lib/table/data/tablemodel/areamodel/area-model-object-array-with-columndefs.mjs +0 -11
  198. package/esm2020/lib/table/data/tablemodel/areamodel/area-model-object-array.mjs +0 -79
  199. package/esm2020/lib/table/data/tablemodel/areamodel/area-model-tree.mjs +0 -166
  200. package/esm2020/lib/table/data/tablemodel/areamodel/area-model.if.mjs +0 -2
  201. package/esm2020/lib/table/data/tablemodel/areamodel/col-and-rowspan-model.mjs +0 -48
  202. package/esm2020/lib/table/data/tablemodel/column/column-def.if.mjs +0 -2
  203. package/esm2020/lib/table/data/tablemodel/column/column-def.mjs +0 -32
  204. package/esm2020/lib/table/data/tablemodel/padding.mjs +0 -9
  205. package/esm2020/lib/table/data/tablemodel/table-model.if.mjs +0 -2
  206. package/esm2020/lib/table/data/tablemodel/table-model.mjs +0 -268
  207. package/esm2020/lib/table/ele-scope.mjs +0 -173
  208. package/esm2020/lib/table/event-adapter.mjs +0 -17
  209. package/esm2020/lib/table/event-listener.if.mjs +0 -2
  210. package/esm2020/lib/table/focus/focus-model.if.mjs +0 -2
  211. package/esm2020/lib/table/focus/focus-model.mjs +0 -22
  212. package/esm2020/lib/table/focus/focus.type.mjs +0 -2
  213. package/esm2020/lib/table/input-handler.mjs +0 -24
  214. package/esm2020/lib/table/mouse-handler.mjs +0 -191
  215. package/esm2020/lib/table/render-scope.mjs +0 -595
  216. package/esm2020/lib/table/renderer/cell-render.if.mjs +0 -2
  217. package/esm2020/lib/table/renderer/checkbox-cell-renderer.mjs +0 -22
  218. package/esm2020/lib/table/renderer/date-to-int-date-cell-renderer.mjs +0 -21
  219. package/esm2020/lib/table/renderer/date-to-iso-cell-renderer.mjs +0 -9
  220. package/esm2020/lib/table/renderer/date-to-locale-date-cell-renderer.mjs +0 -9
  221. package/esm2020/lib/table/renderer/date-to-tec-cell-renderer.mjs +0 -12
  222. package/esm2020/lib/table/renderer/edit/edit-cell-renderer.type.mjs +0 -2
  223. package/esm2020/lib/table/renderer/edit/input-cell-renderer.mjs +0 -23
  224. package/esm2020/lib/table/renderer/edit/select-cell-renderer.mjs +0 -35
  225. package/esm2020/lib/table/renderer/male-female-to-icon-cell-renderer.mjs +0 -12
  226. package/esm2020/lib/table/renderer/number-cell-renderer.mjs +0 -19
  227. package/esm2020/lib/table/renderer/renderer-cleanup-fn.type.mjs +0 -2
  228. package/esm2020/lib/table/renderer/renderer.mjs +0 -7
  229. package/esm2020/lib/table/renderer/true-false-cell-renderer.mjs +0 -15
  230. package/esm2020/lib/table/selection/selection-model.if.mjs +0 -2
  231. package/esm2020/lib/table/selection/selection-model.mjs +0 -97
  232. package/esm2020/lib/table/selection/selection-service.mjs +0 -97
  233. package/esm2020/lib/table/selection/selection.type.mjs +0 -2
  234. package/esm2020/lib/table/service/abstract-store-state.service.mjs +0 -49
  235. package/esm2020/lib/table/service/convenience-dom.service.mjs +0 -394
  236. package/esm2020/lib/table/service/data/collapsed-expanded.data.mjs +0 -9
  237. package/esm2020/lib/table/service/data/html-style.type.mjs +0 -2
  238. package/esm2020/lib/table/service/dom-service.if.mjs +0 -2
  239. package/esm2020/lib/table/service/ge-filter.service.mjs +0 -98
  240. package/esm2020/lib/table/service/simple-dom-service.mjs +0 -34
  241. package/esm2020/lib/table/service/sorter.service.mjs +0 -27
  242. package/esm2020/lib/table/service/store-state-collapsed-expand.service.mjs +0 -57
  243. package/esm2020/lib/table/service/store-state-scroll-pos.service.mjs +0 -29
  244. package/esm2020/lib/table/service/store-state-sorting.service.mjs +0 -29
  245. package/esm2020/lib/table/service/tree-row.service.mjs +0 -23
  246. package/esm2020/lib/table/table-api.mjs +0 -38
  247. package/esm2020/lib/table/table-model-factory.mjs +0 -124
  248. package/esm2020/lib/table/table-scope.mjs +0 -313
  249. package/lib/table/action/action-id.type.d.ts +0 -2
  250. package/lib/table/action/osx-shortcut-actionId-mapping.d.ts +0 -6
  251. package/lib/table/action/shortcut-actionid-mapping.type.d.ts +0 -4
  252. package/lib/table/action/shortcut.service.d.ts +0 -17
  253. package/lib/table/action/windows-shortcut-actionId-mapping.d.ts +0 -6
  254. package/lib/table/checkbox/checkbox-model.d.ts +0 -12
  255. package/lib/table/checkbox/checkbox-model.if.d.ts +0 -9
  256. package/lib/table/checkbox/tree-checkbox-model.d.ts +0 -17
  257. package/lib/table/data/common/aligns.d.ts +0 -24
  258. package/lib/table/data/common/area-map-factory.d.ts +0 -5
  259. package/lib/table/data/common/area-map.d.ts +0 -7
  260. package/lib/table/data/common/area-map.type.d.ts +0 -5
  261. package/lib/table/data/common/args-render-cell-div.d.ts +0 -13
  262. package/lib/table/data/common/boolean-function.d.ts +0 -3
  263. package/lib/table/data/common/cell-range.d.ts +0 -17
  264. package/lib/table/data/common/checkbox-column.d.ts +0 -13
  265. package/lib/table/data/common/checked-type.d.ts +0 -1
  266. package/lib/table/data/common/event/ge-cell-indices.d.ts +0 -5
  267. package/lib/table/data/common/event/ge-key-event.d.ts +0 -5
  268. package/lib/table/data/common/event/ge-model-change-event.d.ts +0 -6
  269. package/lib/table/data/common/event/ge-mouse-event.d.ts +0 -17
  270. package/lib/table/data/common/index-and-px.d.ts +0 -5
  271. package/lib/table/data/common/size.d.ts +0 -6
  272. package/lib/table/data/common/size.if.d.ts +0 -4
  273. package/lib/table/data/common/sizes.d.ts +0 -32
  274. package/lib/table/data/common/sort-item.d.ts +0 -6
  275. package/lib/table/data/common/tree-row-if.d.ts +0 -10
  276. package/lib/table/data/common/tree-row.d.ts +0 -11
  277. package/lib/table/data/common/value-label.d.ts +0 -6
  278. package/lib/table/data/common/value-label.if.d.ts +0 -4
  279. package/lib/table/data/div-scope.type.d.ts +0 -7
  280. package/lib/table/data/geo-data.d.ts +0 -8
  281. package/lib/table/data/options/auto-restore-options.d.ts +0 -11
  282. package/lib/table/data/options/auto-restore-options.if.d.ts +0 -16
  283. package/lib/table/data/options/default-row-heights.d.ts +0 -7
  284. package/lib/table/data/options/default-row-heights.if.d.ts +0 -5
  285. package/lib/table/data/options/icon.d.ts +0 -7
  286. package/lib/table/data/options/icon.if.d.ts +0 -5
  287. package/lib/table/data/options/sorted-options.d.ts +0 -8
  288. package/lib/table/data/options/table-options.d.ts +0 -35
  289. package/lib/table/data/options/table-options.if.d.ts +0 -36
  290. package/lib/table/data/options/tree-options.d.ts +0 -9
  291. package/lib/table/data/options/tree-options.if.d.ts +0 -7
  292. package/lib/table/data/tablemodel/area-ident.type.d.ts +0 -2
  293. package/lib/table/data/tablemodel/areamodel/abstract-area-model.d.ts +0 -43
  294. package/lib/table/data/tablemodel/areamodel/area-model-array-array.d.ts +0 -18
  295. package/lib/table/data/tablemodel/areamodel/area-model-hidden.d.ts +0 -37
  296. package/lib/table/data/tablemodel/areamodel/area-model-object-array-with-columndefs.d.ts +0 -10
  297. package/lib/table/data/tablemodel/areamodel/area-model-object-array.d.ts +0 -27
  298. package/lib/table/data/tablemodel/areamodel/area-model-tree.d.ts +0 -39
  299. package/lib/table/data/tablemodel/areamodel/area-model.if.d.ts +0 -146
  300. package/lib/table/data/tablemodel/areamodel/col-and-rowspan-model.d.ts +0 -12
  301. package/lib/table/data/tablemodel/column/column-def.d.ts +0 -46
  302. package/lib/table/data/tablemodel/column/column-def.if.d.ts +0 -22
  303. package/lib/table/data/tablemodel/padding.d.ts +0 -7
  304. package/lib/table/data/tablemodel/table-model.d.ts +0 -61
  305. package/lib/table/data/tablemodel/table-model.if.d.ts +0 -35
  306. package/lib/table/ele-scope.d.ts +0 -37
  307. package/lib/table/event-adapter.d.ts +0 -12
  308. package/lib/table/event-listener.if.d.ts +0 -11
  309. package/lib/table/focus/focus-model.d.ts +0 -12
  310. package/lib/table/focus/focus-model.if.d.ts +0 -6
  311. package/lib/table/input-handler.d.ts +0 -6
  312. package/lib/table/mouse-handler.d.ts +0 -25
  313. package/lib/table/render-scope.d.ts +0 -82
  314. package/lib/table/renderer/checkbox-cell-renderer.d.ts +0 -8
  315. package/lib/table/renderer/date-to-int-date-cell-renderer.d.ts +0 -9
  316. package/lib/table/renderer/date-to-iso-cell-renderer.d.ts +0 -8
  317. package/lib/table/renderer/date-to-locale-date-cell-renderer.d.ts +0 -8
  318. package/lib/table/renderer/date-to-tec-cell-renderer.d.ts +0 -8
  319. package/lib/table/renderer/edit/input-cell-renderer.d.ts +0 -8
  320. package/lib/table/renderer/edit/select-cell-renderer.d.ts +0 -12
  321. package/lib/table/renderer/male-female-to-icon-cell-renderer.d.ts +0 -8
  322. package/lib/table/renderer/number-cell-renderer.d.ts +0 -11
  323. package/lib/table/renderer/renderer.d.ts +0 -5
  324. package/lib/table/renderer/true-false-cell-renderer.d.ts +0 -8
  325. package/lib/table/selection/selection-model.d.ts +0 -21
  326. package/lib/table/selection/selection-model.if.d.ts +0 -11
  327. package/lib/table/selection/selection-service.d.ts +0 -17
  328. package/lib/table/service/abstract-store-state.service.d.ts +0 -10
  329. package/lib/table/service/convenience-dom.service.d.ts +0 -46
  330. package/lib/table/service/data/collapsed-expanded.data.d.ts +0 -7
  331. package/lib/table/service/data/html-style.type.d.ts +0 -3
  332. package/lib/table/service/dom-service.if.d.ts +0 -9
  333. package/lib/table/service/ge-filter.service.d.ts +0 -5
  334. package/lib/table/service/simple-dom-service.d.ts +0 -10
  335. package/lib/table/service/sorter.service.d.ts +0 -3
  336. package/lib/table/service/store-state-collapsed-expand.service.d.ts +0 -15
  337. package/lib/table/service/store-state-scroll-pos.service.d.ts +0 -10
  338. package/lib/table/service/store-state-sorting.service.d.ts +0 -11
  339. package/lib/table/service/tree-row.service.d.ts +0 -5
  340. package/lib/table/table-api.d.ts +0 -16
  341. package/lib/table/table-model-factory.d.ts +0 -60
  342. package/lib/table/table-scope.d.ts +0 -56
  343. /package/{lib/table/data/common/filter-function.d.ts → src/lib/table/data/common/filter-function.ts} +0 -0
  344. /package/{lib/table/data/common/get-t.d.ts → src/lib/table/data/common/get-t.ts} +0 -0
  345. /package/{lib/table/data/common/sort-state.type.d.ts → src/lib/table/data/common/sort-state.type.ts} +0 -0
  346. /package/{lib/table/data/common/tree-arrow.type.d.ts → src/lib/table/data/common/tree-arrow.type.ts} +0 -0
  347. /package/{lib/table/data/side-ident.type.d.ts → src/lib/table/data/side-ident.type.ts} +0 -0
  348. /package/{lib/table/renderer/renderer-cleanup-fn.type.d.ts → src/lib/table/renderer/renderer-cleanup-fn.type.ts} +0 -0
@@ -0,0 +1,18 @@
1
+ import { AreaModelIf } from "../tablemodel/areamodel/area-model.if";
2
+ import { AreaIdent } from "../tablemodel/area-ident.type";
3
+ import { SideIdent } from "../side-ident.type";
4
+
5
+ export interface ArgsRenderCellDiv {
6
+ areaModel: AreaModelIf;
7
+ areaIdent: AreaIdent;
8
+ sideIdent: SideIdent;
9
+ rowIndex: number;
10
+ index: number;
11
+ left: number;
12
+ width: number;
13
+ height: number;
14
+ top: number;
15
+ parent: HTMLDivElement;
16
+ lastRowOfModel: boolean;
17
+ gammaRange: boolean;
18
+ }
@@ -0,0 +1,4 @@
1
+ export type BooleanFunction = () => boolean;
2
+
3
+ export const TrueFn = () => true;
4
+ export const FalseFn = () => false;
@@ -0,0 +1,57 @@
1
+ export class CellRange {
2
+
3
+
4
+ constructor(
5
+ public r1: number,
6
+ public c1: number,
7
+ public r2: number,
8
+ public c2: number,
9
+ public gammaRange: boolean = false) {
10
+ }
11
+
12
+ static create(params: {
13
+ rowIndex1: number,
14
+ columnIndex1: number,
15
+ rowIndex2: number,
16
+ columnIndex2: number,
17
+ gammaRange?: boolean
18
+ }): CellRange {
19
+ if (params.gammaRange === undefined) {
20
+ params.gammaRange = false;
21
+ }
22
+ return new CellRange(
23
+ params.rowIndex1,
24
+ params.columnIndex1,
25
+ params.rowIndex2,
26
+ params.columnIndex2,
27
+ params.gammaRange
28
+ );
29
+ }
30
+
31
+ static singleCell(
32
+ rowIndex: number,
33
+ columnIndex: number
34
+ ): CellRange {
35
+ return new CellRange(rowIndex, columnIndex, rowIndex, columnIndex);
36
+ }
37
+
38
+ static singleRow(
39
+ rowIndex: number
40
+ ): CellRange {
41
+ return new CellRange(rowIndex, 0, rowIndex, Number.MAX_SAFE_INTEGER);
42
+ }
43
+
44
+ static singleColumn(
45
+ columnIndex: number
46
+ ): CellRange {
47
+ return new CellRange(0, columnIndex, Number.MAX_SAFE_INTEGER, columnIndex);
48
+ }
49
+
50
+ isInRange(rowIndex: number, columnIndex: number): boolean {
51
+ return rowIndex >= this.r1
52
+ && rowIndex <= this.r2
53
+ && columnIndex >= this.c1
54
+ && columnIndex <= this.c2;
55
+ }
56
+
57
+ }
@@ -0,0 +1,25 @@
1
+ import { Size } from "./size";
2
+ import { SizeIf } from "./size.if";
3
+ import { ColumnDefIf } from "../tablemodel/column/column-def.if";
4
+ import { CellRendererIf } from "../../renderer/cell-render.if";
5
+ import { CheckboxCellRenderer } from "../../renderer/checkbox-cell-renderer";
6
+ import { AreaObjectMapType } from "./area-map.type";
7
+ import { AreaObjectMap } from "./area-map";
8
+
9
+ export class CheckboxColumnDef implements ColumnDefIf {
10
+
11
+
12
+ public property = "CheckboxColumn";
13
+ public headerLabel = "";
14
+ public width: SizeIf = new Size(50, "px");
15
+ public minWidth: SizeIf = new Size(50, "px");
16
+ public maxWidth: SizeIf = new Size(100, "px");
17
+ public rendererMap: AreaObjectMapType<CellRendererIf> = new AreaObjectMap<CellRendererIf>(new CheckboxCellRenderer(), new CheckboxCellRenderer(), undefined);
18
+ public classes: AreaObjectMapType<string[]> = new AreaObjectMap<string[]>(
19
+ [],
20
+ ["ge-table-text-align-left"],
21
+ []
22
+ );
23
+
24
+
25
+ }
@@ -0,0 +1 @@
1
+ export type CheckedType = "none" | "semi" | "full";
@@ -0,0 +1,9 @@
1
+ export class GeCellIndices {
2
+
3
+ constructor(
4
+ public rowIndex: number = -1,
5
+ public columnIndex: number = -1
6
+ ) {
7
+ }
8
+
9
+ }
@@ -0,0 +1,10 @@
1
+ export class GeKeyEvent {
2
+
3
+ constructor(
4
+ public status: "down" | "up" = "down",
5
+ public originalEvent?: KeyboardEvent
6
+ ) {
7
+ }
8
+
9
+
10
+ }
@@ -0,0 +1,13 @@
1
+ import { GeCellIndices } from "./ge-cell-indices";
2
+
3
+ export class GeModelChangeEvent {
4
+
5
+ constructor(
6
+ public cells: GeCellIndices[]
7
+ ) {
8
+ }
9
+
10
+ static createSingle(rowIndex: number, columnIndex: number) {
11
+ return new GeModelChangeEvent([new GeCellIndices(rowIndex, columnIndex)]);
12
+ }
13
+ }
@@ -0,0 +1,38 @@
1
+ import { AreaIdent } from "../../tablemodel/area-ident.type";
2
+ import { SideIdent } from "../../side-ident.type";
3
+
4
+ export class GeMouseEvent {
5
+
6
+
7
+ constructor(
8
+ public rowIndex: number = -1,
9
+ public rowTop: number = -1,
10
+ public columnIndex: number = -1,
11
+ public columnLeft: number = -1,
12
+ public areaIdent?: AreaIdent,
13
+ public sideIdent?: SideIdent,
14
+ public originalEvent?: MouseEvent,
15
+ public clickCount: number = 0,
16
+ public draggingX: number = 0,
17
+ public draggingY: number = 0,
18
+ public action: string | null = ""
19
+ ) {
20
+ }
21
+
22
+ clone(): GeMouseEvent {
23
+ return new GeMouseEvent(
24
+ this.rowIndex,
25
+ this.rowTop,
26
+ this.columnIndex,
27
+ this.columnLeft,
28
+ this.areaIdent,
29
+ this.sideIdent,
30
+ this.originalEvent,
31
+ this.clickCount,
32
+ this.draggingX,
33
+ this.draggingY,
34
+ this.action
35
+ );
36
+ }
37
+
38
+ }
@@ -0,0 +1,10 @@
1
+ import { AreaIdent } from "../../../tablemodel/area-ident.type";
2
+
3
+ export interface TableCellUpdateEventIf {
4
+
5
+ area: AreaIdent;
6
+ rowIndex: number;
7
+ columnIndex: number;
8
+ value: any;
9
+
10
+ }
@@ -0,0 +1,14 @@
1
+ import { TableCellUpdateEventIf } from "./table-cell-update-event.if";
2
+ import { AreaIdent } from "../../../tablemodel/area-ident.type";
3
+
4
+ export class TableCellUpdateEvent implements TableCellUpdateEventIf {
5
+
6
+ constructor(
7
+ public area: AreaIdent,
8
+ public rowIndex: number,
9
+ public columnIndex: number,
10
+ public value: any
11
+ ) {
12
+ }
13
+
14
+ }
@@ -0,0 +1,9 @@
1
+ export class IndexAndPx {
2
+
3
+ constructor(
4
+ public index: number,
5
+ public px: number
6
+ ) {
7
+ }
8
+
9
+ }
@@ -0,0 +1,4 @@
1
+ export interface SizeIf {
2
+ value: number;
3
+ unit: "px" | "%";
4
+ }
@@ -0,0 +1,9 @@
1
+ import { SizeIf } from "./size.if";
2
+
3
+ export class Size implements SizeIf {
4
+ constructor(
5
+ public value: number = 100,
6
+ public unit: "px" | "%" = "px"
7
+ ) {
8
+ }
9
+ }
@@ -0,0 +1,35 @@
1
+ import { Size } from "./size";
2
+
3
+
4
+ export const px300 = new Size(300, "px");
5
+ export const px290 = new Size(290, "px");
6
+ export const px280 = new Size(280, "px");
7
+ export const px270 = new Size(270, "px");
8
+ export const px260 = new Size(260, "px");
9
+ export const px250 = new Size(250, "px");
10
+ export const px240 = new Size(240, "px");
11
+ export const px230 = new Size(230, "px");
12
+ export const px220 = new Size(220, "px");
13
+ export const px210 = new Size(210, "px");
14
+ export const px200 = new Size(200, "px");
15
+ export const px190 = new Size(190, "px");
16
+ export const px180 = new Size(180, "px");
17
+ export const px170 = new Size(170, "px");
18
+ export const px160 = new Size(160, "px");
19
+ export const px150 = new Size(150, "px");
20
+ export const px140 = new Size(140, "px");
21
+ export const px130 = new Size(130, "px");
22
+ export const px120 = new Size(120, "px");
23
+ export const px110 = new Size(110, "px");
24
+ export const px100 = new Size(100, "px");
25
+ export const px90 = new Size(90, "px");
26
+ export const px80 = new Size(80, "px");
27
+ export const px70 = new Size(70, "px");
28
+ export const px60 = new Size(60, "px");
29
+ export const px50 = new Size(50, "px");
30
+ export const px40 = new Size(40, "px");
31
+ export const px30 = new Size(30, "px");
32
+ export const px20 = new Size(20, "px");
33
+ export const px10 = new Size(10, "px");
34
+ export const px0 = new Size(0, "px");
35
+
@@ -0,0 +1,11 @@
1
+ import { SortState } from "./sort-state.type";
2
+
3
+ export class SortItem {
4
+
5
+ constructor(
6
+ public columnIndex: number,
7
+ public sortState: SortState
8
+ ) {
9
+ }
10
+
11
+ }
@@ -0,0 +1,11 @@
1
+ import { TreeRow } from "./tree-row";
2
+
3
+ export interface TreeRowIf<T> {
4
+ data: T;
5
+ expanded: boolean;
6
+ children: TreeRow<T>[] | undefined;
7
+ parent: TreeRow<T> | undefined;
8
+ deep: number;
9
+ checked: boolean;
10
+ keep: boolean;
11
+ }
@@ -0,0 +1,16 @@
1
+ import { TreeRowIf } from "./tree-row-if";
2
+
3
+ export class TreeRow<T> implements TreeRowIf<T> {
4
+
5
+ constructor(
6
+ public data: T,
7
+ public expanded: boolean = true,
8
+ public children: TreeRowIf<T>[] | undefined,
9
+ public parent: TreeRowIf<T> | undefined,
10
+ public deep: number = 0,
11
+ public checked: boolean = false,
12
+ public keep: boolean = false
13
+ ) {
14
+ }
15
+
16
+ }
@@ -0,0 +1,6 @@
1
+ export interface ValueLabelIf {
2
+
3
+ value: any;
4
+ label: string;
5
+
6
+ }
@@ -0,0 +1,13 @@
1
+ import { ValueLabelIf } from "./value-label.if";
2
+
3
+
4
+ export class ValueLabel implements ValueLabelIf {
5
+
6
+
7
+ constructor(
8
+ public value: any,
9
+ public label: string
10
+ ) {
11
+ }
12
+
13
+ }
@@ -0,0 +1,5 @@
1
+ export type DivScope = {
2
+ parent: HTMLDivElement,
3
+ child: HTMLDivElement,
4
+ cache: { [key: number]: HTMLDivElement }
5
+ };
@@ -0,0 +1,45 @@
1
+ import { AreaIdent, getAreaIdentByString } from "../tablemodel/area-ident.type";
2
+ import { AreaModelIf } from "../tablemodel/areamodel/area-model.if";
3
+ import { TableScope } from "../../table-scope";
4
+
5
+ export class MouseTargetData {
6
+
7
+ rowIdx: number = -1;
8
+ colIdx: number = -1;
9
+ areaIdent?: AreaIdent;
10
+ areaModel?: AreaModelIf;
11
+ row?: any;
12
+ value?: any;
13
+ action: string | null = null;
14
+ inputType: string | null = null;
15
+ className: string = "";
16
+
17
+
18
+ constructor(
19
+ eventTarget: EventTarget | null,
20
+ tableScope: TableScope) {
21
+
22
+ if (eventTarget === null) return; // skip
23
+
24
+ if (eventTarget instanceof HTMLDivElement
25
+ || eventTarget instanceof HTMLSpanElement
26
+ || eventTarget instanceof HTMLInputElement) {
27
+
28
+ this.className = eventTarget.className;
29
+ this.action = eventTarget.getAttribute("data-ge-action");
30
+ this.inputType = eventTarget.getAttribute("data-input-type");
31
+ this.rowIdx = Number(eventTarget.getAttribute("data-row-index"));
32
+ this.colIdx = Number(eventTarget.getAttribute("data-col-index"));
33
+ const area = eventTarget.getAttribute("data-area");
34
+ if (area) {
35
+ this.areaIdent = getAreaIdentByString(area);
36
+ this.areaModel = tableScope.tableModel.getAreaModel(this.areaIdent);
37
+ this.row = this.areaModel.getRowByIndex(this.rowIdx);
38
+ }
39
+ if (eventTarget instanceof HTMLInputElement) {
40
+ const target = eventTarget as HTMLInputElement;
41
+ this.value = target.value;
42
+ }
43
+ }
44
+ }
45
+ }
@@ -0,0 +1,13 @@
1
+ export class GeoData {
2
+
3
+ constructor(
4
+ public left: number = 0,
5
+ public width: number = 0,
6
+ public height: number = 0,
7
+ public top: number = 0,
8
+ public index?: number
9
+ ) {
10
+ }
11
+
12
+
13
+ }
@@ -0,0 +1,21 @@
1
+ export type IsSameFn<T> = (r1: T, r2: T, optionsIf: AutoRestoreOptionsIf<T>) => boolean;
2
+ export type GetRowIdFn<T> = ((row: T) => string | number);
3
+ export type GetStorageKeyFn = (() => string);
4
+
5
+ /**
6
+ * See TableOptionsIf#autoRestoreOptions()
7
+ */
8
+ export interface AutoRestoreOptionsIf<T> {
9
+
10
+ autoRestoreSortingState: boolean;
11
+ autoRestoreCollapsedExpandedState?: boolean;
12
+ autoRestoreScrollPosition?: boolean;
13
+
14
+ autoRestoreCheckedState?: boolean;
15
+ autoRestoreSelectedState?: boolean;
16
+
17
+ getRowId?: undefined | GetRowIdFn<T>;
18
+ getStorageKeyFn?: undefined | GetStorageKeyFn;
19
+ isSame?: undefined | IsSameFn<T>;
20
+
21
+ }
@@ -0,0 +1,50 @@
1
+ import { AutoRestoreOptionsIf } from "./auto-restore-options.if";
2
+
3
+
4
+ export class AutoRestoreOptions<T> implements AutoRestoreOptionsIf<T> {
5
+
6
+ public autoRestoreSortingState = false;
7
+ public autoRestoreCollapsedExpandedState = false;
8
+ public autoRestoreScrollPosition = false;
9
+
10
+ public autoRestoreCheckedState = false;
11
+ public autoRestoreSelectedState = false;
12
+
13
+
14
+ public getStorageKeyFn = undefined;
15
+
16
+
17
+ public isSame = (r1: T, r2: T, options: AutoRestoreOptionsIf<T>) => {
18
+ if (r1 && r2) {
19
+ if (options.getRowId) {
20
+ const id1 = options.getRowId(r1);
21
+ const id2 = options.getRowId(r2);
22
+ return id1 === id2;
23
+ }
24
+ }
25
+ return false;
26
+ };
27
+
28
+ public getRowId = (row: T): string | number => {
29
+ if (row) {
30
+ // First try:
31
+ for (const key of ["id", "uuid"]) {
32
+ // @ts-ignore
33
+ const id = row[key];
34
+ if (id !== undefined && id !== null) {
35
+ return id;
36
+ }
37
+ }
38
+
39
+ // Second try:
40
+ try {
41
+ return JSON.stringify(row);
42
+ } catch (e) {
43
+ console.error(e);
44
+ }
45
+ }
46
+ console.warn("One of following options set to true without a valid \"getRowId()\": autoRestoreExpandedState, autoRestoreCheckedState.");
47
+ return -1;
48
+ };
49
+
50
+ }
@@ -0,0 +1,5 @@
1
+ export interface DefaultRowHeightsIf {
2
+ header: number,
3
+ body: number,
4
+ footer: number
5
+ }
@@ -0,0 +1,10 @@
1
+ import { DefaultRowHeightsIf } from "./default-row-heights.if";
2
+
3
+ export class DefaultRowHeights implements DefaultRowHeightsIf {
4
+ constructor(
5
+ public header: number = 34,
6
+ public body: number = 34,
7
+ public footer: number = 34
8
+ ) {
9
+ }
10
+ }
@@ -0,0 +1,7 @@
1
+ export interface IconIf {
2
+
3
+ content: string,
4
+ style: string;
5
+ classes: string[];
6
+
7
+ }
@@ -0,0 +1,10 @@
1
+ import { IconIf } from "./icon.if";
2
+
3
+ export class Icon implements IconIf {
4
+ constructor(
5
+ public content: string = ">",
6
+ public style: string = "",
7
+ public classes: string[] = []
8
+ ) {
9
+ }
10
+ }
@@ -1,6 +1,9 @@
1
1
  import { IconIf } from "./icon.if";
2
+
2
3
  export interface SortedOptionsIf {
3
- iconAsc: IconIf;
4
- iconDesc: IconIf;
5
- iconPlaceholder: IconIf;
4
+
5
+ iconAsc: IconIf,
6
+ iconDesc: IconIf
7
+ iconPlaceholder: IconIf
8
+
6
9
  }
@@ -0,0 +1,15 @@
1
+ import { IconIf } from "./icon.if";
2
+ import { Icon } from "./icon";
3
+ import { SortedOptionsIf } from "./sorted-options.if";
4
+
5
+ export class SortedOptions implements SortedOptionsIf {
6
+
7
+ constructor(
8
+ public iconAsc: IconIf = new Icon("↑", "", ["ge-header-sorted-asc"]),
9
+ public iconDesc: IconIf = new Icon("↓", "", ["ge-header-sorted-desc"]),
10
+ public iconPlaceholder: IconIf = new Icon("↑", "color:transparent;", [])
11
+ ) {
12
+ }
13
+
14
+
15
+ }
@@ -0,0 +1,54 @@
1
+ import { DefaultRowHeightsIf } from "./default-row-heights.if";
2
+ import { TreeOptionsIf } from "./tree-options.if";
3
+ import { FilterFunction } from "../common/filter-function";
4
+ import { SortState } from "../common/sort-state.type";
5
+ import { SortedOptionsIf } from "./sorted-options.if";
6
+ import { AutoRestoreOptionsIf } from "./auto-restore-options.if";
7
+ import { GetEditRenderer } from "../../renderer/edit/edit-cell-renderer.type";
8
+ import { SelectionModelIf } from "../../selection/selection-model.if";
9
+ import { GetT } from "../common/get-t";
10
+ import { FocusModelIf } from "../../focus/focus-model.if";
11
+ import { ShortcutActionIdMapping } from "../../action/shortcut-actionid-mapping.type";
12
+
13
+ export interface TableOptionsIf {
14
+ headerSeparatorBorderVisible: boolean;
15
+ footerSeparatorBorderVisible: boolean;
16
+ fixedEastSeparatorBorderVisible: boolean;
17
+ fixedWestSeparatorBorderVisible: boolean;
18
+ verticalBorderVisible: boolean;
19
+ horizontalBorderVisible: boolean;
20
+
21
+ overflowX: "auto" | "scroll";
22
+ overflowY: "auto" | "scroll";
23
+
24
+ tableTopBorderVisible: boolean;
25
+ tableBottomBorderVisible: boolean;
26
+ hoverRowVisible: boolean;
27
+ hoverColumnVisible: boolean;
28
+ columnsResizable: boolean;
29
+ columnsDraggable: boolean;
30
+ columnResizeHandleWidthInPx: number;
31
+
32
+ headerVerticalSeparator: boolean;
33
+ footerVerticalSeparator: boolean;
34
+
35
+ defaultRowHeights: DefaultRowHeightsIf;
36
+
37
+ headerToggleExpandCollapseIcons: boolean;
38
+
39
+ treeOptions: TreeOptionsIf;
40
+ showCheckboxWihoutExtraColumn: boolean;
41
+
42
+ externalFilterFunction: FilterFunction<any> | undefined;
43
+
44
+ sortedOptions: SortedOptionsIf;
45
+ sortOrder: SortState[],
46
+
47
+ autoRestoreOptions?: AutoRestoreOptionsIf<any>;
48
+
49
+ getEditRenderer?: GetEditRenderer;
50
+ getSelectionModel?: GetT<SelectionModelIf>;
51
+ getFocusModel?: GetT<FocusModelIf>;
52
+
53
+ shortcutActionIdMapping?: ShortcutActionIdMapping;
54
+ }
@@ -0,0 +1,66 @@
1
+ import { DefaultRowHeightsIf } from "./default-row-heights.if";
2
+ import { TableOptionsIf } from "./table-options.if";
3
+ import { TreeOptions } from "./tree-options";
4
+ import { FilterFunction } from "../common/filter-function";
5
+ import { SortState } from "../common/sort-state.type";
6
+ import { SortedOptions } from "./sorted-options";
7
+ import { InputCellRenderer } from "../../renderer/edit/input-cell-renderer";
8
+ import { GetEditRenderer } from "../../renderer/edit/edit-cell-renderer.type";
9
+ import { SelectionModelIf } from "../../selection/selection-model.if";
10
+ import { SelectionModel } from "../../selection/selection-model";
11
+ import { GetT } from "../common/get-t";
12
+ import { FocusModelIf } from "../../focus/focus-model.if";
13
+ import { FocusModel } from "../../focus/focus-model";
14
+ import { ShortcutActionIdMapping } from "../../action/shortcut-actionid-mapping.type";
15
+
16
+ const selectionModel = new SelectionModel();
17
+ const focusModel = new FocusModel("cell");
18
+
19
+ export class TableOptions implements TableOptionsIf {
20
+
21
+ overflowX: "auto" | "scroll" = "auto";
22
+ overflowY: "auto" | "scroll" = "auto";
23
+
24
+ horizontalBorderVisible = true;
25
+ verticalBorderVisible = true;
26
+ footerSeparatorBorderVisible = true;
27
+ headerSeparatorBorderVisible = true;
28
+ fixedEastSeparatorBorderVisible = true;
29
+ fixedWestSeparatorBorderVisible = true;
30
+
31
+ tableTopBorderVisible = true;
32
+ tableBottomBorderVisible = true;
33
+ // TODO tableLeftBorderVisible = true;
34
+ // TODO tableRightBorderVisible = true;
35
+
36
+ hoverRowVisible = true;
37
+ hoverColumnVisible = true;
38
+ columnsResizable = true;
39
+ columnsDraggable = true;
40
+ columnResizeHandleWidthInPx = 4;
41
+
42
+ defaultRowHeights: DefaultRowHeightsIf = {
43
+ header: 34,
44
+ body: 34,
45
+ footer: 34
46
+ };
47
+
48
+ footerVerticalSeparator = false;
49
+
50
+ headerToggleExpandCollapseIcons = false;
51
+ headerVerticalSeparator = false;
52
+
53
+ treeOptions = new TreeOptions();
54
+ showCheckboxWihoutExtraColumn = false;
55
+
56
+ externalFilterFunction: FilterFunction<any> | undefined = undefined;
57
+ sortedOptions = new SortedOptions();
58
+ sortOrder: SortState[] = ["asc", "desc"];
59
+ shortcutActionIdMapping?: ShortcutActionIdMapping;
60
+
61
+ getEditRenderer?: GetEditRenderer = (_rowIndex: number, _columnIndex: number) => new InputCellRenderer();
62
+
63
+ getSelectionModel?: GetT<SelectionModelIf> = () => selectionModel;
64
+
65
+ getFocusModel?: GetT<FocusModelIf> = () => focusModel;
66
+ }