@guiexpert/table 1.0.3 → 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
@@ -0,0 +1,98 @@
1
+ export class GeFilterService {
2
+ filterPredict(item, filterString, toString = this.objectToString.bind(this)) {
3
+ if (!item) {
4
+ return false;
5
+ }
6
+ if (!filterString) {
7
+ return true;
8
+ }
9
+ filterString = filterString.toLowerCase();
10
+ const prefixMust = "+";
11
+ const prefixNot = "-";
12
+ const arr = filterString.toLowerCase().split(" ").filter(s => s !== prefixMust && s !== prefixNot && s !== "");
13
+ const ors = arr
14
+ .filter(f => !f.startsWith(prefixMust) && !f.startsWith(prefixNot));
15
+ const musts = arr
16
+ .filter(f => f.startsWith(prefixMust))
17
+ .map(s => s.replace(/\+/g, ""));
18
+ const nots = arr
19
+ .filter(f => f.startsWith(prefixNot))
20
+ .map(s => s.replace(/-/g, ""));
21
+ let or = !ors.length;
22
+ for (let i = 0; i < ors.length; i++) {
23
+ if (or || toString(item).includes(ors[i])) {
24
+ or = true;
25
+ }
26
+ }
27
+ if (!or) {
28
+ return false;
29
+ }
30
+ for (let i = 0; i < musts.length; i++) {
31
+ if (!toString(item).includes(musts[i])) {
32
+ return false;
33
+ }
34
+ }
35
+ for (let i = 0; i < nots.length; i++) {
36
+ if (toString(item).includes(nots[i])) {
37
+ return false;
38
+ }
39
+ }
40
+ return true;
41
+ }
42
+ filterRows(rows, filterString, toString = (t) => JSON.stringify(t).toLowerCase()) {
43
+ if (!rows) {
44
+ return [];
45
+ }
46
+ if (!filterString) {
47
+ return [...rows];
48
+ }
49
+ filterString = filterString.toLowerCase();
50
+ const prefixMust = "+";
51
+ const prefixNot = "-";
52
+ const arr = filterString.toLowerCase().split(" ").filter(s => s !== prefixMust && s !== prefixNot && s !== "");
53
+ const ors = arr
54
+ .filter(f => !f.startsWith(prefixMust) && !f.startsWith(prefixNot));
55
+ const musts = arr
56
+ .filter(f => f.startsWith(prefixMust))
57
+ .map(s => s.replace(/\+/g, ""));
58
+ const nots = arr
59
+ .filter(f => f.startsWith(prefixNot))
60
+ .map(s => s.replace(/-/g, ""));
61
+ return rows?.filter(f => {
62
+ let or = !ors.length;
63
+ for (let i = 0; i < ors.length; i++) {
64
+ if (or || toString(f).includes(ors[i])) {
65
+ or = true;
66
+ }
67
+ }
68
+ if (!or) {
69
+ return false;
70
+ }
71
+ for (let i = 0; i < musts.length; i++) {
72
+ if (!toString(f).includes(musts[i])) {
73
+ return false;
74
+ }
75
+ }
76
+ for (let i = 0; i < nots.length; i++) {
77
+ if (toString(f).includes(nots[i])) {
78
+ return false;
79
+ }
80
+ }
81
+ return true;
82
+ });
83
+ }
84
+ objectToString(o) {
85
+ if (!o) {
86
+ return "";
87
+ }
88
+ const buf = [];
89
+ const keys = Object.keys(o);
90
+ for (let i = 0; i < keys.length; i++) {
91
+ const key = keys[i];
92
+ // @ts-ignore
93
+ buf.push(o[key]);
94
+ }
95
+ return buf.join(" ").toLowerCase();
96
+ }
97
+ }
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2UtZmlsdGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3RhYmxlL3NyYy9saWIvdGFibGUvc2VydmljZS9nZS1maWx0ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sZUFBZTtJQUcxQixhQUFhLENBQ1gsSUFBTyxFQUNQLFlBQW9CLEVBQ3BCLFdBQTZCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztRQUczRCxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1QsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDakIsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELFlBQVksR0FBRyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFMUMsTUFBTSxVQUFVLEdBQUcsR0FBRyxDQUFDO1FBQ3ZCLE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQztRQUN0QixNQUFNLEdBQUcsR0FBRyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVLElBQUksQ0FBQyxLQUFLLFNBQVMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7UUFFL0csTUFBTSxHQUFHLEdBQWEsR0FBRzthQUN0QixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFFdEUsTUFBTSxLQUFLLEdBQWEsR0FBRzthQUN4QixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQ3JDLEdBQUcs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QUFDO2lCQUNkO2FBQ0Y7WUFDRCxPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGNBQWMsQ0FBSSxDQUFJO1FBQ3BCLElBQUksQ0FBQyxDQUFDLEVBQUU7WUFDTixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsTUFBTSxHQUFHLEdBQWMsRUFBRSxDQUFDO1FBQzFCLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDNUIsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDcEMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3BCLGFBQWE7WUFDYixHQUFHLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ2xCO1FBQ0QsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JDLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBHZUZpbHRlclNlcnZpY2Uge1xuXG5cbiAgZmlsdGVyUHJlZGljdDxUPihcbiAgICBpdGVtOiBULFxuICAgIGZpbHRlclN0cmluZzogc3RyaW5nLFxuICAgIHRvU3RyaW5nOiAodDogVCkgPT4gc3RyaW5nID0gdGhpcy5vYmplY3RUb1N0cmluZy5iaW5kKHRoaXMpXG4gICk6IGJvb2xlYW4ge1xuXG4gICAgaWYgKCFpdGVtKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGlmICghZmlsdGVyU3RyaW5nKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgZmlsdGVyU3RyaW5nID0gZmlsdGVyU3RyaW5nLnRvTG93ZXJDYXNlKCk7XG5cbiAgICBjb25zdCBwcmVmaXhNdXN0ID0gXCIrXCI7XG4gICAgY29uc3QgcHJlZml4Tm90ID0gXCItXCI7XG4gICAgY29uc3QgYXJyID0gZmlsdGVyU3RyaW5nLnRvTG93ZXJDYXNlKCkuc3BsaXQoXCIgXCIpLmZpbHRlcihzID0+IHMgIT09IHByZWZpeE11c3QgJiYgcyAhPT0gcHJlZml4Tm90ICYmIHMgIT09IFwiXCIpO1xuXG4gICAgY29uc3Qgb3JzOiBzdHJpbmdbXSA9IGFyclxuICAgICAgLmZpbHRlcihmID0+ICFmLnN0YXJ0c1dpdGgocHJlZml4TXVzdCkgJiYgIWYuc3RhcnRzV2l0aChwcmVmaXhOb3QpKTtcblxuICAgIGNvbnN0IG11c3RzOiBzdHJpbmdbXSA9IGFyclxuICAgICAgLmZpbHRlcihmID0+IGYuc3RhcnRzV2l0aChwcmVmaXhNdXN0KSlcbiAgICAgIC5tYXAocyA9PiBzLnJlcGxhY2UoL1xcKy9nLCBcIlwiKSk7XG5cbiAgICBjb25zdCBub3RzOiBzdHJpbmdbXSA9IGFyclxuICAgICAgLmZpbHRlcihmID0+IGYuc3RhcnRzV2l0aChwcmVmaXhOb3QpKVxuICAgICAgLm1hcChzID0+IHMucmVwbGFjZSgvLS9nLCBcIlwiKSk7XG5cbiAgICBsZXQgb3IgPSAhb3JzLmxlbmd0aDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG9ycy5sZW5ndGg7IGkrKykge1xuICAgICAgaWYgKG9yIHx8IHRvU3RyaW5nKGl0ZW0pLmluY2x1ZGVzKG9yc1tpXSkpIHtcbiAgICAgICAgb3IgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoIW9yKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbXVzdHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGlmICghdG9TdHJpbmcoaXRlbSkuaW5jbHVkZXMobXVzdHNbaV0pKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBub3RzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBpZiAodG9TdHJpbmcoaXRlbSkuaW5jbHVkZXMobm90c1tpXSkpIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG5cbiAgZmlsdGVyUm93czxUPihcbiAgICByb3dzOiBUW10sXG4gICAgZmlsdGVyU3RyaW5nOiBzdHJpbmcsXG4gICAgdG9TdHJpbmc6ICh0OiBUKSA9PiBzdHJpbmcgPSAodDogVCkgPT4gSlNPTi5zdHJpbmdpZnkodCkudG9Mb3dlckNhc2UoKVxuICApOiBUW10ge1xuXG4gICAgaWYgKCFyb3dzKSB7XG4gICAgICByZXR1cm4gW107XG4gICAgfVxuICAgIGlmICghZmlsdGVyU3RyaW5nKSB7XG4gICAgICByZXR1cm4gWy4uLnJvd3NdO1xuICAgIH1cbiAgICBmaWx0ZXJTdHJpbmcgPSBmaWx0ZXJTdHJpbmcudG9Mb3dlckNhc2UoKTtcblxuICAgIGNvbnN0IHByZWZpeE11c3QgPSBcIitcIjtcbiAgICBjb25zdCBwcmVmaXhOb3QgPSBcIi1cIjtcbiAgICBjb25zdCBhcnIgPSBmaWx0ZXJTdHJpbmcudG9Mb3dlckNhc2UoKS5zcGxpdChcIiBcIikuZmlsdGVyKHMgPT4gcyAhPT0gcHJlZml4TXVzdCAmJiBzICE9PSBwcmVmaXhOb3QgJiYgcyAhPT0gXCJcIik7XG5cbiAgICBjb25zdCBvcnM6IHN0cmluZ1tdID0gYXJyXG4gICAgICAuZmlsdGVyKGYgPT4gIWYuc3RhcnRzV2l0aChwcmVmaXhNdXN0KSAmJiAhZi5zdGFydHNXaXRoKHByZWZpeE5vdCkpO1xuXG4gICAgY29uc3QgbXVzdHM6IHN0cmluZ1tdID0gYXJyXG4gICAgICAuZmlsdGVyKGYgPT4gZi5zdGFydHNXaXRoKHByZWZpeE11c3QpKVxuICAgICAgLm1hcChzID0+IHMucmVwbGFjZSgvXFwrL2csIFwiXCIpKTtcblxuICAgIGNvbnN0IG5vdHM6IHN0cmluZ1tdID0gYXJyXG4gICAgICAuZmlsdGVyKGYgPT4gZi5zdGFydHNXaXRoKHByZWZpeE5vdCkpXG4gICAgICAubWFwKHMgPT4gcy5yZXBsYWNlKC8tL2csIFwiXCIpKTtcblxuICAgIHJldHVybiByb3dzPy5maWx0ZXIoZiA9PiB7XG4gICAgICBsZXQgb3IgPSAhb3JzLmxlbmd0aDtcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgb3JzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlmIChvciB8fCB0b1N0cmluZyhmKS5pbmNsdWRlcyhvcnNbaV0pKSB7XG4gICAgICAgICAgb3IgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAoIW9yKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbXVzdHMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKCF0b1N0cmluZyhmKS5pbmNsdWRlcyhtdXN0c1tpXSkpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbm90cy5sZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAodG9TdHJpbmcoZikuaW5jbHVkZXMobm90c1tpXSkpIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0pO1xuICB9XG5cbiAgb2JqZWN0VG9TdHJpbmc8VD4obzogVCk6IHN0cmluZyB7XG4gICAgaWYgKCFvKSB7XG4gICAgICByZXR1cm4gXCJcIjtcbiAgICB9XG4gICAgY29uc3QgYnVmOiB1bmtub3duW10gPSBbXTtcbiAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMobyk7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBrZXlzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCBrZXkgPSBrZXlzW2ldO1xuICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgYnVmLnB1c2gob1trZXldKTtcbiAgICB9XG4gICAgcmV0dXJuIGJ1Zi5qb2luKFwiIFwiKS50b0xvd2VyQ2FzZSgpO1xuICB9XG5cbn1cbiJdfQ==
@@ -0,0 +1,34 @@
1
+ export class SimpleDomService {
2
+ setStyle(el, style, value) {
3
+ el.style[style] = value;
4
+ return el;
5
+ }
6
+ ;
7
+ appendText(parent, text) {
8
+ const div = this.createText(text);
9
+ this.appendChild(parent, div);
10
+ return div;
11
+ }
12
+ addClass(div, clazz) {
13
+ if (clazz.includes(" ")) {
14
+ clazz.split(" ").forEach(c => div.classList.add(c));
15
+ }
16
+ else {
17
+ div.classList.add(clazz);
18
+ }
19
+ return div;
20
+ }
21
+ appendChild(parent, child) {
22
+ parent.appendChild(child);
23
+ }
24
+ createElement(name) {
25
+ return document.createElement(name);
26
+ }
27
+ createText(value) {
28
+ return document.createTextNode(value);
29
+ }
30
+ setAttribute(ele, key, value) {
31
+ ele.setAttribute(key, value);
32
+ }
33
+ }
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWRvbS1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy90YWJsZS9zcmMvbGliL3RhYmxlL3NlcnZpY2Uvc2ltcGxlLWRvbS1zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyxnQkFBZ0I7SUFHM0IsUUFBUSxDQUFDLEVBQU8sRUFBRSxLQUFhLEVBQUUsS0FBVTtRQUN6QyxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUN4QixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFBQSxDQUFDO0lBR0YsVUFBVSxDQUFDLE1BQXNCLEVBQUUsSUFBWTtRQUM3QyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzlCLE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUdELFFBQVEsQ0FBQyxHQUFtQixFQUFFLEtBQWE7UUFDekMsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZCLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNyRDthQUFNO1lBQ0wsR0FBRyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDMUI7UUFDRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFFRCxXQUFXLENBQUMsTUFBbUIsRUFBRSxLQUFrQjtRQUNqRCxNQUFNLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxhQUFhLENBQUksSUFBWTtRQUMzQixPQUFPLFFBQVEsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFNLENBQUM7SUFDM0MsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFhO1FBQ3RCLE9BQU8sUUFBUSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsWUFBWSxDQUFDLEdBQWdCLEVBQUUsR0FBVyxFQUFFLEtBQWE7UUFDdkQsR0FBRyxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztDQUdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRG9tU2VydmljZUlmIH0gZnJvbSBcIi4vZG9tLXNlcnZpY2UuaWZcIjtcblxuXG5leHBvcnQgY2xhc3MgU2ltcGxlRG9tU2VydmljZSBpbXBsZW1lbnRzIERvbVNlcnZpY2VJZiB7XG5cblxuICBzZXRTdHlsZShlbDogYW55LCBzdHlsZTogc3RyaW5nLCB2YWx1ZTogYW55KTogYW55IHtcbiAgICBlbC5zdHlsZVtzdHlsZV0gPSB2YWx1ZTtcbiAgICByZXR1cm4gZWw7XG4gIH07XG5cblxuICBhcHBlbmRUZXh0KHBhcmVudDogSFRNTERpdkVsZW1lbnQsIHRleHQ6IHN0cmluZyk6IEhUTUxEaXZFbGVtZW50IHtcbiAgICBjb25zdCBkaXYgPSB0aGlzLmNyZWF0ZVRleHQodGV4dCk7XG4gICAgdGhpcy5hcHBlbmRDaGlsZChwYXJlbnQsIGRpdik7XG4gICAgcmV0dXJuIGRpdjtcbiAgfVxuXG5cbiAgYWRkQ2xhc3MoZGl2OiBIVE1MRGl2RWxlbWVudCwgY2xheno6IHN0cmluZykge1xuICAgIGlmIChjbGF6ei5pbmNsdWRlcyhcIiBcIikpIHtcbiAgICAgIGNsYXp6LnNwbGl0KFwiIFwiKS5mb3JFYWNoKGMgPT4gZGl2LmNsYXNzTGlzdC5hZGQoYykpO1xuICAgIH0gZWxzZSB7XG4gICAgICBkaXYuY2xhc3NMaXN0LmFkZChjbGF6eik7XG4gICAgfVxuICAgIHJldHVybiBkaXY7XG4gIH1cblxuICBhcHBlbmRDaGlsZChwYXJlbnQ6IEhUTUxFbGVtZW50LCBjaGlsZDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICBwYXJlbnQuYXBwZW5kQ2hpbGQoY2hpbGQpO1xuICB9XG5cbiAgY3JlYXRlRWxlbWVudDxUPihuYW1lOiBzdHJpbmcpOiBUIHtcbiAgICByZXR1cm4gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChuYW1lKSBhcyBUO1xuICB9XG5cbiAgY3JlYXRlVGV4dCh2YWx1ZTogc3RyaW5nKTogYW55IHtcbiAgICByZXR1cm4gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUodmFsdWUpO1xuICB9XG5cbiAgc2V0QXR0cmlidXRlKGVsZTogSFRNTEVsZW1lbnQsIGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgZWxlLnNldEF0dHJpYnV0ZShrZXksIHZhbHVlKTtcbiAgfVxuXG5cbn1cbiJdfQ==
@@ -0,0 +1,27 @@
1
+ export class SorterService {
2
+ genericSortComparator(va, vb, f) {
3
+ if (typeof va === "number" && typeof vb === "number") {
4
+ return f * (va - vb);
5
+ }
6
+ if (typeof va === "string" && typeof vb === "string") {
7
+ return f * (va.localeCompare(vb));
8
+ }
9
+ if (typeof va === "boolean" && typeof vb === "boolean") {
10
+ const a = va ? -1 : 1;
11
+ const b = vb ? -1 : 1;
12
+ return f * (a - b);
13
+ }
14
+ if (va instanceof Date && vb instanceof Date) {
15
+ return f * (va.getTime() - vb.getTime());
16
+ }
17
+ if (va instanceof Array && vb instanceof Array) {
18
+ const arr1 = va;
19
+ const arr2 = vb;
20
+ if (arr1.length && arr2.length) {
21
+ return this.genericSortComparator(arr1[0], arr2[0], f);
22
+ }
23
+ }
24
+ return f * ("" + va).localeCompare(("" + vb));
25
+ }
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic29ydGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL3RhYmxlL3NyYy9saWIvdGFibGUvc2VydmljZS9zb3J0ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sYUFBYTtJQUd4QixxQkFBcUIsQ0FBQyxFQUFPLEVBQUUsRUFBTyxFQUFFLENBQVM7UUFDL0MsSUFBSSxPQUFPLEVBQUUsS0FBSyxRQUFRLElBQUksT0FBTyxFQUFFLEtBQUssUUFBUSxFQUFFO1lBQ3BELE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1NBQ3RCO1FBQ0QsSUFBSSxPQUFPLEVBQUUsS0FBSyxRQUFRLElBQUksT0FBTyxFQUFFLEtBQUssUUFBUSxFQUFFO1lBQ3BELE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ25DO1FBQ0QsSUFBSSxPQUFPLEVBQUUsS0FBSyxTQUFTLElBQUksT0FBTyxFQUFFLEtBQUssU0FBUyxFQUFFO1lBQ3RELE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN0QixNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDdEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDcEI7UUFDRCxJQUFJLEVBQUUsWUFBWSxJQUFJLElBQUksRUFBRSxZQUFZLElBQUksRUFBRTtZQUM1QyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztTQUMxQztRQUNELElBQUksRUFBRSxZQUFZLEtBQUssSUFBSSxFQUFFLFlBQVksS0FBSyxFQUFFO1lBQzlDLE1BQU0sSUFBSSxHQUFlLEVBQUUsQ0FBQztZQUM1QixNQUFNLElBQUksR0FBZSxFQUFFLENBQUM7WUFDNUIsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7Z0JBQzlCLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDeEQ7U0FDRjtRQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2hELENBQUM7Q0FHRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBTb3J0ZXJTZXJ2aWNlIHtcblxuXG4gIGdlbmVyaWNTb3J0Q29tcGFyYXRvcih2YTogYW55LCB2YjogYW55LCBmOiBudW1iZXIpOiBudW1iZXIge1xuICAgIGlmICh0eXBlb2YgdmEgPT09IFwibnVtYmVyXCIgJiYgdHlwZW9mIHZiID09PSBcIm51bWJlclwiKSB7XG4gICAgICByZXR1cm4gZiAqICh2YSAtIHZiKTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiB2YSA9PT0gXCJzdHJpbmdcIiAmJiB0eXBlb2YgdmIgPT09IFwic3RyaW5nXCIpIHtcbiAgICAgIHJldHVybiBmICogKHZhLmxvY2FsZUNvbXBhcmUodmIpKTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiB2YSA9PT0gXCJib29sZWFuXCIgJiYgdHlwZW9mIHZiID09PSBcImJvb2xlYW5cIikge1xuICAgICAgY29uc3QgYSA9IHZhID8gLTEgOiAxO1xuICAgICAgY29uc3QgYiA9IHZiID8gLTEgOiAxO1xuICAgICAgcmV0dXJuIGYgKiAoYSAtIGIpO1xuICAgIH1cbiAgICBpZiAodmEgaW5zdGFuY2VvZiBEYXRlICYmIHZiIGluc3RhbmNlb2YgRGF0ZSkge1xuICAgICAgcmV0dXJuIGYgKiAodmEuZ2V0VGltZSgpIC0gdmIuZ2V0VGltZSgpKTtcbiAgICB9XG4gICAgaWYgKHZhIGluc3RhbmNlb2YgQXJyYXkgJiYgdmIgaW5zdGFuY2VvZiBBcnJheSkge1xuICAgICAgY29uc3QgYXJyMTogQXJyYXk8YW55PiA9IHZhO1xuICAgICAgY29uc3QgYXJyMjogQXJyYXk8YW55PiA9IHZiO1xuICAgICAgaWYgKGFycjEubGVuZ3RoICYmIGFycjIubGVuZ3RoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdlbmVyaWNTb3J0Q29tcGFyYXRvcihhcnIxWzBdLCBhcnIyWzBdLCBmKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGYgKiAoXCJcIiArIHZhKS5sb2NhbGVDb21wYXJlKChcIlwiICsgdmIpKTtcbiAgfVxuXG5cbn1cbiJdfQ==
@@ -0,0 +1,57 @@
1
+ import { AbstractStoreStateService } from "./abstract-store-state.service";
2
+ import { CollapsedExpandedData } from "./data/collapsed-expanded.data";
3
+ export class StoreStateCollapsedExpandService extends AbstractStoreStateService {
4
+ COLLAPSED_EXPANDED_STATE = "collapsedExpandedState";
5
+ collapsedExpandedState = new CollapsedExpandedData();
6
+ constructor(fn) {
7
+ super(fn);
8
+ this.load();
9
+ }
10
+ collapsedExpandedStateGet() {
11
+ return this.collapsedExpandedState;
12
+ }
13
+ collapsedExpandedStateIncludes(rowId) {
14
+ return this.collapsedExpandedState.rowIds.includes(rowId);
15
+ }
16
+ collapsedStateIdsPush(id) {
17
+ if (!this.collapsedExpandedState.rowIds.includes(id)) {
18
+ this.collapsedExpandedState.rowIds.push(id);
19
+ this.collapsedExpandedState.allCollapsed = false;
20
+ this.collapsedExpandedState.allExpanded = false;
21
+ this.persist();
22
+ }
23
+ }
24
+ collapsedStateIdsRemove(id) {
25
+ const idx = this.collapsedExpandedState.rowIds.indexOf(id);
26
+ if (idx !== -1) {
27
+ this.collapsedExpandedState.rowIds.splice(idx, 1);
28
+ this.collapsedExpandedState.allCollapsed = false;
29
+ this.collapsedExpandedState.allExpanded = false;
30
+ this.persist();
31
+ }
32
+ }
33
+ collapsedStateAll(expand) {
34
+ this.collapsedExpandedState.rowIds = [];
35
+ this.collapsedExpandedState.mode = expand ? "collapsed" : "expanded"; // if all expanded, rowids are the collapsed ones
36
+ this.collapsedExpandedState.allCollapsed = !expand;
37
+ this.collapsedExpandedState.allExpanded = expand;
38
+ this.persist();
39
+ }
40
+ load() {
41
+ const fn = this.getStorageKeyFn;
42
+ if (fn) {
43
+ const key = fn();
44
+ if (key) {
45
+ const subKey2 = key + this.COLLAPSED_EXPANDED_STATE;
46
+ const data = this.loadFromLocalStorage(subKey2);
47
+ if (data) {
48
+ this.collapsedExpandedState = data;
49
+ }
50
+ }
51
+ }
52
+ }
53
+ persist() {
54
+ this.checkAndPersistItem(this.COLLAPSED_EXPANDED_STATE, this.collapsedExpandedState);
55
+ }
56
+ }
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUtc3RhdGUtY29sbGFwc2VkLWV4cGFuZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy90YWJsZS9zcmMvbGliL3RhYmxlL3NlcnZpY2Uvc3RvcmUtc3RhdGUtY29sbGFwc2VkLWV4cGFuZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBSXZFLE1BQU0sT0FBTyxnQ0FBaUMsU0FBUSx5QkFBeUI7SUFFNUQsd0JBQXdCLEdBQUcsd0JBQXdCLENBQUM7SUFDN0Qsc0JBQXNCLEdBQTBCLElBQUkscUJBQXFCLEVBQUUsQ0FBQztJQUdwRixZQUNFLEVBQStCO1FBQy9CLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNWLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFHRCx5QkFBeUI7UUFDdkIsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUM7SUFDckMsQ0FBQztJQUVELDhCQUE4QixDQUFDLEtBQXdCO1FBQ3JELE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUdELHFCQUFxQixDQUFDLEVBQXFCO1FBQ3pDLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUNwRCxJQUFJLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztZQUNqRCxJQUFJLENBQUMsc0JBQXNCLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztZQUNoRCxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDaEI7SUFDSCxDQUFDO0lBRUQsdUJBQXVCLENBQUMsRUFBcUI7UUFDM0MsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDM0QsSUFBSSxHQUFHLEtBQUssQ0FBQyxDQUFDLEVBQUU7WUFDZCxJQUFJLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDbEQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7WUFDakQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7WUFDaEQsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ2hCO0lBQ0gsQ0FBQztJQUdELGlCQUFpQixDQUFDLE1BQWU7UUFDL0IsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDeEMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsaURBQWlEO1FBQ3ZILElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxZQUFZLEdBQUcsQ0FBQyxNQUFNLENBQUM7UUFDbkQsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUM7UUFDakQsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFHa0IsSUFBSTtRQUNyQixNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQ2hDLElBQUksRUFBRSxFQUFFO1lBQ04sTUFBTSxHQUFHLEdBQUcsRUFBRSxFQUFFLENBQUM7WUFDakIsSUFBSSxHQUFHLEVBQUU7Z0JBQ1AsTUFBTSxPQUFPLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQztnQkFDcEQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUF3QixPQUFPLENBQUMsQ0FBQztnQkFDdkUsSUFBSSxJQUFJLEVBQUU7b0JBQ1IsSUFBSSxDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQztpQkFDcEM7YUFDRjtTQUNGO0lBQ0gsQ0FBQztJQUVPLE9BQU87UUFDYixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLHdCQUF3QixFQUFFLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQ3ZGLENBQUM7Q0FHRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0U3RvcmVTdGF0ZVNlcnZpY2UgfSBmcm9tIFwiLi9hYnN0cmFjdC1zdG9yZS1zdGF0ZS5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBDb2xsYXBzZWRFeHBhbmRlZERhdGEgfSBmcm9tIFwiLi9kYXRhL2NvbGxhcHNlZC1leHBhbmRlZC5kYXRhXCI7XG5pbXBvcnQgeyBHZXRTdG9yYWdlS2V5Rm4gfSBmcm9tIFwiLi4vZGF0YS9vcHRpb25zL2F1dG8tcmVzdG9yZS1vcHRpb25zLmlmXCI7XG5cblxuZXhwb3J0IGNsYXNzIFN0b3JlU3RhdGVDb2xsYXBzZWRFeHBhbmRTZXJ2aWNlIGV4dGVuZHMgQWJzdHJhY3RTdG9yZVN0YXRlU2VydmljZSB7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBDT0xMQVBTRURfRVhQQU5ERURfU1RBVEUgPSBcImNvbGxhcHNlZEV4cGFuZGVkU3RhdGVcIjtcbiAgcHJpdmF0ZSBjb2xsYXBzZWRFeHBhbmRlZFN0YXRlOiBDb2xsYXBzZWRFeHBhbmRlZERhdGEgPSBuZXcgQ29sbGFwc2VkRXhwYW5kZWREYXRhKCk7XG5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBmbjogR2V0U3RvcmFnZUtleUZuIHwgdW5kZWZpbmVkKSB7XG4gICAgc3VwZXIoZm4pO1xuICAgIHRoaXMubG9hZCgpO1xuICB9XG5cblxuICBjb2xsYXBzZWRFeHBhbmRlZFN0YXRlR2V0KCk6IENvbGxhcHNlZEV4cGFuZGVkRGF0YSB7XG4gICAgcmV0dXJuIHRoaXMuY29sbGFwc2VkRXhwYW5kZWRTdGF0ZTtcbiAgfVxuXG4gIGNvbGxhcHNlZEV4cGFuZGVkU3RhdGVJbmNsdWRlcyhyb3dJZDogKHN0cmluZyB8IG51bWJlcikpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jb2xsYXBzZWRFeHBhbmRlZFN0YXRlLnJvd0lkcy5pbmNsdWRlcyhyb3dJZCk7XG4gIH1cblxuXG4gIGNvbGxhcHNlZFN0YXRlSWRzUHVzaChpZDogKHN0cmluZyB8IG51bWJlcikpIHtcbiAgICBpZiAoIXRoaXMuY29sbGFwc2VkRXhwYW5kZWRTdGF0ZS5yb3dJZHMuaW5jbHVkZXMoaWQpKSB7XG4gICAgICB0aGlzLmNvbGxhcHNlZEV4cGFuZGVkU3RhdGUucm93SWRzLnB1c2goaWQpO1xuICAgICAgdGhpcy5jb2xsYXBzZWRFeHBhbmRlZFN0YXRlLmFsbENvbGxhcHNlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5jb2xsYXBzZWRFeHBhbmRlZFN0YXRlLmFsbEV4cGFuZGVkID0gZmFsc2U7XG4gICAgICB0aGlzLnBlcnNpc3QoKTtcbiAgICB9XG4gIH1cblxuICBjb2xsYXBzZWRTdGF0ZUlkc1JlbW92ZShpZDogKHN0cmluZyB8IG51bWJlcikpIHtcbiAgICBjb25zdCBpZHggPSB0aGlzLmNvbGxhcHNlZEV4cGFuZGVkU3RhdGUucm93SWRzLmluZGV4T2YoaWQpO1xuICAgIGlmIChpZHggIT09IC0xKSB7XG4gICAgICB0aGlzLmNvbGxhcHNlZEV4cGFuZGVkU3RhdGUucm93SWRzLnNwbGljZShpZHgsIDEpO1xuICAgICAgdGhpcy5jb2xsYXBzZWRFeHBhbmRlZFN0YXRlLmFsbENvbGxhcHNlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5jb2xsYXBzZWRFeHBhbmRlZFN0YXRlLmFsbEV4cGFuZGVkID0gZmFsc2U7XG4gICAgICB0aGlzLnBlcnNpc3QoKTtcbiAgICB9XG4gIH1cblxuXG4gIGNvbGxhcHNlZFN0YXRlQWxsKGV4cGFuZDogYm9vbGVhbikge1xuICAgIHRoaXMuY29sbGFwc2VkRXhwYW5kZWRTdGF0ZS5yb3dJZHMgPSBbXTtcbiAgICB0aGlzLmNvbGxhcHNlZEV4cGFuZGVkU3RhdGUubW9kZSA9IGV4cGFuZCA/IFwiY29sbGFwc2VkXCIgOiBcImV4cGFuZGVkXCI7IC8vIGlmIGFsbCBleHBhbmRlZCwgcm93aWRzIGFyZSB0aGUgY29sbGFwc2VkIG9uZXNcbiAgICB0aGlzLmNvbGxhcHNlZEV4cGFuZGVkU3RhdGUuYWxsQ29sbGFwc2VkID0gIWV4cGFuZDtcbiAgICB0aGlzLmNvbGxhcHNlZEV4cGFuZGVkU3RhdGUuYWxsRXhwYW5kZWQgPSBleHBhbmQ7XG4gICAgdGhpcy5wZXJzaXN0KCk7XG4gIH1cblxuXG4gIHByb3RlY3RlZCBvdmVycmlkZSBsb2FkKCkge1xuICAgIGNvbnN0IGZuID0gdGhpcy5nZXRTdG9yYWdlS2V5Rm47XG4gICAgaWYgKGZuKSB7XG4gICAgICBjb25zdCBrZXkgPSBmbigpO1xuICAgICAgaWYgKGtleSkge1xuICAgICAgICBjb25zdCBzdWJLZXkyID0ga2V5ICsgdGhpcy5DT0xMQVBTRURfRVhQQU5ERURfU1RBVEU7XG4gICAgICAgIGNvbnN0IGRhdGEgPSB0aGlzLmxvYWRGcm9tTG9jYWxTdG9yYWdlPENvbGxhcHNlZEV4cGFuZGVkRGF0YT4oc3ViS2V5Mik7XG4gICAgICAgIGlmIChkYXRhKSB7XG4gICAgICAgICAgdGhpcy5jb2xsYXBzZWRFeHBhbmRlZFN0YXRlID0gZGF0YTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcGVyc2lzdCgpIHtcbiAgICB0aGlzLmNoZWNrQW5kUGVyc2lzdEl0ZW0odGhpcy5DT0xMQVBTRURfRVhQQU5ERURfU1RBVEUsIHRoaXMuY29sbGFwc2VkRXhwYW5kZWRTdGF0ZSk7XG4gIH1cblxuXG59XG4iXX0=
@@ -0,0 +1,29 @@
1
+ import { AbstractStoreStateService } from "./abstract-store-state.service";
2
+ export class StoreStateScrollPosService extends AbstractStoreStateService {
3
+ SCROLL_STATE = "scrollState";
4
+ scrollOffset = [0, 0];
5
+ constructor(fn) {
6
+ super(fn);
7
+ this.load();
8
+ }
9
+ getScrollOffset() {
10
+ return this.scrollOffset;
11
+ }
12
+ updateScrollOffset(xy) {
13
+ this.scrollOffset = xy;
14
+ this.checkAndPersistItem(this.SCROLL_STATE, this.scrollOffset);
15
+ }
16
+ load() {
17
+ const fn = this.getStorageKeyFn;
18
+ if (fn) {
19
+ const key = fn();
20
+ if (key) {
21
+ // A main key is given by function from options
22
+ const subKey4 = key + this.SCROLL_STATE;
23
+ let scrollOffset = this.loadFromLocalStorage(subKey4);
24
+ this.scrollOffset = scrollOffset ? scrollOffset : [0, 0];
25
+ }
26
+ }
27
+ }
28
+ }
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUtc3RhdGUtc2Nyb2xsLXBvcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy90YWJsZS9zcmMvbGliL3RhYmxlL3NlcnZpY2Uvc3RvcmUtc3RhdGUtc2Nyb2xsLXBvcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBSTNFLE1BQU0sT0FBTywwQkFBMkIsU0FBUSx5QkFBeUI7SUFFdEQsWUFBWSxHQUFHLGFBQWEsQ0FBQztJQUN0QyxZQUFZLEdBQXFCLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBR2hELFlBQVksRUFBK0I7UUFDekMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ1YsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVELGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELGtCQUFrQixDQUFDLEVBQW9CO1FBQ3JDLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBR2tCLElBQUk7UUFDckIsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQztRQUNoQyxJQUFJLEVBQUUsRUFBRTtZQUNOLE1BQU0sR0FBRyxHQUFHLEVBQUUsRUFBRSxDQUFDO1lBQ2pCLElBQUksR0FBRyxFQUFFO2dCQUNQLCtDQUErQztnQkFDL0MsTUFBTSxPQUFPLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7Z0JBQ3hDLElBQUksWUFBWSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBbUIsT0FBTyxDQUFDLENBQUM7Z0JBQ3hFLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2FBQzFEO1NBQ0Y7SUFDSCxDQUFDO0NBR0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdFN0b3JlU3RhdGVTZXJ2aWNlIH0gZnJvbSBcIi4vYWJzdHJhY3Qtc3RvcmUtc3RhdGUuc2VydmljZVwiO1xuaW1wb3J0IHsgR2V0U3RvcmFnZUtleUZuIH0gZnJvbSBcIi4uL2RhdGEvb3B0aW9ucy9hdXRvLXJlc3RvcmUtb3B0aW9ucy5pZlwiO1xuXG5cbmV4cG9ydCBjbGFzcyBTdG9yZVN0YXRlU2Nyb2xsUG9zU2VydmljZSBleHRlbmRzIEFic3RyYWN0U3RvcmVTdGF0ZVNlcnZpY2Uge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgU0NST0xMX1NUQVRFID0gXCJzY3JvbGxTdGF0ZVwiO1xuICBwcml2YXRlIHNjcm9sbE9mZnNldDogW251bWJlciwgbnVtYmVyXSA9IFswLCAwXTtcblxuXG4gIGNvbnN0cnVjdG9yKGZuOiBHZXRTdG9yYWdlS2V5Rm4gfCB1bmRlZmluZWQpIHtcbiAgICBzdXBlcihmbik7XG4gICAgdGhpcy5sb2FkKCk7XG4gIH1cblxuICBnZXRTY3JvbGxPZmZzZXQoKTogW251bWJlciwgbnVtYmVyXSB7XG4gICAgcmV0dXJuIHRoaXMuc2Nyb2xsT2Zmc2V0O1xuICB9XG5cbiAgdXBkYXRlU2Nyb2xsT2Zmc2V0KHh5OiBbbnVtYmVyLCBudW1iZXJdKSB7XG4gICAgdGhpcy5zY3JvbGxPZmZzZXQgPSB4eTtcbiAgICB0aGlzLmNoZWNrQW5kUGVyc2lzdEl0ZW0odGhpcy5TQ1JPTExfU1RBVEUsIHRoaXMuc2Nyb2xsT2Zmc2V0KTtcbiAgfVxuXG5cbiAgcHJvdGVjdGVkIG92ZXJyaWRlIGxvYWQoKSB7XG4gICAgY29uc3QgZm4gPSB0aGlzLmdldFN0b3JhZ2VLZXlGbjtcbiAgICBpZiAoZm4pIHtcbiAgICAgIGNvbnN0IGtleSA9IGZuKCk7XG4gICAgICBpZiAoa2V5KSB7XG4gICAgICAgIC8vIEEgbWFpbiBrZXkgaXMgZ2l2ZW4gYnkgZnVuY3Rpb24gZnJvbSBvcHRpb25zXG4gICAgICAgIGNvbnN0IHN1YktleTQgPSBrZXkgKyB0aGlzLlNDUk9MTF9TVEFURTtcbiAgICAgICAgbGV0IHNjcm9sbE9mZnNldCA9IHRoaXMubG9hZEZyb21Mb2NhbFN0b3JhZ2U8W251bWJlciwgbnVtYmVyXT4oc3ViS2V5NCk7XG4gICAgICAgIHRoaXMuc2Nyb2xsT2Zmc2V0ID0gc2Nyb2xsT2Zmc2V0ID8gc2Nyb2xsT2Zmc2V0IDogWzAsIDBdO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbn1cbiJdfQ==
@@ -0,0 +1,29 @@
1
+ import { AbstractStoreStateService } from "./abstract-store-state.service";
2
+ export class StoreStateSortingService extends AbstractStoreStateService {
3
+ SORTING_STATE = "sortingState";
4
+ sortItems = [];
5
+ constructor(fn) {
6
+ super(fn);
7
+ this.load();
8
+ }
9
+ getSortItems() {
10
+ return this.sortItems;
11
+ }
12
+ setSortItems(sortItems) {
13
+ this.sortItems = sortItems;
14
+ this.checkAndPersistItem(this.SORTING_STATE, this.sortItems);
15
+ }
16
+ load() {
17
+ const fn = this.getStorageKeyFn;
18
+ if (fn) {
19
+ const key = fn();
20
+ if (key) {
21
+ // A main key is given by function from options
22
+ const subKey = key + this.SORTING_STATE;
23
+ let sortItems = this.loadFromLocalStorage(subKey);
24
+ this.sortItems = sortItems ? sortItems : [];
25
+ }
26
+ }
27
+ }
28
+ }
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmUtc3RhdGUtc29ydGluZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy90YWJsZS9zcmMvbGliL3RhYmxlL3NlcnZpY2Uvc3RvcmUtc3RhdGUtc29ydGluZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBSzNFLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSx5QkFBeUI7SUFFcEQsYUFBYSxHQUFHLGNBQWMsQ0FBQztJQUN4QyxTQUFTLEdBQWUsRUFBRSxDQUFDO0lBR25DLFlBQVksRUFBK0I7UUFDekMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ1YsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2QsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEIsQ0FBQztJQUVELFlBQVksQ0FBQyxTQUFxQjtRQUNoQyxJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztRQUMzQixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUdrQixJQUFJO1FBQ3JCLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDaEMsSUFBSSxFQUFFLEVBQUU7WUFDTixNQUFNLEdBQUcsR0FBRyxFQUFFLEVBQUUsQ0FBQztZQUNqQixJQUFJLEdBQUcsRUFBRTtnQkFDUCwrQ0FBK0M7Z0JBQy9DLE1BQU0sTUFBTSxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO2dCQUN4QyxJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQWEsTUFBTSxDQUFDLENBQUM7Z0JBQzlELElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQzthQUM3QztTQUNGO0lBQ0gsQ0FBQztDQUdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RTdG9yZVN0YXRlU2VydmljZSB9IGZyb20gXCIuL2Fic3RyYWN0LXN0b3JlLXN0YXRlLnNlcnZpY2VcIjtcbmltcG9ydCB7IEdldFN0b3JhZ2VLZXlGbiB9IGZyb20gXCIuLi9kYXRhL29wdGlvbnMvYXV0by1yZXN0b3JlLW9wdGlvbnMuaWZcIjtcbmltcG9ydCB7IFNvcnRJdGVtIH0gZnJvbSBcIi4uL2RhdGEvY29tbW9uL3NvcnQtaXRlbVwiO1xuXG5cbmV4cG9ydCBjbGFzcyBTdG9yZVN0YXRlU29ydGluZ1NlcnZpY2UgZXh0ZW5kcyBBYnN0cmFjdFN0b3JlU3RhdGVTZXJ2aWNlIHtcblxuICBwcml2YXRlIHJlYWRvbmx5IFNPUlRJTkdfU1RBVEUgPSBcInNvcnRpbmdTdGF0ZVwiO1xuICBwcml2YXRlIHNvcnRJdGVtczogU29ydEl0ZW1bXSA9IFtdO1xuXG5cbiAgY29uc3RydWN0b3IoZm46IEdldFN0b3JhZ2VLZXlGbiB8IHVuZGVmaW5lZCkge1xuICAgIHN1cGVyKGZuKTtcbiAgICB0aGlzLmxvYWQoKTtcbiAgfVxuXG4gIGdldFNvcnRJdGVtcygpOiBTb3J0SXRlbVtdIHtcbiAgICByZXR1cm4gdGhpcy5zb3J0SXRlbXM7XG4gIH1cblxuICBzZXRTb3J0SXRlbXMoc29ydEl0ZW1zOiBTb3J0SXRlbVtdKTogdm9pZCB7XG4gICAgdGhpcy5zb3J0SXRlbXMgPSBzb3J0SXRlbXM7XG4gICAgdGhpcy5jaGVja0FuZFBlcnNpc3RJdGVtKHRoaXMuU09SVElOR19TVEFURSwgdGhpcy5zb3J0SXRlbXMpO1xuICB9XG5cblxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgbG9hZCgpIHtcbiAgICBjb25zdCBmbiA9IHRoaXMuZ2V0U3RvcmFnZUtleUZuO1xuICAgIGlmIChmbikge1xuICAgICAgY29uc3Qga2V5ID0gZm4oKTtcbiAgICAgIGlmIChrZXkpIHtcbiAgICAgICAgLy8gQSBtYWluIGtleSBpcyBnaXZlbiBieSBmdW5jdGlvbiBmcm9tIG9wdGlvbnNcbiAgICAgICAgY29uc3Qgc3ViS2V5ID0ga2V5ICsgdGhpcy5TT1JUSU5HX1NUQVRFO1xuICAgICAgICBsZXQgc29ydEl0ZW1zID0gdGhpcy5sb2FkRnJvbUxvY2FsU3RvcmFnZTxTb3J0SXRlbVtdPihzdWJLZXkpO1xuICAgICAgICB0aGlzLnNvcnRJdGVtcyA9IHNvcnRJdGVtcyA/IHNvcnRJdGVtcyA6IFtdO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbn1cbiJdfQ==
@@ -0,0 +1,23 @@
1
+ export class TreeRowService {
2
+ flattenTree(rows, ret = []) {
3
+ for (const row of rows) {
4
+ if (this.isVisible(row)) {
5
+ ret.push(row);
6
+ }
7
+ if (row.children?.length) {
8
+ this.flattenTree(row.children, ret);
9
+ }
10
+ }
11
+ return ret;
12
+ }
13
+ isVisible(row) {
14
+ if (!row.parent) {
15
+ return true;
16
+ }
17
+ if (!row.parent.expanded) {
18
+ return false;
19
+ }
20
+ return this.isVisible(row.parent);
21
+ }
22
+ }
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJlZS1yb3cuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvdGFibGUvc3JjL2xpYi90YWJsZS9zZXJ2aWNlL3RyZWUtcm93LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLGNBQWM7SUFFekIsV0FBVyxDQUNULElBQWtCLEVBQ2xCLE1BQW9CLEVBQUU7UUFHdEIsS0FBSyxNQUFNLEdBQUcsSUFBSSxJQUFJLEVBQUU7WUFDdEIsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUN2QixHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ2Y7WUFDRCxJQUFJLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFO2dCQUN4QixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUM7YUFDckM7U0FDRjtRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztJQUVELFNBQVMsQ0FBQyxHQUFpQjtRQUN6QixJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRTtZQUNmLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUU7WUFDeEIsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUNELE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDcEMsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJlZVJvdyB9IGZyb20gXCIuLi9kYXRhL2NvbW1vbi90cmVlLXJvd1wiO1xuXG5leHBvcnQgY2xhc3MgVHJlZVJvd1NlcnZpY2Uge1xuXG4gIGZsYXR0ZW5UcmVlPFQ+KFxuICAgIHJvd3M6IFRyZWVSb3c8VD5bXSxcbiAgICByZXQ6IFRyZWVSb3c8VD5bXSA9IFtdXG4gICk6IFRyZWVSb3c8VD5bXSB7XG5cbiAgICBmb3IgKGNvbnN0IHJvdyBvZiByb3dzKSB7XG4gICAgICBpZiAodGhpcy5pc1Zpc2libGUocm93KSkge1xuICAgICAgICByZXQucHVzaChyb3cpO1xuICAgICAgfVxuICAgICAgaWYgKHJvdy5jaGlsZHJlbj8ubGVuZ3RoKSB7XG4gICAgICAgIHRoaXMuZmxhdHRlblRyZWUocm93LmNoaWxkcmVuLCByZXQpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmV0O1xuICB9XG5cbiAgaXNWaXNpYmxlKHJvdzogVHJlZVJvdzxhbnk+KTogYm9vbGVhbiB7XG4gICAgaWYgKCFyb3cucGFyZW50KSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgaWYgKCFyb3cucGFyZW50LmV4cGFuZGVkKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmlzVmlzaWJsZShyb3cucGFyZW50KTtcbiAgfVxuXG59XG4iXX0=
@@ -0,0 +1,42 @@
1
+ export class TableApi {
2
+ tableScope;
3
+ constructor(tableScope) {
4
+ this.tableScope = tableScope;
5
+ }
6
+ updateCells(events) {
7
+ this.tableScope.updateCells(events);
8
+ }
9
+ externalFilterChanged() {
10
+ this.tableScope.externalFilterChanged();
11
+ }
12
+ ;
13
+ scrollToPixel(_px = 0, _py = 0) {
14
+ // TODO scrollToPixel
15
+ }
16
+ scrollToIndex(_indexX = 0, _indexY = 0) {
17
+ // TODO scrollToIndex
18
+ }
19
+ setHeaderVisible(_visible = true) {
20
+ // TODO setHeaderVisible
21
+ }
22
+ setColumnVisible(_column, _visible = true) {
23
+ // TODO setColumnVisible
24
+ }
25
+ isColumnVisible(_column) {
26
+ // TODO isColumnVisible
27
+ return true;
28
+ }
29
+ isHeaderVisible() {
30
+ return true; // TODO isHeaderVisible
31
+ }
32
+ setFooterVisible(_visible = true) {
33
+ // TODO setFooterVisible
34
+ }
35
+ isFooterVisible() {
36
+ return true; // TODO isFooterVisible
37
+ }
38
+ repaint() {
39
+ this.tableScope.repaint();
40
+ }
41
+ }
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy90YWJsZS9zcmMvbGliL3RhYmxlL3RhYmxlLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxNQUFNLE9BQU8sUUFBUTtJQUdBO0lBRG5CLFlBQ21CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7SUFFekMsQ0FBQztJQUdELFdBQVcsQ0FBQyxNQUFnQztRQUMxQyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBR0QscUJBQXFCO1FBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMscUJBQXFCLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBQUEsQ0FBQztJQUVGLGFBQWEsQ0FBQyxNQUFjLENBQUMsRUFBRSxNQUFjLENBQUM7UUFDNUMscUJBQXFCO0lBQ3ZCLENBQUM7SUFHRCxhQUFhLENBQUMsVUFBa0IsQ0FBQyxFQUFFLFVBQWtCLENBQUM7UUFDcEQscUJBQXFCO0lBQ3ZCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxXQUFvQixJQUFJO1FBQ3ZDLHdCQUF3QjtJQUMxQixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsT0FBNkIsRUFBRSxXQUFvQixJQUFJO1FBQ3RFLHdCQUF3QjtJQUMxQixDQUFDO0lBRUQsZUFBZSxDQUFDLE9BQTZCO1FBQzNDLHVCQUF1QjtRQUN2QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsQ0FBQyx1QkFBdUI7SUFDdEMsQ0FBQztJQUVELGdCQUFnQixDQUFDLFdBQW9CLElBQUk7UUFDdkMsd0JBQXdCO0lBQzFCLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsQ0FBQyx1QkFBdUI7SUFDdEMsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzVCLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhYmxlU2NvcGUgfSBmcm9tIFwiLi90YWJsZS1zY29wZVwiO1xuaW1wb3J0IHsgQ29sdW1uRGVmSWYgfSBmcm9tIFwiLi9kYXRhL3RhYmxlbW9kZWwvY29sdW1uL2NvbHVtbi1kZWYuaWZcIjtcbmltcG9ydCB7IFRhYmxlQ2VsbFVwZGF0ZUV2ZW50SWYgfSBmcm9tIFwiLi9kYXRhL2NvbW1vbi9ldmVudC9pbnB1dC90YWJsZS1jZWxsLXVwZGF0ZS1ldmVudC5pZlwiO1xuXG5cbmV4cG9ydCBjbGFzcyBUYWJsZUFwaSB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSB0YWJsZVNjb3BlOiBUYWJsZVNjb3BlXG4gICkge1xuICB9XG5cblxuICB1cGRhdGVDZWxscyhldmVudHM6IFRhYmxlQ2VsbFVwZGF0ZUV2ZW50SWZbXSk6IHZvaWQge1xuICAgIHRoaXMudGFibGVTY29wZS51cGRhdGVDZWxscyhldmVudHMpO1xuICB9XG5cblxuICBleHRlcm5hbEZpbHRlckNoYW5nZWQoKTogdm9pZCB7XG4gICAgdGhpcy50YWJsZVNjb3BlLmV4dGVybmFsRmlsdGVyQ2hhbmdlZCgpO1xuICB9O1xuXG4gIHNjcm9sbFRvUGl4ZWwoX3B4OiBudW1iZXIgPSAwLCBfcHk6IG51bWJlciA9IDApIHtcbiAgICAvLyBUT0RPIHNjcm9sbFRvUGl4ZWxcbiAgfVxuXG5cbiAgc2Nyb2xsVG9JbmRleChfaW5kZXhYOiBudW1iZXIgPSAwLCBfaW5kZXhZOiBudW1iZXIgPSAwKSB7XG4gICAgLy8gVE9ETyBzY3JvbGxUb0luZGV4XG4gIH1cblxuICBzZXRIZWFkZXJWaXNpYmxlKF92aXNpYmxlOiBib29sZWFuID0gdHJ1ZSkge1xuICAgIC8vIFRPRE8gc2V0SGVhZGVyVmlzaWJsZVxuICB9XG5cbiAgc2V0Q29sdW1uVmlzaWJsZShfY29sdW1uOiBudW1iZXIgfCBDb2x1bW5EZWZJZiwgX3Zpc2libGU6IGJvb2xlYW4gPSB0cnVlKSB7XG4gICAgLy8gVE9ETyBzZXRDb2x1bW5WaXNpYmxlXG4gIH1cblxuICBpc0NvbHVtblZpc2libGUoX2NvbHVtbjogbnVtYmVyIHwgQ29sdW1uRGVmSWYpOiBib29sZWFuIHtcbiAgICAvLyBUT0RPIGlzQ29sdW1uVmlzaWJsZVxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgaXNIZWFkZXJWaXNpYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlOyAvLyBUT0RPIGlzSGVhZGVyVmlzaWJsZVxuICB9XG5cbiAgc2V0Rm9vdGVyVmlzaWJsZShfdmlzaWJsZTogYm9vbGVhbiA9IHRydWUpIHtcbiAgICAvLyBUT0RPIHNldEZvb3RlclZpc2libGVcbiAgfVxuXG4gIGlzRm9vdGVyVmlzaWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTsgLy8gVE9ETyBpc0Zvb3RlclZpc2libGVcbiAgfVxuXG4gIHJlcGFpbnQoKSB7XG4gICAgdGhpcy50YWJsZVNjb3BlLnJlcGFpbnQoKTtcbiAgfVxuXG59XG4iXX0=