@revolist/revogrid 4.0.2-next → 4.0.2

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 (805) hide show
  1. package/LICENSE +1 -1
  2. package/dist/cjs/app-globals-53fde1aa.js +14 -0
  3. package/dist/cjs/app-globals-53fde1aa.js.map +1 -0
  4. package/dist/cjs/column.service-2066d651.js +545 -0
  5. package/dist/cjs/column.service-2066d651.js.map +1 -0
  6. package/dist/cjs/debounce-e2b7c6fb.js +226 -0
  7. package/dist/cjs/debounce-e2b7c6fb.js.map +1 -0
  8. package/dist/cjs/dimension.helpers-ee39d6c4.js +4218 -0
  9. package/dist/cjs/dimension.helpers-ee39d6c4.js.map +1 -0
  10. package/dist/cjs/dispatcher-a58fa91a.js +34 -0
  11. package/dist/cjs/dispatcher-a58fa91a.js.map +1 -0
  12. package/dist/cjs/events-7ccd6894.js +233 -0
  13. package/dist/cjs/events-7ccd6894.js.map +1 -0
  14. package/dist/cjs/filter.button-db6cbd2e.js +44 -0
  15. package/dist/cjs/filter.button-db6cbd2e.js.map +1 -0
  16. package/dist/cjs/header-cell-renderer-3df76829.js +304 -0
  17. package/dist/cjs/header-cell-renderer-3df76829.js.map +1 -0
  18. package/dist/cjs/index-73c149e3.js +106 -0
  19. package/dist/cjs/index-73c149e3.js.map +1 -0
  20. package/dist/cjs/index-84e32c2a.js +1868 -0
  21. package/dist/cjs/index-84e32c2a.js.map +1 -0
  22. package/dist/cjs/index.cjs.js +53 -0
  23. package/dist/cjs/index.cjs.js.map +1 -0
  24. package/dist/cjs/key.utils-dc4ac217.js +129 -0
  25. package/dist/cjs/key.utils-dc4ac217.js.map +1 -0
  26. package/dist/cjs/loader.cjs.js +12 -27
  27. package/dist/cjs/loader.cjs.js.map +1 -0
  28. package/dist/cjs/{resize-observer-8dc80084.js → resize-observer-d009a220.js} +30 -13
  29. package/dist/cjs/resize-observer-d009a220.js.map +1 -0
  30. package/dist/cjs/revo-grid.cjs.entry.js +3992 -0
  31. package/dist/cjs/revo-grid.cjs.entry.js.map +1 -0
  32. package/dist/cjs/revo-grid.cjs.js +22 -65
  33. package/dist/cjs/revo-grid.cjs.js.map +1 -0
  34. package/dist/cjs/revogr-attribution_6.cjs.entry.js +1270 -0
  35. package/dist/cjs/revogr-attribution_6.cjs.entry.js.map +1 -0
  36. package/dist/cjs/revogr-clipboard_3.cjs.entry.js +508 -0
  37. package/dist/cjs/revogr-clipboard_3.cjs.entry.js.map +1 -0
  38. package/dist/cjs/revogr-data_4.cjs.entry.js +958 -0
  39. package/dist/cjs/revogr-data_4.cjs.entry.js.map +1 -0
  40. package/dist/cjs/revogr-filter-panel.cjs.entry.js +268 -115
  41. package/dist/cjs/revogr-filter-panel.cjs.entry.js.map +1 -0
  42. package/dist/cjs/selection.store-2e110a67.js +400 -0
  43. package/dist/cjs/selection.store-2e110a67.js.map +1 -0
  44. package/dist/cjs/storeTypes-b3f924b2.js +106 -0
  45. package/dist/cjs/storeTypes-b3f924b2.js.map +1 -0
  46. package/dist/cjs/throttle-f7aee21b.js +240 -0
  47. package/dist/cjs/throttle-f7aee21b.js.map +1 -0
  48. package/dist/cjs/toNumber-838e6ff5.js +340 -0
  49. package/dist/cjs/toNumber-838e6ff5.js.map +1 -0
  50. package/dist/cjs/viewport.helpers-6670177c.js +262 -0
  51. package/dist/cjs/viewport.helpers-6670177c.js.map +1 -0
  52. package/dist/collection/collection-manifest.json +18 -16
  53. package/dist/collection/components/attribution/revogr-attribution.js +20 -0
  54. package/dist/collection/components/attribution/revogr-attribution.js.map +1 -0
  55. package/dist/collection/components/clipboard/revogr-clipboard.js +410 -115
  56. package/dist/collection/components/clipboard/revogr-clipboard.js.map +1 -0
  57. package/dist/collection/components/data/cell-renderer.js +39 -0
  58. package/dist/collection/components/data/cell-renderer.js.map +1 -0
  59. package/dist/collection/components/data/column.service.js +302 -0
  60. package/dist/collection/components/data/column.service.js.map +1 -0
  61. package/dist/collection/components/data/revogr-data-style.css +18 -11
  62. package/dist/collection/components/data/revogr-data.js +626 -301
  63. package/dist/collection/components/data/revogr-data.js.map +1 -0
  64. package/dist/collection/components/data/row-highlight.plugin.js +51 -0
  65. package/dist/collection/components/data/row-highlight.plugin.js.map +1 -0
  66. package/dist/collection/components/data/row-renderer.js +16 -0
  67. package/dist/collection/components/data/row-renderer.js.map +1 -0
  68. package/dist/collection/components/editors/edit.utils.js +9 -0
  69. package/dist/collection/components/editors/edit.utils.js.map +1 -0
  70. package/dist/collection/components/{overlay → editors}/revogr-edit-style.css +15 -9
  71. package/dist/collection/components/editors/revogr-edit.js +316 -0
  72. package/dist/collection/components/editors/revogr-edit.js.map +1 -0
  73. package/dist/collection/components/editors/text-editor.js +73 -0
  74. package/dist/collection/components/editors/text-editor.js.map +1 -0
  75. package/dist/collection/components/header/header-cell-renderer.js +28 -0
  76. package/dist/collection/components/header/header-cell-renderer.js.map +1 -0
  77. package/dist/collection/components/header/header-renderer.js +47 -0
  78. package/dist/collection/components/header/header-renderer.js.map +1 -0
  79. package/dist/collection/components/header/revogr-header-style.css +15 -9
  80. package/dist/collection/components/header/revogr-header.js +421 -297
  81. package/dist/collection/components/header/revogr-header.js.map +1 -0
  82. package/dist/collection/components/order/order-renderer.js +50 -0
  83. package/dist/collection/components/order/order-renderer.js.map +1 -0
  84. package/dist/collection/components/order/order-row.service.js +72 -0
  85. package/dist/collection/components/order/order-row.service.js.map +1 -0
  86. package/dist/collection/components/order/revogr-order-editor.js +381 -350
  87. package/dist/collection/components/order/revogr-order-editor.js.map +1 -0
  88. package/dist/collection/components/overlay/autofill.service.js +206 -179
  89. package/dist/collection/components/overlay/autofill.service.js.map +1 -0
  90. package/dist/collection/components/overlay/keyboard.service.js +137 -124
  91. package/dist/collection/components/overlay/keyboard.service.js.map +1 -0
  92. package/dist/collection/components/overlay/revogr-overlay-selection.js +1208 -703
  93. package/dist/collection/components/overlay/revogr-overlay-selection.js.map +1 -0
  94. package/dist/collection/components/overlay/revogr-overlay-style.css +86 -13
  95. package/dist/collection/components/overlay/selection.utils.js +86 -82
  96. package/dist/collection/components/overlay/selection.utils.js.map +1 -0
  97. package/dist/collection/components/revoGrid/grid.helpers.js +28 -13
  98. package/dist/collection/components/revoGrid/grid.helpers.js.map +1 -0
  99. package/dist/collection/components/revoGrid/revo-grid-style.css +143 -51
  100. package/dist/collection/components/revoGrid/revo-grid.js +2834 -2181
  101. package/dist/collection/components/revoGrid/revo-grid.js.map +1 -0
  102. package/dist/collection/components/revoGrid/viewport.helpers.js +9 -4
  103. package/dist/collection/components/revoGrid/viewport.helpers.js.map +1 -0
  104. package/dist/collection/components/revoGrid/viewport.resize.service.js +23 -19
  105. package/dist/collection/components/revoGrid/viewport.resize.service.js.map +1 -0
  106. package/dist/collection/components/revoGrid/viewport.scrolling.service.js +78 -50
  107. package/dist/collection/components/revoGrid/viewport.scrolling.service.js.map +1 -0
  108. package/dist/collection/components/revoGrid/viewport.service.js +224 -204
  109. package/dist/collection/components/revoGrid/viewport.service.js.map +1 -0
  110. package/dist/collection/components/rowHeaders/revogr-row-headers.js +262 -204
  111. package/dist/collection/components/rowHeaders/revogr-row-headers.js.map +1 -0
  112. package/dist/collection/components/rowHeaders/row-header-render.js +4 -0
  113. package/dist/collection/components/rowHeaders/row-header-render.js.map +1 -0
  114. package/dist/collection/components/scroll/revogr-viewport-scroll-style.css +20 -13
  115. package/dist/collection/components/scroll/revogr-viewport-scroll.js +535 -369
  116. package/dist/collection/components/scroll/revogr-viewport-scroll.js.map +1 -0
  117. package/dist/collection/components/scrollable/autohide-scroll.plugin.js +44 -0
  118. package/dist/collection/components/scrollable/autohide-scroll.plugin.js.map +1 -0
  119. package/dist/collection/components/scrollable/revogr-scroll-style.css +24 -18
  120. package/dist/collection/components/scrollable/revogr-scroll-virtual.js +286 -247
  121. package/dist/collection/components/scrollable/revogr-scroll-virtual.js.map +1 -0
  122. package/dist/collection/components/selectionFocus/revogr-focus-style.css +16 -10
  123. package/dist/collection/components/selectionFocus/revogr-focus.js +366 -96
  124. package/dist/collection/components/selectionFocus/revogr-focus.js.map +1 -0
  125. package/dist/collection/components/selectionTempRange/revogr-temp-range-style.css +16 -10
  126. package/dist/collection/components/selectionTempRange/revogr-temp-range.js +149 -128
  127. package/dist/collection/components/selectionTempRange/revogr-temp-range.js.map +1 -0
  128. package/dist/collection/components/vnode/vnode-converter.js +81 -0
  129. package/dist/collection/components/vnode/vnode-converter.js.map +1 -0
  130. package/dist/collection/components/vnode/vnode.utils.js +18 -0
  131. package/dist/collection/components/vnode/vnode.utils.js.map +1 -0
  132. package/dist/collection/global/global.js +15 -11
  133. package/dist/collection/global/global.js.map +1 -0
  134. package/dist/collection/index.js +18 -0
  135. package/dist/collection/index.js.map +1 -0
  136. package/dist/collection/plugins/base.plugin.js +88 -0
  137. package/dist/collection/plugins/base.plugin.js.map +1 -0
  138. package/dist/collection/plugins/column.auto-size.plugin.js +234 -0
  139. package/dist/collection/plugins/column.auto-size.plugin.js.map +1 -0
  140. package/dist/collection/plugins/column.stretch.plugin.js +96 -0
  141. package/dist/collection/plugins/column.stretch.plugin.js.map +1 -0
  142. package/dist/collection/plugins/dispatcher.js +27 -0
  143. package/dist/collection/plugins/dispatcher.js.map +1 -0
  144. package/dist/collection/plugins/export/csv.js +57 -53
  145. package/dist/collection/plugins/export/csv.js.map +1 -0
  146. package/dist/collection/plugins/export/export.plugin.js +154 -150
  147. package/dist/collection/plugins/export/export.plugin.js.map +1 -0
  148. package/dist/collection/plugins/export/types.js +1 -0
  149. package/dist/collection/plugins/export/types.js.map +1 -0
  150. package/dist/collection/plugins/filter/conditions/equal.js +15 -7
  151. package/dist/collection/plugins/filter/conditions/equal.js.map +1 -0
  152. package/dist/collection/plugins/filter/conditions/number/greaterThan.js +10 -6
  153. package/dist/collection/plugins/filter/conditions/number/greaterThan.js.map +1 -0
  154. package/dist/collection/plugins/filter/conditions/number/greaterThanOrEqual.js +7 -3
  155. package/dist/collection/plugins/filter/conditions/number/greaterThanOrEqual.js.map +1 -0
  156. package/dist/collection/plugins/filter/conditions/number/lessThan.js +12 -8
  157. package/dist/collection/plugins/filter/conditions/number/lessThan.js.map +1 -0
  158. package/dist/collection/plugins/filter/conditions/number/lessThanOrEqual.js +7 -3
  159. package/dist/collection/plugins/filter/conditions/number/lessThanOrEqual.js.map +1 -0
  160. package/dist/collection/plugins/filter/conditions/set.js +4 -0
  161. package/dist/collection/plugins/filter/conditions/set.js.map +1 -0
  162. package/dist/collection/plugins/filter/conditions/string/beginswith.js +17 -13
  163. package/dist/collection/plugins/filter/conditions/string/beginswith.js.map +1 -0
  164. package/dist/collection/plugins/filter/conditions/string/contains.js +17 -10
  165. package/dist/collection/plugins/filter/conditions/string/contains.js.map +1 -0
  166. package/dist/collection/plugins/filter/filter.button.js +21 -13
  167. package/dist/collection/plugins/filter/filter.button.js.map +1 -0
  168. package/dist/collection/plugins/filter/filter.plugin.js +280 -185
  169. package/dist/collection/plugins/filter/filter.plugin.js.map +1 -0
  170. package/dist/collection/plugins/filter/filter.pop.js +492 -246
  171. package/dist/collection/plugins/filter/filter.pop.js.map +1 -0
  172. package/dist/collection/plugins/filter/filter.service.js +42 -38
  173. package/dist/collection/plugins/filter/filter.service.js.map +1 -0
  174. package/dist/collection/plugins/filter/filter.style.css +68 -15
  175. package/dist/collection/plugins/filter/filter.types.js +1 -0
  176. package/dist/collection/plugins/filter/filter.types.js.map +1 -0
  177. package/dist/collection/plugins/groupingColumn/columnGroupsRenderer.js +30 -26
  178. package/dist/collection/plugins/groupingColumn/columnGroupsRenderer.js.map +1 -0
  179. package/dist/collection/plugins/groupingColumn/grouping.col.plugin.js +38 -30
  180. package/dist/collection/plugins/groupingColumn/grouping.col.plugin.js.map +1 -0
  181. package/dist/collection/plugins/groupingColumn/headerGroupRenderer.js +22 -18
  182. package/dist/collection/plugins/groupingColumn/headerGroupRenderer.js.map +1 -0
  183. package/dist/collection/plugins/groupingRow/grouping.const.js +7 -2
  184. package/dist/collection/plugins/groupingRow/grouping.const.js.map +1 -0
  185. package/dist/collection/plugins/groupingRow/grouping.row.expand.service.js +64 -61
  186. package/dist/collection/plugins/groupingRow/grouping.row.expand.service.js.map +1 -0
  187. package/dist/collection/plugins/groupingRow/grouping.row.plugin.js +239 -237
  188. package/dist/collection/plugins/groupingRow/grouping.row.plugin.js.map +1 -0
  189. package/dist/collection/plugins/groupingRow/grouping.row.renderer.js +27 -24
  190. package/dist/collection/plugins/groupingRow/grouping.row.renderer.js.map +1 -0
  191. package/dist/collection/plugins/groupingRow/grouping.row.types.js +1 -0
  192. package/dist/collection/plugins/groupingRow/grouping.row.types.js.map +1 -0
  193. package/dist/collection/plugins/groupingRow/grouping.service.js +101 -131
  194. package/dist/collection/plugins/groupingRow/grouping.service.js.map +1 -0
  195. package/dist/collection/plugins/groupingRow/grouping.trimmed.service.js +47 -43
  196. package/dist/collection/plugins/groupingRow/grouping.trimmed.service.js.map +1 -0
  197. package/dist/collection/plugins/moveColumn/column.drag.plugin.js +167 -0
  198. package/dist/collection/plugins/moveColumn/column.drag.plugin.js.map +1 -0
  199. package/dist/collection/plugins/moveColumn/order-column.handler.js +69 -0
  200. package/dist/collection/plugins/moveColumn/order-column.handler.js.map +1 -0
  201. package/dist/collection/plugins/sorting/sorting.plugin.js +218 -163
  202. package/dist/collection/plugins/sorting/sorting.plugin.js.map +1 -0
  203. package/dist/collection/plugins/sorting/sorting.sign.js +6 -2
  204. package/dist/collection/plugins/sorting/sorting.sign.js.map +1 -0
  205. package/dist/collection/serve/controller.js +233 -0
  206. package/dist/collection/{utilsExternal/generate-data.js → serve/data.js} +72 -32
  207. package/dist/collection/services/cell.helpers.js +9 -5
  208. package/dist/collection/services/cell.helpers.js.map +1 -0
  209. package/dist/collection/services/column.data.provider.js +201 -185
  210. package/dist/collection/services/column.data.provider.js.map +1 -0
  211. package/dist/collection/services/data.provider.js +70 -45
  212. package/dist/collection/services/data.provider.js.map +1 -0
  213. package/dist/collection/services/dimension.provider.js +143 -84
  214. package/dist/collection/services/dimension.provider.js.map +1 -0
  215. package/dist/collection/services/local.scroll.service.js +120 -0
  216. package/dist/collection/services/local.scroll.service.js.map +1 -0
  217. package/dist/collection/services/local.scroll.timer.js +42 -0
  218. package/dist/collection/services/local.scroll.timer.js.map +1 -0
  219. package/dist/collection/services/resizable.directive.js +211 -226
  220. package/dist/collection/services/resizable.directive.js.map +1 -0
  221. package/dist/collection/services/resizable.element.js +39 -0
  222. package/dist/collection/services/resizable.element.js.map +1 -0
  223. package/dist/collection/services/selection.store.connector.js +257 -208
  224. package/dist/collection/services/selection.store.connector.js.map +1 -0
  225. package/dist/collection/services/viewport.provider.js +16 -12
  226. package/dist/collection/services/viewport.provider.js.map +1 -0
  227. package/dist/collection/store/dataSource/data.proxy.js +29 -25
  228. package/dist/collection/store/dataSource/data.proxy.js.map +1 -0
  229. package/dist/collection/store/dataSource/data.store.js +100 -93
  230. package/dist/collection/store/dataSource/data.store.js.map +1 -0
  231. package/dist/collection/store/dataSource/index.js +7 -0
  232. package/dist/collection/store/dataSource/index.js.map +1 -0
  233. package/dist/collection/store/dataSource/trimmed.plugin.js +36 -0
  234. package/dist/collection/store/dataSource/trimmed.plugin.js.map +1 -0
  235. package/dist/collection/store/dimension/dimension.helpers.js +97 -95
  236. package/dist/collection/store/dimension/dimension.helpers.js.map +1 -0
  237. package/dist/collection/store/dimension/dimension.store.js +106 -48
  238. package/dist/collection/store/dimension/dimension.store.js.map +1 -0
  239. package/dist/collection/store/dimension/index.js +6 -0
  240. package/dist/collection/store/dimension/index.js.map +1 -0
  241. package/dist/collection/store/selection/index.js +7 -0
  242. package/dist/collection/store/selection/index.js.map +1 -0
  243. package/dist/collection/store/selection/selection.helpers.js +43 -39
  244. package/dist/collection/store/selection/selection.helpers.js.map +1 -0
  245. package/dist/collection/store/selection/selection.store.js +75 -63
  246. package/dist/collection/store/selection/selection.store.js.map +1 -0
  247. package/dist/collection/store/selection/selection.store.service.js +35 -31
  248. package/dist/collection/store/selection/selection.store.service.js.map +1 -0
  249. package/dist/collection/store/storeTypes.js +10 -2
  250. package/dist/collection/store/storeTypes.js.map +1 -0
  251. package/dist/collection/store/viewport/index.js +6 -0
  252. package/dist/collection/store/viewport/index.js.map +1 -0
  253. package/dist/collection/store/viewport/viewport.helpers.js +247 -0
  254. package/dist/collection/store/viewport/viewport.helpers.js.map +1 -0
  255. package/dist/collection/store/viewport/viewport.store.js +193 -0
  256. package/dist/collection/store/viewport/viewport.store.js.map +1 -0
  257. package/dist/collection/themeManager/theme.compact.js +7 -3
  258. package/dist/collection/themeManager/theme.compact.js.map +1 -0
  259. package/dist/collection/themeManager/theme.default.js +7 -3
  260. package/dist/collection/themeManager/theme.default.js.map +1 -0
  261. package/dist/collection/themeManager/theme.material.js +7 -3
  262. package/dist/collection/themeManager/theme.material.js.map +1 -0
  263. package/dist/collection/themeManager/theme.service.js +53 -0
  264. package/dist/collection/themeManager/theme.service.js.map +1 -0
  265. package/dist/collection/types/dimension.js +2 -0
  266. package/dist/collection/types/dimension.js.map +1 -0
  267. package/dist/collection/types/interfaces.js +2 -0
  268. package/dist/collection/types/interfaces.js.map +1 -0
  269. package/dist/collection/types/plugin.js +2 -0
  270. package/dist/collection/types/plugin.js.map +1 -0
  271. package/dist/collection/types/plugin.types.js +2 -0
  272. package/dist/collection/types/plugin.types.js.map +1 -0
  273. package/dist/collection/types/selection.js +2 -0
  274. package/dist/collection/types/selection.js.map +1 -0
  275. package/dist/collection/types/theme.js +2 -0
  276. package/dist/collection/types/theme.js.map +1 -0
  277. package/dist/collection/types/viewport.interfaces.js +2 -0
  278. package/dist/collection/types/viewport.interfaces.js.map +1 -0
  279. package/dist/collection/utils/browser.js +7 -0
  280. package/dist/collection/utils/browser.js.map +1 -0
  281. package/dist/collection/utils/closest.polifill.js +22 -0
  282. package/dist/collection/utils/closest.polifill.js.map +1 -0
  283. package/dist/collection/utils/consts.js +8 -0
  284. package/dist/collection/utils/consts.js.map +1 -0
  285. package/dist/collection/utils/events.js +29 -0
  286. package/dist/collection/utils/events.js.map +1 -0
  287. package/dist/collection/utils/header.utils.js +24 -0
  288. package/dist/collection/utils/header.utils.js.map +1 -0
  289. package/dist/collection/utils/index.js +125 -0
  290. package/dist/collection/utils/index.js.map +1 -0
  291. package/dist/collection/utils/key.codes.js +76 -0
  292. package/dist/collection/utils/key.codes.js.map +1 -0
  293. package/dist/collection/utils/key.utils.js +84 -0
  294. package/dist/collection/utils/key.utils.js.map +1 -0
  295. package/dist/collection/utils/mobile.js +7 -0
  296. package/dist/collection/utils/mobile.js.map +1 -0
  297. package/dist/collection/utils/platform.js +5 -1
  298. package/dist/collection/utils/platform.js.map +1 -0
  299. package/dist/collection/utils/resize-observer.polifill.js +10 -0
  300. package/dist/collection/utils/resize-observer.polifill.js.map +1 -0
  301. package/dist/collection/utils/row-header-utils.js +9 -0
  302. package/dist/collection/utils/row-header-utils.js.map +1 -0
  303. package/dist/collection/utils/store.utils.js +7 -3
  304. package/dist/collection/utils/store.utils.js.map +1 -0
  305. package/dist/esm/app-globals-ef1fca59.js +12 -0
  306. package/dist/esm/app-globals-ef1fca59.js.map +1 -0
  307. package/dist/esm/column.service-21a3af74.js +520 -0
  308. package/dist/esm/column.service-21a3af74.js.map +1 -0
  309. package/dist/esm/debounce-7781346d.js +224 -0
  310. package/dist/esm/debounce-7781346d.js.map +1 -0
  311. package/dist/esm/dimension.helpers-a3065cb1.js +4185 -0
  312. package/dist/esm/dimension.helpers-a3065cb1.js.map +1 -0
  313. package/dist/esm/dispatcher-8ea9187d.js +30 -0
  314. package/dist/esm/dispatcher-8ea9187d.js.map +1 -0
  315. package/dist/esm/events-3dd8ee7c.js +228 -0
  316. package/dist/esm/events-3dd8ee7c.js.map +1 -0
  317. package/dist/esm/filter.button-46ce4f80.js +38 -0
  318. package/dist/esm/filter.button-46ce4f80.js.map +1 -0
  319. package/dist/esm/header-cell-renderer-1ca84d5f.js +301 -0
  320. package/dist/esm/header-cell-renderer-1ca84d5f.js.map +1 -0
  321. package/dist/esm/index-21436631.js +1837 -0
  322. package/dist/esm/index-21436631.js.map +1 -0
  323. package/dist/esm/index-98fd0168.js +79 -0
  324. package/dist/esm/index-98fd0168.js.map +1 -0
  325. package/dist/esm/index.js +11 -0
  326. package/dist/esm/index.js.map +1 -0
  327. package/dist/esm/key.utils-4586a3d6.js +120 -0
  328. package/dist/esm/key.utils-4586a3d6.js.map +1 -0
  329. package/dist/esm/loader.js +11 -26
  330. package/dist/esm/loader.js.map +1 -0
  331. package/dist/esm/{resize-observer-56b7b34f.js → resize-observer-83c9e167.js} +30 -14
  332. package/dist/esm/resize-observer-83c9e167.js.map +1 -0
  333. package/dist/esm/revo-grid.entry.js +3988 -0
  334. package/dist/esm/revo-grid.entry.js.map +1 -0
  335. package/dist/esm/revo-grid.js +19 -65
  336. package/dist/esm/revo-grid.js.map +1 -0
  337. package/dist/esm/revogr-attribution_6.entry.js +1261 -0
  338. package/dist/esm/revogr-attribution_6.entry.js.map +1 -0
  339. package/dist/esm/revogr-clipboard_3.entry.js +502 -0
  340. package/dist/esm/revogr-clipboard_3.entry.js.map +1 -0
  341. package/dist/esm/revogr-data_4.entry.js +951 -0
  342. package/dist/esm/revogr-data_4.entry.js.map +1 -0
  343. package/dist/esm/revogr-filter-panel.entry.js +268 -115
  344. package/dist/esm/revogr-filter-panel.entry.js.map +1 -0
  345. package/dist/esm/selection.store-2577ddf9.js +391 -0
  346. package/dist/esm/selection.store-2577ddf9.js.map +1 -0
  347. package/dist/esm/storeTypes-f2647985.js +101 -0
  348. package/dist/esm/storeTypes-f2647985.js.map +1 -0
  349. package/dist/esm/throttle-cfd527d6.js +235 -0
  350. package/dist/esm/throttle-cfd527d6.js.map +1 -0
  351. package/dist/esm/toNumber-8de324a7.js +331 -0
  352. package/dist/esm/toNumber-8de324a7.js.map +1 -0
  353. package/dist/esm/viewport.helpers-6591d423.js +251 -0
  354. package/dist/esm/viewport.helpers-6591d423.js.map +1 -0
  355. package/dist/index.js +1 -1
  356. package/dist/loader/cdn.js +4 -0
  357. package/dist/loader/index.cjs.js +4 -0
  358. package/{loader → dist/loader}/index.d.ts +11 -3
  359. package/dist/loader/index.es2017.js +4 -0
  360. package/dist/{esm/polyfills/es5-html-element.js → loader/index.js} +5 -1
  361. package/{loader → dist/loader}/package.json +1 -0
  362. package/dist/revo-grid/app-globals-ef1fca59.js +5 -0
  363. package/dist/revo-grid/app-globals-ef1fca59.js.map +1 -0
  364. package/dist/revo-grid/column.service-21a3af74.js +5 -0
  365. package/dist/revo-grid/column.service-21a3af74.js.map +1 -0
  366. package/dist/revo-grid/debounce-7781346d.js +5 -0
  367. package/dist/revo-grid/debounce-7781346d.js.map +1 -0
  368. package/dist/revo-grid/dimension.helpers-a3065cb1.js +5 -0
  369. package/dist/revo-grid/dimension.helpers-a3065cb1.js.map +1 -0
  370. package/dist/revo-grid/dispatcher-8ea9187d.js +5 -0
  371. package/dist/revo-grid/dispatcher-8ea9187d.js.map +1 -0
  372. package/dist/revo-grid/events-3dd8ee7c.js +5 -0
  373. package/dist/revo-grid/events-3dd8ee7c.js.map +1 -0
  374. package/dist/revo-grid/filter.button-46ce4f80.js +5 -0
  375. package/dist/revo-grid/filter.button-46ce4f80.js.map +1 -0
  376. package/dist/revo-grid/header-cell-renderer-1ca84d5f.js +5 -0
  377. package/dist/revo-grid/header-cell-renderer-1ca84d5f.js.map +1 -0
  378. package/dist/revo-grid/index-21436631.js +6 -0
  379. package/dist/revo-grid/index-21436631.js.map +1 -0
  380. package/dist/revo-grid/index-98fd0168.js +5 -0
  381. package/dist/revo-grid/index-98fd0168.js.map +1 -0
  382. package/dist/revo-grid/index.esm.js +5 -0
  383. package/dist/revo-grid/index.esm.js.map +1 -0
  384. package/dist/revo-grid/key.utils-4586a3d6.js +5 -0
  385. package/dist/revo-grid/key.utils-4586a3d6.js.map +1 -0
  386. package/dist/revo-grid/resize-observer-83c9e167.js +5 -0
  387. package/dist/revo-grid/resize-observer-83c9e167.js.map +1 -0
  388. package/dist/revo-grid/revo-grid.entry.js +5 -0
  389. package/dist/revo-grid/revo-grid.entry.js.map +1 -0
  390. package/dist/revo-grid/revo-grid.esm.js +5 -1
  391. package/dist/revo-grid/revo-grid.esm.js.map +1 -0
  392. package/dist/revo-grid/revogr-attribution_6.entry.js +5 -0
  393. package/dist/revo-grid/revogr-attribution_6.entry.js.map +1 -0
  394. package/dist/revo-grid/revogr-clipboard_3.entry.js +5 -0
  395. package/dist/revo-grid/revogr-clipboard_3.entry.js.map +1 -0
  396. package/dist/revo-grid/revogr-data_4.entry.js +5 -0
  397. package/dist/revo-grid/revogr-data_4.entry.js.map +1 -0
  398. package/dist/revo-grid/revogr-filter-panel.entry.js +5 -1
  399. package/dist/revo-grid/revogr-filter-panel.entry.js.map +1 -0
  400. package/dist/revo-grid/selection.store-2577ddf9.js +5 -0
  401. package/dist/revo-grid/selection.store-2577ddf9.js.map +1 -0
  402. package/dist/revo-grid/storeTypes-f2647985.js +5 -0
  403. package/dist/revo-grid/storeTypes-f2647985.js.map +1 -0
  404. package/dist/revo-grid/throttle-cfd527d6.js +5 -0
  405. package/dist/revo-grid/throttle-cfd527d6.js.map +1 -0
  406. package/dist/revo-grid/toNumber-8de324a7.js +5 -0
  407. package/dist/revo-grid/toNumber-8de324a7.js.map +1 -0
  408. package/dist/revo-grid/viewport.helpers-6591d423.js +5 -0
  409. package/dist/revo-grid/viewport.helpers-6591d423.js.map +1 -0
  410. package/dist/types/components/attribution/revogr-attribution.d.ts +12 -0
  411. package/dist/types/components/clipboard/revogr-clipboard.d.ts +78 -10
  412. package/dist/types/components/data/cell-renderer.d.ts +14 -0
  413. package/dist/types/components/data/column.service.d.ts +60 -0
  414. package/dist/types/components/data/revogr-data.d.ts +101 -27
  415. package/dist/types/components/data/row-highlight.plugin.d.ts +10 -0
  416. package/dist/types/components/data/{rowRenderer.d.ts → row-renderer.d.ts} +6 -5
  417. package/dist/types/components/editors/revogr-edit.d.ts +63 -0
  418. package/dist/types/components/editors/text-editor.d.ts +46 -0
  419. package/dist/types/components/header/header-cell-renderer.d.ts +11 -0
  420. package/dist/types/components/header/header-renderer.d.ts +17 -0
  421. package/dist/types/components/header/revogr-header.d.ts +70 -22
  422. package/dist/types/components/order/order-renderer.d.ts +29 -0
  423. package/dist/types/components/order/order-row.service.d.ts +28 -0
  424. package/dist/types/components/order/revogr-order-editor.d.ts +43 -41
  425. package/dist/types/components/overlay/autofill.service.d.ts +69 -54
  426. package/dist/types/components/overlay/keyboard.service.d.ts +24 -23
  427. package/dist/types/components/overlay/revogr-overlay-selection.d.ts +216 -75
  428. package/dist/types/components/overlay/selection.utils.d.ts +24 -27
  429. package/dist/types/components/revoGrid/grid.helpers.d.ts +16 -11
  430. package/dist/types/components/revoGrid/revo-grid.d.ts +555 -403
  431. package/dist/types/components/revoGrid/viewport.helpers.d.ts +4 -3
  432. package/dist/types/components/revoGrid/viewport.resize.service.d.ts +7 -7
  433. package/dist/types/components/revoGrid/viewport.scrolling.service.d.ts +20 -21
  434. package/dist/types/components/revoGrid/viewport.service.d.ts +54 -56
  435. package/dist/types/components/rowHeaders/revogr-row-headers.d.ts +45 -12
  436. package/dist/types/components/rowHeaders/row-header-render.d.ts +5 -5
  437. package/dist/types/components/scroll/revogr-viewport-scroll.d.ts +115 -76
  438. package/dist/types/components/scrollable/autohide-scroll.plugin.d.ts +22 -0
  439. package/dist/types/components/scrollable/revogr-scroll-virtual.d.ts +39 -22
  440. package/dist/types/components/selectionFocus/revogr-focus.d.ts +61 -9
  441. package/dist/types/components/selectionTempRange/revogr-temp-range.d.ts +26 -11
  442. package/dist/types/components/vnode/vnode-converter.d.ts +19 -0
  443. package/dist/types/components/vnode/vnode.utils.d.ts +8 -0
  444. package/dist/types/components.d.ts +1595 -274
  445. package/dist/types/index.d.ts +14 -0
  446. package/dist/types/plugins/base.plugin.d.ts +49 -0
  447. package/dist/types/plugins/column.auto-size.plugin.d.ts +47 -0
  448. package/dist/types/plugins/column.stretch.plugin.d.ts +22 -0
  449. package/dist/types/plugins/dispatcher.d.ts +16 -0
  450. package/dist/types/plugins/export/csv.d.ts +6 -6
  451. package/dist/types/plugins/export/export.plugin.d.ts +18 -18
  452. package/dist/types/plugins/export/types.d.ts +15 -15
  453. package/dist/types/plugins/filter/filter.button.d.ts +7 -3
  454. package/dist/types/plugins/filter/filter.plugin.d.ts +61 -43
  455. package/dist/types/plugins/filter/filter.pop.d.ts +60 -35
  456. package/dist/types/plugins/filter/filter.service.d.ts +15 -15
  457. package/dist/types/plugins/filter/filter.types.d.ts +7 -7
  458. package/dist/types/plugins/groupingColumn/columnGroupsRenderer.d.ts +16 -13
  459. package/dist/types/plugins/groupingColumn/grouping.col.plugin.d.ts +10 -6
  460. package/dist/types/plugins/groupingColumn/headerGroupRenderer.d.ts +12 -10
  461. package/dist/types/plugins/groupingRow/grouping.const.d.ts +8 -7
  462. package/dist/types/plugins/groupingRow/grouping.row.expand.service.d.ts +6 -6
  463. package/dist/types/plugins/groupingRow/grouping.row.plugin.d.ts +32 -37
  464. package/dist/types/plugins/groupingRow/grouping.row.renderer.d.ts +7 -5
  465. package/dist/types/plugins/groupingRow/grouping.row.types.d.ts +23 -15
  466. package/dist/types/plugins/groupingRow/grouping.service.d.ts +18 -16
  467. package/dist/types/plugins/groupingRow/grouping.trimmed.service.d.ts +1 -1
  468. package/dist/types/plugins/moveColumn/column.drag.plugin.d.ts +56 -0
  469. package/dist/types/plugins/moveColumn/order-column.handler.d.ts +16 -0
  470. package/dist/types/plugins/sorting/sorting.plugin.d.ts +40 -27
  471. package/dist/types/plugins/sorting/sorting.sign.d.ts +3 -3
  472. package/dist/types/services/cell.helpers.d.ts +2 -2
  473. package/dist/types/services/column.data.provider.d.ts +33 -35
  474. package/dist/types/services/data.provider.d.ts +27 -21
  475. package/dist/types/services/dimension.provider.d.ts +52 -32
  476. package/dist/types/services/local.scroll.service.d.ts +37 -0
  477. package/dist/types/services/local.scroll.timer.d.ts +26 -0
  478. package/dist/types/services/resizable.directive.d.ts +52 -51
  479. package/dist/types/services/resizable.element.d.ts +4 -0
  480. package/dist/types/services/selection.store.connector.d.ts +54 -36
  481. package/dist/types/services/viewport.provider.d.ts +6 -8
  482. package/dist/types/stencil-public-runtime.d.ts +331 -217
  483. package/dist/types/store/dataSource/data.proxy.d.ts +3 -3
  484. package/dist/types/store/dataSource/data.store.d.ts +45 -46
  485. package/dist/types/store/dataSource/index.d.ts +3 -0
  486. package/dist/types/store/dataSource/trimmed.plugin.d.ts +10 -0
  487. package/dist/types/store/dimension/dimension.helpers.d.ts +24 -9
  488. package/dist/types/store/dimension/dimension.store.d.ts +29 -11
  489. package/dist/types/store/dimension/index.d.ts +2 -0
  490. package/dist/types/store/selection/index.d.ts +3 -0
  491. package/dist/types/store/selection/selection.helpers.d.ts +1 -3
  492. package/dist/types/store/selection/selection.store.d.ts +19 -17
  493. package/dist/types/store/selection/selection.store.service.d.ts +12 -13
  494. package/dist/types/store/storeTypes.d.ts +4 -4
  495. package/dist/types/store/viewport/index.d.ts +2 -0
  496. package/dist/types/store/viewport/viewport.helpers.d.ts +54 -0
  497. package/dist/types/store/viewport/viewport.store.d.ts +36 -0
  498. package/dist/types/themeManager/theme.compact.d.ts +3 -3
  499. package/dist/types/themeManager/theme.default.d.ts +3 -3
  500. package/dist/types/themeManager/theme.material.d.ts +3 -3
  501. package/dist/types/themeManager/theme.service.d.ts +13 -0
  502. package/dist/types/types/dimension.d.ts +8 -0
  503. package/dist/types/types/interfaces.d.ts +243 -0
  504. package/dist/types/types/plugin.d.ts +9 -0
  505. package/dist/types/types/plugin.types.d.ts +12 -0
  506. package/dist/types/types/selection.d.ts +115 -0
  507. package/dist/types/types/theme.d.ts +7 -0
  508. package/dist/types/types/viewport.interfaces.d.ts +51 -0
  509. package/dist/types/utils/browser.d.ts +1 -0
  510. package/dist/types/utils/consts.d.ts +5 -1
  511. package/dist/types/utils/events.d.ts +2 -0
  512. package/dist/types/utils/{utils.d.ts → index.d.ts} +17 -1
  513. package/dist/types/utils/key.codes.d.ts +70 -0
  514. package/dist/types/utils/{keyCodes.utils.d.ts → key.utils.d.ts} +5 -1
  515. package/dist/types/utils/mobile.d.ts +1 -0
  516. package/dist/types/utils/platform.d.ts +1 -1
  517. package/dist/types/utils/row-header-utils.d.ts +2 -0
  518. package/dist/types/utils/store.utils.d.ts +2 -2
  519. package/hydrate/index.d.ts +218 -0
  520. package/hydrate/index.js +32381 -0
  521. package/hydrate/package.json +6 -0
  522. package/package.json +94 -52
  523. package/readme.md +135 -98
  524. package/standalone/_baseIteratee.js +1237 -0
  525. package/standalone/_baseIteratee.js.map +1 -0
  526. package/standalone/_stringToPath.js +1389 -0
  527. package/standalone/_stringToPath.js.map +1 -0
  528. package/standalone/column.service.js +889 -0
  529. package/standalone/column.service.js.map +1 -0
  530. package/standalone/consts.js +30 -0
  531. package/standalone/consts.js.map +1 -0
  532. package/standalone/data.store.js +705 -0
  533. package/standalone/data.store.js.map +1 -0
  534. package/standalone/debounce.js +225 -0
  535. package/standalone/debounce.js.map +1 -0
  536. package/standalone/dimension.helpers.js +355 -0
  537. package/standalone/dimension.helpers.js.map +1 -0
  538. package/standalone/each.js +200 -0
  539. package/standalone/each.js.map +1 -0
  540. package/standalone/filter.button.js +38 -0
  541. package/standalone/filter.button.js.map +1 -0
  542. package/standalone/identity.js +349 -0
  543. package/standalone/identity.js.map +1 -0
  544. package/standalone/index.d.ts +66 -0
  545. package/standalone/index.js +42 -0
  546. package/standalone/index.js.map +1 -0
  547. package/standalone/index2.js +55 -0
  548. package/standalone/index2.js.map +1 -0
  549. package/standalone/isObjectLike.js +195 -0
  550. package/standalone/isObjectLike.js.map +1 -0
  551. package/standalone/local.scroll.timer.js +163 -0
  552. package/standalone/local.scroll.timer.js.map +1 -0
  553. package/{custom-element → standalone}/resize-observer.js +30 -14
  554. package/standalone/resize-observer.js.map +1 -0
  555. package/standalone/revo-grid.d.ts +11 -0
  556. package/standalone/revo-grid.js +4252 -0
  557. package/standalone/revo-grid.js.map +1 -0
  558. package/standalone/revogr-attribution.d.ts +11 -0
  559. package/standalone/revogr-attribution.js +11 -0
  560. package/standalone/revogr-attribution.js.map +1 -0
  561. package/standalone/revogr-attribution2.js +31 -0
  562. package/standalone/revogr-attribution2.js.map +1 -0
  563. package/standalone/revogr-clipboard.d.ts +11 -0
  564. package/standalone/revogr-clipboard.js +11 -0
  565. package/standalone/revogr-clipboard.js.map +1 -0
  566. package/standalone/revogr-clipboard2.js +159 -0
  567. package/standalone/revogr-clipboard2.js.map +1 -0
  568. package/standalone/revogr-data.d.ts +11 -0
  569. package/standalone/revogr-data.js +11 -0
  570. package/standalone/revogr-data.js.map +1 -0
  571. package/standalone/revogr-data2.js +368 -0
  572. package/standalone/revogr-data2.js.map +1 -0
  573. package/standalone/revogr-edit.d.ts +11 -0
  574. package/standalone/revogr-edit.js +11 -0
  575. package/standalone/revogr-edit.js.map +1 -0
  576. package/standalone/revogr-edit2.js +335 -0
  577. package/standalone/revogr-edit2.js.map +1 -0
  578. package/standalone/revogr-filter-panel.d.ts +11 -0
  579. package/standalone/revogr-filter-panel.js +310 -0
  580. package/standalone/revogr-filter-panel.js.map +1 -0
  581. package/standalone/revogr-focus.d.ts +11 -0
  582. package/standalone/revogr-focus.js +11 -0
  583. package/standalone/revogr-focus.js.map +1 -0
  584. package/standalone/revogr-focus2.js +106 -0
  585. package/standalone/revogr-focus2.js.map +1 -0
  586. package/standalone/revogr-header.d.ts +11 -0
  587. package/standalone/revogr-header.js +11 -0
  588. package/standalone/revogr-header.js.map +1 -0
  589. package/standalone/revogr-header2.js +667 -0
  590. package/standalone/revogr-header2.js.map +1 -0
  591. package/standalone/revogr-order-editor.d.ts +11 -0
  592. package/standalone/revogr-order-editor.js +11 -0
  593. package/standalone/revogr-order-editor.js.map +1 -0
  594. package/standalone/revogr-order-editor2.js +199 -0
  595. package/standalone/revogr-order-editor2.js.map +1 -0
  596. package/standalone/revogr-overlay-selection.d.ts +11 -0
  597. package/standalone/revogr-overlay-selection.js +11 -0
  598. package/standalone/revogr-overlay-selection.js.map +1 -0
  599. package/standalone/revogr-overlay-selection2.js +876 -0
  600. package/standalone/revogr-overlay-selection2.js.map +1 -0
  601. package/standalone/revogr-row-headers.d.ts +11 -0
  602. package/standalone/revogr-row-headers.js +11 -0
  603. package/standalone/revogr-row-headers.js.map +1 -0
  604. package/standalone/revogr-row-headers2.js +555 -0
  605. package/standalone/revogr-row-headers2.js.map +1 -0
  606. package/standalone/revogr-scroll-virtual.d.ts +11 -0
  607. package/standalone/revogr-scroll-virtual.js +11 -0
  608. package/standalone/revogr-scroll-virtual.js.map +1 -0
  609. package/standalone/revogr-scroll-virtual2.js +187 -0
  610. package/standalone/revogr-scroll-virtual2.js.map +1 -0
  611. package/standalone/revogr-temp-range.d.ts +11 -0
  612. package/standalone/revogr-temp-range.js +11 -0
  613. package/standalone/revogr-temp-range.js.map +1 -0
  614. package/standalone/revogr-temp-range2.js +90 -0
  615. package/standalone/revogr-temp-range2.js.map +1 -0
  616. package/standalone/revogr-viewport-scroll.d.ts +11 -0
  617. package/standalone/revogr-viewport-scroll.js +11 -0
  618. package/standalone/revogr-viewport-scroll.js.map +1 -0
  619. package/standalone/revogr-viewport-scroll2.js +336 -0
  620. package/standalone/revogr-viewport-scroll2.js.map +1 -0
  621. package/standalone/selection.utils.js +108 -0
  622. package/standalone/selection.utils.js.map +1 -0
  623. package/standalone/throttle.js +79 -0
  624. package/standalone/throttle.js.map +1 -0
  625. package/standalone/toNumber.js +144 -0
  626. package/standalone/toNumber.js.map +1 -0
  627. package/standalone/vnode-converter.js +45 -0
  628. package/standalone/vnode-converter.js.map +1 -0
  629. package/standalone/vnode-html.d.ts +11 -0
  630. package/standalone/vnode-html.js +11 -0
  631. package/standalone/vnode-html.js.map +1 -0
  632. package/custom-element/index.d.ts +0 -117
  633. package/custom-element/index.js +0 -28857
  634. package/dist/cjs/css-shim-e33df79c.js +0 -6
  635. package/dist/cjs/dom-c8b6d1a7.js +0 -75
  636. package/dist/cjs/filter.button-2396a488.js +0 -27
  637. package/dist/cjs/index-d3f67f2e.js +0 -1729
  638. package/dist/cjs/revo-grid_11.cjs.entry.js +0 -28621
  639. package/dist/cjs/revogr-clipboard.cjs.entry.js +0 -53
  640. package/dist/collection/components/button/button.js +0 -4
  641. package/dist/collection/components/data/cellRenderer.js +0 -19
  642. package/dist/collection/components/data/columnService.js +0 -243
  643. package/dist/collection/components/data/rowRenderer.js +0 -6
  644. package/dist/collection/components/header/headerCellRenderer.js +0 -19
  645. package/dist/collection/components/header/headerRenderer.js +0 -45
  646. package/dist/collection/components/order/orderRenderer.js +0 -50
  647. package/dist/collection/components/order/rowOrderService.js +0 -68
  648. package/dist/collection/components/overlay/clipboard.service.js +0 -39
  649. package/dist/collection/components/overlay/editors/edit.utils.js +0 -5
  650. package/dist/collection/components/overlay/editors/text.js +0 -35
  651. package/dist/collection/components/overlay/revogr-edit.js +0 -163
  652. package/dist/collection/components/revoGrid/viewport.interfaces.js +0 -1
  653. package/dist/collection/components/revoGrid/viewport.js +0 -18
  654. package/dist/collection/components/revoGrid/viewport.section.js +0 -28
  655. package/dist/collection/components/rowHeaders/row-header-utils.js +0 -4
  656. package/dist/collection/plugins/autoSizeColumn.d.ts +0 -54
  657. package/dist/collection/plugins/autoSizeColumn.js +0 -230
  658. package/dist/collection/plugins/basePlugin.d.ts +0 -37
  659. package/dist/collection/plugins/basePlugin.js +0 -53
  660. package/dist/collection/plugins/export/csv.d.ts +0 -9
  661. package/dist/collection/plugins/export/export.plugin.d.ts +0 -24
  662. package/dist/collection/plugins/export/types.d.ts +0 -23
  663. package/dist/collection/plugins/filter/conditions/equal.d.ts +0 -4
  664. package/dist/collection/plugins/filter/conditions/number/greaterThan.d.ts +0 -3
  665. package/dist/collection/plugins/filter/conditions/number/greaterThanOrEqual.d.ts +0 -3
  666. package/dist/collection/plugins/filter/conditions/number/lessThan.d.ts +0 -3
  667. package/dist/collection/plugins/filter/conditions/number/lessThanOrEqual.d.ts +0 -3
  668. package/dist/collection/plugins/filter/conditions/set.d.ts +0 -4
  669. package/dist/collection/plugins/filter/conditions/string/beginswith.d.ts +0 -3
  670. package/dist/collection/plugins/filter/conditions/string/contains.d.ts +0 -4
  671. package/dist/collection/plugins/filter/filter.button.d.ts +0 -10
  672. package/dist/collection/plugins/filter/filter.plugin.d.ts +0 -59
  673. package/dist/collection/plugins/filter/filter.pop.d.ts +0 -42
  674. package/dist/collection/plugins/filter/filter.service.d.ts +0 -20
  675. package/dist/collection/plugins/filter/filter.types.d.ts +0 -8
  676. package/dist/collection/plugins/groupingColumn/columnGroupsRenderer.d.ts +0 -16
  677. package/dist/collection/plugins/groupingColumn/grouping.col.plugin.d.ts +0 -13
  678. package/dist/collection/plugins/groupingColumn/headerGroupRenderer.d.ts +0 -14
  679. package/dist/collection/plugins/groupingRow/grouping.const.d.ts +0 -9
  680. package/dist/collection/plugins/groupingRow/grouping.row.expand.service.d.ts +0 -15
  681. package/dist/collection/plugins/groupingRow/grouping.row.plugin.d.ts +0 -40
  682. package/dist/collection/plugins/groupingRow/grouping.row.renderer.d.ts +0 -9
  683. package/dist/collection/plugins/groupingRow/grouping.row.types.d.ts +0 -19
  684. package/dist/collection/plugins/groupingRow/grouping.service.d.ts +0 -25
  685. package/dist/collection/plugins/groupingRow/grouping.trimmed.service.d.ts +0 -10
  686. package/dist/collection/plugins/sorting/sorting.plugin.d.ts +0 -32
  687. package/dist/collection/plugins/sorting/sorting.sign.d.ts +0 -8
  688. package/dist/collection/plugins/stretchPlugin.d.ts +0 -29
  689. package/dist/collection/plugins/stretchPlugin.js +0 -90
  690. package/dist/collection/plugins/trimmed/trimmed.plugin.d.ts +0 -10
  691. package/dist/collection/plugins/trimmed/trimmed.plugin.js +0 -32
  692. package/dist/collection/services/localScrollService.js +0 -80
  693. package/dist/collection/store/viewPort/viewport.helpers.js +0 -180
  694. package/dist/collection/store/viewPort/viewport.store.js +0 -121
  695. package/dist/collection/themeManager/themeService.js +0 -43
  696. package/dist/collection/utils/closestPolifill.js +0 -18
  697. package/dist/collection/utils/generateAlphabetHeader.js +0 -20
  698. package/dist/collection/utils/keyCodes.js +0 -70
  699. package/dist/collection/utils/keyCodes.utils.js +0 -64
  700. package/dist/collection/utils/resizeObserver.js +0 -6
  701. package/dist/collection/utils/utils.js +0 -104
  702. package/dist/esm/css-shim-8d75038b.js +0 -4
  703. package/dist/esm/dom-1b195079.js +0 -73
  704. package/dist/esm/filter.button-53ebca66.js +0 -23
  705. package/dist/esm/index-42c84e7c.js +0 -1694
  706. package/dist/esm/polyfills/core-js.js +0 -11
  707. package/dist/esm/polyfills/css-shim.js +0 -1
  708. package/dist/esm/polyfills/dom.js +0 -79
  709. package/dist/esm/polyfills/index.js +0 -34
  710. package/dist/esm/polyfills/system.js +0 -6
  711. package/dist/esm/revo-grid_11.entry.js +0 -28607
  712. package/dist/esm/revogr-clipboard.entry.js +0 -49
  713. package/dist/esm-es5/css-shim-8d75038b.js +0 -1
  714. package/dist/esm-es5/dom-1b195079.js +0 -21
  715. package/dist/esm-es5/filter.button-53ebca66.js +0 -1
  716. package/dist/esm-es5/index-42c84e7c.js +0 -1
  717. package/dist/esm-es5/loader.js +0 -1
  718. package/dist/esm-es5/resize-observer-56b7b34f.js +0 -1
  719. package/dist/esm-es5/revo-grid.js +0 -1
  720. package/dist/esm-es5/revo-grid_11.entry.js +0 -1
  721. package/dist/esm-es5/revogr-clipboard.entry.js +0 -1
  722. package/dist/esm-es5/revogr-filter-panel.entry.js +0 -1
  723. package/dist/revo-grid/css-shim-88bfb262.system.js +0 -1
  724. package/dist/revo-grid/css-shim-8d75038b.js +0 -1
  725. package/dist/revo-grid/dom-1b195079.js +0 -19
  726. package/dist/revo-grid/dom-ee2dd1b3.system.js +0 -21
  727. package/dist/revo-grid/filter.button-1509c206.js +0 -1
  728. package/dist/revo-grid/filter.button-4bd87101.system.js +0 -1
  729. package/dist/revo-grid/index-a15e7527.system.js +0 -1
  730. package/dist/revo-grid/index-a7f99799.js +0 -1
  731. package/dist/revo-grid/index.system.js +0 -1
  732. package/dist/revo-grid/plugins/autoSizeColumn.d.ts +0 -54
  733. package/dist/revo-grid/plugins/basePlugin.d.ts +0 -37
  734. package/dist/revo-grid/plugins/export/csv.d.ts +0 -9
  735. package/dist/revo-grid/plugins/export/export.plugin.d.ts +0 -24
  736. package/dist/revo-grid/plugins/export/types.d.ts +0 -23
  737. package/dist/revo-grid/plugins/filter/conditions/equal.d.ts +0 -4
  738. package/dist/revo-grid/plugins/filter/conditions/number/greaterThan.d.ts +0 -3
  739. package/dist/revo-grid/plugins/filter/conditions/number/greaterThanOrEqual.d.ts +0 -3
  740. package/dist/revo-grid/plugins/filter/conditions/number/lessThan.d.ts +0 -3
  741. package/dist/revo-grid/plugins/filter/conditions/number/lessThanOrEqual.d.ts +0 -3
  742. package/dist/revo-grid/plugins/filter/conditions/set.d.ts +0 -4
  743. package/dist/revo-grid/plugins/filter/conditions/string/beginswith.d.ts +0 -3
  744. package/dist/revo-grid/plugins/filter/conditions/string/contains.d.ts +0 -4
  745. package/dist/revo-grid/plugins/filter/filter.button.d.ts +0 -10
  746. package/dist/revo-grid/plugins/filter/filter.plugin.d.ts +0 -59
  747. package/dist/revo-grid/plugins/filter/filter.pop.d.ts +0 -42
  748. package/dist/revo-grid/plugins/filter/filter.service.d.ts +0 -20
  749. package/dist/revo-grid/plugins/filter/filter.types.d.ts +0 -8
  750. package/dist/revo-grid/plugins/groupingColumn/columnGroupsRenderer.d.ts +0 -16
  751. package/dist/revo-grid/plugins/groupingColumn/grouping.col.plugin.d.ts +0 -13
  752. package/dist/revo-grid/plugins/groupingColumn/headerGroupRenderer.d.ts +0 -14
  753. package/dist/revo-grid/plugins/groupingRow/grouping.const.d.ts +0 -9
  754. package/dist/revo-grid/plugins/groupingRow/grouping.row.expand.service.d.ts +0 -15
  755. package/dist/revo-grid/plugins/groupingRow/grouping.row.plugin.d.ts +0 -40
  756. package/dist/revo-grid/plugins/groupingRow/grouping.row.renderer.d.ts +0 -9
  757. package/dist/revo-grid/plugins/groupingRow/grouping.row.types.d.ts +0 -19
  758. package/dist/revo-grid/plugins/groupingRow/grouping.service.d.ts +0 -25
  759. package/dist/revo-grid/plugins/groupingRow/grouping.trimmed.service.d.ts +0 -10
  760. package/dist/revo-grid/plugins/sorting/sorting.plugin.d.ts +0 -32
  761. package/dist/revo-grid/plugins/sorting/sorting.sign.d.ts +0 -8
  762. package/dist/revo-grid/plugins/stretchPlugin.d.ts +0 -29
  763. package/dist/revo-grid/plugins/trimmed/trimmed.plugin.d.ts +0 -10
  764. package/dist/revo-grid/resize-observer-56b7b34f.js +0 -1
  765. package/dist/revo-grid/resize-observer-7a7b9757.system.js +0 -1
  766. package/dist/revo-grid/revo-grid.js +0 -132
  767. package/dist/revo-grid/revo-grid.system.js +0 -1
  768. package/dist/revo-grid/revo-grid_11.entry.js +0 -1
  769. package/dist/revo-grid/revo-grid_11.system.entry.js +0 -1
  770. package/dist/revo-grid/revogr-clipboard.entry.js +0 -1
  771. package/dist/revo-grid/revogr-clipboard.system.entry.js +0 -1
  772. package/dist/revo-grid/revogr-filter-panel.system.entry.js +0 -1
  773. package/dist/types/components/button/button.d.ts +0 -5
  774. package/dist/types/components/data/cellRenderer.d.ts +0 -8
  775. package/dist/types/components/data/columnService.d.ts +0 -42
  776. package/dist/types/components/header/headerCellRenderer.d.ts +0 -8
  777. package/dist/types/components/header/headerRenderer.d.ts +0 -15
  778. package/dist/types/components/order/orderRenderer.d.ts +0 -28
  779. package/dist/types/components/order/rowOrderService.d.ts +0 -27
  780. package/dist/types/components/overlay/clipboard.service.d.ts +0 -20
  781. package/dist/types/components/overlay/editors/text.d.ts +0 -13
  782. package/dist/types/components/overlay/revogr-edit.d.ts +0 -19
  783. package/dist/types/components/revoGrid/viewport.d.ts +0 -19
  784. package/dist/types/components/revoGrid/viewport.interfaces.d.ts +0 -66
  785. package/dist/types/components/revoGrid/viewport.section.d.ts +0 -24
  786. package/dist/types/components/rowHeaders/row-header-utils.d.ts +0 -2
  787. package/dist/types/interfaces.d.ts +0 -437
  788. package/dist/types/plugins/autoSizeColumn.d.ts +0 -54
  789. package/dist/types/plugins/basePlugin.d.ts +0 -37
  790. package/dist/types/plugins/stretchPlugin.d.ts +0 -29
  791. package/dist/types/plugins/trimmed/trimmed.plugin.d.ts +0 -10
  792. package/dist/types/services/localScrollService.d.ts +0 -28
  793. package/dist/types/store/viewPort/viewport.helpers.d.ts +0 -30
  794. package/dist/types/store/viewPort/viewport.store.d.ts +0 -18
  795. package/dist/types/themeManager/themeService.d.ts +0 -13
  796. package/dist/types/utils/closestPolifill.d.ts +0 -0
  797. package/dist/types/utils/keyCodes.d.ts +0 -68
  798. package/loader/cdn.js +0 -3
  799. package/loader/index.cjs.js +0 -3
  800. package/loader/index.es2017.js +0 -3
  801. package/loader/index.js +0 -4
  802. /package/dist/types/components/{overlay/editors → editors}/edit.utils.d.ts +0 -0
  803. /package/dist/{esm-es5/index.js → types/utils/closest.polifill.d.ts} +0 -0
  804. /package/dist/types/utils/{generateAlphabetHeader.d.ts → header.utils.d.ts} +0 -0
  805. /package/dist/types/utils/{resizeObserver.d.ts → resize-observer.polifill.d.ts} +0 -0
