@revolist/revogrid 4.12.12 → 4.13.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 (95) hide show
  1. package/dist/cjs/{column.drag.plugin-0ce0b39a.js → column.drag.plugin-0f367fe1.js} +2 -1
  2. package/dist/cjs/column.drag.plugin-0f367fe1.js.map +1 -0
  3. package/dist/cjs/column.service-b59380a3.js.map +1 -1
  4. package/dist/cjs/{sorting.sign-a1e9d97a.js → grouping.row.renderer-d6119ced.js} +6 -6
  5. package/dist/cjs/grouping.row.renderer-d6119ced.js.map +1 -0
  6. package/dist/cjs/index.cjs.js +7 -6
  7. package/dist/cjs/index.cjs.js.map +1 -1
  8. package/dist/cjs/revo-grid.cjs.entry.js +2 -2
  9. package/dist/cjs/revo-grid.cjs.entry.js.map +1 -1
  10. package/dist/cjs/revogr-data_4.cjs.entry.js +5 -5
  11. package/dist/cjs/revogr-data_4.cjs.entry.js.map +1 -1
  12. package/dist/cjs/revogr-filter-panel.cjs.entry.js +1 -1
  13. package/dist/cjs/revogr-filter-panel.cjs.entry.js.map +1 -1
  14. package/dist/collection/components/revoGrid/revo-grid-style.css +109 -197
  15. package/dist/collection/plugins/filter/filter.style.css +12 -25
  16. package/dist/collection/plugins/sorting/sorting.plugin.js +2 -0
  17. package/dist/collection/plugins/sorting/sorting.plugin.js.map +1 -1
  18. package/dist/collection/store/selection/selection.store.js.map +1 -1
  19. package/dist/esm/{column.drag.plugin-017c4fb3.js → column.drag.plugin-d201beb7.js} +2 -2
  20. package/dist/esm/{column.drag.plugin-017c4fb3.js.map → column.drag.plugin-d201beb7.js.map} +1 -1
  21. package/dist/esm/column.service-f39c0a1d.js.map +1 -1
  22. package/dist/esm/{sorting.sign-c02e3b12.js → grouping.row.renderer-95f32c6b.js} +6 -6
  23. package/dist/esm/grouping.row.renderer-95f32c6b.js.map +1 -0
  24. package/dist/esm/index.js +3 -3
  25. package/dist/esm/revo-grid.entry.js +2 -2
  26. package/dist/esm/revo-grid.entry.js.map +1 -1
  27. package/dist/esm/revogr-data_4.entry.js +1 -1
  28. package/dist/esm/revogr-filter-panel.entry.js +1 -1
  29. package/dist/esm/revogr-filter-panel.entry.js.map +1 -1
  30. package/dist/revo-grid/app-globals-6b929fd8.js +8 -1
  31. package/dist/revo-grid/app-globals-6b929fd8.js.map +1 -1
  32. package/dist/revo-grid/column.drag.plugin-d201beb7.js +2522 -0
  33. package/dist/revo-grid/column.drag.plugin-d201beb7.js.map +1 -0
  34. package/dist/revo-grid/column.service-f39c0a1d.js +1293 -1
  35. package/dist/revo-grid/column.service-f39c0a1d.js.map +1 -1
  36. package/dist/revo-grid/debounce-b3166f78.js +491 -1
  37. package/dist/revo-grid/debounce-b3166f78.js.map +1 -1
  38. package/dist/revo-grid/dimension.helpers-5567e424.js +3608 -1
  39. package/dist/revo-grid/dimension.helpers-5567e424.js.map +1 -1
  40. package/dist/revo-grid/edit.utils-b59306be.js +13 -1
  41. package/dist/revo-grid/edit.utils-b59306be.js.map +1 -1
  42. package/dist/revo-grid/events-cf0893a3.js +38 -1
  43. package/dist/revo-grid/events-cf0893a3.js.map +1 -1
  44. package/dist/revo-grid/filter.button-84396156.js +34 -1
  45. package/dist/revo-grid/filter.button-84396156.js.map +1 -1
  46. package/dist/revo-grid/grouping.row.renderer-95f32c6b.js +65 -0
  47. package/dist/revo-grid/grouping.row.renderer-95f32c6b.js.map +1 -0
  48. package/dist/revo-grid/header-cell-renderer-31f53644.js +335 -1
  49. package/dist/revo-grid/header-cell-renderer-31f53644.js.map +1 -1
  50. package/dist/revo-grid/index-f6fae858.js +2090 -2
  51. package/dist/revo-grid/index-f6fae858.js.map +1 -1
  52. package/dist/revo-grid/index.esm.js +160 -1
  53. package/dist/revo-grid/index.esm.js.map +1 -1
  54. package/dist/revo-grid/key.utils-3632161b.js +85 -1
  55. package/dist/revo-grid/key.utils-3632161b.js.map +1 -1
  56. package/dist/revo-grid/resize-observer-83c9e167.js +501 -1
  57. package/dist/revo-grid/resize-observer-83c9e167.js.map +1 -1
  58. package/dist/revo-grid/revo-grid.entry.js +1943 -1
  59. package/dist/revo-grid/revo-grid.entry.js.map +1 -1
  60. package/dist/revo-grid/revo-grid.esm.js +21 -1
  61. package/dist/revo-grid/revo-grid.esm.js.map +1 -1
  62. package/dist/revo-grid/revogr-attribution_7.entry.js +1446 -1
  63. package/dist/revo-grid/revogr-attribution_7.entry.js.map +1 -1
  64. package/dist/revo-grid/revogr-clipboard_3.entry.js +455 -1
  65. package/dist/revo-grid/revogr-clipboard_3.entry.js.map +1 -1
  66. package/dist/revo-grid/revogr-data_4.entry.js +960 -1
  67. package/dist/revo-grid/revogr-data_4.entry.js.map +1 -1
  68. package/dist/revo-grid/revogr-filter-panel.entry.js +340 -1
  69. package/dist/revo-grid/revogr-filter-panel.entry.js.map +1 -1
  70. package/dist/revo-grid/text-editor-e47e56c3.js +74 -1
  71. package/dist/revo-grid/text-editor-e47e56c3.js.map +1 -1
  72. package/dist/revo-grid/throttle-dec28f5b.js +229 -1
  73. package/dist/revo-grid/throttle-dec28f5b.js.map +1 -1
  74. package/dist/revo-grid/viewport.helpers-7e7f9dad.js +48 -1
  75. package/dist/revo-grid/viewport.helpers-7e7f9dad.js.map +1 -1
  76. package/dist/revo-grid/viewport.store-c18a25a6.js +402 -1
  77. package/dist/revo-grid/viewport.store-c18a25a6.js.map +1 -1
  78. package/dist/types/plugins/sorting/sorting.plugin.d.ts +2 -0
  79. package/dist/types/store/selection/selection.store.d.ts +1 -1
  80. package/hydrate/index.js +7 -7
  81. package/hydrate/index.mjs +7 -7
  82. package/package.json +1 -1
  83. package/standalone/column.service.js.map +1 -1
  84. package/standalone/index.js +1 -1
  85. package/standalone/revo-grid.js +2 -2
  86. package/standalone/revo-grid.js.map +1 -1
  87. package/standalone/revogr-filter-panel.js +1 -1
  88. package/standalone/revogr-filter-panel.js.map +1 -1
  89. package/dist/cjs/column.drag.plugin-0ce0b39a.js.map +0 -1
  90. package/dist/cjs/sorting.sign-a1e9d97a.js.map +0 -1
  91. package/dist/esm/sorting.sign-c02e3b12.js.map +0 -1
  92. package/dist/revo-grid/column.drag.plugin-017c4fb3.js +0 -5
  93. package/dist/revo-grid/column.drag.plugin-017c4fb3.js.map +0 -1
  94. package/dist/revo-grid/sorting.sign-c02e3b12.js +0 -5
  95. package/dist/revo-grid/sorting.sign-c02e3b12.js.map +0 -1
@@ -1,5 +1,164 @@
1
1
  /*!
2
2
  * Built by Revolist OU ❤️
3
3
  */
