@handsontable/react-wrapper 0.0.0-next-31301f8-20260205 → 0.0.0-next-e5e8439-20260206

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.
package/README.md CHANGED
@@ -72,6 +72,8 @@ npm install handsontable @handsontable/react-wrapper
72
72
  ```jsx
73
73
  // Base CSS rules
74
74
  import 'handsontable/styles/handsontable.min.css';
75
+ // Main theme variables
76
+ import 'handsontable/styles/ht-theme-main.min.css';
75
77
  ```
76
78
 
77
79
  ### Register Handsontable's modules
@@ -96,12 +98,14 @@ To set Handsontable's [configuration options](https://handsontable.com/docs/reac
96
98
  import { HotTable, HotColumn } from '@handsontable/react-wrapper';
97
99
  import { registerAllModules } from 'handsontable/registry';
98
100
  import 'handsontable/styles/handsontable.min.css';
101
+ import 'handsontable/styles/ht-theme-main.min.css';
99
102
 
100
103
  registerAllModules();
101
104
 
102
105
  const ExampleComponent = () => {
103
106
  return (
104
107
  <HotTable
108
+ theme="ht-theme-main-dark-auto"
105
109
  data={[
106
110
  { company: 'Tagcat', country: 'United Kingdom', rating: 4.4 },
107
111
  { company: 'Zoomzone', country: 'Japan', rating: 4.5 },
@@ -689,6 +689,113 @@ function useHotEditor(overriddenHooks, deps) {
689
689
  };
690
690
  }, [rerenderTrigger, hotCustomEditorInstanceRef, deferredValue]);
691
691
  }
692
+ function EditorComponent(_ref2) {
693
+ var _onPrepare = _ref2.onPrepare,
694
+ _onClose = _ref2.onClose,
695
+ _onOpen = _ref2.onOpen,
696
+ _onFocus = _ref2.onFocus,
697
+ children = _ref2.children,
698
+ _ref2$shortcutsGroup = _ref2.shortcutsGroup,
699
+ shortcutsGroup = _ref2$shortcutsGroup === void 0 ? "custom-editor" : _ref2$shortcutsGroup,
700
+ shortcuts = _ref2.shortcuts;
701
+ var mainElementRef = React.useRef(null);
702
+ var currentValue = React.useRef(undefined);
703
+ var _useContext2 = React.useContext(EditorContext),
704
+ hotCustomEditorInstanceRef = _useContext2.hotCustomEditorInstanceRef;
705
+ var registerShortcuts = React.useCallback(function () {
706
+ var _hotCustomEditorInsta8, _hotCustomEditorInsta9, _hotCustomEditorInsta0;
707
+ if (!((_hotCustomEditorInsta8 = hotCustomEditorInstanceRef.current) !== null && _hotCustomEditorInsta8 !== void 0 && _hotCustomEditorInsta8.hot)) return;
708
+ (_hotCustomEditorInsta9 = hotCustomEditorInstanceRef.current) === null || _hotCustomEditorInsta9 === void 0 || (_hotCustomEditorInsta9 = _hotCustomEditorInsta9.hot) === null || _hotCustomEditorInsta9 === void 0 || _hotCustomEditorInsta9.getShortcutManager().setActiveContextName("editor");
709
+ var shortcutManager = (_hotCustomEditorInsta0 = hotCustomEditorInstanceRef.current) === null || _hotCustomEditorInsta0 === void 0 || (_hotCustomEditorInsta0 = _hotCustomEditorInsta0.hot) === null || _hotCustomEditorInsta0 === void 0 ? void 0 : _hotCustomEditorInsta0.getShortcutManager();
710
+ var editorContext = shortcutManager.getContext('editor');
711
+ var contextConfig = {
712
+ group: shortcutsGroup
713
+ };
714
+ if (shortcuts) {
715
+ editorContext === null || editorContext === void 0 || editorContext.addShortcuts(shortcuts.map(function (shortcut) {
716
+ return _objectSpread2(_objectSpread2({}, shortcut), {}, {
717
+ group: shortcut.group || shortcutsGroup,
718
+ relativeToGroup: shortcut.relativeToGroup || 'editorManager.handlingEditor',
719
+ position: shortcut.position || 'before',
720
+ callback: function callback(event) {
721
+ return shortcut.callback({
722
+ value: currentValue.current,
723
+ setValue: setValue,
724
+ finishEditing: finishEditing
725
+ }, event);
726
+ }
727
+ });
728
+ }),
729
+ //@ts-ignore
730
+ contextConfig);
731
+ }
732
+ }, [shortcuts]);
733
+ var unRegisterShortcuts = React.useCallback(function () {
734
+ var _hotCustomEditorInsta1, _hotCustomEditorInsta10;
735
+ if (!((_hotCustomEditorInsta1 = hotCustomEditorInstanceRef.current) !== null && _hotCustomEditorInsta1 !== void 0 && _hotCustomEditorInsta1.hot)) return;
736
+ var shortcutManager = (_hotCustomEditorInsta10 = hotCustomEditorInstanceRef.current) === null || _hotCustomEditorInsta10 === void 0 || (_hotCustomEditorInsta10 = _hotCustomEditorInsta10.hot) === null || _hotCustomEditorInsta10 === void 0 ? void 0 : _hotCustomEditorInsta10.getShortcutManager();
737
+ var editorContext = shortcutManager.getContext("editor");
738
+ editorContext.removeShortcutsByGroup(shortcutsGroup);
739
+ }, [shortcuts]);
740
+ var _useHotEditor = useHotEditor({
741
+ onOpen: function onOpen() {
742
+ if (!mainElementRef.current) return;
743
+ mainElementRef.current.style.display = 'block';
744
+ _onOpen === null || _onOpen === void 0 || _onOpen();
745
+ registerShortcuts();
746
+ },
747
+ onClose: function onClose() {
748
+ if (!mainElementRef.current) return;
749
+ mainElementRef.current.style.display = 'none';
750
+ _onClose === null || _onClose === void 0 || _onClose();
751
+ unRegisterShortcuts();
752
+ },
753
+ onPrepare: function onPrepare(_row, _column, _prop, TD, _originalValue, _cellProperties) {
754
+ if (!mainElementRef.current) return;
755
+ var tdPosition = TD.getBoundingClientRect();
756
+ mainElementRef.current.style.left = "".concat(tdPosition.left + window.pageXOffset - 1, "px");
757
+ mainElementRef.current.style.top = "".concat(tdPosition.top + window.pageYOffset - 1, "px");
758
+ mainElementRef.current.style.width = "".concat(tdPosition.width + 1, "px");
759
+ mainElementRef.current.style.height = "".concat(tdPosition.height + 1, "px");
760
+ _onPrepare === null || _onPrepare === void 0 || _onPrepare(_row, _column, _prop, TD, _originalValue, _cellProperties);
761
+ },
762
+ onFocus: function onFocus() {
763
+ _onFocus === null || _onFocus === void 0 || _onFocus();
764
+ }
765
+ }),
766
+ value = _useHotEditor.value,
767
+ setValue = _useHotEditor.setValue,
768
+ finishEditing = _useHotEditor.finishEditing,
769
+ isOpen = _useHotEditor.isOpen,
770
+ col = _useHotEditor.col,
771
+ row = _useHotEditor.row;
772
+ React.useEffect(function () {
773
+ currentValue.current = value;
774
+ }, [value]);
775
+ var stopMousedownPropagation = function stopMousedownPropagation(e) {
776
+ e.stopPropagation();
777
+ };
778
+ return React__default["default"].createElement("div", {
779
+ ref: mainElementRef,
780
+ style: {
781
+ display: 'none',
782
+ position: 'absolute',
783
+ background: '#fff',
784
+ border: '0px',
785
+ padding: '0px',
786
+ zIndex: 999
787
+ },
788
+ onMouseDown: stopMousedownPropagation
789
+ }, children({
790
+ value: value,
791
+ setValue: setValue,
792
+ finishEditing: finishEditing,
793
+ mainElementRef: mainElementRef,
794
+ isOpen: isOpen,
795
+ col: col,
796
+ row: row
797
+ }));
798
+ }
692
799
 
693
800
  var isHotColumn = function isHotColumn(childNode) {
694
801
  return childNode.type === HotColumn;
@@ -763,7 +870,7 @@ var HotColumn = function HotColumn(props) {
763
870
  }, editorPortal);
764
871
  };
