pixel-react 1.9.0 → 1.9.2

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 (165) hide show
  1. package/lib/1fb4472b34e4fe07.css +1 -0
  2. package/lib/assets/fonts/Poppins-Bold.ttf +0 -0
  3. package/lib/assets/fonts/Poppins-Medium.ttf +0 -0
  4. package/lib/assets/fonts/Poppins-Regular.ttf +0 -0
  5. package/lib/assets/fonts/Poppins-SemiBold.ttf +0 -0
  6. package/lib/components/AddButton/AddButton.d.ts +5 -0
  7. package/lib/components/AddButton/AddButton.stories.d.ts +6 -0
  8. package/lib/components/AddButton/index.d.ts +1 -0
  9. package/lib/components/AddButton/types.d.ts +4 -0
  10. package/lib/components/AddVariables/AddVariables.d.ts +5 -0
  11. package/lib/components/AddVariables/index.d.ts +1 -0
  12. package/lib/components/AddVariables/types.d.ts +35 -0
  13. package/lib/components/AllProjectsDropdown/AllProjectsDropdown.stories.d.ts +7 -0
  14. package/lib/components/AppHeader/AppHeader.stories.d.ts +7 -0
  15. package/lib/components/AttachImage/AttachImage.stories.d.ts +7 -0
  16. package/lib/components/AttachmentButton/AttachmentButton.stories.d.ts +9 -0
  17. package/lib/components/Avatar/Avatar.stories.d.ts +10 -0
  18. package/lib/components/Button/Button.stories.d.ts +1 -0
  19. package/lib/components/Charts/BarChart/BarChart.stories.d.ts +6 -0
  20. package/lib/components/Charts/DashboardDonutChart/DashboardDonutChart.stories.d.ts +7 -0
  21. package/lib/components/Charts/IconRadialChart/IconRadialChart.stories.d.ts +8 -0
  22. package/lib/components/Charts/LineChart/LineChart.stories.d.ts +7 -0
  23. package/lib/components/Charts/MultiRadialChart/MultiRadialChart.stories.d.ts +8 -0
  24. package/lib/components/Charts/PieChart/PieChart.stories.d.ts +7 -0
  25. package/lib/components/Comment/Comments.d.ts +1 -1
  26. package/lib/components/Comment/type.d.ts +3 -3
  27. package/lib/components/ConnectingBranch/ConnectingBranch.stories.d.ts +6 -0
  28. package/lib/components/Drawer/Drawer.stories.d.ts +5 -0
  29. package/lib/components/EditTextField/EditTextField.stories.d.ts +10 -0
  30. package/lib/components/Editor/Editor.stories.d.ts +6 -0
  31. package/lib/components/Excel/ContextMenu/ContextMenu.d.ts +4 -0
  32. package/lib/components/Excel/ExcelFile/ExcelFile.d.ts +1 -3
  33. package/lib/components/Excel/ExcelFile.stories.d.ts +6 -0
  34. package/lib/components/Excel/Types.d.ts +1 -1
  35. package/lib/components/ExcelFile/ChangeExcelStyles.d.ts +14 -0
  36. package/lib/components/ExcelFile/ColorBarSelector/ColorBarSelector.d.ts +8 -0
  37. package/lib/components/ExcelFile/ContextMenu/ContextMenu.d.ts +4 -0
  38. package/lib/components/ExcelFile/ExcelFile/Excel/ActiveCell.d.ts +7 -0
  39. package/lib/components/ExcelFile/ExcelFile/Excel/Cell.d.ts +4 -0
  40. package/lib/components/ExcelFile/ExcelFile/Excel/ColumnIndicator.d.ts +5 -0
  41. package/lib/components/ExcelFile/ExcelFile/Excel/Copied.d.ts +3 -0
  42. package/lib/components/ExcelFile/ExcelFile/Excel/CornerIndicator.d.ts +5 -0
  43. package/lib/components/ExcelFile/ExcelFile/Excel/DataEditor.d.ts +5 -0
  44. package/lib/components/ExcelFile/ExcelFile/Excel/DataViewer.d.ts +8 -0
  45. package/lib/components/ExcelFile/ExcelFile/Excel/FloatingRect.d.ts +10 -0
  46. package/lib/components/ExcelFile/ExcelFile/Excel/HeaderRow.d.ts +3 -0
  47. package/lib/components/ExcelFile/ExcelFile/Excel/Row.d.ts +3 -0
  48. package/lib/components/ExcelFile/ExcelFile/Excel/RowIndicator.d.ts +5 -0
  49. package/lib/components/ExcelFile/ExcelFile/Excel/Selected.d.ts +3 -0
  50. package/lib/components/ExcelFile/ExcelFile/Excel/Spreadsheet.d.ts +80 -0
  51. package/lib/components/ExcelFile/ExcelFile/Excel/Table.d.ts +3 -0
  52. package/lib/components/ExcelFile/ExcelFile/Excel/actions.d.ts +174 -0
  53. package/lib/components/ExcelFile/ExcelFile/Excel/areModelsEqual.d.ts +1 -0
  54. package/lib/components/ExcelFile/ExcelFile/Excel/context.d.ts +8 -0
  55. package/lib/components/ExcelFile/ExcelFile/Excel/engine/engine.d.ts +22 -0
  56. package/lib/components/ExcelFile/ExcelFile/Excel/engine/formula.d.ts +17 -0
  57. package/lib/components/ExcelFile/ExcelFile/Excel/engine/index.d.ts +2 -0
  58. package/lib/components/ExcelFile/ExcelFile/Excel/engine/point-graph.d.ts +21 -0
  59. package/lib/components/ExcelFile/ExcelFile/Excel/engine/point-hash.d.ts +3 -0
  60. package/lib/components/ExcelFile/ExcelFile/Excel/engine/point-set.d.ts +24 -0
  61. package/lib/components/ExcelFile/ExcelFile/Excel/index.d.ts +13 -0
  62. package/lib/components/ExcelFile/ExcelFile/Excel/matrix.d.ts +67 -0
  63. package/lib/components/ExcelFile/ExcelFile/Excel/point-range.d.ts +22 -0
  64. package/lib/components/ExcelFile/ExcelFile/Excel/point.d.ts +11 -0
  65. package/lib/components/ExcelFile/ExcelFile/Excel/reducer.d.ts +27 -0
  66. package/lib/components/ExcelFile/ExcelFile/Excel/selection.d.ts +95 -0
  67. package/lib/components/ExcelFile/ExcelFile/Excel/types.d.ts +178 -0
  68. package/lib/components/ExcelFile/ExcelFile/Excel/use-dispatch.d.ts +3 -0
  69. package/lib/components/ExcelFile/ExcelFile/Excel/use-selector.d.ts +3 -0
  70. package/lib/components/ExcelFile/ExcelFile/Excel/util.d.ts +44 -0
  71. package/lib/components/ExcelFile/ExcelFile/ExcelFile.d.ts +19 -0
  72. package/lib/components/ExcelFile/ExcelFile.stories.d.ts +6 -0
  73. package/lib/components/ExcelFile/ExcelSheetBar/ExcelSheetBar.d.ts +12 -0
  74. package/lib/components/ExcelFile/ExcelToolBar/ExcelToolBar.d.ts +15 -0
  75. package/lib/components/ExcelFile/ImportExcelStyles.d.ts +24 -0
  76. package/lib/components/ExcelFile/Types.d.ts +129 -0
  77. package/lib/components/ExcelFile/index.d.ts +1 -0
  78. package/lib/components/FF_Captcha/captcha.stories.d.ts +8 -0
  79. package/lib/components/Form/Form.stories.d.ts +6 -5
  80. package/lib/components/Icon/Icon.stories.d.ts +1 -0
  81. package/lib/components/IconButton/IconButton.stories.d.ts +1 -0
  82. package/lib/components/IconRadioGroup/IconRadioGroup.stories.d.ts +7 -0
  83. package/lib/components/LabelEditTextField/LabelEditTextField.stories.d.ts +13 -0
  84. package/lib/components/MachineInputField/MachineInputField.stories.d.ts +6 -0
  85. package/lib/components/MenuOption/MenuOption.stories.d.ts +1 -0
  86. package/lib/components/MiniModal/MiniModal.stories.d.ts +2 -1
  87. package/lib/components/MobileSkin/types.d.ts +1 -1
  88. package/lib/components/ModulesChip/ModuleChip.stories.d.ts +6 -0
  89. package/lib/components/MultiSelect/MultiSelect.stories.d.ts +2 -0
  90. package/lib/components/NLPInput/NlpInput.stories.d.ts +7 -0
  91. package/lib/components/NLPInput/type.d.ts +70 -0
  92. package/lib/components/Paper/Paper.stories.d.ts +11 -0
  93. package/lib/components/RadioGroup/RadioGroup.stories.d.ts +2 -1
  94. package/lib/components/Select/Select.stories.d.ts +1 -0
  95. package/lib/components/Select/components/Dropdown/Dropdown.d.ts +1 -1
  96. package/lib/components/Select/components/Dropdown/dropdownTypes.d.ts +2 -0
  97. package/lib/components/SequentialConnectingBranch/SequentialConnectingBranch.stories.d.ts +6 -0
  98. package/lib/components/StatusCard/StatusCard.stories.d.ts +11 -0
  99. package/lib/components/Table/Table.stories.d.ts +2 -0
  100. package/lib/components/TableTree/data.d.ts +0 -40
  101. package/lib/components/Toastify/Toastify.stories.d.ts +6 -0
  102. package/lib/components/VariableInput/VariableInput.stories.d.ts +6 -0
  103. package/lib/index.d.ts +9 -25
  104. package/lib/index.esm.js +4443 -960
  105. package/lib/index.esm.js.map +1 -1
  106. package/lib/index.js +4444 -959
  107. package/lib/index.js.map +1 -1
  108. package/lib/tsconfig.tsbuildinfo +1 -1
  109. package/lib/utils/ffID/ffID.stories.d.ts +1 -1
  110. package/lib/utils/findAndInsert/findAndInsert.stories.d.ts +7 -0
  111. package/lib/utils/getEncryptedData/getEncryptedData.stories.d.ts +6 -0
  112. package/lib/utils/getSequentialPayload/getSequentialPayload.stories.d.ts +10 -0
  113. package/lib/utils/indexDBStore/indexDB.d.ts +2 -0
  114. package/package.json +1 -1
  115. package/src/assets/icons/approval_pending.svg +8 -8
  116. package/src/assets/icons/clear_cache.svg +5 -0
  117. package/src/assets/icons/clear_history.svg +6 -0
  118. package/src/assets/icons/code.svg +4 -0
  119. package/src/assets/icons/code_colored.svg +4 -0
  120. package/src/assets/icons/configuration.svg +3 -3
  121. package/src/assets/icons/csharp.svg +9 -0
  122. package/src/assets/icons/cypress.svg +9 -0
  123. package/src/assets/icons/defects.svg +8 -8
  124. package/src/assets/icons/delete_filled.svg +12 -0
  125. package/src/assets/icons/design_link.svg +7 -0
  126. package/src/assets/icons/disable_icon.svg +3 -0
  127. package/src/assets/icons/element.svg +4 -4
  128. package/src/assets/icons/enable_icon.svg +3 -0
  129. package/src/assets/icons/file_colored.svg +5 -0
  130. package/src/assets/icons/java.svg +4 -0
  131. package/src/assets/icons/javascript.svg +11 -0
  132. package/src/assets/icons/jira_colored.svg +15 -0
  133. package/src/assets/icons/mic.svg +4 -0
  134. package/src/assets/icons/mic_filled.svg +28 -0
  135. package/src/assets/icons/playwright.svg +9 -0
  136. package/src/assets/icons/project_element.svg +4 -4
  137. package/src/assets/icons/python.svg +19 -0
  138. package/src/assets/icons/regenerate.svg +4 -0
  139. package/src/assets/icons/right_arrow_filled_icon.svg +5 -0
  140. package/src/assets/icons/screenshot.svg +7 -0
  141. package/src/assets/icons/step_group.svg +10 -10
  142. package/src/assets/icons/variable.svg +3 -3
  143. package/src/assets/icons/web_service_icon.svg +3 -3
  144. package/src/components/Button/Button.tsx +2 -0
  145. package/src/components/Comment/Comments.scss +0 -1
  146. package/src/components/Comment/Comments.stories.tsx +22 -4
  147. package/src/components/Comment/Comments.tsx +20 -1
  148. package/src/components/Comment/type.ts +3 -3
  149. package/src/components/Excel/ExcelFile/ExcelFile.tsx +48 -42
  150. package/src/components/Excel/ExcelFile.stories.tsx +98 -96
  151. package/src/components/Excel/ExcelToolBar/ExcelToolBar.tsx +65 -28
  152. package/src/components/Excel/Types.ts +1 -1
  153. package/src/components/Excel/dataConversion.ts +8 -10
  154. package/src/components/Icon/iconList.ts +46 -3
  155. package/src/components/MobileSkin/MobileSkin.scss +44 -44
  156. package/src/components/MobileSkin/MobileSkin.tsx +15 -14
  157. package/src/components/MobileSkin/types.ts +1 -1
  158. package/src/components/TableTree/Components/TableBody.tsx +1 -1
  159. package/src/components/TableTree/Components/TableCell.tsx +26 -12
  160. package/src/components/TableTree/TableTree.tsx +18 -15
  161. package/src/components/TableTree/data.ts +0 -31
  162. package/src/index.ts +3 -0
  163. package/src/utils/indexDBStore/indexDB.ts +67 -0
  164. package/lib/components/ThemeProvider/CustomThemeProvider.d.ts +0 -8
  165. package/lib/hooks/useCustomThemeProvider.d.ts +0 -11