@@ -0,0 +1,251 @@
1
+ /*!
2
+ * Built by Revolist OU ❤️
3
+ */
4
+ import { i as getItemByPosition } from './dimension.helpers-a3065cb1.js';
5
+
6
+ /**
7
+ * Update items based on new scroll position
8
+ * If viewport wasn't changed fully simple recombination of positions
9
+ * Otherwise rebuild viewport items
10
+ */
11
+ function getUpdatedItemsByPosition(pos, // coordinate
12
+ items, realCount, virtualSize, dimension) {
13
+ const activeItem = getItemByPosition(dimension, pos);
14
+ const firstItem = getFirstItem(items);
15
+ let toUpdate;
16
+ // do simple position recombination if items already present in viewport
17
+ if (firstItem) {
18
+ let changedOffsetStart = activeItem.itemIndex - (firstItem.itemIndex || 0);
19
+ // if item changed
20
+ if (changedOffsetStart) {
21
+ // simple recombination
22
+ toUpdate = recombineByOffset(Math.abs(changedOffsetStart), Object.assign(Object.assign({ positiveDirection: changedOffsetStart > -1 }, dimension), items));
23
+ }
24
+ }
25
+ const maxSizeVirtualSize = getMaxVirtualSize(virtualSize, dimension.realSize, activeItem);
26
+ // if partial recombination add items if revo-viewport has some space left
27
+ if (toUpdate) {
28
+ const extra = addMissingItems(activeItem, realCount, maxSizeVirtualSize, toUpdate, dimension);
29
+ if (extra.length) {
30
+ updateMissingAndRange(toUpdate.items, extra, toUpdate);
31
+ }
32
+ }
33
+ // new collection if no items after replacement full replacement
34
+ if (!toUpdate) {
35
+ const items = getItems({
36
+ firstItemStart: activeItem.start,
37
+ firstItemIndex: activeItem.itemIndex,
38
+ origSize: dimension.originItemSize,
39
+ maxSize: maxSizeVirtualSize,
40
+ maxCount: realCount,
41
+ sizes: dimension.sizes,
42
+ });
43
+ // range now comes from 0 to length - 1
44
+ toUpdate = {
45
+ items,
46
+ start: 0,
47
+ end: items.length - 1,
48
+ };
49
+ }
50
+ return toUpdate;
51
+ }
52
+ // virtual size can differ based on scroll position if some big items are present
53
+ // scroll can be in the middle of item and virtual size will be larger
54
+ // so we need to exclude this part from virtual size hence it's already passed
55
+ function getMaxVirtualSize(virtualSize, realSize, activeItem) {
56
+ return Math.min(virtualSize + (activeItem.end - activeItem.start), realSize);
57
+ }
58
+ function updateMissingAndRange(items, missing, range) {
59
+ items.splice(range.end + 1, 0, ...missing);
60
+ // update range if start larger after recombination
61
+ if (range.start >= range.end &&
62
+ !(range.start === range.end && range.start === 0)) {
63
+ range.start += missing.length;
64
+ }
65
+ range.end += missing.length;
66
+ }
67
+ /**
68
+ * If partial replacement
69
+ * this function adds items if viewport has some space left
70
+ */
71
+ function addMissingItems(firstItem, realCount, virtualSize, existingCollection, dimension) {
72
+ const lastItem = getLastItem(existingCollection);
73
+ const items = getItems({
74
+ sizes: dimension.sizes,
75
+ firstItemStart: lastItem.end,
76
+ firstItemIndex: lastItem.itemIndex + 1,
77
+ origSize: dimension.originItemSize,
78
+ maxSize: virtualSize - (lastItem.end - firstItem.start),
79
+ maxCount: realCount,
80
+ });
81
+ return items;
82
+ }
83
+ /**
84
+ * Get wiewport items parameters
85
+ * caching position and calculating items count in viewport
86
+ */
87
+ function getItems(opt, currentSize = 0) {
88
+ const items = [];
89
+ let index = opt.firstItemIndex;
90
+ let size = currentSize;
91
+ // max size or max count
92
+ while (size <= opt.maxSize && index < opt.maxCount) {
93
+ const newSize = getItemSize(index, opt.sizes, opt.origSize);
94
+ items.push({
95
+ start: opt.firstItemStart + size,
96
+ end: opt.firstItemStart + size + newSize,
97
+ itemIndex: index,
98
+ size: newSize,
99
+ });
100
+ size += newSize;
101
+ index++;
102
+ }
103
+ return items;
104
+ }
105
+ function recombineByOffset(offset, data) {
106
+ const newItems = [...data.items];
107
+ const itemsCount = newItems.length;
108
+ let newRange = {
109
+ start: data.start,
110
+ end: data.end,
111
+ };
112
+ // if offset out of revo-viewport, makes sense whole redraw
113
+ if (offset > itemsCount) {
114
+ return null;
115
+ }
116
+ // is direction of scroll positive
117
+ if (data.positiveDirection) {
118
+ // push item to the end
119
+ let lastItem = getLastItem(data);
120
+ let i = newRange.start;
121
+ const length = i + offset;
122
+ for (; i < length; i++) {
123
+ const newIndex = lastItem.itemIndex + 1;
124
+ const size = getItemSize(newIndex, data.sizes, data.originItemSize);
125
+ // if item overlapped limit break a loop
126
+ if (lastItem.end + size > data.realSize) {
127
+ break;
128
+ }
129
+ // new item index to recombine
130
+ let newEnd = i % itemsCount;
131
+ // item should always present, we do not create new item, we recombine them
132
+ if (!newItems[newEnd]) {
133
+ throw new Error('incorrect index');
134
+ }
135
+ // do recombination
136
+ newItems[newEnd] = lastItem = {
137
+ start: lastItem.end,
138
+ end: lastItem.end + size,
139
+ itemIndex: newIndex,
140
+ size: size,
141
+ };
142
+ // update range
143
+ newRange.start++;
144
+ newRange.end = newEnd;
145
+ }
146
+ // direction is negative
147
+ }
148
+ else {
149
+ // push item to the start
150
+ let firstItem = getFirstItem(data);
151
+ const end = newRange.end;
152
+ for (let i = 0; i < offset; i++) {
153
+ const newIndex = firstItem.itemIndex - 1;
154
+ const size = getItemSize(newIndex, data.sizes, data.originItemSize);
155
+ // new item index to recombine
156
+ let newStart = end - i;
157
+ newStart = (newStart < 0 ? itemsCount + newStart : newStart) % itemsCount;
158
+ // item should always present, we do not create new item, we recombine them
159
+ if (!newItems[newStart]) {
160
+ throw new Error('incorrect index');
161
+ }
162
+ // do recombination
163
+ newItems[newStart] = firstItem = {
164
+ start: firstItem.start - size,
165
+ end: firstItem.start,
166
+ itemIndex: newIndex,
167
+ size: size,
168
+ };
169
+ // update range
170
+ newRange.start = newStart;
171
+ newRange.end--;
172
+ }
173
+ }
174
+ const range = {
175
+ start: (newRange.start < 0 ? itemsCount + newRange.start : newRange.start) %
176
+ itemsCount,
177
+ end: (newRange.end < 0 ? itemsCount + newRange.end : newRange.end) %
178
+ itemsCount,
179
+ };
180
+ return Object.assign({ items: newItems }, range);
181
+ }
182
+ function getItemSize(index, sizes, origSize = 0) {
183
+ if (sizes && sizes[index]) {
184
+ return sizes[index];
185
+ }
186
+ return origSize;
187
+ }
188
+ /**
189
+ * Verify if position is in range of the PositionItem, start and end are included
190
+ */
191
+ function isActiveRange(pos, realSize, first, last) {
192
+ if (!first || !last) {
193
+ return false;
194
+ }
195
+ // if position is in range of first item
196
+ // or position is after first item and last item is the last item in real size
197
+ return ((pos >= first.start && pos <= first.end) ||
198
+ (pos > first.end && last.end === realSize));
199
+ }
200
+ function isActiveRangeOutsideLastItem(pos, virtualSize, firstItem, lastItem) {
201
+ // if no first item, means no items in viewport
202
+ if (!firstItem) {
203
+ return false;
204
+ }
205
+ return virtualSize + pos > (lastItem === null || lastItem === void 0 ? void 0 : lastItem.end);
206
+ }
207
+ function getFirstItem(s) {
208
+ return s.items[s.start];
209
+ }
210
+ function getLastItem(s) {
211
+ return s.items[s.end];
212
+ }
213
+ /**
214
+ * Set items sizes from start index to end
215
+ * @param vpItems
216
+ * @param start
217
+ * @param size
218
+ * @param lastCoordinate
219
+ * @returns
220
+ */
221
+ function setItemSizes(vpItems, initialIndex, size, lastCoordinate) {
222
+ const items = [...vpItems];
223
+ const count = items.length;
224
+ let pos = lastCoordinate;
225
+ let i = 0;
226
+ let start = initialIndex;
227
+ // viewport not inited
228
+ if (!count) {
229
+ return [];
230
+ }
231
+ // loop through array from initial item after recombination
232
+ while (i < count) {
233
+ const item = items[start];
234
+ item.start = pos;
235
+ item.size = size;
236
+ item.end = item.start + size;
237
+ pos = item.end;
238
+ // loop by start index
239
+ start++;
240
+ i++;
241
+ // if start index out of array, reset it
242
+ if (start === count) {
243
+ start = 0;
244
+ }
245
+ }
246
+ return items;
247
+ }
248
+
249
+ export { addMissingItems as a, getItems as b, isActiveRangeOutsideLastItem as c, getFirstItem as d, getLastItem as e, getUpdatedItemsByPosition as g, isActiveRange as i, recombineByOffset as r, setItemSizes as s, updateMissingAndRange as u };
250
+
251
+ //# sourceMappingURL=viewport.helpers-6591d423.js.map
@@ -0,0 +1 @@
1
+ {"file":"viewport.helpers-6591d423.js","mappings":"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","names":[],"sources":["src/store/viewport/viewport.helpers.ts"],"sourcesContent":["import {\n DimensionSettingsState,\n PositionItem,\n ViewSettingSizeProp,\n ViewportStateItems,\n VirtualPositionItem,\n Range,\n} from '../..';\nimport { getItemByPosition } from '../dimension/dimension.helpers';\n\nexport type DimensionDataViewport = Pick<\n DimensionSettingsState,\n | 'indexes'\n | 'positionIndexes'\n | 'positionIndexToItem'\n | 'sizes'\n | 'originItemSize'\n | 'realSize'\n>;\n\ntype ItemsToUpdate = Pick<ViewportStateItems, 'items' | 'start' | 'end'>;\n/**\n * Update items based on new scroll position\n * If viewport wasn't changed fully simple recombination of positions\n * Otherwise rebuild viewport items\n */\nexport function getUpdatedItemsByPosition<T extends ItemsToUpdate>(\n pos: number, // coordinate\n items: T,\n realCount: number,\n virtualSize: number,\n dimension: DimensionDataViewport,\n): ItemsToUpdate {\n const activeItem: PositionItem = getItemByPosition(dimension, pos);\n const firstItem: PositionItem = getFirstItem(items);\n let toUpdate: ItemsToUpdate;\n // do simple position recombination if items already present in viewport\n if (firstItem) {\n let changedOffsetStart = activeItem.itemIndex - (firstItem.itemIndex || 0);\n // if item changed\n if (changedOffsetStart) {\n // simple recombination\n toUpdate = recombineByOffset(Math.abs(changedOffsetStart), {\n positiveDirection: changedOffsetStart > -1,\n ...dimension,\n ...items,\n });\n }\n }\n\n const maxSizeVirtualSize = getMaxVirtualSize(\n virtualSize,\n dimension.realSize,\n activeItem,\n );\n // if partial recombination add items if revo-viewport has some space left\n if (toUpdate) {\n const extra = addMissingItems(\n activeItem,\n realCount,\n maxSizeVirtualSize,\n toUpdate,\n dimension,\n );\n if (extra.length) {\n updateMissingAndRange(toUpdate.items, extra, toUpdate);\n }\n }\n\n // new collection if no items after replacement full replacement\n if (!toUpdate) {\n const items = getItems({\n firstItemStart: activeItem.start,\n firstItemIndex: activeItem.itemIndex,\n origSize: dimension.originItemSize,\n maxSize: maxSizeVirtualSize,\n maxCount: realCount,\n sizes: dimension.sizes,\n });\n\n // range now comes from 0 to length - 1\n toUpdate = {\n items,\n start: 0,\n end: items.length - 1,\n };\n }\n return toUpdate;\n}\n\n// virtual size can differ based on scroll position if some big items are present\n// scroll can be in the middle of item and virtual size will be larger\n// so we need to exclude this part from virtual size hence it's already passed\nfunction getMaxVirtualSize(\n virtualSize: number,\n realSize: number,\n activeItem: PositionItem,\n) {\n return Math.min(virtualSize + (activeItem.end - activeItem.start), realSize);\n}\n\nexport function updateMissingAndRange(\n items: VirtualPositionItem[],\n missing: VirtualPositionItem[],\n range: Range,\n) {\n items.splice(range.end + 1, 0, ...missing);\n // update range if start larger after recombination\n if (\n range.start >= range.end &&\n !(range.start === range.end && range.start === 0)\n ) {\n range.start += missing.length;\n }\n range.end += missing.length;\n}\n\n/**\n * If partial replacement\n * this function adds items if viewport has some space left\n */\nexport function addMissingItems<T extends ItemsToUpdate>(\n firstItem: PositionItem,\n realCount: number,\n virtualSize: number,\n existingCollection: T,\n dimension: Pick<DimensionSettingsState, 'sizes' | 'originItemSize'>,\n): VirtualPositionItem[] {\n const lastItem: VirtualPositionItem = getLastItem(existingCollection);\n const items = getItems({\n sizes: dimension.sizes,\n firstItemStart: lastItem.end,\n firstItemIndex: lastItem.itemIndex + 1,\n origSize: dimension.originItemSize,\n maxSize: virtualSize - (lastItem.end - firstItem.start),\n maxCount: realCount,\n });\n return items;\n}\n\n/**\n * Get wiewport items parameters\n * caching position and calculating items count in viewport\n */\nexport function getItems(\n opt: {\n firstItemIndex: number;\n firstItemStart: number;\n origSize: number;\n maxSize: number; // virtual size\n maxCount: number; // real item count, where the last item\n sizes?: ViewSettingSizeProp;\n },\n currentSize = 0,\n) {\n const items: VirtualPositionItem[] = [];\n\n let index = opt.firstItemIndex;\n let size = currentSize;\n\n // max size or max count\n while (size <= opt.maxSize && index < opt.maxCount) {\n const newSize = getItemSize(index, opt.sizes, opt.origSize);\n items.push({\n start: opt.firstItemStart + size,\n end: opt.firstItemStart + size + newSize,\n itemIndex: index,\n size: newSize,\n });\n size += newSize;\n index++;\n }\n return items;\n}\n\n/**\n * Do batch items recombination\n * If items not overlapped with existing viewport returns null\n */\ntype RecombindDimensionData = Pick<\n DimensionSettingsState,\n 'sizes' | 'realSize' | 'originItemSize'\n>;\ntype RecombineOffsetData = {\n positiveDirection: boolean;\n} & ItemsToUpdate &\n RecombindDimensionData;\nexport function recombineByOffset(\n offset: number,\n data: RecombineOffsetData,\n): ItemsToUpdate | null {\n const newItems = [...data.items];\n const itemsCount = newItems.length;\n let newRange = {\n start: data.start,\n end: data.end,\n };\n\n // if offset out of revo-viewport, makes sense whole redraw\n if (offset > itemsCount) {\n return null;\n }\n\n // is direction of scroll positive\n if (data.positiveDirection) {\n // push item to the end\n let lastItem: VirtualPositionItem = getLastItem(data);\n\n let i = newRange.start;\n const length = i + offset;\n for (; i < length; i++) {\n const newIndex = lastItem.itemIndex + 1;\n const size = getItemSize(\n newIndex,\n data.sizes,\n data.originItemSize,\n );\n\n // if item overlapped limit break a loop\n if (lastItem.end + size > data.realSize) {\n break;\n }\n\n // new item index to recombine\n let newEnd = i % itemsCount;\n\n // item should always present, we do not create new item, we recombine them\n if (!newItems[newEnd]) {\n throw new Error('incorrect index');\n }\n\n // do recombination\n newItems[newEnd] = lastItem = {\n start: lastItem.end,\n end: lastItem.end + size,\n itemIndex: newIndex,\n size: size,\n };\n // update range\n newRange.start++;\n newRange.end = newEnd;\n }\n\n // direction is negative\n } else {\n // push item to the start\n let firstItem: VirtualPositionItem = getFirstItem(data);\n\n const end = newRange.end;\n for (let i = 0; i < offset; i++) {\n const newIndex = firstItem.itemIndex - 1;\n const size = getItemSize(\n newIndex,\n data.sizes,\n data.originItemSize,\n );\n\n // new item index to recombine\n let newStart = end - i;\n newStart = (newStart < 0 ? itemsCount + newStart : newStart) % itemsCount;\n\n // item should always present, we do not create new item, we recombine them\n if (!newItems[newStart]) {\n throw new Error('incorrect index');\n }\n\n // do recombination\n newItems[newStart] = firstItem = {\n start: firstItem.start - size,\n end: firstItem.start,\n itemIndex: newIndex,\n size: size,\n };\n // update range\n newRange.start = newStart;\n newRange.end--;\n }\n }\n const range = {\n start:\n (newRange.start < 0 ? itemsCount + newRange.start : newRange.start) %\n itemsCount,\n end:\n (newRange.end < 0 ? itemsCount + newRange.end : newRange.end) %\n itemsCount,\n };\n return {\n items: newItems,\n ...range,\n };\n}\n\nfunction getItemSize(\n index: number,\n sizes?: ViewSettingSizeProp,\n origSize = 0,\n): number {\n if (sizes && sizes[index]) {\n return sizes[index];\n }\n return origSize;\n}\n\n/**\n * Verify if position is in range of the PositionItem, start and end are included\n */\nexport function isActiveRange(\n pos: number,\n realSize: number,\n first?: PositionItem,\n last?: PositionItem,\n): boolean {\n if (!first || !last) {\n return false;\n }\n // if position is in range of first item\n // or position is after first item and last item is the last item in real size\n return (\n (pos >= first.start && pos <= first.end) ||\n (pos > first.end && last.end === realSize)\n );\n}\n\nexport function isActiveRangeOutsideLastItem(\n pos: number,\n virtualSize: number,\n firstItem?: PositionItem,\n lastItem?: PositionItem,\n) {\n // if no first item, means no items in viewport\n if (!firstItem) {\n return false;\n }\n return virtualSize + pos > lastItem?.end;\n}\n\nexport function getFirstItem(\n s: ItemsToUpdate,\n): VirtualPositionItem | undefined {\n return s.items[s.start];\n}\n\nexport function getLastItem(s: ItemsToUpdate): VirtualPositionItem {\n return s.items[s.end];\n}\n\n/**\n * Set items sizes from start index to end\n * @param vpItems\n * @param start\n * @param size\n * @param lastCoordinate\n * @returns\n */\nexport function setItemSizes(\n vpItems: VirtualPositionItem[],\n initialIndex: number,\n size: number,\n lastCoordinate: number,\n) {\n const items = [...vpItems];\n const count = items.length;\n\n let pos = lastCoordinate;\n let i = 0;\n let start = initialIndex;\n\n // viewport not inited\n if (!count) {\n return [];\n }\n // loop through array from initial item after recombination\n while (i < count) {\n const item = items[start];\n item.start = pos;\n item.size = size;\n item.end = item.start + size;\n pos = item.end;\n // loop by start index\n start++;\n i++;\n\n // if start index out of array, reset it\n if (start === count) {\n start = 0;\n }\n }\n return items;\n}\n"],"version":3}
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- export * from './esm-es5/index.js';
1
+ export * from './esm/index.js';
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * Built by Revolist OU ❤️
3
+ */
4
+ module.exports = require('../cjs/loader.cjs.js');
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * Built by Revolist OU ❤️
3
+ */
4
+ module.exports = require('../cjs/loader.cjs.js');
@@ -1,5 +1,4 @@
1
-
2
- export * from '../dist/types/components';
1
+ export * from '../types/components';
3
2
  export interface CustomElementsDefineOptions {
4
3
  exclude?: string[];
5
4
  resourcesUrl?: string;
@@ -9,5 +8,14 @@ export interface CustomElementsDefineOptions {
9
8
  ael?: (el: EventTarget, eventName: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions) => void;
10
9
  rel?: (el: EventTarget, eventName: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions) => void;
11
10
  }
12
- export declare function defineCustomElements(win?: Window, opts?: CustomElementsDefineOptions): Promise<void>;
11
+ export declare function defineCustomElements(win?: Window, opts?: CustomElementsDefineOptions): void;
13
12
  export declare function applyPolyfills(): Promise<void>;
13
+
14
+ /**
15
+ * Used to specify a nonce value that corresponds with an application's CSP.
16
+ * When set, the nonce will be added to all dynamically created script and style tags at runtime.
17
+ * Alternatively, the nonce value can be set on a meta tag in the DOM head
18
+ * (<meta name="csp-nonce" content="{ nonce value here }" />) which
19
+ * will result in the same behavior.
20
+ */
21
+ export declare function setNonce(nonce: string): void;
@@ -0,0 +1,4 @@
1
+ /*!
2
+ * Built by Revolist OU ❤️
3
+ */
4
+ export * from '../esm/loader.js';
@@ -1 +1,5 @@
1
- (function(){if("undefined"!==typeof window&&void 0!==window.Reflect&&void 0!==window.customElements){var a=HTMLElement;window.HTMLElement=function(){return Reflect.construct(a,[],this.constructor)};HTMLElement.prototype=a.prototype;HTMLElement.prototype.constructor=HTMLElement;Object.setPrototypeOf(HTMLElement,a)}})();
1
+ /*!
2
+ * Built by Revolist OU ❤️
3
+ */
4
+ (function(){if("undefined"!==typeof window&&void 0!==window.Reflect&&void 0!==window.customElements){var a=HTMLElement;window.HTMLElement=function(){return Reflect.construct(a,[],this.constructor)};HTMLElement.prototype=a.prototype;HTMLElement.prototype.constructor=HTMLElement;Object.setPrototypeOf(HTMLElement,a)}})();
5
+ export * from '../esm/loader.js';
@@ -1,5 +1,6 @@
1
1
  {
2
2
  "name": "revo-grid-loader",
3
+ "private": true,
3
4
  "typings": "./index.d.ts",
4
5
  "module": "./index.js",
5
6
  "main": "./index.cjs.js",
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Built by Revolist OU ❤️
3
+ */
4
+ import"./index-21436631.js";const o=()=>{};const s=o;export{s as g};
5
+ //# sourceMappingURL=app-globals-ef1fca59.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["globalScripts","appGlobalScript"],"sources":["@stencil/core/internal/app-globals"],"sourcesContent":["import appGlobalScript from '/Users/maks/Projects/revogrid/src/global/global.ts';\nexport const globalScripts = appGlobalScript;\n"],"mappings":";;;2CACY,MAACA,EAAgBC,S","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Built by Revolist OU ❤️
3
+ */
4
+ import{C as t,B as n,a as e,b as o}from"./dimension.helpers-a3065cb1.js";import{G as s,C as r,D as i}from"./index-98fd0168.js";import{g as c}from"./selection.store-2577ddf9.js";const a=`${s}-depth`;const u=`${s}-name`;const f=`${s}-id`;const l=`${s}-value`;const d=`${s}-column`;const p=`${s}-expanded`;const h=`${s}-original-index`;const y=`group-expand`;const g=`groupexpandclick`;const v="rgRow";function m(t,n){return t[n]||null}function x(t,n,{prevExpanded:e,expandedAll:o,getGroupValue:s=m}){const r=new Map;t.forEach(((t,e)=>{const o=n.map((n=>s(t,n)));const i=o.pop();let c=r;o.forEach((t=>{if(!c.has(t)){c.set(t,new Map)}c=c.get(t)}));if(!c.has(i)){c.set(i,[])}const a=c.get(i);a.push(Object.assign(Object.assign({},t),{[h]:e}))}));let i=-1;const c=n.length;const d={};const y={};const g={};const v=[];function x(t,n,s){const r=n.length;t.forEach(((t,c)=>{const m=[...n,c];const b=m.join(",");const j=s&&(!!o||!!(e===null||e===void 0?void 0:e[b]));v.push({[u]:c,[a]:r,[f]:JSON.stringify(m),[l]:b,[p]:j});i+=1;if(!j&&r){d[i]=true}if(Array.isArray(t)){t.forEach((t=>{i+=1;if(!j){d[i]=true}y[t[h]]=i;const n=m.map(((t,n)=>m.slice(0,n+1).join(",")));n.forEach((t=>{if(!g[t]){g[t]=[]}g[t].push(i)}))}));v.push(...t)}else{x(t,m,j)}}))}x(r,[],true);return{sourceWithGroups:v,depth:c,trimmed:d,oldNewIndexMap:y,childrenByGroup:g}}function b(t){return t&&t[u]}function j(t){return t&&typeof t[u]!=="undefined"}function O(t){return t&&typeof t[d]!=="undefined"}function w(t,n){const e=t.length;let o=0;for(;o<e;o++){if(t[o]!==n[o]){return o}}return o}function I(t){const n=JSON.parse(t);if(!Array.isArray(n)){return null}return n}function C(t,n,e){const o=I(e[f]);if(!o){return false}const s=w(t,o);return n[a]<s}const D="header";const R="footer";const T="content";const $="data";function A(t,n){return{x:t.viewports[t.colType].store.get("realCount"),y:t.viewports[n].store.get("realCount")}}function G(t,n,e){var o=-1,s=t.length;if(n<0){n=-n>s?0:s+n}e=e>s?s:e;if(e<0){e+=s}s=n>e?0:e-n>>>0;n>>>=0;var r=Array(s);while(++o<s){r[o]=t[o+n]}return r}var M=G;var P=M,S=t,k=n;function N(t,n,e){var o=t==null?0:t.length;if(!o){return[]}if(e&&typeof e!="number"&&S(t,n,e)){n=0;e=o}else{n=n==null?0:k(n);e=e===undefined?o:k(e)}return P(t,n,e)}var B=N;class E{get columns(){return e(this.source)}constructor(t,n){this.dataStore=t;this.source=n;this.unsubscribe=[];this.hasGrouping=false;this.unsubscribe.push(n.onChange("source",(t=>this.checkGrouping(t))));this.checkGrouping(n.get("source"));this.type=n.get("type")}checkGrouping(t){for(let n of t){if(O(n)){this.hasGrouping=true;return}this.hasGrouping=false}}isReadOnly(t,n){var e;const o=(e=this.columns[n])===null||e===void 0?void 0:e.readonly;if(typeof o==="function"){const e=this.rowDataModel(t,n);return o(e)}return o}mergeProperties(t,n,e,o,s){const c={[r]:true,[i]:this.isReadOnly(t,n)};let a=Object.assign(Object.assign({},e),{class:c});const u=s===null||s===void 0?void 0:s(o);if(!u){return a}return F(a,u)}getRowClass(t,n){const e=o(this.dataStore,t)||{};return e[n]||""}getCellData(t,n){const e=this.rowDataModel(t,n);return J(e.model[e.prop])}getSaveData(t,n,e){if(typeof e==="undefined"){e=this.getCellData(t,n)}const o=this.rowDataModel(t,n);return{prop:o.prop,rowIndex:t,colIndex:n,val:e,model:o.model,colType:this.type,type:this.dataStore.get("type")}}getCellEditor(t,n,e){var o;const s=(o=this.columns[n])===null||o===void 0?void 0:o.editor;if(!s){return undefined}if(typeof s==="string"){return e[s]}return s}rowDataModel(t,n){const e=this.columns[n];const s=e===null||e===void 0?void 0:e.prop;const r=o(this.dataStore,t)||{};const i=this.dataStore.get("type");return{prop:s,model:r,data:this.dataStore.get("source"),column:e,rowIndex:t,colIndex:n,colType:this.type,type:i}}getRangeData(t,n){var e;const s={};const r=t.oldRange.x1-t.oldRange.x+1;const i=t.oldRange.y1-t.oldRange.y+1;const c={};for(let a=t.newRange.y,u=0;a<t.newRange.y1+1;a++,u++){const f=t.oldRange.y+u%i;const l=o(this.dataStore,f)||{};for(let o=t.newRange.x,i=0;o<t.newRange.x1+1;o++,i++){if(a>=t.oldRange.y&&a<=t.oldRange.y1&&o>=t.oldRange.x&&o<=t.oldRange.x1){continue}if(!this.columns[o]){continue}const u=(e=this.columns[o])===null||e===void 0?void 0:e.prop;const d=t.oldRange.x+i%r;const p=n[d].prop;if(!this.isReadOnly(a,o)){if(!s[a]){s[a]={}}s[a][u]=l[p];if(!c[a]){c[a]={}}c[a][u]={colIndex:d,colProp:p,rowIndex:f}}}}return{changed:s,mapping:c}}getTransformedDataToApply(t,n){const e={};const o=n.length;const s=this.columns.length;const r=this.dataStore.get("items").length;let i=t.y;let a=0;for(let c=0;i<r&&c<o;i++,c++){const r=n[c%o];const u=(r===null||r===void 0?void 0:r.length)||0;let f=t.x;for(let t=0;f<s&&t<u;f++,t++){const n=this.columns[f].prop;const o=t%s;if(!this.isReadOnly(i,f)){if(!e[i]){e[i]={}}e[i][n]=r[o]}}a=Math.max(a,f-1)}const u=c(t,{y:i-1,x:a});return{changed:e,range:u}}getRangeStaticData(t,n){const e={};for(let o=t.y,s=0;o<t.y1+1;o++,s++){for(let s=t.x,r=0;s<t.x1+1;s++,r++){if(!this.columns[s]){continue}const t=this.columns[s].prop;if(!this.isReadOnly(o,s)){if(!e[o]){e[o]={}}e[o][t]=n}}}return e}getRangeTransformedToProps(t,n){var e;const s=[];const r=this.dataStore.get("type");for(let i=t.y,c=0;i<t.y1+1;i++,c++){for(let c=t.x,a=0;c<t.x1+1;c++,a++){const t=(e=this.columns[c])===null||e===void 0?void 0:e.prop;s.push({prop:t,rowIndex:i,colIndex:c,model:o(n,i),type:r,colType:this.type})}}return s}copyRangeArray(t,n){const e=[...this.columns];const s=B(e,t.x,t.x1+1).map((t=>t.prop));const r=[];const i={};for(let e=t.y;e<=t.y1;e++){const t=[];i[e]={};for(let r of s){const s=o(n,e);if(!s){continue}const c=s[r];t.push(c);i[e][r]=c}r.push(t)}return{data:r,mapping:i}}destroy(){this.unsubscribe.forEach((t=>t()))}}function J(t){if(typeof t==="undefined"||t===null){return""}return t}function q(t,n){if(typeof t==="function"){return t(n)}return!!t}function F(t,n){let e=Object.assign(Object.assign({},n),t);if(n.class){if(typeof n.class==="object"&&typeof e.class==="object"){e.class=Object.assign(Object.assign({},n.class),e.class)}else if(typeof n.class==="string"&&typeof e.class==="object"){e.class[n.class]=true}else if(typeof e.class==="string"){e.class+=" "+n.class}}if(n.style){e.style=Object.assign(Object.assign({},n.style),e.style)}return e}export{T as C,$ as D,R as F,p as G,D as H,l as P,I as a,C as b,a as c,f as d,v as e,d as f,b as g,g as h,j as i,x as j,O as k,A as l,F as m,E as n,y as o,u as p,q,J as r};
5
+ //# sourceMappingURL=column.service-21a3af74.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["GROUP_DEPTH","GRID_INTERNALS","PSEUDO_GROUP_ITEM","PSEUDO_GROUP_ITEM_ID","PSEUDO_GROUP_ITEM_VALUE","PSEUDO_GROUP_COLUMN","GROUP_EXPANDED","GROUP_ORIGINAL_INDEX","GROUP_EXPAND_BTN","GROUP_EXPAND_EVENT","GROUPING_ROW_TYPE","getGroupValueDefault","item","prop","gatherGrouping","array","groupIds","prevExpanded","expandedAll","getGroupValue","groupedItems","Map","forEach","originalIndex","groupLevelValues","map","groupId","lastLevelValue","pop","currentGroupLevel","value","has","set","get","lastLevelItems","push","Object","assign","itemIndex","groupingDepth","length","trimmed","oldNewIndexMap","pseudoGroupTest","sourceWithGroups","flattenGroupMaps","groupedValues","parentIds","isExpanded","depth","innerGroupedValues","levelIds","mergedIds","join","isGroupExpanded","JSON","stringify","Array","isArray","pseudoGroupTestIds","_value","index","slice","pseudoGroupTestId","childrenByGroup","getGroupingName","rgRow","isGrouping","isGroupingColumn","column","measureEqualDepth","groupA","groupB","ln","i","getParsedGroup","id","parseGroup","parse","isSameGroup","currentGroup","currentModel","nextModel","nextGroup","HEADER_SLOT","FOOTER_SLOT","CONTENT_SLOT","DATA_SLOT","getLastCell","data","rowType","x","viewports","colType","store","y","baseSlice","start","end","result","_baseSlice","require$$0","isIterateeCall","require$$1","toInteger","require$$2","undefined","slice_1","ColumnService","columns","getVisibleSourceItem","this","source","constructor","dataStore","unsubscribe","hasGrouping","onChange","s","checkGrouping","type","cols","rgCol","isReadOnly","r","c","readOnly","_a","readonly","rowDataModel","mergeProperties","defaultProps","model","extraPropsFunc","cellClass","CELL_CLASS","DISABLED_CLASS","props","class","extra","doPropMerge","getRowClass","getSourceItem","getCellData","getSaveData","rowIndex","colIndex","val","getCellEditor","_r","editors","editor","getRangeData","d","changed","copyColLength","oldRange","x1","copyRowLength","y1","mapping","newRange","oldRowIndex","copyRow","j","copyColIndex","copyColumnProp","colProp","getTransformedDataToApply","colLength","rowLength","maxCol","p","currentCol","Math","max","range","getRange","getRangeStaticData","getRangeTransformedToProps","area","copyRangeArray","v","toCopy","destroy","f","isRowDragService","rowDrag","existing","style"],"sources":["src/plugins/groupingRow/grouping.const.ts","src/plugins/groupingRow/grouping.service.ts","src/components/revoGrid/viewport.helpers.ts","node_modules/lodash/_baseSlice.js","node_modules/lodash/slice.js","src/components/data/column.service.ts"],"sourcesContent":["import { GRID_INTERNALS } from '../../utils/consts';\n\nexport const GROUP_DEPTH = `${GRID_INTERNALS}-depth`;\nexport const PSEUDO_GROUP_ITEM = `${GRID_INTERNALS}-name`;\nexport const PSEUDO_GROUP_ITEM_ID = `${GRID_INTERNALS}-id`;\nexport const PSEUDO_GROUP_ITEM_VALUE = `${GRID_INTERNALS}-value`;\nexport const PSEUDO_GROUP_COLUMN = `${GRID_INTERNALS}-column`;\nexport const GROUP_EXPANDED = `${GRID_INTERNALS}-expanded`;\nexport const GROUP_ORIGINAL_INDEX = `${GRID_INTERNALS}-original-index`;\nexport const GROUP_EXPAND_BTN = `group-expand`;\nexport const GROUP_EXPAND_EVENT = `groupexpandclick`;\nexport const GROUPING_ROW_TYPE = 'rgRow';\n","import { DataType, ColumnProp, ColumnRegular } from '../..';\nimport {\n GROUP_DEPTH,\n GROUP_EXPANDED,\n PSEUDO_GROUP_COLUMN,\n PSEUDO_GROUP_ITEM,\n PSEUDO_GROUP_ITEM_ID,\n PSEUDO_GROUP_ITEM_VALUE,\n GROUP_ORIGINAL_INDEX,\n} from './grouping.const';\nimport { GroupLabelTemplateFunc } from './grouping.row.types';\n\nexport type ExpandedOptions = {\n prevExpanded?: Record<string, boolean>;\n expandedAll?: boolean; // skip trim\n\n getGroupValue?(item: DataType, prop: string | number): any;\n groupLabelTemplate?: GroupLabelTemplateFunc;\n};\n\ntype GroupedData = Map<string, GroupedData | DataType[]>;\n\nfunction getGroupValueDefault(item: DataType, prop: string | number) {\n return item[prop] || null;\n}\n\n\n/**\n * Gather data for grouping\n * @param array - flat data array\n * @param groupIds - ids of groups\n * @param expanded - potentially expanded items if present\n */\nexport function gatherGrouping(\n array: DataType[],\n groupIds: ColumnProp[],\n { prevExpanded, expandedAll, getGroupValue = getGroupValueDefault }: ExpandedOptions,\n) {\n const groupedItems: GroupedData = new Map();\n array.forEach((item, originalIndex) => {\n const groupLevelValues = groupIds.map(groupId => getGroupValue(item, groupId));\n const lastLevelValue = groupLevelValues.pop();\n let currentGroupLevel = groupedItems;\n groupLevelValues.forEach(value => {\n if (!currentGroupLevel.has(value)) {\n currentGroupLevel.set(value, new Map());\n }\n currentGroupLevel = currentGroupLevel.get(value) as GroupedData;\n });\n if (!currentGroupLevel.has(lastLevelValue)) {\n currentGroupLevel.set(lastLevelValue, []);\n }\n const lastLevelItems = currentGroupLevel.get(\n lastLevelValue,\n ) as DataType[];\n lastLevelItems.push({\n ...item,\n [GROUP_ORIGINAL_INDEX]: originalIndex,\n });\n });\n\n let itemIndex = -1;\n const groupingDepth = groupIds.length;\n // collapse all groups in the beginning\n const trimmed: Record<number, boolean> = {};\n // index mapping\n const oldNewIndexMap: Record<number, number> = {};\n // check if group header exists\n const pseudoGroupTest: Record<string, number[]> = {};\n const sourceWithGroups: DataType[] = [];\n function flattenGroupMaps(\n groupedValues: GroupedData,\n parentIds: string[],\n isExpanded: boolean,\n ) {\n const depth = parentIds.length;\n groupedValues.forEach((innerGroupedValues, groupId) => {\n const levelIds = [...parentIds, groupId];\n const mergedIds = levelIds.join(',');\n const isGroupExpanded =\n isExpanded && (!!expandedAll || !!prevExpanded?.[mergedIds]);\n sourceWithGroups.push({\n [PSEUDO_GROUP_ITEM]: groupId,\n [GROUP_DEPTH]: depth,\n [PSEUDO_GROUP_ITEM_ID]: JSON.stringify(levelIds),\n [PSEUDO_GROUP_ITEM_VALUE]: mergedIds,\n [GROUP_EXPANDED]: isGroupExpanded,\n });\n itemIndex += 1;\n if (!isGroupExpanded && depth) {\n trimmed[itemIndex] = true;\n }\n if (Array.isArray(innerGroupedValues)) {\n innerGroupedValues.forEach(value => {\n itemIndex += 1;\n if (!isGroupExpanded) {\n trimmed[itemIndex] = true;\n }\n oldNewIndexMap[value[GROUP_ORIGINAL_INDEX]] = itemIndex;\n const pseudoGroupTestIds = levelIds.map((_value, index) =>\n levelIds.slice(0, index + 1).join(','),\n );\n pseudoGroupTestIds.forEach(pseudoGroupTestId => {\n if (!pseudoGroupTest[pseudoGroupTestId]) {\n pseudoGroupTest[pseudoGroupTestId] = [];\n }\n pseudoGroupTest[pseudoGroupTestId].push(itemIndex);\n });\n });\n sourceWithGroups.push(...innerGroupedValues);\n } else {\n flattenGroupMaps(innerGroupedValues, levelIds, isGroupExpanded);\n }\n });\n }\n flattenGroupMaps(groupedItems, [], true);\n\n return {\n sourceWithGroups, // updates source mirror\n depth: groupingDepth, // largest depth for grouping\n trimmed, // used for expand/collapse grouping values\n oldNewIndexMap, // used for mapping old values to new\n childrenByGroup: pseudoGroupTest, // used to get child items in group\n };\n}\n\nexport function getGroupingName(rgRow?: DataType) {\n return rgRow && rgRow[PSEUDO_GROUP_ITEM];\n}\n\nexport function isGrouping(rgRow?: DataType) {\n return rgRow && typeof rgRow[PSEUDO_GROUP_ITEM] !== 'undefined';\n}\n\nexport function isGroupingColumn(column?: ColumnRegular) {\n return column && typeof column[PSEUDO_GROUP_COLUMN] !== 'undefined';\n}\n\nexport function measureEqualDepth<T>(groupA: T[], groupB: T[]) {\n const ln = groupA.length;\n let i = 0;\n for (; i < ln; i++) {\n if (groupA[i] !== groupB[i]) {\n return i;\n }\n }\n return i;\n}\n\nexport function getParsedGroup(id: string): any[] {\n const parseGroup = JSON.parse(id);\n // extra precaution and type safe guard\n if (!Array.isArray(parseGroup)) {\n return null;\n }\n return parseGroup;\n}\n\n// check if items is child of current clicked group\nexport function isSameGroup(\n currentGroup: any[],\n currentModel: DataType,\n nextModel: DataType,\n) {\n const nextGroup = getParsedGroup(nextModel[PSEUDO_GROUP_ITEM_ID]);\n if (!nextGroup) {\n return false;\n }\n\n const depth = measureEqualDepth(currentGroup, nextGroup);\n return currentModel[GROUP_DEPTH] < depth;\n}\n","/** Collect data for pinned columns in required @ViewportProps format */\n\nimport { MultiDimensionType } from '../..';\nimport { Cell } from '../..';\nimport { ViewportColumn } from '../../types/viewport.interfaces';\n\nexport const HEADER_SLOT = 'header';\nexport const FOOTER_SLOT = 'footer';\nexport const CONTENT_SLOT = 'content';\nexport const DATA_SLOT = 'data';\n\n/** Receive last visible in viewport by required type */\nexport function getLastCell(\n data: ViewportColumn,\n rowType: MultiDimensionType,\n): Cell {\n return {\n x: data.viewports[data.colType].store.get('realCount'),\n y: data.viewports[rowType].store.get('realCount'),\n };\n}\n","/**\n * The base implementation of `_.slice` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\nfunction baseSlice(array, start, end) {\n var index = -1,\n length = array.length;\n\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = end > length ? length : end;\n if (end < 0) {\n end += length;\n }\n length = start > end ? 0 : ((end - start) >>> 0);\n start >>>= 0;\n\n var result = Array(length);\n while (++index < length) {\n result[index] = array[index + start];\n }\n return result;\n}\n\nmodule.exports = baseSlice;\n","var baseSlice = require('./_baseSlice'),\n isIterateeCall = require('./_isIterateeCall'),\n toInteger = require('./toInteger');\n\n/**\n * Creates a slice of `array` from `start` up to, but not including, `end`.\n *\n * **Note:** This method is used instead of\n * [`Array#slice`](https://mdn.io/Array/slice) to ensure dense arrays are\n * returned.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Array\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\nfunction slice(array, start, end) {\n var length = array == null ? 0 : array.length;\n if (!length) {\n return [];\n }\n if (end && typeof end != 'number' && isIterateeCall(array, start, end)) {\n start = 0;\n end = length;\n }\n else {\n start = start == null ? 0 : toInteger(start);\n end = end === undefined ? length : toInteger(end);\n }\n return baseSlice(array, start, end);\n}\n\nmodule.exports = slice;\n","import {\n DSourceState,\n getSourceItem,\n getVisibleSourceItem,\n} from '../../store/dataSource/data.store';\nimport { CELL_CLASS, DISABLED_CLASS } from '../../utils/consts';\nimport { getRange } from '../../store/selection/selection.helpers';\n\nimport { isGroupingColumn } from '../../plugins/groupingRow/grouping.service';\nimport slice from 'lodash/slice';\nimport { DimensionCols, DimensionRows, RowDrag } from '../..';\nimport {\n ColumnRegular,\n Observable,\n DataType,\n ReadOnlyFormat,\n CellProps,\n ColumnDataSchemaModel,\n ColumnProp,\n DataLookup,\n DataFormat,\n DataSource,\n} from '../..';\nimport {\n ChangedRange,\n OldNewRangeMapping,\n Cell,\n RangeArea,\n BeforeSaveDataDetails,\n EditorCtr,\n Editors,\n} from '../..';\n\nexport type ColumnStores = {\n [T in DimensionCols]: Observable<DSourceState<ColumnRegular, DimensionCols>>;\n};\nexport type RowStores = {\n [T in DimensionRows]: Observable<DSourceState<DataType, DimensionRows>>;\n};\n\nexport default class ColumnService {\n private unsubscribe: { (): void }[] = [];\n get columns(): ColumnRegular[] {\n return getVisibleSourceItem(this.source);\n }\n\n hasGrouping = false;\n type: DimensionCols;\n\n constructor(\n private dataStore: Observable<DSourceState<DataType, DimensionRows>>,\n private source: Observable<DSourceState<ColumnRegular, DimensionCols>>,\n ) {\n this.unsubscribe.push(\n source.onChange('source', s => this.checkGrouping(s)),\n );\n this.checkGrouping(source.get('source'));\n this.type = source.get('type');\n }\n\n private checkGrouping(cols: ColumnRegular[]) {\n for (let rgCol of cols) {\n if (isGroupingColumn(rgCol)) {\n this.hasGrouping = true;\n return;\n }\n this.hasGrouping = false;\n }\n }\n\n isReadOnly(r: number, c: number): boolean {\n const readOnly: ReadOnlyFormat = this.columns[c]?.readonly;\n if (typeof readOnly === 'function') {\n const data = this.rowDataModel(r, c);\n return readOnly(data);\n }\n return readOnly;\n }\n\n mergeProperties(\n r: number,\n c: number,\n defaultProps: CellProps,\n model: ColumnDataSchemaModel,\n extraPropsFunc: ColumnRegular['cellProperties'],\n ): CellProps {\n const cellClass: { [key: string]: boolean } = {\n [CELL_CLASS]: true,\n [DISABLED_CLASS]: this.isReadOnly(r, c),\n };\n let props: CellProps = {\n ...defaultProps,\n class: cellClass,\n };\n const extra = extraPropsFunc?.(model);\n if (!extra) {\n return props;\n }\n return doPropMerge(props, extra);\n }\n\n getRowClass(r: number, prop: string): string {\n const model = getSourceItem(this.dataStore, r) || {};\n return model[prop] || '';\n }\n\n getCellData(r: number, c: number): string {\n const data = this.rowDataModel(r, c);\n return getCellData(data.model[data.prop as number]);\n }\n\n getSaveData(\n rowIndex: number,\n colIndex: number,\n val?: string,\n ): BeforeSaveDataDetails {\n if (typeof val === 'undefined') {\n val = this.getCellData(rowIndex, colIndex);\n }\n const data = this.rowDataModel(rowIndex, colIndex);\n return {\n prop: data.prop,\n rowIndex,\n colIndex,\n val,\n model: data.model,\n colType: this.type,\n type: this.dataStore.get('type'),\n };\n }\n\n getCellEditor(\n _r: number,\n c: number,\n editors: Editors,\n ): EditorCtr | undefined {\n const editor = this.columns[c]?.editor;\n if (!editor) {\n return undefined;\n }\n // reference\n if (typeof editor === 'string') {\n return editors[editor];\n }\n return editor;\n }\n\n rowDataModel(rowIndex: number, colIndex: number): ColumnDataSchemaModel {\n const column = this.columns[colIndex];\n const prop: ColumnProp | undefined = column?.prop;\n const model = getSourceItem(this.dataStore, rowIndex) || {};\n const type = this.dataStore.get('type');\n return {\n prop,\n model,\n data: this.dataStore.get('source'),\n column,\n rowIndex,\n colIndex,\n colType: this.type,\n type,\n };\n }\n\n getRangeData(\n d: ChangedRange,\n columns: ColumnRegular[],\n ): {\n changed: DataLookup;\n mapping: OldNewRangeMapping;\n } {\n const changed: DataLookup = {};\n\n // get original length sizes\n const copyColLength = d.oldRange.x1 - d.oldRange.x + 1;\n const copyRowLength = d.oldRange.y1 - d.oldRange.y + 1;\n const mapping: OldNewRangeMapping = {};\n\n // rows\n for (\n let rowIndex = d.newRange.y, i = 0;\n rowIndex < d.newRange.y1 + 1;\n rowIndex++, i++\n ) {\n // copy original data link\n const oldRowIndex = d.oldRange.y + (i % copyRowLength);\n const copyRow = getSourceItem(this.dataStore, oldRowIndex) || {};\n\n // columns\n for (\n let colIndex = d.newRange.x, j = 0;\n colIndex < d.newRange.x1 + 1;\n colIndex++, j++\n ) {\n // check if old range area\n if (\n rowIndex >= d.oldRange.y &&\n rowIndex <= d.oldRange.y1 &&\n colIndex >= d.oldRange.x &&\n colIndex <= d.oldRange.x1\n ) {\n continue;\n }\n\n // requested column beyond range\n if (!this.columns[colIndex]) {\n continue;\n }\n const prop = this.columns[colIndex]?.prop;\n const copyColIndex = d.oldRange.x + (j % copyColLength);\n const copyColumnProp = columns[copyColIndex].prop;\n\n /** if can write */\n if (!this.isReadOnly(rowIndex, colIndex)) {\n /** to show before save */\n if (!changed[rowIndex]) {\n changed[rowIndex] = {};\n }\n changed[rowIndex][prop] = copyRow[copyColumnProp];\n /** Generate mapping object */\n if (!mapping[rowIndex]) {\n mapping[rowIndex] = {};\n }\n mapping[rowIndex][prop] = {\n colIndex: copyColIndex,\n colProp: copyColumnProp,\n rowIndex: oldRowIndex,\n };\n }\n }\n }\n return {\n changed,\n mapping,\n };\n }\n\n getTransformedDataToApply(\n start: Cell,\n data: DataFormat[][],\n ): {\n changed: DataLookup;\n range: RangeArea;\n } {\n const changed: DataLookup = {};\n const copyRowLength = data.length;\n const colLength = this.columns.length;\n const rowLength = this.dataStore.get('items').length;\n // rows\n let rowIndex = start.y;\n let maxCol = 0;\n for (\n let i = 0;\n rowIndex < rowLength && i < copyRowLength;\n rowIndex++, i++\n ) {\n // copy original data link\n const copyRow = data[i % copyRowLength];\n const copyColLength = copyRow?.length || 0;\n // columns\n let colIndex = start.x;\n for (\n let j = 0;\n colIndex < colLength && j < copyColLength;\n colIndex++, j++\n ) {\n const p = this.columns[colIndex].prop;\n const currentCol = j % colLength;\n\n /** if can write */\n if (!this.isReadOnly(rowIndex, colIndex)) {\n /** to show before save */\n if (!changed[rowIndex]) {\n changed[rowIndex] = {};\n }\n changed[rowIndex][p] = copyRow[currentCol];\n }\n }\n maxCol = Math.max(maxCol, colIndex - 1);\n }\n const range = getRange(start, {\n y: rowIndex - 1,\n x: maxCol,\n });\n return {\n changed,\n range,\n };\n }\n\n getRangeStaticData(d: RangeArea, value: DataFormat): DataLookup {\n const changed: DataLookup = {};\n\n // rows\n for (let rowIndex = d.y, i = 0; rowIndex < d.y1 + 1; rowIndex++, i++) {\n // columns\n for (let colIndex = d.x, j = 0; colIndex < d.x1 + 1; colIndex++, j++) {\n // requested column beyond range\n if (!this.columns[colIndex]) {\n continue;\n }\n const p = this.columns[colIndex].prop;\n\n /** if can write */\n if (!this.isReadOnly(rowIndex, colIndex)) {\n /** to show before save */\n if (!changed[rowIndex]) {\n changed[rowIndex] = {};\n }\n changed[rowIndex][p] = value;\n }\n }\n }\n return changed;\n }\n\n getRangeTransformedToProps(\n d: RangeArea,\n store: Observable<DSourceState<DataType, DimensionRows>>,\n ) {\n const area: {\n prop: ColumnProp;\n rowIndex: number;\n colIndex: number;\n model: DataSource;\n colType: DimensionCols;\n type: DimensionRows;\n }[] = [];\n\n const type = this.dataStore.get('type');\n // rows\n for (let rowIndex = d.y, i = 0; rowIndex < d.y1 + 1; rowIndex++, i++) {\n // columns\n for (let colIndex = d.x, j = 0; colIndex < d.x1 + 1; colIndex++, j++) {\n const prop = this.columns[colIndex]?.prop;\n area.push({\n prop,\n rowIndex,\n colIndex,\n model: getSourceItem(store, rowIndex),\n type,\n colType: this.type,\n });\n }\n }\n return area;\n }\n\n copyRangeArray(\n range: RangeArea,\n store: Observable<DSourceState<DataType, DimensionRows>>,\n ) {\n const cols = [...this.columns];\n const props = slice(cols, range.x, range.x1 + 1).map(v => v.prop);\n const toCopy: DataFormat[][] = [];\n const mapping: { [rowIndex: number]: { [colProp: ColumnProp]: any } } = {};\n\n // rows indexes\n for (let i = range.y; i <= range.y1; i++) {\n const rgRow: DataFormat[] = [];\n mapping[i] = {};\n\n // columns indexes\n for (let prop of props) {\n const item = getSourceItem(store, i);\n\n // if no item - skip\n if (!item) {\n continue;\n }\n const val = item[prop];\n rgRow.push(val);\n mapping[i][prop] = val;\n }\n\n toCopy.push(rgRow);\n }\n return {\n data: toCopy,\n mapping,\n };\n }\n\n destroy() {\n this.unsubscribe.forEach(f => f());\n }\n}\n\nexport function getCellData(val?: any) {\n if (typeof val === 'undefined' || val === null) {\n return '';\n }\n return val;\n}\n\n/**\n * Checks if the given rowDrag is a service for dragging rows.\n */\nexport function isRowDragService(\n rowDrag: RowDrag,\n model: ColumnDataSchemaModel,\n): boolean {\n if (typeof rowDrag === 'function') {\n return rowDrag(model);\n }\n return !!rowDrag;\n}\nexport function doPropMerge(existing: CellProps, extra: CellProps) {\n let props: CellProps = { ...extra, ...existing };\n // extend existing props\n if (extra.class) {\n if (typeof extra.class === 'object' && typeof props.class === 'object') {\n props.class = { ...extra.class, ...props.class };\n } else if (\n typeof extra.class === 'string' &&\n typeof props.class === 'object'\n ) {\n props.class[extra.class] = true;\n } else if (typeof props.class === 'string') {\n props.class += ' ' + extra.class;\n }\n }\n if (extra.style) {\n props.style = { ...extra.style, ...props.style };\n }\n return props;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Built by Revolist OU ❤️
3
+ */
4
+ import{a as n,i as e,t as r}from"./toNumber-8de324a7.js";var t=n;var i=function(){return t.Date.now()};var u=i;var f=e,a=u,o=r;var d="Expected a function";var c=Math.max,v=Math.min;function s(n,e,r){var t,i,u,s,m,T,l=0,p=false,h=false,x=true;if(typeof n!="function"){throw new TypeError(d)}e=o(e)||0;if(f(r)){p=!!r.leading;h="maxWait"in r;u=h?c(o(r.maxWait)||0,e):u;x="trailing"in r?!!r.trailing:x}function w(e){var r=t,u=i;t=i=undefined;l=e;s=n.apply(u,r);return s}function y(n){l=n;m=setTimeout(b,e);return p?w(n):s}function E(n){var r=n-T,t=n-l,i=e-r;return h?v(i,u-t):i}function M(n){var r=n-T,t=n-l;return T===undefined||r>=e||r<0||h&&t>=u}function b(){var n=a();if(M(n)){return g(n)}m=setTimeout(b,E(n))}function g(n){m=undefined;if(x&&t){return w(n)}t=i=undefined;return s}function j(){if(m!==undefined){clearTimeout(m)}l=0;t=T=i=m=undefined}function N(){return m===undefined?s:g(a())}function W(){var n=a(),r=M(n);t=arguments;i=this;T=n;if(r){if(m===undefined){return y(T)}if(h){clearTimeout(m);m=setTimeout(b,e);return w(T)}}if(m===undefined){m=setTimeout(b,e)}return s}W.cancel=j;W.flush=N;return W}var m=s;export{m as d};
5
+ //# sourceMappingURL=debounce-7781346d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["root","require$$0","now","Date","now_1","isObject","require$$1","toNumber","require$$2","FUNC_ERROR_TEXT","nativeMax","Math","max","nativeMin","min","debounce","func","wait","options","lastArgs","lastThis","maxWait","result","timerId","lastCallTime","lastInvokeTime","leading","maxing","trailing","TypeError","invokeFunc","time","args","thisArg","undefined","apply","leadingEdge","setTimeout","timerExpired","remainingWait","timeSinceLastCall","timeSinceLastInvoke","timeWaiting","shouldInvoke","trailingEdge","cancel","clearTimeout","flush","debounced","isInvoking","arguments","this","debounce_1"],"sources":["node_modules/lodash/now.js","node_modules/lodash/debounce.js"],"sourcesContent":["var root = require('./_root');\n\n/**\n * Gets the timestamp of the number of milliseconds that have elapsed since\n * the Unix epoch (1 January 1970 00:00:00 UTC).\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Date\n * @returns {number} Returns the timestamp.\n * @example\n *\n * _.defer(function(stamp) {\n * console.log(_.now() - stamp);\n * }, _.now());\n * // => Logs the number of milliseconds it took for the deferred invocation.\n */\nvar now = function() {\n return root.Date.now();\n};\n\nmodule.exports = now;\n","var isObject = require('./isObject'),\n now = require('./now'),\n toNumber = require('./toNumber');\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max,\n nativeMin = Math.min;\n\n/**\n * Creates a debounced function that delays invoking `func` until after `wait`\n * milliseconds have elapsed since the last time the debounced function was\n * invoked. The debounced function comes with a `cancel` method to cancel\n * delayed `func` invocations and a `flush` method to immediately invoke them.\n * Provide `options` to indicate whether `func` should be invoked on the\n * leading and/or trailing edge of the `wait` timeout. The `func` is invoked\n * with the last arguments provided to the debounced function. Subsequent\n * calls to the debounced function return the result of the last `func`\n * invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the debounced function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.debounce` and `_.throttle`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to debounce.\n * @param {number} [wait=0] The number of milliseconds to delay.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=false]\n * Specify invoking on the leading edge of the timeout.\n * @param {number} [options.maxWait]\n * The maximum time `func` is allowed to be delayed before it's invoked.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new debounced function.\n * @example\n *\n * // Avoid costly calculations while the window size is in flux.\n * jQuery(window).on('resize', _.debounce(calculateLayout, 150));\n *\n * // Invoke `sendMail` when clicked, debouncing subsequent calls.\n * jQuery(element).on('click', _.debounce(sendMail, 300, {\n * 'leading': true,\n * 'trailing': false\n * }));\n *\n * // Ensure `batchLog` is invoked once after 1 second of debounced calls.\n * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });\n * var source = new EventSource('/stream');\n * jQuery(source).on('message', debounced);\n *\n * // Cancel the trailing debounced invocation.\n * jQuery(window).on('popstate', debounced.cancel);\n */\nfunction debounce(func, wait, options) {\n var lastArgs,\n lastThis,\n maxWait,\n result,\n timerId,\n lastCallTime,\n lastInvokeTime = 0,\n leading = false,\n maxing = false,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n wait = toNumber(wait) || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time) {\n var args = lastArgs,\n thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function leadingEdge(time) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = setTimeout(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime,\n timeWaiting = wait - timeSinceLastCall;\n\n return maxing\n ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)\n : timeWaiting;\n }\n\n function shouldInvoke(time) {\n var timeSinceLastCall = time - lastCallTime,\n timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||\n (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));\n }\n\n function timerExpired() {\n var time = now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = setTimeout(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n clearTimeout(timerId);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(now());\n }\n\n function debounced() {\n var time = now(),\n isInvoking = shouldInvoke(time);\n\n lastArgs = arguments;\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n clearTimeout(timerId);\n timerId = setTimeout(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = setTimeout(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n return debounced;\n}\n\nmodule.exports = debounce;\n"],"mappings":";;;yDAAA,IAAIA,EAAOC,EAkBX,IAAIC,EAAM,WACR,OAAOF,EAAKG,KAAKD,KACnB,E,IAEAE,EAAiBF,ECtBjB,IAAIG,EAAWJ,EACXC,EAAMI,EACNC,EAAWC,EAGf,IAAIC,EAAkB,sBAGtB,IAAIC,EAAYC,KAAKC,IACjBC,EAAYF,KAAKG,IAwDrB,SAASC,EAASC,EAAMC,EAAMC,GAC5B,IAAIC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EAAiB,EACjBC,EAAU,MACVC,EAAS,MACTC,EAAW,KAEf,UAAWZ,GAAQ,WAAY,CAC7B,MAAM,IAAIa,UAAUpB,EACxB,CACEQ,EAAOV,EAASU,IAAS,EACzB,GAAIZ,EAASa,GAAU,CACrBQ,IAAYR,EAAQQ,QACpBC,EAAS,YAAaT,EACtBG,EAAUM,EAASjB,EAAUH,EAASW,EAAQG,UAAY,EAAGJ,GAAQI,EACrEO,EAAW,aAAcV,IAAYA,EAAQU,SAAWA,CAC5D,CAEE,SAASE,EAAWC,GAClB,IAAIC,EAAOb,EACPc,EAAUb,EAEdD,EAAWC,EAAWc,UACtBT,EAAiBM,EACjBT,EAASN,EAAKmB,MAAMF,EAASD,GAC7B,OAAOV,CACX,CAEE,SAASc,EAAYL,GAEnBN,EAAiBM,EAEjBR,EAAUc,WAAWC,EAAcrB,GAEnC,OAAOS,EAAUI,EAAWC,GAAQT,CACxC,CAEE,SAASiB,EAAcR,GACrB,IAAIS,EAAoBT,EAAOP,EAC3BiB,EAAsBV,EAAON,EAC7BiB,EAAczB,EAAOuB,EAEzB,OAAOb,EACHd,EAAU6B,EAAarB,EAAUoB,GACjCC,CACR,CAEE,SAASC,EAAaZ,GACpB,IAAIS,EAAoBT,EAAOP,EAC3BiB,EAAsBV,EAAON,EAKjC,OAAQD,IAAiBU,WAAcM,GAAqBvB,GACzDuB,EAAoB,GAAOb,GAAUc,GAAuBpB,CACnE,CAEE,SAASiB,IACP,IAAIP,EAAO7B,IACX,GAAIyC,EAAaZ,GAAO,CACtB,OAAOa,EAAab,EAC1B,CAEIR,EAAUc,WAAWC,EAAcC,EAAcR,GACrD,CAEE,SAASa,EAAab,GACpBR,EAAUW,UAIV,GAAIN,GAAYT,EAAU,CACxB,OAAOW,EAAWC,EACxB,CACIZ,EAAWC,EAAWc,UACtB,OAAOZ,CACX,CAEE,SAASuB,IACP,GAAItB,IAAYW,UAAW,CACzBY,aAAavB,EACnB,CACIE,EAAiB,EACjBN,EAAWK,EAAeJ,EAAWG,EAAUW,SACnD,CAEE,SAASa,IACP,OAAOxB,IAAYW,UAAYZ,EAASsB,EAAa1C,IACzD,CAEE,SAAS8C,IACP,IAAIjB,EAAO7B,IACP+C,EAAaN,EAAaZ,GAE9BZ,EAAW+B,UACX9B,EAAW+B,KACX3B,EAAeO,EAEf,GAAIkB,EAAY,CACd,GAAI1B,IAAYW,UAAW,CACzB,OAAOE,EAAYZ,EAC3B,CACM,GAAIG,EAAQ,CAEVmB,aAAavB,GACbA,EAAUc,WAAWC,EAAcrB,GACnC,OAAOa,EAAWN,EAC1B,CACA,CACI,GAAID,IAAYW,UAAW,CACzBX,EAAUc,WAAWC,EAAcrB,EACzC,CACI,OAAOK,CACX,CACE0B,EAAUH,OAASA,EACnBG,EAAUD,MAAQA,EAClB,OAAOC,CACT,C,IAEAI,EAAiBrC,S","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Built by Revolist OU ❤️
3
+ */
4
+ import{g as r,f as n}from"./index-21436631.js";import{_ as t,i as e,a,b as u,c as i,d as v,e as o,t as f}from"./toNumber-8de324a7.js";const c=r=>({set(n,t){if(!s(n)){return}const e=r.get("items").reduce(((r,n)=>{r[n]=true;return r}),{});const a=t.reduce(((r,n)=>{if(e[n]){r.push(n)}return r}),[]);r.set("items",a)}});function s(r){return r==="proxyItems"}const l=(r,n,t)=>{const e=r.get(n);if(!e){r.set(n,[t])}else if(!e.includes(t)){e.push(t)}};const h=(r,n)=>{let t;return(...e)=>{if(t){clearTimeout(t)}t=setTimeout((()=>{t=0;r(...e)}),n)}};const b=r=>!("isConnected"in r)||r.isConnected;const d=h((r=>{for(let n of r.keys()){r.set(n,r.get(n).filter(b))}}),2e3);const j=()=>{if(typeof r!=="function"){return{}}const t=new Map;return{dispose:()=>t.clear(),get:n=>{const e=r();if(e){l(t,n,e)}},set:r=>{const e=t.get(r);if(e){t.set(r,e.filter(n))}d(t)},reset:()=>{t.forEach((r=>r.forEach(n)));d(t)}}};const p=r=>typeof r==="function"?r():r;const m=(r,n=((r,n)=>r!==n))=>{const t=p(r);let e=new Map(Object.entries(t!==null&&t!==void 0?t:{}));const a={dispose:[],get:[],set:[],reset:[]};const u=()=>{var n;e=new Map(Object.entries((n=p(r))!==null&&n!==void 0?n:{}));a.reset.forEach((r=>r()))};const i=()=>{a.dispose.forEach((r=>r()));u()};const v=r=>{a.get.forEach((n=>n(r)));return e.get(r)};const o=(r,t)=>{const u=e.get(r);if(n(t,u,r)){e.set(r,t);a.set.forEach((n=>n(r,t,u)))}};const f=typeof Proxy==="undefined"?{}:new Proxy(t,{get(r,n){return v(n)},ownKeys(r){return Array.from(e.keys())},getOwnPropertyDescriptor(){return{enumerable:true,configurable:true}},has(r,n){return e.has(n)},set(r,n,t){o(n,t);return true}});const c=(r,n)=>{a[r].push(n);return()=>{y(a[r],n)}};const s=(n,t)=>{const e=c("set",((r,e)=>{if(r===n){t(e)}}));const a=c("reset",(()=>t(p(r)[n])));return()=>{e();a()}};const l=(...r)=>{const n=r.reduce(((r,n)=>{if(n.set){r.push(c("set",n.set))}if(n.get){r.push(c("get",n.get))}if(n.reset){r.push(c("reset",n.reset))}if(n.dispose){r.push(c("dispose",n.dispose))}return r}),[]);return()=>n.forEach((r=>r()))};const h=r=>{const n=e.get(r);a.set.forEach((t=>t(r,n,n)))};return{state:f,get:v,set:o,on:c,onChange:s,use:l,dispose:i,reset:u,forceUpdate:h}};const y=(r,n)=>{const t=r.indexOf(n);if(t>=0){r[t]=r[r.length-1];r.length--}};const w=(r,n)=>{const t=m(r,n);t.use(j());return t};function g(r,n,t,e){var a=r.length,u=t+(e?1:-1);while(e?u--:++u<a){if(n(r[u],u,r)){return u}}return-1}var O=g;function _(){this.__data__=[];this.size=0}var A=_;function x(r,n){return r===n||r!==r&&n!==n}var I=x;var M=I;function k(r,n){var t=r.length;while(t--){if(M(r[t][0],n)){return t}}return-1}var D=k;var S=D;var $=Array.prototype;var E=$.splice;function F(r){var n=this.__data__,t=S(n,r);if(t<0){return false}var e=n.length-1;if(t==e){n.pop()}else{E.call(n,t,1)}--this.size;return true}var C=F;var P=D;function T(r){var n=this.__data__,t=P(n,r);return t<0?undefined:n[t][1]}var B=T;var R=D;function U(r){return R(this.__data__,r)>-1}var V=U;var z=D;function N(r,n){var t=this.__data__,e=z(t,r);if(e<0){++this.size;t.push([r,n])}else{t[e][1]=n}return this}var W=N;var q=A,G=C,K=B,L=V,H=W;function J(r){var n=-1,t=r==null?0:r.length;this.clear();while(++n<t){var e=r[n];this.set(e[0],e[1])}}J.prototype.clear=q;J.prototype["delete"]=G;J.prototype.get=K;J.prototype.has=L;J.prototype.set=H;var Q=J;var X=Q;function Y(){this.__data__=new X;this.size=0}var Z=Y;function rr(r){var n=this.__data__,t=n["delete"](r);this.size=n.size;return t}var nr=rr;function tr(r){return this.__data__.get(r)}var er=tr;function ar(r){return this.__data__.has(r)}var ur=ar;var ir=t,vr=e;var or="[object AsyncFunction]",fr="[object Function]",cr="[object GeneratorFunction]",sr="[object Proxy]";function lr(r){if(!vr(r)){return false}var n=ir(r);return n==fr||n==cr||n==or||n==sr}var hr=lr;var br=a;var dr=br["__core-js_shared__"];var jr=dr;var pr=jr;var mr=function(){var r=/[^.]+$/.exec(pr&&pr.keys&&pr.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}();function yr(r){return!!mr&&mr in r}var wr=yr;var gr=Function.prototype;var Or=gr.toString;function _r(r){if(r!=null){try{return Or.call(r)}catch(r){}try{return r+""}catch(r){}}return""}var Ar=_r;var xr=hr,Ir=wr,Mr=e,kr=Ar;var Dr=/[\\^$.*+?()[\]{}|]/g;var Sr=/^\[object .+?Constructor\]$/;var $r=Function.prototype,Er=Object.prototype;var Fr=$r.toString;var Cr=Er.hasOwnProperty;var Pr=RegExp("^"+Fr.call(Cr).replace(Dr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Tr(r){if(!Mr(r)||Ir(r)){return false}var n=xr(r)?Pr:Sr;return n.test(kr(r))}var Br=Tr;function Rr(r,n){return r==null?undefined:r[n]}var Ur=Rr;var Vr=Br,zr=Ur;function Nr(r,n){var t=zr(r,n);return Vr(t)?t:undefined}var Wr=Nr;var qr=Wr,Gr=a;var Kr=qr(Gr,"Map");var Lr=Kr;var Hr=Wr;var Jr=Hr(Object,"create");var Qr=Jr;var Xr=Qr;function Yr(){this.__data__=Xr?Xr(null):{};this.size=0}var Zr=Yr;function rn(r){var n=this.has(r)&&delete this.__data__[r];this.size-=n?1:0;return n}var nn=rn;var tn=Qr;var en="__lodash_hash_undefined__";var an=Object.prototype;var un=an.hasOwnProperty;function vn(r){var n=this.__data__;if(tn){var t=n[r];return t===en?undefined:t}return un.call(n,r)?n[r]:undefined}var on=vn;var fn=Qr;var cn=Object.prototype;var sn=cn.hasOwnProperty;function ln(r){var n=this.__data__;return fn?n[r]!==undefined:sn.call(n,r)}var hn=ln;var bn=Qr;var dn="__lodash_hash_undefined__";function jn(r,n){var t=this.__data__;this.size+=this.has(r)?0:1;t[r]=bn&&n===undefined?dn:n;return this}var pn=jn;var mn=Zr,yn=nn,wn=on,gn=hn,On=pn;function _n(r){var n=-1,t=r==null?0:r.length;this.clear();while(++n<t){var e=r[n];this.set(e[0],e[1])}}_n.prototype.clear=mn;_n.prototype["delete"]=yn;_n.prototype.get=wn;_n.prototype.has=gn;_n.prototype.set=On;var An=_n;var xn=An,In=Q,Mn=Lr;function kn(){this.size=0;this.__data__={hash:new xn,map:new(Mn||In),string:new xn}}var Dn=kn;function Sn(r){var n=typeof r;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?r!=="__proto__":r===null}var $n=Sn;var En=$n;function Fn(r,n){var t=r.__data__;return En(n)?t[typeof n=="string"?"string":"hash"]:t.map}var Cn=Fn;var Pn=Cn;function Tn(r){var n=Pn(this,r)["delete"](r);this.size-=n?1:0;return n}var Bn=Tn;var Rn=Cn;function Un(r){return Rn(this,r).get(r)}var Vn=Un;var zn=Cn;function Nn(r){return zn(this,r).has(r)}var Wn=Nn;var qn=Cn;function Gn(r,n){var t=qn(this,r),e=t.size;t.set(r,n);this.size+=t.size==e?0:1;return this}var Kn=Gn;var Ln=Dn,Hn=Bn,Jn=Vn,Qn=Wn,Xn=Kn;function Yn(r){var n=-1,t=r==null?0:r.length;this.clear();while(++n<t){var e=r[n];this.set(e[0],e[1])}}Yn.prototype.clear=Ln;Yn.prototype["delete"]=Hn;Yn.prototype.get=Jn;Yn.prototype.has=Qn;Yn.prototype.set=Xn;var Zn=Yn;var rt=Q,nt=Lr,tt=Zn;var et=200;function at(r,n){var t=this.__data__;if(t instanceof rt){var e=t.__data__;if(!nt||e.length<et-1){e.push([r,n]);this.size=++t.size;return this}t=this.__data__=new tt(e)}t.set(r,n);this.size=t.size;return this}var ut=at;var it=Q,vt=Z,ot=nr,ft=er,ct=ur,st=ut;function lt(r){var n=this.__data__=new it(r);this.size=n.size}lt.prototype.clear=vt;lt.prototype["delete"]=ot;lt.prototype.get=ft;lt.prototype.has=ct;lt.prototype.set=st;var ht=lt;var bt="__lodash_hash_undefined__";function dt(r){this.__data__.set(r,bt);return this}var jt=dt;function pt(r){return this.__data__.has(r)}var mt=pt;var yt=Zn,wt=jt,gt=mt;function Ot(r){var n=-1,t=r==null?0:r.length;this.__data__=new yt;while(++n<t){this.add(r[n])}}Ot.prototype.add=Ot.prototype.push=wt;Ot.prototype.has=gt;var _t=Ot;function At(r,n){var t=-1,e=r==null?0:r.length;while(++t<e){if(n(r[t],t,r)){return true}}return false}var xt=At;function It(r,n){return r.has(n)}var Mt=It;var kt=_t,Dt=xt,St=Mt;var $t=1,Et=2;function Ft(r,n,t,e,a,u){var i=t&$t,v=r.length,o=n.length;if(v!=o&&!(i&&o>v)){return false}var f=u.get(r);var c=u.get(n);if(f&&c){return f==n&&c==r}var s=-1,l=true,h=t&Et?new kt:undefined;u.set(r,n);u.set(n,r);while(++s<v){var b=r[s],d=n[s];if(e){var j=i?e(d,b,s,n,r,u):e(b,d,s,r,n,u)}if(j!==undefined){if(j){continue}l=false;break}if(h){if(!Dt(n,(function(r,n){if(!St(h,n)&&(b===r||a(b,r,t,e,u))){return h.push(n)}}))){l=false;break}}else if(!(b===d||a(b,d,t,e,u))){l=false;break}}u["delete"](r);u["delete"](n);return l}var Ct=Ft;var Pt=a;var Tt=Pt.Uint8Array;var Bt=Tt;function Rt(r){var n=-1,t=Array(r.size);r.forEach((function(r,e){t[++n]=[e,r]}));return t}var Ut=Rt;function Vt(r){var n=-1,t=Array(r.size);r.forEach((function(r){t[++n]=r}));return t}var zt=Vt;var Nt=u,Wt=Bt,qt=I,Gt=Ct,Kt=Ut,Lt=zt;var Ht=1,Jt=2;var Qt="[object Boolean]",Xt="[object Date]",Yt="[object Error]",Zt="[object Map]",re="[object Number]",ne="[object RegExp]",te="[object Set]",ee="[object String]",ae="[object Symbol]";var ue="[object ArrayBuffer]",ie="[object DataView]";var ve=Nt?Nt.prototype:undefined,oe=ve?ve.valueOf:undefined;function fe(r,n,t,e,a,u,i){switch(t){case ie:if(r.byteLength!=n.byteLength||r.byteOffset!=n.byteOffset){return false}r=r.buffer;n=n.buffer;case ue:if(r.byteLength!=n.byteLength||!u(new Wt(r),new Wt(n))){return false}return true;case Qt:case Xt:case re:return qt(+r,+n);case Yt:return r.name==n.name&&r.message==n.message;case ne:case ee:return r==n+"";case Zt:var v=Kt;case te:var o=e&Ht;v||(v=Lt);if(r.size!=n.size&&!o){return false}var f=i.get(r);if(f){return f==n}e|=Jt;i.set(r,n);var c=Gt(v(r),v(n),e,a,u,i);i["delete"](r);return c;case ae:if(oe){return oe.call(r)==oe.call(n)}}return false}var ce=fe;function se(r,n){var t=-1,e=n.length,a=r.length;while(++t<e){r[a+t]=n[t]}return r}var le=se;var he=Array.isArray;var be=he;var de=le,je=be;function pe(r,n,t){var e=n(r);return je(r)?e:de(e,t(r))}var me=pe;function ye(r,n){var t=-1,e=r==null?0:r.length,a=0,u=[];while(++t<e){var i=r[t];if(n(i,t,r)){u[a++]=i}}return u}var we=ye;function ge(){return[]}var Oe=ge;var _e=we,Ae=Oe;var xe=Object.prototype;var Ie=xe.propertyIsEnumerable;var Me=Object.getOwnPropertySymbols;var ke=!Me?Ae:function(r){if(r==null){return[]}r=Object(r);return _e(Me(r),(function(n){return Ie.call(r,n)}))};var De=ke;function Se(r,n){var t=-1,e=Array(r);while(++t<r){e[t]=n(t)}return e}var $e=Se;var Ee=t,Fe=i;var Ce="[object Arguments]";function Pe(r){return Fe(r)&&Ee(r)==Ce}var Te=Pe;var Be=Te,Re=i;var Ue=Object.prototype;var Ve=Ue.hasOwnProperty;var ze=Ue.propertyIsEnumerable;var Ne=Be(function(){return arguments}())?Be:function(r){return Re(r)&&Ve.call(r,"callee")&&!ze.call(r,"callee")};var We=Ne;var qe={exports:{}};function Ge(){return false}var Ke=Ge;(function(r,n){var t=a,e=Ke;var u=n&&!n.nodeType&&n;var i=u&&"object"=="object"&&r&&!r.nodeType&&r;var v=i&&i.exports===u;var o=v?t.Buffer:undefined;var f=o?o.isBuffer:undefined;var c=f||e;r.exports=c})(qe,qe.exports);var Le=9007199254740991;var He=/^(?:0|[1-9]\d*)$/;function Je(r,n){var t=typeof r;n=n==null?Le:n;return!!n&&(t=="number"||t!="symbol"&&He.test(r))&&(r>-1&&r%1==0&&r<n)}var Qe=Je;var Xe=9007199254740991;function Ye(r){return typeof r=="number"&&r>-1&&r%1==0&&r<=Xe}var Ze=Ye;var ra=t,na=Ze,ta=i;var ea="[object Arguments]",aa="[object Array]",ua="[object Boolean]",ia="[object Date]",va="[object Error]",oa="[object Function]",fa="[object Map]",ca="[object Number]",sa="[object Object]",la="[object RegExp]",ha="[object Set]",ba="[object String]",da="[object WeakMap]";var ja="[object ArrayBuffer]",pa="[object DataView]",ma="[object Float32Array]",ya="[object Float64Array]",wa="[object Int8Array]",ga="[object Int16Array]",Oa="[object Int32Array]",_a="[object Uint8Array]",Aa="[object Uint8ClampedArray]",xa="[object Uint16Array]",Ia="[object Uint32Array]";var Ma={};Ma[ma]=Ma[ya]=Ma[wa]=Ma[ga]=Ma[Oa]=Ma[_a]=Ma[Aa]=Ma[xa]=Ma[Ia]=true;Ma[ea]=Ma[aa]=Ma[ja]=Ma[ua]=Ma[pa]=Ma[ia]=Ma[va]=Ma[oa]=Ma[fa]=Ma[ca]=Ma[sa]=Ma[la]=Ma[ha]=Ma[ba]=Ma[da]=false;function ka(r){return ta(r)&&na(r.length)&&!!Ma[ra(r)]}var Da=ka;function Sa(r){return function(n){return r(n)}}var $a=Sa;var Ea={exports:{}};(function(r,n){var t=v;var e=n&&!n.nodeType&&n;var a=e&&"object"=="object"&&r&&!r.nodeType&&r;var u=a&&a.exports===e;var i=u&&t.process;var o=function(){try{var r=a&&a.require&&a.require("util").types;if(r){return r}return i&&i.binding&&i.binding("util")}catch(r){}}();r.exports=o})(Ea,Ea.exports);var Fa=Da,Ca=$a,Pa=Ea.exports;var Ta=Pa&&Pa.isTypedArray;var Ba=Ta?Ca(Ta):Fa;var Ra=Ba;var Ua=$e,Va=We,za=be,Na=qe.exports,Wa=Qe,qa=Ra;var Ga=Object.prototype;var Ka=Ga.hasOwnProperty;function La(r,n){var t=za(r),e=!t&&Va(r),a=!t&&!e&&Na(r),u=!t&&!e&&!a&&qa(r),i=t||e||a||u,v=i?Ua(r.length,String):[],o=v.length;for(var f in r){if((n||Ka.call(r,f))&&!(i&&(f=="length"||a&&(f=="offset"||f=="parent")||u&&(f=="buffer"||f=="byteLength"||f=="byteOffset")||Wa(f,o)))){v.push(f)}}return v}var Ha=La;var Ja=Object.prototype;function Qa(r){var n=r&&r.constructor,t=typeof n=="function"&&n.prototype||Ja;return r===t}var Xa=Qa;function Ya(r,n){return function(t){return r(n(t))}}var Za=Ya;var ru=Za;var nu=ru(Object.keys,Object);var tu=nu;var eu=Xa,au=tu;var uu=Object.prototype;var iu=uu.hasOwnProperty;function vu(r){if(!eu(r)){return au(r)}var n=[];for(var t in Object(r)){if(iu.call(r,t)&&t!="constructor"){n.push(t)}}return n}var ou=vu;var fu=hr,cu=Ze;function su(r){return r!=null&&cu(r.length)&&!fu(r)}var lu=su;var hu=Ha,bu=ou,du=lu;function ju(r){return du(r)?hu(r):bu(r)}var pu=ju;var mu=me,yu=De,wu=pu;function gu(r){return mu(r,wu,yu)}var Ou=gu;var _u=Ou;var Au=1;var xu=Object.prototype;var Iu=xu.hasOwnProperty;function Mu(r,n,t,e,a,u){var i=t&Au,v=_u(r),o=v.length,f=_u(n),c=f.length;if(o!=c&&!i){return false}var s=o;while(s--){var l=v[s];if(!(i?l in n:Iu.call(n,l))){return false}}var h=u.get(r);var b=u.get(n);if(h&&b){return h==n&&b==r}var d=true;u.set(r,n);u.set(n,r);var j=i;while(++s<o){l=v[s];var p=r[l],m=n[l];if(e){var y=i?e(m,p,l,n,r,u):e(p,m,l,r,n,u)}if(!(y===undefined?p===m||a(p,m,t,e,u):y)){d=false;break}j||(j=l=="constructor")}if(d&&!j){var w=r.constructor,g=n.constructor;if(w!=g&&("constructor"in r&&"constructor"in n)&&!(typeof w=="function"&&w instanceof w&&typeof g=="function"&&g instanceof g)){d=false}}u["delete"](r);u["delete"](n);return d}var ku=Mu;var Du=Wr,Su=a;var $u=Du(Su,"DataView");var Eu=$u;var Fu=Wr,Cu=a;var Pu=Fu(Cu,"Promise");var Tu=Pu;var Bu=Wr,Ru=a;var Uu=Bu(Ru,"Set");var Vu=Uu;var zu=Wr,Nu=a;var Wu=zu(Nu,"WeakMap");var qu=Wu;var Gu=Eu,Ku=Lr,Lu=Tu,Hu=Vu,Ju=qu,Qu=t,Xu=Ar;var Yu="[object Map]",Zu="[object Object]",ri="[object Promise]",ni="[object Set]",ti="[object WeakMap]";var ei="[object DataView]";var ai=Xu(Gu),ui=Xu(Ku),ii=Xu(Lu),vi=Xu(Hu),oi=Xu(Ju);var fi=Qu;if(Gu&&fi(new Gu(new ArrayBuffer(1)))!=ei||Ku&&fi(new Ku)!=Yu||Lu&&fi(Lu.resolve())!=ri||Hu&&fi(new Hu)!=ni||Ju&&fi(new Ju)!=ti){fi=function(r){var n=Qu(r),t=n==Zu?r.constructor:undefined,e=t?Xu(t):"";if(e){switch(e){case ai:return ei;case ui:return Yu;case ii:return ri;case vi:return ni;case oi:return ti}}return n}}var ci=fi;var si=ht,li=Ct,hi=ce,bi=ku,di=ci,ji=be,pi=qe.exports,mi=Ra;var yi=1;var wi="[object Arguments]",gi="[object Array]",Oi="[object Object]";var _i=Object.prototype;var Ai=_i.hasOwnProperty;function xi(r,n,t,e,a,u){var i=ji(r),v=ji(n),o=i?gi:di(r),f=v?gi:di(n);o=o==wi?Oi:o;f=f==wi?Oi:f;var c=o==Oi,s=f==Oi,l=o==f;if(l&&pi(r)){if(!pi(n)){return false}i=true;c=false}if(l&&!c){u||(u=new si);return i||mi(r)?li(r,n,t,e,a,u):hi(r,n,o,t,e,a,u)}if(!(t&yi)){var h=c&&Ai.call(r,"__wrapped__"),b=s&&Ai.call(n,"__wrapped__");if(h||b){var d=h?r.value():r,j=b?n.value():n;u||(u=new si);return a(d,j,t,e,u)}}if(!l){return false}u||(u=new si);return bi(r,n,t,e,a,u)}var Ii=xi;var Mi=Ii,ki=i;function Di(r,n,t,e,a){if(r===n){return true}if(r==null||n==null||!ki(r)&&!ki(n)){return r!==r&&n!==n}return Mi(r,n,t,e,Di,a)}var Si=Di;var $i=ht,Ei=Si;var Fi=1,Ci=2;function Pi(r,n,t,e){var a=t.length,u=a,i=!e;if(r==null){return!u}r=Object(r);while(a--){var v=t[a];if(i&&v[2]?v[1]!==r[v[0]]:!(v[0]in r)){return false}}while(++a<u){v=t[a];var o=v[0],f=r[o],c=v[1];if(i&&v[2]){if(f===undefined&&!(o in r)){return false}}else{var s=new $i;if(e){var l=e(f,c,o,r,n,s)}if(!(l===undefined?Ei(c,f,Fi|Ci,e,s):l)){return false}}}return true}var Ti=Pi;var Bi=e;function Ri(r){return r===r&&!Bi(r)}var Ui=Ri;var Vi=Ui,zi=pu;function Ni(r){var n=zi(r),t=n.length;while(t--){var e=n[t],a=r[e];n[t]=[e,a,Vi(a)]}return n}var Wi=Ni;function qi(r,n){return function(t){if(t==null){return false}return t[r]===n&&(n!==undefined||r in Object(t))}}var Gi=qi;var Ki=Ti,Li=Wi,Hi=Gi;function Ji(r){var n=Li(r);if(n.length==1&&n[0][2]){return Hi(n[0][0],n[0][1])}return function(t){return t===r||Ki(t,r,n)}}var Qi=Ji;var Xi=be,Yi=o;var Zi=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,rv=/^\w*$/;function nv(r,n){if(Xi(r)){return false}var t=typeof r;if(t=="number"||t=="symbol"||t=="boolean"||r==null||Yi(r)){return true}return rv.test(r)||!Zi.test(r)||n!=null&&r in Object(n)}var tv=nv;var ev=Zn;var av="Expected a function";function uv(r,n){if(typeof r!="function"||n!=null&&typeof n!="function"){throw new TypeError(av)}var t=function(){var e=arguments,a=n?n.apply(this,e):e[0],u=t.cache;if(u.has(a)){return u.get(a)}var i=r.apply(this,e);t.cache=u.set(a,i)||u;return i};t.cache=new(uv.Cache||ev);return t}uv.Cache=ev;var iv=uv;var vv=iv;var ov=500;function fv(r){var n=vv(r,(function(r){if(t.size===ov){t.clear()}return r}));var t=n.cache;return n}var cv=fv;var sv=cv;var lv=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;var hv=/\\(\\)?/g;var bv=sv((function(r){var n=[];if(r.charCodeAt(0)===46){n.push("")}r.replace(lv,(function(r,t,e,a){n.push(e?a.replace(hv,"$1"):t||r)}));return n}));var dv=bv;function jv(r,n){var t=-1,e=r==null?0:r.length,a=Array(e);while(++t<e){a[t]=n(r[t],t,r)}return a}var pv=jv;var mv=u,yv=pv,wv=be,gv=o;var Ov=1/0;var _v=mv?mv.prototype:undefined,Av=_v?_v.toString:undefined;function xv(r){if(typeof r=="string"){return r}if(wv(r)){return yv(r,xv)+""}if(gv(r)){return Av?Av.call(r):""}var n=r+"";return n=="0"&&1/r==-Ov?"-0":n}var Iv=xv;var Mv=Iv;function kv(r){return r==null?"":Mv(r)}var Dv=kv;var Sv=be,$v=tv,Ev=dv,Fv=Dv;function Cv(r,n){if(Sv(r)){return r}return $v(r,n)?[r]:Ev(Fv(r))}var Pv=Cv;var Tv=o;var Bv=1/0;function Rv(r){if(typeof r=="string"||Tv(r)){return r}var n=r+"";return n=="0"&&1/r==-Bv?"-0":n}var Uv=Rv;var Vv=Pv,zv=Uv;function Nv(r,n){n=Vv(n,r);var t=0,e=n.length;while(r!=null&&t<e){r=r[zv(n[t++])]}return t&&t==e?r:undefined}var Wv=Nv;var qv=Wv;function Gv(r,n,t){var e=r==null?undefined:qv(r,n);return e===undefined?t:e}var Kv=Gv;function Lv(r,n){return r!=null&&n in Object(r)}var Hv=Lv;var Jv=Pv,Qv=We,Xv=be,Yv=Qe,Zv=Ze,ro=Uv;function no(r,n,t){n=Jv(n,r);var e=-1,a=n.length,u=false;while(++e<a){var i=ro(n[e]);if(!(u=r!=null&&t(r,i))){break}r=r[i]}if(u||++e!=a){return u}a=r==null?0:r.length;return!!a&&Zv(a)&&Yv(i,a)&&(Xv(r)||Qv(r))}var to=no;var eo=Hv,ao=to;function uo(r,n){return r!=null&&ao(r,n,eo)}var io=uo;var vo=Si,oo=Kv,fo=io,co=tv,so=Ui,lo=Gi,ho=Uv;var bo=1,jo=2;function po(r,n){if(co(r)&&so(n)){return lo(ho(r),n)}return function(t){var e=oo(t,r);return e===undefined&&e===n?fo(t,r):vo(n,e,bo|jo)}}var mo=po;function yo(r){return r}var wo=yo;function go(r){return function(n){return n==null?undefined:n[r]}}var Oo=go;var _o=Wv;function Ao(r){return function(n){return _o(n,r)}}var xo=Ao;var Io=Oo,Mo=xo,ko=tv,Do=Uv;function So(r){return ko(r)?Io(Do(r)):Mo(r)}var $o=So;var Eo=Qi,Fo=mo,Co=wo,Po=be,To=$o;function Bo(r){if(typeof r=="function"){return r}if(r==null){return Co}if(typeof r=="object"){return Po(r)?Fo(r[0],r[1]):Eo(r)}return To(r)}var Ro=Bo;var Uo=f;var Vo=1/0,zo=17976931348623157e292;function No(r){if(!r){return r===0?r:0}r=Uo(r);if(r===Vo||r===-Vo){var n=r<0?-1:1;return n*zo}return r===r?r:0}var Wo=No;var qo=Wo;function Go(r){var n=qo(r),t=n%1;return n===n?t?n-t:n:0}var Ko=Go;var Lo=O,Ho=Ro,Jo=Ko;var Qo=Math.max;function Xo(r,n,t){var e=r==null?0:r.length;if(!e){return-1}var a=t==null?0:Jo(t);if(a<0){a=Qo(e+a,0)}return Lo(r,Ho(n),a)}var Yo=Xo;var Zo=Math.ceil,rf=Math.max;function nf(r,n,t,e){var a=-1,u=rf(Zo((n-r)/(t||1)),0),i=Array(u);while(u--){i[e?u:++a]=r;r+=t}return i}var tf=nf;var ef=I,af=lu,uf=Qe,vf=e;function of(r,n,t){if(!vf(t)){return false}var e=typeof n;if(e=="number"?af(t)&&uf(n,t.length):e=="string"&&n in t){return ef(t[n],r)}return false}var ff=of;var cf=tf,sf=ff,lf=Wo;function hf(r){return function(n,t,e){if(e&&typeof e!="number"&&sf(n,t,e)){t=e=undefined}n=lf(n);if(t===undefined){t=n;n=0}else{t=lf(t)}e=e===undefined?n<t?1:-1:lf(e);return cf(n,t,e,r)}}var bf=hf;var df=bf;var jf=df();var pf=jf;const mf=r=>({set(n,t){switch(n){case"trimmed":const n=r.get("proxyItems");const e=yf(t);const a=n.reduce(((r,n)=>{if(!e[n]){r.push(n)}return r}),[]);r.set("items",a);break}}});function yf(r){const n={};for(let t in r){for(let e in r[t]){n[e]=n[e]||r[t][e]}}return n}function wf(r,n){for(let t in n){r.set(t,n[t])}}class gf{get store(){return this.dataStore}constructor(r,n){const t=this.dataStore=w(Object.assign({items:[],proxyItems:[],source:[],groupingDepth:0,groups:{},type:r,trimmed:{},groupingCustomRenderer:undefined},n));t.use(c(t));t.use(mf(t))}updateData(r,n,t=false){if(!t){this.store.set("trimmed",{})}this.store.set("items",[]);const e=pf(0,(r===null||r===void 0?void 0:r.length)||0);wf(this.store,{source:r,proxyItems:[...e]});this.store.set("items",e);if(n){wf(this.store,{groupingDepth:n.depth,groups:n.groups,groupingCustomRenderer:n.customRenderer})}}addTrimmed(r){let n=this.store.get("trimmed");n=Object.assign(Object.assign({},n),r);wf(this.store,{trimmed:n})}setData(r){const n=Object.assign({},r);wf(this.store,n)}refresh(){const r=this.store.get("source");this.store.set("source",[...r])}}function Of(r,n){const t=r.get("items");return t[n]}function _f(r){const n=r.get("source");return r.get("items").map((r=>n[r]))}const Af=(r,n)=>{const t=r.get("items");const e=r.get("source");return e[t[n]]};function xf(r,n,t=true){const e=r.get("items");const a=r.get("source");for(let r in n){const t=e[r];a[t]=n[r]}if(t){r.set("source",[...a])}}function If(r,n,t=true){const e=r.get("source");for(let r in n){e[r]=n[r]}if(t){r.set("source",[...e])}}function Mf(r,n){r.set("items",n)}function kf(r,n){const t=r.get("items");const e=r.get("source");const a=Yo(e,{prop:n});return t.indexOf(a)}function Df(r,n,t,e){var a=-1,u=r==null?0:r.length;if(e&&u){t=r[++a]}while(++a<u){t=n(t,r[a],a,r)}return t}var Sf=Df;function $f(r){return function(n,t,e){var a=-1,u=Object(n),i=e(n),v=i.length;while(v--){var o=i[r?v:++a];if(t(u[o],o,u)===false){break}}return n}}var Ef=$f;var Ff=Ef;var Cf=Ff();var Pf=Cf;var Tf=Pf,Bf=pu;function Rf(r,n){return r&&Tf(r,n,Bf)}var Uf=Rf;var Vf=lu;function zf(r,n){return function(t,e){if(t==null){return t}if(!Vf(t)){return r(t,e)}var a=t.length,u=n?a:-1,i=Object(t);while(n?u--:++u<a){if(e(i[u],u,i)===false){break}}return t}}var Nf=zf;var Wf=Uf,qf=Nf;var Gf=qf(Wf);var Kf=Gf;function Lf(r,n,t,e,a){a(r,(function(r,a,u){t=e?(e=false,r):n(t,r,a,u)}));return t}var Hf=Lf;var Jf=Sf,Qf=Kf,Xf=Ro,Yf=Hf,Zf=be;function rc(r,n,t){var e=Zf(r)?Jf:Yf,a=arguments.length<3;return e(r,Xf(n),t,a,Qf)}var nc=rc;function tc(r,n){var t=-1,e=r==null?0:r.length;while(++t<e){if(n(r[t],t,r)===false){break}}return r}var ec=tc;var ac=wo;function uc(r){return typeof r=="function"?r:ac}var ic=uc;var vc=ec,oc=Kf,fc=ic,cc=be;function sc(r,n){var t=cc(r)?vc:oc;return t(r,fc(n))}var lc=sc;var hc=lc;var bc=o;var dc=4294967295,jc=dc-1;var pc=Math.floor,mc=Math.min;function yc(r,n,t,e){var a=0,u=r==null?0:r.length;if(u===0){return 0}n=t(n);var i=n!==n,v=n===null,o=bc(n),f=n===undefined;while(a<u){var c=pc((a+u)/2),s=t(r[c]),l=s!==undefined,h=s===null,b=s===s,d=bc(s);if(i){var j=e||b}else if(f){j=b&&(e||l)}else if(v){j=b&&l&&(e||!h)}else if(o){j=b&&l&&!h&&(e||!d)}else if(h||d){j=false}else{j=e?s<=n:s<n}if(j){a=c+1}else{u=c}}return mc(u,jc)}var wc=yc;var gc=wc,Oc=wo,_c=o;var Ac=4294967295,xc=Ac>>>1;function Ic(r,n,t){var e=0,a=r==null?e:r.length;if(typeof n=="number"&&n===n&&a<=xc){while(e<a){var u=e+a>>>1,i=r[u];if(i!==null&&!_c(i)&&(t?i<=n:i<n)){e=u+1}else{a=u}}return a}return gc(r,n,Oc,t)}var Mc=Ic;var kc=Mc;function Dc(r,n){return kc(r,n)}var Sc=Dc;function $c(r,n={}){const t=[];const e={};const a={};const u=Object.assign({},n);let i=[];hc(n,((r,n)=>{const t=parseInt(n,10);i[Sc(i,t)]=t}));nc(i,((n,i,v)=>{const o={itemIndex:i,start:0,end:0};if(n){const t=(i-n.itemIndex-1)*r;o.start=t+n.end}else{o.start=i*r}o.end=o.start+u[i];t.push(o.start);a[i]=e[v]=o;return o}),undefined);return{indexes:i,positionIndexes:[...t],positionIndexToItem:Object.assign({},e),indexToItem:a,sizes:u}}const Ec=({indexes:r,positionIndexes:n,originItemSize:t,positionIndexToItem:e},a)=>{const u={itemIndex:0,start:0,end:0};const i=r.length?Sc(n,a):0;if(!i){u.itemIndex=Math.floor(a/t);u.start=u.itemIndex*t;u.end=u.start+t;return u}const v=e[i-1];if(v.end>a){return v}const o=a-v.end;const f=Math.floor(o/t);u.itemIndex=v.itemIndex+1+f;u.start=v.end+f*t;u.end=u.start+t;return u};function Fc(r,n){let t={itemIndex:n,start:0,end:0};if(r.indexToItem[n]){return r.indexToItem[n]}const e=r.indexes.length?Sc(r.indexes,n):0;if(!e){t.start=t.itemIndex*r.originItemSize;t.end=t.start+r.originItemSize;return t}const a=r.indexToItem[r.indexes[e-1]];t.start=a.end+(n-a.itemIndex-1)*r.originItemSize;t.end=t.start+r.originItemSize;return t}export{pf as A,Ko as B,ff as C,gf as D,Wr as E,Ro as _,_f as a,Af as b,If as c,Mf as d,kf as e,yf as f,Of as g,$c as h,Ec as i,Fc as j,w as k,wf as l,hc as m,lu as n,pu as o,c as p,Yo as q,nc as r,xf as s,mf as t,Kf as u,pv as v,be as w,Oo as x,ou as y,ci as z};
5
+ //# sourceMappingURL=dimension.helpers-a3065cb1.js.map