pixel-react 1.2.0 → 1.2.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (182) hide show
  1. package/lib/components/AppHeader/types.d.ts +11 -2
  2. package/lib/components/Avatar/Avatar.d.ts +5 -0
  3. package/lib/components/Avatar/Avatar.stories.d.ts +10 -0
  4. package/lib/components/Avatar/index.d.ts +1 -0
  5. package/lib/components/Avatar/types.d.ts +26 -0
  6. package/lib/components/ExcelFile/ExcelFile/Excel/ActiveCell.d.ts +2 -2
  7. package/lib/components/ExcelFile/ExcelFile/Excel/ColumnIndicator.d.ts +2 -2
  8. package/lib/components/ExcelFile/ExcelFile/Excel/Copied.d.ts +1 -1
  9. package/lib/components/ExcelFile/ExcelFile/Excel/CornerIndicator.d.ts +2 -2
  10. package/lib/components/ExcelFile/ExcelFile/Excel/DataEditor.d.ts +2 -2
  11. package/lib/components/ExcelFile/ExcelFile/Excel/DataViewer.d.ts +2 -2
  12. package/lib/components/ExcelFile/ExcelFile/Excel/FloatingRect.d.ts +2 -2
  13. package/lib/components/ExcelFile/ExcelFile/Excel/HeaderRow.d.ts +1 -1
  14. package/lib/components/ExcelFile/ExcelFile/Excel/Row.d.ts +1 -1
  15. package/lib/components/ExcelFile/ExcelFile/Excel/RowIndicator.d.ts +2 -2
  16. package/lib/components/ExcelFile/ExcelFile/Excel/Selected.d.ts +1 -1
  17. package/lib/components/ExcelFile/ExcelFile/Excel/Spreadsheet.d.ts +6 -7
  18. package/lib/components/ExcelFile/ExcelFile/Excel/Table.d.ts +1 -1
  19. package/lib/components/ExcelFile/ExcelFile/Excel/actions.d.ts +49 -5
  20. package/lib/components/ExcelFile/ExcelFile/Excel/context.d.ts +3 -3
  21. package/lib/components/ExcelFile/ExcelFile/Excel/engine/engine.d.ts +5 -5
  22. package/lib/components/ExcelFile/ExcelFile/Excel/engine/formula.d.ts +6 -6
  23. package/lib/components/ExcelFile/ExcelFile/Excel/engine/index.d.ts +2 -2
  24. package/lib/components/ExcelFile/ExcelFile/Excel/engine/point-graph.d.ts +2 -2
  25. package/lib/components/ExcelFile/ExcelFile/Excel/engine/point-hash.d.ts +1 -1
  26. package/lib/components/ExcelFile/ExcelFile/Excel/engine/point-set.d.ts +1 -1
  27. package/lib/components/ExcelFile/ExcelFile/Excel/index.d.ts +11 -11
  28. package/lib/components/ExcelFile/ExcelFile/Excel/matrix.d.ts +1 -1
  29. package/lib/components/ExcelFile/ExcelFile/Excel/point-range.d.ts +1 -1
  30. package/lib/components/ExcelFile/ExcelFile/Excel/reducer.d.ts +5 -5
  31. package/lib/components/ExcelFile/ExcelFile/Excel/selection.d.ts +3 -3
  32. package/lib/components/ExcelFile/ExcelFile/Excel/types.d.ts +11 -48
  33. package/lib/components/ExcelFile/ExcelFile/Excel/use-dispatch.d.ts +1 -1
  34. package/lib/components/ExcelFile/ExcelFile/Excel/use-selector.d.ts +1 -1
  35. package/lib/components/ExcelFile/ExcelFile/Excel/util.d.ts +11 -12
  36. package/lib/components/ExcelFile/ExcelFile/ExcelFile.d.ts +16 -0
  37. package/lib/components/ExcelFile/ExcelSheetBar/ExcelSheetBar.d.ts +0 -3
  38. package/lib/components/ExcelFile/ExcelToolBar/ExcelToolBar.d.ts +12 -0
  39. package/lib/components/ExcelFile/Types.d.ts +2 -49
  40. package/lib/components/Form/Form.d.ts +1 -15
  41. package/lib/components/Form/Form.stories.d.ts +6 -5
  42. package/lib/components/Form/Forms.d.ts +8 -0
  43. package/lib/components/Form/index.d.ts +1 -1
  44. package/lib/components/InputWithDropdown/types.d.ts +1 -1
  45. package/lib/components/LabelEditTextField/LabelEditTextField.d.ts +5 -0
  46. package/lib/components/LabelEditTextField/LabelEditTextField.stories.d.ts +11 -0
  47. package/lib/components/LabelEditTextField/index.d.ts +1 -0
  48. package/lib/components/LabelEditTextField/types.d.ts +38 -0
  49. package/lib/components/MenuOption/types.d.ts +7 -7
  50. package/lib/components/ModulesChip/ModuleChip.d.ts +4 -0
  51. package/lib/components/ModulesChip/ModuleChip.stories.d.ts +6 -0
  52. package/lib/components/ModulesChip/index.d.ts +1 -0
  53. package/lib/components/ModulesChip/types.d.ts +14 -0
  54. package/lib/components/MultiSelect/MultiSelectTypes.d.ts +1 -0
  55. package/lib/components/Select/Select.d.ts +1 -1
  56. package/lib/components/Select/components/Dropdown/Dropdown.d.ts +1 -1
  57. package/lib/components/Select/components/Dropdown/dropdownTypes.d.ts +2 -0
  58. package/lib/components/Select/types.d.ts +11 -4
  59. package/lib/components/Toastify/Toastify.d.ts +8 -0
  60. package/lib/components/Toastify/Toastify.stories.d.ts +6 -0
  61. package/lib/components/Toastify/index.d.ts +1 -0
  62. package/lib/components/Toastify/types.d.ts +7 -0
  63. package/lib/components/Tooltip/types.d.ts +6 -0
  64. package/lib/components/Typography/types.d.ts +1 -0
  65. package/lib/index.d.ts +130 -29
  66. package/lib/index.esm.js +26882 -872
  67. package/lib/index.esm.js.map +1 -1
  68. package/lib/index.js +26881 -866
  69. package/lib/index.js.map +1 -1
  70. package/lib/tsconfig.tsbuildinfo +1 -1
  71. package/lib/utils/getSelectOptionValue/getSelectOptionValue.d.ts +8 -0
  72. package/package.json +1 -1
  73. package/src/StyleGuide/ColorPalette/colorPaletteList.ts +10 -0
  74. package/src/assets/Themes/BaseTheme.scss +10 -1
  75. package/src/assets/Themes/DarkTheme.scss +19 -8
  76. package/src/assets/icons/client_profile.svg +4 -0
  77. package/src/assets/icons/fireflink_finder_logo.svg +7 -0
  78. package/src/assets/icons/fireflink_platform.svg +4 -0
  79. package/src/assets/icons/license_expired.svg +20 -0
  80. package/src/components/AppHeader/AppHeader.scss +5 -2
  81. package/src/components/AppHeader/AppHeader.stories.tsx +24 -3
  82. package/src/components/AppHeader/AppHeader.tsx +29 -11
  83. package/src/components/AppHeader/types.ts +11 -3
  84. package/src/components/Avatar/Avatar.scss +24 -0
  85. package/src/components/Avatar/Avatar.stories.tsx +56 -0
  86. package/src/components/Avatar/Avatar.tsx +25 -0
  87. package/src/components/Avatar/index.ts +1 -0
  88. package/src/components/Avatar/types.ts +27 -0
  89. package/src/components/Drawer/Drawer.scss +0 -1
  90. package/src/components/Drawer/Drawer.tsx +1 -1
  91. package/src/components/ExcelFile/ColorBarselector/ColorBarSelector.scss +0 -2
  92. package/src/components/ExcelFile/ContextMenu/ContextMenu.scss +1 -4
  93. package/src/components/ExcelFile/ContextMenu/ContextMenu.tsx +0 -1
  94. package/src/components/ExcelFile/ExcelFile/Excel/ActiveCell.tsx +13 -13
  95. package/src/components/ExcelFile/ExcelFile/Excel/Cell.tsx +13 -12
  96. package/src/components/ExcelFile/ExcelFile/Excel/ColumnIndicator.tsx +40 -32
  97. package/src/components/ExcelFile/ExcelFile/Excel/Copied.tsx +4 -4
  98. package/src/components/ExcelFile/ExcelFile/Excel/CornerIndicator.tsx +10 -10
  99. package/src/components/ExcelFile/ExcelFile/Excel/DataEditor.tsx +5 -5
  100. package/src/components/ExcelFile/ExcelFile/Excel/DataViewer.tsx +10 -10
  101. package/src/components/ExcelFile/ExcelFile/Excel/FloatingRect.tsx +6 -6
  102. package/src/components/ExcelFile/ExcelFile/Excel/HeaderRow.tsx +1 -1
  103. package/src/components/ExcelFile/ExcelFile/Excel/Row.tsx +1 -1
  104. package/src/components/ExcelFile/ExcelFile/Excel/RowIndicator.tsx +34 -27
  105. package/src/components/ExcelFile/ExcelFile/Excel/Selected.tsx +5 -5
  106. package/src/components/ExcelFile/ExcelFile/Excel/{Spreadsheet.css → Spreadsheet.scss} +21 -37
  107. package/src/components/ExcelFile/ExcelFile/Excel/Spreadsheet.tsx +87 -78
  108. package/src/components/ExcelFile/ExcelFile/Excel/Table.tsx +2 -2
  109. package/src/components/ExcelFile/ExcelFile/Excel/actions.ts +121 -31
  110. package/src/components/ExcelFile/ExcelFile/Excel/areModelsEqual.ts +1 -1
  111. package/src/components/ExcelFile/ExcelFile/Excel/context.ts +4 -4
  112. package/src/components/ExcelFile/ExcelFile/Excel/engine/engine.ts +7 -7
  113. package/src/components/ExcelFile/ExcelFile/Excel/engine/formula.ts +11 -11
  114. package/src/components/ExcelFile/ExcelFile/Excel/engine/index.ts +2 -2
  115. package/src/components/ExcelFile/ExcelFile/Excel/engine/point-graph.ts +3 -3
  116. package/src/components/ExcelFile/ExcelFile/Excel/engine/point-hash.ts +2 -2
  117. package/src/components/ExcelFile/ExcelFile/Excel/engine/point-set.ts +2 -2
  118. package/src/components/ExcelFile/ExcelFile/Excel/index.ts +12 -11
  119. package/src/components/ExcelFile/ExcelFile/Excel/matrix.ts +18 -24
  120. package/src/components/ExcelFile/ExcelFile/Excel/point-range.ts +1 -1
  121. package/src/components/ExcelFile/ExcelFile/Excel/reducer.ts +311 -41
  122. package/src/components/ExcelFile/ExcelFile/Excel/selection.ts +5 -5
  123. package/src/components/ExcelFile/ExcelFile/Excel/types.ts +14 -66
  124. package/src/components/ExcelFile/ExcelFile/Excel/typings/fast-formula-parser.d.ts +8 -8
  125. package/src/components/ExcelFile/ExcelFile/Excel/use-dispatch.ts +2 -2
  126. package/src/components/ExcelFile/ExcelFile/Excel/use-selector.ts +3 -3
  127. package/src/components/ExcelFile/ExcelFile/Excel/util.ts +21 -22
  128. package/src/components/ExcelFile/ExcelFile/ExcelFile.scss +0 -3
  129. package/src/components/ExcelFile/ExcelFile/ExcelFile.tsx +45 -403
  130. package/src/components/ExcelFile/ExcelFile.stories.tsx +10 -29
  131. package/src/components/ExcelFile/ExcelSheetBar/ExcelSheetBar.tsx +1 -12
  132. package/src/components/ExcelFile/ExcelToolBar/ExcelToolBar.scss +0 -3
  133. package/src/components/ExcelFile/ExcelToolBar/ExcelToolBar.tsx +147 -127
  134. package/src/components/ExcelFile/Types.ts +3 -70
  135. package/src/components/ExcelFile/index.ts +1 -1
  136. package/src/components/Form/Form.d.ts +3 -0
  137. package/src/components/Form/Form.scss +31 -4
  138. package/src/components/Form/Form.stories.tsx +172 -138
  139. package/src/components/Form/Form.ts +2 -0
  140. package/src/components/Form/Forms.tsx +25 -0
  141. package/src/components/Form/index.ts +1 -1
  142. package/src/components/Icon/Icons.scss +1 -0
  143. package/src/components/Icon/iconList.ts +8 -0
  144. package/src/components/IconButton/IconButton.scss +1 -1
  145. package/src/components/InputWithDropdown/types.ts +1 -1
  146. package/src/components/LabelEditTextField/LabelEditTextField.scss +85 -0
  147. package/src/components/LabelEditTextField/LabelEditTextField.stories.tsx +136 -0
  148. package/src/components/LabelEditTextField/LabelEditTextField.tsx +207 -0
  149. package/src/components/LabelEditTextField/index.ts +1 -0
  150. package/src/components/LabelEditTextField/types.ts +38 -0
  151. package/src/components/MenuOption/types.ts +7 -6
  152. package/src/components/ModulesChip/ModuleChip.scss +20 -0
  153. package/src/components/ModulesChip/ModuleChip.stories.tsx +41 -0
  154. package/src/components/ModulesChip/ModuleChip.tsx +31 -0
  155. package/src/components/ModulesChip/index.ts +1 -0
  156. package/src/components/ModulesChip/types.ts +14 -0
  157. package/src/components/MultiSelect/Dropdown.tsx +6 -1
  158. package/src/components/MultiSelect/MultiSelect.scss +17 -10
  159. package/src/components/MultiSelect/MultiSelect.stories.tsx +16 -4
  160. package/src/components/MultiSelect/MultiSelect.tsx +11 -4
  161. package/src/components/MultiSelect/MultiSelectTypes.ts +4 -3
  162. package/src/components/Select/Select.scss +4 -0
  163. package/src/components/Select/Select.stories.tsx +5 -3
  164. package/src/components/Select/Select.tsx +15 -7
  165. package/src/components/Select/components/Dropdown/Dropdown.tsx +3 -1
  166. package/src/components/Select/components/Dropdown/dropdownTypes.ts +3 -0
  167. package/src/components/Select/types.ts +12 -5
  168. package/src/components/Toastify/Toastify.stories.tsx +52 -0
  169. package/src/components/Toastify/Toastify.tsx +66 -0
  170. package/src/components/Toastify/index.ts +1 -0
  171. package/src/components/Toastify/types.ts +8 -0
  172. package/src/components/Tooltip/Tooltip.tsx +2 -1
  173. package/src/components/Tooltip/types.ts +6 -0
  174. package/src/components/Typography/Typography.scss +12 -4
  175. package/src/components/Typography/Typography.stories.tsx +2 -0
  176. package/src/components/Typography/Typography.tsx +2 -0
  177. package/src/components/Typography/types.ts +1 -0
  178. package/src/index.ts +12 -2
  179. package/src/utils/getSelectOptionValue/getSelectOptionValue.ts +31 -0
  180. package/src/components/ExcelFile/ChangeExcelStyles.tsx +0 -78
  181. package/src/components/ExcelFile/ImportExcelStyles.tsx +0 -86
  182. package/src/components/Form/Form.tsx +0 -57
