@revolist/revogrid 4.9.5 → 4.9.7

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 (171) hide show
  1. package/dist/cjs/{column.service-08df359f.js → column.service-0615a373.js} +11 -12
  2. package/dist/cjs/column.service-0615a373.js.map +1 -0
  3. package/dist/cjs/{column.utils-0f0f4dc4.js → column.utils-694677fa.js} +13 -13
  4. package/dist/cjs/column.utils-694677fa.js.map +1 -0
  5. package/dist/cjs/edit.utils-2e1f4278.js +20 -0
  6. package/dist/cjs/edit.utils-2e1f4278.js.map +1 -0
  7. package/dist/cjs/{events-b28cc194.js → events-af8f6914.js} +1 -8
  8. package/dist/cjs/events-af8f6914.js.map +1 -0
  9. package/dist/cjs/{header-cell-renderer-fb2f9a2d.js → header-cell-renderer-360528aa.js} +2 -2
  10. package/dist/cjs/{header-cell-renderer-fb2f9a2d.js.map → header-cell-renderer-360528aa.js.map} +1 -1
  11. package/dist/cjs/{dimension.helpers-85294778.js → index-2991afbb.js} +262 -3
  12. package/dist/cjs/index-2991afbb.js.map +1 -0
  13. package/dist/cjs/index.cjs.js +86 -30
  14. package/dist/cjs/index.cjs.js.map +1 -1
  15. package/dist/cjs/key.utils-b84b0eba.js +111 -0
  16. package/dist/cjs/key.utils-b84b0eba.js.map +1 -0
  17. package/dist/cjs/revo-grid.cjs.entry.js +72 -73
  18. package/dist/cjs/revo-grid.cjs.entry.js.map +1 -1
  19. package/dist/cjs/revogr-attribution_6.cjs.entry.js +37 -37
  20. package/dist/cjs/revogr-attribution_6.cjs.entry.js.map +1 -1
  21. package/dist/cjs/revogr-clipboard_3.cjs.entry.js +8 -8
  22. package/dist/cjs/revogr-clipboard_3.cjs.entry.js.map +1 -1
  23. package/dist/cjs/revogr-data_4.cjs.entry.js +19 -19
  24. package/dist/cjs/revogr-data_4.cjs.entry.js.map +1 -1
  25. package/dist/cjs/{viewport.store-300977e4.js → row-header-utils-b5266b12.js} +13 -6
  26. package/dist/cjs/row-header-utils-b5266b12.js.map +1 -0
  27. package/dist/cjs/{selection.helpers-371a38aa.js → selection.helpers-4374518f.js} +13 -13
  28. package/dist/cjs/selection.helpers-4374518f.js.map +1 -0
  29. package/dist/cjs/{throttle-52be9e67.js → throttle-8885fd65.js} +2 -2
  30. package/dist/cjs/{throttle-52be9e67.js.map → throttle-8885fd65.js.map} +1 -1
  31. package/dist/collection/components/data/revogr-data.js +13 -7
  32. package/dist/collection/components/data/revogr-data.js.map +1 -1
  33. package/dist/collection/components/header/revogr-header.js +1 -1
  34. package/dist/collection/index.js +1 -2
  35. package/dist/collection/index.js.map +1 -1
  36. package/dist/collection/plugins/column.auto-size.plugin.js +1 -1
  37. package/dist/collection/plugins/column.auto-size.plugin.js.map +1 -1
  38. package/dist/collection/utils/index.js +7 -0
  39. package/dist/collection/utils/index.js.map +1 -1
  40. package/dist/esm/{column.service-cfc1149b.js → column.service-af0694c5.js} +3 -4
  41. package/dist/esm/column.service-af0694c5.js.map +1 -0
  42. package/dist/esm/{column.utils-f6300fb5.js → column.utils-78dd3ef2.js} +2 -2
  43. package/dist/esm/{column.utils-f6300fb5.js.map → column.utils-78dd3ef2.js.map} +1 -1
  44. package/dist/esm/edit.utils-ca303802.js +17 -0
  45. package/dist/esm/edit.utils-ca303802.js.map +1 -0
  46. package/dist/esm/{events-77b43b40.js → events-cf0893a3.js} +2 -8
  47. package/dist/esm/events-cf0893a3.js.map +1 -0
  48. package/dist/esm/{header-cell-renderer-6f8eb067.js → header-cell-renderer-261317c3.js} +2 -2
  49. package/dist/esm/{header-cell-renderer-6f8eb067.js.map → header-cell-renderer-261317c3.js.map} +1 -1
  50. package/dist/esm/{dimension.helpers-938ea850.js → index-f65def08.js} +231 -4
  51. package/dist/esm/index-f65def08.js.map +1 -0
  52. package/dist/esm/index.js +5 -4
  53. package/dist/esm/index.js.map +1 -1
  54. package/dist/esm/key.utils-4b0093d5.js +98 -0
  55. package/dist/esm/key.utils-4b0093d5.js.map +1 -0
  56. package/dist/esm/revo-grid.entry.js +7 -8
  57. package/dist/esm/revo-grid.entry.js.map +1 -1
  58. package/dist/esm/revogr-attribution_6.entry.js +8 -8
  59. package/dist/esm/revogr-clipboard_3.entry.js +3 -3
  60. package/dist/esm/revogr-data_4.entry.js +11 -11
  61. package/dist/esm/revogr-data_4.entry.js.map +1 -1
  62. package/dist/esm/{viewport.store-a690096b.js → row-header-utils-6081260c.js} +9 -3
  63. package/dist/esm/row-header-utils-6081260c.js.map +1 -0
  64. package/dist/esm/{selection.helpers-a49a3d09.js → selection.helpers-d92697e1.js} +2 -2
  65. package/dist/esm/{selection.helpers-a49a3d09.js.map → selection.helpers-d92697e1.js.map} +1 -1
  66. package/dist/esm/{throttle-7283692c.js → throttle-041ded8e.js} +2 -2
  67. package/dist/esm/{throttle-7283692c.js.map → throttle-041ded8e.js.map} +1 -1
  68. package/dist/revo-grid/column.service-af0694c5.js +5 -0
  69. package/dist/revo-grid/{column.service-cfc1149b.js.map → column.service-af0694c5.js.map} +1 -1
  70. package/dist/revo-grid/column.utils-78dd3ef2.js +5 -0
  71. package/dist/revo-grid/{column.utils-f6300fb5.js.map → column.utils-78dd3ef2.js.map} +1 -1
  72. package/dist/revo-grid/edit.utils-ca303802.js +5 -0
  73. package/dist/revo-grid/edit.utils-ca303802.js.map +1 -0
  74. package/dist/revo-grid/events-cf0893a3.js +5 -0
  75. package/dist/revo-grid/events-cf0893a3.js.map +1 -0
  76. package/dist/revo-grid/{header-cell-renderer-6f8eb067.js → header-cell-renderer-261317c3.js} +2 -2
  77. package/dist/revo-grid/index-f65def08.js +5 -0
  78. package/dist/revo-grid/index-f65def08.js.map +1 -0
  79. package/dist/revo-grid/index.esm.js +1 -1
  80. package/dist/revo-grid/key.utils-4b0093d5.js +5 -0
  81. package/dist/revo-grid/key.utils-4b0093d5.js.map +1 -0
  82. package/dist/revo-grid/revo-grid.entry.js +1 -1
  83. package/dist/revo-grid/revo-grid.entry.js.map +1 -1
  84. package/dist/revo-grid/revogr-attribution_6.entry.js +1 -1
  85. package/dist/revo-grid/revogr-clipboard_3.entry.js +1 -1
  86. package/dist/revo-grid/revogr-clipboard_3.entry.js.map +1 -1
  87. package/dist/revo-grid/revogr-data_4.entry.js +1 -1
  88. package/dist/revo-grid/revogr-data_4.entry.js.map +1 -1
  89. package/dist/revo-grid/row-header-utils-6081260c.js +5 -0
  90. package/dist/revo-grid/row-header-utils-6081260c.js.map +1 -0
  91. package/dist/revo-grid/selection.helpers-d92697e1.js +5 -0
  92. package/dist/revo-grid/{selection.helpers-a49a3d09.js.map → selection.helpers-d92697e1.js.map} +1 -1
  93. package/dist/revo-grid/{throttle-7283692c.js → throttle-041ded8e.js} +2 -2
  94. package/dist/types/components/data/revogr-data.d.ts +2 -2
  95. package/dist/types/components.d.ts +2 -2
  96. package/dist/types/index.d.ts +1 -2
  97. package/dist/types/plugins/column.auto-size.plugin.d.ts +1 -2
  98. package/dist/types/utils/index.d.ts +7 -0
  99. package/hydrate/index.js +153 -154
  100. package/hydrate/index.mjs +153 -154
  101. package/package.json +2 -2
  102. package/standalone/_stringToPath.js +1389 -0
  103. package/standalone/_stringToPath.js.map +1 -0
  104. package/standalone/column.service.js +4 -3
  105. package/standalone/column.service.js.map +1 -1
  106. package/standalone/consts.js +1 -1
  107. package/standalone/data.store.js +31 -1410
  108. package/standalone/data.store.js.map +1 -1
  109. package/standalone/debounce.js +2 -1
  110. package/standalone/debounce.js.map +1 -1
  111. package/standalone/dimension.helpers.js +2 -2
  112. package/standalone/index.js +5 -2
  113. package/standalone/index.js.map +1 -1
  114. package/standalone/index2.js +160 -1
  115. package/standalone/index2.js.map +1 -1
  116. package/standalone/isObjectLike.js +195 -0
  117. package/standalone/isObjectLike.js.map +1 -0
  118. package/standalone/revo-grid.js +4 -3
  119. package/standalone/revo-grid.js.map +1 -1
  120. package/standalone/revogr-data2.js +9 -7
  121. package/standalone/revogr-data2.js.map +1 -1
  122. package/standalone/revogr-edit.js +1 -1
  123. package/standalone/revogr-edit2.js +57 -83
  124. package/standalone/revogr-edit2.js.map +1 -1
  125. package/standalone/revogr-focus2.js +2 -1
  126. package/standalone/revogr-focus2.js.map +1 -1
  127. package/standalone/revogr-header2.js +4 -3
  128. package/standalone/revogr-header2.js.map +1 -1
  129. package/standalone/revogr-order-editor2.js +3 -2
  130. package/standalone/revogr-order-editor2.js.map +1 -1
  131. package/standalone/revogr-overlay-selection2.js +5 -5
  132. package/standalone/revogr-row-headers2.js +3 -2
  133. package/standalone/revogr-row-headers2.js.map +1 -1
  134. package/standalone/selection.utils.js +2 -1
  135. package/standalone/selection.utils.js.map +1 -1
  136. package/standalone/throttle.js +1 -1
  137. package/standalone/toNumber.js +2 -189
  138. package/standalone/toNumber.js.map +1 -1
  139. package/dist/cjs/column.service-08df359f.js.map +0 -1
  140. package/dist/cjs/column.utils-0f0f4dc4.js.map +0 -1
  141. package/dist/cjs/dimension.helpers-85294778.js.map +0 -1
  142. package/dist/cjs/events-b28cc194.js.map +0 -1
  143. package/dist/cjs/index-2410bbd9.js +0 -103
  144. package/dist/cjs/index-2410bbd9.js.map +0 -1
  145. package/dist/cjs/key.utils-1e48ab8f.js +0 -144
  146. package/dist/cjs/key.utils-1e48ab8f.js.map +0 -1
  147. package/dist/cjs/selection.helpers-371a38aa.js.map +0 -1
  148. package/dist/cjs/viewport.store-300977e4.js.map +0 -1
  149. package/dist/esm/column.service-cfc1149b.js.map +0 -1
  150. package/dist/esm/dimension.helpers-938ea850.js.map +0 -1
  151. package/dist/esm/events-77b43b40.js.map +0 -1
  152. package/dist/esm/index-4e881436.js +0 -77
  153. package/dist/esm/index-4e881436.js.map +0 -1
  154. package/dist/esm/key.utils-425c987d.js +0 -133
  155. package/dist/esm/key.utils-425c987d.js.map +0 -1
  156. package/dist/esm/viewport.store-a690096b.js.map +0 -1
  157. package/dist/revo-grid/column.service-cfc1149b.js +0 -5
  158. package/dist/revo-grid/column.utils-f6300fb5.js +0 -5
  159. package/dist/revo-grid/dimension.helpers-938ea850.js +0 -5
  160. package/dist/revo-grid/dimension.helpers-938ea850.js.map +0 -1
  161. package/dist/revo-grid/events-77b43b40.js +0 -5
  162. package/dist/revo-grid/events-77b43b40.js.map +0 -1
  163. package/dist/revo-grid/index-4e881436.js +0 -5
  164. package/dist/revo-grid/index-4e881436.js.map +0 -1
  165. package/dist/revo-grid/key.utils-425c987d.js +0 -5
  166. package/dist/revo-grid/key.utils-425c987d.js.map +0 -1
  167. package/dist/revo-grid/selection.helpers-a49a3d09.js +0 -5
  168. package/dist/revo-grid/viewport.store-a690096b.js +0 -5
  169. package/dist/revo-grid/viewport.store-a690096b.js.map +0 -1
  170. /package/dist/revo-grid/{header-cell-renderer-6f8eb067.js.map → header-cell-renderer-261317c3.js.map} +0 -0
  171. /package/dist/revo-grid/{throttle-7283692c.js.map → throttle-041ded8e.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["trimmedPlugin","store","trimmedSize","setTrimmed","sizes","trimmed","newSize","Object","assign","index","v","entries","i","setDimensionSize","set","key","val","trim","get","realSizePlugin","k","realSize","count","setStore","initialBase","indexes","positionIndexToItem","indexToItem","positionIndexes","initialState","originItemSize","DimensionStore","constructor","this","createStore","use","getCurrentState","state","keys","reduce","r","data","dispose","drop","dimensionData","calculateDimensionData","rowTypes","columnTypes","isRowType","type","indexOf","BasePlugin","revogrid","providers","h","subscriptions","addEventListener","eventName","callback","watch","prop","immediate","nativeValueDesc","getOwnPropertyDescriptor","prototype","defineProperty","keepDefault","_a","call","value","removeEventListener","emit","detail","event","CustomEvent","cancelable","dispatchEvent","clearSubscriptions","destroy","getColumnType","rgCol","pin","getColumnSizes","cols","res","c","size","isColGrouping","colData","children","getColumns","columns","level","types","collection","colPinStart","colPinEnd","columnByProp","columnGrouping","maxLevel","sort","gatherGroup","regularColumn","columnType","push","order","beforeSetup","group","ids","resultItem","collectionItem","isArray","length","map","item","Math","max","findColumn","found","undefined","getColumnByProp"],"sources":["src/store/dimension/dimension.store.ts","src/store/index.ts","src/plugins/base.plugin.ts","src/utils/column.utils.ts"],"sourcesContent":["/**\n * Storing pre-calculated\n * Dimension information and sizes\n */\nimport reduce from 'lodash/reduce';\nimport { createStore } from '@stencil/store';\n\nimport { setStore, Observable, PluginSubscribe } from '../../utils/store.utils';\nimport { calculateDimensionData } from './dimension.helpers';\nimport {\n DimensionCalc,\n DimensionSettingsState,\n ViewSettingSizeProp,\n MultiDimensionType,\n} from '@type';\n\nexport type DimensionStoreCollection = {\n [T in MultiDimensionType]: DimensionStore;\n};\n\ntype Item = keyof DimensionSettingsState;\n\nconst trimmedPlugin = (\n store: DimensionStore,\n): PluginSubscribe<DimensionSettingsState> => {\n let trimmedSize: DimensionSettingsState['sizes'] = {};\n\n const setTrimmed = (\n sizes: DimensionSettingsState['sizes'],\n trimmed: DimensionSettingsState['trimmed'],\n ) => {\n const newSize: DimensionSettingsState['sizes'] = { ...sizes };\n trimmedSize = {};\n for (const [index, v] of Object.entries(trimmed)) {\n const i = index as keyof DimensionSettingsState['sizes'];\n if (v && newSize[i]) {\n trimmedSize[i] = newSize[i];\n delete newSize[i];\n }\n }\n store.setDimensionSize(newSize);\n };\n return {\n set(key, val) {\n switch (key) {\n case 'trimmed':\n const trim = val as DimensionSettingsState['trimmed'];\n const sizes = store.store.get('sizes');\n // recover trimmed, apply new trim\n setTrimmed({ ...sizes, ...trimmedSize }, trim);\n break;\n }\n },\n };\n};\n\nconst realSizePlugin = (\n store: DimensionStore,\n): PluginSubscribe<DimensionSettingsState> => {\n return {\n set(k) {\n switch (k) {\n case 'count':\n case 'sizes':\n case 'originItemSize':\n let realSize = 0;\n const count = store.store.get('count');\n for (let i = 0; i < count; i++) {\n realSize +=\n store.store.get('sizes')[i] || store.store.get('originItemSize');\n }\n store.setStore({ realSize });\n }\n },\n };\n};\n\nfunction initialBase(): DimensionCalc {\n return {\n indexes: [],\n count: 0,\n\n // plugin support\n trimmed: {},\n\n // size operations, this provider stores only changed sizes, not all of them\n // same as indexes but for sizes and positions\n // item index to size\n sizes: {},\n // order in indexes[] to coordinate\n positionIndexToItem: {},\n // initial element to coordinate ^\n indexToItem: {},\n positionIndexes: [],\n };\n}\n\nfunction initialState(): DimensionSettingsState {\n return {\n ...initialBase(),\n // size which all items can take\n realSize: 0,\n\n // initial item size if it wasn't changed\n originItemSize: 0,\n };\n}\n\nexport class DimensionStore {\n readonly store: Observable<DimensionSettingsState>;\n constructor() {\n this.store = createStore(initialState());\n this.store.use(trimmedPlugin(this));\n this.store.use(realSizePlugin(this));\n }\n\n getCurrentState(): DimensionSettingsState {\n const state = initialState();\n const keys = Object.keys(state);\n return reduce(\n keys,\n (r: DimensionSettingsState, k: Item) => {\n const data = this.store.get(k);\n r[k] = data as never;\n return r;\n },\n state,\n );\n }\n\n dispose() {\n setStore(this.store, initialState());\n }\n\n setStore<T extends Record<string, any>>(data: Partial<T>) {\n setStore(this.store, data);\n }\n\n drop() {\n setStore(this.store, initialBase());\n }\n\n /**\n * Set custom dimension sizes and overwrite old\n * Generates new indexes based on sizes\n * @param sizes - sizes to set\n */\n setDimensionSize(sizes: ViewSettingSizeProp) {\n const dimensionData = calculateDimensionData(\n this.store.get('originItemSize'),\n sizes,\n );\n setStore(this.store, dimensionData);\n }\n}\n","import type { DimensionCols, DimensionRows } from '@type';\n\nexport * from './dataSource';\nexport * from './dimension';\nexport * from './selection';\nexport * from './vp';\n\nexport const rowTypes: DimensionRows[] = ['rowPinStart', 'rgRow', 'rowPinEnd'];\nexport const columnTypes: DimensionCols[] = [\n 'colPinStart',\n 'rgCol',\n 'colPinEnd',\n];\n\nexport function isRowType(type: DimensionRows | any): type is DimensionRows {\n return rowTypes.indexOf(type) > -1;\n}\n","import { h } from '@stencil/core';\nimport { PluginProviders, PluginBaseComponent } from '..';\n\ntype WatchConfig = { immediate: boolean };\n\n/**\n * Base layer for plugins\n * Provide minimal starting core for plugins to work\n * Extend this class to create plugin\n */\nexport class BasePlugin implements PluginBaseComponent {\n readonly h = h;\n readonly subscriptions: Record<string, (...args: any[]) => void> = {};\n constructor(public revogrid: HTMLRevoGridElement, public providers: PluginProviders) {}\n /**\n *\n * @param eventName - event name to subscribe to in revo-grid component (e.g. 'beforeheaderclick')\n * @param callback - callback function for event\n */\n addEventListener<T = any>(\n eventName: string,\n callback: (e: CustomEvent<T>) => void,\n ) {\n this.revogrid.addEventListener(eventName, callback);\n this.subscriptions[eventName] = callback;\n }\n\n /**\n * Subscribe to property change in revo-grid component\n * You can return false in callback to prevent default value set\n *\n * @param prop - property name\n * @param callback - callback function\n * @param immediate - trigger callback immediately with current value\n */\n watch<T extends any>(\n prop: string,\n callback: (arg: T) => boolean | void,\n { immediate }: Partial<WatchConfig> = { immediate: false },\n ) {\n const nativeValueDesc =\n Object.getOwnPropertyDescriptor(this.revogrid, prop) ||\n Object.getOwnPropertyDescriptor(this.revogrid.constructor.prototype, prop);\n\n // Overwrite property descriptor for this instance\n Object.defineProperty(this.revogrid, prop, {\n set(val: T) {\n const keepDefault = callback(val);\n if (keepDefault === false) {\n return;\n }\n // Continue with native behavior\n return nativeValueDesc?.set?.call(this, val);\n },\n get() {\n // Continue with native behavior\n return nativeValueDesc?.get?.call(this);\n },\n });\n if (immediate) {\n callback(nativeValueDesc?.value);\n }\n }\n\n /**\n * Remove event listener\n * @param eventName\n */\n removeEventListener(eventName: string) {\n this.revogrid.removeEventListener(eventName, this.subscriptions[eventName]);\n delete this.subscriptions[eventName];\n }\n\n /**\n * Emit event from revo-grid component\n * Event can be cancelled by calling event.preventDefault() in callback\n */\n emit<T = any>(eventName: string, detail?: T) {\n const event = new CustomEvent<T>(eventName, { detail, cancelable: true });\n this.revogrid.dispatchEvent(event);\n return event;\n }\n\n /**\n * Clear all subscriptions\n */\n clearSubscriptions() {\n for (let type in this.subscriptions) {\n this.removeEventListener(type);\n }\n }\n\n /**\n * Destroy plugin and clear all subscriptions\n */\n destroy() {\n this.clearSubscriptions();\n }\n}\n\nexport type GridPlugin = (typeof BasePlugin);\n","import isArray from 'lodash/isArray';\nimport reduce from 'lodash/reduce';\n\nimport {\n ColumnData,\n ColumnGrouping,\n ColumnProp,\n ColumnRegular,\n ColumnTypes,\n DimensionCols,\n ViewSettingSizeProp,\n} from '@type';\nimport { Group as StoreGroup } from '@store';\n\nexport type ColumnItems = Record<DimensionCols, ColumnRegular[]>;\nexport interface ColumnGroup extends StoreGroup {\n level: number;\n}\nexport type ColumnGroupingCollection = Record<DimensionCols, ColumnGroup[]>;\n\n/**\n * Column collection definition.\n * Used to access indexed data for columns.\n * Can be accessed via different events.\n */\nexport type ColumnCollection = {\n /**\n * Columns as they are in stores\n */\n columns: Record<DimensionCols, ColumnRegular[]>;\n /**\n * Columns indexed by prop for quick access, it's possible to have multiple columns with same prop but not recommended\n */\n columnByProp: Record<ColumnProp, ColumnRegular[]>;\n /**\n * Grouped columns\n */\n columnGrouping: ColumnGroupingCollection;\n /**\n * Max level of grouping\n */\n maxLevel: number;\n /**\n * Sorting\n */\n sort: Record<ColumnProp, ColumnRegular>;\n};\n\nexport function getColumnType(rgCol: ColumnRegular): DimensionCols {\n if (rgCol.pin) {\n return rgCol.pin;\n }\n return 'rgCol';\n}\n\nexport function getColumnSizes(cols: ColumnRegular[]): ViewSettingSizeProp {\n const res: ViewSettingSizeProp = {};\n for (const [i, c] of cols.entries()) {\n if (c.size) {\n res[i] = c.size;\n }\n }\n return res;\n}\n\n\n/**\n * Check if column is grouping column\n */\nexport function isColGrouping(\n colData: ColumnGrouping | ColumnRegular,\n): colData is ColumnGrouping {\n return !!(colData as ColumnGrouping).children;\n}\n\n/**\n * This function is used to create a collection of columns.\n */\nexport function getColumns(\n columns: ColumnData,\n level = 0,\n types?: ColumnTypes,\n): ColumnCollection {\n const collection: ColumnCollection = {\n // columns as they are in stores per type\n columns: {\n rgCol: [],\n colPinStart: [],\n colPinEnd: [],\n },\n // columns indexed by prop for quick access\n columnByProp: {},\n // column grouping\n columnGrouping: {\n rgCol: [],\n colPinStart: [],\n colPinEnd: [],\n },\n // max depth level for column grouping\n maxLevel: level,\n // sorting\n sort: {},\n };\n\n return reduce(\n columns,\n (res: ColumnCollection, colData: ColumnGrouping | ColumnRegular) => {\n // Grouped column\n if (isColGrouping(colData)) {\n return gatherGroup(\n res,\n colData,\n getColumns(colData.children, level + 1, types),\n level,\n );\n }\n // Regular column\n const regularColumn = {\n ...(colData.columnType && types && types[colData.columnType]),\n ...colData,\n };\n // Regular column, no Pin\n if (!regularColumn.pin) {\n res.columns.rgCol.push(regularColumn);\n // Pin\n } else {\n res.columns[regularColumn.pin].push(regularColumn);\n }\n if (regularColumn.order) {\n res.sort[regularColumn.prop] = regularColumn;\n }\n // it's possible that some columns have same prop, but better to avoid it\n if (!res.columnByProp[regularColumn.prop]) {\n res.columnByProp[regularColumn.prop] = [];\n }\n res.columnByProp[regularColumn.prop].push(regularColumn);\n\n // trigger setup hook if present\n regularColumn.beforeSetup && regularColumn.beforeSetup(regularColumn);\n return res;\n },\n collection,\n );\n}\n\nexport function gatherGroup<T extends ColumnCollection>(\n res: T,\n colData: ColumnGrouping,\n collection: T,\n level = 0,\n): T {\n // group template\n const group: ColumnGroup = {\n ...colData,\n level,\n ids: [],\n };\n\n // check columns for update\n for (let k in collection.columns) {\n const key = k as keyof ColumnCollection['columns'];\n const resultItem = res.columns[key];\n const collectionItem = collection.columns[key];\n\n // if column data\n if (isArray(resultItem) && isArray(collectionItem)) {\n // fill columns\n resultItem.push(...collectionItem);\n\n // fill grouping\n if (collectionItem.length) {\n res.columnGrouping[key].push({\n ...group,\n ids: collectionItem.map(item => item.prop),\n });\n }\n }\n }\n // merge column groupings\n for (let k in collection.columnGrouping) {\n const key = k as DimensionCols;\n const collectionItem = collection.columnGrouping[key];\n res.columnGrouping[key].push(...collectionItem);\n }\n res.maxLevel = Math.max(res.maxLevel, collection.maxLevel);\n res.sort = { ...res.sort, ...collection.sort };\n return res;\n}\n\nfunction findColumn(\n columns: ColumnData,\n prop: ColumnProp,\n): ColumnRegular | undefined {\n for (const c of columns) {\n if (isColGrouping(c)) {\n const found = findColumn(c.children, prop);\n if (found) {\n return found;\n }\n } else if (c.prop === prop) {\n return c;\n }\n }\n return undefined;\n}\n\nexport function getColumnByProp(\n columns: ColumnData,\n prop: ColumnProp,\n): ColumnRegular | undefined {\n return findColumn(columns, prop);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["trimmedPlugin","store","trimmedSize","setTrimmed","sizes","trimmed","newSize","Object","assign","index","v","entries","i","setDimensionSize","set","key","val","trim","get","realSizePlugin","k","realSize","count","setStore","initialBase","indexes","positionIndexToItem","indexToItem","positionIndexes","initialState","originItemSize","DimensionStore","constructor","this","createStore","use","getCurrentState","state","keys","reduce","r","data","dispose","drop","dimensionData","calculateDimensionData","rowTypes","columnTypes","isRowType","type","indexOf","BasePlugin","revogrid","providers","h","subscriptions","addEventListener","eventName","callback","watch","prop","immediate","nativeValueDesc","getOwnPropertyDescriptor","prototype","defineProperty","keepDefault","_a","call","value","removeEventListener","emit","detail","event","CustomEvent","cancelable","dispatchEvent","clearSubscriptions","destroy","getColumnType","rgCol","pin","getColumnSizes","cols","res","c","size","isColGrouping","colData","children","getColumns","columns","level","types","collection","colPinStart","colPinEnd","columnByProp","columnGrouping","maxLevel","sort","gatherGroup","regularColumn","columnType","push","order","beforeSetup","group","ids","resultItem","collectionItem","isArray","length","map","item","Math","max","findColumn","found","undefined","getColumnByProp"],"sources":["src/store/dimension/dimension.store.ts","src/store/index.ts","src/plugins/base.plugin.ts","src/utils/column.utils.ts"],"sourcesContent":["/**\n * Storing pre-calculated\n * Dimension information and sizes\n */\nimport reduce from 'lodash/reduce';\nimport { createStore } from '@stencil/store';\n\nimport { setStore, Observable, PluginSubscribe } from '../../utils/store.utils';\nimport { calculateDimensionData } from './dimension.helpers';\nimport {\n DimensionCalc,\n DimensionSettingsState,\n ViewSettingSizeProp,\n MultiDimensionType,\n} from '@type';\n\nexport type DimensionStoreCollection = {\n [T in MultiDimensionType]: DimensionStore;\n};\n\ntype Item = keyof DimensionSettingsState;\n\nconst trimmedPlugin = (\n store: DimensionStore,\n): PluginSubscribe<DimensionSettingsState> => {\n let trimmedSize: DimensionSettingsState['sizes'] = {};\n\n const setTrimmed = (\n sizes: DimensionSettingsState['sizes'],\n trimmed: DimensionSettingsState['trimmed'],\n ) => {\n const newSize: DimensionSettingsState['sizes'] = { ...sizes };\n trimmedSize = {};\n for (const [index, v] of Object.entries(trimmed)) {\n const i = index as keyof DimensionSettingsState['sizes'];\n if (v && newSize[i]) {\n trimmedSize[i] = newSize[i];\n delete newSize[i];\n }\n }\n store.setDimensionSize(newSize);\n };\n return {\n set(key, val) {\n switch (key) {\n case 'trimmed':\n const trim = val as DimensionSettingsState['trimmed'];\n const sizes = store.store.get('sizes');\n // recover trimmed, apply new trim\n setTrimmed({ ...sizes, ...trimmedSize }, trim);\n break;\n }\n },\n };\n};\n\nconst realSizePlugin = (\n store: DimensionStore,\n): PluginSubscribe<DimensionSettingsState> => {\n return {\n set(k) {\n switch (k) {\n case 'count':\n case 'sizes':\n case 'originItemSize':\n let realSize = 0;\n const count = store.store.get('count');\n for (let i = 0; i < count; i++) {\n realSize +=\n store.store.get('sizes')[i] || store.store.get('originItemSize');\n }\n store.setStore({ realSize });\n }\n },\n };\n};\n\nfunction initialBase(): DimensionCalc {\n return {\n indexes: [],\n count: 0,\n\n // plugin support\n trimmed: {},\n\n // size operations, this provider stores only changed sizes, not all of them\n // same as indexes but for sizes and positions\n // item index to size\n sizes: {},\n // order in indexes[] to coordinate\n positionIndexToItem: {},\n // initial element to coordinate ^\n indexToItem: {},\n positionIndexes: [],\n };\n}\n\nfunction initialState(): DimensionSettingsState {\n return {\n ...initialBase(),\n // size which all items can take\n realSize: 0,\n\n // initial item size if it wasn't changed\n originItemSize: 0,\n };\n}\n\nexport class DimensionStore {\n readonly store: Observable<DimensionSettingsState>;\n constructor() {\n this.store = createStore(initialState());\n this.store.use(trimmedPlugin(this));\n this.store.use(realSizePlugin(this));\n }\n\n getCurrentState(): DimensionSettingsState {\n const state = initialState();\n const keys = Object.keys(state);\n return reduce(\n keys,\n (r: DimensionSettingsState, k: Item) => {\n const data = this.store.get(k);\n r[k] = data as never;\n return r;\n },\n state,\n );\n }\n\n dispose() {\n setStore(this.store, initialState());\n }\n\n setStore<T extends Record<string, any>>(data: Partial<T>) {\n setStore(this.store, data);\n }\n\n drop() {\n setStore(this.store, initialBase());\n }\n\n /**\n * Set custom dimension sizes and overwrite old\n * Generates new indexes based on sizes\n * @param sizes - sizes to set\n */\n setDimensionSize(sizes: ViewSettingSizeProp) {\n const dimensionData = calculateDimensionData(\n this.store.get('originItemSize'),\n sizes,\n );\n setStore(this.store, dimensionData);\n }\n}\n","import type { DimensionCols, DimensionRows } from '@type';\n\nexport * from './dataSource';\nexport * from './dimension';\nexport * from './selection';\nexport * from './vp';\n\nexport const rowTypes: DimensionRows[] = ['rowPinStart', 'rgRow', 'rowPinEnd'];\nexport const columnTypes: DimensionCols[] = [\n 'colPinStart',\n 'rgCol',\n 'colPinEnd',\n];\n\nexport function isRowType(type: DimensionRows | any): type is DimensionRows {\n return rowTypes.indexOf(type) > -1;\n}\n","import { h } from '@stencil/core';\nimport { PluginProviders, PluginBaseComponent } from '..';\n\ntype WatchConfig = { immediate: boolean };\n\n/**\n * Base layer for plugins\n * Provide minimal starting core for plugins to work\n * Extend this class to create plugin\n */\nexport class BasePlugin implements PluginBaseComponent {\n readonly h = h;\n readonly subscriptions: Record<string, (...args: any[]) => void> = {};\n constructor(public revogrid: HTMLRevoGridElement, public providers: PluginProviders) {}\n /**\n *\n * @param eventName - event name to subscribe to in revo-grid component (e.g. 'beforeheaderclick')\n * @param callback - callback function for event\n */\n addEventListener<T = any>(\n eventName: string,\n callback: (e: CustomEvent<T>) => void,\n ) {\n this.revogrid.addEventListener(eventName, callback);\n this.subscriptions[eventName] = callback;\n }\n\n /**\n * Subscribe to property change in revo-grid component\n * You can return false in callback to prevent default value set\n *\n * @param prop - property name\n * @param callback - callback function\n * @param immediate - trigger callback immediately with current value\n */\n watch<T extends any>(\n prop: string,\n callback: (arg: T) => boolean | void,\n { immediate }: Partial<WatchConfig> = { immediate: false },\n ) {\n const nativeValueDesc =\n Object.getOwnPropertyDescriptor(this.revogrid, prop) ||\n Object.getOwnPropertyDescriptor(this.revogrid.constructor.prototype, prop);\n\n // Overwrite property descriptor for this instance\n Object.defineProperty(this.revogrid, prop, {\n set(val: T) {\n const keepDefault = callback(val);\n if (keepDefault === false) {\n return;\n }\n // Continue with native behavior\n return nativeValueDesc?.set?.call(this, val);\n },\n get() {\n // Continue with native behavior\n return nativeValueDesc?.get?.call(this);\n },\n });\n if (immediate) {\n callback(nativeValueDesc?.value);\n }\n }\n\n /**\n * Remove event listener\n * @param eventName\n */\n removeEventListener(eventName: string) {\n this.revogrid.removeEventListener(eventName, this.subscriptions[eventName]);\n delete this.subscriptions[eventName];\n }\n\n /**\n * Emit event from revo-grid component\n * Event can be cancelled by calling event.preventDefault() in callback\n */\n emit<T = any>(eventName: string, detail?: T) {\n const event = new CustomEvent<T>(eventName, { detail, cancelable: true });\n this.revogrid.dispatchEvent(event);\n return event;\n }\n\n /**\n * Clear all subscriptions\n */\n clearSubscriptions() {\n for (let type in this.subscriptions) {\n this.removeEventListener(type);\n }\n }\n\n /**\n * Destroy plugin and clear all subscriptions\n */\n destroy() {\n this.clearSubscriptions();\n }\n}\n\nexport type GridPlugin = (typeof BasePlugin);\n","import isArray from 'lodash/isArray';\nimport reduce from 'lodash/reduce';\n\nimport {\n ColumnData,\n ColumnGrouping,\n ColumnProp,\n ColumnRegular,\n ColumnTypes,\n DimensionCols,\n ViewSettingSizeProp,\n} from '@type';\nimport { Group as StoreGroup } from '@store';\n\nexport type ColumnItems = Record<DimensionCols, ColumnRegular[]>;\nexport interface ColumnGroup extends StoreGroup {\n level: number;\n}\nexport type ColumnGroupingCollection = Record<DimensionCols, ColumnGroup[]>;\n\n/**\n * Column collection definition.\n * Used to access indexed data for columns.\n * Can be accessed via different events.\n */\nexport type ColumnCollection = {\n /**\n * Columns as they are in stores\n */\n columns: Record<DimensionCols, ColumnRegular[]>;\n /**\n * Columns indexed by prop for quick access, it's possible to have multiple columns with same prop but not recommended\n */\n columnByProp: Record<ColumnProp, ColumnRegular[]>;\n /**\n * Grouped columns\n */\n columnGrouping: ColumnGroupingCollection;\n /**\n * Max level of grouping\n */\n maxLevel: number;\n /**\n * Sorting\n */\n sort: Record<ColumnProp, ColumnRegular>;\n};\n\nexport function getColumnType(rgCol: ColumnRegular): DimensionCols {\n if (rgCol.pin) {\n return rgCol.pin;\n }\n return 'rgCol';\n}\n\nexport function getColumnSizes(cols: ColumnRegular[]): ViewSettingSizeProp {\n const res: ViewSettingSizeProp = {};\n for (const [i, c] of cols.entries()) {\n if (c.size) {\n res[i] = c.size;\n }\n }\n return res;\n}\n\n\n/**\n * Check if column is grouping column\n */\nexport function isColGrouping(\n colData: ColumnGrouping | ColumnRegular,\n): colData is ColumnGrouping {\n return !!(colData as ColumnGrouping).children;\n}\n\n/**\n * This function is used to create a collection of columns.\n */\nexport function getColumns(\n columns: ColumnData,\n level = 0,\n types?: ColumnTypes,\n): ColumnCollection {\n const collection: ColumnCollection = {\n // columns as they are in stores per type\n columns: {\n rgCol: [],\n colPinStart: [],\n colPinEnd: [],\n },\n // columns indexed by prop for quick access\n columnByProp: {},\n // column grouping\n columnGrouping: {\n rgCol: [],\n colPinStart: [],\n colPinEnd: [],\n },\n // max depth level for column grouping\n maxLevel: level,\n // sorting\n sort: {},\n };\n\n return reduce(\n columns,\n (res: ColumnCollection, colData: ColumnGrouping | ColumnRegular) => {\n // Grouped column\n if (isColGrouping(colData)) {\n return gatherGroup(\n res,\n colData,\n getColumns(colData.children, level + 1, types),\n level,\n );\n }\n // Regular column\n const regularColumn = {\n ...(colData.columnType && types && types[colData.columnType]),\n ...colData,\n };\n // Regular column, no Pin\n if (!regularColumn.pin) {\n res.columns.rgCol.push(regularColumn);\n // Pin\n } else {\n res.columns[regularColumn.pin].push(regularColumn);\n }\n if (regularColumn.order) {\n res.sort[regularColumn.prop] = regularColumn;\n }\n // it's possible that some columns have same prop, but better to avoid it\n if (!res.columnByProp[regularColumn.prop]) {\n res.columnByProp[regularColumn.prop] = [];\n }\n res.columnByProp[regularColumn.prop].push(regularColumn);\n\n // trigger setup hook if present\n regularColumn.beforeSetup && regularColumn.beforeSetup(regularColumn);\n return res;\n },\n collection,\n );\n}\n\nexport function gatherGroup<T extends ColumnCollection>(\n res: T,\n colData: ColumnGrouping,\n collection: T,\n level = 0,\n): T {\n // group template\n const group: ColumnGroup = {\n ...colData,\n level,\n ids: [],\n };\n\n // check columns for update\n for (let k in collection.columns) {\n const key = k as keyof ColumnCollection['columns'];\n const resultItem = res.columns[key];\n const collectionItem = collection.columns[key];\n\n // if column data\n if (isArray(resultItem) && isArray(collectionItem)) {\n // fill columns\n resultItem.push(...collectionItem);\n\n // fill grouping\n if (collectionItem.length) {\n res.columnGrouping[key].push({\n ...group,\n ids: collectionItem.map(item => item.prop),\n });\n }\n }\n }\n // merge column groupings\n for (let k in collection.columnGrouping) {\n const key = k as DimensionCols;\n const collectionItem = collection.columnGrouping[key];\n res.columnGrouping[key].push(...collectionItem);\n }\n res.maxLevel = Math.max(res.maxLevel, collection.maxLevel);\n res.sort = { ...res.sort, ...collection.sort };\n return res;\n}\n\nfunction findColumn(\n columns: ColumnData,\n prop: ColumnProp,\n): ColumnRegular | undefined {\n for (const c of columns) {\n if (isColGrouping(c)) {\n const found = findColumn(c.children, prop);\n if (found) {\n return found;\n }\n } else if (c.prop === prop) {\n return c;\n }\n }\n return undefined;\n}\n\nexport function getColumnByProp(\n columns: ColumnData,\n prop: ColumnProp,\n): ColumnRegular | undefined {\n return findColumn(columns, prop);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Built by Revolist OU ❤️
3
+ */
4
+ import{L as o}from"./index-f65def08.js";function n(n){return!!(n===null||n===void 0?void 0:n.closest(`.${o}`))}function t(o){return typeof o==="function"&&typeof o.prototype==="object"}export{t as a,n as i};
5
+ //# sourceMappingURL=edit.utils-ca303802.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isEditInput","el","closest","EDIT_INPUT_WR","isEditorCtrConstructible","editor","prototype"],"sources":["src/components/editors/edit.utils.ts"],"sourcesContent":["import { EDIT_INPUT_WR } from '../../utils/consts';\nimport {\n EditorCtrConstructible,\n} from '@type';\n// is edit input\nexport function isEditInput(el?: HTMLElement) {\n return !!el?.closest(`.${EDIT_INPUT_WR}`);\n}\n\n\n// Type guard for EditorCtrConstructible\nexport function isEditorCtrConstructible(\n editor: any,\n): editor is EditorCtrConstructible {\n return typeof editor === 'function' && typeof editor.prototype === 'object';\n}\n"],"mappings":";;;iDAKgBA,EAAYC,GAC1B,SAASA,IAAE,MAAFA,SAAE,SAAFA,EAAIC,QAAQ,IAAIC,KAC3B,C,SAIgBC,EACdC,GAEA,cAAcA,IAAW,mBAAqBA,EAAOC,YAAc,QACrE,Q","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Built by Revolist OU ❤️
3
+ */
4
+ function n(n){return!!n.touches}function r(n,r){if(r&&n){if(!(n.target instanceof Element&&n.target.classList.contains(r))){return false}}return true}function t(t,e,u){if(n(t)){if(t.touches.length>0){const n=t.touches[0];if(!r(n,u)){return null}return n[e]||0}return null}return t[e]||0}export{t as g,r as v};
5
+ //# sourceMappingURL=events-cf0893a3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["isTouch","e","touches","verifyTouchTarget","touchEvent","focusClass","target","Element","classList","contains","getPropertyFromEvent","prop","length"],"sources":["src/utils/events.ts"],"sourcesContent":["function isTouch(e: MouseEvent | TouchEvent): e is TouchEvent {\n return !!(e as TouchEvent).touches;\n}\n\nexport function verifyTouchTarget(touchEvent?: Touch, focusClass?: string) {\n if (focusClass && touchEvent) {\n if (!(touchEvent.target instanceof Element && touchEvent.target.classList.contains(focusClass))) { \n return false;\n }\n }\n return true;\n}\n\n\n/**\n * Function to get the value of a specific property from a MouseEvent or TouchEvent object.\n */\nexport function getPropertyFromEvent(\n e: MouseEvent | TouchEvent,\n prop: keyof Pick<Touch, 'clientX' | 'clientY' | 'screenX' | 'screenY'>,\n focusClass?: string // for touch events\n): number | null {\n // Check if the event is a touch event\n if (isTouch(e)) {\n // If the event has touches, get the first touch\n if (e.touches.length > 0) {\n const touchEvent = e.touches[0];\n // Check if the target of the touch event is the specified element\n if (!verifyTouchTarget(touchEvent, focusClass)) {\n // If not, return null\n return null;\n }\n // Get the value of the specified property from the touch event and return it\n return (touchEvent[prop] as number) || 0;\n }\n // If there are no touches, return null\n return null;\n }\n // If the event is not a touch event, get the value of the specified property from the event and return it\n return e[prop] || 0;\n}\n"],"mappings":";;;AAAA,SAASA,EAAQC,GACf,QAAUA,EAAiBC,OAC7B,C,SAEgBC,EAAkBC,EAAoBC,GACpD,GAAIA,GAAcD,EAAY,CAC5B,KAAMA,EAAWE,kBAAkBC,SAAWH,EAAWE,OAAOE,UAAUC,SAASJ,IAAc,CAC/F,OAAO,K,EAGX,OAAO,IACT,C,SAMgBK,EACdT,EACAU,EACAN,GAGA,GAAIL,EAAQC,GAAI,CAEd,GAAIA,EAAEC,QAAQU,OAAS,EAAG,CACxB,MAAMR,EAAaH,EAAEC,QAAQ,GAE7B,IAAKC,EAAkBC,EAAYC,GAAa,CAE9C,OAAO,I,CAGT,OAAQD,EAAWO,IAAoB,C,CAGzC,OAAO,I,CAGT,OAAOV,EAAEU,IAAS,CACpB,Q","ignoreList":[]}
@@ -1,5 +1,5 @@
1
1
  /*!
2
2
  * Built by Revolist OU ❤️
3
3
  */
4
- import{h as i}from"./index-a61f225b.js";import{d as t}from"./dispatcher-ea08404f.js";import{l as s}from"./column.service-cfc1149b.js";var e;(function(i){i["start"]="resize:start";i["move"]="resize:move";i["end"]="resize:end"})(e||(e={}));const h={"resizable-r":{bit:1,cursor:"ew-resize"},"resizable-rb":{bit:3,cursor:"se-resize"},"resizable-b":{bit:2,cursor:"s-resize"},"resizable-lb":{bit:6,cursor:"sw-resize"},"resizable-l":{bit:4,cursor:"w-resize"},"resizable-lt":{bit:12,cursor:"nw-resize"},"resizable-t":{bit:8,cursor:"n-resize"},"resizable-rt":{bit:9,cursor:"ne-resize"}};const o={l:1,t:2,w:4,h:8};const n=i=>Object.assign(Object.assign({},i),{fitParent:i.fitParent||false,active:i.active||[],disableAttributes:i.disableAttributes||[],minWidth:i.minWidth||0,minHeight:i.minHeight||0});class l{constructor(i,t){var s,e;this.initialProps=i;this.$event=t;this.mouseX=0;this.mouseY=0;this.width=0;this.height=0;this.changeX=0;this.changeY=0;this.disableCalcMap=15;this.props=n(i);this.mouseMoveFunc=this.handleMove.bind(this);this.mouseUpFunc=this.handleUp.bind(this);this.minW=this.props.minWidth;this.minH=this.props.minHeight;this.maxW=(s=this.props.maxWidth)!==null&&s!==void 0?s:0;this.maxH=(e=this.props.maxHeight)!==null&&e!==void 0?e:0;this.parent={width:0,height:0};this.resizeState=0}set(i){this.$el=i;this.props.disableAttributes.forEach((i=>{switch(i){case"l":this.disableCalcMap&=~o.l;break;case"t":this.disableCalcMap&=~o.t;break;case"w":this.disableCalcMap&=~o.w;break;case"h":this.disableCalcMap&=~o.h}}))}emitEvent(i,t){var s;if(!this.$event){return}const e=(s=this.activeResizer)===null||s===void 0?void 0:s.classList.contains("resizable-l");this.$event(Object.assign({eventName:i,width:this.width+this.changeX*(e?-1:1),height:this.height+this.changeY,changedX:this.changeX,changedY:this.changeY},t))}static isTouchEvent(i){var t;const s=i;return((t=s.touches)===null||t===void 0?void 0:t.length)>=0}handleMove(i){var t;if(!this.resizeState){return}let s,n;if(l.isTouchEvent(i)){s=i.touches[0].clientY;n=i.touches[0].clientX}else{s=i.clientY;n=i.clientX}let r=this.resizeState&h["resizable-r"].bit||this.resizeState&h["resizable-l"].bit;let c=this.resizeState&h["resizable-t"].bit||this.resizeState&h["resizable-b"].bit;if(c&&this.disableCalcMap&o.h){let i=s-this.mouseY;let t=this.changeY+i;const e=this.height+t;if(e<this.minH){t=-(this.height-this.minH)}if(this.maxH&&e>this.maxH){t=this.maxH-this.height}this.changeY=t;this.mouseY=s;if(this.activeResizer){this.activeResizer.style.bottom=`${-this.changeY}px`}}if(r&&this.disableCalcMap&o.w){const i=(t=this.activeResizer)===null||t===void 0?void 0:t.classList.contains("resizable-l");let s=n-this.mouseX;let e=this.changeX+s;const h=this.width+e*(i?-1:1);if(h<this.minW){e=-(this.width-this.minW)}if(this.maxW&&h>this.maxW){e=this.maxW-this.width}this.changeX=e;this.mouseX=n;if(this.activeResizer){if(!i){this.activeResizer.style.right=`${-this.changeX}px`}else{this.activeResizer.style.left=`${this.changeX}px`}}}this.emitEvent(e.move)}handleDown(i){if(i.defaultPrevented){return}i.preventDefault();this.dropInitial();for(let t in h){const s=i.target;if(this.$el.contains(s)&&(s===null||s===void 0?void 0:s.classList.contains(t))){document.body.style.cursor=h[t].cursor;if(l.isTouchEvent(i)){this.setInitials(i.touches[0],s)}else{i.preventDefault&&i.preventDefault();this.setInitials(i,s)}this.resizeState=h[t].bit;const o=e.start;this.emitEvent(o);break}}this.bindMove()}handleUp(i){i.preventDefault();if(this.resizeState!==0){this.resizeState=0;document.body.style.cursor="";const i=e.end;this.emitEvent(i)}this.dropInitial();this.unbindMove()}setInitials({clientX:i,clientY:t},s){var e,h,n,l;const r=getComputedStyle(this.$el);this.$el.classList.add("active");this.activeResizer=s;if(this.disableCalcMap&o.w){this.mouseX=i;this.width=this.$el.clientWidth;this.parent.width=(h=(e=this.$el.parentElement)===null||e===void 0?void 0:e.clientWidth)!==null&&h!==void 0?h:0;const t=parseFloat(r.paddingLeft)+parseFloat(r.paddingRight);this.minW=Math.max(t,this.initialProps.minWidth||0);if(this.initialProps.maxWidth){this.maxW=Math.max(this.width,this.initialProps.maxWidth)}}if(this.disableCalcMap&o.h){this.mouseY=t;this.height=this.$el.clientHeight;this.parent.height=(l=(n=this.$el.parentElement)===null||n===void 0?void 0:n.clientHeight)!==null&&l!==void 0?l:0;const i=parseFloat(r.paddingTop)+parseFloat(r.paddingBottom);this.minH=Math.max(i,this.initialProps.minHeight||0);if(this.initialProps.maxHeight){this.maxH=Math.max(this.height,this.initialProps.maxHeight)}}}dropInitial(){this.changeX=this.changeY=this.minW=this.minH;this.width=this.height=0;if(this.activeResizer){this.activeResizer.removeAttribute("style")}this.$el.classList.remove("active");this.activeResizer=undefined}bindMove(){document.documentElement.addEventListener("mouseup",this.mouseUpFunc,true);document.documentElement.addEventListener("touchend",this.mouseUpFunc,true);document.documentElement.addEventListener("mousemove",this.mouseMoveFunc,true);document.documentElement.addEventListener("touchmove",this.mouseMoveFunc,true);document.documentElement.addEventListener("mouseleave",this.mouseUpFunc)}unbindMove(){document.documentElement.removeEventListener("mouseup",this.mouseUpFunc,true);document.documentElement.removeEventListener("touchend",this.mouseUpFunc,true);document.documentElement.removeEventListener("mousemove",this.mouseMoveFunc,true);document.documentElement.removeEventListener("touchmove",this.mouseMoveFunc,true);document.documentElement.removeEventListener("mouseleave",this.mouseUpFunc)}}const r=(t,s)=>{const h=[];const o=t.canResize&&new l(t,(i=>{if(i.eventName===e.end){t.onResize&&t.onResize(i)}}))||null;if(t.canResize){if(t.active){for(let s in t.active){h.push(i("div",{onClick:i=>i.preventDefault(),onDblClick:i=>{var s;i.preventDefault();(s=t.onDoubleClick)===null||s===void 0?void 0:s.call(t,i)},onMouseDown:i=>o===null||o===void 0?void 0:o.handleDown(i),onTouchStart:i=>o===null||o===void 0?void 0:o.handleDown(i),class:`resizable resizable-${t.active[s]}`}))}}}else{if(t.active){for(let s in t.active){h.push(i("div",{onClick:i=>i.preventDefault(),onTouchStart:i=>i.preventDefault(),onDblClick:i=>{var s;i.preventDefault();(s=t.onDoubleClick)===null||s===void 0?void 0:s.call(t,i)},class:`no-resize resizable resizable-${t.active[s]}`}))}}}return i("div",Object.assign({},t,{ref:i=>i&&(o===null||o===void 0?void 0:o.set(i))}),s,h)};const c="columnclick";const a=({data:e,props:h,additionalData:o},n)=>{let l=(e===null||e===void 0?void 0:e.name)||"";let a=h;if(e===null||e===void 0?void 0:e.columnTemplate){l=e.columnTemplate(i,e,o)}if(e===null||e===void 0?void 0:e.columnProperties){const i=e.columnProperties(e);if(i&&typeof i==="object"){a=s(h,i)}}return i(r,Object.assign({},a,{onMouseDown:i=>{t(i.currentTarget,c,{data:e,event:i})}}),i("div",{class:"header-content"},l),n)};export{a as H,c as O};
5
- //# sourceMappingURL=header-cell-renderer-6f8eb067.js.map
4
+ import{h as i}from"./index-a61f225b.js";import{d as t}from"./dispatcher-ea08404f.js";import{l as s}from"./column.service-af0694c5.js";var e;(function(i){i["start"]="resize:start";i["move"]="resize:move";i["end"]="resize:end"})(e||(e={}));const h={"resizable-r":{bit:1,cursor:"ew-resize"},"resizable-rb":{bit:3,cursor:"se-resize"},"resizable-b":{bit:2,cursor:"s-resize"},"resizable-lb":{bit:6,cursor:"sw-resize"},"resizable-l":{bit:4,cursor:"w-resize"},"resizable-lt":{bit:12,cursor:"nw-resize"},"resizable-t":{bit:8,cursor:"n-resize"},"resizable-rt":{bit:9,cursor:"ne-resize"}};const o={l:1,t:2,w:4,h:8};const n=i=>Object.assign(Object.assign({},i),{fitParent:i.fitParent||false,active:i.active||[],disableAttributes:i.disableAttributes||[],minWidth:i.minWidth||0,minHeight:i.minHeight||0});class l{constructor(i,t){var s,e;this.initialProps=i;this.$event=t;this.mouseX=0;this.mouseY=0;this.width=0;this.height=0;this.changeX=0;this.changeY=0;this.disableCalcMap=15;this.props=n(i);this.mouseMoveFunc=this.handleMove.bind(this);this.mouseUpFunc=this.handleUp.bind(this);this.minW=this.props.minWidth;this.minH=this.props.minHeight;this.maxW=(s=this.props.maxWidth)!==null&&s!==void 0?s:0;this.maxH=(e=this.props.maxHeight)!==null&&e!==void 0?e:0;this.parent={width:0,height:0};this.resizeState=0}set(i){this.$el=i;this.props.disableAttributes.forEach((i=>{switch(i){case"l":this.disableCalcMap&=~o.l;break;case"t":this.disableCalcMap&=~o.t;break;case"w":this.disableCalcMap&=~o.w;break;case"h":this.disableCalcMap&=~o.h}}))}emitEvent(i,t){var s;if(!this.$event){return}const e=(s=this.activeResizer)===null||s===void 0?void 0:s.classList.contains("resizable-l");this.$event(Object.assign({eventName:i,width:this.width+this.changeX*(e?-1:1),height:this.height+this.changeY,changedX:this.changeX,changedY:this.changeY},t))}static isTouchEvent(i){var t;const s=i;return((t=s.touches)===null||t===void 0?void 0:t.length)>=0}handleMove(i){var t;if(!this.resizeState){return}let s,n;if(l.isTouchEvent(i)){s=i.touches[0].clientY;n=i.touches[0].clientX}else{s=i.clientY;n=i.clientX}let r=this.resizeState&h["resizable-r"].bit||this.resizeState&h["resizable-l"].bit;let c=this.resizeState&h["resizable-t"].bit||this.resizeState&h["resizable-b"].bit;if(c&&this.disableCalcMap&o.h){let i=s-this.mouseY;let t=this.changeY+i;const e=this.height+t;if(e<this.minH){t=-(this.height-this.minH)}if(this.maxH&&e>this.maxH){t=this.maxH-this.height}this.changeY=t;this.mouseY=s;if(this.activeResizer){this.activeResizer.style.bottom=`${-this.changeY}px`}}if(r&&this.disableCalcMap&o.w){const i=(t=this.activeResizer)===null||t===void 0?void 0:t.classList.contains("resizable-l");let s=n-this.mouseX;let e=this.changeX+s;const h=this.width+e*(i?-1:1);if(h<this.minW){e=-(this.width-this.minW)}if(this.maxW&&h>this.maxW){e=this.maxW-this.width}this.changeX=e;this.mouseX=n;if(this.activeResizer){if(!i){this.activeResizer.style.right=`${-this.changeX}px`}else{this.activeResizer.style.left=`${this.changeX}px`}}}this.emitEvent(e.move)}handleDown(i){if(i.defaultPrevented){return}i.preventDefault();this.dropInitial();for(let t in h){const s=i.target;if(this.$el.contains(s)&&(s===null||s===void 0?void 0:s.classList.contains(t))){document.body.style.cursor=h[t].cursor;if(l.isTouchEvent(i)){this.setInitials(i.touches[0],s)}else{i.preventDefault&&i.preventDefault();this.setInitials(i,s)}this.resizeState=h[t].bit;const o=e.start;this.emitEvent(o);break}}this.bindMove()}handleUp(i){i.preventDefault();if(this.resizeState!==0){this.resizeState=0;document.body.style.cursor="";const i=e.end;this.emitEvent(i)}this.dropInitial();this.unbindMove()}setInitials({clientX:i,clientY:t},s){var e,h,n,l;const r=getComputedStyle(this.$el);this.$el.classList.add("active");this.activeResizer=s;if(this.disableCalcMap&o.w){this.mouseX=i;this.width=this.$el.clientWidth;this.parent.width=(h=(e=this.$el.parentElement)===null||e===void 0?void 0:e.clientWidth)!==null&&h!==void 0?h:0;const t=parseFloat(r.paddingLeft)+parseFloat(r.paddingRight);this.minW=Math.max(t,this.initialProps.minWidth||0);if(this.initialProps.maxWidth){this.maxW=Math.max(this.width,this.initialProps.maxWidth)}}if(this.disableCalcMap&o.h){this.mouseY=t;this.height=this.$el.clientHeight;this.parent.height=(l=(n=this.$el.parentElement)===null||n===void 0?void 0:n.clientHeight)!==null&&l!==void 0?l:0;const i=parseFloat(r.paddingTop)+parseFloat(r.paddingBottom);this.minH=Math.max(i,this.initialProps.minHeight||0);if(this.initialProps.maxHeight){this.maxH=Math.max(this.height,this.initialProps.maxHeight)}}}dropInitial(){this.changeX=this.changeY=this.minW=this.minH;this.width=this.height=0;if(this.activeResizer){this.activeResizer.removeAttribute("style")}this.$el.classList.remove("active");this.activeResizer=undefined}bindMove(){document.documentElement.addEventListener("mouseup",this.mouseUpFunc,true);document.documentElement.addEventListener("touchend",this.mouseUpFunc,true);document.documentElement.addEventListener("mousemove",this.mouseMoveFunc,true);document.documentElement.addEventListener("touchmove",this.mouseMoveFunc,true);document.documentElement.addEventListener("mouseleave",this.mouseUpFunc)}unbindMove(){document.documentElement.removeEventListener("mouseup",this.mouseUpFunc,true);document.documentElement.removeEventListener("touchend",this.mouseUpFunc,true);document.documentElement.removeEventListener("mousemove",this.mouseMoveFunc,true);document.documentElement.removeEventListener("touchmove",this.mouseMoveFunc,true);document.documentElement.removeEventListener("mouseleave",this.mouseUpFunc)}}const r=(t,s)=>{const h=[];const o=t.canResize&&new l(t,(i=>{if(i.eventName===e.end){t.onResize&&t.onResize(i)}}))||null;if(t.canResize){if(t.active){for(let s in t.active){h.push(i("div",{onClick:i=>i.preventDefault(),onDblClick:i=>{var s;i.preventDefault();(s=t.onDoubleClick)===null||s===void 0?void 0:s.call(t,i)},onMouseDown:i=>o===null||o===void 0?void 0:o.handleDown(i),onTouchStart:i=>o===null||o===void 0?void 0:o.handleDown(i),class:`resizable resizable-${t.active[s]}`}))}}}else{if(t.active){for(let s in t.active){h.push(i("div",{onClick:i=>i.preventDefault(),onTouchStart:i=>i.preventDefault(),onDblClick:i=>{var s;i.preventDefault();(s=t.onDoubleClick)===null||s===void 0?void 0:s.call(t,i)},class:`no-resize resizable resizable-${t.active[s]}`}))}}}return i("div",Object.assign({},t,{ref:i=>i&&(o===null||o===void 0?void 0:o.set(i))}),s,h)};const c="columnclick";const a=({data:e,props:h,additionalData:o},n)=>{let l=(e===null||e===void 0?void 0:e.name)||"";let a=h;if(e===null||e===void 0?void 0:e.columnTemplate){l=e.columnTemplate(i,e,o)}if(e===null||e===void 0?void 0:e.columnProperties){const i=e.columnProperties(e);if(i&&typeof i==="object"){a=s(h,i)}}return i(r,Object.assign({},a,{onMouseDown:i=>{t(i.currentTarget,c,{data:e,event:i})}}),i("div",{class:"header-content"},l),n)};export{a as H,c as O};
5
+ //# sourceMappingURL=header-cell-renderer-261317c3.js.map
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Built by Revolist OU ❤️
3
+ */
4
+ import{_ as r,i as n,a as t,b as e,c as a,d as u,e as i,t as o}from"./toNumber-8de324a7.js";import{g as c,f as s}from"./index-a61f225b.js";const v=r=>({set(n,t){if(!f(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 f(r){return r==="proxyItems"}function l(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 d=l;function b(){this.__data__=[];this.size=0}var h=b;function j(r,n){return r===n||r!==r&&n!==n}var p=j;var w=p;function m(r,n){var t=r.length;while(t--){if(w(r[t][0],n)){return t}}return-1}var y=m;var O=y;var g=Array.prototype;var A=g.splice;function _(r){var n=this.__data__,t=O(n,r);if(t<0){return false}var e=n.length-1;if(t==e){n.pop()}else{A.call(n,t,1)}--this.size;return true}var E=_;var M=y;function x(r){var n=this.__data__,t=M(n,r);return t<0?undefined:n[t][1]}var F=x;var I=y;function R(r){return I(this.__data__,r)>-1}var D=R;var T=y;function C(r,n){var t=this.__data__,e=T(t,r);if(e<0){++this.size;t.push([r,n])}else{t[e][1]=n}return this}var S=C;var P=h,k=E,N=F,L=D,U=S;function $(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])}}$.prototype.clear=P;$.prototype["delete"]=k;$.prototype.get=N;$.prototype.has=L;$.prototype.set=U;var W=$;var B=W;function H(){this.__data__=new B;this.size=0}var K=H;function G(r){var n=this.__data__,t=n["delete"](r);this.size=n.size;return t}var V=G;function X(r){return this.__data__.get(r)}var z=X;function q(r){return this.__data__.has(r)}var J=q;var Q=r,Y=n;var Z="[object AsyncFunction]",rr="[object Function]",nr="[object GeneratorFunction]",tr="[object Proxy]";function er(r){if(!Y(r)){return false}var n=Q(r);return n==rr||n==nr||n==Z||n==tr}var ar=er;var ur=t;var ir=ur["__core-js_shared__"];var or=ir;var cr=or;var sr=function(){var r=/[^.]+$/.exec(cr&&cr.keys&&cr.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}();function vr(r){return!!sr&&sr in r}var fr=vr;var lr=Function.prototype;var dr=lr.toString;function br(r){if(r!=null){try{return dr.call(r)}catch(r){}try{return r+""}catch(r){}}return""}var hr=br;var jr=ar,pr=fr,wr=n,mr=hr;var yr=/[\\^$.*+?()[\]{}|]/g;var Or=/^\[object .+?Constructor\]$/;var gr=Function.prototype,Ar=Object.prototype;var _r=gr.toString;var Er=Ar.hasOwnProperty;var Mr=RegExp("^"+_r.call(Er).replace(yr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function xr(r){if(!wr(r)||pr(r)){return false}var n=jr(r)?Mr:Or;return n.test(mr(r))}var Fr=xr;function Ir(r,n){return r==null?undefined:r[n]}var Rr=Ir;var Dr=Fr,Tr=Rr;function Cr(r,n){var t=Tr(r,n);return Dr(t)?t:undefined}var Sr=Cr;var Pr=Sr,kr=t;var Nr=Pr(kr,"Map");var Lr=Nr;var Ur=Sr;var $r=Ur(Object,"create");var Wr=$r;var Br=Wr;function Hr(){this.__data__=Br?Br(null):{};this.size=0}var Kr=Hr;function Gr(r){var n=this.has(r)&&delete this.__data__[r];this.size-=n?1:0;return n}var Vr=Gr;var Xr=Wr;var zr="__lodash_hash_undefined__";var qr=Object.prototype;var Jr=qr.hasOwnProperty;function Qr(r){var n=this.__data__;if(Xr){var t=n[r];return t===zr?undefined:t}return Jr.call(n,r)?n[r]:undefined}var Yr=Qr;var Zr=Wr;var rn=Object.prototype;var nn=rn.hasOwnProperty;function tn(r){var n=this.__data__;return Zr?n[r]!==undefined:nn.call(n,r)}var en=tn;var an=Wr;var un="__lodash_hash_undefined__";function on(r,n){var t=this.__data__;this.size+=this.has(r)?0:1;t[r]=an&&n===undefined?un:n;return this}var cn=on;var sn=Kr,vn=Vr,fn=Yr,ln=en,dn=cn;function bn(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])}}bn.prototype.clear=sn;bn.prototype["delete"]=vn;bn.prototype.get=fn;bn.prototype.has=ln;bn.prototype.set=dn;var hn=bn;var jn=hn,pn=W,wn=Lr;function mn(){this.size=0;this.__data__={hash:new jn,map:new(wn||pn),string:new jn}}var yn=mn;function On(r){var n=typeof r;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?r!=="__proto__":r===null}var gn=On;var An=gn;function _n(r,n){var t=r.__data__;return An(n)?t[typeof n=="string"?"string":"hash"]:t.map}var En=_n;var Mn=En;function xn(r){var n=Mn(this,r)["delete"](r);this.size-=n?1:0;return n}var Fn=xn;var In=En;function Rn(r){return In(this,r).get(r)}var Dn=Rn;var Tn=En;function Cn(r){return Tn(this,r).has(r)}var Sn=Cn;var Pn=En;function kn(r,n){var t=Pn(this,r),e=t.size;t.set(r,n);this.size+=t.size==e?0:1;return this}var Nn=kn;var Ln=yn,Un=Fn,$n=Dn,Wn=Sn,Bn=Nn;function Hn(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])}}Hn.prototype.clear=Ln;Hn.prototype["delete"]=Un;Hn.prototype.get=$n;Hn.prototype.has=Wn;Hn.prototype.set=Bn;var Kn=Hn;var Gn=W,Vn=Lr,Xn=Kn;var zn=200;function qn(r,n){var t=this.__data__;if(t instanceof Gn){var e=t.__data__;if(!Vn||e.length<zn-1){e.push([r,n]);this.size=++t.size;return this}t=this.__data__=new Xn(e)}t.set(r,n);this.size=t.size;return this}var Jn=qn;var Qn=W,Yn=K,Zn=V,rt=z,nt=J,tt=Jn;function et(r){var n=this.__data__=new Qn(r);this.size=n.size}et.prototype.clear=Yn;et.prototype["delete"]=Zn;et.prototype.get=rt;et.prototype.has=nt;et.prototype.set=tt;var at=et;var ut="__lodash_hash_undefined__";function it(r){this.__data__.set(r,ut);return this}var ot=it;function ct(r){return this.__data__.has(r)}var st=ct;var vt=Kn,ft=ot,lt=st;function dt(r){var n=-1,t=r==null?0:r.length;this.__data__=new vt;while(++n<t){this.add(r[n])}}dt.prototype.add=dt.prototype.push=ft;dt.prototype.has=lt;var bt=dt;function ht(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 jt=ht;function pt(r,n){return r.has(n)}var wt=pt;var mt=bt,yt=jt,Ot=wt;var gt=1,At=2;function _t(r,n,t,e,a,u){var i=t&gt,o=r.length,c=n.length;if(o!=c&&!(i&&c>o)){return false}var s=u.get(r);var v=u.get(n);if(s&&v){return s==n&&v==r}var f=-1,l=true,d=t&At?new mt:undefined;u.set(r,n);u.set(n,r);while(++f<o){var b=r[f],h=n[f];if(e){var j=i?e(h,b,f,n,r,u):e(b,h,f,r,n,u)}if(j!==undefined){if(j){continue}l=false;break}if(d){if(!yt(n,(function(r,n){if(!Ot(d,n)&&(b===r||a(b,r,t,e,u))){return d.push(n)}}))){l=false;break}}else if(!(b===h||a(b,h,t,e,u))){l=false;break}}u["delete"](r);u["delete"](n);return l}var Et=_t;var Mt=t;var xt=Mt.Uint8Array;var Ft=xt;function It(r){var n=-1,t=Array(r.size);r.forEach((function(r,e){t[++n]=[e,r]}));return t}var Rt=It;function Dt(r){var n=-1,t=Array(r.size);r.forEach((function(r){t[++n]=r}));return t}var Tt=Dt;var Ct=e,St=Ft,Pt=p,kt=Et,Nt=Rt,Lt=Tt;var Ut=1,$t=2;var Wt="[object Boolean]",Bt="[object Date]",Ht="[object Error]",Kt="[object Map]",Gt="[object Number]",Vt="[object RegExp]",Xt="[object Set]",zt="[object String]",qt="[object Symbol]";var Jt="[object ArrayBuffer]",Qt="[object DataView]";var Yt=Ct?Ct.prototype:undefined,Zt=Yt?Yt.valueOf:undefined;function re(r,n,t,e,a,u,i){switch(t){case Qt:if(r.byteLength!=n.byteLength||r.byteOffset!=n.byteOffset){return false}r=r.buffer;n=n.buffer;case Jt:if(r.byteLength!=n.byteLength||!u(new St(r),new St(n))){return false}return true;case Wt:case Bt:case Gt:return Pt(+r,+n);case Ht:return r.name==n.name&&r.message==n.message;case Vt:case zt:return r==n+"";case Kt:var o=Nt;case Xt:var c=e&Ut;o||(o=Lt);if(r.size!=n.size&&!c){return false}var s=i.get(r);if(s){return s==n}e|=$t;i.set(r,n);var v=kt(o(r),o(n),e,a,u,i);i["delete"](r);return v;case qt:if(Zt){return Zt.call(r)==Zt.call(n)}}return false}var ne=re;function te(r,n){var t=-1,e=n.length,a=r.length;while(++t<e){r[a+t]=n[t]}return r}var ee=te;var ae=Array.isArray;var ue=ae;var ie=ee,oe=ue;function ce(r,n,t){var e=n(r);return oe(r)?e:ie(e,t(r))}var se=ce;function ve(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 fe=ve;function le(){return[]}var de=le;var be=fe,he=de;var je=Object.prototype;var pe=je.propertyIsEnumerable;var we=Object.getOwnPropertySymbols;var me=!we?he:function(r){if(r==null){return[]}r=Object(r);return be(we(r),(function(n){return pe.call(r,n)}))};var ye=me;function Oe(r,n){var t=-1,e=Array(r);while(++t<r){e[t]=n(t)}return e}var ge=Oe;var Ae=r,_e=a;var Ee="[object Arguments]";function Me(r){return _e(r)&&Ae(r)==Ee}var xe=Me;var Fe=xe,Ie=a;var Re=Object.prototype;var De=Re.hasOwnProperty;var Te=Re.propertyIsEnumerable;var Ce=Fe(function(){return arguments}())?Fe:function(r){return Ie(r)&&De.call(r,"callee")&&!Te.call(r,"callee")};var Se=Ce;var Pe={exports:{}};function ke(){return false}var Ne=ke;(function(r,n){var e=t,a=Ne;var u=n&&!n.nodeType&&n;var i=u&&"object"=="object"&&r&&!r.nodeType&&r;var o=i&&i.exports===u;var c=o?e.Buffer:undefined;var s=c?c.isBuffer:undefined;var v=s||a;r.exports=v})(Pe,Pe.exports);var Le=9007199254740991;var Ue=/^(?:0|[1-9]\d*)$/;function $e(r,n){var t=typeof r;n=n==null?Le:n;return!!n&&(t=="number"||t!="symbol"&&Ue.test(r))&&(r>-1&&r%1==0&&r<n)}var We=$e;var Be=9007199254740991;function He(r){return typeof r=="number"&&r>-1&&r%1==0&&r<=Be}var Ke=He;var Ge=r,Ve=Ke,Xe=a;var ze="[object Arguments]",qe="[object Array]",Je="[object Boolean]",Qe="[object Date]",Ye="[object Error]",Ze="[object Function]",ra="[object Map]",na="[object Number]",ta="[object Object]",ea="[object RegExp]",aa="[object Set]",ua="[object String]",ia="[object WeakMap]";var oa="[object ArrayBuffer]",ca="[object DataView]",sa="[object Float32Array]",va="[object Float64Array]",fa="[object Int8Array]",la="[object Int16Array]",da="[object Int32Array]",ba="[object Uint8Array]",ha="[object Uint8ClampedArray]",ja="[object Uint16Array]",pa="[object Uint32Array]";var wa={};wa[sa]=wa[va]=wa[fa]=wa[la]=wa[da]=wa[ba]=wa[ha]=wa[ja]=wa[pa]=true;wa[ze]=wa[qe]=wa[oa]=wa[Je]=wa[ca]=wa[Qe]=wa[Ye]=wa[Ze]=wa[ra]=wa[na]=wa[ta]=wa[ea]=wa[aa]=wa[ua]=wa[ia]=false;function ma(r){return Xe(r)&&Ve(r.length)&&!!wa[Ge(r)]}var ya=ma;function Oa(r){return function(n){return r(n)}}var ga=Oa;var Aa={exports:{}};(function(r,n){var t=u;var e=n&&!n.nodeType&&n;var a=e&&"object"=="object"&&r&&!r.nodeType&&r;var i=a&&a.exports===e;var o=i&&t.process;var c=function(){try{var r=a&&a.require&&a.require("util").types;if(r){return r}return o&&o.binding&&o.binding("util")}catch(r){}}();r.exports=c})(Aa,Aa.exports);var _a=ya,Ea=ga,Ma=Aa.exports;var xa=Ma&&Ma.isTypedArray;var Fa=xa?Ea(xa):_a;var Ia=Fa;var Ra=ge,Da=Se,Ta=ue,Ca=Pe.exports,Sa=We,Pa=Ia;var ka=Object.prototype;var Na=ka.hasOwnProperty;function La(r,n){var t=Ta(r),e=!t&&Da(r),a=!t&&!e&&Ca(r),u=!t&&!e&&!a&&Pa(r),i=t||e||a||u,o=i?Ra(r.length,String):[],c=o.length;for(var s in r){if((n||Na.call(r,s))&&!(i&&(s=="length"||a&&(s=="offset"||s=="parent")||u&&(s=="buffer"||s=="byteLength"||s=="byteOffset")||Sa(s,c)))){o.push(s)}}return o}var Ua=La;var $a=Object.prototype;function Wa(r){var n=r&&r.constructor,t=typeof n=="function"&&n.prototype||$a;return r===t}var Ba=Wa;function Ha(r,n){return function(t){return r(n(t))}}var Ka=Ha;var Ga=Ka;var Va=Ga(Object.keys,Object);var Xa=Va;var za=Ba,qa=Xa;var Ja=Object.prototype;var Qa=Ja.hasOwnProperty;function Ya(r){if(!za(r)){return qa(r)}var n=[];for(var t in Object(r)){if(Qa.call(r,t)&&t!="constructor"){n.push(t)}}return n}var Za=Ya;var ru=ar,nu=Ke;function tu(r){return r!=null&&nu(r.length)&&!ru(r)}var eu=tu;var au=Ua,uu=Za,iu=eu;function ou(r){return iu(r)?au(r):uu(r)}var cu=ou;var su=se,vu=ye,fu=cu;function lu(r){return su(r,fu,vu)}var du=lu;var bu=du;var hu=1;var ju=Object.prototype;var pu=ju.hasOwnProperty;function wu(r,n,t,e,a,u){var i=t&hu,o=bu(r),c=o.length,s=bu(n),v=s.length;if(c!=v&&!i){return false}var f=c;while(f--){var l=o[f];if(!(i?l in n:pu.call(n,l))){return false}}var d=u.get(r);var b=u.get(n);if(d&&b){return d==n&&b==r}var h=true;u.set(r,n);u.set(n,r);var j=i;while(++f<c){l=o[f];var p=r[l],w=n[l];if(e){var m=i?e(w,p,l,n,r,u):e(p,w,l,r,n,u)}if(!(m===undefined?p===w||a(p,w,t,e,u):m)){h=false;break}j||(j=l=="constructor")}if(h&&!j){var y=r.constructor,O=n.constructor;if(y!=O&&("constructor"in r&&"constructor"in n)&&!(typeof y=="function"&&y instanceof y&&typeof O=="function"&&O instanceof O)){h=false}}u["delete"](r);u["delete"](n);return h}var mu=wu;var yu=Sr,Ou=t;var gu=yu(Ou,"DataView");var Au=gu;var _u=Sr,Eu=t;var Mu=_u(Eu,"Promise");var xu=Mu;var Fu=Sr,Iu=t;var Ru=Fu(Iu,"Set");var Du=Ru;var Tu=Sr,Cu=t;var Su=Tu(Cu,"WeakMap");var Pu=Su;var ku=Au,Nu=Lr,Lu=xu,Uu=Du,$u=Pu,Wu=r,Bu=hr;var Hu="[object Map]",Ku="[object Object]",Gu="[object Promise]",Vu="[object Set]",Xu="[object WeakMap]";var zu="[object DataView]";var qu=Bu(ku),Ju=Bu(Nu),Qu=Bu(Lu),Yu=Bu(Uu),Zu=Bu($u);var ri=Wu;if(ku&&ri(new ku(new ArrayBuffer(1)))!=zu||Nu&&ri(new Nu)!=Hu||Lu&&ri(Lu.resolve())!=Gu||Uu&&ri(new Uu)!=Vu||$u&&ri(new $u)!=Xu){ri=function(r){var n=Wu(r),t=n==Ku?r.constructor:undefined,e=t?Bu(t):"";if(e){switch(e){case qu:return zu;case Ju:return Hu;case Qu:return Gu;case Yu:return Vu;case Zu:return Xu}}return n}}var ni=ri;var ti=at,ei=Et,ai=ne,ui=mu,ii=ni,oi=ue,ci=Pe.exports,si=Ia;var vi=1;var fi="[object Arguments]",li="[object Array]",di="[object Object]";var bi=Object.prototype;var hi=bi.hasOwnProperty;function ji(r,n,t,e,a,u){var i=oi(r),o=oi(n),c=i?li:ii(r),s=o?li:ii(n);c=c==fi?di:c;s=s==fi?di:s;var v=c==di,f=s==di,l=c==s;if(l&&ci(r)){if(!ci(n)){return false}i=true;v=false}if(l&&!v){u||(u=new ti);return i||si(r)?ei(r,n,t,e,a,u):ai(r,n,c,t,e,a,u)}if(!(t&vi)){var d=v&&hi.call(r,"__wrapped__"),b=f&&hi.call(n,"__wrapped__");if(d||b){var h=d?r.value():r,j=b?n.value():n;u||(u=new ti);return a(h,j,t,e,u)}}if(!l){return false}u||(u=new ti);return ui(r,n,t,e,a,u)}var pi=ji;var wi=pi,mi=a;function yi(r,n,t,e,a){if(r===n){return true}if(r==null||n==null||!mi(r)&&!mi(n)){return r!==r&&n!==n}return wi(r,n,t,e,yi,a)}var Oi=yi;var gi=at,Ai=Oi;var _i=1,Ei=2;function Mi(r,n,t,e){var a=t.length,u=a,i=!e;if(r==null){return!u}r=Object(r);while(a--){var o=t[a];if(i&&o[2]?o[1]!==r[o[0]]:!(o[0]in r)){return false}}while(++a<u){o=t[a];var c=o[0],s=r[c],v=o[1];if(i&&o[2]){if(s===undefined&&!(c in r)){return false}}else{var f=new gi;if(e){var l=e(s,v,c,r,n,f)}if(!(l===undefined?Ai(v,s,_i|Ei,e,f):l)){return false}}}return true}var xi=Mi;var Fi=n;function Ii(r){return r===r&&!Fi(r)}var Ri=Ii;var Di=Ri,Ti=cu;function Ci(r){var n=Ti(r),t=n.length;while(t--){var e=n[t],a=r[e];n[t]=[e,a,Di(a)]}return n}var Si=Ci;function Pi(r,n){return function(t){if(t==null){return false}return t[r]===n&&(n!==undefined||r in Object(t))}}var ki=Pi;var Ni=xi,Li=Si,Ui=ki;function $i(r){var n=Li(r);if(n.length==1&&n[0][2]){return Ui(n[0][0],n[0][1])}return function(t){return t===r||Ni(t,r,n)}}var Wi=$i;var Bi=ue,Hi=i;var Ki=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Gi=/^\w*$/;function Vi(r,n){if(Bi(r)){return false}var t=typeof r;if(t=="number"||t=="symbol"||t=="boolean"||r==null||Hi(r)){return true}return Gi.test(r)||!Ki.test(r)||n!=null&&r in Object(n)}var Xi=Vi;var zi=Kn;var qi="Expected a function";function Ji(r,n){if(typeof r!="function"||n!=null&&typeof n!="function"){throw new TypeError(qi)}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(Ji.Cache||zi);return t}Ji.Cache=zi;var Qi=Ji;var Yi=Qi;var Zi=500;function ro(r){var n=Yi(r,(function(r){if(t.size===Zi){t.clear()}return r}));var t=n.cache;return n}var no=ro;var to=no;var eo=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;var ao=/\\(\\)?/g;var uo=to((function(r){var n=[];if(r.charCodeAt(0)===46){n.push("")}r.replace(eo,(function(r,t,e,a){n.push(e?a.replace(ao,"$1"):t||r)}));return n}));var io=uo;function oo(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 co=oo;var so=e,vo=co,fo=ue,lo=i;var bo=1/0;var ho=so?so.prototype:undefined,jo=ho?ho.toString:undefined;function po(r){if(typeof r=="string"){return r}if(fo(r)){return vo(r,po)+""}if(lo(r)){return jo?jo.call(r):""}var n=r+"";return n=="0"&&1/r==-bo?"-0":n}var wo=po;var mo=wo;function yo(r){return r==null?"":mo(r)}var Oo=yo;var go=ue,Ao=Xi,_o=io,Eo=Oo;function Mo(r,n){if(go(r)){return r}return Ao(r,n)?[r]:_o(Eo(r))}var xo=Mo;var Fo=i;var Io=1/0;function Ro(r){if(typeof r=="string"||Fo(r)){return r}var n=r+"";return n=="0"&&1/r==-Io?"-0":n}var Do=Ro;var To=xo,Co=Do;function So(r,n){n=To(n,r);var t=0,e=n.length;while(r!=null&&t<e){r=r[Co(n[t++])]}return t&&t==e?r:undefined}var Po=So;var ko=Po;function No(r,n,t){var e=r==null?undefined:ko(r,n);return e===undefined?t:e}var Lo=No;function Uo(r,n){return r!=null&&n in Object(r)}var $o=Uo;var Wo=xo,Bo=Se,Ho=ue,Ko=We,Go=Ke,Vo=Do;function Xo(r,n,t){n=Wo(n,r);var e=-1,a=n.length,u=false;while(++e<a){var i=Vo(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&&Go(a)&&Ko(i,a)&&(Ho(r)||Bo(r))}var zo=Xo;var qo=$o,Jo=zo;function Qo(r,n){return r!=null&&Jo(r,n,qo)}var Yo=Qo;var Zo=Oi,rc=Lo,nc=Yo,tc=Xi,ec=Ri,ac=ki,uc=Do;var ic=1,oc=2;function cc(r,n){if(tc(r)&&ec(n)){return ac(uc(r),n)}return function(t){var e=rc(t,r);return e===undefined&&e===n?nc(t,r):Zo(n,e,ic|oc)}}var sc=cc;function vc(r){return r}var fc=vc;function lc(r){return function(n){return n==null?undefined:n[r]}}var dc=lc;var bc=Po;function hc(r){return function(n){return bc(n,r)}}var jc=hc;var pc=dc,wc=jc,mc=Xi,yc=Do;function Oc(r){return mc(r)?pc(yc(r)):wc(r)}var gc=Oc;var Ac=Wi,_c=sc,Ec=fc,Mc=ue,xc=gc;function Fc(r){if(typeof r=="function"){return r}if(r==null){return Ec}if(typeof r=="object"){return Mc(r)?_c(r[0],r[1]):Ac(r)}return xc(r)}var Ic=Fc;var Rc=o;var Dc=1/0,Tc=17976931348623157e292;function Cc(r){if(!r){return r===0?r:0}r=Rc(r);if(r===Dc||r===-Dc){var n=r<0?-1:1;return n*Tc}return r===r?r:0}var Sc=Cc;var Pc=Sc;function kc(r){var n=Pc(r),t=n%1;return n===n?t?n-t:n:0}var Nc=kc;var Lc=d,Uc=Ic,$c=Nc;var Wc=Math.max;function Bc(r,n,t){var e=r==null?0:r.length;if(!e){return-1}var a=t==null?0:$c(t);if(a<0){a=Wc(e+a,0)}return Lc(r,Uc(n),a)}var Hc=Bc;var Kc=Math.ceil,Gc=Math.max;function Vc(r,n,t,e){var a=-1,u=Gc(Kc((n-r)/(t||1)),0),i=Array(u);while(u--){i[e?u:++a]=r;r+=t}return i}var Xc=Vc;var zc=p,qc=eu,Jc=We,Qc=n;function Yc(r,n,t){if(!Qc(t)){return false}var e=typeof n;if(e=="number"?qc(t)&&Jc(n,t.length):e=="string"&&n in t){return zc(t[n],r)}return false}var Zc=Yc;var rs=Xc,ns=Zc,ts=Sc;function es(r){return function(n,t,e){if(e&&typeof e!="number"&&ns(n,t,e)){t=e=undefined}n=ts(n);if(t===undefined){t=n;n=0}else{t=ts(t)}e=e===undefined?n<t?1:-1:ts(e);return rs(n,t,e,r)}}var as=es;var us=as;var is=us();var os=is;const cs=(r,n,t)=>{const e=r.get(n);if(!e){r.set(n,[t])}else if(!e.includes(t)){e.push(t)}};const ss=(r,n)=>{let t;return(...e)=>{if(t){clearTimeout(t)}t=setTimeout((()=>{t=0;r(...e)}),n)}};const vs=r=>!("isConnected"in r)||r.isConnected;const fs=ss((r=>{for(let n of r.keys()){r.set(n,r.get(n).filter(vs))}}),2e3);const ls=()=>{if(typeof c!=="function"){return{}}const r=new Map;return{dispose:()=>r.clear(),get:n=>{const t=c();if(t){cs(r,n,t)}},set:n=>{const t=r.get(n);if(t){r.set(n,t.filter(s))}fs(r)},reset:()=>{r.forEach((r=>r.forEach(s)));fs(r)}}};const ds=r=>typeof r==="function"?r():r;const bs=(r,n=((r,n)=>r!==n))=>{const t=ds(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=ds(r))!==null&&n!==void 0?n:{}));a.reset.forEach((r=>r()))};const i=()=>{a.dispose.forEach((r=>r()));u()};const o=r=>{a.get.forEach((n=>n(r)));return e.get(r)};const c=(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 s=typeof Proxy==="undefined"?{}:new Proxy(t,{get(r,n){return o(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){c(n,t);return true}});const v=(r,n)=>{a[r].push(n);return()=>{hs(a[r],n)}};const f=(n,t)=>{const e=v("set",((r,e)=>{if(r===n){t(e)}}));const a=v("reset",(()=>t(ds(r)[n])));return()=>{e();a()}};const l=(...r)=>{const n=r.reduce(((r,n)=>{if(n.set){r.push(v("set",n.set))}if(n.get){r.push(v("get",n.get))}if(n.reset){r.push(v("reset",n.reset))}if(n.dispose){r.push(v("dispose",n.dispose))}return r}),[]);return()=>n.forEach((r=>r()))};const d=r=>{const n=e.get(r);a.set.forEach((t=>t(r,n,n)))};return{state:s,get:o,set:c,on:v,onChange:f,use:l,dispose:i,reset:u,forceUpdate:d}};const hs=(r,n)=>{const t=r.indexOf(n);if(t>=0){r[t]=r[r.length-1];r.length--}};const js=(r,n)=>{const t=bs(r,n);t.use(ls());return t};const ps=r=>({set(n,t){switch(n){case"trimmed":const n=r.get("proxyItems");const e=ws(t);const a=n.reduce(((r,n)=>{if(!e[n]){r.push(n)}return r}),[]);r.set("items",a);break}}});function ws(r){const n={};for(let t in r){for(let e in r[t]){n[e]=n[e]||r[t][e]}}return n}function ms(r,n){Object.entries(n).forEach((([n,t])=>{r.set(n,t)}))}class ys{get store(){return this.dataStore}constructor(r,n){const t=this.dataStore=js(Object.assign({items:[],proxyItems:[],source:[],groupingDepth:0,groups:{},type:r,trimmed:{},groupingCustomRenderer:undefined},n));t.use(v(t));t.use(ps(t))}updateData(r,n,t=false){if(!t){this.store.set("trimmed",{})}this.store.set("items",[]);const e=os(0,(r===null||r===void 0?void 0:r.length)||0);ms(this.store,{source:r,proxyItems:[...e]});this.store.set("items",e);if(n){ms(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);ms(this.store,{trimmed:n})}setData(r){const n=Object.assign({},r);ms(this.store,n)}refresh(){const r=this.store.get("source");this.store.set("source",[...r])}}function Os(r,n){const t=r.get("items");return t[n]}function gs(r){const n=r.get("source");return r.get("items").map((r=>n[r]))}const As=(r,n)=>{const t=r.get("items");const e=r.get("source");return e[t[n]]};function _s(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 Es(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 Ms(r,n){r.set("items",n)}function xs(r,n){const t=r.get("items");const e=r.get("source");const a=Hc(e,{prop:n});return t.indexOf(a)}function Fs(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 Is=Fs;function Rs(r){return function(n,t,e){var a=-1,u=Object(n),i=e(n),o=i.length;while(o--){var c=i[r?o:++a];if(t(u[c],c,u)===false){break}}return n}}var Ds=Rs;var Ts=Ds;var Cs=Ts();var Ss=Cs;var Ps=Ss,ks=cu;function Ns(r,n){return r&&Ps(r,n,ks)}var Ls=Ns;var Us=eu;function $s(r,n){return function(t,e){if(t==null){return t}if(!Us(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 Ws=$s;var Bs=Ls,Hs=Ws;var Ks=Hs(Bs);var Gs=Ks;function Vs(r,n,t,e,a){a(r,(function(r,a,u){t=e?(e=false,r):n(t,r,a,u)}));return t}var Xs=Vs;var zs=Is,qs=Gs,Js=Ic,Qs=Xs,Ys=ue;function Zs(r,n,t){var e=Ys(r)?zs:Qs,a=arguments.length<3;return e(r,Js(n),t,a,qs)}var rv=Zs;function nv(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 tv=nv;var ev=fc;function av(r){return typeof r=="function"?r:ev}var uv=av;var iv=tv,ov=Gs,cv=uv,sv=ue;function vv(r,n){var t=sv(r)?iv:ov;return t(r,cv(n))}var fv=vv;var lv=fv;var dv=i;var bv=4294967295,hv=bv-1;var jv=Math.floor,pv=Math.min;function wv(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,o=n===null,c=dv(n),s=n===undefined;while(a<u){var v=jv((a+u)/2),f=t(r[v]),l=f!==undefined,d=f===null,b=f===f,h=dv(f);if(i){var j=e||b}else if(s){j=b&&(e||l)}else if(o){j=b&&l&&(e||!d)}else if(c){j=b&&l&&!d&&(e||!h)}else if(d||h){j=false}else{j=e?f<=n:f<n}if(j){a=v+1}else{u=v}}return pv(u,hv)}var mv=wv;var yv=mv,Ov=fc,gv=i;var Av=4294967295,_v=Av>>>1;function Ev(r,n,t){var e=0,a=r==null?e:r.length;if(typeof n=="number"&&n===n&&a<=_v){while(e<a){var u=e+a>>>1,i=r[u];if(i!==null&&!gv(i)&&(t?i<=n:i<n)){e=u+1}else{a=u}}return a}return yv(r,n,Ov,t)}var Mv=Ev;var xv=Mv;function Fv(r,n){return xv(r,n)}var Iv=Fv;function Rv(r,n={}){const t=[];const e={};const a={};const u=Object.assign({},n);let i=[];lv(n,((r,n)=>{const t=parseInt(n,10);i[Iv(i,t)]=t}));rv(i,((n,i,o)=>{const c={itemIndex:i,start:0,end:0};if(n){const t=(i-n.itemIndex-1)*r;c.start=t+n.end}else{c.start=i*r}c.end=c.start+u[i];t.push(c.start);a[i]=e[o]=c;return c}),undefined);return{indexes:i,positionIndexes:[...t],positionIndexToItem:Object.assign({},e),indexToItem:a,sizes:u}}const Dv=({indexes:r,positionIndexes:n,originItemSize:t,positionIndexToItem:e},a)=>{const u={itemIndex:0,start:0,end:0};const i=r.length?Iv(n,a):0;if(!i){u.itemIndex=Math.floor(a/t);u.start=u.itemIndex*t;u.end=u.start+t;return u}const o=e[i-1];if(o.end>a){return o}const c=a-o.end;const s=Math.floor(c/t);u.itemIndex=o.itemIndex+1+s;u.start=o.end+s*t;u.end=u.start+t;return u};function Tv(r,n){let t={itemIndex:n,start:0,end:0};if(r.indexToItem[n]){return r.indexToItem[n]}const e=r.indexes.length?Iv(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}const Cv=30;const Sv=40;const Pv="data-rgCol";const kv="data-rgRow";const Nv="disabled";const Lv="rgCell";const Uv="rowHeaders";const $v="rgHeaderCell";const Wv="sortable";const Bv="header-rgRow";const Hv="actual-rgRow";const Kv="revo-drag-icon";const Gv="revo-draggable";const Vv="focused-cell";const Xv="selection-border-range";const zv="mobile-handler";const qv="temp-bg-range";const Jv="autofill-handle";const Qv="edit-input-wrapper";const Yv="Draggable item";const Zv="__rvgr";const rf="focused-rgRow";var nf;(function(r){r[r["MOUSE_LEFT"]=1]="MOUSE_LEFT";r[r["MOUSE_RIGHT"]=3]="MOUSE_RIGHT";r[r["MOUSE_MIDDLE"]=2]="MOUSE_MIDDLE";r[r["BACKSPACE"]=8]="BACKSPACE";r[r["COMMA"]=188]="COMMA";r[r["INSERT"]=45]="INSERT";r[r["DELETE"]=46]="DELETE";r[r["END"]=35]="END";r[r["ENTER"]=13]="ENTER";r[r["ESCAPE"]=27]="ESCAPE";r[r["CONTROL"]=17]="CONTROL";r[r["COMMAND_LEFT"]=91]="COMMAND_LEFT";r[r["COMMAND_RIGHT"]=93]="COMMAND_RIGHT";r[r["COMMAND_FIREFOX"]=224]="COMMAND_FIREFOX";r[r["ALT"]=18]="ALT";r[r["HOME"]=36]="HOME";r[r["PAGE_DOWN"]=34]="PAGE_DOWN";r[r["PAGE_UP"]=33]="PAGE_UP";r[r["PERIOD"]=190]="PERIOD";r[r["SPACE"]=32]="SPACE";r[r["SHIFT"]=16]="SHIFT";r[r["CAPS_LOCK"]=20]="CAPS_LOCK";r[r["TAB"]=9]="TAB";r[r["ARROW_RIGHT"]=39]="ARROW_RIGHT";r[r["ARROW_LEFT"]=37]="ARROW_LEFT";r[r["ARROW_UP"]=38]="ARROW_UP";r[r["ARROW_DOWN"]=40]="ARROW_DOWN";r[r["F1"]=112]="F1";r[r["F2"]=113]="F2";r[r["F3"]=114]="F3";r[r["F4"]=115]="F4";r[r["F5"]=116]="F5";r[r["F6"]=117]="F6";r[r["F7"]=118]="F7";r[r["F8"]=119]="F8";r[r["F9"]=120]="F9";r[r["F10"]=121]="F10";r[r["F11"]=122]="F11";r[r["F12"]=123]="F12";r[r["A"]=65]="A";r[r["C"]=67]="C";r[r["D"]=68]="D";r[r["F"]=70]="F";r[r["L"]=76]="L";r[r["O"]=79]="O";r[r["P"]=80]="P";r[r["S"]=83]="S";r[r["V"]=86]="V";r[r["X"]=88]="X"})(nf||(nf={}));var tf;(function(r){r["ENTER"]="Enter";r["ENTER_NUM"]="NumpadEnter";r["A"]="KeyA";r["C"]="KeyC";r["X"]="KeyX";r["V"]="KeyV";r["ESCAPE"]="Escape";r["TAB"]="Tab";r["BACKSPACE"]="Backspace";r["DELETE"]="Delete";r["ARROW_RIGHT"]="ArrowRight";r["ARROW_LEFT"]="ArrowLeft";r["ARROW_UP"]="ArrowUp";r["ARROW_DOWN"]="ArrowDown";r["SHIFT"]="Shift"})(tf||(tf={}));var ef;(function(r){r["ENTER"]="Enter";r["TAB"]="Tab"})(ef||(ef={}));const af=nf;var uf;(function(r){r["mac"]="Mac"})(uf||(uf={}));const of=uf;function cf(r,n=0){const t=[];const e=n+r;for(let r=n;r<e;r++){t.push(r)}return t}function sf(r,n){return function(t){let e=0;let a=t.length-1;while(e<=a){const u=a+e>>1;const i=n(r,t[u]);if(i>0){e=u+1}else if(i<0){a=u-1}else{return u}}return-e-1}(this)}function vf(r,n,t){r.splice(sf.bind(r)(n,t),0,n);return r}function ff(r,n){return r<n}function lf(r,n,t=ff){const e=[];let a=0;let u=0;let i=0;while(i<r.length+n.length){let o=a>=r.length;let c=u>=n.length;if(!o&&(c||t(r[a],n[u]))){e[i]=r[a];a++}else{e[i]=n[u];u++}i++}return e}function df(r){const n=r.createElement("div");n.style.overflow="scroll";n.style.visibility="hidden";n.style.position="absolute";n.style.top="-9999px";n.style.width="50px";n.style.height="50px";r.body.appendChild(n);const t=n.offsetWidth-n.clientWidth;r.body.removeChild(n);return t}function bf(r,n,t){return(t[1]-t[0])*(r-n[0])/(n[1]-n[0])+t[0]}async function hf(r=0){await new Promise((n=>{setTimeout((()=>n()),r)}))}function jf(r,n){n.forEach((n=>{Object.getOwnPropertyNames(n.prototype).forEach((t=>{Object.defineProperty(r.prototype,t,Object.getOwnPropertyDescriptor(n.prototype,t)||Object.create(null))}))}))}export{eu as $,Wv as A,Bv as B,Lv as C,ys as D,Hv as E,Kv as F,Gv as G,$v as H,Vv as I,zv as J,Jv as K,Qv as L,Cv as M,Yv as N,Zv as O,rf as P,tf as Q,Sv as R,Xv as S,qv as T,ef as U,js as V,rv as W,ue as X,of as Y,af as Z,Ic as _,gs as a,cu as a0,Hc as a1,lv as a2,dc as a3,Za as a4,ni as a5,os as a6,Nc as a7,Zc as a8,Sr as a9,Gs as aa,As as b,Es as c,Ms as d,xs as e,ws as f,Os as g,Rv as h,Dv as i,Tv as j,sf as k,vf as l,lf as m,df as n,bf as o,v as p,hf as q,cf as r,_s as s,ps as t,jf as u,ms as v,Pv as w,kv as x,Nv as y,Uv as z};
5
+ //# sourceMappingURL=index-f65def08.js.map