pixel-react 1.5.4 → 1.5.5

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