4
- import{B as _}from"./column.drag.plugin-017c4fb3.js";export{A as AutoSizeColumnPlugin,B as BasePlugin,C as ColumnMovePlugin,D as DimensionStore,b as ExportCsv,E as ExportFilePlugin,d as FILTER_CONFIG_CHANGED_EVENT,F as FILTER_TRIMMED_TYPE,e as FILTE_PANEL,f as FilterPlugin,G as GroupingRowPlugin,n as SortingPlugin,S as StretchColumn,c as columnTypes,k as doCollapse,l as doExpand,g as filterCoreFunctionsIndexedByType,j as filterNames,h as filterTypes,m as getLeftRelative,i as isRowType,a as isStretchPlugin,r as rowTypes}from"./column.drag.plugin-017c4fb3.js";export{d as dispatch,a as dispatchByEvent}from"./header-cell-renderer-31f53644.js";export{h}from"./index-f6fae858.js";export{C as CELL_CLASS,L as CELL_HANDLER_CLASS,x as DATA_COL,y as DATA_ROW,z as DISABLED_CLASS,I as DRAGGABLE_CLASS,O as DRAGG_TEXT,G as DRAG_ICON_CLASS,D as DataStore,N as EDIT_INPUT_WR,J as FOCUS_CLASS,P as GRID_INTERNALS,F as HEADER_ACTUAL_ROW_CLASS,H as HEADER_CLASS,E as HEADER_ROW_CLASS,B as HEADER_SORTABLE_CLASS,M as MIN_COL_SIZE,K as MOBILE_CLASS,R as RESIZE_INTERVAL,Q as ROW_FOCUSED_CLASS,A as ROW_HEADER_TYPE,S as SELECTION_BORDER_CLASS,T as TMP_SELECTION_BG_CLASS,v as applyMixins,i as calculateDimensionData,U as codesLetter,l as findPositionInArray,h as gatherTrimmedItems,k as getItemByIndex,j as getItemByPosition,g as getPhysical,o as getScrollbarSize,b as getSourceItem,f as getSourceItemVirtualIndexByProp,c as getSourcePhysicalIndex,a as getVisibleSourceItem,V as keyValues,n as mergeSortedArray,p as proxyPlugin,m as pushSorted,r as range,q as scaleValue,e as setItems,d as setSourceByPhysicalIndex,s as setSourceByVirtualIndex,w as setStore,u as timeout,t as trimmedPlugin}from"./dimension.helpers-5567e424.js";export{m as GROUPING_ROW_TYPE,h as GROUP_COLUMN_PROP,G as GROUP_DEPTH,f as GROUP_EXPANDED,k as GROUP_EXPAND_BTN,l as GROUP_EXPAND_EVENT,j as GROUP_ORIGINAL_INDEX,e as PSEUDO_GROUP_COLUMN,P as PSEUDO_GROUP_ITEM,b as PSEUDO_GROUP_ITEM_ID,d as PSEUDO_GROUP_ITEM_VALUE,S as SelectionStore,c as cropCellToMax,E as gatherGroup,q as gatherGrouping,x as getCellData,z as getCellDataParsed,y as getCellRaw,F as getColumnByProp,B as getColumnSizes,A as getColumnType,D as getColumns,p as getExpanded,r as getGroupingName,v as getParsedGroup,g as getRange,o as getSource,C as isColGrouping,s as isGrouping,t as isGroupingColumn,i as isHiddenStore,a as isRangeSingleCell,w as isSameGroup,u as measureEqualDepth,n as nextCell}from"./column.service-f39c0a1d.js";export{G as GroupingRowRenderer,S as SortingSign,e as expandEvent,a as expandSvgIconVNode}from"./sorting.sign-c02e3b12.js";export{T as TextEditor}from"./text-editor-e47e56c3.js";export{V as ViewportStore,a as addMissingItems,f as calculateRowHeaderSize,d as getFirstItem,b as getItems,e as getLastItem,g as getUpdatedItemsByPosition,i as isActiveRange,c as isActiveRangeOutsideLastItem,r as recombineByOffset,s as setItemSizes,u as updateMissingAndRange}from"./viewport.store-c18a25a6.js";export{A as AND_OR_BUTTON,e as AndOrButton,a as FILTER_BUTTON_ACTIVE,F as FILTER_BUTTON_CLASS,b as FILTER_PROP,c as FilterButton,T as TRASH_BUTTON,d as TrashButton,i as isFilterBtn}from"./filter.button-84396156.js";export{k as isAll,c as isClear,h as isCopy,a as isCtrlKey,b as isCtrlMetaKey,g as isCut,f as isEnterKeyValue,i as isMetaKey,j as isPaste,d as isTab,e as isTabKeyValue}from"./key.utils-3632161b.js";import"./debounce-b3166f78.js";const W=new Map([["contentsizechanged","contentsizechanged"],["beforeedit","beforeedit"],["beforerangeedit","beforerangeedit"],["afteredit","afteredit"],["beforeautofill","beforeautofill"],["beforerange","beforerange"],["afterfocus","afterfocus"],["roworderchanged","roworderchanged"],["beforesorting","beforesorting"],["beforesourcesortingapply","beforesourcesortingapply"],["beforesortingapply","beforesortingapply"],["rowdragstart","rowdragstart"],["headerclick","headerclick"],["beforecellfocus","beforecellfocus"],["beforefocuslost","beforefocuslost"],["beforesourceset","beforesourceset"],["beforeanysource","beforeanysource"],["aftersourceset","aftersourceset"],["afteranysource","afteranysource"],["beforecolumnsset","beforecolumnsset"],["beforecolumnapplied","beforecolumnapplied"],["aftercolumnsset","aftercolumnsset"],["beforefilterapply","beforefilterapply"],["beforefiltertrimmed","beforefiltertrimmed"],["beforetrimmed","beforetrimmed"],["aftertrimmed","aftertrimmed"],["viewportscroll","viewportscroll"],["beforeexport","beforeexport"],["beforeeditstart","beforeeditstart"],["aftercolumnresize","aftercolumnresize"],["beforerowdefinition","beforerowdefinition"],["filterconfigchanged","filterconfigchanged"],["sortingconfigchanged","sortingconfigchanged"],["rowheaderschanged","rowheaderschanged"],["beforegridrender","beforegridrender"],["aftergridrender","aftergridrender"],["aftergridinit","aftergridinit"],["additionaldatachanged","additionaldatachanged"],["afterthemechanged","afterthemechanged"],["created","created"],["beforepaste","beforepaste"],["beforepasteapply","beforepasteapply"],["pasteregion","pasteregion"],["afterpasteapply","afterpasteapply"],["beforecut","beforecut"],["clearregion","clearregion"],["beforecopy","beforecopy"],["beforecopyapply","beforecopyapply"],["copyregion","copyregion"],["beforerowrender","beforerowrender"],["afterrender","afterrender"],["beforecellrender","beforecellrender"],["beforedatarender","beforedatarender"],["dragstartcell","dragstartcell"],["celledit","celledit"],["closeedit","closeedit"],["filterChange","filterChange"],["resetChange","resetChange"],["beforefocusrender","beforefocusrender"],["beforescrollintoview","beforescrollintoview"],["afterfocus","afterfocus"],["beforeheaderclick","beforeheaderclick"],["headerresize","headerresize"],["beforeheaderresize","beforeheaderresize"],["headerdblclick","headerdblclick"],["beforeheaderrender","beforeheaderrender"],["afterheaderrender","afterheaderrender"],["rowdragstartinit","rowdragstartinit"],["rowdragendinit","rowdragendinit"],["rowdragmoveinit","rowdragmoveinit"],["rowdragmousemove","rowdragmousemove"],["rowdropinit","rowdropinit"],["roworderchange","roworderchange"],["beforecopyregion","beforecopyregion"],["beforepasteregion","beforepasteregion"],["celleditapply","celleditapply"],["beforecellfocusinit","beforecellfocusinit"],["beforenextvpfocus","beforenextvpfocus"],["setedit","setedit"],["beforeapplyrange","beforeapplyrange"],["beforesetrange","beforesetrange"],["setrange","setrange"],["beforeeditrender","beforeeditrender"],["selectall","selectall"],["canceledit","canceledit"],["settemprange","settemprange"],["beforesettemprange","beforesettemprange"],["applyfocus","applyfocus"],["focuscell","focuscell"],["beforerangedataapply","beforerangedataapply"],["selectionchangeinit","selectionchangeinit"],["beforerangecopyapply","beforerangecopyapply"],["rangeeditapply","rangeeditapply"],["clipboardrangecopy","clipboardrangecopy"],["clipboardrangepaste","clipboardrangepaste"],["beforekeydown","beforekeydown"],["beforekeyup","beforekeyup"],["beforecellsave","beforecellsave"],["scrollview","scrollview"],["ref","ref"],["scrollvirtual","scrollvirtual"],["scrollviewport","scrollviewport"],["resizeviewport","resizeviewport"],["scrollchange","scrollchange"],["scrollviewportsilent","scrollviewportsilent"],["html","html"]]);class X extends _{constructor(e,r){super(e,r);this.addEventListener("beforepasteapply",(e=>this.handleBeforePasteApply(e)))}handleBeforePasteApply(e){const r=this.providers.selection.focused;const a=this.providers.selection.edit!=null;if(!r||a){return}const s=this.providers.data.stores.rgRow.store.get("items").length;const o=r.y+e.detail.parsed.length;if(s<o){const e=o-s;const r=Array.from({length:e},((e,r)=>({index:s+r,data:{}})));const a=this.emit("newRows",{newRows:r});if(a.defaultPrevented){return}const t=[...this.providers.data.stores.rgRow.store.get("source"),...a.detail.newRows.map((e=>e.data))];this.providers.data.setData(t)}}}export{X as AutoAddRowsPlugin,W as REVOGRID_EVENTS};
4
+ import { B as BasePlugin } from './column.drag.plugin-d201beb7.js';
5
+ export { A as AutoSizeColumnPlugin, B as BasePlugin, C as ColumnMovePlugin, D as DimensionStore, b as ExportCsv, E as ExportFilePlugin, d as FILTER_CONFIG_CHANGED_EVENT, F as FILTER_TRIMMED_TYPE, e as FILTE_PANEL, f as FilterPlugin, G as GroupingRowPlugin, n as SortingPlugin, S as StretchColumn, c as columnTypes, k as doCollapse, l as doExpand, g as filterCoreFunctionsIndexedByType, j as filterNames, h as filterTypes, m as getLeftRelative, i as isRowType, a as isStretchPlugin, r as rowTypes, s as sortIndexByItems } from './column.drag.plugin-d201beb7.js';
6
+ export { d as dispatch, a as dispatchByEvent } from './header-cell-renderer-31f53644.js';
7
+ export { h } from './index-f6fae858.js';
8
+ export { C as CELL_CLASS, L as CELL_HANDLER_CLASS, x as DATA_COL, y as DATA_ROW, z as DISABLED_CLASS, I as DRAGGABLE_CLASS, O as DRAGG_TEXT, G as DRAG_ICON_CLASS, D as DataStore, N as EDIT_INPUT_WR, J as FOCUS_CLASS, P as GRID_INTERNALS, F as HEADER_ACTUAL_ROW_CLASS, H as HEADER_CLASS, E as HEADER_ROW_CLASS, B as HEADER_SORTABLE_CLASS, M as MIN_COL_SIZE, K as MOBILE_CLASS, R as RESIZE_INTERVAL, Q as ROW_FOCUSED_CLASS, A as ROW_HEADER_TYPE, S as SELECTION_BORDER_CLASS, T as TMP_SELECTION_BG_CLASS, v as applyMixins, i as calculateDimensionData, U as codesLetter, l as findPositionInArray, h as gatherTrimmedItems, k as getItemByIndex, j as getItemByPosition, g as getPhysical, o as getScrollbarSize, b as getSourceItem, f as getSourceItemVirtualIndexByProp, c as getSourcePhysicalIndex, a as getVisibleSourceItem, V as keyValues, n as mergeSortedArray, p as proxyPlugin, m as pushSorted, r as range, q as scaleValue, e as setItems, d as setSourceByPhysicalIndex, s as setSourceByVirtualIndex, w as setStore, u as timeout, t as trimmedPlugin } from './dimension.helpers-5567e424.js';
9
+ export { m as GROUPING_ROW_TYPE, h as GROUP_COLUMN_PROP, G as GROUP_DEPTH, f as GROUP_EXPANDED, k as GROUP_EXPAND_BTN, l as GROUP_EXPAND_EVENT, j as GROUP_ORIGINAL_INDEX, e as PSEUDO_GROUP_COLUMN, P as PSEUDO_GROUP_ITEM, b as PSEUDO_GROUP_ITEM_ID, d as PSEUDO_GROUP_ITEM_VALUE, S as SelectionStore, c as cropCellToMax, E as gatherGroup, q as gatherGrouping, x as getCellData, z as getCellDataParsed, y as getCellRaw, F as getColumnByProp, B as getColumnSizes, A as getColumnType, D as getColumns, p as getExpanded, r as getGroupingName, v as getParsedGroup, g as getRange, o as getSource, C as isColGrouping, s as isGrouping, t as isGroupingColumn, i as isHiddenStore, a as isRangeSingleCell, w as isSameGroup, u as measureEqualDepth, n as nextCell } from './column.service-f39c0a1d.js';
10
+ export { G as GroupingRowRenderer, S as SortingSign, e as expandEvent, a as expandSvgIconVNode } from './grouping.row.renderer-95f32c6b.js';
11
+ export { T as TextEditor } from './text-editor-e47e56c3.js';
12
+ export { V as ViewportStore, a as addMissingItems, f as calculateRowHeaderSize, d as getFirstItem, b as getItems, e as getLastItem, g as getUpdatedItemsByPosition, i as isActiveRange, c as isActiveRangeOutsideLastItem, r as recombineByOffset, s as setItemSizes, u as updateMissingAndRange } from './viewport.store-c18a25a6.js';
13
+ export { A as AND_OR_BUTTON, e as AndOrButton, a as FILTER_BUTTON_ACTIVE, F as FILTER_BUTTON_CLASS, b as FILTER_PROP, c as FilterButton, T as TRASH_BUTTON, d as TrashButton, i as isFilterBtn } from './filter.button-84396156.js';
14
+ export { k as isAll, c as isClear, h as isCopy, a as isCtrlKey, b as isCtrlMetaKey, g as isCut, f as isEnterKeyValue, i as isMetaKey, j as isPaste, d as isTab, e as isTabKeyValue } from './key.utils-3632161b.js';
15
+ import './debounce-b3166f78.js';
16
+
17
+ const REVOGRID_EVENTS = new Map([
18
+ ['contentsizechanged', 'contentsizechanged'],
19
+ ['beforeedit', 'beforeedit'],
20
+ ['beforerangeedit', 'beforerangeedit'],
21
+ ['afteredit', 'afteredit'],
22
+ ['beforeautofill', 'beforeautofill'],
23
+ ['beforerange', 'beforerange'],
24
+ ['afterfocus', 'afterfocus'],
25
+ ['roworderchanged', 'roworderchanged'],
26
+ ['beforesorting', 'beforesorting'],
27
+ ['beforesourcesortingapply', 'beforesourcesortingapply'],
28
+ ['beforesortingapply', 'beforesortingapply'],
29
+ ['rowdragstart', 'rowdragstart'],
30
+ ['headerclick', 'headerclick'],
31
+ ['beforecellfocus', 'beforecellfocus'],
32
+ ['beforefocuslost', 'beforefocuslost'],
33
+ ['beforesourceset', 'beforesourceset'],
34
+ ['beforeanysource', 'beforeanysource'],
35
+ ['aftersourceset', 'aftersourceset'],
36
+ ['afteranysource', 'afteranysource'],
37
+ ['beforecolumnsset', 'beforecolumnsset'],
38
+ ['beforecolumnapplied', 'beforecolumnapplied'],
39
+ ['aftercolumnsset', 'aftercolumnsset'],
40
+ ['beforefilterapply', 'beforefilterapply'],
41
+ ['beforefiltertrimmed', 'beforefiltertrimmed'],
42
+ ['beforetrimmed', 'beforetrimmed'],
43
+ ['aftertrimmed', 'aftertrimmed'],
44
+ ['viewportscroll', 'viewportscroll'],
45
+ ['beforeexport', 'beforeexport'],
46
+ ['beforeeditstart', 'beforeeditstart'],
47
+ ['aftercolumnresize', 'aftercolumnresize'],
48
+ ['beforerowdefinition', 'beforerowdefinition'],
49
+ ['filterconfigchanged', 'filterconfigchanged'],
50
+ ['sortingconfigchanged', 'sortingconfigchanged'],
51
+ ['rowheaderschanged', 'rowheaderschanged'],
52
+ ['beforegridrender', 'beforegridrender'],
53
+ ['aftergridrender', 'aftergridrender'],
54
+ ['aftergridinit', 'aftergridinit'],
55
+ ['additionaldatachanged', 'additionaldatachanged'],
56
+ ['afterthemechanged', 'afterthemechanged'],
57
+ ['created', 'created'],
58
+ ['beforepaste', 'beforepaste'],
59
+ ['beforepasteapply', 'beforepasteapply'],
60
+ ['pasteregion', 'pasteregion'],
61
+ ['afterpasteapply', 'afterpasteapply'],
62
+ ['beforecut', 'beforecut'],
63
+ ['clearregion', 'clearregion'],
64
+ ['beforecopy', 'beforecopy'],
65
+ ['beforecopyapply', 'beforecopyapply'],
66
+ ['copyregion', 'copyregion'],
67
+ ['beforerowrender', 'beforerowrender'],
68
+ ['afterrender', 'afterrender'],
69
+ ['beforecellrender', 'beforecellrender'],
70
+ ['beforedatarender', 'beforedatarender'],
71
+ ['dragstartcell', 'dragstartcell'],
72
+ ['celledit', 'celledit'],
73
+ ['closeedit', 'closeedit'],
74
+ ['filterChange', 'filterChange'],
75
+ ['resetChange', 'resetChange'],
76
+ ['beforefocusrender', 'beforefocusrender'],
77
+ ['beforescrollintoview', 'beforescrollintoview'],
78
+ ['afterfocus', 'afterfocus'],
79
+ ['beforeheaderclick', 'beforeheaderclick'],
80
+ ['headerresize', 'headerresize'],
81
+ ['beforeheaderresize', 'beforeheaderresize'],
82
+ ['headerdblclick', 'headerdblclick'],
83
+ ['beforeheaderrender', 'beforeheaderrender'],
84
+ ['afterheaderrender', 'afterheaderrender'],
85
+ ['rowdragstartinit', 'rowdragstartinit'],
86
+ ['rowdragendinit', 'rowdragendinit'],
87
+ ['rowdragmoveinit', 'rowdragmoveinit'],
88
+ ['rowdragmousemove', 'rowdragmousemove'],
89
+ ['rowdropinit', 'rowdropinit'],
90
+ ['roworderchange', 'roworderchange'],
91
+ ['beforecopyregion', 'beforecopyregion'],
92
+ ['beforepasteregion', 'beforepasteregion'],
93
+ ['celleditapply', 'celleditapply'],
94
+ ['beforecellfocusinit', 'beforecellfocusinit'],
95
+ ['beforenextvpfocus', 'beforenextvpfocus'],
96
+ ['setedit', 'setedit'],
97
+ ['beforeapplyrange', 'beforeapplyrange'],
98
+ ['beforesetrange', 'beforesetrange'],
99
+ ['setrange', 'setrange'],
100
+ ['beforeeditrender', 'beforeeditrender'],
101
+ ['selectall', 'selectall'],
102
+ ['canceledit', 'canceledit'],
103
+ ['settemprange', 'settemprange'],
104
+ ['beforesettemprange', 'beforesettemprange'],
105
+ ['applyfocus', 'applyfocus'],
106
+ ['focuscell', 'focuscell'],
107
+ ['beforerangedataapply', 'beforerangedataapply'],
108
+ ['selectionchangeinit', 'selectionchangeinit'],
109
+ ['beforerangecopyapply', 'beforerangecopyapply'],
110
+ ['rangeeditapply', 'rangeeditapply'],
111
+ ['clipboardrangecopy', 'clipboardrangecopy'],
112
+ ['clipboardrangepaste', 'clipboardrangepaste'],
113
+ ['beforekeydown', 'beforekeydown'],
114
+ ['beforekeyup', 'beforekeyup'],
115
+ ['beforecellsave', 'beforecellsave'],
116
+ ['scrollview', 'scrollview'],
117
+ ['ref', 'ref'],
118
+ ['scrollvirtual', 'scrollvirtual'],
119
+ ['scrollviewport', 'scrollviewport'],
120
+ ['resizeviewport', 'resizeviewport'],
121
+ ['scrollchange', 'scrollchange'],
122
+ ['scrollviewportsilent', 'scrollviewportsilent'],
123
+ ['html', 'html']
124
+ ]);
125
+
126
+ /**
127
+ * Automatically adds new rows when pasted data is larger than current rows
128
+ * @event newRows - is triggered when new rows are added. Data of new rows can be filled with default values. If the event is prevented, no rows will be added
129
+ */
130
+ class AutoAddRowsPlugin extends BasePlugin {
131
+ constructor(revogrid, providers) {
132
+ super(revogrid, providers);
133
+ this.addEventListener('beforepasteapply', evt => this.handleBeforePasteApply(evt));
134
+ }
135
+ handleBeforePasteApply(event) {
136
+ const start = this.providers.selection.focused;
137
+ const isEditing = this.providers.selection.edit != null;
138
+ if (!start || isEditing) {
139
+ return;
140
+ }
141
+ const rowLength = this.providers.data.stores.rgRow.store.get('items').length;
142
+ const endRow = start.y + event.detail.parsed.length;
143
+ if (rowLength < endRow) {
144
+ const count = endRow - rowLength;
145
+ const newRows = Array.from({ length: count }, (_, i) => ({
146
+ index: rowLength + i,
147
+ data: {},
148
+ }));
149
+ const event = this.emit('newRows', { newRows: newRows });
150
+ if (event.defaultPrevented) {
151
+ return;
152
+ }
153
+ const items = [
154
+ ...this.providers.data.stores.rgRow.store.get('source'),
155
+ ...event.detail.newRows.map(j => j.data),
156
+ ];
157
+ this.providers.data.setData(items);
158
+ }
159
+ }
160
+ }
161
+
162
+ export { AutoAddRowsPlugin, REVOGRID_EVENTS };
163
+
5
164
  //# sourceMappingURL=index.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["REVOGRID_EVENTS","Map","AutoAddRowsPlugin","BasePlugin","constructor","revogrid","providers","super","this","addEventListener","evt","handleBeforePasteApply","event","start","selection","focused","isEditing","edit","rowLength","data","stores","rgRow","store","get","length","endRow","y","detail","parsed","count","newRows","Array","from","_","i","index","emit","defaultPrevented","items","map","j","setData"],"sources":["src/types/events.ts","src/plugins/add-rows-on-paste.plugin.ts"],"sourcesContent":["\nexport type RevogridEvents = 'contentsizechanged'|\n 'beforeedit'|\n 'beforerangeedit'|\n 'afteredit'|\n 'beforeautofill'|\n 'beforerange'|\n 'afterfocus'|\n 'roworderchanged'|\n 'beforesorting'|\n 'beforesourcesortingapply'|\n 'beforesortingapply'|\n 'rowdragstart'|\n 'headerclick'|\n 'beforecellfocus'|\n 'beforefocuslost'|\n 'beforesourceset'|\n 'beforeanysource'|\n 'aftersourceset'|\n 'afteranysource'|\n 'beforecolumnsset'|\n 'beforecolumnapplied'|\n 'aftercolumnsset'|\n 'beforefilterapply'|\n 'beforefiltertrimmed'|\n 'beforetrimmed'|\n 'aftertrimmed'|\n 'viewportscroll'|\n 'beforeexport'|\n 'beforeeditstart'|\n 'aftercolumnresize'|\n 'beforerowdefinition'|\n 'filterconfigchanged'|\n 'sortingconfigchanged'|\n 'rowheaderschanged'|\n 'beforegridrender'|\n 'aftergridrender'|\n 'aftergridinit'|\n 'additionaldatachanged'|\n 'afterthemechanged'|\n 'created'|\n 'beforepaste'|\n 'beforepasteapply'|\n 'pasteregion'|\n 'afterpasteapply'|\n 'beforecut'|\n 'clearregion'|\n 'beforecopy'|\n 'beforecopyapply'|\n 'copyregion'|\n 'beforerowrender'|\n 'afterrender'|\n 'beforecellrender'|\n 'beforedatarender'|\n 'dragstartcell'|\n 'celledit'|\n 'closeedit'|\n 'filterChange'|\n 'resetChange'|\n 'beforefocusrender'|\n 'beforescrollintoview'|\n 'afterfocus'|\n 'beforeheaderclick'|\n 'headerresize'|\n 'beforeheaderresize'|\n 'headerdblclick'|\n 'beforeheaderrender'|\n 'afterheaderrender'|\n 'rowdragstartinit'|\n 'rowdragendinit'|\n 'rowdragmoveinit'|\n 'rowdragmousemove'|\n 'rowdropinit'|\n 'roworderchange'|\n 'beforecopyregion'|\n 'beforepasteregion'|\n 'celleditapply'|\n 'beforecellfocusinit'|\n 'beforenextvpfocus'|\n 'setedit'|\n 'beforeapplyrange'|\n 'beforesetrange'|\n 'setrange'|\n 'beforeeditrender'|\n 'selectall'|\n 'canceledit'|\n 'settemprange'|\n 'beforesettemprange'|\n 'applyfocus'|\n 'focuscell'|\n 'beforerangedataapply'|\n 'selectionchangeinit'|\n 'beforerangecopyapply'|\n 'rangeeditapply'|\n 'clipboardrangecopy'|\n 'clipboardrangepaste'|\n 'beforekeydown'|\n 'beforekeyup'|\n 'beforecellsave'|\n 'scrollview'|\n 'ref'|\n 'scrollvirtual'|\n 'scrollviewport'|\n 'resizeviewport'|\n 'scrollchange'|\n 'scrollviewportsilent'|\n 'html'\nexport const REVOGRID_EVENTS = new Map<RevogridEvents, RevogridEvents>([\n ['contentsizechanged', 'contentsizechanged'],\n ['beforeedit', 'beforeedit'],\n ['beforerangeedit', 'beforerangeedit'],\n ['afteredit', 'afteredit'],\n ['beforeautofill', 'beforeautofill'],\n ['beforerange', 'beforerange'],\n ['afterfocus', 'afterfocus'],\n ['roworderchanged', 'roworderchanged'],\n ['beforesorting', 'beforesorting'],\n ['beforesourcesortingapply', 'beforesourcesortingapply'],\n ['beforesortingapply', 'beforesortingapply'],\n ['rowdragstart', 'rowdragstart'],\n ['headerclick', 'headerclick'],\n ['beforecellfocus', 'beforecellfocus'],\n ['beforefocuslost', 'beforefocuslost'],\n ['beforesourceset', 'beforesourceset'],\n ['beforeanysource', 'beforeanysource'],\n ['aftersourceset', 'aftersourceset'],\n ['afteranysource', 'afteranysource'],\n ['beforecolumnsset', 'beforecolumnsset'],\n ['beforecolumnapplied', 'beforecolumnapplied'],\n ['aftercolumnsset', 'aftercolumnsset'],\n ['beforefilterapply', 'beforefilterapply'],\n ['beforefiltertrimmed', 'beforefiltertrimmed'],\n ['beforetrimmed', 'beforetrimmed'],\n ['aftertrimmed', 'aftertrimmed'],\n ['viewportscroll', 'viewportscroll'],\n ['beforeexport', 'beforeexport'],\n ['beforeeditstart', 'beforeeditstart'],\n ['aftercolumnresize', 'aftercolumnresize'],\n ['beforerowdefinition', 'beforerowdefinition'],\n ['filterconfigchanged', 'filterconfigchanged'],\n ['sortingconfigchanged', 'sortingconfigchanged'],\n ['rowheaderschanged', 'rowheaderschanged'],\n ['beforegridrender', 'beforegridrender'],\n ['aftergridrender', 'aftergridrender'],\n ['aftergridinit', 'aftergridinit'],\n ['additionaldatachanged', 'additionaldatachanged'],\n ['afterthemechanged', 'afterthemechanged'],\n ['created', 'created'],\n ['beforepaste', 'beforepaste'],\n ['beforepasteapply', 'beforepasteapply'],\n ['pasteregion', 'pasteregion'],\n ['afterpasteapply', 'afterpasteapply'],\n ['beforecut', 'beforecut'],\n ['clearregion', 'clearregion'],\n ['beforecopy', 'beforecopy'],\n ['beforecopyapply', 'beforecopyapply'],\n ['copyregion', 'copyregion'],\n ['beforerowrender', 'beforerowrender'],\n ['afterrender', 'afterrender'],\n ['beforecellrender', 'beforecellrender'],\n ['beforedatarender', 'beforedatarender'],\n ['dragstartcell', 'dragstartcell'],\n ['celledit', 'celledit'],\n ['closeedit', 'closeedit'],\n ['filterChange', 'filterChange'],\n ['resetChange', 'resetChange'],\n ['beforefocusrender', 'beforefocusrender'],\n ['beforescrollintoview', 'beforescrollintoview'],\n ['afterfocus', 'afterfocus'],\n ['beforeheaderclick', 'beforeheaderclick'],\n ['headerresize', 'headerresize'],\n ['beforeheaderresize', 'beforeheaderresize'],\n ['headerdblclick', 'headerdblclick'],\n ['beforeheaderrender', 'beforeheaderrender'],\n ['afterheaderrender', 'afterheaderrender'],\n ['rowdragstartinit', 'rowdragstartinit'],\n ['rowdragendinit', 'rowdragendinit'],\n ['rowdragmoveinit', 'rowdragmoveinit'],\n ['rowdragmousemove', 'rowdragmousemove'],\n ['rowdropinit', 'rowdropinit'],\n ['roworderchange', 'roworderchange'],\n ['beforecopyregion', 'beforecopyregion'],\n ['beforepasteregion', 'beforepasteregion'],\n ['celleditapply', 'celleditapply'],\n ['beforecellfocusinit', 'beforecellfocusinit'],\n ['beforenextvpfocus', 'beforenextvpfocus'],\n ['setedit', 'setedit'],\n ['beforeapplyrange', 'beforeapplyrange'],\n ['beforesetrange', 'beforesetrange'],\n ['setrange', 'setrange'],\n ['beforeeditrender', 'beforeeditrender'],\n ['selectall', 'selectall'],\n ['canceledit', 'canceledit'],\n ['settemprange', 'settemprange'],\n ['beforesettemprange', 'beforesettemprange'],\n ['applyfocus', 'applyfocus'],\n ['focuscell', 'focuscell'],\n ['beforerangedataapply', 'beforerangedataapply'],\n ['selectionchangeinit', 'selectionchangeinit'],\n ['beforerangecopyapply', 'beforerangecopyapply'],\n ['rangeeditapply', 'rangeeditapply'],\n ['clipboardrangecopy', 'clipboardrangecopy'],\n ['clipboardrangepaste', 'clipboardrangepaste'],\n ['beforekeydown', 'beforekeydown'],\n ['beforekeyup', 'beforekeyup'],\n ['beforecellsave', 'beforecellsave'],\n ['scrollview', 'scrollview'],\n ['ref', 'ref'],\n ['scrollvirtual', 'scrollvirtual'],\n ['scrollviewport', 'scrollviewport'],\n ['resizeviewport', 'resizeviewport'],\n ['scrollchange', 'scrollchange'],\n ['scrollviewportsilent', 'scrollviewportsilent'],\n ['html', 'html']\n]);","import type { PluginProviders } from '../types/plugin.types';\nimport { BasePlugin } from './base.plugin';\n\n/**\n * Automatically adds new rows when pasted data is larger than current rows\n * @event newRows - is triggered when new rows are added. Data of new rows can be filled with default values. If the event is prevented, no rows will be added\n */\nexport class AutoAddRowsPlugin extends BasePlugin {\n constructor(revogrid: HTMLRevoGridElement, providers: PluginProviders) {\n super(revogrid, providers);\n this.addEventListener('beforepasteapply', evt =>\n this.handleBeforePasteApply(evt),\n );\n }\n\n handleBeforePasteApply(\n event: CustomEvent<{\n raw: string;\n parsed: string[][];\n event: ClipboardEvent;\n }>,\n ) {\n const start = this.providers.selection.focused;\n const isEditing = this.providers.selection.edit != null;\n\n if (!start || isEditing) {\n return;\n }\n\n const rowLength =\n this.providers.data.stores.rgRow.store.get('items').length;\n\n const endRow = start.y + event.detail.parsed.length;\n\n if (rowLength < endRow) {\n const count = endRow - rowLength;\n const newRows = Array.from({ length: count }, (_, i) => ({\n index: rowLength + i,\n data: {},\n }));\n\n const event = this.emit('newRows', { newRows: newRows });\n\n if (event.defaultPrevented) {\n return;\n }\n\n const items = [\n ...this.providers.data.stores.rgRow.store.get('source'),\n ...event.detail.newRows.map(j => j.data),\n ];\n\n this.providers.data.setData(items);\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"file":"index.esm.js","mappings":";;;;;;;;;;;;;;;;MA2Ga,eAAe,GAAG,IAAI,GAAG,CAAiC;IACrE,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAC5C,CAAC,YAAY,EAAE,YAAY,CAAC;IAC5B,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACtC,CAAC,WAAW,EAAE,WAAW,CAAC;IAC1B,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IACpC,CAAC,aAAa,EAAE,aAAa,CAAC;IAC9B,CAAC,YAAY,EAAE,YAAY,CAAC;IAC5B,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACtC,CAAC,eAAe,EAAE,eAAe,CAAC;IAClC,CAAC,0BAA0B,EAAE,0BAA0B,CAAC;IACxD,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAC5C,CAAC,cAAc,EAAE,cAAc,CAAC;IAChC,CAAC,aAAa,EAAE,aAAa,CAAC;IAC9B,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACtC,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACtC,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACtC,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACtC,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IACpC,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IACpC,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACxC,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAC9C,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACtC,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAC1C,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAC9C,CAAC,eAAe,EAAE,eAAe,CAAC;IAClC,CAAC,cAAc,EAAE,cAAc,CAAC;IAChC,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IACpC,CAAC,cAAc,EAAE,cAAc,CAAC;IAChC,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACtC,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAC1C,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAC9C,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAC9C,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAChD,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAC1C,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACxC,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACtC,CAAC,eAAe,EAAE,eAAe,CAAC;IAClC,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;IAClD,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAC1C,CAAC,SAAS,EAAE,SAAS,CAAC;IACtB,CAAC,aAAa,EAAE,aAAa,CAAC;IAC9B,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACxC,CAAC,aAAa,EAAE,aAAa,CAAC;IAC9B,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACtC,CAAC,WAAW,EAAE,WAAW,CAAC;IAC1B,CAAC,aAAa,EAAE,aAAa,CAAC;IAC9B,CAAC,YAAY,EAAE,YAAY,CAAC;IAC5B,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACtC,CAAC,YAAY,EAAE,YAAY,CAAC;IAC5B,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACtC,CAAC,aAAa,EAAE,aAAa,CAAC;IAC9B,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACxC,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACxC,CAAC,eAAe,EAAE,eAAe,CAAC;IAClC,CAAC,UAAU,EAAE,UAAU,CAAC;IACxB,CAAC,WAAW,EAAE,WAAW,CAAC;IAC1B,CAAC,cAAc,EAAE,cAAc,CAAC;IAChC,CAAC,aAAa,EAAE,aAAa,CAAC;IAC9B,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAC1C,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAChD,CAAC,YAAY,EAAE,YAAY,CAAC;IAC5B,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAC1C,CAAC,cAAc,EAAE,cAAc,CAAC;IAChC,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAC5C,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IACpC,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAC5C,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAC1C,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACxC,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IACpC,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACtC,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACxC,CAAC,aAAa,EAAE,aAAa,CAAC;IAC9B,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IACpC,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACxC,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAC1C,CAAC,eAAe,EAAE,eAAe,CAAC;IAClC,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAC9C,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAC1C,CAAC,SAAS,EAAE,SAAS,CAAC;IACtB,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACxC,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IACpC,CAAC,UAAU,EAAE,UAAU,CAAC;IACxB,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IACxC,CAAC,WAAW,EAAE,WAAW,CAAC;IAC1B,CAAC,YAAY,EAAE,YAAY,CAAC;IAC5B,CAAC,cAAc,EAAE,cAAc,CAAC;IAChC,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAC5C,CAAC,YAAY,EAAE,YAAY,CAAC;IAC5B,CAAC,WAAW,EAAE,WAAW,CAAC;IAC1B,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAChD,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAC9C,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAChD,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IACpC,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAC5C,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAC9C,CAAC,eAAe,EAAE,eAAe,CAAC;IAClC,CAAC,aAAa,EAAE,aAAa,CAAC;IAC9B,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IACpC,CAAC,YAAY,EAAE,YAAY,CAAC;IAC5B,CAAC,KAAK,EAAE,KAAK,CAAC;IACd,CAAC,eAAe,EAAE,eAAe,CAAC;IAClC,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IACpC,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IACpC,CAAC,cAAc,EAAE,cAAc,CAAC;IAChC,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAChD,CAAC,MAAM,EAAE,MAAM,CAAC;CACjB;;ACnND;;;;MAIa,iBAAkB,SAAQ,UAAU;IAC/C,YAAY,QAA6B,EAAE,SAA0B;QACnE,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC3B,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,GAAG,IAC3C,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,CACjC,CAAC;KACH;IAED,sBAAsB,CACpB,KAIE;QAEF,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC;QAExD,IAAI,CAAC,KAAK,IAAI,SAAS,EAAE;YACvB,OAAO;SACR;QAED,MAAM,SAAS,GACb,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;QAE7D,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;QAEpD,IAAI,SAAS,GAAG,MAAM,EAAE;YACtB,MAAM,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC;YACjC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,MAAM;gBACvD,KAAK,EAAE,SAAS,GAAG,CAAC;gBACpB,IAAI,EAAE,EAAE;aACT,CAAC,CAAC,CAAC;YAEJ,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;YAEzD,IAAI,KAAK,CAAC,gBAAgB,EAAE;gBAC1B,OAAO;aACR;YAED,MAAM,KAAK,GAAG;gBACZ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;gBACvD,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;aACzC,CAAC;YAEF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACpC;KACF;;;;;","names":[],"sources":["src/types/events.ts","src/plugins/add-rows-on-paste.plugin.ts"],"sourcesContent":["\nexport type RevogridEvents = 'contentsizechanged'|\n 'beforeedit'|\n 'beforerangeedit'|\n 'afteredit'|\n 'beforeautofill'|\n 'beforerange'|\n 'afterfocus'|\n 'roworderchanged'|\n 'beforesorting'|\n 'beforesourcesortingapply'|\n 'beforesortingapply'|\n 'rowdragstart'|\n 'headerclick'|\n 'beforecellfocus'|\n 'beforefocuslost'|\n 'beforesourceset'|\n 'beforeanysource'|\n 'aftersourceset'|\n 'afteranysource'|\n 'beforecolumnsset'|\n 'beforecolumnapplied'|\n 'aftercolumnsset'|\n 'beforefilterapply'|\n 'beforefiltertrimmed'|\n 'beforetrimmed'|\n 'aftertrimmed'|\n 'viewportscroll'|\n 'beforeexport'|\n 'beforeeditstart'|\n 'aftercolumnresize'|\n 'beforerowdefinition'|\n 'filterconfigchanged'|\n 'sortingconfigchanged'|\n 'rowheaderschanged'|\n 'beforegridrender'|\n 'aftergridrender'|\n 'aftergridinit'|\n 'additionaldatachanged'|\n 'afterthemechanged'|\n 'created'|\n 'beforepaste'|\n 'beforepasteapply'|\n 'pasteregion'|\n 'afterpasteapply'|\n 'beforecut'|\n 'clearregion'|\n 'beforecopy'|\n 'beforecopyapply'|\n 'copyregion'|\n 'beforerowrender'|\n 'afterrender'|\n 'beforecellrender'|\n 'beforedatarender'|\n 'dragstartcell'|\n 'celledit'|\n 'closeedit'|\n 'filterChange'|\n 'resetChange'|\n 'beforefocusrender'|\n 'beforescrollintoview'|\n 'afterfocus'|\n 'beforeheaderclick'|\n 'headerresize'|\n 'beforeheaderresize'|\n 'headerdblclick'|\n 'beforeheaderrender'|\n 'afterheaderrender'|\n 'rowdragstartinit'|\n 'rowdragendinit'|\n 'rowdragmoveinit'|\n 'rowdragmousemove'|\n 'rowdropinit'|\n 'roworderchange'|\n 'beforecopyregion'|\n 'beforepasteregion'|\n 'celleditapply'|\n 'beforecellfocusinit'|\n 'beforenextvpfocus'|\n 'setedit'|\n 'beforeapplyrange'|\n 'beforesetrange'|\n 'setrange'|\n 'beforeeditrender'|\n 'selectall'|\n 'canceledit'|\n 'settemprange'|\n 'beforesettemprange'|\n 'applyfocus'|\n 'focuscell'|\n 'beforerangedataapply'|\n 'selectionchangeinit'|\n 'beforerangecopyapply'|\n 'rangeeditapply'|\n 'clipboardrangecopy'|\n 'clipboardrangepaste'|\n 'beforekeydown'|\n 'beforekeyup'|\n 'beforecellsave'|\n 'scrollview'|\n 'ref'|\n 'scrollvirtual'|\n 'scrollviewport'|\n 'resizeviewport'|\n 'scrollchange'|\n 'scrollviewportsilent'|\n 'html'\nexport const REVOGRID_EVENTS = new Map<RevogridEvents, RevogridEvents>([\n ['contentsizechanged', 'contentsizechanged'],\n ['beforeedit', 'beforeedit'],\n ['beforerangeedit', 'beforerangeedit'],\n ['afteredit', 'afteredit'],\n ['beforeautofill', 'beforeautofill'],\n ['beforerange', 'beforerange'],\n ['afterfocus', 'afterfocus'],\n ['roworderchanged', 'roworderchanged'],\n ['beforesorting', 'beforesorting'],\n ['beforesourcesortingapply', 'beforesourcesortingapply'],\n ['beforesortingapply', 'beforesortingapply'],\n ['rowdragstart', 'rowdragstart'],\n ['headerclick', 'headerclick'],\n ['beforecellfocus', 'beforecellfocus'],\n ['beforefocuslost', 'beforefocuslost'],\n ['beforesourceset', 'beforesourceset'],\n ['beforeanysource', 'beforeanysource'],\n ['aftersourceset', 'aftersourceset'],\n ['afteranysource', 'afteranysource'],\n ['beforecolumnsset', 'beforecolumnsset'],\n ['beforecolumnapplied', 'beforecolumnapplied'],\n ['aftercolumnsset', 'aftercolumnsset'],\n ['beforefilterapply', 'beforefilterapply'],\n ['beforefiltertrimmed', 'beforefiltertrimmed'],\n ['beforetrimmed', 'beforetrimmed'],\n ['aftertrimmed', 'aftertrimmed'],\n ['viewportscroll', 'viewportscroll'],\n ['beforeexport', 'beforeexport'],\n ['beforeeditstart', 'beforeeditstart'],\n ['aftercolumnresize', 'aftercolumnresize'],\n ['beforerowdefinition', 'beforerowdefinition'],\n ['filterconfigchanged', 'filterconfigchanged'],\n ['sortingconfigchanged', 'sortingconfigchanged'],\n ['rowheaderschanged', 'rowheaderschanged'],\n ['beforegridrender', 'beforegridrender'],\n ['aftergridrender', 'aftergridrender'],\n ['aftergridinit', 'aftergridinit'],\n ['additionaldatachanged', 'additionaldatachanged'],\n ['afterthemechanged', 'afterthemechanged'],\n ['created', 'created'],\n ['beforepaste', 'beforepaste'],\n ['beforepasteapply', 'beforepasteapply'],\n ['pasteregion', 'pasteregion'],\n ['afterpasteapply', 'afterpasteapply'],\n ['beforecut', 'beforecut'],\n ['clearregion', 'clearregion'],\n ['beforecopy', 'beforecopy'],\n ['beforecopyapply', 'beforecopyapply'],\n ['copyregion', 'copyregion'],\n ['beforerowrender', 'beforerowrender'],\n ['afterrender', 'afterrender'],\n ['beforecellrender', 'beforecellrender'],\n ['beforedatarender', 'beforedatarender'],\n ['dragstartcell', 'dragstartcell'],\n ['celledit', 'celledit'],\n ['closeedit', 'closeedit'],\n ['filterChange', 'filterChange'],\n ['resetChange', 'resetChange'],\n ['beforefocusrender', 'beforefocusrender'],\n ['beforescrollintoview', 'beforescrollintoview'],\n ['afterfocus', 'afterfocus'],\n ['beforeheaderclick', 'beforeheaderclick'],\n ['headerresize', 'headerresize'],\n ['beforeheaderresize', 'beforeheaderresize'],\n ['headerdblclick', 'headerdblclick'],\n ['beforeheaderrender', 'beforeheaderrender'],\n ['afterheaderrender', 'afterheaderrender'],\n ['rowdragstartinit', 'rowdragstartinit'],\n ['rowdragendinit', 'rowdragendinit'],\n ['rowdragmoveinit', 'rowdragmoveinit'],\n ['rowdragmousemove', 'rowdragmousemove'],\n ['rowdropinit', 'rowdropinit'],\n ['roworderchange', 'roworderchange'],\n ['beforecopyregion', 'beforecopyregion'],\n ['beforepasteregion', 'beforepasteregion'],\n ['celleditapply', 'celleditapply'],\n ['beforecellfocusinit', 'beforecellfocusinit'],\n ['beforenextvpfocus', 'beforenextvpfocus'],\n ['setedit', 'setedit'],\n ['beforeapplyrange', 'beforeapplyrange'],\n ['beforesetrange', 'beforesetrange'],\n ['setrange', 'setrange'],\n ['beforeeditrender', 'beforeeditrender'],\n ['selectall', 'selectall'],\n ['canceledit', 'canceledit'],\n ['settemprange', 'settemprange'],\n ['beforesettemprange', 'beforesettemprange'],\n ['applyfocus', 'applyfocus'],\n ['focuscell', 'focuscell'],\n ['beforerangedataapply', 'beforerangedataapply'],\n ['selectionchangeinit', 'selectionchangeinit'],\n ['beforerangecopyapply', 'beforerangecopyapply'],\n ['rangeeditapply', 'rangeeditapply'],\n ['clipboardrangecopy', 'clipboardrangecopy'],\n ['clipboardrangepaste', 'clipboardrangepaste'],\n ['beforekeydown', 'beforekeydown'],\n ['beforekeyup', 'beforekeyup'],\n ['beforecellsave', 'beforecellsave'],\n ['scrollview', 'scrollview'],\n ['ref', 'ref'],\n ['scrollvirtual', 'scrollvirtual'],\n ['scrollviewport', 'scrollviewport'],\n ['resizeviewport', 'resizeviewport'],\n ['scrollchange', 'scrollchange'],\n ['scrollviewportsilent', 'scrollviewportsilent'],\n ['html', 'html']\n]);","import type { PluginProviders } from '../types/plugin.types';\nimport { BasePlugin } from './base.plugin';\n\n/**\n * Automatically adds new rows when pasted data is larger than current rows\n * @event newRows - is triggered when new rows are added. Data of new rows can be filled with default values. If the event is prevented, no rows will be added\n */\nexport class AutoAddRowsPlugin extends BasePlugin {\n constructor(revogrid: HTMLRevoGridElement, providers: PluginProviders) {\n super(revogrid, providers);\n this.addEventListener('beforepasteapply', evt =>\n this.handleBeforePasteApply(evt),\n );\n }\n\n handleBeforePasteApply(\n event: CustomEvent<{\n raw: string;\n parsed: string[][];\n event: ClipboardEvent;\n }>,\n ) {\n const start = this.providers.selection.focused;\n const isEditing = this.providers.selection.edit != null;\n\n if (!start || isEditing) {\n return;\n }\n\n const rowLength =\n this.providers.data.stores.rgRow.store.get('items').length;\n\n const endRow = start.y + event.detail.parsed.length;\n\n if (rowLength < endRow) {\n const count = endRow - rowLength;\n const newRows = Array.from({ length: count }, (_, i) => ({\n index: rowLength + i,\n data: {},\n }));\n\n const event = this.emit('newRows', { newRows: newRows });\n\n if (event.defaultPrevented) {\n return;\n }\n\n const items = [\n ...this.providers.data.stores.rgRow.store.get('source'),\n ...event.detail.newRows.map(j => j.data),\n ];\n\n this.providers.data.setData(items);\n }\n }\n}\n"],"version":3}
