pixel-react 1.5.4 → 1.5.6

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 (804) hide show
  1. package/.prettierrc.js +13 -13
  2. package/.storybook/main.ts +26 -26
  3. package/.storybook/preview.ts +26 -26
  4. package/.yarnrc.yml +1 -1
  5. package/README.md +75 -75
  6. package/lib/StyleGuide/ColorPalette/ColorPalette.stories.d.ts +6 -0
  7. package/lib/StyleGuide/Typography/Typography.stories.d.ts +6 -0
  8. package/lib/assets/fonts/Poppins-Bold.ttf +0 -0
  9. package/lib/assets/fonts/Poppins-Medium.ttf +0 -0
  10. package/lib/assets/fonts/Poppins-Regular.ttf +0 -0
  11. package/lib/assets/fonts/Poppins-SemiBold.ttf +0 -0
  12. package/lib/assets/utils/functionUtils.d.ts +7 -0
  13. package/lib/components/Accordion/Accordion.stories.d.ts +6 -0
  14. package/lib/components/AddButton/AddButton.d.ts +5 -0
  15. package/lib/components/AddButton/AddButton.stories.d.ts +6 -0
  16. package/lib/components/AddButton/index.d.ts +1 -0
  17. package/lib/components/AddButton/types.d.ts +4 -0
  18. package/lib/components/AddResourceButton/AddButton.stories.d.ts +8 -0
  19. package/lib/components/AllProjectsDropdown/AllProjectsDropdown.stories.d.ts +7 -0
  20. package/lib/components/AppHeader/AppHeader.stories.d.ts +7 -0
  21. package/lib/components/AttachImage/AttachImage.stories.d.ts +7 -0
  22. package/lib/components/AttachmentButton/AttachmentButton.stories.d.ts +9 -0
  23. package/lib/components/Avatar/Avatar.stories.d.ts +10 -0
  24. package/lib/components/Button/Button.stories.d.ts +13 -0
  25. package/lib/components/Charts/BarChart/BarChart.stories.d.ts +6 -0
  26. package/lib/components/Charts/DashboardDonutChart/DashboardDonutChart.stories.d.ts +7 -0
  27. package/lib/components/Charts/DashboardDonutChart/types.d.ts +13 -3
  28. package/lib/components/Charts/DonutChart/DonutChart.stories.d.ts +6 -0
  29. package/lib/components/Charts/IconRadialChart/IconRadialChart.stories.d.ts +8 -0
  30. package/lib/components/Charts/LineChart/LineChart.stories.d.ts +7 -0
  31. package/lib/components/Charts/MultiRadialChart/MultiRadialChart.stories.d.ts +8 -0
  32. package/lib/components/Charts/PieChart/PieChart.stories.d.ts +7 -0
  33. package/lib/components/Charts/RadialChart/RadialChart.stories.d.ts +6 -0
  34. package/lib/components/Checkbox/Checkbox.stories.d.ts +8 -0
  35. package/lib/components/Chip/Chip.stories.d.ts +14 -0
  36. package/lib/components/ConnectingBranch/ConnectingBranch.stories.d.ts +6 -0
  37. package/lib/components/DatePicker/DatePicker.stories.d.ts +9 -0
  38. package/lib/components/DatePicker/types.d.ts +4 -0
  39. package/lib/components/DragAndDrop/DragAndDrop.stories.d.ts +6 -0
  40. package/lib/components/Drawer/Drawer.stories.d.ts +12 -0
  41. package/lib/components/EditTextField/EditTextField.stories.d.ts +10 -0
  42. package/lib/components/Editor/Editor.stories.d.ts +6 -0
  43. package/lib/components/Excel/ContextMenu/ContextMenu.d.ts +4 -0
  44. package/lib/components/Excel/ExcelContextMenu/ExcelContextMenu.d.ts +1 -7
  45. package/lib/components/Excel/ExcelFile/ExcelFileComponents/DataViewer.d.ts +1 -1
  46. package/lib/components/Excel/ExcelFile/ExcelFileComponents/Spreadsheet.d.ts +1 -0
  47. package/lib/components/Excel/ExcelFile/ExcelFileComponents/reducerFunctions.d.ts +1 -0
  48. package/lib/components/Excel/ExcelFile/ExcelFileComponents/types.d.ts +5 -0
  49. package/lib/components/Excel/ExcelFile.stories.d.ts +6 -0
  50. package/lib/components/ExcelFile/ChangeExcelStyles.d.ts +14 -0
  51. package/lib/components/ExcelFile/ColorBarSelector/ColorBarSelector.d.ts +8 -0
  52. package/lib/components/ExcelFile/ContextMenu/ContextMenu.d.ts +4 -0
  53. package/lib/components/ExcelFile/ExcelFile/Excel/ActiveCell.d.ts +7 -0
  54. package/lib/components/ExcelFile/ExcelFile/Excel/Cell.d.ts +4 -0
  55. package/lib/components/ExcelFile/ExcelFile/Excel/ColumnIndicator.d.ts +5 -0
  56. package/lib/components/ExcelFile/ExcelFile/Excel/Copied.d.ts +3 -0
  57. package/lib/components/ExcelFile/ExcelFile/Excel/CornerIndicator.d.ts +5 -0
  58. package/lib/components/ExcelFile/ExcelFile/Excel/DataEditor.d.ts +5 -0
  59. package/lib/components/ExcelFile/ExcelFile/Excel/DataViewer.d.ts +8 -0
  60. package/lib/components/ExcelFile/ExcelFile/Excel/FloatingRect.d.ts +10 -0
  61. package/lib/components/ExcelFile/ExcelFile/Excel/HeaderRow.d.ts +3 -0
  62. package/lib/components/ExcelFile/ExcelFile/Excel/Row.d.ts +3 -0
  63. package/lib/components/ExcelFile/ExcelFile/Excel/RowIndicator.d.ts +5 -0
  64. package/lib/components/ExcelFile/ExcelFile/Excel/Selected.d.ts +3 -0
  65. package/lib/components/ExcelFile/ExcelFile/Excel/Spreadsheet.d.ts +80 -0
  66. package/lib/components/ExcelFile/ExcelFile/Excel/Table.d.ts +3 -0
  67. package/lib/components/ExcelFile/ExcelFile/Excel/actions.d.ts +174 -0
  68. package/lib/components/ExcelFile/ExcelFile/Excel/areModelsEqual.d.ts +1 -0
  69. package/lib/components/ExcelFile/ExcelFile/Excel/context.d.ts +8 -0
  70. package/lib/components/ExcelFile/ExcelFile/Excel/engine/engine.d.ts +22 -0
  71. package/lib/components/ExcelFile/ExcelFile/Excel/engine/formula.d.ts +17 -0
  72. package/lib/components/ExcelFile/ExcelFile/Excel/engine/index.d.ts +2 -0
  73. package/lib/components/ExcelFile/ExcelFile/Excel/engine/point-graph.d.ts +21 -0
  74. package/lib/components/ExcelFile/ExcelFile/Excel/engine/point-hash.d.ts +3 -0
  75. package/lib/components/ExcelFile/ExcelFile/Excel/engine/point-set.d.ts +24 -0
  76. package/lib/components/ExcelFile/ExcelFile/Excel/index.d.ts +13 -0
  77. package/lib/components/ExcelFile/ExcelFile/Excel/matrix.d.ts +67 -0
  78. package/lib/components/ExcelFile/ExcelFile/Excel/point-range.d.ts +22 -0
  79. package/lib/components/ExcelFile/ExcelFile/Excel/point.d.ts +11 -0
  80. package/lib/components/ExcelFile/ExcelFile/Excel/reducer.d.ts +27 -0
  81. package/lib/components/ExcelFile/ExcelFile/Excel/selection.d.ts +95 -0
  82. package/lib/components/ExcelFile/ExcelFile/Excel/types.d.ts +178 -0
  83. package/lib/components/ExcelFile/ExcelFile/Excel/use-dispatch.d.ts +3 -0
  84. package/lib/components/ExcelFile/ExcelFile/Excel/use-selector.d.ts +3 -0
  85. package/lib/components/ExcelFile/ExcelFile/Excel/util.d.ts +44 -0
  86. package/lib/components/ExcelFile/ExcelFile/ExcelFile.d.ts +19 -0
  87. package/lib/components/ExcelFile/ExcelFile.stories.d.ts +6 -0
  88. package/lib/components/ExcelFile/ExcelSheetBar/ExcelSheetBar.d.ts +12 -0
  89. package/lib/components/ExcelFile/ExcelToolBar/ExcelToolBar.d.ts +15 -0
  90. package/lib/components/ExcelFile/ImportExcelStyles.d.ts +24 -0
  91. package/lib/components/ExcelFile/Types.d.ts +129 -0
  92. package/lib/components/ExcelFile/index.d.ts +1 -0
  93. package/lib/components/ExpandableMenu/ExpandableMenu.stories.d.ts +7 -0
  94. package/lib/components/FF_Captcha/captcha.stories.d.ts +8 -0
  95. package/lib/components/FileDropzone/FileDropzone.stories.d.ts +8 -0
  96. package/lib/components/FileDropzone/types.d.ts +3 -0
  97. package/lib/components/Form/Form.stories.d.ts +7 -0
  98. package/lib/components/GridLayout/GridLayout.stories.d.ts +8 -0
  99. package/lib/components/HighlightText/HighlightText.stories.d.ts +6 -0
  100. package/lib/components/Icon/Icon.stories.d.ts +8 -0
  101. package/lib/components/IconButton/IconButton.stories.d.ts +7 -0
  102. package/lib/components/IconRadioGroup/IconRadioGroup.stories.d.ts +7 -0
  103. package/lib/components/Input/Input.stories.d.ts +9 -0
  104. package/lib/components/InputWithDropdown/InputWithDropdown.stories.d.ts +9 -0
  105. package/lib/components/LabelEditTextField/LabelEditTextField.stories.d.ts +13 -0
  106. package/lib/components/LazyLoad/LazyLoad.stories.d.ts +6 -0
  107. package/lib/components/MachineInputField/MachineInputField.stories.d.ts +6 -0
  108. package/lib/components/MenuOption/MenuOption.stories.d.ts +16 -0
  109. package/lib/components/MiniModal/MiniModal.stories.d.ts +10 -0
  110. package/lib/components/Modal/Modal.stories.d.ts +7 -0
  111. package/lib/components/ModulesChip/ModuleChip.stories.d.ts +6 -0
  112. package/lib/components/MultiSelect/MultiSelect.stories.d.ts +11 -0
  113. package/lib/components/NLPInput/NlpInput.stories.d.ts +7 -0
  114. package/lib/components/Paper/Paper.stories.d.ts +11 -0
  115. package/lib/components/RadioButton/RadioButton.stories.d.ts +10 -0
  116. package/lib/components/RadioGroup/RadioGroup.stories.d.ts +9 -0
  117. package/lib/components/Search/Search.stories.d.ts +6 -0
  118. package/lib/components/Select/Select.stories.d.ts +14 -0
  119. package/lib/components/Select/components/Dropdown/Dropdown.d.ts +4 -0
  120. package/lib/components/Select/components/Dropdown/dropdownTypes.d.ts +17 -0
  121. package/lib/components/SequentialConnectingBranch/SequentialConnectingBranch.stories.d.ts +6 -0
  122. package/lib/components/StateDropdown/StateDropdown.d.ts +1 -1
  123. package/lib/components/StateDropdown/StateDropdown.stories.d.ts +10 -0
  124. package/lib/components/StateDropdown/StateDropdownTypes.d.ts +3 -0
  125. package/lib/components/StatusButton/StatusButton.stories.d.ts +14 -0
  126. package/lib/components/StatusCard/StatusCard.stories.d.ts +11 -0
  127. package/lib/components/Table/Table.stories.d.ts +13 -0
  128. package/lib/components/TableTree/TableTree.stories.d.ts +7 -0
  129. package/lib/components/Tabs/Tabs.stories.d.ts +9 -0
  130. package/lib/components/TextArea/Textarea.stories.d.ts +9 -0
  131. package/lib/components/Toast/Toast.stories.d.ts +6 -0
  132. package/lib/components/Toastify/Toastify.stories.d.ts +6 -0
  133. package/lib/components/Toggle/Toggle.stories.d.ts +12 -0
  134. package/lib/components/Tooltip/Tooltip.stories.d.ts +15 -0
  135. package/lib/components/Typography/Typography.stories.d.ts +10 -0
  136. package/lib/components/VariableInput/VariableInput.stories.d.ts +6 -0
  137. package/lib/index.d.ts +54 -5
  138. package/lib/index.esm.js +1085 -598
  139. package/lib/index.esm.js.map +1 -1
  140. package/lib/index.js +1085 -597
  141. package/lib/index.js.map +1 -1
  142. package/lib/utils/checkEmpty/checkEmpty.stories.d.ts +6 -0
  143. package/lib/utils/compareArrays/compareArrays.stories.d.ts +6 -0
  144. package/lib/utils/compareObjects/compareObjects.stories.d.ts +6 -0
  145. package/lib/utils/debounce/debounce.stories.d.ts +6 -0
  146. package/lib/utils/ffID/ffID.stories.d.ts +6 -0
  147. package/lib/utils/find/findAndInsert.d.ts +7 -0
  148. package/lib/utils/find/findAndInsert.stories.d.ts +7 -0
  149. package/lib/utils/findAndInsert/findAndInsert.stories.d.ts +7 -0
  150. package/lib/utils/getEncryptedData/getEncryptedData.stories.d.ts +6 -0
  151. package/lib/utils/getExtension/getExtension.stories.d.ts +6 -0
  152. package/lib/utils/getSequentialPayload/getSequentialPayload.stories.d.ts +10 -0
  153. package/lib/utils/throttle/throttle.stories.d.ts +6 -0
  154. package/lib/utils/truncateText/truncateText.stories.d.ts +6 -0
  155. package/package.json +81 -81
  156. package/rollup.config.mjs +67 -67
  157. package/src/StyleGuide/ColorPalette/ColorPalette.scss +62 -62
  158. package/src/StyleGuide/ColorPalette/ColorPalette.stories.tsx +16 -16
  159. package/src/StyleGuide/ColorPalette/ColorPalette.tsx +67 -67
  160. package/src/StyleGuide/ColorPalette/colorPaletteList.ts +279 -279
  161. package/src/StyleGuide/ColorPalette/index.ts +1 -1
  162. package/src/StyleGuide/ColorPalette/types.ts +19 -19
  163. package/src/StyleGuide/Typography/Typography.scss +99 -99
  164. package/src/StyleGuide/Typography/Typography.stories.tsx +16 -16
  165. package/src/StyleGuide/Typography/Typography.tsx +60 -60
  166. package/src/StyleGuide/Typography/TypographyList.ts +3 -3
  167. package/src/StyleGuide/Typography/types.ts +9 -9
  168. package/src/assets/Themes/BaseTheme.scss +279 -279
  169. package/src/assets/Themes/DarkTheme.scss +261 -261
  170. package/src/assets/Themes/Theme.scss +16 -16
  171. package/src/assets/icons/Arrow.svg +4 -4
  172. package/src/assets/icons/Header_preset.svg +18 -13
  173. package/src/assets/icons/accordion_header_icon.svg +10 -10
  174. package/src/assets/icons/active_license_icon.svg +3 -3
  175. package/src/assets/icons/add_archive.svg +9 -9
  176. package/src/assets/icons/add_file.svg +16 -16
  177. package/src/assets/icons/add_label_icon.svg +3 -3
  178. package/src/assets/icons/add_locator.svg +4 -4
  179. package/src/assets/icons/add_testcase.svg +3 -3
  180. package/src/assets/icons/add_user.svg +9 -9
  181. package/src/assets/icons/add_variable_icon.svg +4 -4
  182. package/src/assets/icons/alert.svg +17 -17
  183. package/src/assets/icons/all_borders.svg +3 -3
  184. package/src/assets/icons/all_projects.svg +3 -3
  185. package/src/assets/icons/android.svg +9 -9
  186. package/src/assets/icons/android_icon.svg +6 -6
  187. package/src/assets/icons/apk_file_type.svg +4 -4
  188. package/src/assets/icons/app_switch.svg +11 -11
  189. package/src/assets/icons/arrow_down.svg +3 -3
  190. package/src/assets/icons/arrow_right.svg +4 -4
  191. package/src/assets/icons/arrow_up.svg +3 -3
  192. package/src/assets/icons/arrows_down_icon.svg +3 -3
  193. package/src/assets/icons/arrows_right_icon.svg +10 -10
  194. package/src/assets/icons/arrows_top_icon.svg +3 -3
  195. package/src/assets/icons/attachment_icon.svg +3 -3
  196. package/src/assets/icons/authorization_icon.svg +3 -3
  197. package/src/assets/icons/automation_testcase.svg +4 -4
  198. package/src/assets/icons/back_icon.svg +3 -3
  199. package/src/assets/icons/backward_icon.svg +3 -3
  200. package/src/assets/icons/beautify_icon.svg +3 -3
  201. package/src/assets/icons/bold.svg +3 -3
  202. package/src/assets/icons/border_bottom.svg +3 -3
  203. package/src/assets/icons/border_left.svg +3 -3
  204. package/src/assets/icons/border_right.svg +3 -3
  205. package/src/assets/icons/border_top.svg +3 -3
  206. package/src/assets/icons/browser_stack.svg +9 -9
  207. package/src/assets/icons/browserstack_icon.svg +24 -24
  208. package/src/assets/icons/calendar_icon.svg +9 -9
  209. package/src/assets/icons/check_mark.svg +3 -3
  210. package/src/assets/icons/chrome.svg +12 -12
  211. package/src/assets/icons/client_profile.svg +4 -4
  212. package/src/assets/icons/clock_icon.svg +11 -11
  213. package/src/assets/icons/clone_icon.svg +3 -3
  214. package/src/assets/icons/close_pill.svg +3 -3
  215. package/src/assets/icons/cloud_server_host_icon.svg +3 -3
  216. package/src/assets/icons/collapse-icon.svg +6 -6
  217. package/src/assets/icons/compressed_file_type.svg +4 -4
  218. package/src/assets/icons/continue_without_sign.svg +3 -3
  219. package/src/assets/icons/copy-icon.svg +3 -3
  220. package/src/assets/icons/csv_file_type.svg +4 -4
  221. package/src/assets/icons/dashboard_icon.svg +31 -0
  222. package/src/assets/icons/dashboard_mobile_icon.svg +47 -47
  223. package/src/assets/icons/dashboard_web_icon.svg +9 -9
  224. package/src/assets/icons/data_provider.svg +8 -8
  225. package/src/assets/icons/dataset_list.svg +3 -3
  226. package/src/assets/icons/delete.svg +3 -3
  227. package/src/assets/icons/delete_info.svg +17 -17
  228. package/src/assets/icons/details.svg +3 -3
  229. package/src/assets/icons/double_underline.svg +5 -5
  230. package/src/assets/icons/download-icon.svg +3 -3
  231. package/src/assets/icons/download_file_icon.svg +10 -10
  232. package/src/assets/icons/download_icon.svg +4 -4
  233. package/src/assets/icons/drag_icon.svg +4 -4
  234. package/src/assets/icons/drawer_maximize.svg +6 -6
  235. package/src/assets/icons/dropzone_icon.svg +18 -18
  236. package/src/assets/icons/edge.svg +30 -30
  237. package/src/assets/icons/edit_icon.svg +5 -5
  238. package/src/assets/icons/error.svg +17 -17
  239. package/src/assets/icons/excel_corner_menu.svg +3 -3
  240. package/src/assets/icons/expand-icon.svg +6 -6
  241. package/src/assets/icons/export_collection_icon.svg +13 -13
  242. package/src/assets/icons/eye_closed.svg +3 -3
  243. package/src/assets/icons/eye_open_icon.svg +3 -3
  244. package/src/assets/icons/failed_status_icon.svg +12 -12
  245. package/src/assets/icons/file.svg +11 -11
  246. package/src/assets/icons/fill_color.svg +7 -7
  247. package/src/assets/icons/filter.svg +4 -4
  248. package/src/assets/icons/fire_fox.svg +106 -106
  249. package/src/assets/icons/fireflink_finder_logo.svg +7 -7
  250. package/src/assets/icons/fireflink_icon.svg +4 -4
  251. package/src/assets/icons/fireflink_logo.svg +13 -13
  252. package/src/assets/icons/fireflink_platform.svg +4 -4
  253. package/src/assets/icons/firefox.svg +84 -84
  254. package/src/assets/icons/flaky_status_icon.svg +12 -12
  255. package/src/assets/icons/formate_painter.svg +5 -5
  256. package/src/assets/icons/formula_icon.svg +3 -3
  257. package/src/assets/icons/forward_icon.svg +3 -3
  258. package/src/assets/icons/full_access_icon.svg +4 -4
  259. package/src/assets/icons/gif_file_type.svg +4 -4
  260. package/src/assets/icons/global_variable_icon.svg +4 -4
  261. package/src/assets/icons/hamburger_menu.svg +3 -3
  262. package/src/assets/icons/hide_access_icon.svg +3 -3
  263. package/src/assets/icons/hide_icon.svg +9 -9
  264. package/src/assets/icons/history_icon.svg +19 -19
  265. package/src/assets/icons/html_file_type.svg +4 -4
  266. package/src/assets/icons/impactList.svg +6 -6
  267. package/src/assets/icons/info.svg +17 -17
  268. package/src/assets/icons/info_icon.svg +17 -17
  269. package/src/assets/icons/internet_explorer.svg +3 -3
  270. package/src/assets/icons/ipk_file_type.svg +4 -4
  271. package/src/assets/icons/italic.svg +3 -3
  272. package/src/assets/icons/jira.svg +3 -3
  273. package/src/assets/icons/jpg_file_type.svg +4 -4
  274. package/src/assets/icons/json_file_type.svg +4 -4
  275. package/src/assets/icons/label_icon.svg +8 -8
  276. package/src/assets/icons/label_plus.svg +3 -3
  277. package/src/assets/icons/lambda_icon.svg +3 -3
  278. package/src/assets/icons/left_arrow_icon.svg +3 -3
  279. package/src/assets/icons/license_expired.svg +20 -20
  280. package/src/assets/icons/license_info.svg +28 -28
  281. package/src/assets/icons/license_warning.svg +10 -10
  282. package/src/assets/icons/link_expired.svg +186 -186
  283. package/src/assets/icons/linked_defects.svg +11 -11
  284. package/src/assets/icons/linux.svg +42 -42
  285. package/src/assets/icons/local.svg +3 -3
  286. package/src/assets/icons/local_variable_icon.svg +4 -4
  287. package/src/assets/icons/logo.svg +17 -17
  288. package/src/assets/icons/mac.svg +9 -9
  289. package/src/assets/icons/manage_apps.svg +3 -3
  290. package/src/assets/icons/manual_locator.svg +7 -7
  291. package/src/assets/icons/manual_testcase.svg +3 -3
  292. package/src/assets/icons/maximize_icon.svg +5 -5
  293. package/src/assets/icons/maximize_script.svg +12 -12
  294. package/src/assets/icons/maximize_tree.svg +3 -3
  295. package/src/assets/icons/minimize_script.svg +5 -5
  296. package/src/assets/icons/mobile_icon.svg +3 -3
  297. package/src/assets/icons/moon_stars.svg +10 -10
  298. package/src/assets/icons/more.svg +10 -10
  299. package/src/assets/icons/move_icon.svg +5 -5
  300. package/src/assets/icons/ms_dynamic.svg +4 -4
  301. package/src/assets/icons/ms_dynamic_icon.svg +15 -15
  302. package/src/assets/icons/nlp_help_icon.svg +3 -3
  303. package/src/assets/icons/no_access_icon.svg +4 -4
  304. package/src/assets/icons/no_border.svg +3 -3
  305. package/src/assets/icons/no_data.svg +13 -13
  306. package/src/assets/icons/no_license_found.svg +22 -22
  307. package/src/assets/icons/notification_icon.svg +3 -3
  308. package/src/assets/icons/opera.svg +9 -9
  309. package/src/assets/icons/passed_status_icon.svg +12 -12
  310. package/src/assets/icons/pdf_file_type.svg +4 -4
  311. package/src/assets/icons/plus_icon.svg +11 -11
  312. package/src/assets/icons/plus_user_icon.svg +3 -3
  313. package/src/assets/icons/png_file_type.svg +4 -4
  314. package/src/assets/icons/project_env_variable_icon.svg +4 -4
  315. package/src/assets/icons/quick_run_setting_icon.svg +5 -5
  316. package/src/assets/icons/refresh-icon.svg +4 -4
  317. package/src/assets/icons/reload.svg +3 -3
  318. package/src/assets/icons/remove.svg +11 -11
  319. package/src/assets/icons/remove_user.svg +3 -3
  320. package/src/assets/icons/replace.svg +11 -11
  321. package/src/assets/icons/replace_icon.svg +6 -6
  322. package/src/assets/icons/reset-link.svg +52 -52
  323. package/src/assets/icons/right_arrow_icon.svg +4 -4
  324. package/src/assets/icons/run_automation_scripts_icon.svg +33 -33
  325. package/src/assets/icons/run_icon.svg +26 -26
  326. package/src/assets/icons/run_manual_testcase_icon.svg +4 -4
  327. package/src/assets/icons/safari.svg +93 -93
  328. package/src/assets/icons/safari_icon.svg +12 -12
  329. package/src/assets/icons/sales_force.svg +7 -7
  330. package/src/assets/icons/salesforce_icon.svg +14 -14
  331. package/src/assets/icons/sample_template_first.svg +29 -29
  332. package/src/assets/icons/sample_template_second.svg +47 -47
  333. package/src/assets/icons/sause_lab.svg +3 -3
  334. package/src/assets/icons/save_as_step.svg +3 -3
  335. package/src/assets/icons/search.svg +3 -3
  336. package/src/assets/icons/send_step.svg +4 -4
  337. package/src/assets/icons/skipped_status_icon.svg +12 -12
  338. package/src/assets/icons/standard_template.svg +30 -30
  339. package/src/assets/icons/strike_through.svg +3 -3
  340. package/src/assets/icons/success.svg +17 -17
  341. package/src/assets/icons/sun_icon.svg +10 -10
  342. package/src/assets/icons/switch_license_icon.svg +123 -123
  343. package/src/assets/icons/system_warning.svg +61 -61
  344. package/src/assets/icons/text_align_center.svg +3 -3
  345. package/src/assets/icons/text_align_left.svg +3 -3
  346. package/src/assets/icons/text_align_right.svg +3 -3
  347. package/src/assets/icons/text_color.svg +3 -3
  348. package/src/assets/icons/tick_icon.svg +4 -4
  349. package/src/assets/icons/toast_close.svg +3 -3
  350. package/src/assets/icons/txt_file_type.svg +4 -4
  351. package/src/assets/icons/underline.svg +4 -4
  352. package/src/assets/icons/update_icon.svg +3 -3
  353. package/src/assets/icons/user_password_lock.svg +220 -220
  354. package/src/assets/icons/user_profile.svg +3 -3
  355. package/src/assets/icons/user_warning.svg +235 -235
  356. package/src/assets/icons/user_with_system.svg +637 -637
  357. package/src/assets/icons/variable_icon.svg +4 -4
  358. package/src/assets/icons/vertical_separator.svg +3 -3
  359. package/src/assets/icons/view_access_icon.svg +4 -4
  360. package/src/assets/icons/view_icon.svg +3 -3
  361. package/src/assets/icons/warning.svg +17 -17
  362. package/src/assets/icons/warning_status_icon.svg +12 -12
  363. package/src/assets/icons/web&mobile_icon.svg +3 -3
  364. package/src/assets/icons/web_icon.svg +3 -3
  365. package/src/assets/icons/web_mobile_icon.svg +29 -29
  366. package/src/assets/icons/web_services_icon.svg +30 -30
  367. package/src/assets/icons/window_maximize.svg +4 -4
  368. package/src/assets/icons/window_minimize.svg +3 -3
  369. package/src/assets/icons/windows.svg +10 -10
  370. package/src/assets/icons/wrong_mark.svg +3 -3
  371. package/src/assets/icons/wswb_delete_icon.svg +3 -3
  372. package/src/assets/icons/wswb_plus_icon.svg +4 -4
  373. package/src/assets/icons/xls_file_type.svg +4 -4
  374. package/src/assets/icons/xlsx_file_type.svg +4 -4
  375. package/src/assets/icons/xml_file_type.svg +4 -4
  376. package/src/assets/styles/_colors.scss +151 -150
  377. package/src/assets/styles/_fonts.scss +42 -42
  378. package/src/assets/styles/_mixins.scss +21 -21
  379. package/src/assets/utils/functionUtils.ts +96 -42
  380. package/src/components/Accordion/Accordion.scss +46 -44
  381. package/src/components/Accordion/Accordion.stories.tsx +31 -31
  382. package/src/components/Accordion/Accordion.tsx +62 -62
  383. package/src/components/Accordion/index.ts +1 -1
  384. package/src/components/Accordion/types.ts +28 -28
  385. package/src/components/AddResourceButton/AddButton.scss +36 -36
  386. package/src/components/AddResourceButton/AddButton.stories.tsx +126 -126
  387. package/src/components/AddResourceButton/AddButton.tsx +121 -121
  388. package/src/components/AddResourceButton/ArrowsButton/ArrowsButton.scss +161 -161
  389. package/src/components/AddResourceButton/ArrowsButton/ArrowsButton.tsx +38 -38
  390. package/src/components/AddResourceButton/index.ts +1 -1
  391. package/src/components/AddResourceButton/type.ts +92 -92
  392. package/src/components/AllProjectsDropdown/AllProjectsDropdown.scss +189 -189
  393. package/src/components/AllProjectsDropdown/AllProjectsDropdown.stories.tsx +117 -117
  394. package/src/components/AllProjectsDropdown/AllProjectsDropdown.tsx +152 -152
  395. package/src/components/AllProjectsDropdown/types.ts +12 -12
  396. package/src/components/AppHeader/AppHeader.scss +176 -176
  397. package/src/components/AppHeader/AppHeader.stories.tsx +222 -222
  398. package/src/components/AppHeader/AppHeader.tsx +179 -179
  399. package/src/components/AppHeader/index.ts +1 -1
  400. package/src/components/AppHeader/types.ts +40 -40
  401. package/src/components/AttachImage/AttachImage.scss +76 -76
  402. package/src/components/AttachImage/AttachImage.stories.tsx +22 -22
  403. package/src/components/AttachImage/AttachImage.tsx +64 -64
  404. package/src/components/AttachImage/index.ts +2 -2
  405. package/src/components/AttachImage/types.ts +18 -18
  406. package/src/components/AttachmentButton/AttachmentButton.scss +9 -9
  407. package/src/components/AttachmentButton/AttachmentButton.stories.tsx +81 -81
  408. package/src/components/AttachmentButton/AttachmentButton.tsx +129 -129
  409. package/src/components/AttachmentButton/types.ts +13 -13
  410. package/src/components/Avatar/Avatar.scss +23 -23
  411. package/src/components/Avatar/Avatar.stories.tsx +55 -55
  412. package/src/components/Avatar/Avatar.tsx +25 -25
  413. package/src/components/Avatar/types.ts +27 -27
  414. package/src/components/Button/Button.scss +155 -155
  415. package/src/components/Button/Button.stories.tsx +81 -81
  416. package/src/components/Button/Button.tsx +73 -73
  417. package/src/components/Button/index.ts +1 -1
  418. package/src/components/Button/types.ts +69 -69
  419. package/src/components/Charts/BarChart/BarChart.scss +66 -66
  420. package/src/components/Charts/BarChart/BarChart.stories.tsx +66 -66
  421. package/src/components/Charts/BarChart/BarChart.tsx +304 -304
  422. package/src/components/Charts/BarChart/types.ts +12 -12
  423. package/src/components/Charts/DashboardDonutChart/DashboardDonutChart.scss +150 -150
  424. package/src/components/Charts/DashboardDonutChart/DashboardDonutChart.stories.tsx +54 -55
  425. package/src/components/Charts/DashboardDonutChart/DashboardDonutChart.tsx +482 -339
  426. package/src/components/Charts/DashboardDonutChart/types.ts +50 -39
  427. package/src/components/Charts/DonutChart/DonutChart.scss +76 -76
  428. package/src/components/Charts/DonutChart/DonutChart.stories.tsx +30 -30
  429. package/src/components/Charts/DonutChart/DonutChart.tsx +241 -241
  430. package/src/components/Charts/DonutChart/index.ts +1 -1
  431. package/src/components/Charts/DonutChart/type.ts +23 -23
  432. package/src/components/Charts/IconRadialChart/IconRadialChart.scss +25 -25
  433. package/src/components/Charts/IconRadialChart/IconRadialChart.stories.tsx +51 -51
  434. package/src/components/Charts/IconRadialChart/IconRadialChart.tsx +170 -170
  435. package/src/components/Charts/IconRadialChart/types.ts +28 -28
  436. package/src/components/Charts/LineChart/LineChart.scss +78 -78
  437. package/src/components/Charts/LineChart/LineChart.stories.tsx +138 -138
  438. package/src/components/Charts/LineChart/LineChart.tsx +267 -267
  439. package/src/components/Charts/LineChart/index.ts +1 -1
  440. package/src/components/Charts/LineChart/types.ts +26 -26
  441. package/src/components/Charts/MultiRadialChart/MultiRadialChart.scss +65 -65
  442. package/src/components/Charts/MultiRadialChart/MultiRadialChart.stories.tsx +116 -116
  443. package/src/components/Charts/MultiRadialChart/MultiRadialChart.tsx +207 -207
  444. package/src/components/Charts/MultiRadialChart/index.ts +1 -1
  445. package/src/components/Charts/MultiRadialChart/types.ts +25 -25
  446. package/src/components/Charts/PieChart/PieChart.scss +39 -39
  447. package/src/components/Charts/PieChart/PieChart.stories.tsx +46 -46
  448. package/src/components/Charts/PieChart/PieChart.tsx +193 -193
  449. package/src/components/Charts/PieChart/index.ts +1 -1
  450. package/src/components/Charts/PieChart/types.ts +28 -28
  451. package/src/components/Charts/RadialChart/RadialChart.scss +12 -12
  452. package/src/components/Charts/RadialChart/RadialChart.stories.tsx +36 -36
  453. package/src/components/Charts/RadialChart/RadialChart.tsx +174 -174
  454. package/src/components/Charts/RadialChart/index.ts +1 -1
  455. package/src/components/Charts/RadialChart/types.ts +32 -32
  456. package/src/components/Checkbox/Checkbox.scss +89 -89
  457. package/src/components/Checkbox/Checkbox.stories.tsx +47 -47
  458. package/src/components/Checkbox/Checkbox.tsx +61 -61
  459. package/src/components/Checkbox/types.ts +30 -30
  460. package/src/components/Chip/Chip.scss +85 -85
  461. package/src/components/Chip/Chip.stories.tsx +116 -116
  462. package/src/components/Chip/Chip.tsx +35 -35
  463. package/src/components/Chip/index.ts +1 -1
  464. package/src/components/Chip/types.ts +19 -19
  465. package/src/components/ConnectingBranch/BranchComponents/MachineInstances.tsx +128 -128
  466. package/src/components/ConnectingBranch/ConnectingBranch.scss +233 -233
  467. package/src/components/ConnectingBranch/ConnectingBranch.stories.tsx +21 -21
  468. package/src/components/ConnectingBranch/ConnectingBranch.tsx +182 -182
  469. package/src/components/ConnectingBranch/data.ts +137 -137
  470. package/src/components/ConnectingBranch/index.ts +1 -1
  471. package/src/components/ConnectingBranch/types.ts +21 -21
  472. package/src/components/DatePicker/DatePicker.scss +388 -387
  473. package/src/components/DatePicker/DatePicker.stories.tsx +174 -161
  474. package/src/components/DatePicker/DatePicker.tsx +451 -438
  475. package/src/components/DatePicker/Timepicker.tsx +372 -372
  476. package/src/components/DatePicker/types.ts +105 -100
  477. package/src/components/DownloadClient/DownloadClient.scss +80 -80
  478. package/src/components/DownloadClient/DownloadClient.stories.tsx +26 -26
  479. package/src/components/DownloadClient/DownloadClient.tsx +81 -81
  480. package/src/components/DownloadClient/type.ts +40 -40
  481. package/src/components/DragAndDrop/DragAndDrop.d.ts +5 -5
  482. package/src/components/DragAndDrop/DragAndDrop.stories.tsx +25 -25
  483. package/src/components/DragAndDrop/DragAndDrop.ts +7 -7
  484. package/src/components/DragAndDrop/DragAndDropList.scss +69 -69
  485. package/src/components/DragAndDrop/DragAndDropList.tsx +150 -150
  486. package/src/components/Drawer/Drawer.scss +138 -138
  487. package/src/components/Drawer/Drawer.stories.tsx +156 -156
  488. package/src/components/Drawer/Drawer.tsx +229 -229
  489. package/src/components/Drawer/Types.ts +144 -144
  490. package/src/components/EditTextField/EditTextField.scss +97 -97
  491. package/src/components/EditTextField/EditTextField.stories.tsx +127 -127
  492. package/src/components/EditTextField/EditTextField.tsx +181 -181
  493. package/src/components/EditTextField/index.ts +1 -1
  494. package/src/components/EditTextField/types.ts +55 -55
  495. package/src/components/Editor/Editor.scss +56 -56
  496. package/src/components/Editor/Editor.stories.tsx +54 -54
  497. package/src/components/Editor/Editor.tsx +248 -248
  498. package/src/components/Editor/VariableDropdown.scss +21 -21
  499. package/src/components/Editor/VariableDropdown.tsx +49 -49
  500. package/src/components/Editor/constants.ts +180 -180
  501. package/src/components/Editor/types.ts +79 -79
  502. package/src/components/Excel/ColorBarSelector/ColorBarSelector.scss +15 -11
  503. package/src/components/Excel/ColorBarSelector/ColorBarSelector.tsx +43 -43
  504. package/src/components/Excel/ExcelContextMenu/ExcelContextMenu.scss +27 -39
  505. package/src/components/Excel/ExcelContextMenu/ExcelContextMenu.tsx +42 -51
  506. package/src/components/Excel/ExcelFile/ExcelFile.scss +68 -62
  507. package/src/components/Excel/ExcelFile/ExcelFile.tsx +422 -312
  508. package/src/components/Excel/ExcelFile/ExcelFileComponents/ActiveCell.tsx +131 -131
  509. package/src/components/Excel/ExcelFile/ExcelFileComponents/Cell.tsx +238 -237
  510. package/src/components/Excel/ExcelFile/ExcelFileComponents/ColumnIndicator.tsx +168 -168
  511. package/src/components/Excel/ExcelFile/ExcelFileComponents/Copied.tsx +25 -25
  512. package/src/components/Excel/ExcelFile/ExcelFileComponents/CornerIndicator.tsx +56 -56
  513. package/src/components/Excel/ExcelFile/ExcelFileComponents/DataEditor.tsx +37 -37
  514. package/src/components/Excel/ExcelFile/ExcelFileComponents/DataViewer.tsx +85 -46
  515. package/src/components/Excel/ExcelFile/ExcelFileComponents/FloatingRect.tsx +31 -31
  516. package/src/components/Excel/ExcelFile/ExcelFileComponents/HeaderRow.tsx +5 -5
  517. package/src/components/Excel/ExcelFile/ExcelFileComponents/Row.tsx +5 -5
  518. package/src/components/Excel/ExcelFile/ExcelFileComponents/RowIndicator.tsx +148 -148
  519. package/src/components/Excel/ExcelFile/ExcelFileComponents/Selected.tsx +32 -32
  520. package/src/components/Excel/ExcelFile/ExcelFileComponents/Spreadsheet.scss +175 -165
  521. package/src/components/Excel/ExcelFile/ExcelFileComponents/Spreadsheet.tsx +480 -516
  522. package/src/components/Excel/ExcelFile/ExcelFileComponents/Table.tsx +19 -19
  523. package/src/components/Excel/ExcelFile/ExcelFileComponents/actions.ts +519 -519
  524. package/src/components/Excel/ExcelFile/ExcelFileComponents/areModelsEqual.ts +18 -18
  525. package/src/components/Excel/ExcelFile/ExcelFileComponents/context.ts +12 -12
  526. package/src/components/Excel/ExcelFile/ExcelFileComponents/engine/engine.ts +153 -153
  527. package/src/components/Excel/ExcelFile/ExcelFileComponents/engine/formula.ts +31 -31
  528. package/src/components/Excel/ExcelFile/ExcelFileComponents/engine/index.ts +2 -2
  529. package/src/components/Excel/ExcelFile/ExcelFileComponents/engine/point-graph.ts +152 -152
  530. package/src/components/Excel/ExcelFile/ExcelFileComponents/engine/point-hash.ts +10 -10
  531. package/src/components/Excel/ExcelFile/ExcelFileComponents/engine/point-set.ts +69 -69
  532. package/src/components/Excel/ExcelFile/ExcelFileComponents/index.ts +49 -49
  533. package/src/components/Excel/ExcelFile/ExcelFileComponents/matrix.ts +382 -382
  534. package/src/components/Excel/ExcelFile/ExcelFileComponents/point-range.ts +82 -82
  535. package/src/components/Excel/ExcelFile/ExcelFileComponents/point.ts +15 -15
  536. package/src/components/Excel/ExcelFile/ExcelFileComponents/reducer.ts +640 -599
  537. package/src/components/Excel/ExcelFile/ExcelFileComponents/reducerFunctions.ts +790 -755
  538. package/src/components/Excel/ExcelFile/ExcelFileComponents/selection.ts +257 -257
  539. package/src/components/Excel/ExcelFile/ExcelFileComponents/types.ts +255 -253
  540. package/src/components/Excel/ExcelFile/ExcelFileComponents/typings/fast-formula-parser.d.ts +58 -58
  541. package/src/components/Excel/ExcelFile/ExcelFileComponents/use-dispatch.ts +8 -8
  542. package/src/components/Excel/ExcelFile/ExcelFileComponents/use-selector.ts +9 -9
  543. package/src/components/Excel/ExcelFile/ExcelFileComponents/util.ts +172 -172
  544. package/src/components/Excel/ExcelFile.stories.tsx +157 -158
  545. package/src/components/Excel/ExcelToolBar/ExcelToolBar.scss +96 -36
  546. package/src/components/Excel/ExcelToolBar/ExcelToolBar.tsx +354 -342
  547. package/src/components/Excel/Types.ts +174 -174
  548. package/src/components/Excel/index.ts +1 -1
  549. package/src/components/ExpandableMenu/ExpandableMenu.scss +110 -110
  550. package/src/components/ExpandableMenu/ExpandableMenu.stories.tsx +67 -67
  551. package/src/components/ExpandableMenu/ExpandableMenu.tsx +101 -101
  552. package/src/components/ExpandableMenu/index.ts +1 -1
  553. package/src/components/ExpandableMenu/types.ts +34 -34
  554. package/src/components/FF_Captcha/Recaptcha.scss +10 -10
  555. package/src/components/FF_Captcha/Recaptcha.tsx +40 -40
  556. package/src/components/FF_Captcha/captcha.stories.tsx +40 -40
  557. package/src/components/FF_Captcha/types.ts +22 -22
  558. package/src/components/FileDropzone/Dropzone.tsx +57 -55
  559. package/src/components/FileDropzone/FileDropzone.scss +136 -137
  560. package/src/components/FileDropzone/FileDropzone.stories.tsx +86 -83
  561. package/src/components/FileDropzone/FileDropzone.tsx +106 -98
  562. package/src/components/FileDropzone/FilePreview.tsx +77 -77
  563. package/src/components/FileDropzone/index.ts +1 -1
  564. package/src/components/FileDropzone/types.ts +118 -113
  565. package/src/components/Form/Form.d.ts +2 -2
  566. package/src/components/Form/Form.scss +158 -158
  567. package/src/components/Form/Form.stories.tsx +508 -508
  568. package/src/components/Form/Form.ts +2 -2
  569. package/src/components/Form/Forms.tsx +41 -41
  570. package/src/components/Form/validation.json +29 -29
  571. package/src/components/GridLayout/GridLayout.scss +69 -69
  572. package/src/components/GridLayout/GridLayout.stories.tsx +90 -90
  573. package/src/components/GridLayout/GridLayout.tsx +39 -39
  574. package/src/components/GridLayout/GridLayoutStory.scss +25 -25
  575. package/src/components/GridLayout/types.ts +84 -84
  576. package/src/components/HighlightText/HighlightText.scss +3 -3
  577. package/src/components/HighlightText/HighlightText.stories.tsx +22 -22
  578. package/src/components/HighlightText/HighlightText.tsx +33 -33
  579. package/src/components/HighlightText/index.ts +1 -1
  580. package/src/components/HighlightText/types.ts +4 -4
  581. package/src/components/Icon/Icon.stories.tsx +65 -64
  582. package/src/components/Icon/Icon.tsx +88 -88
  583. package/src/components/Icon/Icons.scss +50 -50
  584. package/src/components/Icon/iconList.ts +440 -438
  585. package/src/components/Icon/index.ts +1 -1
  586. package/src/components/Icon/types.ts +14 -14
  587. package/src/components/IconButton/IconButton.scss +54 -54
  588. package/src/components/IconButton/IconButton.stories.tsx +33 -33
  589. package/src/components/IconButton/IconButton.tsx +35 -35
  590. package/src/components/IconButton/index.ts +1 -1
  591. package/src/components/IconButton/types.ts +5 -5
  592. package/src/components/IconRadioGroup/IconRadioGroup.scss +63 -63
  593. package/src/components/IconRadioGroup/IconRadioGroup.stories.tsx +108 -108
  594. package/src/components/IconRadioGroup/IconRadioGroup.tsx +73 -73
  595. package/src/components/IconRadioGroup/index.ts +1 -1
  596. package/src/components/IconRadioGroup/type.ts +49 -49
  597. package/src/components/Input/Input.scss +159 -159
  598. package/src/components/Input/Input.stories.tsx +141 -141
  599. package/src/components/Input/Input.tsx +103 -103
  600. package/src/components/Input/types.ts +85 -85
  601. package/src/components/InputWithDropdown/InputWithDropdown.scss +213 -213
  602. package/src/components/InputWithDropdown/InputWithDropdown.stories.tsx +169 -169
  603. package/src/components/InputWithDropdown/InputWithDropdown.tsx +122 -122
  604. package/src/components/InputWithDropdown/index.ts +1 -1
  605. package/src/components/InputWithDropdown/types.ts +113 -113
  606. package/src/components/LabelEditTextField/LabelEditTextField.scss +85 -85
  607. package/src/components/LabelEditTextField/LabelEditTextField.stories.tsx +196 -196
  608. package/src/components/LabelEditTextField/LabelEditTextField.tsx +215 -215
  609. package/src/components/LabelEditTextField/index.ts +1 -1
  610. package/src/components/LabelEditTextField/types.ts +41 -41
  611. package/src/components/LazyLoad/LazyLoad.d.ts +3 -3
  612. package/src/components/LazyLoad/LazyLoad.stories.tsx +33 -33
  613. package/src/components/LazyLoad/LazyLoad.ts +2 -2
  614. package/src/components/LazyLoad/LazyLoading.tsx +19 -19
  615. package/src/components/LazyLoad/index.ts +1 -1
  616. package/src/components/MachineInputField/MachineInputField.scss +46 -46
  617. package/src/components/MachineInputField/MachineInputField.stories.tsx +32 -32
  618. package/src/components/MachineInputField/MachineInputField.tsx +73 -73
  619. package/src/components/MachineInputField/index.ts +1 -1
  620. package/src/components/MachineInputField/types.ts +13 -13
  621. package/src/components/MenuOption/MenuOption.scss +97 -97
  622. package/src/components/MenuOption/MenuOption.stories.tsx +157 -157
  623. package/src/components/MenuOption/MenuOption.tsx +219 -219
  624. package/src/components/MenuOption/types.ts +228 -228
  625. package/src/components/MiniModal/MiniModal.scss +170 -170
  626. package/src/components/MiniModal/MiniModal.stories.tsx +707 -707
  627. package/src/components/MiniModal/MiniModal.tsx +290 -290
  628. package/src/components/MiniModal/index.ts +1 -1
  629. package/src/components/MiniModal/types.ts +107 -107
  630. package/src/components/Modal/Modal.stories.tsx +69 -69
  631. package/src/components/Modal/Modal.tsx +100 -100
  632. package/src/components/Modal/index.tsx +1 -1
  633. package/src/components/Modal/modal.scss +51 -51
  634. package/src/components/Modal/types.ts +43 -43
  635. package/src/components/ModulesChip/ModuleChip.scss +20 -20
  636. package/src/components/ModulesChip/ModuleChip.stories.tsx +41 -41
  637. package/src/components/ModulesChip/ModuleChip.tsx +31 -31
  638. package/src/components/ModulesChip/types.ts +14 -14
  639. package/src/components/MultiSelect/Dropdown.scss +78 -78
  640. package/src/components/MultiSelect/Dropdown.tsx +131 -131
  641. package/src/components/MultiSelect/MultiSelect.scss +217 -226
  642. package/src/components/MultiSelect/MultiSelect.stories.tsx +268 -268
  643. package/src/components/MultiSelect/MultiSelect.tsx +485 -485
  644. package/src/components/MultiSelect/MultiSelectTypes.ts +45 -45
  645. package/src/components/MultiSelect/dropdownTypes.ts +19 -19
  646. package/src/components/MultiSelect/index.ts +1 -1
  647. package/src/components/NLPInput/NLPInput.scss +246 -246
  648. package/src/components/NLPInput/NlpInput.stories.tsx +136 -136
  649. package/src/components/NLPInput/NlpInput.tsx +374 -374
  650. package/src/components/NLPInput/components/NlpDropDown/NlpDropDownType.ts +60 -60
  651. package/src/components/NLPInput/components/NlpDropDown/NlpDropdown.scss +83 -83
  652. package/src/components/NLPInput/components/NlpDropDown/NlpDropdown.tsx +180 -180
  653. package/src/components/NLPInput/index.ts +1 -1
  654. package/src/components/NLPInput/type.tsx +124 -124
  655. package/src/components/Paper/Paper.scss +13 -13
  656. package/src/components/Paper/Paper.stories.tsx +77 -77
  657. package/src/components/Paper/Paper.tsx +14 -14
  658. package/src/components/Paper/types.ts +19 -19
  659. package/src/components/RadioButton/RadioButton.scss +106 -106
  660. package/src/components/RadioButton/RadioButton.stories.tsx +43 -43
  661. package/src/components/RadioButton/RadioButton.tsx +41 -41
  662. package/src/components/RadioButton/index.ts +1 -1
  663. package/src/components/RadioButton/radioButtonTypes.tsx +62 -62
  664. package/src/components/RadioGroup/RadioGroup.scss +5 -5
  665. package/src/components/RadioGroup/RadioGroup.stories.tsx +124 -124
  666. package/src/components/RadioGroup/RadioGroup.tsx +33 -33
  667. package/src/components/RadioGroup/index.ts +1 -1
  668. package/src/components/RadioGroup/radioGroupTypes.tsx +72 -72
  669. package/src/components/Search/Search.scss +103 -103
  670. package/src/components/Search/Search.stories.tsx +26 -26
  671. package/src/components/Search/Search.tsx +127 -127
  672. package/src/components/Search/index.ts +1 -1
  673. package/src/components/Search/types.ts +15 -15
  674. package/src/components/Select/Select.scss +193 -183
  675. package/src/components/Select/Select.stories.tsx +306 -306
  676. package/src/components/Select/Select.tsx +252 -252
  677. package/src/components/Select/components/Dropdown.scss +52 -52
  678. package/src/components/Select/components/Dropdown.tsx +126 -126
  679. package/src/components/Select/components/types.ts +23 -23
  680. package/src/components/Select/index.ts +1 -1
  681. package/src/components/Select/types.ts +124 -124
  682. package/src/components/SequentialConnectingBranch/SequentialConnectingBranch.scss +119 -119
  683. package/src/components/SequentialConnectingBranch/SequentialConnectingBranch.stories.tsx +56 -56
  684. package/src/components/SequentialConnectingBranch/SequentialConnectingBranch.tsx +136 -136
  685. package/src/components/SequentialConnectingBranch/components/AddBrowserModal/AddBrowserModal.scss +51 -51
  686. package/src/components/SequentialConnectingBranch/components/AddBrowserModal/AddBrowserModal.tsx +107 -107
  687. package/src/components/SequentialConnectingBranch/components/AddBrowserModal/types.ts +5 -5
  688. package/src/components/SequentialConnectingBranch/components/Branches/Branches.scss +184 -184
  689. package/src/components/SequentialConnectingBranch/components/Branches/Branches.tsx +205 -205
  690. package/src/components/SequentialConnectingBranch/components/Branches/types.ts +18 -18
  691. package/src/components/SequentialConnectingBranch/components/ConnectingBranches/ConnectingBranches.scss +3 -3
  692. package/src/components/SequentialConnectingBranch/components/ConnectingBranches/ConnectingBranches.tsx +66 -66
  693. package/src/components/SequentialConnectingBranch/components/ConnectingBranches/types.ts +10 -10
  694. package/src/components/SequentialConnectingBranch/components/DatasetListModal/DatasetListModal.scss +31 -31
  695. package/src/components/SequentialConnectingBranch/components/DatasetListModal/DatasetListModal.tsx +85 -85
  696. package/src/components/SequentialConnectingBranch/components/DatasetListModal/types.ts +4 -4
  697. package/src/components/SequentialConnectingBranch/index.ts +1 -1
  698. package/src/components/SequentialConnectingBranch/types.ts +45 -45
  699. package/src/components/StateDropdown/StateDropdown.stories.tsx +104 -99
  700. package/src/components/StateDropdown/StateDropdown.tsx +245 -230
  701. package/src/components/StateDropdown/StateDropdownTypes.tsx +27 -21
  702. package/src/components/StatusButton/StatusButton.scss +90 -90
  703. package/src/components/StatusButton/StatusButton.stories.tsx +91 -91
  704. package/src/components/StatusButton/StatusButton.tsx +46 -46
  705. package/src/components/StatusButton/index.ts +1 -1
  706. package/src/components/StatusButton/types.ts +45 -45
  707. package/src/components/StatusCard/StatusCard.scss +94 -94
  708. package/src/components/StatusCard/StatusCard.stories.tsx +58 -58
  709. package/src/components/StatusCard/StatusCard.tsx +49 -49
  710. package/src/components/StatusCard/index.ts +1 -1
  711. package/src/components/StatusCard/types.ts +10 -10
  712. package/src/components/Table/Table.scss +116 -116
  713. package/src/components/Table/Table.stories.tsx +373 -373
  714. package/src/components/Table/Table.tsx +178 -178
  715. package/src/components/Table/Types.ts +124 -124
  716. package/src/components/Table/index.ts +1 -1
  717. package/src/components/TableTree/TableTree.scss +171 -169
  718. package/src/components/TableTree/TableTree.stories.tsx +127 -127
  719. package/src/components/TableTree/TableTree.tsx +307 -305
  720. package/src/components/TableTree/TableTreeStories.scss +22 -22
  721. package/src/components/TableTree/data.ts +573 -573
  722. package/src/components/TableTree/index.ts +1 -1
  723. package/src/components/Tabs/Tabs.scss +79 -79
  724. package/src/components/Tabs/Tabs.stories.tsx +133 -133
  725. package/src/components/Tabs/Tabs.tsx +61 -61
  726. package/src/components/Tabs/index.ts +1 -1
  727. package/src/components/Tabs/types.ts +48 -48
  728. package/src/components/TextArea/Textarea.scss +144 -144
  729. package/src/components/TextArea/Textarea.stories.tsx +92 -92
  730. package/src/components/TextArea/Textarea.tsx +84 -84
  731. package/src/components/TextArea/Types.ts +82 -82
  732. package/src/components/TextArea/index.tsx +1 -1
  733. package/src/components/ThemeProvider/ThemeProvider.tsx +27 -27
  734. package/src/components/ThemeProvider/index.ts +1 -1
  735. package/src/components/ThemeProvider/types.ts +14 -14
  736. package/src/components/Toast/Toast.scss +121 -121
  737. package/src/components/Toast/Toast.stories.tsx +144 -144
  738. package/src/components/Toast/Toast.tsx +117 -117
  739. package/src/components/Toast/index.ts +1 -1
  740. package/src/components/Toast/types.ts +27 -27
  741. package/src/components/Toastify/Toastify.stories.tsx +71 -71
  742. package/src/components/Toastify/Toastify.tsx +94 -94
  743. package/src/components/Toastify/index.ts +1 -1
  744. package/src/components/Toastify/types.ts +9 -9
  745. package/src/components/Toggle/Toggle.scss +133 -133
  746. package/src/components/Toggle/Toggle.stories.tsx +132 -132
  747. package/src/components/Toggle/Toggle.tsx +96 -96
  748. package/src/components/Toggle/index.ts +1 -1
  749. package/src/components/Toggle/types.ts +43 -43
  750. package/src/components/ToggleSwitch/ToggleSwitch.scss +58 -58
  751. package/src/components/ToggleSwitch/ToggleSwitch.stories.tsx +52 -52
  752. package/src/components/ToggleSwitch/ToggleSwitch.tsx +30 -30
  753. package/src/components/ToggleSwitch/index.ts +1 -1
  754. package/src/components/Tooltip/Tooltip.scss +27 -27
  755. package/src/components/Tooltip/Tooltip.stories.tsx +98 -98
  756. package/src/components/Tooltip/Tooltip.tsx +194 -194
  757. package/src/components/Tooltip/index.ts +1 -1
  758. package/src/components/Tooltip/types.ts +66 -66
  759. package/src/components/Typography/Typography.scss +60 -60
  760. package/src/components/Typography/Typography.stories.tsx +59 -59
  761. package/src/components/Typography/Typography.tsx +41 -41
  762. package/src/components/Typography/index.ts +1 -1
  763. package/src/components/Typography/types.ts +57 -57
  764. package/src/components/VariableInput/VariableInput.scss +127 -127
  765. package/src/components/VariableInput/VariableInput.stories.tsx +32 -32
  766. package/src/components/VariableInput/VariableInput.tsx +352 -352
  767. package/src/components/VariableInput/types.ts +56 -56
  768. package/src/hooks/keyboardevents/useEscKeyEvent.tsx +30 -30
  769. package/src/hooks/useClickOutside.tsx +30 -30
  770. package/src/hooks/useFileDropzone.tsx +274 -274
  771. package/src/hooks/usePortalPosition.tsx +53 -53
  772. package/src/hooks/useTheme.tsx +13 -13
  773. package/src/index.ts +176 -174
  774. package/src/utils/TableCell/TableCell.ts +16 -16
  775. package/src/utils/capitalize/capitalize.stories.tsx +44 -44
  776. package/src/utils/capitalize/capitalize.tsx +4 -4
  777. package/src/utils/checkEmpty/checkEmpty.stories.tsx +34 -34
  778. package/src/utils/checkEmpty/checkEmpty.ts +24 -24
  779. package/src/utils/compareArrays/compareArrays.stories.tsx +62 -62
  780. package/src/utils/compareArrays/compareArrays.ts +31 -31
  781. package/src/utils/compareObjects/compareObjects.stories.tsx +51 -51
  782. package/src/utils/compareObjects/compareObjects.ts +53 -53
  783. package/src/utils/debounce/debounce.stories.tsx +81 -81
  784. package/src/utils/debounce/debounce.ts +28 -28
  785. package/src/utils/downloadFile/saveFileFromBlob.stories.tsx +62 -62
  786. package/src/utils/downloadFile/saveFileFromBlob.ts +40 -40
  787. package/src/utils/ffID/ffID.stories.tsx +35 -35
  788. package/src/utils/ffID/ffid.ts +7 -7
  789. package/src/utils/findAndInsert/findAndInsert.stories.tsx +119 -119
  790. package/src/utils/findAndInsert/findAndInsert.ts +49 -49
  791. package/src/utils/getEncryptedData/getEncryptedData.stories.tsx +55 -55
  792. package/src/utils/getEncryptedData/getEncryptedData.ts +8 -8
  793. package/src/utils/getExtension/getExtension.stories.tsx +23 -23
  794. package/src/utils/getExtension/getExtension.ts +28 -28
  795. package/src/utils/getSelectOptionValue/getSelectOptionValue.ts +31 -31
  796. package/src/utils/getSequentialPayload/getSequentialPayload.stories.tsx +72 -72
  797. package/src/utils/getSequentialPayload/getSequentialPayload.ts +16 -16
  798. package/src/utils/getSequentialPayload/types.ts +32 -32
  799. package/src/utils/throttle/throttle.stories.tsx +100 -100
  800. package/src/utils/throttle/throttle.ts +33 -33
  801. package/src/utils/truncateText/truncateText.stories.tsx +37 -37
  802. package/src/utils/truncateText/truncateText.ts +4 -4
  803. package/tsconfig.json +55 -55
  804. package/vite.config.js +14 -14
