@importcsv/react 0.2.0 → 0.2.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 (352) hide show
  1. package/README.md +100 -427
  2. package/build/bundled/bundled-styles.d.ts +1 -0
  3. package/build/bundled/components/CSVImporter/index.d.ts +5 -0
  4. package/build/{importer → bundled/importer}/components/Box/types/index.d.ts +1 -2
  5. package/build/{importer → bundled/importer}/components/Checkbox/types/index.d.ts +1 -1
  6. package/build/{importer → bundled/importer}/components/Input/types/index.d.ts +1 -1
  7. package/build/bundled/importer/components/Root/index.d.ts +10 -0
  8. package/build/bundled/importer/components/StepLayout/index.d.ts +18 -0
  9. package/build/{importer → bundled/importer}/components/Table/index.d.ts +2 -2
  10. package/build/bundled/importer/components/Tooltip/types/index.d.ts +11 -0
  11. package/build/bundled/importer/components/UploaderWrapper/NativeDropzone.d.ts +11 -0
  12. package/build/bundled/importer/components/VirtualTable/index.d.ts +17 -0
  13. package/build/bundled/importer/components/ui/alert.d.ts +10 -0
  14. package/build/{importer → bundled/importer}/components/ui/button.d.ts +4 -4
  15. package/build/bundled/importer/components/ui/card.d.ts +19 -0
  16. package/build/bundled/importer/components/ui/checkbox.d.ts +7 -0
  17. package/build/bundled/importer/components/ui/dialog.d.ts +38 -0
  18. package/build/bundled/importer/components/ui/flex.d.ts +23 -0
  19. package/build/bundled/importer/components/ui/input.d.ts +6 -0
  20. package/build/bundled/importer/components/ui/select.d.ts +13 -0
  21. package/build/bundled/importer/components/ui/switch.d.ts +7 -0
  22. package/build/bundled/importer/components/ui/toast.d.ts +22 -0
  23. package/build/bundled/importer/components/ui/tooltip.d.ts +20 -0
  24. package/build/{importer → bundled/importer}/components/ui/use-toast.d.ts +5 -3
  25. package/build/{importer → bundled/importer}/features/uploader/types/index.d.ts +1 -1
  26. package/build/bundled/importer/features/validation/components/TransformPanel.d.ts +18 -0
  27. package/build/{importer → bundled/importer}/hooks/useEventListener.d.ts +1 -1
  28. package/build/{importer → bundled/importer}/hooks/useIsomorphicLayoutEffect.d.ts +1 -1
  29. package/build/bundled/importer/providers/Theme.d.ts +10 -0
  30. package/build/bundled/importer/providers/index.d.ts +5 -0
  31. package/build/bundled/importer/providers/types/index.d.ts +10 -0
  32. package/build/bundled/importer/theme/index.d.ts +8 -0
  33. package/build/bundled/importer/theme/presets.d.ts +314 -0
  34. package/build/bundled/importer/theme/runtime.d.ts +62 -0
  35. package/build/bundled/importer/theme/styles.d.ts +120 -0
  36. package/build/bundled/importer/utils/errorAnalysis.d.ts +25 -0
  37. package/build/bundled/importer/utils/getStringLengthOfChildren.d.ts +2 -0
  38. package/build/bundled/importer/utils/themeUtils.d.ts +21 -0
  39. package/build/{index.d.ts → bundled/index.d.ts} +1 -1
  40. package/build/bundled/index.esm.js +8367 -0
  41. package/build/bundled/index.esm.js.map +1 -0
  42. package/build/bundled/index.js +112 -0
  43. package/build/bundled/index.js.map +1 -0
  44. package/build/bundled/index.umd.js +112 -0
  45. package/build/bundled/index.umd.js.map +1 -0
  46. package/build/bundled/js.d.ts +12 -0
  47. package/build/{types → bundled/types}/index.d.ts +27 -0
  48. package/build/bundled/types/theme.d.ts +153 -0
  49. package/build/bundled/validation/transformationStages.d.ts +26 -0
  50. package/build/bundled/validation/transformer.d.ts +17 -0
  51. package/build/preact/bundled-styles.d.ts +1 -0
  52. package/build/preact/components/CSVImporter/index.d.ts +5 -0
  53. package/build/preact/i18n/de.d.ts +32 -0
  54. package/build/preact/i18n/es.d.ts +32 -0
  55. package/build/preact/i18n/fr.d.ts +32 -0
  56. package/build/preact/i18n/i18n.d.ts +6 -0
  57. package/build/preact/i18n/it.d.ts +32 -0
  58. package/build/preact/i18n/useTranslation.d.ts +9 -0
  59. package/build/preact/importer/components/Box/index.d.ts +2 -0
  60. package/build/preact/importer/components/Box/types/index.d.ts +5 -0
  61. package/build/preact/importer/components/Checkbox/index.d.ts +2 -0
  62. package/build/preact/importer/components/Checkbox/types/index.d.ts +4 -0
  63. package/build/preact/importer/components/Errors/index.d.ts +4 -0
  64. package/build/preact/importer/components/Input/index.d.ts +2 -0
  65. package/build/preact/importer/components/Input/types/index.d.ts +18 -0
  66. package/build/preact/importer/components/Root/index.d.ts +10 -0
  67. package/build/preact/importer/components/StepLayout/index.d.ts +18 -0
  68. package/build/preact/importer/components/Stepper/hooks/useStepper.d.ts +2 -0
  69. package/build/preact/importer/components/Stepper/index.d.ts +2 -0
  70. package/build/preact/importer/components/Stepper/types/index.d.ts +14 -0
  71. package/build/preact/importer/components/Table/index.d.ts +9 -0
  72. package/build/preact/importer/components/ToggleFilter/index.d.ts +3 -0
  73. package/build/preact/importer/components/ToggleFilter/types/index.d.ts +11 -0
  74. package/build/preact/importer/components/Tooltip/index.d.ts +2 -0
  75. package/build/preact/importer/components/Tooltip/types/index.d.ts +11 -0
  76. package/build/preact/importer/components/UploaderWrapper/NativeDropzone.d.ts +11 -0
  77. package/build/preact/importer/components/UploaderWrapper/UploaderWrapper.d.ts +2 -0
  78. package/build/preact/importer/components/UploaderWrapper/types/index.d.ts +2 -0
  79. package/build/preact/importer/components/VirtualTable/index.d.ts +17 -0
  80. package/build/preact/importer/components/ui/alert.d.ts +10 -0
  81. package/build/preact/importer/components/ui/button.d.ts +12 -0
  82. package/build/preact/importer/components/ui/card.d.ts +19 -0
  83. package/build/preact/importer/components/ui/checkbox.d.ts +7 -0
  84. package/build/preact/importer/components/ui/dialog.d.ts +38 -0
  85. package/build/preact/importer/components/ui/flex.d.ts +23 -0
  86. package/build/preact/importer/components/ui/input.d.ts +6 -0
  87. package/build/preact/importer/components/ui/select.d.ts +13 -0
  88. package/build/preact/importer/components/ui/switch.d.ts +7 -0
  89. package/build/preact/importer/components/ui/toast.d.ts +22 -0
  90. package/build/preact/importer/components/ui/toaster.d.ts +1 -0
  91. package/build/preact/importer/components/ui/tooltip.d.ts +20 -0
  92. package/build/preact/importer/components/ui/use-toast.d.ts +46 -0
  93. package/build/preact/importer/features/complete/index.d.ts +2 -0
  94. package/build/preact/importer/features/complete/types/index.d.ts +5 -0
  95. package/build/preact/importer/features/configure-import/index.d.ts +13 -0
  96. package/build/preact/importer/features/configure-import/types/index.d.ts +13 -0
  97. package/build/preact/importer/features/main/hooks/useMutableLocalStorage.d.ts +1 -0
  98. package/build/preact/importer/features/main/hooks/useStepNavigation.d.ts +17 -0
  99. package/build/preact/importer/features/main/index.d.ts +2 -0
  100. package/build/preact/importer/features/main/types/index.d.ts +16 -0
  101. package/build/preact/importer/features/map-columns/components/DropDownFields.d.ts +21 -0
  102. package/build/preact/importer/features/map-columns/hooks/useMapColumnsTable.d.ts +16 -0
  103. package/build/preact/importer/features/map-columns/index.d.ts +2 -0
  104. package/build/preact/importer/features/map-columns/types/index.d.ts +16 -0
  105. package/build/preact/importer/features/row-selection/index.d.ts +2 -0
  106. package/build/preact/importer/features/row-selection/types/index.d.ts +8 -0
  107. package/build/preact/importer/features/uploader/hooks/useTemplateTable.d.ts +10 -0
  108. package/build/preact/importer/features/uploader/index.d.ts +2 -0
  109. package/build/preact/importer/features/uploader/types/index.d.ts +9 -0
  110. package/build/preact/importer/features/validation/Validation.d.ts +2 -0
  111. package/build/preact/importer/features/validation/components/TransformModal.d.ts +18 -0
  112. package/build/preact/importer/features/validation/components/TransformPanel.d.ts +18 -0
  113. package/build/preact/importer/features/validation/index.d.ts +1 -0
  114. package/build/preact/importer/features/validation/types.d.ts +32 -0
  115. package/build/preact/importer/hooks/useClickOutside.d.ts +1 -0
  116. package/build/preact/importer/hooks/useCustomStyles.d.ts +1 -0
  117. package/build/preact/importer/hooks/useEventListener.d.ts +4 -0
  118. package/build/preact/importer/hooks/useIsomorphicLayoutEffect.d.ts +3 -0
  119. package/build/preact/importer/hooks/useRect.d.ts +12 -0
  120. package/build/preact/importer/hooks/useWindowSize.d.ts +1 -0
  121. package/build/preact/importer/providers/Theme.d.ts +10 -0
  122. package/build/preact/importer/providers/index.d.ts +5 -0
  123. package/build/preact/importer/providers/types/index.d.ts +10 -0
  124. package/build/preact/importer/services/api.d.ts +1 -0
  125. package/build/preact/importer/services/mapping.d.ts +31 -0
  126. package/build/preact/importer/services/transformation.d.ts +70 -0
  127. package/build/preact/importer/settings/theme/colors.d.ts +4 -0
  128. package/build/preact/importer/settings/theme/index.d.ts +2 -0
  129. package/build/preact/importer/settings/theme/sizes.d.ts +7 -0
  130. package/build/preact/importer/stores/theme.d.ts +17 -0
  131. package/build/preact/importer/theme/index.d.ts +8 -0
  132. package/build/preact/importer/theme/presets.d.ts +314 -0
  133. package/build/preact/importer/theme/runtime.d.ts +62 -0
  134. package/build/preact/importer/theme/styles.d.ts +120 -0
  135. package/build/preact/importer/types/index.d.ts +9 -0
  136. package/build/preact/importer/utils/colorUtils.d.ts +48 -0
  137. package/build/preact/importer/utils/errorAnalysis.d.ts +25 -0
  138. package/build/preact/importer/utils/getStringLengthOfChildren.d.ts +2 -0
  139. package/build/preact/importer/utils/stringSimilarity.d.ts +1 -0
  140. package/build/preact/importer/utils/template.d.ts +2 -0
  141. package/build/preact/importer/utils/themeUtils.d.ts +21 -0
  142. package/build/preact/importer/utils/utils.d.ts +19 -0
  143. package/build/preact/index.d.ts +4 -0
  144. package/build/preact/index.esm.js +7548 -0
  145. package/build/preact/index.esm.js.map +1 -0
  146. package/build/preact/index.js +112 -0
  147. package/build/preact/index.js.map +1 -0
  148. package/build/preact/js.d.ts +12 -0
  149. package/build/preact/settings/defaults.d.ts +3 -0
  150. package/build/preact/styles.d.ts +1 -0
  151. package/build/preact/types/index.d.ts +132 -0
  152. package/build/preact/types/theme.d.ts +153 -0
  153. package/build/preact/utils/cn.d.ts +6 -0
  154. package/build/preact/validation/transformationStages.d.ts +26 -0
  155. package/build/preact/validation/transformer.d.ts +17 -0
  156. package/build/preact/validation/validator.d.ts +23 -0
  157. package/build/react/bundled-styles.d.ts +1 -0
  158. package/build/react/components/CSVImporter/index.d.ts +5 -0
  159. package/build/react/i18n/de.d.ts +32 -0
  160. package/build/react/i18n/es.d.ts +32 -0
  161. package/build/react/i18n/fr.d.ts +32 -0
  162. package/build/react/i18n/i18n.d.ts +6 -0
  163. package/build/react/i18n/it.d.ts +32 -0
  164. package/build/react/i18n/useTranslation.d.ts +9 -0
  165. package/build/react/importer/components/Box/index.d.ts +2 -0
  166. package/build/react/importer/components/Box/types/index.d.ts +5 -0
  167. package/build/react/importer/components/Checkbox/index.d.ts +2 -0
  168. package/build/react/importer/components/Checkbox/types/index.d.ts +4 -0
  169. package/build/react/importer/components/Errors/index.d.ts +4 -0
  170. package/build/react/importer/components/Input/index.d.ts +2 -0
  171. package/build/react/importer/components/Input/types/index.d.ts +18 -0
  172. package/build/react/importer/components/Root/index.d.ts +10 -0
  173. package/build/react/importer/components/StepLayout/index.d.ts +18 -0
  174. package/build/react/importer/components/Stepper/hooks/useStepper.d.ts +2 -0
  175. package/build/react/importer/components/Stepper/index.d.ts +2 -0
  176. package/build/react/importer/components/Stepper/types/index.d.ts +14 -0
  177. package/build/react/importer/components/Table/index.d.ts +9 -0
  178. package/build/react/importer/components/ToggleFilter/index.d.ts +3 -0
  179. package/build/react/importer/components/ToggleFilter/types/index.d.ts +11 -0
  180. package/build/react/importer/components/Tooltip/index.d.ts +2 -0
  181. package/build/react/importer/components/Tooltip/types/index.d.ts +11 -0
  182. package/build/react/importer/components/UploaderWrapper/NativeDropzone.d.ts +11 -0
  183. package/build/react/importer/components/UploaderWrapper/UploaderWrapper.d.ts +2 -0
  184. package/build/react/importer/components/UploaderWrapper/types/index.d.ts +2 -0
  185. package/build/react/importer/components/VirtualTable/index.d.ts +17 -0
  186. package/build/react/importer/components/ui/alert.d.ts +10 -0
  187. package/build/react/importer/components/ui/button.d.ts +12 -0
  188. package/build/react/importer/components/ui/card.d.ts +19 -0
  189. package/build/react/importer/components/ui/checkbox.d.ts +7 -0
  190. package/build/react/importer/components/ui/dialog.d.ts +38 -0
  191. package/build/react/importer/components/ui/flex.d.ts +23 -0
  192. package/build/react/importer/components/ui/input.d.ts +6 -0
  193. package/build/react/importer/components/ui/select.d.ts +13 -0
  194. package/build/react/importer/components/ui/switch.d.ts +7 -0
  195. package/build/react/importer/components/ui/toast.d.ts +22 -0
  196. package/build/react/importer/components/ui/toaster.d.ts +1 -0
  197. package/build/react/importer/components/ui/tooltip.d.ts +20 -0
  198. package/build/react/importer/components/ui/use-toast.d.ts +46 -0
  199. package/build/react/importer/features/complete/index.d.ts +2 -0
  200. package/build/react/importer/features/complete/types/index.d.ts +5 -0
  201. package/build/react/importer/features/configure-import/index.d.ts +13 -0
  202. package/build/react/importer/features/configure-import/types/index.d.ts +13 -0
  203. package/build/react/importer/features/main/hooks/useMutableLocalStorage.d.ts +1 -0
  204. package/build/react/importer/features/main/hooks/useStepNavigation.d.ts +17 -0
  205. package/build/react/importer/features/main/index.d.ts +2 -0
  206. package/build/react/importer/features/main/types/index.d.ts +16 -0
  207. package/build/react/importer/features/map-columns/components/DropDownFields.d.ts +21 -0
  208. package/build/react/importer/features/map-columns/hooks/useMapColumnsTable.d.ts +16 -0
  209. package/build/react/importer/features/map-columns/index.d.ts +2 -0
  210. package/build/react/importer/features/map-columns/types/index.d.ts +16 -0
  211. package/build/react/importer/features/row-selection/index.d.ts +2 -0
  212. package/build/react/importer/features/row-selection/types/index.d.ts +8 -0
  213. package/build/react/importer/features/uploader/hooks/useTemplateTable.d.ts +10 -0
  214. package/build/react/importer/features/uploader/index.d.ts +2 -0
  215. package/build/react/importer/features/uploader/types/index.d.ts +9 -0
  216. package/build/react/importer/features/validation/Validation.d.ts +2 -0
  217. package/build/react/importer/features/validation/components/TransformModal.d.ts +18 -0
  218. package/build/react/importer/features/validation/components/TransformPanel.d.ts +18 -0
  219. package/build/react/importer/features/validation/index.d.ts +1 -0
  220. package/build/react/importer/features/validation/types.d.ts +32 -0
  221. package/build/react/importer/hooks/useClickOutside.d.ts +1 -0
  222. package/build/react/importer/hooks/useCustomStyles.d.ts +1 -0
  223. package/build/react/importer/hooks/useEventListener.d.ts +4 -0
  224. package/build/react/importer/hooks/useIsomorphicLayoutEffect.d.ts +3 -0
  225. package/build/react/importer/hooks/useRect.d.ts +12 -0
  226. package/build/react/importer/hooks/useWindowSize.d.ts +1 -0
  227. package/build/react/importer/providers/Theme.d.ts +10 -0
  228. package/build/react/importer/providers/index.d.ts +5 -0
  229. package/build/react/importer/providers/types/index.d.ts +10 -0
  230. package/build/react/importer/services/api.d.ts +1 -0
  231. package/build/react/importer/services/mapping.d.ts +31 -0
  232. package/build/react/importer/services/transformation.d.ts +70 -0
  233. package/build/react/importer/settings/theme/colors.d.ts +4 -0
  234. package/build/react/importer/settings/theme/index.d.ts +2 -0
  235. package/build/react/importer/settings/theme/sizes.d.ts +7 -0
  236. package/build/react/importer/stores/theme.d.ts +17 -0
  237. package/build/react/importer/theme/index.d.ts +8 -0
  238. package/build/react/importer/theme/presets.d.ts +314 -0
  239. package/build/react/importer/theme/runtime.d.ts +62 -0
  240. package/build/react/importer/theme/styles.d.ts +120 -0
  241. package/build/react/importer/types/index.d.ts +9 -0
  242. package/build/react/importer/utils/colorUtils.d.ts +48 -0
  243. package/build/react/importer/utils/errorAnalysis.d.ts +25 -0
  244. package/build/react/importer/utils/getStringLengthOfChildren.d.ts +2 -0
  245. package/build/react/importer/utils/stringSimilarity.d.ts +1 -0
  246. package/build/react/importer/utils/template.d.ts +2 -0
  247. package/build/react/importer/utils/themeUtils.d.ts +21 -0
  248. package/build/react/importer/utils/utils.d.ts +19 -0
  249. package/build/react/index.d.ts +4 -0
  250. package/build/react/index.esm.js +7351 -0
  251. package/build/react/index.esm.js.map +1 -0
  252. package/build/react/index.js +112 -0
  253. package/build/react/index.js.map +1 -0
  254. package/build/react/js.d.ts +12 -0
  255. package/build/react/settings/defaults.d.ts +3 -0
  256. package/build/react/styles.d.ts +1 -0
  257. package/build/react/types/index.d.ts +132 -0
  258. package/build/react/types/theme.d.ts +153 -0
  259. package/build/react/utils/cn.d.ts +6 -0
  260. package/build/react/validation/transformationStages.d.ts +26 -0
  261. package/build/react/validation/transformer.d.ts +17 -0
  262. package/build/react/validation/validator.d.ts +23 -0
  263. package/package.json +63 -31
  264. package/build/bundle.css +0 -1
  265. package/build/bundled-styles.d.ts +0 -1
  266. package/build/components/CSVImporter/index.d.ts +0 -32
  267. package/build/importer/components/IframeWrapper/index.d.ts +0 -25
  268. package/build/importer/components/ImporterLayout.d.ts +0 -15
  269. package/build/importer/components/Table/types/index.d.ts +0 -42
  270. package/build/importer/components/Tooltip/types/index.d.ts +0 -11
  271. package/build/importer/components/ui/alert.d.ts +0 -8
  272. package/build/importer/components/ui/card.d.ts +0 -8
  273. package/build/importer/components/ui/checkbox.d.ts +0 -4
  274. package/build/importer/components/ui/dialog.d.ts +0 -19
  275. package/build/importer/components/ui/flex.d.ts +0 -14
  276. package/build/importer/components/ui/input.d.ts +0 -5
  277. package/build/importer/components/ui/select.d.ts +0 -13
  278. package/build/importer/components/ui/switch.d.ts +0 -4
  279. package/build/importer/components/ui/toast.d.ts +0 -15
  280. package/build/importer/components/ui/tooltip.d.ts +0 -13
  281. package/build/importer/hooks/useDemoData.d.ts +0 -16
  282. package/build/importer/hooks/useImporterSchema.d.ts +0 -21
  283. package/build/importer/providers/Theme.d.ts +0 -5
  284. package/build/importer/providers/index.d.ts +0 -5
  285. package/build/importer/providers/types/index.d.ts +0 -4
  286. package/build/importer/services/dataProcessor.d.ts +0 -38
  287. package/build/importer/utils/getStringLengthOfChildren.d.ts +0 -2
  288. package/build/index.esm.js +0 -14394
  289. package/build/index.esm.js.map +0 -1
  290. package/build/index.js +0 -327
  291. package/build/index.js.map +0 -1
  292. package/build/js.d.ts +0 -39
  293. package/build/validation/transformer.d.ts +0 -33
  294. /package/build/{i18n → bundled/i18n}/de.d.ts +0 -0
  295. /package/build/{i18n → bundled/i18n}/es.d.ts +0 -0
  296. /package/build/{i18n → bundled/i18n}/fr.d.ts +0 -0
  297. /package/build/{i18n → bundled/i18n}/i18n.d.ts +0 -0
  298. /package/build/{i18n → bundled/i18n}/it.d.ts +0 -0
  299. /package/build/{i18n → bundled/i18n}/useTranslation.d.ts +0 -0
  300. /package/build/{importer → bundled/importer}/components/Box/index.d.ts +0 -0
  301. /package/build/{importer → bundled/importer}/components/Checkbox/index.d.ts +0 -0
  302. /package/build/{importer → bundled/importer}/components/Errors/index.d.ts +0 -0
  303. /package/build/{importer → bundled/importer}/components/Input/index.d.ts +0 -0
  304. /package/build/{importer → bundled/importer}/components/Stepper/hooks/useStepper.d.ts +0 -0
  305. /package/build/{importer → bundled/importer}/components/Stepper/index.d.ts +0 -0
  306. /package/build/{importer → bundled/importer}/components/Stepper/types/index.d.ts +0 -0
  307. /package/build/{importer → bundled/importer}/components/ToggleFilter/index.d.ts +0 -0
  308. /package/build/{importer → bundled/importer}/components/ToggleFilter/types/index.d.ts +0 -0
  309. /package/build/{importer → bundled/importer}/components/Tooltip/index.d.ts +0 -0
  310. /package/build/{importer → bundled/importer}/components/UploaderWrapper/UploaderWrapper.d.ts +0 -0
  311. /package/build/{importer → bundled/importer}/components/UploaderWrapper/types/index.d.ts +0 -0
  312. /package/build/{importer → bundled/importer}/components/ui/toaster.d.ts +0 -0
  313. /package/build/{importer → bundled/importer}/features/complete/index.d.ts +0 -0
  314. /package/build/{importer → bundled/importer}/features/complete/types/index.d.ts +0 -0
  315. /package/build/{importer → bundled/importer}/features/configure-import/index.d.ts +0 -0
  316. /package/build/{importer → bundled/importer}/features/configure-import/types/index.d.ts +0 -0
  317. /package/build/{importer → bundled/importer}/features/main/hooks/useMutableLocalStorage.d.ts +0 -0
  318. /package/build/{importer → bundled/importer}/features/main/hooks/useStepNavigation.d.ts +0 -0
  319. /package/build/{importer → bundled/importer}/features/main/index.d.ts +0 -0
  320. /package/build/{importer → bundled/importer}/features/main/types/index.d.ts +0 -0
  321. /package/build/{importer → bundled/importer}/features/map-columns/components/DropDownFields.d.ts +0 -0
  322. /package/build/{importer → bundled/importer}/features/map-columns/hooks/useMapColumnsTable.d.ts +0 -0
  323. /package/build/{importer → bundled/importer}/features/map-columns/index.d.ts +0 -0
  324. /package/build/{importer → bundled/importer}/features/map-columns/types/index.d.ts +0 -0
  325. /package/build/{importer → bundled/importer}/features/row-selection/index.d.ts +0 -0
  326. /package/build/{importer → bundled/importer}/features/row-selection/types/index.d.ts +0 -0
  327. /package/build/{importer → bundled/importer}/features/uploader/hooks/useTemplateTable.d.ts +0 -0
  328. /package/build/{importer → bundled/importer}/features/uploader/index.d.ts +0 -0
  329. /package/build/{importer → bundled/importer}/features/validation/Validation.d.ts +0 -0
  330. /package/build/{importer → bundled/importer}/features/validation/components/TransformModal.d.ts +0 -0
  331. /package/build/{importer → bundled/importer}/features/validation/index.d.ts +0 -0
  332. /package/build/{importer → bundled/importer}/features/validation/types.d.ts +0 -0
  333. /package/build/{importer → bundled/importer}/hooks/useClickOutside.d.ts +0 -0
  334. /package/build/{importer → bundled/importer}/hooks/useCustomStyles.d.ts +0 -0
  335. /package/build/{importer → bundled/importer}/hooks/useRect.d.ts +0 -0
  336. /package/build/{importer → bundled/importer}/hooks/useWindowSize.d.ts +0 -0
  337. /package/build/{importer → bundled/importer}/services/api.d.ts +0 -0
  338. /package/build/{importer → bundled/importer}/services/mapping.d.ts +0 -0
  339. /package/build/{importer → bundled/importer}/services/transformation.d.ts +0 -0
  340. /package/build/{importer → bundled/importer}/settings/theme/colors.d.ts +0 -0
  341. /package/build/{importer → bundled/importer}/settings/theme/index.d.ts +0 -0
  342. /package/build/{importer → bundled/importer}/settings/theme/sizes.d.ts +0 -0
  343. /package/build/{importer → bundled/importer}/stores/theme.d.ts +0 -0
  344. /package/build/{importer → bundled/importer}/types/index.d.ts +0 -0
  345. /package/build/{importer → bundled/importer}/utils/colorUtils.d.ts +0 -0
  346. /package/build/{importer → bundled/importer}/utils/stringSimilarity.d.ts +0 -0
  347. /package/build/{importer → bundled/importer}/utils/template.d.ts +0 -0
  348. /package/build/{importer → bundled/importer}/utils/utils.d.ts +0 -0
  349. /package/build/{settings → bundled/settings}/defaults.d.ts +0 -0
  350. /package/build/{styles.d.ts → bundled/styles.d.ts} +0 -0
  351. /package/build/{utils → bundled/utils}/cn.d.ts +0 -0
  352. /package/build/{validation → bundled/validation}/validator.d.ts +0 -0