@@ -0,0 +1 @@
1
+ export { default } from './Avatar';
@@ -0,0 +1,27 @@
1
+ export interface AvatarProps {
2
+ /**
3
+ * This property determines the size of the avatar. It can be set to 'small', 'medium', or 'large'.
4
+ */
5
+ variant?: 'small' | 'medium' | 'large';
6
+ /**
7
+ * This property allows you to customize the background color of the avatar.
8
+ */
9
+ backgroundColor?: string;
10
+ /**
11
+ * This property specifies the name of the icon to be displayed within the avatar.
12
+ */
13
+ iconName: string;
14
+ /**
15
+ * This property allows you to customize the color of the icon within the avatar.
16
+ */
17
+ iconColor?: string;
18
+ /**
19
+ * This property allows you to set a custom size for the avatar, overriding the default size specified by the variant property.
20
+ */
21
+
22
+ customAvatarSize?: number;
23
+ /**
24
+ * This property allows you to set a custom size for the icon within the avatar.
25
+ */
26
+ customIconSize?: number;
27
+ }
@@ -61,7 +61,6 @@
61
61
  .ff-close-icon {
62
62
  height: 16px;
63
63
  width: 16px;
64
- background-color: var(--button-bg-color);
65
64
  border-radius: 4px;
66
65
  display: flex;
67
66
  align-items: center;
@@ -129,7 +129,7 @@ const Drawer: FC<DrawerProps> = ({
129
129
  <div className="ff-close-icon">
130
130
  <Icon
131
131
  name="close"
132
- hoverEffect={false}
132
+ hoverEffect={true}
133
133
  onClick={onCloseIconClick || onClose}
134
134
  height={6}
135
135
  width={6}
@@ -1,5 +1,3 @@
1
- @use '../../../assets/styles/colors';
2
-
3
1
  .color-bar {
4
2
  background-color: var(--error_light);
5
3
  width: 100%;
@@ -1,12 +1,10 @@
1
- @import '../../../assets/styles/colors';
2
- @import '../../../assets/styles/fonts';
1
+ @use '../../assets/styles/fonts';
3
2
 
4
3
  .context-menu {
5
4
  position: absolute;
6
5
  z-index: 1;
7
6
  outline: none;
8
7
  background-color: var(--brand-color);
9
- // box-shadow: 0px 0px 6px $shadow;
10
8
  border-radius: 5px;
11
9
  opacity: 1;
12
10
  padding: 16px 0;
@@ -29,7 +27,6 @@
29
27
  justify-content: center;
30
28
  }
31
29
  &:hover {
32
- // background-color: $primary;
33
30
  .options-label {
34
31
  background: var(--option-card-bg-color);
35
32
  }
@@ -1,7 +1,6 @@
1
1
  import React from 'react';
2
2
  import './ContextMenu.scss';
3
3
  import Icon from '../../Icon';
4
- // import { colors } from '../../../colors/colorConstants';
5
4
 
6
5
  const ContextMenu: React.FC<ContextMenuProps> = ({
7
6
  customContext,
@@ -1,12 +1,12 @@
1
- import * as React from "react";
2
- import classnames from "classnames";
3
- import * as Actions from "./actions";
4
- import * as Types from "./types";
5
- import * as Point from "./point";
6
- import useSelector from "./use-selector";
7
- import useDispatch from "./use-dispatch";
8
- import { getCellDimensions } from "./util";
9
- import * as Matrix from "./matrix";
1
+ import * as React from 'react';
2
+ import classnames from 'classnames';
3
+ import * as Actions from './actions';
4
+ import * as Types from './types';
5
+ import * as Point from './point';
6
+ import useSelector from './use-selector';
7
+ import useDispatch from './use-dispatch';
8
+ import { getCellDimensions } from './util';
9
+ import * as Matrix from './matrix';
10
10
 
11
11
  type Props = {
12
12
  DataEditor: Types.DataEditorComponent;
@@ -77,7 +77,7 @@ const ActiveCell: React.FC<Props> = (props) => {
77
77
 
78
78
  const coordsChanged =
79
79
  active?.row !== prevActive.row || active?.column !== prevActive.column;
80
- const exitedEditMode = mode !== "edit";
80
+ const exitedEditMode = mode !== 'edit';
81
81
 
82
82
  if (coordsChanged || exitedEditMode) {
83
83
  const initialCell = initialCellRef.current;
@@ -107,14 +107,14 @@ const ActiveCell: React.FC<Props> = (props) => {
107
107
  <div
108
108
  ref={rootRef}
109
109
  className={classnames(
110
- "Spreadsheet__active-cell",
110
+ 'Spreadsheet__active-cell',
111
111
  `Spreadsheet__active-cell--${mode}`
112
112
  )}
113
113
  style={dimensions}
114
- onClick={mode === "view" && !readOnly ? edit : undefined}
114
+ onClick={mode === 'view' && !readOnly ? edit : undefined}
115
115
  tabIndex={0}
116
116
  >
117
- {mode === "edit" && active && (
117
+ {mode === 'edit' && active && (
118
118
  <DataEditor
119
119
  row={active.row}
120
120
  column={active.column}
@@ -51,7 +51,7 @@ export const Cell: React.FC<Types.CellComponentProps> = ({
51
51
 
52
52
  const handleMouseOver = React.useCallback(
53
53
  (event: React.MouseEvent<HTMLTableCellElement>) => {
54
- if (dragging && first && !isDotDragging) {
54
+ if (dragging && first && !isDotDragging) {
55
55
  setCellDimensions(point, getOffsetRect(event.currentTarget));
56
56
  select(point);
57
57
  }
@@ -102,10 +102,11 @@ export const Cell: React.FC<Types.CellComponentProps> = ({
102
102
  return (
103
103
  <td
104
104
  ref={rootRef}
105
+ // style={data?.style}
105
106
  className={classnames('Spreadsheet__cell', data?.className, {
106
107
  'Spreadsheet__active-cell': active || dragging,
107
108
  })}
108
- onMouseEnter={handleMouseOver} // Handle drag when mouse enters
109
+ onMouseEnter={handleMouseOver}
109
110
  onMouseDown={handleMouseDown}
110
111
  tabIndex={0}
111
112
  >
@@ -130,15 +131,15 @@ export const enhance = (
130
131
  ): React.FC<
131
132
  Omit<
132
133
  Types.CellComponentProps,
133
- | "selected"
134
- | "active"
135
- | "copied"
136
- | "dragging"
137
- | "mode"
138
- | "data"
139
- | "select"
140
- | "activate"
141
- | "setCellDimensions"
134
+ | 'selected'
135
+ | 'active'
136
+ | 'copied'
137
+ | 'dragging'
138
+ | 'mode'
139
+ | 'data'
140
+ | 'select'
141
+ | 'activate'
142
+ | 'setCellDimensions'
142
143
  >
143
144
  > => {
144
145
  return function CellWrapper(props) {
@@ -169,7 +170,7 @@ export const enhance = (
169
170
  [dispatch]
170
171
  );
171
172
  const active = useSelector((state) => isActive(state.active, point));
172
- const mode = useSelector((state) => (active ? state.mode : "view"));
173
+ const mode = useSelector((state) => (active ? state.mode : 'view'));
173
174
  const data = useSelector((state) => Matrix.get(point, state.model.data));
174
175
  const evaluatedData = useSelector((state) =>
175
176
  Matrix.get(point, state.model.evaluatedData)
@@ -1,10 +1,10 @@
1
- import * as React from "react";
2
- import classNames from "classnames";
3
- import * as Types from "./types";
4
- import * as Point from "./point";
5
- import * as Actions from "./actions";
6
- import useDispatch from "./use-dispatch";
7
- import useSelector from "./use-selector";
1
+ import * as React from 'react';
2
+ import classNames from 'classnames';
3
+ import * as Types from './types';
4
+ import * as Point from './point';
5
+ import * as Actions from './actions';
6
+ import useDispatch from './use-dispatch';
7
+ import useSelector from './use-selector';
8
8
 
9
9
  const ColumnIndicator: Types.ColumnIndicatorComponent = ({
10
10
  column,
@@ -14,7 +14,7 @@ const ColumnIndicator: Types.ColumnIndicatorComponent = ({
14
14
  }) => {
15
15
  const dispatch = useDispatch();
16
16
  const [width, setWidth] = React.useState(100);
17
-
17
+
18
18
  // Function to handle the start of the resize (mouse down)
19
19
  const onMouseDown = (e: React.MouseEvent) => {
20
20
  const startX = e.clientX;
@@ -23,26 +23,33 @@ const ColumnIndicator: Types.ColumnIndicatorComponent = ({
23
23
  const onMouseMove = (moveEvent: MouseEvent) => {
24
24
  const newWidth = width + (moveEvent.clientX - startX);
25
25
  setWidth(newWidth);
26
-
27
- // const selectedAllRow = document.querySelector(".Spreadsheet__floating-rect--selected");
28
- // const selectedSingleRow = document.querySelector(".Spreadsheet__active-cell");
29
26
 
30
- // // If the element exists, update its height
31
- // if (selectedAllRow instanceof HTMLElement&&selectedSingleRow instanceof HTMLElement) {
32
- // selectedAllRow.style.width = `${newWidth}px`; // Set the width
33
- // selectedSingleRow.style.width = `${newWidth}px`; // Set the width
34
- // }
27
+ const selectedAllRow = document.querySelector(
28
+ '.Spreadsheet__floating-rect--selected'
29
+ );
30
+ const selectedSingleRow = document.querySelector(
31
+ '.Spreadsheet__active-cell'
32
+ );
33
+
34
+ // If the element exists, update its height
35
+ if (
36
+ selectedAllRow instanceof HTMLElement &&
37
+ selectedSingleRow instanceof HTMLElement
38
+ ) {
39
+ selectedAllRow.style.width = `${newWidth}px`;
40
+ selectedSingleRow.style.width = `${newWidth}px`;
41
+ }
35
42
  };
36
43
 
37
44
  // Function to stop the resizing (mouse up)
38
45
  const onMouseUp = () => {
39
- document.removeEventListener("mousemove", onMouseMove);
40
- document.removeEventListener("mouseup", onMouseUp);
46
+ document.removeEventListener('mousemove', onMouseMove);
47
+ document.removeEventListener('mouseup', onMouseUp);
41
48
  };
42
49
 
43
50
  // Add event listeners for mouse move and mouse up
44
- document.addEventListener("mousemove", onMouseMove);
45
- document.addEventListener("mouseup", onMouseUp);
51
+ document.addEventListener('mousemove', onMouseMove);
52
+ document.addEventListener('mouseup', onMouseUp);
46
53
  };
47
54
 
48
55
  const activate = React.useCallback(
@@ -58,12 +65,11 @@ const ColumnIndicator: Types.ColumnIndicatorComponent = ({
58
65
  [onSelect, column]
59
66
  );
60
67
 
61
-
62
68
  return (
63
69
  <th
64
- style={{ minWidth: `${width}px`, position: "relative" }} // Use dynamic width
65
- className={classNames("Spreadsheet__header", {
66
- "Spreadsheet__header--selected": selected,
70
+ style={{ minWidth: `${width}px`, position: 'relative' }} // Use dynamic width
71
+ className={classNames('Spreadsheet__header', {
72
+ 'Spreadsheet__header--selected': selected,
67
73
  })}
68
74
  onClick={handleClick}
69
75
  tabIndex={0}
@@ -71,15 +77,17 @@ const ColumnIndicator: Types.ColumnIndicatorComponent = ({
71
77
  {label !== undefined ? label : columnIndexToLabel(column)}
72
78
  <div
73
79
  onMouseDown={onMouseDown}
74
- onClick={()=>{activate}}
80
+ onClick={() => {
81
+ activate;
82
+ }}
75
83
  style={{
76
- zIndex: "inherit",
77
- width: "2px",
78
- position: "absolute",
84
+ zIndex: 'inherit',
85
+ width: '2px',
86
+ position: 'absolute',
79
87
  right: 0,
80
88
  top: 0,
81
- height: "100%",
82
- cursor: "ew-resize",
89
+ height: '100%',
90
+ cursor: 'ew-resize',
83
91
  }}
84
92
  />
85
93
  </th>
@@ -90,7 +98,7 @@ export default ColumnIndicator;
90
98
 
91
99
  export const enhance = (
92
100
  ColumnIndicatorComponent: Types.ColumnIndicatorComponent
93
- ): React.FC<Omit<Types.ColumnIndicatorProps, "selected" | "onSelect">> => {
101
+ ): React.FC<Omit<Types.ColumnIndicatorProps, 'selected' | 'onSelect'>> => {
94
102
  return function ColumnIndicatorWrapper(props) {
95
103
  const dispatch = useDispatch();
96
104
  const selectEntireColumn = React.useCallback(
@@ -113,7 +121,7 @@ export const enhance = (
113
121
 
114
122
  // Utility function to convert column index to label (e.g., 0 -> A, 1 -> B, etc.)
115
123
  function columnIndexToLabel(column: number): string {
116
- let label = "";
124
+ let label = '';
117
125
  let index = column;
118
126
  while (index >= 0) {
119
127
  label = String.fromCharCode(65 + (index % 26)) + label;
@@ -1,7 +1,7 @@
1
- import * as React from "react";
2
- import FloatingRect from "./FloatingRect";
3
- import { getRangeDimensions } from "./util";
4
- import useSelector from "./use-selector";
1
+ import * as React from 'react';
2
+ import FloatingRect from './FloatingRect';
3
+ import { getRangeDimensions } from './util';
4
+ import useSelector from './use-selector';
5
5
 
6
6
  const Copied: React.FC = () => {
7
7
  const range = useSelector((state) => state.copied);
@@ -1,10 +1,10 @@
1
- import * as React from "react";
2
- import classNames from "classnames";
3
- import * as Actions from "./actions";
4
- import { EntireWorksheetSelection } from "./selection";
5
- import * as Types from "./types";
6
- import useDispatch from "./use-dispatch";
7
- import useSelector from "./use-selector";
1
+ import * as React from 'react';
2
+ import classNames from 'classnames';
3
+ import * as Actions from './actions';
4
+ import { EntireWorksheetSelection } from './selection';
5
+ import * as Types from './types';
6
+ import useDispatch from './use-dispatch';
7
+ import useSelector from './use-selector';
8
8
 
9
9
  const CornerIndicator: Types.CornerIndicatorComponent = ({
10
10
  selected,
@@ -15,8 +15,8 @@ const CornerIndicator: Types.CornerIndicatorComponent = ({
15
15
  }, [onSelect]);
16
16
  return (
17
17
  <th
18
- className={classNames("Spreadsheet__header", {
19
- "Spreadsheet__header--selected": selected,
18
+ className={classNames('Spreadsheet__header', {
19
+ 'Spreadsheet__header--selected': selected,
20
20
  })}
21
21
  onClick={handleClick}
22
22
  tabIndex={0}
@@ -28,7 +28,7 @@ export default CornerIndicator;
28
28
 
29
29
  export const enhance = (
30
30
  CornerIndicatorComponent: Types.CornerIndicatorComponent
31
- ): React.FC<Omit<Types.CornerIndicatorProps, "selected" | "onSelect">> => {
31
+ ): React.FC<Omit<Types.CornerIndicatorProps, 'selected' | 'onSelect'>> => {
32
32
  return function CornerIndicatorWrapper(props) {
33
33
  const dispatch = useDispatch();
34
34
  const selectEntireWorksheet = React.useCallback(
@@ -1,6 +1,6 @@
1
- import * as React from "react";
2
- import * as Types from "./types";
3
- import { moveCursorToEnd } from "./util";
1
+ import * as React from 'react';
2
+ import * as Types from './types';
3
+ import { moveCursorToEnd } from './util';
4
4
 
5
5
  /** The default Spreadsheet DataEditor component */
6
6
  const DataEditor: React.FC<Types.DataEditorProps> = ({ onChange, cell }) => {
@@ -8,7 +8,7 @@ const DataEditor: React.FC<Types.DataEditorProps> = ({ onChange, cell }) => {
8
8
 
9
9
  const handleChange = React.useCallback(
10
10
  (event: React.ChangeEvent<HTMLInputElement>) => {
11
- onChange({ ...cell, value: event.target.value,style:cell?.style});
11
+ onChange({ ...cell, value: event.target.value, style: cell?.style });
12
12
  },
13
13
  [onChange, cell]
14
14
  );
@@ -19,7 +19,7 @@ const DataEditor: React.FC<Types.DataEditorProps> = ({ onChange, cell }) => {
19
19
  }
20
20
  }, [inputRef]);
21
21
 
22
- const value = cell?.value ?? "";
22
+ const value = cell?.value ?? '';
23
23
 
24
24
  return (
25
25
  <div className="Spreadsheet__data-editor">
@@ -1,10 +1,10 @@
1
- import * as React from "react";
2
- import classNames from "classnames";
3
- import * as Types from "./types";
4
- import { hasLineBreaker } from "./util";
1
+ import * as React from 'react';
2
+ import classNames from 'classnames';
3
+ import * as Types from './types';
4
+ import { hasLineBreaker } from './util';
5
5
 
6
- export const TRUE_TEXT = "TRUE";
7
- export const FALSE_TEXT = "FALSE";
6
+ export const TRUE_TEXT = 'TRUE';
7
+ export const FALSE_TEXT = 'FALSE';
8
8
 
9
9
  /** The default Spreadsheet DataViewer component */
10
10
  const DataViewer = <Cell extends Types.CellBase<Value>, Value>({
@@ -13,14 +13,14 @@ const DataViewer = <Cell extends Types.CellBase<Value>, Value>({
13
13
  }: Types.DataViewerProps<Cell>): React.ReactElement => {
14
14
  const value = getValue(cell, evaluatedCell);
15
15
 
16
- return typeof value === "boolean" ? (
16
+ return typeof value === 'boolean' ? (
17
17
  <span className="Spreadsheet__data-viewer Spreadsheet__data-viewer--boolean">
18
18
  {convertBooleanToText(value)}
19
19
  </span>
20
20
  ) : (
21
21
  <span
22
- className={classNames("Spreadsheet__data-viewer", {
23
- "Spreadsheet__data-viewer--preserve-breaks": hasLineBreaker(value),
22
+ className={classNames('Spreadsheet__data-viewer', {
23
+ 'Spreadsheet__data-viewer--preserve-breaks': hasLineBreaker(value),
24
24
  })}
25
25
  >
26
26
  {value}
@@ -35,7 +35,7 @@ function getValue(
35
35
  evaluatedCell: Types.CellBase | undefined
36
36
  ) {
37
37
  const baseValue = evaluatedCell?.value ?? cell?.value;
38
- if (baseValue && typeof baseValue === "object") {
38
+ if (baseValue && typeof baseValue === 'object') {
39
39
  return baseValue.toString();
40
40
  }
41
41
  return baseValue;
@@ -1,6 +1,6 @@
1
- import * as React from "react";
2
- import classnames from "classnames";
3
- import * as Types from "./types";
1
+ import * as React from 'react';
2
+ import classnames from 'classnames';
3
+ import * as Types from './types';
4
4
 
5
5
  export type Props = {
6
6
  variant?: string;
@@ -18,10 +18,10 @@ const FloatingRect: React.FC<Props> = ({
18
18
  const { width, height, top, left } = dimensions || {};
19
19
  return (
20
20
  <div
21
- className={classnames("Spreadsheet__floating-rect", {
21
+ className={classnames('Spreadsheet__floating-rect', {
22
22
  [`Spreadsheet__floating-rect--${variant}`]: variant,
23
- "Spreadsheet__floating-rect--dragging": dragging,
24
- "Spreadsheet__floating-rect--hidden": hidden,
23
+ 'Spreadsheet__floating-rect--dragging': dragging,
24
+ 'Spreadsheet__floating-rect--hidden': hidden,
25
25
  })}
26
26
  style={{ width, height, top, left }}
27
27
  />
@@ -1,4 +1,4 @@
1
- import * as Types from "./types";
1
+ import * as Types from './types';
2
2
 
3
3
  const HeaderRow: Types.HeaderRowComponent = (props) => <tr {...props} />;
4
4
 
@@ -1,4 +1,4 @@
1
- import * as Types from "./types";
1
+ import * as Types from './types';
2
2
 
3
3
  const Row: Types.RowComponent = (props) => <tr {...props} />;
4
4
 
@@ -1,9 +1,9 @@
1
- import * as React from "react";
2
- import classNames from "classnames";
3
- import * as Actions from "./actions";
4
- import * as Types from "./types";
5
- import useDispatch from "./use-dispatch";
6
- import useSelector from "./use-selector";
1
+ import * as React from 'react';
2
+ import classNames from 'classnames';
3
+ import * as Actions from './actions';
4
+ import * as Types from './types';
5
+ import useDispatch from './use-dispatch';
6
+ import useSelector from './use-selector';
7
7
 
8
8
  const RowIndicator: Types.RowIndicatorComponent = ({
9
9
  row,
@@ -12,7 +12,7 @@ const RowIndicator: Types.RowIndicatorComponent = ({
12
12
  onSelect,
13
13
  }) => {
14
14
  const [height, setHeight] = React.useState(0);
15
-
15
+
16
16
  // Function to handle the start of the resize (mouse down)
17
17
  const onMouseDown = (e: React.MouseEvent) => {
18
18
  const startY = e.clientY;
@@ -22,25 +22,32 @@ const RowIndicator: Types.RowIndicatorComponent = ({
22
22
  const newHeight = height + (moveEvent.clientY - startY);
23
23
  setHeight(newHeight);
24
24
  // Fetch the floating rectangle element from the DOM
25
- // const selectedAllRow = document.querySelector(".Spreadsheet__floating-rect--selected");
26
- // const selectedSingleRow = document.querySelector(".Spreadsheet__active-cell");
25
+ const selectedAllRow = document.querySelector(
26
+ '.Spreadsheet__floating-rect--selected'
27
+ );
28
+ const selectedSingleRow = document.querySelector(
29
+ '.Spreadsheet__active-cell'
30
+ );
27
31
 
28
- // // If the element exists, update its height
29
- // if (selectedAllRow instanceof HTMLElement&&selectedSingleRow instanceof HTMLElement) {
30
- // selectedAllRow.style.height = `${newHeight}px`; // Set the height
31
- // selectedSingleRow.style.height = `${newHeight}px`; // Set the height
32
- // }
32
+ // If the element exists, update its height
33
+ if (
34
+ selectedAllRow instanceof HTMLElement &&
35
+ selectedSingleRow instanceof HTMLElement
36
+ ) {
37
+ selectedAllRow.style.height = `${newHeight}px`;
38
+ selectedSingleRow.style.height = `${newHeight}px`;
39
+ }
33
40
  };
34
41
 
35
42
  // Function to stop the resizing (mouse up)
36
43
  const onMouseUp = () => {
37
- document.removeEventListener("mousemove", onMouseMove);
38
- document.removeEventListener("mouseup", onMouseUp);
44
+ document.removeEventListener('mousemove', onMouseMove);
45
+ document.removeEventListener('mouseup', onMouseUp);
39
46
  };
40
47
 
41
48
  // Add event listeners for mouse move and mouse up
42
- document.addEventListener("mousemove", onMouseMove);
43
- document.addEventListener("mouseup", onMouseUp);
49
+ document.addEventListener('mousemove', onMouseMove);
50
+ document.addEventListener('mouseup', onMouseUp);
44
51
  };
45
52
 
46
53
  const handleClick = React.useCallback(
@@ -52,9 +59,9 @@ const RowIndicator: Types.RowIndicatorComponent = ({
52
59
 
53
60
  return (
54
61
  <th
55
- style={{ height: `${height}px`,minWidth:'60px', position: "relative" }}
56
- className={classNames("Spreadsheet__header", {
57
- "Spreadsheet__header--selected": selected,
62
+ style={{ height: `${height}px`, minWidth: '60px', position: 'relative' }}
63
+ className={classNames('Spreadsheet__header', {
64
+ 'Spreadsheet__header--selected': selected,
58
65
  })}
59
66
  onClick={handleClick}
60
67
  tabIndex={0}
@@ -63,13 +70,13 @@ const RowIndicator: Types.RowIndicatorComponent = ({
63
70
  <div
64
71
  onMouseDown={onMouseDown}
65
72
  style={{
66
- zIndex: "inherit",
67
- height: "2px",
68
- position: "absolute",
73
+ zIndex: 'inherit',
74
+ height: '2px',
75
+ position: 'absolute',
69
76
  right: 0,
70
77
  bottom: 0,
71
- width: "100%",
72
- cursor: "ns-resize",
78
+ width: '100%',
79
+ cursor: 'ns-resize',
73
80
  }}
74
81
  />
75
82
  </th>
@@ -80,7 +87,7 @@ export default RowIndicator;
80
87
 
81
88
  export const enhance = (
82
89
  RowIndicatorComponent: Types.RowIndicatorComponent
83
- ): React.FC<Omit<Types.RowIndicatorProps, "selected" | "onSelect">> => {
90
+ ): React.FC<Omit<Types.RowIndicatorProps, 'selected' | 'onSelect'>> => {
84
91
  return function RowIndicatorWrapper(props) {
85
92
  const dispatch = useDispatch();
86
93
  const selected = useSelector((state) =>
@@ -1,10 +1,10 @@
1
- import * as React from "react";
2
- import { getSelectedDimensions } from "./util";
3
- import FloatingRect from "./FloatingRect";
4
- import useSelector from "./use-selector";
1
+ import * as React from 'react';
2
+ import { getSelectedDimensions } from './util';
3
+ import FloatingRect from './FloatingRect';
4
+ import useSelector from './use-selector';
5
5
 
6
6
  const Selected: React.FC = () => {
7
- const selected = useSelector((state) => state.selected);
7
+ const selected = useSelector((state) => state.selected);
8
8
  const dimensions = useSelector(
9
9
  (state) =>
10
10
  selected &&