@@ -1,5 +1,89 @@
1
1
  /*!
2
2
  * Built by Revolist OU ❤️
3
3
  */
4
- import{a5 as n,a6 as r,U as e,V as t}from"./dimension.helpers-5567e424.js";function u(n){const e=[r.ARROW_DOWN,r.ARROW_UP,r.ARROW_LEFT,r.ARROW_RIGHT,r.HOME,r.END,r.DELETE,r.BACKSPACE,r.F1,r.F2,r.F3,r.F4,r.F5,r.F6,r.F7,r.F8,r.F9,r.F10,r.F11,r.F12,r.TAB,r.PAGE_DOWN,r.PAGE_UP,r.ENTER,r.ESCAPE,r.SHIFT,r.CAPS_LOCK,r.ALT];return e.indexOf(n)!==-1}function s(e,t){if(t.includes(n.mac)){return[r.COMMAND_LEFT,r.COMMAND_RIGHT,r.COMMAND_FIREFOX].includes(e)}return e===r.CONTROL}function a(n){return[r.CONTROL,r.COMMAND_LEFT,r.COMMAND_RIGHT,r.COMMAND_FIREFOX].includes(n)}function i(n){return e.BACKSPACE===n||e.DELETE===n}function o(n){return e.TAB===n}function f(n){return t.TAB===n}function c(n){return t.ENTER===n}function y(n){return n.ctrlKey&&n.code==="KeyX"||n.metaKey&&n.code==="KeyX"}function K(n){return n.ctrlKey&&n.code==="KeyC"||n.metaKey&&n.code==="KeyC"}function m(n){return n.ctrlKey&&n.code==="KeyV"||n.metaKey&&n.code==="KeyV"}function p(n){return n.ctrlKey&&n.code==="KeyA"||n.metaKey&&n.code==="KeyA"}export{s as a,a as b,i as c,o as d,f as e,c as f,y as g,K as h,u as i,m as j,p as k};
4
+ import { a5 as OsPlatform, a6 as KeyCodesEnum, U as codesLetter, V as keyValues } from './dimension.helpers-5567e424.js';
5
+
6
+ function isMetaKey(code) {
7
+ const keys = [
8
+ KeyCodesEnum.ARROW_DOWN,
9
+ KeyCodesEnum.ARROW_UP,
10
+ KeyCodesEnum.ARROW_LEFT,
11
+ KeyCodesEnum.ARROW_RIGHT,
12
+ KeyCodesEnum.HOME,
13
+ KeyCodesEnum.END,
14
+ KeyCodesEnum.DELETE,
15
+ KeyCodesEnum.BACKSPACE,
16
+ KeyCodesEnum.F1,
17
+ KeyCodesEnum.F2,
18
+ KeyCodesEnum.F3,
19
+ KeyCodesEnum.F4,
20
+ KeyCodesEnum.F5,
21
+ KeyCodesEnum.F6,
22
+ KeyCodesEnum.F7,
23
+ KeyCodesEnum.F8,
24
+ KeyCodesEnum.F9,
25
+ KeyCodesEnum.F10,
26
+ KeyCodesEnum.F11,
27
+ KeyCodesEnum.F12,
28
+ KeyCodesEnum.TAB,
29
+ KeyCodesEnum.PAGE_DOWN,
30
+ KeyCodesEnum.PAGE_UP,
31
+ KeyCodesEnum.ENTER,
32
+ KeyCodesEnum.ESCAPE,
33
+ KeyCodesEnum.SHIFT,
34
+ KeyCodesEnum.CAPS_LOCK,
35
+ KeyCodesEnum.ALT,
36
+ ];
37
+ return keys.indexOf(code) !== -1;
38
+ }
39
+ // navigator.platform
40
+ function isCtrlKey(code, platform) {
41
+ if (platform.includes(OsPlatform.mac)) {
42
+ return [
43
+ KeyCodesEnum.COMMAND_LEFT,
44
+ KeyCodesEnum.COMMAND_RIGHT,
45
+ KeyCodesEnum.COMMAND_FIREFOX,
46
+ ].includes(code);
47
+ }
48
+ return code === KeyCodesEnum.CONTROL;
49
+ }
50
+ function isCtrlMetaKey(code) {
51
+ return [
52
+ KeyCodesEnum.CONTROL,
53
+ KeyCodesEnum.COMMAND_LEFT,
54
+ KeyCodesEnum.COMMAND_RIGHT,
55
+ KeyCodesEnum.COMMAND_FIREFOX,
56
+ ].includes(code);
57
+ }
58
+ function isClear(code) {
59
+ return codesLetter.BACKSPACE === code || codesLetter.DELETE === code;
60
+ }
61
+ function isTab(code) {
62
+ return codesLetter.TAB === code;
63
+ }
64
+ function isTabKeyValue(key) {
65
+ return keyValues.TAB === key;
66
+ }
67
+ function isEnterKeyValue(key) {
68
+ return keyValues.ENTER === key;
69
+ }
70
+ function isCut(event) {
71
+ return ((event.ctrlKey && event.code === 'KeyX') || // Ctrl + X on Windows
72
+ (event.metaKey && event.code === 'KeyX')); // Cmd + X on Mac
73
+ }
74
+ function isCopy(event) {
75
+ return ((event.ctrlKey && event.code === 'KeyC') || // Ctrl + C on Windows
76
+ (event.metaKey && event.code === 'KeyC')); // Cmd + C on Mac
77
+ }
78
+ function isPaste(event) {
79
+ return ((event.ctrlKey && event.code === 'KeyV') || // Ctrl + V on Windows
80
+ (event.metaKey && event.code === 'KeyV')); // Cmd + V on Mac
81
+ }
82
+ function isAll(event) {
83
+ return ((event.ctrlKey && event.code === 'KeyA') || // Ctrl + A on Windows
84
+ (event.metaKey && event.code === 'KeyA')); // Cmd + A on Mac
85
+ }
86
+
87
+ export { isCtrlKey as a, isCtrlMetaKey as b, isClear as c, isTab as d, isTabKeyValue as e, isEnterKeyValue as f, isCut as g, isCopy as h, isMetaKey as i, isPaste as j, isAll as k };
88
+
5
89
  //# sourceMappingURL=key.utils-3632161b.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["isMetaKey","code","keys","KeyCodesEnum","ARROW_DOWN","ARROW_UP","ARROW_LEFT","ARROW_RIGHT","HOME","END","DELETE","BACKSPACE","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","TAB","PAGE_DOWN","PAGE_UP","ENTER","ESCAPE","SHIFT","CAPS_LOCK","ALT","indexOf","isCtrlKey","platform","includes","OsPlatform","mac","COMMAND_LEFT","COMMAND_RIGHT","COMMAND_FIREFOX","CONTROL","isCtrlMetaKey","isClear","codesLetter","isTab","isTabKeyValue","key","keyValues","isEnterKeyValue","isCut","event","ctrlKey","metaKey","isCopy","isPaste","isAll"],"sources":["src/utils/key.utils.ts"],"sourcesContent":["import KeyCodesEnum, { codesLetter, keyValues } from './key.codes';\nimport OsPlatform from './platform';\n\n\nexport function isMetaKey(code: number): boolean {\n const keys: KeyCodesEnum[] = [\n KeyCodesEnum.ARROW_DOWN,\n KeyCodesEnum.ARROW_UP,\n KeyCodesEnum.ARROW_LEFT,\n KeyCodesEnum.ARROW_RIGHT,\n KeyCodesEnum.HOME,\n KeyCodesEnum.END,\n KeyCodesEnum.DELETE,\n KeyCodesEnum.BACKSPACE,\n KeyCodesEnum.F1,\n KeyCodesEnum.F2,\n KeyCodesEnum.F3,\n KeyCodesEnum.F4,\n KeyCodesEnum.F5,\n KeyCodesEnum.F6,\n KeyCodesEnum.F7,\n KeyCodesEnum.F8,\n KeyCodesEnum.F9,\n KeyCodesEnum.F10,\n KeyCodesEnum.F11,\n KeyCodesEnum.F12,\n KeyCodesEnum.TAB,\n KeyCodesEnum.PAGE_DOWN,\n KeyCodesEnum.PAGE_UP,\n KeyCodesEnum.ENTER,\n KeyCodesEnum.ESCAPE,\n KeyCodesEnum.SHIFT,\n KeyCodesEnum.CAPS_LOCK,\n KeyCodesEnum.ALT,\n ];\n\n return keys.indexOf(code) !== -1;\n}\n\n// navigator.platform\nexport function isCtrlKey(code: number, platform: string): boolean {\n if (platform.includes(OsPlatform.mac)) {\n return [\n KeyCodesEnum.COMMAND_LEFT,\n KeyCodesEnum.COMMAND_RIGHT,\n KeyCodesEnum.COMMAND_FIREFOX,\n ].includes(code);\n }\n\n return code === KeyCodesEnum.CONTROL;\n}\n\nexport function isCtrlMetaKey(code: KeyCodesEnum): boolean {\n return [\n KeyCodesEnum.CONTROL,\n KeyCodesEnum.COMMAND_LEFT,\n KeyCodesEnum.COMMAND_RIGHT,\n KeyCodesEnum.COMMAND_FIREFOX,\n ].includes(code);\n}\n\nexport function isClear(code: string): boolean {\n return codesLetter.BACKSPACE === code || codesLetter.DELETE === code;\n}\n\nexport function isTab(code: string): boolean {\n return codesLetter.TAB === code;\n}\nexport function isTabKeyValue(key: string): boolean {\n return keyValues.TAB === key;\n}\n\nexport function isEnterKeyValue(key: string): boolean {\n return keyValues.ENTER === key;\n}\n\nexport function isCut(event: KeyboardEvent): boolean {\n return (\n (event.ctrlKey && event.code === 'KeyX') || // Ctrl + X on Windows\n (event.metaKey && event.code === 'KeyX')\n ); // Cmd + X on Mac\n}\nexport function isCopy(event: KeyboardEvent): boolean {\n return (\n (event.ctrlKey && event.code === 'KeyC') || // Ctrl + C on Windows\n (event.metaKey && event.code === 'KeyC')\n ); // Cmd + C on Mac\n}\nexport function isPaste(event: KeyboardEvent): boolean {\n return (\n (event.ctrlKey && event.code === 'KeyV') || // Ctrl + V on Windows\n (event.metaKey && event.code === 'KeyV')\n ); // Cmd + V on Mac\n}\nexport function isAll(event: KeyboardEvent): boolean {\n return (\n (event.ctrlKey && event.code === 'KeyA') || // Ctrl + A on Windows\n (event.metaKey && event.code === 'KeyA')\n ); // Cmd + A on Mac\n}\n"],"mappings":";;;oFAIgBA,EAAUC,GACxB,MAAMC,EAAuB,CAC3BC,EAAaC,WACbD,EAAaE,SACbF,EAAaG,WACbH,EAAaI,YACbJ,EAAaK,KACbL,EAAaM,IACbN,EAAaO,OACbP,EAAaQ,UACbR,EAAaS,GACbT,EAAaU,GACbV,EAAaW,GACbX,EAAaY,GACbZ,EAAaa,GACbb,EAAac,GACbd,EAAae,GACbf,EAAagB,GACbhB,EAAaiB,GACbjB,EAAakB,IACblB,EAAamB,IACbnB,EAAaoB,IACbpB,EAAaqB,IACbrB,EAAasB,UACbtB,EAAauB,QACbvB,EAAawB,MACbxB,EAAayB,OACbzB,EAAa0B,MACb1B,EAAa2B,UACb3B,EAAa4B,KAGf,OAAO7B,EAAK8B,QAAQ/B,MAAW,CACjC,C,SAGgBgC,EAAUhC,EAAciC,GACtC,GAAIA,EAASC,SAASC,EAAWC,KAAM,CACrC,MAAO,CACLlC,EAAamC,aACbnC,EAAaoC,cACbpC,EAAaqC,iBACbL,SAASlC,E,CAGb,OAAOA,IAASE,EAAasC,OAC/B,C,SAEgBC,EAAczC,GAC5B,MAAO,CACLE,EAAasC,QACbtC,EAAamC,aACbnC,EAAaoC,cACbpC,EAAaqC,iBACbL,SAASlC,EACb,C,SAEgB0C,EAAQ1C,GACtB,OAAO2C,EAAYjC,YAAcV,GAAQ2C,EAAYlC,SAAWT,CAClE,C,SAEgB4C,EAAM5C,GACpB,OAAO2C,EAAYpB,MAAQvB,CAC7B,C,SACgB6C,EAAcC,GAC5B,OAAOC,EAAUxB,MAAQuB,CAC3B,C,SAEgBE,EAAgBF,GAC9B,OAAOC,EAAUrB,QAAUoB,CAC7B,C,SAEgBG,EAAMC,GACpB,OACGA,EAAMC,SAAWD,EAAMlD,OAAS,QAChCkD,EAAME,SAAWF,EAAMlD,OAAS,MAErC,C,SACgBqD,EAAOH,GACrB,OACGA,EAAMC,SAAWD,EAAMlD,OAAS,QAChCkD,EAAME,SAAWF,EAAMlD,OAAS,MAErC,C,SACgBsD,EAAQJ,GACtB,OACGA,EAAMC,SAAWD,EAAMlD,OAAS,QAChCkD,EAAME,SAAWF,EAAMlD,OAAS,MAErC,C,SACgBuD,EAAML,GACpB,OACGA,EAAMC,SAAWD,EAAMlD,OAAS,QAChCkD,EAAME,SAAWF,EAAMlD,OAAS,MAErC,Q","ignoreList":[]}
