@revolist/revogrid 4.16.0 → 4.17.0

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 (178) hide show
  1. package/dist/cjs/{app-globals-CnL-iuWZ.js → app-globals-D67EXhgK.js} +3 -3
  2. package/dist/cjs/{app-globals-CnL-iuWZ.js.map → app-globals-D67EXhgK.js.map} +1 -1
  3. package/dist/cjs/{cell-renderer-RYPxTSX7.js → cell-renderer-TmNnqu7r.js} +5 -5
  4. package/dist/cjs/{cell-renderer-RYPxTSX7.js.map → cell-renderer-TmNnqu7r.js.map} +1 -1
  5. package/dist/cjs/{column.drag.plugin-CxKQ-GqY.js → column.drag.plugin-pCfjUQwZ.js} +13 -13
  6. package/dist/cjs/column.drag.plugin-pCfjUQwZ.js.map +1 -0
  7. package/dist/cjs/{column.service-urln-gkz.js → column.service-euEyR799.js} +4 -4
  8. package/dist/cjs/{column.service-urln-gkz.js.map → column.service-euEyR799.js.map} +1 -1
  9. package/dist/cjs/{dimension.helpers-BmZOxsgq.js → dimension.helpers-C5PvAWJW.js} +24 -8
  10. package/dist/cjs/dimension.helpers-C5PvAWJW.js.map +1 -0
  11. package/dist/cjs/{edit.utils-Bx3jy_dC.js → edit.utils-T20rr-g4.js} +3 -3
  12. package/dist/cjs/{edit.utils-Bx3jy_dC.js.map → edit.utils-T20rr-g4.js.map} +1 -1
  13. package/dist/cjs/{filter.button-rIn9mDMT.js → filter.button-DSsWNs23.js} +3 -3
  14. package/dist/cjs/{filter.button-rIn9mDMT.js.map → filter.button-DSsWNs23.js.map} +1 -1
  15. package/dist/cjs/{header-cell-renderer-c5sd3ee7.js → header-cell-renderer-BwHvC5YY.js} +4 -4
  16. package/dist/cjs/{header-cell-renderer-c5sd3ee7.js.map → header-cell-renderer-BwHvC5YY.js.map} +1 -1
  17. package/dist/cjs/{index-BbtPQ4Br.js → index-BF1c1pO3.js} +196 -133
  18. package/dist/cjs/index-BF1c1pO3.js.map +1 -0
  19. package/dist/cjs/index.cjs.js +10 -10
  20. package/dist/cjs/loader.cjs.js +3 -3
  21. package/dist/cjs/revo-grid.cjs.entry.js +8 -8
  22. package/dist/cjs/revo-grid.cjs.entry.js.map +1 -1
  23. package/dist/cjs/revo-grid.cjs.js +4 -4
  24. package/dist/cjs/revo-grid.cjs.js.map +1 -1
  25. package/dist/cjs/revo-grid.entry.cjs.js.map +1 -1
  26. package/dist/cjs/revogr-attribution.revogr-extra.revogr-focus.revogr-overlay-selection.revogr-row-headers.revogr-scroll-virtual.revogr-temp-range.entry.cjs.js.map +1 -1
  27. package/dist/cjs/revogr-attribution_7.cjs.entry.js +10 -10
  28. package/dist/cjs/revogr-attribution_7.cjs.entry.js.map +1 -1
  29. package/dist/cjs/revogr-clipboard.revogr-edit.revogr-order-editor.entry.cjs.js.map +1 -1
  30. package/dist/cjs/revogr-clipboard_3.cjs.entry.js +5 -5
  31. package/dist/cjs/revogr-clipboard_3.cjs.entry.js.map +1 -1
  32. package/dist/cjs/revogr-data.revogr-header.revogr-viewport-scroll.vnode-html.entry.cjs.js.map +1 -1
  33. package/dist/cjs/revogr-data_4.cjs.entry.js +10 -10
  34. package/dist/cjs/revogr-data_4.cjs.entry.js.map +1 -1
  35. package/dist/cjs/revogr-filter-panel.cjs.entry.js +3 -3
  36. package/dist/cjs/revogr-filter-panel.cjs.entry.js.map +1 -1
  37. package/dist/cjs/revogr-filter-panel.entry.cjs.js.map +1 -1
  38. package/dist/cjs/{text-editor-pxAtbkyc.js → text-editor-C6fUGszl.js} +4 -4
  39. package/dist/cjs/{text-editor-pxAtbkyc.js.map → text-editor-C6fUGszl.js.map} +1 -1
  40. package/dist/cjs/{throttle-CQppnhEi.js → throttle-BBq2OiCM.js} +3 -3
  41. package/dist/cjs/{throttle-CQppnhEi.js.map → throttle-BBq2OiCM.js.map} +1 -1
  42. package/dist/cjs/{viewport.store-BrZDEt69.js → viewport.store-BQqAGkuJ.js} +3 -3
  43. package/dist/cjs/{viewport.store-BrZDEt69.js.map → viewport.store-BQqAGkuJ.js.map} +1 -1
  44. package/dist/collection/collection-manifest.json +1 -1
  45. package/dist/collection/components/data/revogr-data-style.css +0 -72
  46. package/dist/collection/components/editors/revogr-edit-style.css +0 -72
  47. package/dist/collection/components/header/revogr-header-style.css +0 -72
  48. package/dist/collection/components/overlay/revogr-overlay-style.css +0 -72
  49. package/dist/collection/components/revoGrid/revo-grid-style.css +3 -75
  50. package/dist/collection/components/scroll/revogr-viewport-scroll-style.css +0 -72
  51. package/dist/collection/components/scrollable/revogr-scroll-style.css +0 -72
  52. package/dist/collection/components/selectionFocus/revogr-focus-style.css +0 -72
  53. package/dist/collection/components/selectionTempRange/revogr-temp-range-style.css +0 -72
  54. package/dist/collection/plugins/filter/filter.style.css +0 -72
  55. package/dist/collection/plugins/sorting/sorting.func.js +2 -2
  56. package/dist/collection/plugins/sorting/sorting.func.js.map +1 -1
  57. package/dist/collection/plugins/sorting/sorting.plugin.js +3 -3
  58. package/dist/collection/plugins/sorting/sorting.plugin.js.map +1 -1
  59. package/dist/esm/{app-globals-Bp4Vbqcr.js → app-globals-C3ZHKjnB.js} +3 -3
  60. package/dist/esm/{app-globals-Bp4Vbqcr.js.map → app-globals-C3ZHKjnB.js.map} +1 -1
  61. package/dist/{revo-grid/cell-renderer-C6x60eGs.js → esm/cell-renderer-AeQIe3qD.js} +5 -5
  62. package/dist/{revo-grid/cell-renderer-C6x60eGs.js.map → esm/cell-renderer-AeQIe3qD.js.map} +1 -1
  63. package/dist/esm/{column.drag.plugin-Capa_0kN.js → column.drag.plugin-Dc7h1kmS.js} +13 -13
  64. package/dist/esm/column.drag.plugin-Dc7h1kmS.js.map +1 -0
  65. package/dist/esm/{column.service-QLZCp9EY.js → column.service-DyqJ8oYq.js} +4 -4
  66. package/dist/{revo-grid/column.service-QLZCp9EY.js.map → esm/column.service-DyqJ8oYq.js.map} +1 -1
  67. package/dist/{revo-grid/dimension.helpers-pcKIUO61.js → esm/dimension.helpers-D5lwLPzd.js} +24 -8
  68. package/dist/{revo-grid/dimension.helpers-pcKIUO61.js.map → esm/dimension.helpers-D5lwLPzd.js.map} +1 -1
  69. package/dist/esm/{edit.utils-BBbK2wbv.js → edit.utils-B6bLKSQh.js} +3 -3
  70. package/dist/esm/{edit.utils-BBbK2wbv.js.map → edit.utils-B6bLKSQh.js.map} +1 -1
  71. package/dist/{revo-grid/filter.button-BpZR0kGU.js → esm/filter.button-DmOE7VCJ.js} +3 -3
  72. package/dist/esm/{filter.button-BpZR0kGU.js.map → filter.button-DmOE7VCJ.js.map} +1 -1
  73. package/dist/esm/{header-cell-renderer-AAPG96e2.js → header-cell-renderer-XxSVxgM5.js} +4 -4
  74. package/dist/esm/{header-cell-renderer-AAPG96e2.js.map → header-cell-renderer-XxSVxgM5.js.map} +1 -1
  75. package/dist/esm/{index-gUcGIzDv.js → index-Dyptvvxf.js} +196 -133
  76. package/dist/esm/index-Dyptvvxf.js.map +1 -0
  77. package/dist/esm/index.js +11 -11
  78. package/dist/esm/loader.js +4 -4
  79. package/dist/esm/revo-grid.entry.js +8 -8
  80. package/dist/esm/revo-grid.entry.js.map +1 -1
  81. package/dist/esm/revo-grid.js +5 -5
  82. package/dist/esm/revo-grid.js.map +1 -1
  83. package/dist/esm/revogr-attribution.revogr-extra.revogr-focus.revogr-overlay-selection.revogr-row-headers.revogr-scroll-virtual.revogr-temp-range.entry.js.map +1 -1
  84. package/dist/esm/revogr-attribution_7.entry.js +10 -10
  85. package/dist/esm/revogr-attribution_7.entry.js.map +1 -1
  86. package/dist/esm/revogr-clipboard.revogr-edit.revogr-order-editor.entry.js.map +1 -1
  87. package/dist/esm/revogr-clipboard_3.entry.js +5 -5
  88. package/dist/esm/revogr-clipboard_3.entry.js.map +1 -1
  89. package/dist/esm/revogr-data.revogr-header.revogr-viewport-scroll.vnode-html.entry.js.map +1 -1
  90. package/dist/esm/revogr-data_4.entry.js +10 -10
  91. package/dist/esm/revogr-data_4.entry.js.map +1 -1
  92. package/dist/esm/revogr-filter-panel.entry.js +3 -3
  93. package/dist/esm/revogr-filter-panel.entry.js.map +1 -1
  94. package/dist/esm/{text-editor-92MGc5Bc.js → text-editor-DlCRmV75.js} +4 -4
  95. package/dist/esm/{text-editor-92MGc5Bc.js.map → text-editor-DlCRmV75.js.map} +1 -1
  96. package/dist/esm/{throttle-Dshl76F1.js → throttle-DcjZyclk.js} +3 -3
  97. package/dist/{revo-grid/throttle-Dshl76F1.js.map → esm/throttle-DcjZyclk.js.map} +1 -1
  98. package/dist/{revo-grid/viewport.store-C89n4AEU.js → esm/viewport.store-2mQugd8S.js} +3 -3
  99. package/dist/{revo-grid/viewport.store-C89n4AEU.js.map → esm/viewport.store-2mQugd8S.js.map} +1 -1
  100. package/dist/revo-grid/{app-globals-Bp4Vbqcr.js → app-globals-C3ZHKjnB.js} +3 -3
  101. package/dist/revo-grid/{app-globals-Bp4Vbqcr.js.map → app-globals-C3ZHKjnB.js.map} +1 -1
  102. package/dist/{esm/cell-renderer-C6x60eGs.js → revo-grid/cell-renderer-AeQIe3qD.js} +5 -5
  103. package/dist/{esm/cell-renderer-C6x60eGs.js.map → revo-grid/cell-renderer-AeQIe3qD.js.map} +1 -1
  104. package/dist/revo-grid/{column.drag.plugin-Capa_0kN.js → column.drag.plugin-Dc7h1kmS.js} +13 -13
  105. package/dist/revo-grid/column.drag.plugin-Dc7h1kmS.js.map +1 -0
  106. package/dist/revo-grid/{column.service-QLZCp9EY.js → column.service-DyqJ8oYq.js} +4 -4
  107. package/dist/{esm/column.service-QLZCp9EY.js.map → revo-grid/column.service-DyqJ8oYq.js.map} +1 -1
  108. package/dist/{esm/dimension.helpers-pcKIUO61.js → revo-grid/dimension.helpers-D5lwLPzd.js} +24 -8
  109. package/dist/{esm/dimension.helpers-pcKIUO61.js.map → revo-grid/dimension.helpers-D5lwLPzd.js.map} +1 -1
  110. package/dist/revo-grid/{edit.utils-BBbK2wbv.js → edit.utils-B6bLKSQh.js} +3 -3
  111. package/dist/revo-grid/{edit.utils-BBbK2wbv.js.map → edit.utils-B6bLKSQh.js.map} +1 -1
  112. package/dist/{esm/filter.button-BpZR0kGU.js → revo-grid/filter.button-DmOE7VCJ.js} +3 -3
  113. package/dist/revo-grid/{filter.button-BpZR0kGU.js.map → filter.button-DmOE7VCJ.js.map} +1 -1
  114. package/dist/revo-grid/{header-cell-renderer-AAPG96e2.js → header-cell-renderer-XxSVxgM5.js} +4 -4
  115. package/dist/revo-grid/{header-cell-renderer-AAPG96e2.js.map → header-cell-renderer-XxSVxgM5.js.map} +1 -1
  116. package/dist/revo-grid/{index-gUcGIzDv.js → index-Dyptvvxf.js} +196 -133
  117. package/dist/revo-grid/index-Dyptvvxf.js.map +1 -0
  118. package/dist/revo-grid/index.esm.js +11 -11
  119. package/dist/revo-grid/revo-grid.entry.esm.js.map +1 -1
  120. package/dist/revo-grid/revo-grid.entry.js +8 -8
  121. package/dist/revo-grid/revo-grid.entry.js.map +1 -1
  122. package/dist/revo-grid/revo-grid.esm.js +5 -5
  123. package/dist/revo-grid/revo-grid.esm.js.map +1 -1
  124. package/dist/revo-grid/revogr-attribution.revogr-extra.revogr-focus.revogr-overlay-selection.revogr-row-headers.revogr-scroll-virtual.revogr-temp-range.entry.esm.js.map +1 -1
  125. package/dist/revo-grid/revogr-attribution_7.entry.js +10 -10
  126. package/dist/revo-grid/revogr-attribution_7.entry.js.map +1 -1
  127. package/dist/revo-grid/revogr-clipboard.revogr-edit.revogr-order-editor.entry.esm.js.map +1 -1
  128. package/dist/revo-grid/revogr-clipboard_3.entry.js +5 -5
  129. package/dist/revo-grid/revogr-clipboard_3.entry.js.map +1 -1
  130. package/dist/revo-grid/revogr-data.revogr-header.revogr-viewport-scroll.vnode-html.entry.esm.js.map +1 -1
  131. package/dist/revo-grid/revogr-data_4.entry.js +10 -10
  132. package/dist/revo-grid/revogr-data_4.entry.js.map +1 -1
  133. package/dist/revo-grid/revogr-filter-panel.entry.esm.js.map +1 -1
  134. package/dist/revo-grid/revogr-filter-panel.entry.js +3 -3
  135. package/dist/revo-grid/revogr-filter-panel.entry.js.map +1 -1
  136. package/dist/revo-grid/{text-editor-92MGc5Bc.js → text-editor-DlCRmV75.js} +4 -4
  137. package/dist/revo-grid/{text-editor-92MGc5Bc.js.map → text-editor-DlCRmV75.js.map} +1 -1
  138. package/dist/revo-grid/{throttle-Dshl76F1.js → throttle-DcjZyclk.js} +3 -3
  139. package/dist/{esm/throttle-Dshl76F1.js.map → revo-grid/throttle-DcjZyclk.js.map} +1 -1
  140. package/dist/{esm/viewport.store-C89n4AEU.js → revo-grid/viewport.store-2mQugd8S.js} +3 -3
  141. package/dist/{esm/viewport.store-C89n4AEU.js.map → revo-grid/viewport.store-2mQugd8S.js.map} +1 -1
  142. package/dist/types/stencil-public-runtime.d.ts +12 -5
  143. package/hydrate/index.js +275 -158
  144. package/hydrate/index.mjs +275 -158
  145. package/package.json +4 -4
  146. package/standalone/data.store.js +21 -5
  147. package/standalone/data.store.js.map +1 -1
  148. package/standalone/revo-grid.js +7 -7
  149. package/standalone/revo-grid.js.map +1 -1
  150. package/standalone/revogr-attribution2.js +1 -1
  151. package/standalone/revogr-data2.js +2 -2
  152. package/standalone/revogr-data2.js.map +1 -1
  153. package/standalone/revogr-edit2.js +2 -2
  154. package/standalone/revogr-edit2.js.map +1 -1
  155. package/standalone/revogr-extra2.js +1 -1
  156. package/standalone/revogr-filter-panel.js +2 -2
  157. package/standalone/revogr-filter-panel.js.map +1 -1
  158. package/standalone/revogr-focus2.js +2 -2
  159. package/standalone/revogr-focus2.js.map +1 -1
  160. package/standalone/revogr-header2.js +2 -2
  161. package/standalone/revogr-header2.js.map +1 -1
  162. package/standalone/revogr-overlay-selection2.js +2 -2
  163. package/standalone/revogr-overlay-selection2.js.map +1 -1
  164. package/standalone/revogr-row-headers2.js +1 -1
  165. package/standalone/revogr-scroll-virtual2.js +2 -2
  166. package/standalone/revogr-scroll-virtual2.js.map +1 -1
  167. package/standalone/revogr-temp-range2.js +2 -2
  168. package/standalone/revogr-temp-range2.js.map +1 -1
  169. package/standalone/revogr-viewport-scroll2.js +2 -2
  170. package/standalone/revogr-viewport-scroll2.js.map +1 -1
  171. package/standalone/vnode-converter.js +1 -1
  172. package/dist/cjs/column.drag.plugin-CxKQ-GqY.js.map +0 -1
  173. package/dist/cjs/dimension.helpers-BmZOxsgq.js.map +0 -1
  174. package/dist/cjs/index-BbtPQ4Br.js.map +0 -1
  175. package/dist/esm/column.drag.plugin-Capa_0kN.js.map +0 -1
  176. package/dist/esm/index-gUcGIzDv.js.map +0 -1
  177. package/dist/revo-grid/column.drag.plugin-Capa_0kN.js.map +0 -1
  178. package/dist/revo-grid/index-gUcGIzDv.js.map +0 -1
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built by Revolist OU ❤️
3
3
  */