765
872
 
766
- var version="0.0.0-next-31301f8-20260205";
873
+ var version="0.0.0-next-e5e8439-20260206";
767
874
 
768
875
  /**
769
876
  * Component used to manage the renderer component portals.
@@ -2134,6 +2241,8 @@ var HotTable = React.forwardRef(function (_ref, ref) {
2134
2241
  */
2135
2242
  HotTable.version = version;
2136
2243
 
2244
+ exports.EditorComponent = EditorComponent;
2245
+ exports.EditorContext = EditorContext;
2137
2246
  exports.HotColumn = HotColumn;
2138
2247
  exports.HotTable = HotTable;
2139
2248
  exports["default"] = HotTable;
@@ -25,7 +25,7 @@
25
25
  * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
26
26
  * USE OR INABILITY TO USE THIS SOFTWARE.
27
27
  *
28
- * Version: 0.0.0-next-31301f8-20260205 (built at Thu Feb 05 2026 08:38:58 GMT+0000 (Coordinated Universal Time))
28
+ * Version: 0.0.0-next-e5e8439-20260206 (built at Fri Feb 06 2026 06:03:42 GMT+0000 (Coordinated Universal Time))
29
29
  */
30
30
  (function (global, factory) {
31
31
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react'), require('react-dom'), require('handsontable/base'), require('handsontable/renderers/registry'), require('handsontable/editors/registry')) :
@@ -705,6 +705,113 @@ function useHotEditor(overriddenHooks, deps) {
705
705
  };
706
706
  }, [rerenderTrigger, hotCustomEditorInstanceRef, deferredValue]);