1
+ {"file":"key.utils-3632161b.js","mappings":"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","names":[],"sources":["src/utils/key.utils.ts"],"sourcesContent":["import KeyCodesEnum, { codesLetter, keyValues } from './key.codes';\nimport OsPlatform from './platform';\n\n\nexport function isMetaKey(code: number): boolean {\n const keys: KeyCodesEnum[] = [\n KeyCodesEnum.ARROW_DOWN,\n KeyCodesEnum.ARROW_UP,\n KeyCodesEnum.ARROW_LEFT,\n KeyCodesEnum.ARROW_RIGHT,\n KeyCodesEnum.HOME,\n KeyCodesEnum.END,\n KeyCodesEnum.DELETE,\n KeyCodesEnum.BACKSPACE,\n KeyCodesEnum.F1,\n KeyCodesEnum.F2,\n KeyCodesEnum.F3,\n KeyCodesEnum.F4,\n KeyCodesEnum.F5,\n KeyCodesEnum.F6,\n KeyCodesEnum.F7,\n KeyCodesEnum.F8,\n KeyCodesEnum.F9,\n KeyCodesEnum.F10,\n KeyCodesEnum.F11,\n KeyCodesEnum.F12,\n KeyCodesEnum.TAB,\n KeyCodesEnum.PAGE_DOWN,\n KeyCodesEnum.PAGE_UP,\n KeyCodesEnum.ENTER,\n KeyCodesEnum.ESCAPE,\n KeyCodesEnum.SHIFT,\n KeyCodesEnum.CAPS_LOCK,\n KeyCodesEnum.ALT,\n ];\n\n return keys.indexOf(code) !== -1;\n}\n\n// navigator.platform\nexport function isCtrlKey(code: number, platform: string): boolean {\n if (platform.includes(OsPlatform.mac)) {\n return [\n KeyCodesEnum.COMMAND_LEFT,\n KeyCodesEnum.COMMAND_RIGHT,\n KeyCodesEnum.COMMAND_FIREFOX,\n ].includes(code);\n }\n\n return code === KeyCodesEnum.CONTROL;\n}\n\nexport function isCtrlMetaKey(code: KeyCodesEnum): boolean {\n return [\n KeyCodesEnum.CONTROL,\n KeyCodesEnum.COMMAND_LEFT,\n KeyCodesEnum.COMMAND_RIGHT,\n KeyCodesEnum.COMMAND_FIREFOX,\n ].includes(code);\n}\n\nexport function isClear(code: string): boolean {\n return codesLetter.BACKSPACE === code || codesLetter.DELETE === code;\n}\n\nexport function isTab(code: string): boolean {\n return codesLetter.TAB === code;\n}\nexport function isTabKeyValue(key: string): boolean {\n return keyValues.TAB === key;\n}\n\nexport function isEnterKeyValue(key: string): boolean {\n return keyValues.ENTER === key;\n}\n\nexport function isCut(event: KeyboardEvent): boolean {\n return (\n (event.ctrlKey && event.code === 'KeyX') || // Ctrl + X on Windows\n (event.metaKey && event.code === 'KeyX')\n ); // Cmd + X on Mac\n}\nexport function isCopy(event: KeyboardEvent): boolean {\n return (\n (event.ctrlKey && event.code === 'KeyC') || // Ctrl + C on Windows\n (event.metaKey && event.code === 'KeyC')\n ); // Cmd + C on Mac\n}\nexport function isPaste(event: KeyboardEvent): boolean {\n return (\n (event.ctrlKey && event.code === 'KeyV') || // Ctrl + V on Windows\n (event.metaKey && event.code === 'KeyV')\n ); // Cmd + V on Mac\n}\nexport function isAll(event: KeyboardEvent): boolean {\n return (\n (event.ctrlKey && event.code === 'KeyA') || // Ctrl + A on Windows\n (event.metaKey && event.code === 'KeyA')\n ); // Cmd + A on Mac\n}\n"],"version":3}