4
- import { a1 as KeyCodesEnum, a2 as OsPlatform, U as codesLetter, V as keyValues, N as EDIT_INPUT_WR } from './dimension.helpers-pcKIUO61.js';
4
+ import { a1 as KeyCodesEnum, a2 as OsPlatform, U as codesLetter, V as keyValues, N as EDIT_INPUT_WR } from './dimension.helpers-D5lwLPzd.js';
5
5
 
6
6
  function isMetaKey(code) {
7
7
  const keys = [
@@ -94,6 +94,6 @@ function isEditorCtrConstructible(editor) {
94
94
  }
95
95
 
96
96
  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, isEditInput as l, isEditorCtrConstructible as m };
97
- //# sourceMappingURL=edit.utils-BBbK2wbv.js.map
97
+ //# sourceMappingURL=edit.utils-B6bLKSQh.js.map
98
98
 
99
- //# sourceMappingURL=edit.utils-BBbK2wbv.js.map
99
+ //# sourceMappingURL=edit.utils-B6bLKSQh.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"edit.utils-BBbK2wbv.js","sources":["src/utils/key.utils.ts","src/components/editors/edit.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","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"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"edit.utils-B6bLKSQh.js","sources":["src/utils/key.utils.ts","src/components/editors/edit.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","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"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /*!
2
2
  * Built by Revolist OU ❤️
3
3
  */
4
- import { h } from './index-gUcGIzDv.js';
4
+ import { h } from './index-Dyptvvxf.js';
5
5
 
6
6
  const FILTER_BUTTON_CLASS = 'rv-filter';
7
7
  const FILTER_BUTTON_ACTIVE = 'active';
@@ -34,6 +34,6 @@ function isFilterBtn(e) {
34
34
  }
35
35
 
36
36
  export { AND_OR_BUTTON as A, FILTER_BUTTON_CLASS as F, TRASH_BUTTON as T, FILTER_BUTTON_ACTIVE as a, FILTER_PROP as b, FilterButton as c, TrashButton as d, AndOrButton as e, isFilterBtn as i };
37
- //# sourceMappingURL=filter.button-BpZR0kGU.js.map
37
+ //# sourceMappingURL=filter.button-DmOE7VCJ.js.map
38
38
 
39
- //# sourceMappingURL=filter.button-BpZR0kGU.js.map
39
+ //# sourceMappingURL=filter.button-DmOE7VCJ.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filter.button-BpZR0kGU.js","sources":["src/plugins/filter/filter.button.tsx"],"sourcesContent":["import { h } from '@stencil/core';\nimport { ColumnRegular } from '@type';\n\nexport const FILTER_BUTTON_CLASS = 'rv-filter';\nexport const FILTER_BUTTON_ACTIVE = 'active';\n\nexport const FILTER_PROP = 'hasFilter';\nexport const AND_OR_BUTTON = 'and-or-button';\nexport const TRASH_BUTTON = 'trash-button';\n\ntype Props = {\n column: ColumnRegular;\n};\nexport const FilterButton = ({ column }: Props) => {\n return (\n <span>\n <button\n class={{\n [FILTER_BUTTON_CLASS]: true,\n [FILTER_BUTTON_ACTIVE]: column && !!column[FILTER_PROP],\n }}\n >\n <svg class=\"filter-img\" viewBox=\"0 0 64 64\">\n <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <path d=\"M43,48 L43,56 L21,56 L21,48 L43,48 Z M53,28 L53,36 L12,36 L12,28 L53,28 Z M64,8 L64,16 L0,16 L0,8 L64,8 Z\" fill=\"currentColor\"></path>\n </g>\n </svg>\n </button>\n </span>\n );\n};\n\nexport const TrashButton = () => {\n return (\n <div class={{ [TRASH_BUTTON]: true }}>\n <svg class=\"trash-img\" viewBox=\"0 0 24 24\">\n <path fill=\"currentColor\" d=\"M9,3V4H4V6H5V19A2,2 0 0,0 7,21H17A2,2 0 0,0 19,19V6H20V4H15V3H9M7,6H17V19H7V6M9,8V17H11V8H9M13,8V17H15V8H13Z\" />\n </svg>\n </div>\n );\n};\nexport const AndOrButton = ({ text }: any) => {\n return <button class={{ [AND_OR_BUTTON]: true, 'light revo-button': true }}>{text}</button>;\n};\n\nexport function isFilterBtn(e: HTMLElement) {\n if (e.classList.contains(FILTER_BUTTON_CLASS)) {\n return true;\n }\n return e?.closest(`.${FILTER_BUTTON_CLASS}`);\n}\n"],"names":[],"mappings":";;;;;AAGO,MAAM,mBAAmB,GAAG;AAC5B,MAAM,oBAAoB,GAAG;AAE7B,MAAM,WAAW,GAAG;AACpB,MAAM,aAAa,GAAG;AACtB,MAAM,YAAY,GAAG;MAKf,YAAY,GAAG,CAAC,EAAE,MAAM,EAAS,KAAI;AAChD,IAAA,QACE,CAAA,CAAA,MAAA,EAAA,IAAA;AACE,QAAA,CAAA,CAAA,QAAA,EAAA,EACE,KAAK,EAAE;gBACL,CAAC,mBAAmB,GAAG,IAAI;gBAC3B,CAAC,oBAAoB,GAAG,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC;AACxD,aAAA,EAAA;AAED,YAAA,CAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,YAAY,EAAC,OAAO,EAAC,WAAW,EAAA;gBACzC,CAAG,CAAA,GAAA,EAAA,EAAA,MAAM,EAAC,MAAM,EAAc,cAAA,EAAA,GAAG,EAAC,IAAI,EAAC,MAAM,EAAA,WAAA,EAAW,SAAS,EAAA;AAC/D,oBAAA,CAAA,CAAA,MAAA,EAAA,EAAM,CAAC,EAAC,2GAA2G,EAAC,IAAI,EAAC,cAAc,EAAA,CAAQ,CAC7I,CACA,CACC,CACJ;AAEX;AAEO,MAAM,WAAW,GAAG,MAAK;IAC9B,QACE,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE,EAAE,CAAC,YAAY,GAAG,IAAI,EAAE,EAAA;AAClC,QAAA,CAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,WAAW,EAAC,OAAO,EAAC,WAAW,EAAA;YACxC,CAAM,CAAA,MAAA,EAAA,EAAA,IAAI,EAAC,cAAc,EAAC,CAAC,EAAC,8GAA8G,EAAG,CAAA,CACzI,CACF;AAEV;MACa,WAAW,GAAG,CAAC,EAAE,IAAI,EAAO,KAAI;AAC3C,IAAA,OAAO,cAAQ,KAAK,EAAE,EAAE,CAAC,aAAa,GAAG,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,EAAG,EAAA,IAAI,CAAU;AAC7F;AAEM,SAAU,WAAW,CAAC,CAAc,EAAA;IACxC,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE;AAC7C,QAAA,OAAO,IAAI;;AAEb,IAAA,OAAO,CAAC,KAAA,IAAA,IAAD,CAAC,KAAA,MAAA,GAAA,MAAA,GAAD,CAAC,CAAE,OAAO,CAAC,CAAI,CAAA,EAAA,mBAAmB,CAAE,CAAA,CAAC;AAC9C;;;;"}
1
+ {"version":3,"file":"filter.button-DmOE7VCJ.js","sources":["src/plugins/filter/filter.button.tsx"],"sourcesContent":["import { h } from '@stencil/core';\nimport { ColumnRegular } from '@type';\n\nexport const FILTER_BUTTON_CLASS = 'rv-filter';\nexport const FILTER_BUTTON_ACTIVE = 'active';\n\nexport const FILTER_PROP = 'hasFilter';\nexport const AND_OR_BUTTON = 'and-or-button';\nexport const TRASH_BUTTON = 'trash-button';\n\ntype Props = {\n column: ColumnRegular;\n};\nexport const FilterButton = ({ column }: Props) => {\n return (\n <span>\n <button\n class={{\n [FILTER_BUTTON_CLASS]: true,\n [FILTER_BUTTON_ACTIVE]: column && !!column[FILTER_PROP],\n }}\n >\n <svg class=\"filter-img\" viewBox=\"0 0 64 64\">\n <g stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <path d=\"M43,48 L43,56 L21,56 L21,48 L43,48 Z M53,28 L53,36 L12,36 L12,28 L53,28 Z M64,8 L64,16 L0,16 L0,8 L64,8 Z\" fill=\"currentColor\"></path>\n </g>\n </svg>\n </button>\n </span>\n );\n};\n\nexport const TrashButton = () => {\n return (\n <div class={{ [TRASH_BUTTON]: true }}>\n <svg class=\"trash-img\" viewBox=\"0 0 24 24\">\n <path fill=\"currentColor\" d=\"M9,3V4H4V6H5V19A2,2 0 0,0 7,21H17A2,2 0 0,0 19,19V6H20V4H15V3H9M7,6H17V19H7V6M9,8V17H11V8H9M13,8V17H15V8H13Z\" />\n </svg>\n </div>\n );\n};\nexport const AndOrButton = ({ text }: any) => {\n return <button class={{ [AND_OR_BUTTON]: true, 'light revo-button': true }}>{text}</button>;\n};\n\nexport function isFilterBtn(e: HTMLElement) {\n if (e.classList.contains(FILTER_BUTTON_CLASS)) {\n return true;\n }\n return e?.closest(`.${FILTER_BUTTON_CLASS}`);\n}\n"],"names":[],"mappings":";;;;;AAGO,MAAM,mBAAmB,GAAG;AAC5B,MAAM,oBAAoB,GAAG;AAE7B,MAAM,WAAW,GAAG;AACpB,MAAM,aAAa,GAAG;AACtB,MAAM,YAAY,GAAG;MAKf,YAAY,GAAG,CAAC,EAAE,MAAM,EAAS,KAAI;AAChD,IAAA,QACE,CAAA,CAAA,MAAA,EAAA,IAAA;AACE,QAAA,CAAA,CAAA,QAAA,EAAA,EACE,KAAK,EAAE;gBACL,CAAC,mBAAmB,GAAG,IAAI;gBAC3B,CAAC,oBAAoB,GAAG,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC;AACxD,aAAA,EAAA;AAED,YAAA,CAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,YAAY,EAAC,OAAO,EAAC,WAAW,EAAA;gBACzC,CAAG,CAAA,GAAA,EAAA,EAAA,MAAM,EAAC,MAAM,EAAc,cAAA,EAAA,GAAG,EAAC,IAAI,EAAC,MAAM,EAAA,WAAA,EAAW,SAAS,EAAA;AAC/D,oBAAA,CAAA,CAAA,MAAA,EAAA,EAAM,CAAC,EAAC,2GAA2G,EAAC,IAAI,EAAC,cAAc,EAAA,CAAQ,CAC7I,CACA,CACC,CACJ;AAEX;AAEO,MAAM,WAAW,GAAG,MAAK;IAC9B,QACE,CAAK,CAAA,KAAA,EAAA,EAAA,KAAK,EAAE,EAAE,CAAC,YAAY,GAAG,IAAI,EAAE,EAAA;AAClC,QAAA,CAAA,CAAA,KAAA,EAAA,EAAK,KAAK,EAAC,WAAW,EAAC,OAAO,EAAC,WAAW,EAAA;YACxC,CAAM,CAAA,MAAA,EAAA,EAAA,IAAI,EAAC,cAAc,EAAC,CAAC,EAAC,8GAA8G,EAAG,CAAA,CACzI,CACF;AAEV;MACa,WAAW,GAAG,CAAC,EAAE,IAAI,EAAO,KAAI;AAC3C,IAAA,OAAO,cAAQ,KAAK,EAAE,EAAE,CAAC,aAAa,GAAG,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,EAAG,EAAA,IAAI,CAAU;AAC7F;AAEM,SAAU,WAAW,CAAC,CAAc,EAAA;IACxC,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE;AAC7C,QAAA,OAAO,IAAI;;AAEb,IAAA,OAAO,CAAC,KAAA,IAAA,IAAD,CAAC,KAAA,MAAA,GAAA,MAAA,GAAD,CAAC,CAAE,OAAO,CAAC,CAAI,CAAA,EAAA,mBAAmB,CAAE,CAAA,CAAC;AAC9C;;;;"}
@@ -1,8 +1,8 @@
1
1
  /*!
2
2
  * Built by Revolist OU ❤️
3
3
  */
4
- import { h } from './index-gUcGIzDv.js';
5
- import { U as doPropMerge } from './column.service-QLZCp9EY.js';
4
+ import { h } from './index-Dyptvvxf.js';
5
+ import { U as doPropMerge } from './column.service-DyqJ8oYq.js';
6
6
 
7
7
  /**
8
8
  * Dispatches a custom event to a specified target element.
@@ -333,6 +333,6 @@ const HeaderCellRenderer = ({ data, props, additionalData }, children) => {
333
333
  };
334
334
 
335
335
  export { HeaderCellRenderer as H, ON_COLUMN_CLICK as O, dispatchByEvent as a, dispatch as d };
336
- //# sourceMappingURL=header-cell-renderer-AAPG96e2.js.map
336
+ //# sourceMappingURL=header-cell-renderer-XxSVxgM5.js.map
337
337
 
338
- //# sourceMappingURL=header-cell-renderer-AAPG96e2.js.map
338
+ //# sourceMappingURL=header-cell-renderer-XxSVxgM5.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"header-cell-renderer-AAPG96e2.js","sources":["src/plugins/dispatcher.ts","src/components/header/resizable.directive.tsx","src/components/header/resizable.element.tsx","src/components/header/header-cell-renderer.tsx"],"sourcesContent":["/**\n * Dispatches a custom event to a specified target element.\n *\n * @param target - The target element to dispatch the event to.\n * @param eventName - The name of the custom event.\n * @param detail - Optional. The detail of the custom event.\n * @returns The custom event that was dispatched.\n */\nexport function dispatch<DispatchDetail = any>(\n target: MouseEvent['target'],\n eventName: string,\n detail?: DispatchDetail,\n) {\n // Create a new CustomEvent with the specified event name and detail.\n const event = new CustomEvent<DispatchDetail>(eventName, {\n detail,\n cancelable: true, // Indicates whether the event can be canceled.\n bubbles: true, // Indicates whether the event bubbles up through the DOM.\n });\n\n // Dispatch the event on the target element.\n target?.dispatchEvent(event);\n\n // Return the custom event that was dispatched.\n return event;\n}\n\n/**\n * Dispatches a custom event based on an existing event object and prevents the default behavior of the original event.\n *\n * @param e - The original event object containing the target and preventDefault method.\n * @param eventName - The name of the custom event.\n * @param detail - Optional. The detail of the custom event.\n * @returns The custom event that was dispatched.\n */\nexport function dispatchByEvent<DispatchDetail = any>(\n e: Pick<MouseEvent, 'target' | 'preventDefault'>, // The original event object containing the target and preventDefault method.\n eventName: string, // The name of the custom event.\n detail?: DispatchDetail, // Optional. The detail of the custom event.\n): CustomEvent {\n // Prevent the default behavior of the original event.\n e.preventDefault();\n\n // Dispatch the custom event to the target element specified in the original event object.\n return dispatch<DispatchDetail>(e.target, eventName, detail);\n}\n","export type ResizeProps = {\n active: ('r' | 'rb' | 'b' | 'lb' | 'l' | 'lt' | 't' | 'rt')[]; // all\n fitParent: boolean; // false\n minWidth: number; // 0\n minHeight: number; // 0\n\n disableAttributes: ('l' | 't' | 'w' | 'h')[]; // []\n maxWidth?: number;\n maxHeight?: number;\n\n onResize?(e: ResizeEvent): void;\n};\n\nexport type ResizeEvent = {\n eventName: string;\n changedX?: number;\n changedY?: number;\n width?: number;\n height?: number;\n};\n\nexport enum ResizeEvents {\n start = 'resize:start',\n move = 'resize:move',\n end = 'resize:end',\n}\n\nconst RESIZE_MASK: { [key: string]: any } = {\n 'resizable-r': { bit: 0b0001, cursor: 'ew-resize' },\n 'resizable-rb': { bit: 0b0011, cursor: 'se-resize' },\n 'resizable-b': { bit: 0b0010, cursor: 's-resize' },\n 'resizable-lb': { bit: 0b0110, cursor: 'sw-resize' },\n 'resizable-l': { bit: 0b0100, cursor: 'w-resize' },\n 'resizable-lt': { bit: 0b1100, cursor: 'nw-resize' },\n 'resizable-t': { bit: 0b1000, cursor: 'n-resize' },\n 'resizable-rt': { bit: 0b1001, cursor: 'ne-resize' },\n};\n\nconst DISABLE_MASK = {\n l: 0b0001,\n t: 0b0010,\n w: 0b0100,\n h: 0b1000,\n};\n\nconst defaultProps = (props: Partial<ResizeProps>): ResizeProps => {\n return {\n ...props,\n fitParent: props.fitParent || false,\n active: props.active || [],\n disableAttributes: props.disableAttributes || [],\n minWidth: props.minWidth || 0,\n minHeight: props.minHeight || 0,\n };\n};\n\nexport class ResizeDirective {\n private $el: HTMLElement;\n private props: ResizeProps;\n private minW: number;\n private minH: number;\n private maxW: number;\n private maxH: number;\n\n private mouseX = 0;\n private mouseY = 0;\n\n private width = 0;\n private height = 0;\n\n private changeX = 0;\n private changeY = 0;\n\n private parent: { width: number; height: number };\n private resizeState: number;\n private activeResizer?: HTMLElement;\n private disableCalcMap = 0b1111;\n\n private mouseMoveFunc: () => void;\n private mouseUpFunc: () => void;\n\n constructor(\n private initialProps: Partial<ResizeProps>,\n private $event?: (e: ResizeEvent) => void,\n ) {\n this.props = defaultProps(initialProps);\n this.mouseMoveFunc = this.handleMove.bind(this);\n this.mouseUpFunc = this.handleUp.bind(this);\n\n this.minW = this.props.minWidth;\n this.minH = this.props.minHeight;\n this.maxW = this.props.maxWidth ?? 0;\n this.maxH = this.props.maxHeight ?? 0;\n this.parent = { width: 0, height: 0 };\n this.resizeState = 0;\n }\n\n set($el: HTMLElement) {\n this.$el = $el;\n this.props.disableAttributes.forEach(attr => {\n switch (attr) {\n case 'l':\n this.disableCalcMap &= ~DISABLE_MASK.l;\n break;\n case 't':\n this.disableCalcMap &= ~DISABLE_MASK.t;\n break;\n case 'w':\n this.disableCalcMap &= ~DISABLE_MASK.w;\n break;\n case 'h':\n this.disableCalcMap &= ~DISABLE_MASK.h;\n }\n });\n }\n emitEvent(eventName: string, additionalOptions?: any) {\n if (!this.$event) {\n return;\n }\n const isLeft = this.activeResizer?.classList.contains('resizable-l');\n this.$event({\n eventName,\n width: this.width + this.changeX * (isLeft ? -1 : 1),\n height: this.height + this.changeY,\n changedX: this.changeX,\n changedY: this.changeY,\n ...additionalOptions,\n });\n }\n\n private static isTouchEvent(e: MouseEvent | TouchEvent): e is TouchEvent {\n const event = e as TouchEvent;\n return event.touches?.length >= 0;\n }\n\n handleMove(event: MouseEvent | TouchEvent) {\n if (!this.resizeState) {\n return;\n }\n let eventY, eventX;\n if (ResizeDirective.isTouchEvent(event)) {\n eventY = event.touches[0].clientY;\n eventX = event.touches[0].clientX;\n } else {\n eventY = event.clientY;\n eventX = event.clientX;\n }\n let isX =\n this.resizeState & RESIZE_MASK['resizable-r'].bit ||\n this.resizeState & RESIZE_MASK['resizable-l'].bit;\n\n let isY =\n this.resizeState & RESIZE_MASK['resizable-t'].bit ||\n this.resizeState & RESIZE_MASK['resizable-b'].bit;\n\n if (isY && this.disableCalcMap & DISABLE_MASK.h) {\n let diffY = eventY - this.mouseY;\n let changedY = this.changeY + diffY;\n const newHeight = this.height + changedY;\n // if overcrossed min height\n if (newHeight < this.minH) {\n changedY = -(this.height - this.minH);\n }\n // if overcrossed max heiht\n if (this.maxH && newHeight > this.maxH) {\n changedY = this.maxH - this.height;\n }\n\n this.changeY = changedY;\n this.mouseY = eventY;\n\n if (this.activeResizer) {\n this.activeResizer.style.bottom = `${-this.changeY}px`;\n }\n }\n if (isX && this.disableCalcMap & DISABLE_MASK.w) {\n const isLeft = this.activeResizer?.classList.contains('resizable-l');\n let diffX = eventX - this.mouseX;\n let changedX = this.changeX + diffX;\n const newWidth = this.width + changedX * (isLeft ? -1 : 1);\n\n // if overcrossed min width\n if (newWidth < this.minW) {\n changedX = -(this.width - this.minW);\n }\n // if overcrossed max width\n if (this.maxW && newWidth > this.maxW) {\n changedX = this.maxW - this.width;\n }\n\n this.changeX = changedX;\n this.mouseX = eventX;\n\n if (this.activeResizer) {\n if (!isLeft) {\n this.activeResizer.style.right = `${-this.changeX}px`;\n } else {\n this.activeResizer.style.left = `${this.changeX}px`;\n }\n }\n }\n this.emitEvent(ResizeEvents.move);\n }\n\n handleDown(event: MouseEvent | TouchEvent) {\n if (event.defaultPrevented) {\n return;\n }\n // stop other events if resize in progress\n event.preventDefault();\n\n this.dropInitial();\n for (let elClass in RESIZE_MASK) {\n const target = event.target as HTMLElement | null;\n if (this.$el.contains(target) && target?.classList.contains(elClass)) {\n document.body.style.cursor = RESIZE_MASK[elClass].cursor;\n if (ResizeDirective.isTouchEvent(event)) {\n this.setInitials(event.touches[0], target);\n } else {\n event.preventDefault && event.preventDefault();\n this.setInitials(event, target);\n }\n this.resizeState = RESIZE_MASK[elClass].bit;\n const eventName = ResizeEvents.start;\n this.emitEvent(eventName);\n break;\n }\n }\n this.bindMove();\n }\n\n handleUp(e: MouseEvent) {\n e.preventDefault();\n if (this.resizeState !== 0) {\n this.resizeState = 0;\n document.body.style.cursor = '';\n const eventName = ResizeEvents.end;\n this.emitEvent(eventName);\n }\n this.dropInitial();\n this.unbindMove();\n }\n\n private setInitials(\n { clientX, clientY }: { clientX: number; clientY: number },\n target?: HTMLElement,\n ) {\n const computedStyle = getComputedStyle(this.$el);\n this.$el.classList.add('active');\n this.activeResizer = target;\n\n if (this.disableCalcMap & DISABLE_MASK.w) {\n this.mouseX = clientX;\n this.width = this.$el.clientWidth;\n this.parent.width = this.$el.parentElement?.clientWidth ?? 0;\n\n // min width\n const minPaddingX =\n parseFloat(computedStyle.paddingLeft) +\n parseFloat(computedStyle.paddingRight);\n this.minW = Math.max(minPaddingX, this.initialProps.minWidth || 0);\n\n // max width\n if (this.initialProps.maxWidth) {\n this.maxW = Math.max(this.width, this.initialProps.maxWidth);\n }\n }\n\n if (this.disableCalcMap & DISABLE_MASK.h) {\n this.mouseY = clientY;\n this.height = this.$el.clientHeight;\n this.parent.height = this.$el.parentElement?.clientHeight ?? 0;\n\n // min height\n const minPaddingY =\n parseFloat(computedStyle.paddingTop) +\n parseFloat(computedStyle.paddingBottom);\n this.minH = Math.max(minPaddingY, this.initialProps.minHeight || 0);\n // max height\n if (this.initialProps.maxHeight) {\n this.maxH = Math.max(this.height, this.initialProps.maxHeight);\n }\n }\n }\n\n private dropInitial() {\n this.changeX = this.changeY = this.minW = this.minH;\n this.width = this.height = 0;\n if (this.activeResizer) {\n this.activeResizer.removeAttribute('style');\n }\n this.$el.classList.remove('active');\n this.activeResizer = undefined;\n }\n\n private bindMove() {\n document.documentElement.addEventListener(\n 'mouseup',\n this.mouseUpFunc,\n true,\n );\n document.documentElement.addEventListener(\n 'touchend',\n this.mouseUpFunc,\n true,\n );\n document.documentElement.addEventListener(\n 'mousemove',\n this.mouseMoveFunc,\n true,\n );\n document.documentElement.addEventListener(\n 'touchmove',\n this.mouseMoveFunc,\n true,\n );\n document.documentElement.addEventListener('mouseleave', this.mouseUpFunc);\n }\n\n private unbindMove() {\n document.documentElement.removeEventListener(\n 'mouseup',\n this.mouseUpFunc,\n true,\n );\n document.documentElement.removeEventListener(\n 'touchend',\n this.mouseUpFunc,\n true,\n );\n document.documentElement.removeEventListener(\n 'mousemove',\n this.mouseMoveFunc,\n true,\n );\n document.documentElement.removeEventListener(\n 'touchmove',\n this.mouseMoveFunc,\n true,\n );\n document.documentElement.removeEventListener(\n 'mouseleave',\n this.mouseUpFunc,\n );\n }\n}\n","import { type FunctionalComponent, h, type VNode } from '@stencil/core';\nimport {\n ResizeProps,\n ResizeDirective,\n ResizeEvents,\n} from './resizable.directive';\nimport type { CellProps } from '@type';\n\nexport type ResizableElementHTMLAttributes = Partial<ResizeProps> & CellProps;\n\nexport const ResizableElement: FunctionalComponent = (\n props: ResizableElementHTMLAttributes,\n children: VNode[],\n) => {\n const resizeEls: VNode[] = [];\n const directive =\n (props.canResize &&\n new ResizeDirective(props, e => {\n if (e.eventName === ResizeEvents.end) {\n props.onResize?.(e);\n }\n })) ||\n null;\n\n if (props.active) {\n if (props.canResize) {\n for (let p in props.active) {\n resizeEls.push(\n <div\n onClick={e => e.preventDefault()}\n onDblClick={e => {\n e.preventDefault();\n props.onDblClick?.(e);\n }}\n onMouseDown={(e: MouseEvent) => directive?.handleDown(e)}\n onTouchStart={(e: TouchEvent) => directive?.handleDown(e)}\n class={`resizable resizable-${props.active[p]}`}\n />,\n );\n }\n } else {\n for (let _p in props.active) {\n resizeEls.push(\n <div\n onClick={e => e.preventDefault()}\n onTouchStart={(e: TouchEvent) => e.preventDefault()}\n onDblClick={e => {\n e.preventDefault();\n props.onDblClick?.(e);\n }}\n class={`no-resize`}\n />,\n );\n }\n }\n }\n return (\n <div {...props} ref={e => e && directive?.set(e)}>\n {children}\n {resizeEls}\n </div>\n );\n};\n","import { type FunctionalComponent, h } from '@stencil/core';\nimport { dispatch } from '../../plugins/dispatcher';\nimport { doPropMerge } from '../data/column.service';\nimport {\n ResizableElement,\n ResizableElementHTMLAttributes,\n} from './resizable.element';\nimport { ColumnTemplateProp } from '@type';\n\nexport const ON_COLUMN_CLICK = 'columnclick';\n\nexport const HeaderCellRenderer: FunctionalComponent<{\n props: ResizableElementHTMLAttributes;\n additionalData: any;\n data?: ColumnTemplateProp;\n}> = ({ data, props, additionalData }, children) => {\n let colTemplate: ReturnType<typeof h> = data?.name || '';\n let cellProps = props;\n if (data?.columnTemplate) {\n colTemplate = data.columnTemplate(h, data, additionalData);\n }\n if (data?.columnProperties) {\n const extra = data.columnProperties(data);\n if (extra) {\n cellProps = doPropMerge(props, extra);\n }\n }\n const resizeProps = {\n ...cellProps,\n onMouseDown(e: MouseEvent) {\n dispatch(e.currentTarget, ON_COLUMN_CLICK, {\n data,\n event: e,\n });\n },\n };\n return (\n <ResizableElement {...resizeProps}>\n <div class=\"header-content\">{colTemplate}</div>\n {children}\n </ResizableElement>\n );\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"header-cell-renderer-XxSVxgM5.js","sources":["src/plugins/dispatcher.ts","src/components/header/resizable.directive.tsx","src/components/header/resizable.element.tsx","src/components/header/header-cell-renderer.tsx"],"sourcesContent":["/**\n * Dispatches a custom event to a specified target element.\n *\n * @param target - The target element to dispatch the event to.\n * @param eventName - The name of the custom event.\n * @param detail - Optional. The detail of the custom event.\n * @returns The custom event that was dispatched.\n */\nexport function dispatch<DispatchDetail = any>(\n target: MouseEvent['target'],\n eventName: string,\n detail?: DispatchDetail,\n) {\n // Create a new CustomEvent with the specified event name and detail.\n const event = new CustomEvent<DispatchDetail>(eventName, {\n detail,\n cancelable: true, // Indicates whether the event can be canceled.\n bubbles: true, // Indicates whether the event bubbles up through the DOM.\n });\n\n // Dispatch the event on the target element.\n target?.dispatchEvent(event);\n\n // Return the custom event that was dispatched.\n return event;\n}\n\n/**\n * Dispatches a custom event based on an existing event object and prevents the default behavior of the original event.\n *\n * @param e - The original event object containing the target and preventDefault method.\n * @param eventName - The name of the custom event.\n * @param detail - Optional. The detail of the custom event.\n * @returns The custom event that was dispatched.\n */\nexport function dispatchByEvent<DispatchDetail = any>(\n e: Pick<MouseEvent, 'target' | 'preventDefault'>, // The original event object containing the target and preventDefault method.\n eventName: string, // The name of the custom event.\n detail?: DispatchDetail, // Optional. The detail of the custom event.\n): CustomEvent {\n // Prevent the default behavior of the original event.\n e.preventDefault();\n\n // Dispatch the custom event to the target element specified in the original event object.\n return dispatch<DispatchDetail>(e.target, eventName, detail);\n}\n","export type ResizeProps = {\n active: ('r' | 'rb' | 'b' | 'lb' | 'l' | 'lt' | 't' | 'rt')[]; // all\n fitParent: boolean; // false\n minWidth: number; // 0\n minHeight: number; // 0\n\n disableAttributes: ('l' | 't' | 'w' | 'h')[]; // []\n maxWidth?: number;\n maxHeight?: number;\n\n onResize?(e: ResizeEvent): void;\n};\n\nexport type ResizeEvent = {\n eventName: string;\n changedX?: number;\n changedY?: number;\n width?: number;\n height?: number;\n};\n\nexport enum ResizeEvents {\n start = 'resize:start',\n move = 'resize:move',\n end = 'resize:end',\n}\n\nconst RESIZE_MASK: { [key: string]: any } = {\n 'resizable-r': { bit: 0b0001, cursor: 'ew-resize' },\n 'resizable-rb': { bit: 0b0011, cursor: 'se-resize' },\n 'resizable-b': { bit: 0b0010, cursor: 's-resize' },\n 'resizable-lb': { bit: 0b0110, cursor: 'sw-resize' },\n 'resizable-l': { bit: 0b0100, cursor: 'w-resize' },\n 'resizable-lt': { bit: 0b1100, cursor: 'nw-resize' },\n 'resizable-t': { bit: 0b1000, cursor: 'n-resize' },\n 'resizable-rt': { bit: 0b1001, cursor: 'ne-resize' },\n};\n\nconst DISABLE_MASK = {\n l: 0b0001,\n t: 0b0010,\n w: 0b0100,\n h: 0b1000,\n};\n\nconst defaultProps = (props: Partial<ResizeProps>): ResizeProps => {\n return {\n ...props,\n fitParent: props.fitParent || false,\n active: props.active || [],\n disableAttributes: props.disableAttributes || [],\n minWidth: props.minWidth || 0,\n minHeight: props.minHeight || 0,\n };\n};\n\nexport class ResizeDirective {\n private $el: HTMLElement;\n private props: ResizeProps;\n private minW: number;\n private minH: number;\n private maxW: number;\n private maxH: number;\n\n private mouseX = 0;\n private mouseY = 0;\n\n private width = 0;\n private height = 0;\n\n private changeX = 0;\n private changeY = 0;\n\n private parent: { width: number; height: number };\n private resizeState: number;\n private activeResizer?: HTMLElement;\n private disableCalcMap = 0b1111;\n\n private mouseMoveFunc: () => void;\n private mouseUpFunc: () => void;\n\n constructor(\n private initialProps: Partial<ResizeProps>,\n private $event?: (e: ResizeEvent) => void,\n ) {\n this.props = defaultProps(initialProps);\n this.mouseMoveFunc = this.handleMove.bind(this);\n this.mouseUpFunc = this.handleUp.bind(this);\n\n this.minW = this.props.minWidth;\n this.minH = this.props.minHeight;\n this.maxW = this.props.maxWidth ?? 0;\n this.maxH = this.props.maxHeight ?? 0;\n this.parent = { width: 0, height: 0 };\n this.resizeState = 0;\n }\n\n set($el: HTMLElement) {\n this.$el = $el;\n this.props.disableAttributes.forEach(attr => {\n switch (attr) {\n case 'l':\n this.disableCalcMap &= ~DISABLE_MASK.l;\n break;\n case 't':\n this.disableCalcMap &= ~DISABLE_MASK.t;\n break;\n case 'w':\n this.disableCalcMap &= ~DISABLE_MASK.w;\n break;\n case 'h':\n this.disableCalcMap &= ~DISABLE_MASK.h;\n }\n });\n }\n emitEvent(eventName: string, additionalOptions?: any) {\n if (!this.$event) {\n return;\n }\n const isLeft = this.activeResizer?.classList.contains('resizable-l');\n this.$event({\n eventName,\n width: this.width + this.changeX * (isLeft ? -1 : 1),\n height: this.height + this.changeY,\n changedX: this.changeX,\n changedY: this.changeY,\n ...additionalOptions,\n });\n }\n\n private static isTouchEvent(e: MouseEvent | TouchEvent): e is TouchEvent {\n const event = e as TouchEvent;\n return event.touches?.length >= 0;\n }\n\n handleMove(event: MouseEvent | TouchEvent) {\n if (!this.resizeState) {\n return;\n }\n let eventY, eventX;\n if (ResizeDirective.isTouchEvent(event)) {\n eventY = event.touches[0].clientY;\n eventX = event.touches[0].clientX;\n } else {\n eventY = event.clientY;\n eventX = event.clientX;\n }\n let isX =\n this.resizeState & RESIZE_MASK['resizable-r'].bit ||\n this.resizeState & RESIZE_MASK['resizable-l'].bit;\n\n let isY =\n this.resizeState & RESIZE_MASK['resizable-t'].bit ||\n this.resizeState & RESIZE_MASK['resizable-b'].bit;\n\n if (isY && this.disableCalcMap & DISABLE_MASK.h) {\n let diffY = eventY - this.mouseY;\n let changedY = this.changeY + diffY;\n const newHeight = this.height + changedY;\n // if overcrossed min height\n if (newHeight < this.minH) {\n changedY = -(this.height - this.minH);\n }\n // if overcrossed max heiht\n if (this.maxH && newHeight > this.maxH) {\n changedY = this.maxH - this.height;\n }\n\n this.changeY = changedY;\n this.mouseY = eventY;\n\n if (this.activeResizer) {\n this.activeResizer.style.bottom = `${-this.changeY}px`;\n }\n }\n if (isX && this.disableCalcMap & DISABLE_MASK.w) {\n const isLeft = this.activeResizer?.classList.contains('resizable-l');\n let diffX = eventX - this.mouseX;\n let changedX = this.changeX + diffX;\n const newWidth = this.width + changedX * (isLeft ? -1 : 1);\n\n // if overcrossed min width\n if (newWidth < this.minW) {\n changedX = -(this.width - this.minW);\n }\n // if overcrossed max width\n if (this.maxW && newWidth > this.maxW) {\n changedX = this.maxW - this.width;\n }\n\n this.changeX = changedX;\n this.mouseX = eventX;\n\n if (this.activeResizer) {\n if (!isLeft) {\n this.activeResizer.style.right = `${-this.changeX}px`;\n } else {\n this.activeResizer.style.left = `${this.changeX}px`;\n }\n }\n }\n this.emitEvent(ResizeEvents.move);\n }\n\n handleDown(event: MouseEvent | TouchEvent) {\n if (event.defaultPrevented) {\n return;\n }\n // stop other events if resize in progress\n event.preventDefault();\n\n this.dropInitial();\n for (let elClass in RESIZE_MASK) {\n const target = event.target as HTMLElement | null;\n if (this.$el.contains(target) && target?.classList.contains(elClass)) {\n document.body.style.cursor = RESIZE_MASK[elClass].cursor;\n if (ResizeDirective.isTouchEvent(event)) {\n this.setInitials(event.touches[0], target);\n } else {\n event.preventDefault && event.preventDefault();\n this.setInitials(event, target);\n }\n this.resizeState = RESIZE_MASK[elClass].bit;\n const eventName = ResizeEvents.start;\n this.emitEvent(eventName);\n break;\n }\n }\n this.bindMove();\n }\n\n handleUp(e: MouseEvent) {\n e.preventDefault();\n if (this.resizeState !== 0) {\n this.resizeState = 0;\n document.body.style.cursor = '';\n const eventName = ResizeEvents.end;\n this.emitEvent(eventName);\n }\n this.dropInitial();\n this.unbindMove();\n }\n\n private setInitials(\n { clientX, clientY }: { clientX: number; clientY: number },\n target?: HTMLElement,\n ) {\n const computedStyle = getComputedStyle(this.$el);\n this.$el.classList.add('active');\n this.activeResizer = target;\n\n if (this.disableCalcMap & DISABLE_MASK.w) {\n this.mouseX = clientX;\n this.width = this.$el.clientWidth;\n this.parent.width = this.$el.parentElement?.clientWidth ?? 0;\n\n // min width\n const minPaddingX =\n parseFloat(computedStyle.paddingLeft) +\n parseFloat(computedStyle.paddingRight);\n this.minW = Math.max(minPaddingX, this.initialProps.minWidth || 0);\n\n // max width\n if (this.initialProps.maxWidth) {\n this.maxW = Math.max(this.width, this.initialProps.maxWidth);\n }\n }\n\n if (this.disableCalcMap & DISABLE_MASK.h) {\n this.mouseY = clientY;\n this.height = this.$el.clientHeight;\n this.parent.height = this.$el.parentElement?.clientHeight ?? 0;\n\n // min height\n const minPaddingY =\n parseFloat(computedStyle.paddingTop) +\n parseFloat(computedStyle.paddingBottom);\n this.minH = Math.max(minPaddingY, this.initialProps.minHeight || 0);\n // max height\n if (this.initialProps.maxHeight) {\n this.maxH = Math.max(this.height, this.initialProps.maxHeight);\n }\n }\n }\n\n private dropInitial() {\n this.changeX = this.changeY = this.minW = this.minH;\n this.width = this.height = 0;\n if (this.activeResizer) {\n this.activeResizer.removeAttribute('style');\n }\n this.$el.classList.remove('active');\n this.activeResizer = undefined;\n }\n\n private bindMove() {\n document.documentElement.addEventListener(\n 'mouseup',\n this.mouseUpFunc,\n true,\n );\n document.documentElement.addEventListener(\n 'touchend',\n this.mouseUpFunc,\n true,\n );\n document.documentElement.addEventListener(\n 'mousemove',\n this.mouseMoveFunc,\n true,\n );\n document.documentElement.addEventListener(\n 'touchmove',\n this.mouseMoveFunc,\n true,\n );\n document.documentElement.addEventListener('mouseleave', this.mouseUpFunc);\n }\n\n private unbindMove() {\n document.documentElement.removeEventListener(\n 'mouseup',\n this.mouseUpFunc,\n true,\n );\n document.documentElement.removeEventListener(\n 'touchend',\n this.mouseUpFunc,\n true,\n );\n document.documentElement.removeEventListener(\n 'mousemove',\n this.mouseMoveFunc,\n true,\n );\n document.documentElement.removeEventListener(\n 'touchmove',\n this.mouseMoveFunc,\n true,\n );\n document.documentElement.removeEventListener(\n 'mouseleave',\n this.mouseUpFunc,\n );\n }\n}\n","import { type FunctionalComponent, h, type VNode } from '@stencil/core';\nimport {\n ResizeProps,\n ResizeDirective,\n ResizeEvents,\n} from './resizable.directive';\nimport type { CellProps } from '@type';\n\nexport type ResizableElementHTMLAttributes = Partial<ResizeProps> & CellProps;\n\nexport const ResizableElement: FunctionalComponent = (\n props: ResizableElementHTMLAttributes,\n children: VNode[],\n) => {\n const resizeEls: VNode[] = [];\n const directive =\n (props.canResize &&\n new ResizeDirective(props, e => {\n if (e.eventName === ResizeEvents.end) {\n props.onResize?.(e);\n }\n })) ||\n null;\n\n if (props.active) {\n if (props.canResize) {\n for (let p in props.active) {\n resizeEls.push(\n <div\n onClick={e => e.preventDefault()}\n onDblClick={e => {\n e.preventDefault();\n props.onDblClick?.(e);\n }}\n onMouseDown={(e: MouseEvent) => directive?.handleDown(e)}\n onTouchStart={(e: TouchEvent) => directive?.handleDown(e)}\n class={`resizable resizable-${props.active[p]}`}\n />,\n );\n }\n } else {\n for (let _p in props.active) {\n resizeEls.push(\n <div\n onClick={e => e.preventDefault()}\n onTouchStart={(e: TouchEvent) => e.preventDefault()}\n onDblClick={e => {\n e.preventDefault();\n props.onDblClick?.(e);\n }}\n class={`no-resize`}\n />,\n );\n }\n }\n }\n return (\n <div {...props} ref={e => e && directive?.set(e)}>\n {children}\n {resizeEls}\n </div>\n );\n};\n","import { type FunctionalComponent, h } from '@stencil/core';\nimport { dispatch } from '../../plugins/dispatcher';\nimport { doPropMerge } from '../data/column.service';\nimport {\n ResizableElement,\n ResizableElementHTMLAttributes,\n} from './resizable.element';\nimport { ColumnTemplateProp } from '@type';\n\nexport const ON_COLUMN_CLICK = 'columnclick';\n\nexport const HeaderCellRenderer: FunctionalComponent<{\n props: ResizableElementHTMLAttributes;\n additionalData: any;\n data?: ColumnTemplateProp;\n}> = ({ data, props, additionalData }, children) => {\n let colTemplate: ReturnType<typeof h> = data?.name || '';\n let cellProps = props;\n if (data?.columnTemplate) {\n colTemplate = data.columnTemplate(h, data, additionalData);\n }\n if (data?.columnProperties) {\n const extra = data.columnProperties(data);\n if (extra) {\n cellProps = doPropMerge(props, extra);\n }\n }\n const resizeProps = {\n ...cellProps,\n onMouseDown(e: MouseEvent) {\n dispatch(e.currentTarget, ON_COLUMN_CLICK, {\n data,\n event: e,\n });\n },\n };\n return (\n <ResizableElement {...resizeProps}>\n <div class=\"header-content\">{colTemplate}</div>\n {children}\n </ResizableElement>\n );\n};\n"],"names":[],"mappings":"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"}