@@ -123,7 +123,7 @@ const ExcelToolBar: React.FC<ExcelToolBarProps> = ({
123
123
  value: 'double_border',
124
124
  label: 'Double Underline',
125
125
  icon: 'double_underline',
126
- }
126
+ },
127
127
  ];
128
128
 
129
129
  const fontFamily = [
@@ -151,39 +151,77 @@ const ExcelToolBar: React.FC<ExcelToolBarProps> = ({
151
151
  label: 'Courier New',
152
152
  value: '"Courier New"',
153
153
  },
154
- ];
155
-
156
- const fontSize = [
157
154
  {
158
- label: '5',
159
- value: '5',
155
+ label: 'Verdana',
156
+ value: 'Verdana',
157
+ },
158
+ {
159
+ label: 'Tahoma',
160
+ value: 'Tahoma',
161
+ },
162
+ {
163
+ label: 'Trebuchet MS',
164
+ value: '"Trebuchet MS"',
165
+ },
166
+ {
167
+ label: 'Comic Sans MS',
168
+ value: '"Comic Sans MS"',
169
+ },
170
+ {
171
+ label: 'Impact',
172
+ value: 'Impact',
173
+ },
174
+ {
175
+ label: 'Arial Black',
176
+ value: '"Arial Black"',
177
+ },
178
+ {
179
+ label: 'Lucida Console',
180
+ value: '"Lucida Console"',
160
181
  },
161
182
  {
162
- label: '9',
163
- value: '9',
183
+ label: 'Lucida Sans Unicode',
184
+ value: '"Lucida Sans Unicode"',
164
185
  },
165
186
  {
166
- label: '11',
167
- value: '11',
187
+ label: 'Courier',
188
+ value: 'Courier',
168
189
  },
169
190
  {
170
- label: '12',
171
- value: '12',
191
+ label: 'Helvetica',
192
+ value: 'Helvetica',
172
193
  },
173
194
  {
174
- label: '14',
175
- value: '14',
195
+ label: 'Arial Rounded MT Bold',
196
+ value: '"Arial Rounded MT Bold"',
176
197
  },
177
198
  {
178
- label: '16',
179
- value: '16',
199
+ label: 'Georgia',
200
+ value: 'Georgia',
180
201
  },
181
202
  {
182
- label: '18',
183
- value: '18',
203
+ label: 'sans-serif',
204
+ value: 'sans-serif',
205
+ },
206
+ {
207
+ label: 'serif',
208
+ value: 'serif',
209
+ },
210
+ {
211
+ label: 'monospace',
212
+ value: 'monospace',
184
213
  },
185
214
  ];
186
215
 
216
+ const fontSizeList = [
217
+ 5, 6, 8, 9, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 32, 36, 40, 48, 56, 72,
218
+ ];
219
+
220
+ const fontSize = fontSizeList.map((fontSize) => ({
221
+ label: fontSize,
222
+ value: fontSize,
223
+ }));
224
+
187
225
  const getTextColor = (color: string) => {
188
226
  setColorPicker((prev) => ({ ...prev, color: color }));
189
227
  };
@@ -259,7 +297,7 @@ const ExcelToolBar: React.FC<ExcelToolBarProps> = ({
259
297
  <Tooltip placement="top" title={'Text Left'}>
260
298
  <Icon
261
299
  variant={cellStyle.textAlign === 'left' ? 'dark' : 'light'}
262
- hoverEffect
300
+ hoverEffect={cellStyle.textAlign === 'left' ? false : true}
263
301
  disabled={toolbar === 'disable'}
264
302
  onClick={() => setTextAlign(data, 'left')}
265
303
  name="text_align_left"
@@ -268,7 +306,7 @@ const ExcelToolBar: React.FC<ExcelToolBarProps> = ({
268
306
  <Tooltip placement="top" title={'Text Center'}>
269
307
  <Icon
270
308
  variant={cellStyle.textAlign === 'center' ? 'dark' : 'light'}
271
- hoverEffect
309
+ hoverEffect={cellStyle.textAlign === 'center' ? false : true}
272
310
  disabled={toolbar === 'disable'}
273
311
  onClick={() => setTextAlign(data, 'center')}
274
312
  name="text_align_center"
@@ -278,7 +316,7 @@ const ExcelToolBar: React.FC<ExcelToolBarProps> = ({
278
316
  <Tooltip placement="top" title={'Text Right'}>
279
317
  <Icon
280
318
  variant={cellStyle.textAlign === 'right' ? 'dark' : 'light'}
281
- hoverEffect
319
+ hoverEffect={cellStyle.textAlign === 'right' ? false : true}
282
320
  disabled={toolbar === 'disable'}
283
321
  onClick={() => setTextAlign(data, 'right')}
284
322
  name="text_align_right"
@@ -290,7 +328,7 @@ const ExcelToolBar: React.FC<ExcelToolBarProps> = ({
290
328
  <Tooltip placement="top" title={'Bold'}>
291
329
  <Icon
292
330
  variant={styleBackend.bold ? 'dark' : 'light'}
293
- hoverEffect
331
+ hoverEffect={styleBackend.bold ? false : true}
294
332
  disabled={toolbar === 'disable'}
295
333
  onClick={() => onBold(data)}
296
334
  name="bold"
@@ -298,8 +336,8 @@ const ExcelToolBar: React.FC<ExcelToolBarProps> = ({
298
336
  </Tooltip>
299
337
  <Tooltip placement="top" title={'Italic'}>
300
338
  <Icon
301
- hoverEffect
302
339
  variant={styleBackend.italic ? 'dark' : 'light'}
340
+ hoverEffect={styleBackend.italic ? false : true}
303
341
  disabled={toolbar === 'disable'}
304
342
  onClick={() => onItalic(data)}
305
343
  name="italic"
@@ -311,7 +349,9 @@ const ExcelToolBar: React.FC<ExcelToolBarProps> = ({
311
349
  variant={
312
350
  cellStyle.textDecoration === underLine ? 'dark' : 'light'
313
351
  }
314
- hoverEffect
352
+ hoverEffect={
353
+ cellStyle.textDecoration === underLine ? false : true
354
+ }
315
355
  disabled={toolbar === 'disable'}
316
356
  onClick={() => setUnderlineType(data, underLine, true)}
317
357
  name={getUnderlineIcon()}
@@ -324,7 +364,6 @@ const ExcelToolBar: React.FC<ExcelToolBarProps> = ({
324
364
  iconSize={12}
325
365
  options={underlineTypeIcon}
326
366
  tooltipPlacement="top"
327
- variant="light"
328
367
  onOptionClick={(e) => {
329
368
  let selectedValue = e.value as string;
330
369
  setUnderlineType(data, selectedValue, true);
@@ -340,7 +379,7 @@ const ExcelToolBar: React.FC<ExcelToolBarProps> = ({
340
379
  <Tooltip placement="top" title={'Format Painter'}>
341
380
  <Icon
342
381
  variant={formattedStyle ? 'dark' : 'light'}
343
- hoverEffect
382
+ hoverEffect={formattedStyle ? false : true}
344
383
  disabled={toolbar === 'disable'}
345
384
  onClick={() => {
346
385
  setFormatePainter(data);
@@ -403,7 +442,6 @@ const ExcelToolBar: React.FC<ExcelToolBarProps> = ({
403
442
  zIndex={1000}
404
443
  options={borderTypeIcon}
405
444
  tooltipPlacement="top"
406
- variant="light"
407
445
  onOptionClick={(e) => {
408
446
  let selectedValue = e.value as string;
409
447
  setBorderType(data, selectedValue, 'black');
@@ -415,7 +453,6 @@ const ExcelToolBar: React.FC<ExcelToolBarProps> = ({
415
453
  </Tooltip>
416
454
  </div>
417
455
 
418
-
419
456
  {/* <div className="ff-excel-toolbar-divider"></div> TODO */}
420
457
  {/* <div className="ff-excel-toolbar-menu">
421
458
  <Tooltip placement="top" title={'Formula'}>
@@ -31,7 +31,7 @@ interface WorkData {
31
31
  value: string;
32
32
 
33
33
  /** Styling options for the cell */
34
- style: BackendStyle;
34
+ styles: BackendStyle; //TODO remove 's' for Style
35
35
  type?: boolean;
36
36
  }
37
37
 
@@ -74,7 +74,6 @@ export const getTextDecorationBack = (
74
74
  export function convertStyleToFrontend(
75
75
  backendStyle: BackendStyle
76
76
  ): React.CSSProperties {
77
-
78
77
  const { border } = backendStyle;
79
78
 
80
79
  let borderTop = '';
@@ -82,32 +81,31 @@ export function convertStyleToFrontend(
82
81
  let borderBottom = '';
83
82
  let borderLeft = '';
84
83
 
85
- if (border.top !== 'NONE') {
84
+ if (border.top !== 'THIN') {
86
85
  borderTop =
87
- border.top === 'THIN'
86
+ border.top === 'MEDIUM'
88
87
  ? '2px solid var(--input-hover-border-color)'
89
88
  : '1px solid var(--excel-sheet-border)';
90
89
  }
91
- if (border.right !== 'NONE') {
90
+ if (border.right !== 'THIN') {
92
91
  borderRight =
93
- border.right === 'THIN'
92
+ border.right === 'MEDIUM'
94
93
  ? '2px solid var(--input-hover-border-color)'
95
94
  : '1px solid var(--excel-sheet-border)';
96
95
  }
97
- if (border.bottom !== 'NONE') {
96
+ if (border.bottom !== 'THIN') {
98
97
  borderBottom =
99
- border.bottom === 'THIN'
98
+ border.bottom === 'MEDIUM'
100
99
  ? '2px solid var(--input-hover-border-color)'
101
100
  : '1px solid var(--excel-sheet-border)';
102
101
  }
103
- if (border.left !== 'NONE') {
102
+ if (border.left !== 'THIN') {
104
103
  borderLeft =
105
- border.left === 'THIN'
104
+ border.left === 'MEDIUM'
106
105
  ? '2px solid var(--input-hover-border-color)'
107
106
  : '1px solid var(--excel-sheet-border)';
108
107
  }
109
108
 
110
- // Return the converted styles
111
109
  return {
112
110
  fontSize: `${backendStyle.size}px`,
113
111
  fontFamily: backendStyle.name,
@@ -127,6 +127,7 @@ import LabelPlusIcon from '../../assets/icons/label_plus.svg?react';
127
127
  import Drag from '../../assets/icons/drag_icon.svg?react';
128
128
  import BackwardIcon from '../../assets/icons/backward_icon.svg?react';
129
129
  import ForwardIcon from '../../assets/icons/forward_icon.svg?react';
130
+ import ClearCache from '../../assets/icons/clear_cache.svg?react';
130
131
  import Reload from '../../assets/icons/reload.svg?react';
131
132
  import WindowMaximize from '../../assets/icons/window_maximize.svg?react';
132
133
  import WindowRestore from '../../assets/icons/window_restore.svg?react';
@@ -249,7 +250,7 @@ import variableSet from '../../assets/icons/variable_set.svg?react';
249
250
 
250
251
  import machineEnableIcon from '../../assets/icons/machine_enable_icon.svg?react';
251
252
  import machineDisableIcon from '../../assets/icons/machine_disable_icon.svg?react';
252
- import suitesIcon from '../../assets/icons/suites_icon.svg?react';
253
+ import suitesIcon from '../../assets/icons/suites_icon.svg?react';
253
254
  import executionsIcon from '../../assets/icons/executions_icon.svg?react';
254
255
  import ImportIcon from '../../assets/icons/import_icon.svg?react';
255
256
  import Settings from '../../assets/icons/settings.svg?react';
@@ -258,6 +259,27 @@ import ExternalUser from '../../assets/icons/external_user.svg?react';
258
259
  import SingleUser from '../../assets/icons/single_user.svg?react';
259
260
  import GroupUser from '../../assets/icons/group_user.svg?react';
260
261
  import TestFreshersLogo from '../../assets/icons/test_freshers_logo.svg?react';
262
+ import DisableIcon from '../../assets/icons/disable_icon.svg?react';
263
+ import EnableIcon from '../../assets/icons/enable_icon.svg?react';
264
+
265
+ import ClearHistory from '../../assets/icons/clear_history.svg?react';
266
+ import Csharp from '../../assets/icons/csharp.svg?react';
267
+ import Cypress from '../../assets/icons/cypress.svg?react';
268
+ import Java from '../../assets/icons/java.svg?react';
269
+ import JavaScript from '../../assets/icons/javascript.svg?react';
270
+ import PlayWright from '../../assets/icons/playwright.svg?react';
271
+ import Python from '../../assets/icons/python.svg?react';
272
+ import Code from '../../assets/icons/code.svg?react';
273
+ import Regenerate from '../../assets/icons/regenerate.svg?react';
274
+ import Mic from '../../assets/icons/mic.svg?react';
275
+ import MicActive from '../../assets/icons/mic_filled.svg?react';
276
+ import RightArrowFilled from '../../assets/icons/right_arrow_filled_icon.svg?react';
277
+ import CodeColored from '../../assets/icons/code_colored.svg?react';
278
+ import DesignLink from '../../assets/icons/design_link.svg?react';
279
+ import FileColored from '../../assets/icons/file_colored.svg?react';
280
+ import JiraColored from '../../assets/icons/jira_colored.svg?react';
281
+ import Screenshot from '../../assets/icons/screenshot.svg?react';
282
+ import DeleteFilled from '../../assets/icons/delete_filled.svg?react';
261
283
 
262
284
  Components['success'] = ToastSuccessIcon;
263
285
  Components['alert'] = Alert;
@@ -384,6 +406,7 @@ Components['browser_stack_icon'] = BrowserStack;
384
406
  Components['run_icon'] = Run;
385
407
  Components['backward_icon'] = BackwardIcon;
386
408
  Components['forward_icon'] = ForwardIcon;
409
+ Components['clear_cache'] = ClearCache;
387
410
  Components['reload'] = Reload;
388
411
  Components['window_maximize'] = WindowMaximize;
389
412
  Components['window_restore'] = WindowRestore;
@@ -506,10 +529,30 @@ Components['executions_icon'] = executionsIcon;
506
529
  Components['suites_icon'] = suitesIcon;
507
530
  Components['import_icon'] = ImportIcon;
508
531
  Components['settings'] = Settings;
509
- Components['test_freshers_logo']=TestFreshersLogo;
510
- Components['unfollow_icon']=UnfollowIcon
532
+ Components['test_freshers_logo'] = TestFreshersLogo;
533
+ Components['unfollow_icon'] = UnfollowIcon;
511
534
  Components['external_user'] = ExternalUser;
512
535
  Components['single_user'] = SingleUser;
513
536
  Components['group_user'] = GroupUser;
537
+ Components['disable_icon'] = DisableIcon;
538
+ Components['enable_icon'] = EnableIcon;
539
+ Components['clear_history'] = ClearHistory;
540
+ Components['csharp'] = Csharp;
541
+ Components['cypress'] = Cypress;
542
+ Components['java'] = Java;
543
+ Components['javascript'] = JavaScript;
544
+ Components['playwright'] = PlayWright;
545
+ Components['python'] = Python;
546
+ Components['code'] = Code;
547
+ Components['regenerate'] = Regenerate;
548
+ Components['mic'] = Mic;
549
+ Components['mic_filled'] = MicActive;
550
+ Components['right_arrow_filled_icon'] = RightArrowFilled;
551
+ Components['code_colored'] = CodeColored;
552
+ Components['design_link'] = DesignLink;
553
+ Components['file_colored'] = FileColored;
554
+ Components['jira_colored'] = JiraColored;
555
+ Components['screenshot'] = Screenshot;
556
+ Components['delete_filled'] = DeleteFilled;
514
557
 
515
558
  export default Components;
@@ -12,56 +12,56 @@
12
12
  &.landscape {
13
13
  gap: 38px;
14
14
  }
15
- }
16
15
 
17
- .ff-mobileskin-container {
18
- @extend .ff-mobileskin-wrapper;
19
- }
16
+ .ff-mobileskin-container {
17
+ @extend .ff-mobileskin-wrapper;
18
+ .ff-mobile-container {
19
+ @include center-content;
20
+ border: 8px solid var(--text-color);
21
+ border-radius: 30px;
22
+ position: relative;
23
+ overflow: hidden;
20
24
 
21
- .ff-mobile-container {
22
- border: 8px solid var(--text-color);
23
- @include center-content;
24
- position: relative;
25
- overflow: hidden;
25
+ &::-webkit-scrollbar {
26
+ width: 0;
27
+ height: 0;
28
+ }
26
29
 
27
- &::-webkit-scrollbar {
28
- width: 0;
29
- height: 0;
30
+ &::-webkit-scrollbar-thumb {
31
+ background-color: transparent;
32
+ }
33
+ .ff-mobile-image-container {
34
+ @include center-content;
35
+ overflow: hidden;
36
+ }
37
+ }
30
38
  }
31
39
 
32
- &::-webkit-scrollbar-thumb {
33
- background-color: transparent;
40
+ .ff-notch {
41
+ background-color: var(--text-color);
42
+ border-radius: 24px;
43
+ position: absolute;
44
+ &.android-notch {
45
+ border-radius: 50%;
46
+ }
34
47
  }
35
- }
36
-
37
- .ff-mobile-image-container {
38
- @include center-content;
39
- overflow: hidden;
40
- }
41
-
42
- .ff-notch {
43
- background-color: var(--text-color);
44
- border-radius: 24px;
45
- position: absolute;
46
- }
47
-
48
- .ff-nav-bar {
49
- height: 32px;
50
- padding: 8px;
51
- display: flex;
52
- justify-content: space-evenly;
53
- align-items: center;
54
- border: 1px solid var(--brand-color);
55
- border-radius: 24px;
56
- }
57
-
58
- .ff-nav-bar-icon {
59
- height: 16px;
60
- padding: 8px;
61
- border-right: 1px solid var(--brand-color);
62
- @include center-content;
48
+ .ff-nav-bar {
49
+ height: 32px;
50
+ padding: 8px;
51
+ display: flex;
52
+ justify-content: space-evenly;
53
+ align-items: center;
54
+ border: 1px solid var(--brand-color);
55
+ border-radius: 24px;
56
+ }
57
+ .ff-nav-bar-icon {
58
+ height: 16px;
59
+ padding: 8px;
60
+ border-right: 1px solid var(--brand-color);
61
+ @include center-content;
63
62
 
64
- &.last-icon {
65
- border-right: none;
63
+ &.last-icon {
64
+ border-right: none;
65
+ }
66
66
  }
67
67
  }
@@ -22,7 +22,9 @@ const MobileSkin: React.FC<MobileSkinProps> = ({
22
22
 
23
23
  return (
24
24
  <div
25
- className={`ff-mobileskin-wrapper ${isPortrait ? 'portrait' : 'landscape'}`}
25
+ className={`ff-mobileskin-wrapper ${
26
+ isPortrait ? 'portrait' : 'landscape'
27
+ }`}
26
28
  >
27
29
  <div
28
30
  className="ff-mobileskin-container"
@@ -36,7 +38,6 @@ const MobileSkin: React.FC<MobileSkinProps> = ({
36
38
  style={{
37
39
  width: containerWidth,
38
40
  height: containerHeight,
39
- borderRadius: isIos ? '30px' : '10px',
40
41
  }}
41
42
  >
42
43
  <div className="ff-mobile-image-container">
@@ -55,18 +56,18 @@ const MobileSkin: React.FC<MobileSkinProps> = ({
55
56
  </div>
56
57
  </div>
57
58
 
58
- {isIos && (
59
- <div
60
- className="ff-notch"
61
- style={{
62
- height: isPortrait ? notchHeight : notchWidth,
63
- width: isPortrait ? notchWidth : notchHeight,
64
- transform: isPortrait
65
- ? `translate(${mobileWidth * 0.01}px, ${mobileHeight * -0.46}px)`
66
- : `translate(${containerWidth * -0.46}px, ${containerHeight * -0.01}px)`,
67
- }}
68
- ></div>
69
- )}
59
+ <div
60
+ className={`ff-notch ${!isIos ? 'android-notch' : ''}`}
61
+ style={{
62
+ height: !isIos ? 15 : isPortrait ? notchHeight : notchWidth,
63
+ width: !isIos ? 15 : isPortrait ? notchWidth : notchHeight,
64
+ transform: isPortrait
65
+ ? `translate(${mobileWidth * 0.01}px, ${mobileHeight * -0.43}px)`
66
+ : `translate(${containerWidth * -0.46}px, ${
67
+ containerHeight * -0.01
68
+ }px)`,
69
+ }}
70
+ ></div>
70
71
  </div>
71
72
  <div className="ff-nav-bar">
72
73
  {navBarIcons.map((icon, index) => (
@@ -12,7 +12,7 @@ export interface MobileSkinProps {
12
12
  /**
13
13
  * Portrait or landScape View of the Mobile
14
14
  */
15
- orientation: string;
15
+ orientation: "portrait" | "landscape";
16
16
  /**
17
17
  * type either it will be ios or android
18
18
  */
@@ -12,7 +12,7 @@ const TableBody = React.memo(
12
12
  onToggleExpand,
13
13
  onCheckBoxChange,
14
14
  }: TableBodyProps) => (
15
- <tbody className='ff-table-tree-body'>
15
+ <tbody className="ff-table-tree-body">
16
16
  <tr id="ff-table-tree-first-node" />
17
17
  {flattenedTreeData?.map(
18
18
  ({ node, level, parentSiblings = [], isLast = false }) => {
@@ -4,23 +4,37 @@ import RadioButton from '../../RadioButton';
4
4
  import { TableCellProps } from '../types';
5
5
  import Arrow from '../../../assets/icons/arrows_down_icon.svg?react';
6
6
  import React from 'react';
7
+ import { checkEmpty } from '../../../utils/checkEmpty/checkEmpty';
7
8
 
8
9
  const renderSpaces = (
9
10
  level: number,
10
11
  parentSiblings: boolean[],
11
12
  isLast?: boolean | undefined
12
- ) => (
13
- <div className="tree-table-space-container">
14
- {parentSiblings.reverse().map((line, i) => (
15
- <span
16
- key={i}
17
- className={`tree-table-space-block ${!line ? 'no-lines' : ''} ${
18
- isLast && i === level - 1 ? 'last-node' : ''
19
- }`}
20
- />
21
- ))}
22
- </div>
23
- );
13
+ ) => {
14
+ let siblingsArray = parentSiblings;
15
+ let isLastNode = isLast;
16
+ if (checkEmpty(parentSiblings)) {
17
+ isLastNode = false;
18
+
19
+ if (!isNaN(level)) {
20
+ siblingsArray = Array(level).fill(true);
21
+ }
22
+ }
23
+
24
+ parentSiblings;
25
+ return (
26
+ <div className="tree-table-space-container">
27
+ {siblingsArray.reverse().map((line, i) => (
28
+ <span
29
+ key={i}
30
+ className={`tree-table-space-block ${!line ? 'no-lines' : ''} ${
31
+ isLastNode && i === level - 1 ? 'last-node' : ''
32
+ }`}
33
+ />
34
+ ))}
35
+ </div>
36
+ );
37
+ };
24
38
 
25
39
  const TableCell = React.memo(
26
40
  ({
@@ -16,23 +16,26 @@ const TreeTable: React.FC<TreeTableProps> = ({
16
16
  onExpand,
17
17
  loadMore = () => {},
18
18
  }) => {
19
- useIntersectionObserver(['ff-table-tree-last-node'], {
20
- root: null,
21
- rootMargin: '0px',
22
- threshold: 0.1,
23
- onIntersect: (entry) => {
24
- if (entry.isIntersecting) {
25
- if (functionCheck(loadMore)) {
26
- let direction = 'up';
27
- if (entry.target.id === 'ff-table-tree-last-node') {
28
- direction = 'down';
19
+ useIntersectionObserver(
20
+ ['ff-table-tree-last-node', 'ff-table-tree-first-node'],
21
+ {
22
+ root: null,
23
+ rootMargin: '0px',
24
+ threshold: 0.1,
25
+ onIntersect: (entry) => {
26
+ if (entry.isIntersecting) {
27
+ if (functionCheck(loadMore)) {
28
+ let direction = 'up';
29
+ if (entry.target.id === 'ff-table-tree-last-node') {
30
+ direction = 'down';
31
+ }
32
+ loadMore(direction);
29
33
  }
30
- loadMore(direction);
34
+ console.log('Element in view:', entry.target.id);
31
35
  }
32
- console.log('Element in view:', entry.target.id);
33
- }
34
- },
35
- });
36
+ },
37
+ }
38
+ );
36
39
 
37
40
  const handleToggleExpand = useCallback(
38
41
  (node: any) => onExpand?.(true, node?.id),
@@ -31,37 +31,6 @@ const data = [
31
31
  isLast: true,
32
32
  parentSiblings: [true],
33
33
  },
34
- {
35
- node: {
36
- subModuleCount: 15,
37
- title: 'mod1',
38
- scriptCount: 0,
39
- path: '/Root',
40
- expanded: true,
41
- modifiedOn: '19-12-2023 15:32',
42
- children: false,
43
- lastExecutionOrder: 3,
44
- imported: false,
45
- modifiedBy: '--',
46
- moduleCountWithScript: 1,
47
- state: 'NEW',
48
- key: 'MOD1001',
49
- ver: 1,
50
- hierarchy: 0,
51
- assigneeCount: 0,
52
- searchKey: '/MOD1001111110000000000',
53
- modifiedByUname: '--',
54
- executionOrder: 0,
55
- createdByUname: 'Shivaprasad',
56
- folder: true,
57
- moduleLevelScriptCount: 0,
58
- name: 'Root Module',
59
- parentId: 'MOD1001', // Root has no parent
60
- id: 'MOD1002', // Unique ID
61
- },
62
- parentSiblings: [true, false],
63
- lines: 1,
64
- },
65
34
  {
66
35
  node: {
67
36
  subModuleCount: 10,
package/src/index.ts CHANGED
@@ -162,6 +162,7 @@ import {
162
162
  ELEMENTS_WHITE_SPACE_REGEX,
163
163
  PARAMETER_ALPHANUMERIC_REGEX,
164
164
  } from './validations/regex';
165
+ import { getFromIndexedDB, saveToIndexedDB } from './utils/indexDBStore/indexDB';
165
166
 
166
167
  export {
167
168
  Button,
@@ -270,6 +271,8 @@ export {
270
271
  FormatString,
271
272
  hasDuplicateFile,
272
273
  useKeyboardActions,
274
+ saveToIndexedDB,
275
+ getFromIndexedDB,
273
276
 
274
277
  EMAIL_REGEX,
275
278
  URL_REGEX,