package/README.md CHANGED
@@ -1,480 +1,153 @@
1
1
  <div align="center">
2
2
 
3
- # ImportCSV Frontend
3
+ # @importcsv/react
4
4
 
5
- <em>React-based embeddable CSV and spreadsheet importer with streamlined column mapping</em>
5
+ **The modern CSV importer for React applications**
6
6
 
7
- [![React](https://img.shields.io/badge/React-18.0+-61DAFB?logo=react&logoColor=white)](https://reactjs.org/)
8
- [![TypeScript](https://img.shields.io/badge/TypeScript-4.9+-3178C6?logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
9
- [![License](https://img.shields.io/badge/License-MIT-blue.svg)](./LICENSE)
7
+ [![npm version](https://img.shields.io/npm/v/@importcsv/react.svg)](https://www.npmjs.com/package/@importcsv/react)
8
+ [![npm downloads](https://img.shields.io/npm/dm/@importcsv/react.svg)](https://www.npmjs.com/package/@importcsv/react)
9
+ [![bundle size](https://img.shields.io/bundlephobia/minzip/@importcsv/react)](https://bundlephobia.com/package/@importcsv/react)
10
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](./LICENSE)
10
11
 
11
- </div>
12
-
13
- ## 🚀 Overview
14
-
15
- The ImportCSV Frontend provides a polished, user-friendly interface for importing CSV, XLS, XLSX, and TSV files. It can be embedded in any React application and offers intuitive column mapping functionality.
16
-
17
- > **Note**: This component was forked from [TableFlow's CSV Import](https://github.com/tableflowhq/csv-import) and enhanced with additional features.
18
-
19
- ## ✨ Key Features
20
-
21
- - **📊 Multi-Format Support** - Import from CSV, XLS, XLSX, and TSV files
22
- - **🔄 Smart Column Mapping** - Intuitive interface for mapping columns
23
- - **🔍 Data Validation** - Immediate feedback on data quality issues
24
- - **🎨 Customizable UI** - Theming and component customization options
25
- - **🔌 Flexible Integration** - Available as React component or vanilla JavaScript
26
- - **📦 Optimized Bundle Size** - Excel support is optional to keep bundle small
27
-
28
- ## 🏗️ Architecture
12
+ [Live Demo](https://demo.importcsv.com) • [Documentation](https://docs.importcsv.com)
29
13
 
30
- The frontend is built as a React library with TypeScript and can be used in two ways:
31
-
32
- 1. **React Component** - Direct integration into React applications
33
- 2. **JavaScript SDK** - For use in non-React applications
34
-
35
- ## 🛠️ Technical Details
36
-
37
- ### Key Components
38
-
39
- - **CSVImporter** - Main React component for the import flow
40
- - **ColumnMapper** - Handles column mapping with smart suggestions
41
- - **DataValidator** - Validates data against schema requirements
42
- - **ImportSummary** - Displays import results and validation issues
14
+ </div>
43
15
 
44
- ## 🚀 Getting Started
16
+ ## Stop wrestling with CSV imports
45
17
 
46
- ### Installation
18
+ Every developer has been there. Users upload CSVs with columns in the wrong order, dates in different formats, and data that needs validation. You end up building the same import flow again and again.
47
19
 
48
- Use NPM or Yarn to install the SDK:
20
+ **ImportCSV handles it all for you:**
21
+ - 🎯 **Smart column mapping** - AI-powered field matching
22
+ - ✨ **One-click error fixing** - Transform and validate data automatically
23
+ - ⚡ **10,000+ rows?** No problem - virtual scrolling keeps it fast
24
+ - 📦 **Tiny footprint** - ~100KB gzipped, including styles
49
25
 
50
- **NPM**
26
+ ## Quick Start
51
27
 
52
28
  ```bash
53
29
  npm install @importcsv/react
54
30
  ```
55
31
 
56
- **For Excel Support (Optional)**
57
-
58
- Excel file support (.xls, .xlsx) requires an additional package:
59
-
60
- ```bash
61
- npm install xlsx
62
- ```
63
-
64
- > **Note**: The xlsx package is ~850KB. It's only required if you need Excel support. CSV files work without it.
65
-
66
- **Yarn**
67
-
68
- ```bash
69
- yarn add @importcsv/react
70
-
71
- # For Excel support (optional)
72
- yarn add xlsx
73
- ```
74
-
75
- ### Basic Usage
76
-
77
- #### Using React
78
-
79
- ```javascript
80
- import { CSVImporter } from "csv-import-react";
81
- import { useState } from "react";
32
+ ```tsx
33
+ import { CSVImporter } from '@importcsv/react';
34
+ import { useState } from 'react';
82
35
 
83
- function MyComponent() {
36
+ function App() {
84
37
  const [isOpen, setIsOpen] = useState(false);
85
38
 
86
39
  return (
87
40
  <>
88
- <button onClick={() => setIsOpen(true)}>Open CSV Importer</button>
41
+ <button onClick={() => setIsOpen(true)}>Import CSV</button>
89
42
 
90
43
  <CSVImporter
91
44
  modalIsOpen={isOpen}
92
45
  modalOnCloseTriggered={() => setIsOpen(false)}
93
- darkMode={true}
94
- onComplete={(data) => console.log(data)}
95
- template={{
96
- columns: [
97
- {
98
- name: "First Name",
99
- key: "first_name",
100
- required: true,
101
- description: "The first name of the user",
102
- suggested_mappings: ["First", "Name"],
103
- },
104
- {
105
- name: "Age",
106
- data_type: "number",
107
- },
108
- ],
109
- }}
46
+ onComplete={(data) => console.log(data.rows)}
47
+ columns={[
48
+ { id: 'name', label: 'Name', validators: [{ type: 'required' }] },
49
+ { id: 'email', label: 'Email', type: 'email' }
50
+ ]}
110
51
  />
111
52
  </>
112
53
  );
113
54
  }
114
55
  ```
115
56
 
116
- #### Using JavaScript
57
+ **That's it!** Your users get a polished import experience with column mapping, validation, and error handling.
117
58
 
118
- ```html
119
- <head>
120
- <script src="https://unpkg.com/csv-import-js@latest/index.js"></script>
121
- </head>
122
- <body>
123
- <button id="uploadButton">Open CSV Importer</button>
124
- <div id="app"></div>
125
- <script>
126
- const importer = CSVImporter.createCSVImporter({
127
- domElement: document.getElementById("app"),
128
- modalOnCloseTriggered: () => importer?.closeModal(),
129
- onComplete: (data) => console.log(data),
130
- darkMode: true,
131
- template: {
132
- columns: [
133
- {
134
- name: "First Name",
135
- key: "first_name",
136
- required: true,
137
- description: "The first name of the user",
138
- suggested_mappings: ["First", "Name"],
139
- },
140
- {
141
- name: "Age",
142
- data_type: "number",
143
- },
144
- ],
145
- },
146
- });
147
-
148
- const uploadButton = document.getElementById("uploadButton");
149
- uploadButton.addEventListener("click", () => {
150
- importer?.showModal();
151
- });
152
- </script>
153
- </body>
154
- ```
59
+ ## Features
155
60
 
156
- ## SDK Reference
61
+ ### 🚀 Core
62
+ - CSV, TSV, XLS, XLSX support (Excel support optional)
63
+ - Automatic encoding detection
64
+ - Header row detection
65
+ - Virtual scrolling for large files
157
66
 
158
- ### isModal (_boolean_, default: `true`)
67
+ ### 🎯 Smart Mapping
68
+ - AI-powered column matching
69
+ - Fuzzy string matching
159
70
 
160
- When set to `true` (default value), the importer will behave as a modal with its open state controlled by `modalIsOpen`. When set to `false`, the importer will be embedded directly in your page.
71
+ ### Data Transformation
72
+ - **"Fix All Errors" button** - AI analyzes and fixes validation errors
73
+ - Natural language transformations ("convert dates to MM/DD/YYYY")
74
+ - Built-in transformers (capitalize, normalize phone, parse dates)
75
+ - Custom transformation functions
161
76
 
162
- ### modalIsOpen (_boolean_, default: `false`)
77
+ ### Validation
78
+ - Required, unique, regex, min/max
79
+ - Email, phone, date formats
80
+ - Custom validators
81
+ - Real-time error display
163
82
 
164
- Only used when `isModal` is `true`: Controls the importer modal being open or closed.
165
- \
166
- **React SDK Only**: For the JavaScript SDK, use `.showModal()` and `.closeModal()` to operate the modal.
83
+ ### 🎨 Customization
84
+ - Dark mode support
85
+ - Custom CSS variables
167
86
 
168
- ### modalOnCloseTriggered (_function_)
87
+ ### 📦 Framework Support
88
+ - React 16, 17, 18, 19
89
+ - Preact compatible
90
+ - Next.js (App & Pages Router)
91
+ - Vanilla JavaScript
169
92
 
170
- Only used when `isModal` is `true`: A function called when the user clicks the close button or clicks outside of (when used with `modalCloseOnOutsideClick`) the importer. `useState` can be used to control the importer modal opening and closing.
171
-
172
- ```javascript
173
- const [isOpen, setIsOpen] = useState(false);
174
- ```
93
+ ## Examples
175
94
 
176
- ```jsx
177
- <button onClick={() => setIsOpen(true)}>Open CSV Importer</button>
178
- <CSVImporter
179
- modalIsOpen={isOpen}
180
- modalOnCloseTriggered={() => setIsOpen(false)}
181
- ...
182
- />
183
- ```
184
-
185
- ### modalCloseOnOutsideClick (_boolean_, default: `false`)
186
-
187
- Only used when `isModal` is `true`: Clicking outside the modal will call the `modalOnCloseTriggered` function.
188
-
189
- ### template (_object_)
190
-
191
- Configure the columns used for the import.
192
-
193
- ```jsx
194
- template={{
195
- columns: [
196
- {
197
- name: "First Name",
198
- key: "first_name",
199
- required: true,
200
- description: "The first name of the user",
201
- suggested_mappings: ["First", "Name"],
202
- },
203
- {
204
- name: "Age",
205
- data_type: "number",
206
- },
207
- ],
208
- }}
209
- ```
210
-
211
- ### onComplete (_function_)
212
-
213
- Callback function that fires when a user completes an import. It returns `data`, an object that contains the row data, column definitions, and other information about the import.
214
-
215
- ```jsx
216
- onComplete={(data) => console.log(data)}
217
- ```
218
-
219
- Example `data`:
220
-
221
- ```json
222
- {
223
- "num_rows": 2,
224
- "num_columns": 3,
225
- "columns": [
226
- {
227
- "key": "age",
228
- "name": "Age"
229
- },
230
- {
231
- "key": "email",
232
- "name": "Email"
233
- },
234
- {
235
- "key": "first_name",
236
- "name": "First Name"
237
- }
238
- ],
239
- "rows": [
240
- {
241
- "index": 0,
242
- "values": {
243
- "age": 23,
244
- "email": "maria@example.com",
245
- "first_name": "Maria"
246
- }
247
- },
248
- {
249
- "index": 1,
250
- "values": {
251
- "age": 32,
252
- "email": "robert@example.com",
253
- "first_name": "Robert"
254
- }
255
- }
256
- ]
257
- }
95
+ ### Next.js App Router
96
+ ```tsx
97
+ 'use client';
98
+ import { CSVImporter } from '@importcsv/react';
258
99
  ```
259
100
 
260
- ### darkMode (_boolean_, default: `false`)
261
-
262
- Toggle between dark mode (`true`) and light mode (`false`).
263
-
264
- ### primaryColor (_string_)
265
-
266
- Specifies the primary color for the importer in hex format. Use `customStyles` to customize the UI in more detail.
267
-
268
- ```jsx
269
- primaryColor = "#7A5EF8";
270
- ```
271
-
272
- ### customStyles (_object_)
273
-
274
- Apply custom styles to the importer with an object containing CSS properties and values. Note that custom style properties will override `primaryColor` and any default styles from `darkMode`.
275
- Available options:
276
-
277
- ```jsx
278
- customStyles={{
279
- "font-family": "cursive",
280
- "font-size": "15px",
281
- "base-spacing": "2rem",
282
- "border-radius": "8px",
283
- "color-primary": "salmon",
284
- "color-primary-hover": "crimson",
285
- "color-secondary": "indianRed",
286
- "color-secondary-hover": "crimson",
287
- "color-tertiary": "indianRed",
288
- "color-tertiary-hover": "crimson",
289
- "color-border": "lightCoral",
290
- "color-text": "brown",
291
- "color-text-soft": "rgba(165, 42, 42, .5)",
292
- "color-text-on-primary": "#fff",
293
- "color-text-on-secondary": "#ffffff",
294
- "color-background": "bisque",
295
- "color-background-modal": "blanchedAlmond",
296
- "color-input-background": "blanchedAlmond",
297
- "color-input-background-soft": "white",
298
- "color-background-menu-hover": "bisque",
299
- "color-importer-link": "indigo",
300
- "color-progress-bar": "darkGreen"
301
- }}
302
- ```
303
-
304
- ## Internationalization
305
-
306
- ### Predefined languages
307
-
308
- - Out-of-the-box support for various languages.
309
- - Common languages are available through the language prop (i.e., `language="fr"` for French).
310
- - Available predefined languages:
311
- - en
312
- - es
313
- - fr
314
-
315
- ### Customizable language
316
-
317
- - Language keys can be exported and overridden.
318
- - Labels and messages can be customized to any text.
319
- - Translations key examples can be found in `src/i18n/es.ts`
320
-
321
- ```javascript
322
- // Set up custom translations
323
- const customTranslations = {
324
- jp: {
325
- Upload: "アップロード",
326
- "Browse files": "ファイルを参照",
327
- },
328
- pt: {
329
- Upload: "Carregar",
330
- "Browse files": "Procurar arquivos",
331
- },
332
- };
333
-
334
- return (
335
- <CSVImporter language="jp" customTranslations={customTranslations} ...props />
336
- )
337
-
338
- ```
339
-
340
- ### showDownloadTemplateButton (_boolean_, default: `true`)
341
-
342
- When set to `false`, hide the Download Template button on the first screen of the importer.
343
-
344
- ### skipHeaderRowSelection (_boolean_, default: `false`)
345
-
346
- When set to `true`, the importer will not display and skip the Header Row Selection step and always choose the first row in the file as the header.
347
-
348
- ## Contributing
349
-
350
- ### Setting Up the Project
351
-
352
- To set up the project locally, follow these steps:
353
-
354
- 1. **Clone the repository**
355
-
356
- ```bash
357
- git clone https://github.com/tableflowhq/csv-import.git
358
- cd csv-import
359
- ```
360
-
361
- 2. **Install dependencies**
101
+ ### Vanilla JavaScript
102
+ ```html
103
+ <script src="https://unpkg.com/@importcsv/react@latest/build/bundled/index.umd.js"></script>
104
+ <script>
105
+ const importer = CSVImporter.createCSVImporter({
106
+ domElement: document.getElementById('app'),
107
+ columns: [/* ... */],
108
+ onComplete: (data) => console.log(data)
109
+ });
362
110
 
363
- ```bash
364
- yarn install
111
+ importer.showModal();
112
+ </script>
365
113
  ```
366
114
 
367
- 3. **Build the project**
368
-
369
- ```bash
370
- yarn build
115
+ ### With Validation & Transformation
116
+ ```tsx
117
+ columns={[
118
+ {
119
+ id: 'email',
120
+ label: 'Email',
121
+ type: 'email',
122
+ validators: [{ type: 'required' }, { type: 'unique' }],
123
+ transformations: [{ type: 'lowercase' }, { type: 'trim' }]
124
+ }
125
+ ]}
371
126
  ```
372
127
 
373
- ### Running Storybook
374
-
375
- To run Storybook locally, follow these steps:
376
-
377
- 1. **Start Storybook**
378
-
379
- ```bash
380
- yarn storybook
381
- ```
128
+ ## Why ImportCSV?
382
129
 
383
- 2. **Open Storybook in your browser:**
384
- Storybook should automatically open in your default browser. If it doesn't, navigate to [http://localhost:6006](http://localhost:6006).
130
+ | Feature | ImportCSV | Build Your Own | Other Libraries |
131
+ |---------|-----------|----------------|-----------------|
132
+ | Setup time | 5 minutes | Days/weeks | Hours |
133
+ | AI-powered fixes | ✅ | ❌ | ❌ |
134
+ | Virtual scrolling | ✅ | Maybe | Sometimes |
135
+ | Framework agnostic | ✅ | Your choice | Usually not |
136
+ | Bundle size | ~100KB | Varies | 200KB+ |
137
+ | Theming | 5 presets + custom | DIY | Limited |
385
138
 
386
- ### Modifying the project and testing with the demo app
139
+ ## Resources
387
140
 
388
- The project includes a demo app that you can use to test your changes. The demo app has its own `README.md` file with detailed instructions on how to set it up and run it.
141
+ - 📚 [Documentation](https://docs.importcsv.com) - Complete guides and API reference
142
+ - 🐛 [Issues](https://github.com/importcsv/importcsv/issues) - Report bugs or request features
143
+ - ⭐ [GitHub](https://github.com/importcsv/importcsv) - Star us if you like it!
389
144
 
390
- 1. Make your changes in the codebase.
391
- 2. Follow the instructions in the demo app's `README.md` to set up and run the demo app. This will help you verify that your changes work as expected in a real application.
392
- 3. Commit your changes and push them to your forked repository.
393
- 4. Create a pull request to the main repository.
145
+ ## License
394
146
 
395
- ## Publishing the Library
147
+ MIT © [ImportCSV](https://github.com/importcsv/importcsv)
396
148
 
397
- ### Using Yarn Publish
149
+ ---
398
150
 
399
- To publish the library to npm:
400
-
401
- 1. Update the version in `package.json`:
402
-
403
- ```bash
404
- # Increment version - choose one of:
405
- npm version patch # for bug fixes
406
- npm version minor # for new features
407
- npm version major # for breaking changes
408
- ```
409
-
410
- 2. Build the library:
411
-
412
- ```bash
413
- yarn build
414
- ```
415
-
416
- 3. Publish to npm:
417
-
418
- ```bash
419
- # If you're publishing for the first time
420
- npm login
421
-
422
- # Publish the package
423
- yarn publish
424
- ```
425
-
426
- 4. To use the published package in another project:
427
- ```bash
428
- # In your project
429
- yarn add csv-import-react
430
- ```
431
-
432
- ### Using Yalc (for Local Development)
433
-
434
- [Yalc](https://github.com/wclr/yalc) is a tool for local package development and sharing. It's useful when you want to test your library in another project without publishing to npm.
435
-
436
- 1. Install yalc globally:
437
-
438
- ```bash
439
- npm install -g yalc
440
- ```
441
-
442
- 2. Build the library:
443
-
444
- ```bash
445
- yarn build
446
- ```
447
-
448
- 3. Publish to local yalc store:
449
-
450
- ```bash
451
- yalc publish
452
- ```
453
-
454
- 4. Add to your project:
455
-
456
- ```bash
457
- # In your project directory
458
- yalc add csv-import-react
459
- yarn install # or npm install
460
- ```
461
-
462
- 5. When you make changes to the library:
463
-
464
- ```bash
465
- # In the library directory
466
- yarn build
467
- yalc push # Updates all linked projects
468
- ```
469
-
470
- 6. To remove the yalc link:
471
- ```bash
472
- # In your project directory
473
- yalc remove csv-import-react
474
- yarn install # Restore to regular dependencies
475
- ```
476
-
477
- ## Get In Touch
478
-
479
- Let us know your feedback or feature requests! Submit a GitHub
480
- issue [here](https://github.com/tableflowhq/csv-import/issues/new).
151
+ <div align="center">
152
+ <sub>Built with ❤️ for developers who have better things to do than parse CSVs</sub>
153
+ </div>