pixel-react 1.8.1 → 1.8.3

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