707
707
  }
708
+ function EditorComponent(_ref2) {
709
+ var _onPrepare = _ref2.onPrepare,
710
+ _onClose = _ref2.onClose,
711
+ _onOpen = _ref2.onOpen,
712
+ _onFocus = _ref2.onFocus,
713
+ children = _ref2.children,
714
+ _ref2$shortcutsGroup = _ref2.shortcutsGroup,
715
+ shortcutsGroup = _ref2$shortcutsGroup === void 0 ? "custom-editor" : _ref2$shortcutsGroup,
716
+ shortcuts = _ref2.shortcuts;
717
+ var mainElementRef = React.useRef(null);
718
+ var currentValue = React.useRef(undefined);
719
+ var _useContext2 = React.useContext(EditorContext),
720
+ hotCustomEditorInstanceRef = _useContext2.hotCustomEditorInstanceRef;
721
+ var registerShortcuts = React.useCallback(function () {
722
+ var _hotCustomEditorInsta8, _hotCustomEditorInsta9, _hotCustomEditorInsta0;
723
+ if (!((_hotCustomEditorInsta8 = hotCustomEditorInstanceRef.current) !== null && _hotCustomEditorInsta8 !== void 0 && _hotCustomEditorInsta8.hot)) return;
724
+ (_hotCustomEditorInsta9 = hotCustomEditorInstanceRef.current) === null || _hotCustomEditorInsta9 === void 0 || (_hotCustomEditorInsta9 = _hotCustomEditorInsta9.hot) === null || _hotCustomEditorInsta9 === void 0 || _hotCustomEditorInsta9.getShortcutManager().setActiveContextName("editor");
725
+ var shortcutManager = (_hotCustomEditorInsta0 = hotCustomEditorInstanceRef.current) === null || _hotCustomEditorInsta0 === void 0 || (_hotCustomEditorInsta0 = _hotCustomEditorInsta0.hot) === null || _hotCustomEditorInsta0 === void 0 ? void 0 : _hotCustomEditorInsta0.getShortcutManager();
726
+ var editorContext = shortcutManager.getContext('editor');
727
+ var contextConfig = {
728
+ group: shortcutsGroup
729
+ };
730
+ if (shortcuts) {
731
+ editorContext === null || editorContext === void 0 || editorContext.addShortcuts(shortcuts.map(function (shortcut) {
732
+ return _objectSpread2(_objectSpread2({}, shortcut), {}, {
733
+ group: shortcut.group || shortcutsGroup,
734
+ relativeToGroup: shortcut.relativeToGroup || 'editorManager.handlingEditor',
735
+ position: shortcut.position || 'before',
736
+ callback: function callback(event) {
737
+ return shortcut.callback({
738
+ value: currentValue.current,
739
+ setValue: setValue,
740
+ finishEditing: finishEditing
741
+ }, event);
742
+ }
743
+ });
744
+ }),
745
+ //@ts-ignore
746
+ contextConfig);
747
+ }
748
+ }, [shortcuts]);
749
+ var unRegisterShortcuts = React.useCallback(function () {
750
+ var _hotCustomEditorInsta1, _hotCustomEditorInsta10;
751
+ if (!((_hotCustomEditorInsta1 = hotCustomEditorInstanceRef.current) !== null && _hotCustomEditorInsta1 !== void 0 && _hotCustomEditorInsta1.hot)) return;
752
+ var shortcutManager = (_hotCustomEditorInsta10 = hotCustomEditorInstanceRef.current) === null || _hotCustomEditorInsta10 === void 0 || (_hotCustomEditorInsta10 = _hotCustomEditorInsta10.hot) === null || _hotCustomEditorInsta10 === void 0 ? void 0 : _hotCustomEditorInsta10.getShortcutManager();
753
+ var editorContext = shortcutManager.getContext("editor");
754
+ editorContext.removeShortcutsByGroup(shortcutsGroup);
755
+ }, [shortcuts]);
756
+ var _useHotEditor = useHotEditor({
757
+ onOpen: function onOpen() {
758
+ if (!mainElementRef.current) return;
759
+ mainElementRef.current.style.display = 'block';
760
+ _onOpen === null || _onOpen === void 0 || _onOpen();
761
+ registerShortcuts();
762
+ },
763
+ onClose: function onClose() {
764
+ if (!mainElementRef.current) return;
765
+ mainElementRef.current.style.display = 'none';
766
+ _onClose === null || _onClose === void 0 || _onClose();
767
+ unRegisterShortcuts();
768
+ },
769
+ onPrepare: function onPrepare(_row, _column, _prop, TD, _originalValue, _cellProperties) {
770
+ if (!mainElementRef.current) return;
771
+ var tdPosition = TD.getBoundingClientRect();
772
+ mainElementRef.current.style.left = "".concat(tdPosition.left + window.pageXOffset - 1, "px");
773
+ mainElementRef.current.style.top = "".concat(tdPosition.top + window.pageYOffset - 1, "px");
774
+ mainElementRef.current.style.width = "".concat(tdPosition.width + 1, "px");
775
+ mainElementRef.current.style.height = "".concat(tdPosition.height + 1, "px");
776
+ _onPrepare === null || _onPrepare === void 0 || _onPrepare(_row, _column, _prop, TD, _originalValue, _cellProperties);
777
+ },
778
+ onFocus: function onFocus() {
779
+ _onFocus === null || _onFocus === void 0 || _onFocus();
780
+ }
781
+ }),
782
+ value = _useHotEditor.value,
783
+ setValue = _useHotEditor.setValue,
784
+ finishEditing = _useHotEditor.finishEditing,
785
+ isOpen = _useHotEditor.isOpen,
786
+ col = _useHotEditor.col,
787
+ row = _useHotEditor.row;
788
+ React.useEffect(function () {
789
+ currentValue.current = value;
790
+ }, [value]);
791
+ var stopMousedownPropagation = function stopMousedownPropagation(e) {
792
+ e.stopPropagation();
793
+ };
794
+ return React__default["default"].createElement("div", {
795
+ ref: mainElementRef,
796
+ style: {
797
+ display: 'none',
798
+ position: 'absolute',
799
+ background: '#fff',
800
+ border: '0px',
801
+ padding: '0px',
802
+ zIndex: 999
803
+ },
804
+ onMouseDown: stopMousedownPropagation
805
+ }, children({
806
+ value: value,
807
+ setValue: setValue,
808
+ finishEditing: finishEditing,
809
+ mainElementRef: mainElementRef,
810
+ isOpen: isOpen,
811
+ col: col,
812
+ row: row
813
+ }));
814
+ }
708
815
 
709
816
  var isHotColumn = function isHotColumn(childNode) {
710
817
  return childNode.type === HotColumn;
@@ -779,7 +886,7 @@ var HotColumn = function HotColumn(props) {
779
886
  }, editorPortal);
780
887
  };
781
888
 
782
- var version="0.0.0-next-31301f8-20260205";
889
+ var version="0.0.0-next-e5e8439-20260206";
783
890
 
784
891
  /**
785
892
  * Component used to manage the renderer component portals.
@@ -1123,6 +1230,8 @@ var HotTable = React.forwardRef(function (_ref, ref) {
1123
1230
  */
1124
1231
  HotTable.version = version;
1125
1232
 
1233
+ exports.EditorComponent = EditorComponent;
1234
+ exports.EditorContext = EditorContext;
1126
1235
  exports.HotColumn = HotColumn;
1127
1236
  exports.HotTable = HotTable;
1128
1237
  exports["default"] = HotTable;