abdul-react 0.1.6 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4,8 +4,10 @@ const EditableCell = React.forwardRef(({ initialValue = '', onChange, className
4
4
  const cellRef = useRef(null);
5
5
  React.useImperativeHandle(ref, () => cellRef.current);
6
6
  useEffect(() => {
7
- if (cellRef.current && initialValue !== cellRef.current.innerText) {
8
- cellRef.current.innerText = initialValue;
7
+ if (cellRef.current && document.activeElement !== cellRef.current) {
8
+ if (initialValue !== cellRef.current.innerText) {
9
+ cellRef.current.innerText = initialValue;
10
+ }
9
11
  }
10
12
  }, [initialValue]);
11
13
  const defaultStyle = {
@@ -25,51 +27,35 @@ const EditableCell = React.forwardRef(({ initialValue = '', onChange, className
25
27
  position: 'relative',
26
28
  paddingBottom: '2px',
27
29
  };
30
+ const handleInput = () => {
31
+ if (cellRef.current) {
32
+ let newValue = cellRef.current.innerText;
33
+ // Standard cleanup for trailing newlines added by browsers
34
+ if (newValue.endsWith('\n')) {
35
+ newValue = newValue.slice(0, -1);
36
+ }
37
+ onChange?.(newValue);
38
+ }
39
+ };
28
40
  const handleKeyDown = (e) => {
29
41
  if (e.key === 'Enter') {
30
42
  if (e.altKey || e.shiftKey) {
31
43
  e.preventDefault();
32
44
  document.execCommand('insertLineBreak');
33
- handleInput();
34
45
  return;
35
46
  }
36
47
  cellRef.current?.blur();
37
48
  }
49
+ // Stop propagation for delete/backspace to ensure
50
+ // parent table/list listeners don't interfere
38
51
  if (e.key === 'Delete' || e.key === 'Backspace') {
39
52
  e.stopPropagation();
40
- return;
41
- }
42
- };
43
- const handleInput = () => {
44
- if (cellRef.current) {
45
- // Remove trailing <br> tags
46
- const brTags = cellRef.current.querySelectorAll('br');
47
- brTags.forEach((br) => {
48
- if (!br.nextSibling ||
49
- (br.nextSibling.nodeType === Node.TEXT_NODE &&
50
- !br.nextSibling.textContent?.trim())) {
51
- br.remove();
52
- }
53
- });
54
- const newValue = cellRef.current.innerText;
55
- onChange?.(newValue);
56
53
  }
57
54
  };
58
55
  const handlePaste = (e) => {
59
56
  e.preventDefault();
60
57
  const text = e.clipboardData.getData('text/plain');
61
- const selection = window.getSelection();
62
- if (!selection || !selection.rangeCount)
63
- return;
64
- const range = selection.getRangeAt(0);
65
- range.deleteContents();
66
- const textNode = document.createTextNode(text);
67
- range.insertNode(textNode);
68
- range.setStartAfter(textNode);
69
- range.collapse(true);
70
- selection.removeAllRanges();
71
- selection.addRange(range);
72
- handleInput();
58
+ document.execCommand('insertText', false, text);
73
59
  };
74
60
  return (_jsx("div", { style: style, children: _jsx("div", { ref: cellRef, className: `editable-cell ${className}`, contentEditable: true, suppressContentEditableWarning: true, onKeyDown: handleKeyDown, onInput: handleInput, onPaste: handlePaste, spellCheck: false, autoCorrect: "off", autoCapitalize: "off", style: defaultStyle }) }));
75
61
  });
@@ -1 +1 @@
1
- {"version":3,"file":"EditableCell.js","sourceRoot":"","sources":["../../../../../src/components/Excel/ExcelFile/ExcelFileComponents/EditableCell.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EditableCell.js","sourceRoot":"","sources":["../../../../../src/components/Excel/ExcelFile/ExcelFileComponents/EditableCell.tsx"],"names":[],"mappings":"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"}