@@ -1,382 +1,382 @@
1
- import * as Point from './point';
2
-
3
- /** A two-dimensional array of given type T in rows and columns */
4
- export type Matrix<T> = Array<Array<T | undefined>>;
5
-
6
- /**
7
- * Creates an empty matrix with given rows and columns
8
- * @param rows - integer, the amount of rows the matrix should have
9
- * @param columns - integer, the amount of columns the matrix should have
10
- * @returns an empty matrix with given rows and columns
11
- */
12
- export function createEmpty<T>(rows: number, columns: number): Matrix<T> {
13
- const matrix = Array(rows);
14
- for (let i = 0; i < rows; i++) {
15
- matrix[i] = Array(columns);
16
- }
17
- return matrix;
18
- }
19
-
20
- /** Gets the value at row and column of matrix. */
21
- export function get<T>(point: Point.Point, matrix: Matrix<T>): T | undefined {
22
- const columns = matrix[point.row];
23
- if (columns === undefined) {
24
- return undefined;
25
- }
26
- return columns[point.column];
27
- }
28
-
29
- /** Creates a slice of matrix from startPoint up to, but not including, endPoint. */
30
- export function slice<T>(
31
- startPoint: Point.Point,
32
- endPoint: Point.Point,
33
- matrix: Matrix<T>
34
- ): Matrix<T> {
35
- const sliced: Matrix<T> = [];
36
- const columns = endPoint.column - startPoint.column;
37
- for (let row = startPoint.row; row <= endPoint.row; row++) {
38
- const slicedRow = row - startPoint.row;
39
- sliced[slicedRow] = sliced[slicedRow] || Array(columns);
40
- for (let column = startPoint.column; column <= endPoint.column; column++) {
41
- sliced[slicedRow][column - startPoint.column] = get(
42
- { row, column },
43
- matrix
44
- );
45
- }
46
- }
47
- return sliced;
48
- }
49
-
50
- /** Sets the value at row and column of matrix. If a row doesn't exist, it's created. */
51
-
52
- export function set<T>(
53
- point: Point.Point,
54
- value: T,
55
- matrix: Matrix<T>
56
- ): Matrix<T> {
57
- // Create a shallow copy of the matrix
58
- const nextMatrix = [...matrix];
59
-
60
- // Ensure the first row exists (initialize if undefined)
61
- const firstRow = matrix[0] ?? [];
62
- const nextFirstRow = [...firstRow];
63
-
64
- // Ensure the first row has enough columns to accommodate the specified column
65
- if (nextFirstRow.length <= point.column) {
66
- nextFirstRow.length = point.column + 1; // Extend the first row if needed
67
- }
68
-
69
- // Set the modified first row back into the matrix
70
- nextMatrix[0] = nextFirstRow;
71
-
72
- // Ensure the specified row exists (initialize if undefined)
73
- const nextRow = matrix[point.row] ?? [];
74
- const nextRowCopy = [...nextRow];
75
-
76
- // Set the value at the specified point
77
- nextRowCopy[point.column] = value;
78
-
79
- // Set the modified row back into the matrix
80
- nextMatrix[point.row] = nextRowCopy;
81
-
82
- return nextMatrix;
83
- }
84
-
85
- /** Like Matrix.set() but mutates the matrix */
86
-
87
- export function mutableSet<T>(
88
- point: Point.Point,
89
- value: T,
90
- matrix: Matrix<T>
91
- ): void {
92
- // Ensure that the first row exists, if not, create it
93
- let firstRow = matrix[0];
94
- if (!firstRow) {
95
- firstRow = [];
96
- matrix[0] = firstRow;
97
- }
98
-
99
- // Ensure the row at point.row exists, if not, create it
100
- let row = matrix[point.row];
101
- if (!row) {
102
- row = [];
103
- matrix[point.row] = row;
104
- }
105
-
106
- // Ensure that the first row has enough columns
107
- if (firstRow.length <= point.column) {
108
- firstRow.length = point.column + 1; // Extend the first row if needed
109
- }
110
-
111
- // Set the value at the specified point
112
- row[point.column] = value;
113
- }
114
-
115
- /** Removes the coordinate of matrix */
116
- // export function unset<T>(point: Point.Point, matrix: Matrix<T>): Matrix<T> {
117
- // if (!has(point, matrix)) {
118
- // return matrix;
119
- // }
120
- // const nextMatrix = [...matrix];
121
- // const nextRow = [...matrix[point.row]];
122
-
123
- // // Avoid deleting to preserve first row length
124
- // nextRow[point.column] = undefined;
125
- // nextMatrix[point.row] = nextRow;
126
-
127
- // return nextMatrix;
128
- // }
129
-
130
- export function unset<T>(point: Point.Point, matrix: Matrix<T>): Matrix<T> {
131
- // Check if the point exists in the matrix
132
- if (!has(point, matrix)) {
133
- return matrix;
134
- }
135
-
136
- // Create a shallow copy of the matrix
137
- const nextMatrix = [...matrix];
138
-
139
- // Check if the row exists before trying to copy it
140
- const currentRow = matrix[point.row];
141
- if (currentRow) {
142
- // Create a shallow copy of the row
143
- const nextRow = [...currentRow];
144
- // Avoid deleting to preserve first row length
145
- nextRow[point.column] = undefined;
146
-
147
- // Update the matrix with the modified row
148
- nextMatrix[point.row] = nextRow;
149
- }
150
-
151
- return nextMatrix;
152
- }
153
-
154
- /** Creates an array of values by running each element in collection thru iteratee. */
155
- export function map<T, T2>(
156
- func: (value: T | undefined, point: Point.Point) => T2,
157
- matrix: Matrix<T>
158
- ): Matrix<T2> {
159
- const newMatrix: Matrix<T2> = [];
160
- for (const [point, value] of entries(matrix)) {
161
- mutableSet(point, func(value, point), newMatrix);
162
- }
163
- return newMatrix;
164
- }
165
-
166
- /** Create an iterator over the cells in the matrix */
167
- export function* entries<T>(
168
- matrix: Matrix<T>
169
- ): IterableIterator<[Point.Point, T | undefined]> {
170
- for (const [row, values] of matrix.entries()) {
171
- for (const [column, value] of values.entries()) {
172
- const point = { row, column };
173
- yield [point, value];
174
- }
175
- }
176
- }
177
-
178
- /**
179
- * Converts all elements in row into a string separated by horizontalSeparator and each row string
180
- * to string separated by verticalSeparator
181
- */
182
-
183
- export function join(
184
- matrix: Matrix<unknown>,
185
- horizontalSeparator = '\t',
186
- verticalSeparator = '\n'
187
- ): string {
188
- let joined = '';
189
- const { rows, columns } = getSize(matrix);
190
-
191
- for (let row = 0; row < rows; row++) {
192
- if (row) {
193
- joined += verticalSeparator;
194
- }
195
-
196
- for (let column = 0; column < columns; column++) {
197
- if (column) {
198
- joined += horizontalSeparator;
199
- }
200
-
201
- // Ensure matrix[row] exists and matrix[row][column] is not undefined
202
- const cellValue = matrix[row]?.[column];
203
-
204
- // If cellValue is undefined, you can use a fallback value like an empty string
205
- joined += cellValue !== undefined ? String(cellValue) : '';
206
- }
207
- }
208
-
209
- return joined;
210
- }
211
-
212
- /**
213
- * Parses a CSV separated by a horizontalSeparator and verticalSeparator into a
214
- * Matrix using a transform function
215
- */
216
- export function split<T>(
217
- csv: string,
218
- transform: (value: string) => T,
219
- horizontalSeparator = '\t',
220
- verticalSeparator: string | RegExp = /\r\n|\n|\r/
221
- ): Matrix<T> {
222
- // Temporarily replace line breaks inside quotes
223
- const replaced = csv.replace(/"([^"]*?)"/g, (_, p1) => {
224
- return p1.replace(/\n/g, '\\n');
225
- });
226
- return replaced.split(verticalSeparator).map((row) =>
227
- row
228
- .split(horizontalSeparator)
229
- .map((line) => {
230
- // Restore original line breaks in each line
231
- return line.replace(/\\n/g, '\n');
232
- })
233
- .map(transform)
234
- );
235
- }
236
-
237
- /** Returns whether the point exists in the matrix or not. */
238
- export function has(point: Point.Point, matrix: Matrix<unknown>): boolean {
239
- const firstRow = matrix[0];
240
- if (!firstRow) {
241
- return false; // If first row is undefined, return false
242
- }
243
-
244
- // Perform validation checks
245
- return (
246
- point.row >= 0 &&
247
- point.column >= 0 &&
248
- Number.isInteger(point.row) &&
249
- Number.isInteger(point.column) &&
250
- point.column < firstRow.length &&
251
- point.row < matrix.length
252
- );
253
- }
254
-
255
- /** Counts of the rows and column in a matrix */
256
- export type Size = {
257
- /** Count of the rows in the matrix */
258
- rows: number;
259
- /** Count of the columns in the matrix */
260
- columns: number;
261
- };
262
-
263
- /** Gets the count of rows and columns of given matrix */
264
- export function getSize(matrix: Matrix<unknown>): Size {
265
- return {
266
- columns: getColumnsCount(matrix),
267
- rows: getRowsCount(matrix),
268
- };
269
- }
270
-
271
- /** Gets the count of rows of given matrix */
272
- export function getRowsCount(matrix: Matrix<unknown>): number {
273
- return matrix.length;
274
- }
275
-
276
- /** Gets the count of columns of given matrix */
277
- export function getColumnsCount(matrix: Matrix<unknown>): number {
278
- const firstRow = matrix[0];
279
- return firstRow ? firstRow.length : 0;
280
- }
281
-
282
- /**
283
- * Pads matrix with empty rows to match given total rows
284
- * @param matrix - matrix to pad
285
- * @param totalRows - number of rows the matrix should have
286
- * @returns the updated matrix
287
- */
288
- export function padRows<T>(matrix: Matrix<T>, totalRows: number): Matrix<T> {
289
- const { rows, columns } = getSize(matrix);
290
-
291
- if (rows >= totalRows) {
292
- return matrix;
293
- }
294
-
295
- const missingRows = totalRows - rows;
296
- const emptyRow = Array(columns).fill(undefined);
297
- const emptyRows = Array(missingRows).fill(emptyRow);
298
- return [...matrix, ...emptyRows];
299
- }
300
-
301
- /**
302
- * Pads matrix with empty columns to match given total columns
303
- * @param matrix - matrix to pad
304
- * @param size - minimum size of the matrix after padding.
305
- * @returns the updated matrix
306
- */
307
- export function pad<T>(matrix: Matrix<T>, size: Size): Matrix<T> {
308
- const { rows, columns } = getSize(matrix);
309
-
310
- if (rows >= size.rows && columns >= size.columns) {
311
- // Optimization, no padding required.
312
- return matrix;
313
- }
314
-
315
- const resultSize: Size = {
316
- rows: size.rows > rows ? size.rows : rows,
317
- columns: size.columns > columns ? size.columns : columns,
318
- };
319
-
320
- let padded = [...matrix];
321
- if (resultSize.columns > columns) {
322
- const padColumns = resultSize.columns - columns;
323
- padded = padded.map((row) => [
324
- ...row,
325
- ...Array(padColumns).fill(undefined),
326
- ]);
327
- }
328
-
329
- if (resultSize.rows > rows) {
330
- const padRows = resultSize.rows - rows;
331
- const emptyRow = Array(resultSize.columns).fill(undefined);
332
- padded = [...padded, ...Array(padRows).fill(emptyRow)];
333
- }
334
-
335
- return padded;
336
- }
337
-
338
- export function toArray<T>(matrix: Matrix<T>): T[];
339
- export function toArray<T1, T2>(
340
- matrix: Matrix<T1>,
341
- transform: (cell: T1 | undefined, coords: Point.Point) => T2
342
- ): T2[];
343
-
344
- /**
345
- * Flattens a matrix values to an array
346
- * @param matrix - the matrix to flatten values from
347
- * @param transform - optional transform function to apply to each value in the
348
- * matrix
349
- * @returns an array of the values from matrix, transformed if a transform
350
- * function is passed
351
- */
352
- // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
353
-
354
- export function toArray<T1, T2>(
355
- matrix: Matrix<T1>,
356
- transform?: (cell: T1 | undefined, coords: Point.Point) => T2
357
- ): T2[] {
358
- const array: T2[] = [];
359
-
360
- for (let row = 0; row < matrix.length; row++) {
361
- const currentRow = matrix[row];
362
-
363
- // Ensure the row is not undefined
364
- if (currentRow !== undefined) {
365
- for (let column = 0; column < currentRow.length; column++) {
366
- const value = currentRow[column];
367
- // If transform is provided, apply it; otherwise, use the value as is
368
- array.push(
369
- transform ? transform(value, { row, column }) : (value as T2)
370
- );
371
- }
372
- }
373
- }
374
-
375
- return array;
376
- }
377
-
378
- /** Returns the maximum point in the matrix */
379
- export function maxPoint(matrix: Matrix<unknown>): Point.Point {
380
- const size = getSize(matrix);
381
- return { row: size.rows - 1, column: size.columns - 1 };
382
- }
1
+ import * as Point from './point';
2
+
3
+ /** A two-dimensional array of given type T in rows and columns */
4
+ export type Matrix<T> = Array<Array<T | undefined>>;
5
+
6
+ /**
7
+ * Creates an empty matrix with given rows and columns
8
+ * @param rows - integer, the amount of rows the matrix should have
9
+ * @param columns - integer, the amount of columns the matrix should have
10
+ * @returns an empty matrix with given rows and columns
11
+ */
12
+ export function createEmpty<T>(rows: number, columns: number): Matrix<T> {
13
+ const matrix = Array(rows);
14
+ for (let i = 0; i < rows; i++) {
15
+ matrix[i] = Array(columns);
16
+ }
17
+ return matrix;
18
+ }
19
+
20
+ /** Gets the value at row and column of matrix. */
21
+ export function get<T>(point: Point.Point, matrix: Matrix<T>): T | undefined {
22
+ const columns = matrix[point.row];
23
+ if (columns === undefined) {
24
+ return undefined;
25
+ }
26
+ return columns[point.column];
27
+ }
28
+
29
+ /** Creates a slice of matrix from startPoint up to, but not including, endPoint. */
30
+ export function slice<T>(
31
+ startPoint: Point.Point,
32
+ endPoint: Point.Point,
33
+ matrix: Matrix<T>
34
+ ): Matrix<T> {
35
+ const sliced: Matrix<T> = [];
36
+ const columns = endPoint.column - startPoint.column;
37
+ for (let row = startPoint.row; row <= endPoint.row; row++) {
38
+ const slicedRow = row - startPoint.row;
39
+ sliced[slicedRow] = sliced[slicedRow] || Array(columns);
40
+ for (let column = startPoint.column; column <= endPoint.column; column++) {
41
+ sliced[slicedRow][column - startPoint.column] = get(
42
+ { row, column },
43
+ matrix
44
+ );
45
+ }
46
+ }
47
+ return sliced;
48
+ }
49
+
50
+ /** Sets the value at row and column of matrix. If a row doesn't exist, it's created. */
51
+
52
+ export function set<T>(
53
+ point: Point.Point,
54
+ value: T,
55
+ matrix: Matrix<T>
56
+ ): Matrix<T> {
57
+ // Create a shallow copy of the matrix
58
+ const nextMatrix = [...matrix];
59
+
60
+ // Ensure the first row exists (initialize if undefined)
61
+ const firstRow = matrix[0] ?? [];
62
+ const nextFirstRow = [...firstRow];
63
+
64
+ // Ensure the first row has enough columns to accommodate the specified column
65
+ if (nextFirstRow.length <= point.column) {
66
+ nextFirstRow.length = point.column + 1; // Extend the first row if needed
67
+ }
68
+
69
+ // Set the modified first row back into the matrix
70
+ nextMatrix[0] = nextFirstRow;
71
+
72
+ // Ensure the specified row exists (initialize if undefined)
73
+ const nextRow = matrix[point.row] ?? [];
74
+ const nextRowCopy = [...nextRow];
75
+
76
+ // Set the value at the specified point
77
+ nextRowCopy[point.column] = value;
78
+
79
+ // Set the modified row back into the matrix
80
+ nextMatrix[point.row] = nextRowCopy;
81
+
82
+ return nextMatrix;
83
+ }
84
+
85
+ /** Like Matrix.set() but mutates the matrix */
86
+
87
+ export function mutableSet<T>(
88
+ point: Point.Point,
89
+ value: T,
90
+ matrix: Matrix<T>
91
+ ): void {
92
+ // Ensure that the first row exists, if not, create it
93
+ let firstRow = matrix[0];
94
+ if (!firstRow) {
95
+ firstRow = [];
96
+ matrix[0] = firstRow;
97
+ }
98
+
99
+ // Ensure the row at point.row exists, if not, create it
100
+ let row = matrix[point.row];
101
+ if (!row) {
102
+ row = [];
103
+ matrix[point.row] = row;
104
+ }
105
+
106
+ // Ensure that the first row has enough columns
107
+ if (firstRow.length <= point.column) {
108
+ firstRow.length = point.column + 1; // Extend the first row if needed
109
+ }
110
+
111
+ // Set the value at the specified point
112
+ row[point.column] = value;
113
+ }
114
+
115
+ /** Removes the coordinate of matrix */
116
+ // export function unset<T>(point: Point.Point, matrix: Matrix<T>): Matrix<T> {
117
+ // if (!has(point, matrix)) {
118
+ // return matrix;
119
+ // }
120
+ // const nextMatrix = [...matrix];
121
+ // const nextRow = [...matrix[point.row]];
122
+
123
+ // // Avoid deleting to preserve first row length
124
+ // nextRow[point.column] = undefined;
125
+ // nextMatrix[point.row] = nextRow;
126
+
127
+ // return nextMatrix;
128
+ // }
129
+
130
+ export function unset<T>(point: Point.Point, matrix: Matrix<T>): Matrix<T> {
131
+ // Check if the point exists in the matrix
132
+ if (!has(point, matrix)) {
133
+ return matrix;
134
+ }
135
+
136
+ // Create a shallow copy of the matrix
137
+ const nextMatrix = [...matrix];
138
+
139
+ // Check if the row exists before trying to copy it
140
+ const currentRow = matrix[point.row];
141
+ if (currentRow) {
142
+ // Create a shallow copy of the row
143
+ const nextRow = [...currentRow];
144
+ // Avoid deleting to preserve first row length
145
+ nextRow[point.column] = undefined;
146
+
147
+ // Update the matrix with the modified row
148
+ nextMatrix[point.row] = nextRow;
149
+ }
150
+
151
+ return nextMatrix;
152
+ }
153
+
154
+ /** Creates an array of values by running each element in collection thru iteratee. */
155
+ export function map<T, T2>(
156
+ func: (value: T | undefined, point: Point.Point) => T2,
157
+ matrix: Matrix<T>
158
+ ): Matrix<T2> {
159
+ const newMatrix: Matrix<T2> = [];
160
+ for (const [point, value] of entries(matrix)) {
161
+ mutableSet(point, func(value, point), newMatrix);
162
+ }
163
+ return newMatrix;
164
+ }
165
+
166
+ /** Create an iterator over the cells in the matrix */
167
+ export function* entries<T>(
168
+ matrix: Matrix<T>
169
+ ): IterableIterator<[Point.Point, T | undefined]> {
170
+ for (const [row, values] of matrix.entries()) {
171
+ for (const [column, value] of values.entries()) {
172
+ const point = { row, column };
173
+ yield [point, value];
174
+ }
175
+ }
176
+ }
177
+
178
+ /**
179
+ * Converts all elements in row into a string separated by horizontalSeparator and each row string
180
+ * to string separated by verticalSeparator
181
+ */
182
+
183
+ export function join(
184
+ matrix: Matrix<unknown>,
185
+ horizontalSeparator = '\t',
186
+ verticalSeparator = '\n'
187
+ ): string {
188
+ let joined = '';
189
+ const { rows, columns } = getSize(matrix);
190
+
191
+ for (let row = 0; row < rows; row++) {
192
+ if (row) {
193
+ joined += verticalSeparator;
194
+ }
195
+
196
+ for (let column = 0; column < columns; column++) {
197
+ if (column) {
198
+ joined += horizontalSeparator;
199
+ }
200
+
201
+ // Ensure matrix[row] exists and matrix[row][column] is not undefined
202
+ const cellValue = matrix[row]?.[column];
203
+
204
+ // If cellValue is undefined, you can use a fallback value like an empty string
205
+ joined += cellValue !== undefined ? String(cellValue) : '';
206
+ }
207
+ }
208
+
209
+ return joined;
210
+ }
211
+
212
+ /**
213
+ * Parses a CSV separated by a horizontalSeparator and verticalSeparator into a
214
+ * Matrix using a transform function
215
+ */
216
+ export function split<T>(
217
+ csv: string,
218
+ transform: (value: string) => T,
219
+ horizontalSeparator = '\t',
220
+ verticalSeparator: string | RegExp = /\r\n|\n|\r/
221
+ ): Matrix<T> {
222
+ // Temporarily replace line breaks inside quotes
223
+ const replaced = csv.replace(/"([^"]*?)"/g, (_, p1) => {
224
+ return p1.replace(/\n/g, '\\n');
225
+ });
226
+ return replaced.split(verticalSeparator).map((row) =>
227
+ row
228
+ .split(horizontalSeparator)
229
+ .map((line) => {
230
+ // Restore original line breaks in each line
231
+ return line.replace(/\\n/g, '\n');
232
+ })
233
+ .map(transform)
234
+ );
235
+ }
236
+
237
+ /** Returns whether the point exists in the matrix or not. */
238
+ export function has(point: Point.Point, matrix: Matrix<unknown>): boolean {
239
+ const firstRow = matrix[0];
240
+ if (!firstRow) {
241
+ return false; // If first row is undefined, return false
242
+ }
243
+
244
+ // Perform validation checks
245
+ return (
246
+ point.row >= 0 &&
247
+ point.column >= 0 &&
248
+ Number.isInteger(point.row) &&
249
+ Number.isInteger(point.column) &&
250
+ point.column < firstRow.length &&
251
+ point.row < matrix.length
252
+ );
253
+ }
254
+
255
+ /** Counts of the rows and column in a matrix */
256
+ export type Size = {
257
+ /** Count of the rows in the matrix */
258
+ rows: number;
259
+ /** Count of the columns in the matrix */
260
+ columns: number;
261
+ };
262
+
263
+ /** Gets the count of rows and columns of given matrix */
264
+ export function getSize(matrix: Matrix<unknown>): Size {
265
+ return {
266
+ columns: getColumnsCount(matrix),
267
+ rows: getRowsCount(matrix),
268
+ };
269
+ }
270
+
271
+ /** Gets the count of rows of given matrix */
272
+ export function getRowsCount(matrix: Matrix<unknown>): number {
273
+ return matrix.length;
274
+ }
275
+
276
+ /** Gets the count of columns of given matrix */
277
+ export function getColumnsCount(matrix: Matrix<unknown>): number {
278
+ const firstRow = matrix[0];
279
+ return firstRow ? firstRow.length : 0;
280
+ }
281
+
282
+ /**
283
+ * Pads matrix with empty rows to match given total rows
284
+ * @param matrix - matrix to pad
285
+ * @param totalRows - number of rows the matrix should have
286
+ * @returns the updated matrix
287
+ */
288
+ export function padRows<T>(matrix: Matrix<T>, totalRows: number): Matrix<T> {
289
+ const { rows, columns } = getSize(matrix);
290
+
291
+ if (rows >= totalRows) {
292
+ return matrix;
293
+ }
294
+
295
+ const missingRows = totalRows - rows;
296
+ const emptyRow = Array(columns).fill(undefined);
297
+ const emptyRows = Array(missingRows).fill(emptyRow);
298
+ return [...matrix, ...emptyRows];
299
+ }
300
+
301
+ /**
302
+ * Pads matrix with empty columns to match given total columns
303
+ * @param matrix - matrix to pad
304
+ * @param size - minimum size of the matrix after padding.
305
+ * @returns the updated matrix
306
+ */
307
+ export function pad<T>(matrix: Matrix<T>, size: Size): Matrix<T> {
308
+ const { rows, columns } = getSize(matrix);
309
+
310
+ if (rows >= size.rows && columns >= size.columns) {
311
+ // Optimization, no padding required.
312
+ return matrix;
313
+ }
314
+
315
+ const resultSize: Size = {
316
+ rows: size.rows > rows ? size.rows : rows,
317
+ columns: size.columns > columns ? size.columns : columns,
318
+ };
319
+
320
+ let padded = [...matrix];
321
+ if (resultSize.columns > columns) {
322
+ const padColumns = resultSize.columns - columns;
323
+ padded = padded.map((row) => [
324
+ ...row,
325
+ ...Array(padColumns).fill(undefined),
326
+ ]);
327
+ }
328
+
329
+ if (resultSize.rows > rows) {
330
+ const padRows = resultSize.rows - rows;
331
+ const emptyRow = Array(resultSize.columns).fill(undefined);
332
+ padded = [...padded, ...Array(padRows).fill(emptyRow)];
333
+ }
334
+
335
+ return padded;
336
+ }
337
+
338
+ export function toArray<T>(matrix: Matrix<T>): T[];
339
+ export function toArray<T1, T2>(
340
+ matrix: Matrix<T1>,
341
+ transform: (cell: T1 | undefined, coords: Point.Point) => T2
342
+ ): T2[];
343
+
344
+ /**
345
+ * Flattens a matrix values to an array
346
+ * @param matrix - the matrix to flatten values from
347
+ * @param transform - optional transform function to apply to each value in the
348
+ * matrix
349
+ * @returns an array of the values from matrix, transformed if a transform
350
+ * function is passed
351
+ */
352
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
353
+
354
+ export function toArray<T1, T2>(
355
+ matrix: Matrix<T1>,
356
+ transform?: (cell: T1 | undefined, coords: Point.Point) => T2
357
+ ): T2[] {
358
+ const array: T2[] = [];
359
+
360
+ for (let row = 0; row < matrix.length; row++) {
361
+ const currentRow = matrix[row];
362
+
363
+ // Ensure the row is not undefined
364
+ if (currentRow !== undefined) {
365
+ for (let column = 0; column < currentRow.length; column++) {
366
+ const value = currentRow[column];
367
+ // If transform is provided, apply it; otherwise, use the value as is
368
+ array.push(
369
+ transform ? transform(value, { row, column }) : (value as T2)
370
+ );
371
+ }
372
+ }
373
+ }
374
+
375
+ return array;
376
+ }
377
+
378
+ /** Returns the maximum point in the matrix */
379
+ export function maxPoint(matrix: Matrix<unknown>): Point.Point {
380
+ const size = getSize(matrix);
381
+ return { row: size.rows - 1, column: size.columns - 1 };
382
+ }