pixel-react 1.10.3 → 1.10.5

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 (83) hide show
  1. package/lib/ComponentProps/TreeNodeProps.d.ts +2 -1
  2. package/lib/components/AddResourceButton/AddResourceButton.d.ts +4 -0
  3. package/lib/components/AddResourceButton/ArrowsButton/ArrowsButton.d.ts +1 -1
  4. package/lib/components/AddResourceButton/index.d.ts +1 -1
  5. package/lib/components/AddResourceButton/type.d.ts +2 -0
  6. package/lib/components/BrowserTabs/BrowserTabs.d.ts +5 -0
  7. package/lib/components/BrowserTabs/index.d.ts +1 -0
  8. package/lib/components/BrowserTabs/types.d.ts +64 -0
  9. package/lib/components/ConnectingBranch/data.d.ts +62 -64
  10. package/lib/components/ConnectingBranch/types.d.ts +28 -7
  11. package/lib/components/Excel/ExcelFile/ExcelFile.d.ts +6 -1
  12. package/lib/components/Excel/ExcelFile/ExcelFileComponents/Spreadsheet.d.ts +3 -0
  13. package/lib/components/Excel/ExcelFile/ExcelFileComponents/actions.d.ts +15 -1
  14. package/lib/components/Excel/ExcelFile/ExcelFileComponents/types.d.ts +5 -0
  15. package/lib/components/Excel/Types.d.ts +1 -0
  16. package/lib/components/InputWithDropdown/types.d.ts +3 -0
  17. package/lib/components/MenuOption/MenuOption.d.ts +1 -1
  18. package/lib/components/MenuOption/types.d.ts +1 -0
  19. package/lib/components/MiniModal/types.d.ts +2 -1
  20. package/lib/components/TableTree/Components/TableCell.d.ts +1 -1
  21. package/lib/components/TableTree/Components/TableRow.d.ts +1 -1
  22. package/lib/components/TableTree/types.d.ts +4 -3
  23. package/lib/index.d.ts +112 -12
  24. package/lib/index.esm.js +504 -218
  25. package/lib/index.esm.js.map +1 -1
  26. package/lib/index.js +505 -218
  27. package/lib/index.js.map +1 -1
  28. package/lib/tsconfig.tsbuildinfo +1 -1
  29. package/package.json +1 -1
  30. package/src/ComponentProps/TreeNodeProps.ts +2 -1
  31. package/src/assets/Themes/BaseTheme.scss +1 -2
  32. package/src/assets/Themes/DarkTheme.scss +0 -1
  33. package/src/assets/styles/_mixins.scss +19 -0
  34. package/src/components/AddResourceButton/{AddButton.scss → AddResourceButton.scss} +1 -0
  35. package/src/components/AddResourceButton/{AddButton.stories.tsx → AddResourceButton.stories.tsx} +4 -4
  36. package/src/components/AddResourceButton/{AddButton.tsx → AddResourceButton.tsx} +25 -10
  37. package/src/components/AddResourceButton/ArrowsButton/ArrowsButton.scss +1 -2
  38. package/src/components/AddResourceButton/ArrowsButton/ArrowsButton.tsx +16 -9
  39. package/src/components/AddResourceButton/index.ts +1 -1
  40. package/src/components/AddResourceButton/type.ts +2 -0
  41. package/src/components/BrowserTabs/BrowserTabs.scss +75 -0
  42. package/src/components/BrowserTabs/BrowserTabs.stories.tsx +366 -0
  43. package/src/components/BrowserTabs/BrowserTabs.tsx +128 -0
  44. package/src/components/BrowserTabs/index.ts +1 -0
  45. package/src/components/BrowserTabs/types.ts +73 -0
  46. package/src/components/ConnectingBranch/BranchComponents/MachineInstances.tsx +54 -39
  47. package/src/components/ConnectingBranch/ConnectingBranch.stories.tsx +3 -2
  48. package/src/components/ConnectingBranch/ConnectingBranch.tsx +28 -24
  49. package/src/components/ConnectingBranch/data.tsx +207 -213
  50. package/src/components/ConnectingBranch/types.ts +26 -17
  51. package/src/components/Excel/ColorBarSelector/ColorBarSelector.tsx +1 -1
  52. package/src/components/Excel/ExcelFile/ExcelFile.scss +4 -0
  53. package/src/components/Excel/ExcelFile/ExcelFile.tsx +35 -16
  54. package/src/components/Excel/ExcelFile/ExcelFileComponents/ColumnIndicator.tsx +14 -3
  55. package/src/components/Excel/ExcelFile/ExcelFileComponents/DataEditor.tsx +1 -0
  56. package/src/components/Excel/ExcelFile/ExcelFileComponents/RowIndicator.tsx +16 -5
  57. package/src/components/Excel/ExcelFile/ExcelFileComponents/Spreadsheet.scss +12 -1
  58. package/src/components/Excel/ExcelFile/ExcelFileComponents/Spreadsheet.tsx +31 -5
  59. package/src/components/Excel/ExcelFile/ExcelFileComponents/actions.ts +30 -0
  60. package/src/components/Excel/ExcelFile/ExcelFileComponents/reducer.ts +47 -0
  61. package/src/components/Excel/ExcelFile/ExcelFileComponents/reducerFunctions.ts +4 -4
  62. package/src/components/Excel/ExcelFile/ExcelFileComponents/types.ts +6 -0
  63. package/src/components/Excel/ExcelFile.stories.tsx +10 -2
  64. package/src/components/Excel/ExcelToolBar/ExcelToolBar.tsx +11 -11
  65. package/src/components/Excel/Types.ts +1 -0
  66. package/src/components/Excel/dataConversion.ts +17 -19
  67. package/src/components/InputWithDropdown/InputWithDropdown.tsx +6 -0
  68. package/src/components/InputWithDropdown/types.ts +7 -1
  69. package/src/components/MenuOption/MenuOption.tsx +4 -0
  70. package/src/components/MenuOption/types.ts +1 -0
  71. package/src/components/MiniModal/MiniModal.scss +8 -0
  72. package/src/components/MiniModal/MiniModal.stories.tsx +60 -0
  73. package/src/components/MiniModal/types.ts +2 -1
  74. package/src/components/Table/Table.stories.tsx +1 -1
  75. package/src/components/Table/Table.tsx +8 -4
  76. package/src/components/TableTree/Components/TableCell.tsx +25 -10
  77. package/src/components/TableTree/Components/TableHead.tsx +5 -5
  78. package/src/components/TableTree/Components/TableRow.tsx +27 -24
  79. package/src/components/TableTree/TableTree.scss +89 -69
  80. package/src/components/TableTree/TableTree.stories.tsx +66 -2
  81. package/src/components/TableTree/types.ts +4 -3
  82. package/src/index.ts +2 -0
  83. package/src/utils/getTreeDetails/getTreeDetails.ts +1 -1
@@ -1,225 +1,219 @@
1
1
  const machineData = {
2
- executionSettings: {
3
- machines: {
4
- multiple: true,
5
- totalNoScript: 250,
6
- selectedMachines: [
7
- {
8
- clientId: 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
9
- executionDataSet: {
10
- peVariableSetId: 'UUID',
11
- globalVariableSetId: 'UUID',
12
- testDataSetId: 'UUID',
13
- },
14
- machineInstances: [],
2
+ machines: {
3
+ multiple: true,
4
+ totalNoScript: 250,
5
+ selectedMachines: [
6
+ {
7
+ clientId: 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
8
+ executionDataSet: {
9
+ peVariableSetId: 'UUID',
10
+ globalVariableSetId: 'UUID',
11
+ testDataSetId: 'UUID',
15
12
  },
16
- {
17
- clientId: 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
18
- executionDataSet: {
19
- peVariableSetId: 'UUID',
20
- globalVariableSetId: 'UUID',
21
- testDataSetId: 'UUID',
22
- },
23
- machineInstances: [
24
- {
25
- clientId:
26
- 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
27
- numberOfRuns: '3',
28
- executionEnv: 'Local',
29
- browserName: 'Google Chrome',
30
- browserVersion: '107.0.5304.88',
31
- systemUrl: '',
32
- machineInfo: {
33
- osName: 'Windows 11 Home Single Language',
34
- osVersion: '10.0.22000',
35
- hostName: 'LAPTOP-T793RVQN',
36
- },
37
- deviceInfo: [
38
- {
39
- version: '10.0',
40
- name: 'Samsung Galaxy Note 20 Ultra',
41
- type: 'local',
42
- subType: 'device',
43
- platform: 'android',
44
- },
45
- {
46
- version: '18',
47
- name: 'iPhone 14',
48
- type: 'local',
49
- subType: 'device',
50
- platform: 'ios',
51
- },
52
- ],
53
- headless: false,
54
- runLevelExecutionDataSets: [
55
- {
56
- peVariableSetId: 'UUID_1',
57
- globalVariableSetId: 'UUID',
58
- testDataSetId: 'UUID',
59
- runScriptCount: 12,
60
- browserRenderer: `<div>browser</div>`,
61
- },
62
- ],
63
- },
64
- ],
13
+ machineInstances: [],
14
+ },
15
+ {
16
+ clientId: 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
17
+ executionDataSet: {
18
+ peVariableSetId: 'UUID',
19
+ globalVariableSetId: 'UUID',
20
+ testDataSetId: 'UUID',
65
21
  },
66
- {
67
- clientId: 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
68
- executionDataSet: {
69
- peVariableSetId: 'UUID',
70
- globalVariableSetId: 'UUID',
71
- testDataSetId: 'UUID',
72
- },
73
- machineInstances: [
74
- {
75
- clientId:
76
- 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
77
- numberOfRuns: '3',
78
- executionEnv: 'Local',
79
- browserName: 'Google Chrome',
80
- browserVersion: '107.0.5304.88',
81
- systemUrl: '',
82
- machineInfo: {
83
- osName: 'Windows 11 Home Single Language',
84
- osVersion: '10.0.22000',
85
- hostName: 'LAPTOP-T793RVQN',
86
- },
87
- deviceInfo: [
88
- {
89
- version: '10.0',
90
- name: 'Samsung Galaxy Note 20 Ultra',
91
- type: 'local',
92
- subType: 'device',
93
- platform: 'android',
94
- },
95
- {
96
- version: '18',
97
- name: 'iPhone 14',
98
- type: 'local',
99
- subType: 'device',
100
- platform: 'ios',
101
- },
102
- ],
103
- headless: false,
104
- runLevelExecutionDataSets: [
105
- {
106
- peVariableSetId: 'UUID_1',
107
- globalVariableSetId: 'UUID',
108
- testDataSetId: 'UUID',
109
- runScriptCount: 12,
110
- browserRenderer: `<div>browser</div>`,
111
- },
112
- ],
22
+ machineInstances: [
23
+ {
24
+ clientId: 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
25
+ numberOfRuns: '3',
26
+ executionEnv: 'Local',
27
+ browserName: 'Google Chrome',
28
+ browserVersion: '107.0.5304.88',
29
+ systemUrl: '',
30
+ machineInfo: {
31
+ osName: 'Windows 11 Home Single Language',
32
+ osVersion: '10.0.22000',
33
+ hostName: 'LAPTOP-T793RVQN',
113
34
  },
114
- {
115
- clientId:
116
- 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
117
- numberOfRuns: '3',
118
- executionEnv: 'Local',
119
- browserName: 'Google Chrome',
120
- browserVersion: '107.0.5304.88',
121
- systemUrl: '',
122
- machineInfo: {
123
- osName: 'Windows 11 Home Single Language',
124
- osVersion: '10.0.22000',
125
- hostName: 'LAPTOP-T793RVQN',
35
+ deviceInfo: [
36
+ {
37
+ version: '10.0',
38
+ name: 'Samsung Galaxy Note 20 Ultra',
39
+ type: 'local',
40
+ subType: 'device',
41
+ platform: 'android',
126
42
  },
127
- deviceInfo: [
128
- {
129
- version: '10.0',
130
- name: 'Samsung Galaxy Note 20 Ultra',
131
- type: 'local',
132
- subType: 'device',
133
- platform: 'android',
134
- },
135
- {
136
- version: '18',
137
- name: 'iPhone 14',
138
- type: 'local',
139
- subType: 'device',
140
- platform: 'ios',
141
- },
142
- ],
143
- headless: false,
144
- runLevelExecutionDataSets: [
145
- {
146
- peVariableSetId: 'UUID_1',
147
- globalVariableSetId: 'UUID',
148
- testDataSetId: 'UUID',
149
- runScriptCount: 12,
150
- executionDataSetId: 'uuid',
151
- },
152
- ],
153
- },
154
- ],
155
- },
156
- {
157
- clientId: 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
158
- executionDataSet: {
159
- peVariableSetId: 'UUID',
160
- globalVariableSetId: 'UUID',
161
- testDataSetId: 'UUID',
43
+ {
44
+ version: '18',
45
+ name: 'iPhone 14',
46
+ type: 'local',
47
+ subType: 'device',
48
+ platform: 'ios',
49
+ },
50
+ ],
51
+ headless: false,
52
+ runLevelExecutionDataSets: [
53
+ {
54
+ peVariableSetId: 'UUID_1',
55
+ globalVariableSetId: 'UUID',
56
+ testDataSetId: 'UUID',
57
+ runScriptCount: 12,
58
+ browserRenderer: `<div>browser</div>`,
59
+ },
60
+ ],
162
61
  },
163
- machineInstances: [
164
- {
165
- clientId:
166
- 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
167
- numberOfRuns: '3',
168
- executionEnv: 'Local',
169
- browserName: 'Google Chrome',
170
- browserVersion: '107.0.5304.88',
171
- systemUrl: '',
172
- machineInfo: {
173
- osName: 'Windows 11 Home Single Language',
174
- osVersion: '10.0.22000',
175
- hostName: 'LAPTOP-T793RVQN',
62
+ ],
63
+ },
64
+ {
65
+ clientId: 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
66
+ executionDataSet: {
67
+ peVariableSetId: 'UUID',
68
+ globalVariableSetId: 'UUID',
69
+ testDataSetId: 'UUID',
70
+ },
71
+ machineInstances: [
72
+ {
73
+ clientId: 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
74
+ numberOfRuns: '3',
75
+ executionEnv: 'Local',
76
+ browserName: 'Google Chrome',
77
+ browserVersion: '107.0.5304.88',
78
+ systemUrl: '',
79
+ machineInfo: {
80
+ osName: 'Windows 11 Home Single Language',
81
+ osVersion: '10.0.22000',
82
+ hostName: 'LAPTOP-T793RVQN',
83
+ },
84
+ deviceInfo: [
85
+ {
86
+ version: '10.0',
87
+ name: 'Samsung Galaxy Note 20 Ultra',
88
+ type: 'local',
89
+ subType: 'device',
90
+ platform: 'android',
91
+ },
92
+ {
93
+ version: '18',
94
+ name: 'iPhone 14',
95
+ type: 'local',
96
+ subType: 'device',
97
+ platform: 'ios',
176
98
  },
177
- deviceInfo: [
178
- {
179
- version: '10.0',
180
- name: 'Samsung Galaxy Note 20 Ultra',
181
- type: 'local',
182
- subType: 'device',
183
- platform: 'android',
184
- },
185
- {
186
- version: '18',
187
- name: 'iPhone 14',
188
- type: 'local',
189
- subType: 'device',
190
- platform: 'ios',
191
- },
192
- ],
193
- headless: false,
194
- runLevelExecutionDataSets: [
195
- {
196
- peVariableSetId: 'UUID_1',
197
- globalVariableSetId: 'UUID',
198
- testDataSetId: 'UUID',
199
- runScriptCount: 12,
200
- browserRenderer: `<div>browser</div>`,
201
- },
202
- {
203
- peVariableSetId: 'UUID_1',
204
- globalVariableSetId: 'UUID',
205
- testDataSetId: 'UUID',
206
- runScriptCount: 12,
207
- browserRenderer: `<div>browser</div>`,
208
- },
209
- {
210
- peVariableSetId: 'UUID_1',
211
- globalVariableSetId: 'UUID',
212
- testDataSetId: 'UUID',
213
- runScriptCount: 12,
214
- browserRenderer: `<div>browser</div>`,
215
- },
216
- ],
99
+ ],
100
+ headless: false,
101
+ runLevelExecutionDataSets: [
102
+ {
103
+ peVariableSetId: 'UUID_1',
104
+ globalVariableSetId: 'UUID',
105
+ testDataSetId: 'UUID',
106
+ runScriptCount: 12,
107
+ browserRenderer: `<div>browser</div>`,
108
+ },
109
+ ],
110
+ },
111
+ {
112
+ clientId: 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
113
+ numberOfRuns: '3',
114
+ executionEnv: 'Local',
115
+ browserName: 'Google Chrome',
116
+ browserVersion: '107.0.5304.88',
117
+ systemUrl: '',
118
+ machineInfo: {
119
+ osName: 'Windows 11 Home Single Language',
120
+ osVersion: '10.0.22000',
121
+ hostName: 'LAPTOP-T793RVQN',
217
122
  },
218
- ],
123
+ deviceInfo: [
124
+ {
125
+ version: '10.0',
126
+ name: 'Samsung Galaxy Note 20 Ultra',
127
+ type: 'local',
128
+ subType: 'device',
129
+ platform: 'android',
130
+ },
131
+ {
132
+ version: '18',
133
+ name: 'iPhone 14',
134
+ type: 'local',
135
+ subType: 'device',
136
+ platform: 'ios',
137
+ },
138
+ ],
139
+ headless: false,
140
+ runLevelExecutionDataSets: [
141
+ {
142
+ peVariableSetId: 'UUID_1',
143
+ globalVariableSetId: 'UUID',
144
+ testDataSetId: 'UUID',
145
+ runScriptCount: 12,
146
+ executionDataSetId: 'uuid',
147
+ },
148
+ ],
149
+ },
150
+ ],
151
+ },
152
+ {
153
+ clientId: 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
154
+ executionDataSet: {
155
+ peVariableSetId: 'UUID',
156
+ globalVariableSetId: 'UUID',
157
+ testDataSetId: 'UUID',
219
158
  },
220
- ],
221
- executionType: 'SEND_SUITE_TO_ALL',
222
- },
159
+ machineInstances: [
160
+ {
161
+ clientId: 'flinko-client-win-daa67320-d70c-438e-b417-62d76669e7a2',
162
+ numberOfRuns: '3',
163
+ executionEnv: 'Local',
164
+ browserName: 'Google Chrome',
165
+ browserVersion: '107.0.5304.88',
166
+ systemUrl: '',
167
+ machineInfo: {
168
+ osName: 'Windows 11 Home Single Language',
169
+ osVersion: '10.0.22000',
170
+ hostName: 'LAPTOP-T793RVQN',
171
+ },
172
+ deviceInfo: [
173
+ {
174
+ version: '10.0',
175
+ name: 'Samsung Galaxy Note 20 Ultra',
176
+ type: 'local',
177
+ subType: 'device',
178
+ platform: 'android',
179
+ },
180
+ {
181
+ version: '18',
182
+ name: 'iPhone 14',
183
+ type: 'local',
184
+ subType: 'device',
185
+ platform: 'ios',
186
+ },
187
+ ],
188
+ headless: false,
189
+ runLevelExecutionDataSets: [
190
+ {
191
+ peVariableSetId: 'UUID_1',
192
+ globalVariableSetId: 'UUID',
193
+ testDataSetId: 'UUID',
194
+ runScriptCount: 12,
195
+ browserRenderer: `<div>browser</div>`,
196
+ },
197
+ {
198
+ peVariableSetId: 'UUID_1',
199
+ globalVariableSetId: 'UUID',
200
+ testDataSetId: 'UUID',
201
+ runScriptCount: 12,
202
+ browserRenderer: `<div>browser</div>`,
203
+ },
204
+ {
205
+ peVariableSetId: 'UUID_1',
206
+ globalVariableSetId: 'UUID',
207
+ testDataSetId: 'UUID',
208
+ runScriptCount: 12,
209
+ browserRenderer: `<div>browser</div>`,
210
+ },
211
+ ],
212
+ },
213
+ ],
214
+ },
215
+ ],
216
+ executionType: 'SEND_SUITE_TO_ALL',
223
217
  },
224
218
  };
225
219
 
@@ -1,4 +1,4 @@
1
- import { ReactElement } from 'react';
1
+ import { ReactElement, type FC } from 'react';
2
2
 
3
3
  type MachineInstanceData = any;
4
4
  export interface MachineInstance {
@@ -11,32 +11,41 @@ export interface MachineData {
11
11
  [key: string]: machineDataObj;
12
12
  }
13
13
  export interface MachineInstancesProps {
14
- parentNode: number;
15
- data: MachineData;
14
+ parentNodeIndex: number;
15
+ parentNodeData: MachineData;
16
16
  verticalLineHeight: number;
17
17
  datasetHeight: number;
18
18
  curveHeights: number[];
19
19
  itemRefs: React.MutableRefObject<(HTMLDivElement | null)[]>;
20
20
  datasetRef: React.RefObject<HTMLDivElement>;
21
- getChildNodeComponent: (
22
- isButton: boolean,
23
- ...args: any[]
24
- ) => ReactElement<any, any>;
21
+ getChildNodeComponent: FC<ConnectingNodeConfig>;
25
22
  }
26
23
 
27
24
  export type indexType = number;
28
25
  export type rowType = number;
29
-
26
+ export interface RunLevelExecutionDataSet {
27
+ peVariableSetId: string;
28
+ globalVariableSetId: string;
29
+ testDataSetId: string;
30
+ runScriptCount?: number;
31
+ [key: string]: any;
32
+ }
33
+ export interface ConnectingNodeConfig {
34
+ isButton?: boolean;
35
+ isMultiSelect?: boolean;
36
+ parentNodeData?: { [key: string]: any };
37
+ parentNodeIndex?: number;
38
+ childNodeData?: { [key: string]: any };
39
+ childNodeIndex?: number;
40
+ runLevelExecutionDataSetIndex?: number;
41
+ runLevelExecutionDataSet?: RunLevelExecutionDataSet;
42
+ }
30
43
  export interface ConnectBranchProps {
31
44
  data: MachineData;
32
45
  childNodeCurveHeight?: number;
33
- getParentNodeComponent: (
34
- isMultiSelect: boolean,
35
- ...args: any[]
36
- ) => ReactElement<any, any>;
37
- getParentNodeComponentActionItems: (...args: any[]) => ReactElement<any, any>;
38
- getChildNodeComponent: (
39
- isButton: boolean,
40
- ...args: any[]
41
- ) => ReactElement<any, any>;
46
+ getParentNodeComponent: (nodeArgs: ConnectingNodeConfig) => ReactElement;
47
+ getParentNodeComponentActionItems: (
48
+ nodeArgs: ConnectingNodeConfig
49
+ ) => ReactElement;
50
+ getChildNodeComponent: (nodeArgs: ConnectingNodeConfig) => ReactElement;
42
51
  }
@@ -10,7 +10,7 @@ const ColorBarSelector: React.FC<ColorBarSelectorProps> = ({
10
10
  disabled,
11
11
  }) => {
12
12
  const colorInputRef = useRef<HTMLInputElement | null>(null);
13
- const [color, setColor] = useState<string>('var(--error-light)');
13
+ const [color, setColor] = useState<string>('#e42525'); // Needed hexacode for backend
14
14
 
15
15
  const handleColorClick = () => {
16
16
  if (colorInputRef.current) {
@@ -6,6 +6,10 @@
6
6
  top: 0;
7
7
  }
8
8
 
9
+ .ff-excel-sheet-bar-hider {
10
+ display: none;
11
+ }
12
+
9
13
  .ff-excel-sheet-bar {
10
14
  position: static;
11
15
  max-width: 100%;
@@ -31,25 +31,35 @@ interface ExcelFileProps {
31
31
  };
32
32
 
33
33
  /** Controls whether the toolbar is shown, disabled, or hidden */
34
- toolbar?: 'show' | 'disable' | 'hide';
35
-
34
+ toolbar?: 'show' | 'hide';
35
+ sheetBar?: 'show' | 'hide';
36
+ rowCount?: number;
37
+ colCount?: number;
36
38
  /** Callback function to save the Excel data */
37
39
  onSave?: (saveData: any) => void;
38
40
  contextHeightPositioning?: number;
39
41
  contextWidthPositioning?: number;
40
42
  /** Set your dynamic sheet Height*/
41
43
  sheetHeight?: string;
44
+ columnContextEnable?: boolean;
45
+ rowContextEnable?: boolean;
42
46
  }
43
47
 
44
48
  const ExcelFile: React.FC<ExcelFileProps> = ({
45
49
  excelData,
46
50
  contextOption,
51
+ toolbar = 'show',
52
+ sheetBar = 'show',
53
+ rowCount = 26,
54
+ colCount = 26,
47
55
  sheetHeight = '100%',
48
56
  contextHeightPositioning = 0,
49
57
  contextWidthPositioning = 0,
50
58
  onSave = (saveData) => {
51
59
  saveData();
52
60
  },
61
+ columnContextEnable = false,
62
+ rowContextEnable = false,
53
63
  }) => {
54
64
  const [sheetNames, setSheetNames] = useState<string[]>([]);
55
65
  const [contextMenu, setContextMenu] = React.useState<ContextMenuState>({
@@ -61,19 +71,19 @@ const ExcelFile: React.FC<ExcelFileProps> = ({
61
71
  const EmptyRow: CellBase = {
62
72
  value: '',
63
73
  style: {
64
- color: 'var(--input-hover-border-color)',
65
- backgroundColor: 'var(--drawer-footer-bg)',
66
- borderColor: 'var(--excel-sheet-border)',
74
+ color: '#000000', // Needed hexacode for backend
75
+ backgroundColor: '#ffffff', // Needed hexacode for backend
76
+ borderColor: '#c9c9c9', // Needed hexacode for backend
67
77
  textDecoration: 'none solid',
68
- borderRight: `1px solid var(--excel-sheet-border)`,
69
- borderLeft: `1px solid var(--excel-sheet-border)`,
70
- borderTop: `1px solid var(--excel-sheet-border)`,
71
- borderBottom: `1px solid var(--excel-sheet-border)`,
78
+ borderRight: `1px solid var(--excel-header-border)`,
79
+ borderLeft: `1px solid var(--excel-header-border)`,
80
+ borderTop: `1px solid var(--excel-header-border)`,
81
+ borderBottom: `1px solid var(--excel-header-border)`,
72
82
  fontSize: '15px',
73
83
  fontWeight: 'normal',
74
84
  fontStyle: 'normal',
75
85
  fontFamily: 'Times New Roman',
76
- textAlign: 'center',
86
+ textAlign: 'left',
77
87
  },
78
88
  };
79
89
 
@@ -143,9 +153,9 @@ const ExcelFile: React.FC<ExcelFileProps> = ({
143
153
  payload.forEach((sheet) => {
144
154
  const sheetName = sheet.sheetName;
145
155
  const json = sheet.data;
146
- const maxRows = Math.max(26, json.length + 2);
156
+ const maxRows = Math.max(rowCount, json.length + 2);
147
157
  const maxCols = Math.max(
148
- 26,
158
+ colCount,
149
159
  Math.max(...json.map((row) => row.length)) + 2
150
160
  );
151
161
 
@@ -164,11 +174,11 @@ const ExcelFile: React.FC<ExcelFileProps> = ({
164
174
  value: checkVal(cell.value),
165
175
  style: convertStyleToFrontend(cell?.styles), //TODO remove 's' for Style
166
176
  type: true,
177
+ isDisable: checkVal(cell.isDisable),
167
178
  };
168
179
  }
169
180
  });
170
181
  });
171
-
172
182
  newWorksheetsData[sheetName] = spreadsheetData;
173
183
  });
174
184
  setWorksheetsData(newWorksheetsData);
@@ -270,8 +280,8 @@ const ExcelFile: React.FC<ExcelFileProps> = ({
270
280
  const baseName = 'NewSheet';
271
281
  const existingSheetNames = sheetNames;
272
282
  const newSheetName = generateUniqueSheetName(baseName, existingSheetNames);
273
- const newSheetData = Array.from({ length: 26 }, () =>
274
- Array.from({ length: 26 }, () => EmptyRow)
283
+ const newSheetData = Array.from({ length: rowCount }, () =>
284
+ Array.from({ length: colCount }, () => EmptyRow)
275
285
  );
276
286
  setSheetNames((prev) => [...prev, newSheetName]);
277
287
  setSelectedSheet({ index: sheetNames?.length, name: newSheetName });
@@ -468,14 +478,23 @@ const ExcelFile: React.FC<ExcelFileProps> = ({
468
478
  <div className="ff-excel" onContextMenu={setContextPosition}>
469
479
  <div ref={sheetRef} className="ff-excel-sheet">
470
480
  <Spreadsheet
481
+ toolbar={toolbar}
471
482
  sheetHeight={sheetHeight}
472
483
  setContextMenu={setContextMenu}
473
484
  contextOption={contextOption}
474
485
  data={selectedSheetData}
486
+ columnContextEnable={columnContextEnable}
487
+ rowContextEnable={rowContextEnable}
475
488
  onEvaluatedDataChange={onEvaluateChange}
476
489
  />
477
490
  </div>
478
- <div className="ff-excel-sheet-bar">
491
+ <div
492
+ className={
493
+ sheetBar === 'hide'
494
+ ? 'ff-excel-sheet-bar-hider'
495
+ : 'ff-excel-sheet-bar'
496
+ }
497
+ >
479
498
  <div className="ff-excel-add-sheet-set">
480
499
  <Tooltip title="Add Sheet" placement="top">
481
500
  <Icon