@rfdtech/components 1.18.1 → 1.21.0

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 (48) hide show
  1. package/README.md +63 -24
  2. package/dist/components/bulk-import-modal/BulkImportModal.d.ts +1 -1
  3. package/dist/components/bulk-import-modal/BulkImportModal.d.ts.map +1 -1
  4. package/dist/components/bulk-import-modal/constants.d.ts +8 -0
  5. package/dist/components/bulk-import-modal/constants.d.ts.map +1 -0
  6. package/dist/components/bulk-import-modal/hooks/useBulkImportFlow.d.ts.map +1 -1
  7. package/dist/components/bulk-import-modal/index.d.ts +5 -4
  8. package/dist/components/bulk-import-modal/index.d.ts.map +1 -1
  9. package/dist/components/bulk-import-modal/steps/SelectHeaderRowStep.d.ts.map +1 -1
  10. package/dist/components/bulk-import-modal/steps/UploadStep.d.ts +3 -1
  11. package/dist/components/bulk-import-modal/steps/UploadStep.d.ts.map +1 -1
  12. package/dist/components/bulk-import-modal/steps/ValidateDataStep.d.ts +7 -10
  13. package/dist/components/bulk-import-modal/steps/ValidateDataStep.d.ts.map +1 -1
  14. package/dist/components/bulk-import-modal/utils/mapRowsToRecords.d.ts +1 -0
  15. package/dist/components/bulk-import-modal/utils/mapRowsToRecords.d.ts.map +1 -1
  16. package/dist/components/bulk-import-modal/utils/parseSpreadsheetFile.d.ts +4 -0
  17. package/dist/components/bulk-import-modal/utils/parseSpreadsheetFile.d.ts.map +1 -1
  18. package/dist/components/bulk-import-modal/utils/validateMappedRows.d.ts +2 -1
  19. package/dist/components/bulk-import-modal/utils/validateMappedRows.d.ts.map +1 -1
  20. package/dist/components/bulk-import-modal/utils/validateRowsChunked.d.ts +11 -0
  21. package/dist/components/bulk-import-modal/utils/validateRowsChunked.d.ts.map +1 -0
  22. package/dist/components/command/Command.d.ts.map +1 -1
  23. package/dist/components/dropdown/Dropdown.d.ts.map +1 -1
  24. package/dist/components/modal/Modal.d.ts.map +1 -1
  25. package/dist/components/phone-number-input/PhoneNumberInput.d.ts.map +1 -1
  26. package/dist/components/table/ProgressModal.d.ts +13 -0
  27. package/dist/components/table/ProgressModal.d.ts.map +1 -0
  28. package/dist/components/table/Table.d.ts +2 -17
  29. package/dist/components/table/Table.d.ts.map +1 -1
  30. package/dist/components/table/index.d.ts +1 -1
  31. package/dist/components/table/index.d.ts.map +1 -1
  32. package/dist/components/tooltip/Tooltip.d.ts.map +1 -1
  33. package/dist/hooks/index.d.ts +1 -0
  34. package/dist/hooks/index.d.ts.map +1 -1
  35. package/dist/hooks/useComposedRefs.d.ts +14 -0
  36. package/dist/hooks/useComposedRefs.d.ts.map +1 -0
  37. package/dist/index.cjs +48 -33
  38. package/dist/index.css +1 -1
  39. package/dist/index.js +13102 -9517
  40. package/dist/test/mocks/lottie-react.d.ts +2 -0
  41. package/dist/test/mocks/lottie-react.d.ts.map +1 -0
  42. package/dist/types/bulk-import-modal.d.ts +21 -18
  43. package/dist/types/bulk-import-modal.d.ts.map +1 -1
  44. package/dist/types/modal.d.ts +0 -1
  45. package/dist/types/modal.d.ts.map +1 -1
  46. package/dist/types/table.d.ts +16 -2
  47. package/dist/types/table.d.ts.map +1 -1
  48. package/package.json +22 -18
package/README.md CHANGED
@@ -8,30 +8,84 @@ Requires React 18+ and a bundler that processes CSS (Vite, Webpack, etc.).
8
8
 
9
9
  See [CHANGELOG.md](./CHANGELOG.md) for release history.
10
10
 
11
- ## Styles
11
+ ## Getting Started
12
12
 
13
- Component styles load automatically when you import from `@rfdtech/components` (the JS bundle includes `import './index.css'`). For reliable styling in production, add this once in your app entry (`main.tsx` or `App.tsx`):
13
+ ### 1. Install
14
+
15
+ ```bash
16
+ npm install @rfdtech/components
17
+ ```
18
+
19
+ Requires React 18+. npm 7+ auto-installs `react` and `react-dom` as peer dependencies. Radix UI and other runtime packages are dependencies of `@rfdtech/components`.
20
+
21
+ ### 2. Import CSS
22
+
23
+ Add this once to your app entry (`main.tsx` or `App.tsx`):
14
24
 
15
25
  ```ts
16
26
  import "@rfdtech/components/style.css";
17
27
  ```
18
28
 
19
- After upgrading the package, clear Vite's dependency cache if styles look stale: `rm -rf node_modules/.vite`.
20
-
21
- ## Shared theming
29
+ Components load CSS automatically from the JS bundle (the JS bundle includes `import './index.css'`), but the explicit import above ensures reliable production styling. After upgrading, clear Vite's dependency cache if styles look stale: `rm -rf node_modules/.vite`.
22
30
 
23
- Wrap your app in `ThemeProvider` for light, dark, and system themes. Design tokens live in [`src/styles/theme.css`](src/styles/theme.css) and apply to `.gsl-theme`, `document.documentElement`, and all components (including portaled modals and popovers).
31
+ ### 3. Wrap with ThemeProvider
24
32
 
25
33
  ```tsx
26
34
  import { ThemeProvider } from "@rfdtech/components";
27
- import "@rfdtech/components/style.css";
28
35
 
29
36
  <ThemeProvider defaultTheme="system">
30
37
  <App />
31
38
  </ThemeProvider>
32
39
  ```
33
40
 
34
- Use `useTheme()` to read or change the active theme at runtime. See the [Theme](/docs/theme) docs page for token reference and controlled mode.
41
+ Supports `"light"`, `"dark"`, and `"system"` (follows `prefers-color-scheme`). Use `useTheme()` to read or change the active theme at runtime. Design tokens apply to `.gsl-theme`, `document.documentElement`, and all components (including portaled modals and popovers).
42
+
43
+ ### 4. Tailwind v4 integration
44
+
45
+ If your project uses Tailwind v4, all `--gsl-*` design tokens are automatically available as utility classes. Import `style.css` after `tailwindcss` in your CSS entry:
46
+
47
+ ```css
48
+ /* app/src/index.css */
49
+ @import "tailwindcss";
50
+ @import "@rfdtech/components/style.css";
51
+ ```
52
+
53
+ The `@theme` block ships inside `style.css`. The consumer's Tailwind build processes it and generates these utility classes:
54
+
55
+ | Utility | Resolves to |
56
+ |---------|-------------|
57
+ | `bg-primary` / `text-primary` | `var(--gsl-primary)` |
58
+ | `bg-primary-foreground` / `text-primary-foreground` | `var(--gsl-on-primary)` |
59
+ | `bg-background` / `text-foreground` | `var(--gsl-page-bg)` / `var(--gsl-text)` |
60
+ | `bg-secondary` / `text-secondary-foreground` | `var(--gsl-surface-dark)` / `var(--gsl-text-secondary)` |
61
+ | `bg-muted` / `text-muted-foreground` | `var(--gsl-surface-subtle)` / `var(--gsl-text-secondary)` |
62
+ | `bg-accent` / `text-accent-foreground` | `var(--gsl-hover)` / `var(--gsl-text)` |
63
+ | `bg-destructive` / `text-destructive-foreground` | `var(--gsl-error)` / `var(--gsl-error-text)` |
64
+ | `bg-card` / `text-card-foreground` | `var(--gsl-bg)` / `var(--gsl-text)` |
65
+ | `bg-popover` / `text-popover-foreground` | `var(--gsl-bg)` / `var(--gsl-text)` |
66
+ | `border` / `input` / `ring` | `var(--gsl-border)` / `var(--gsl-border-strong)` / `var(--gsl-focus)` |
67
+ | `rounded-lg` | `var(--gsl-radius-base)` |
68
+ | `shadow-sm` / `shadow-md` / `shadow-lg` | `var(--gsl-shadow-sm)` / etc. |
69
+ | `font-sans` | `var(--gsl-font)` |
70
+
71
+ **Dark mode** supports both conventions: `<html class="dark">` (Tailwind default) and `<html data-gsl-theme="dark">`.
72
+
73
+ **Non-Tailwind consumers** are unaffected. Browsers silently ignore `@theme` as an unknown at-rule. All `--gsl-*` tokens continue to work as CSS custom properties.
74
+
75
+ ### 5. Customize tokens
76
+
77
+ Override any `--gsl-*` token on any ancestor:
78
+
79
+ ```css
80
+ .my-app {
81
+ --gsl-primary: #1d4ed8;
82
+ --gsl-primary-light: #eff6ff;
83
+ }
84
+ ```
85
+
86
+ ## Design tokens
87
+
88
+ Quick reference of commonly used tokens and their light-mode defaults:
35
89
 
36
90
  | Token | Light default | Use |
37
91
  |-------|---------------|-----|
@@ -46,24 +100,9 @@ Use `useTheme()` to read or change the active theme at runtime. See the [Theme](
46
100
  | `--gsl-success` | `#16a34a` | Success states |
47
101
  | `--gsl-warning` | `#eab308` | Warnings |
48
102
 
49
- You can still override tokens on any ancestor without `ThemeProvider`:
50
-
51
- ```css
52
- .my-app {
53
- --gsl-primary: #1d4ed8;
54
- --gsl-primary-light: #eff6ff;
55
- }
56
- ```
57
-
58
103
  `BulkImportModal` also accepts legacy aliases (`--gsl-bulk-import-primary`, etc.) that map to the shared tokens.
59
104
 
60
- ## Install
61
-
62
- ```bash
63
- npm install @rfdtech/components
64
- ```
65
-
66
- Requires React 18+. npm 7+ auto-installs `react` and `react-dom` as peer dependencies. Radix UI and other runtime packages are included as dependencies of `@rfdtech/components`.
105
+ See the [Theme](/docs/theme) docs page for the full token reference (radius, shadows, z-index, fonts) and controlled mode.
67
106
 
68
107
 
69
108
  ## Hooks
@@ -1,4 +1,4 @@
1
1
  import type { BulkImportModalProps } from "../../types/bulk-import-modal";
2
2
  import "./styles/bulk-import-modal.css";
3
- export declare function BulkImportModal({ open, onOpenChange, fields, onComplete, maxFileSizeBytes, allowImportWithWarnings, className, defaultState, }: BulkImportModalProps): import("react").JSX.Element;
3
+ export declare function BulkImportModal({ open, onOpenChange, fields, onComplete, maxFileSizeBytes, className, defaultState, }: BulkImportModalProps): import("react").JSX.Element;
4
4
  //# sourceMappingURL=BulkImportModal.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BulkImportModal.d.ts","sourceRoot":"","sources":["../../../src/components/bulk-import-modal/BulkImportModal.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAU1E,OAAO,gCAAgC,CAAC;AAgCxC,wBAAgB,eAAe,CAAC,EAC9B,IAAI,EACJ,YAAY,EACZ,MAAM,EACN,UAAU,EACV,gBAAwC,EACxC,uBAA+B,EAC/B,SAAS,EACT,YAAY,GACb,EAAE,oBAAoB,+BAmRtB"}
1
+ {"version":3,"file":"BulkImportModal.d.ts","sourceRoot":"","sources":["../../../src/components/bulk-import-modal/BulkImportModal.tsx"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EACV,oBAAoB,EAGrB,MAAM,+BAA+B,CAAC;AAYvC,OAAO,gCAAgC,CAAC;AAgCxC,wBAAgB,eAAe,CAAC,EAC9B,IAAI,EACJ,YAAY,EACZ,MAAM,EACN,UAAU,EACV,gBAAwC,EACxC,SAAS,EACT,YAAY,GACb,EAAE,oBAAoB,+BA8atB"}
@@ -0,0 +1,8 @@
1
+ export declare const DEFAULT_CHUNK_SIZE = 2048;
2
+ export declare const PARSE_CHUNK_SIZE = 4096;
3
+ export declare const INITIAL_VALIDATION_CHUNK_SIZE = 1024;
4
+ export declare const REMAP_CHUNK_SIZE = 1024;
5
+ export declare const BACKGROUND_VALIDATION_CHUNK_SIZE = 256;
6
+ export declare const DEFAULT_MAX_FILE_SIZE: number;
7
+ export declare const ACCEPTED_EXTENSIONS: readonly [".xlsx", ".xls", ".csv"];
8
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/components/bulk-import-modal/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,OAAO,CAAC;AACvC,eAAO,MAAM,gBAAgB,OAAO,CAAC;AACrC,eAAO,MAAM,6BAA6B,OAAO,CAAC;AAClD,eAAO,MAAM,gBAAgB,OAAO,CAAC;AACrC,eAAO,MAAM,gCAAgC,MAAM,CAAC;AAEpD,eAAO,MAAM,qBAAqB,QAAkB,CAAC;AACrD,eAAO,MAAM,mBAAmB,oCAAqC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useBulkImportFlow.d.ts","sourceRoot":"","sources":["../../../../src/components/bulk-import-modal/hooks/useBulkImportFlow.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAKV,wBAAwB,EACxB,uBAAuB,EACxB,MAAM,kCAAkC,CAAC;AAkC1C,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,wBAAwB,GAChC,uBAAuB,CAqXzB"}
1
+ {"version":3,"file":"useBulkImportFlow.d.ts","sourceRoot":"","sources":["../../../../src/components/bulk-import-modal/hooks/useBulkImportFlow.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAIV,wBAAwB,EACxB,uBAAuB,EACxB,MAAM,kCAAkC,CAAC;AAwE1C,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,wBAAwB,GAChC,uBAAuB,CAkXzB"}
@@ -4,9 +4,10 @@ export { SelectHeaderRowStep } from "./steps/SelectHeaderRowStep";
4
4
  export { MatchColumnsStep } from "./steps/MatchColumnsStep";
5
5
  export { ValidateDataStep } from "./steps/ValidateDataStep";
6
6
  export { useBulkImportFlow } from "./hooks/useBulkImportFlow";
7
- export { BulkImportParseError, isAcceptedSpreadsheetFile, parseSpreadsheetFile, } from "./utils/parseSpreadsheetFile";
8
- export { autoMatchSourceColumns, buildAllSourceColumns, buildSourceColumns, createEmptySourceMapping, getMappedFieldKeys, isRequiredMappingComplete, mapRowsToRecords, } from "./utils/mapRowsToRecords";
9
- export { splitValidationIssues, validateMappedRows, } from "./utils/validateMappedRows";
7
+ export { BulkImportParseError, filterEmptyRows, isAcceptedSpreadsheetFile, isCsv, normalizeRows, parseCsvText, parseSpreadsheetFile, } from "./utils/parseSpreadsheetFile";
8
+ export { autoMatchSourceColumns, buildAllSourceColumns, buildSourceColumns, createEmptySourceMapping, getMappedFieldKeys, isRequiredMappingComplete, mapDataRows, mapRowsToRecords, } from "./utils/mapRowsToRecords";
9
+ export { splitValidationIssues, validateBatch, validateMappedRows, } from "./utils/validateMappedRows";
10
10
  export { getFieldExampleValue, getFieldHint, validateFieldValue, } from "./utils/validateFieldValue";
11
- export type { BulkImportFlowDefaultState, BulkImportField, BulkImportFieldType, BulkImportModalProps, BulkImportResult, BulkImportStep, BulkImportValidationError, ColumnMapping, ParsedSpreadsheet, SourceColumn, SourceColumnMapping, UseBulkImportFlowOptions, UseBulkImportFlowReturn, } from "../../types/bulk-import-modal";
11
+ export type { BulkImportFlowDefaultState, BulkImportField, BulkImportFieldType, BulkImportModalProps, BulkImportResult, BulkImportValidationError, ColumnMapping, ParsedSpreadsheet, SourceColumn, SourceColumnMapping, UseBulkImportFlowOptions, UseBulkImportFlowReturn, } from "../../types/bulk-import-modal";
12
+ export { BulkImportStep } from "../../types/bulk-import-modal";
12
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/bulk-import-modal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EACL,oBAAoB,EACpB,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,wBAAwB,EACxB,kBAAkB,EAClB,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AACpC,YAAY,EACV,0BAA0B,EAC1B,eAAe,EACf,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACd,yBAAyB,EACzB,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/bulk-import-modal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,yBAAyB,EACzB,KAAK,EACL,aAAa,EACb,YAAY,EACZ,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,wBAAwB,EACxB,kBAAkB,EAClB,yBAAyB,EACzB,WAAW,EACX,gBAAgB,GACjB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,qBAAqB,EACrB,aAAa,EACb,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,oBAAoB,EACpB,YAAY,EACZ,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AACpC,YAAY,EACV,0BAA0B,EAC1B,eAAe,EACf,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,EAChB,yBAAyB,EACzB,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SelectHeaderRowStep.d.ts","sourceRoot":"","sources":["../../../../src/components/bulk-import-modal/steps/SelectHeaderRowStep.tsx"],"names":[],"mappings":"AAIA,UAAU,wBAAwB;IAChC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;IACjB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C;AAID,wBAAgB,mBAAmB,CAAC,EAClC,IAAI,EACJ,cAAc,EACd,iBAAiB,GAClB,EAAE,wBAAwB,+BAuG1B"}
1
+ {"version":3,"file":"SelectHeaderRowStep.d.ts","sourceRoot":"","sources":["../../../../src/components/bulk-import-modal/steps/SelectHeaderRowStep.tsx"],"names":[],"mappings":"AAIA,UAAU,wBAAwB;IAChC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;IACjB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C;AAKD,wBAAgB,mBAAmB,CAAC,EAClC,IAAI,EACJ,cAAc,EACd,iBAAiB,GAClB,EAAE,wBAAwB,+BAgG1B"}
@@ -5,7 +5,9 @@ interface UploadStepProps {
5
5
  isParsing: boolean;
6
6
  maxFileSizeBytes: number;
7
7
  onFileSelected: (file: File) => void;
8
+ uploadedFile?: File | null;
9
+ onRemoveFile?: () => void;
8
10
  }
9
- export declare function UploadStep({ fields, parseError, isParsing, maxFileSizeBytes, onFileSelected, }: UploadStepProps): import("react").JSX.Element;
11
+ export declare function UploadStep({ fields, parseError, isParsing, maxFileSizeBytes, onFileSelected, uploadedFile, onRemoveFile, }: UploadStepProps): import("react").JSX.Element;
10
12
  export {};
11
13
  //# sourceMappingURL=UploadStep.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"UploadStep.d.ts","sourceRoot":"","sources":["../../../../src/components/bulk-import-modal/steps/UploadStep.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAIxE,UAAU,eAAe;IACvB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;CACtC;AAED,wBAAgB,UAAU,CAAC,EACzB,MAAM,EACN,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,cAAc,GACf,EAAE,eAAe,+BAoDjB"}
1
+ {"version":3,"file":"UploadStep.d.ts","sourceRoot":"","sources":["../../../../src/components/bulk-import-modal/steps/UploadStep.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAIxE,UAAU,eAAe;IACvB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IACrC,YAAY,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,wBAAgB,UAAU,CAAC,EACzB,MAAM,EACN,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,YAAY,GACb,EAAE,eAAe,+BAuDjB"}
@@ -1,19 +1,16 @@
1
- import type { BulkImportField, BulkImportValidationError } from "../../../types/bulk-import-modal";
1
+ import type { MutableRefObject } from "react";
2
+ import type { BulkImportField, BulkImportResult, BulkImportValidationError } from "../../../types/bulk-import-modal";
2
3
  interface ValidateDataStepProps {
3
4
  fields: BulkImportField[];
4
- mappedFieldKeys: string[];
5
5
  mappedRows: Record<string, string>[];
6
6
  errors: BulkImportValidationError[];
7
- selectedRowIds: number[];
8
- showOnlyErrors: boolean;
9
7
  discardedRows: number[];
10
- onToggleRowSelection: (rowId: number) => void;
11
- onSetVisibleRowsSelection: (rowIds: number[], selected: boolean) => void;
12
- onShowOnlyErrorsChange: (value: boolean) => void;
13
- onDiscardSelectedRows: () => void;
8
+ dirtyCellsRef: MutableRefObject<Record<string, string>>;
9
+ stepResultRef: MutableRefObject<() => BulkImportResult>;
10
+ onDiscardSelectedRows: (ids: number[]) => void;
14
11
  onResetDiscardedRows: () => void;
15
- onUpdateRowValue: (rowId: number, fieldKey: string, value: string) => void;
12
+ onCanConfirmChange: (canConfirm: boolean) => void;
16
13
  }
17
- export declare function ValidateDataStep({ fields, mappedFieldKeys, mappedRows, errors, selectedRowIds, showOnlyErrors, discardedRows, onToggleRowSelection, onSetVisibleRowsSelection, onShowOnlyErrorsChange, onDiscardSelectedRows, onResetDiscardedRows, onUpdateRowValue, }: ValidateDataStepProps): import("react").JSX.Element;
14
+ export declare function ValidateDataStep({ fields, mappedRows, errors, discardedRows, dirtyCellsRef, stepResultRef, onDiscardSelectedRows, onResetDiscardedRows, onCanConfirmChange, }: ValidateDataStepProps): import("react").JSX.Element;
18
15
  export {};
19
16
  //# sourceMappingURL=ValidateDataStep.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ValidateDataStep.d.ts","sourceRoot":"","sources":["../../../../src/components/bulk-import-modal/steps/ValidateDataStep.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,eAAe,EACf,yBAAyB,EAC1B,MAAM,kCAAkC,CAAC;AAc1C,UAAU,qBAAqB;IAC7B,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IACrC,MAAM,EAAE,yBAAyB,EAAE,CAAC;IACpC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,oBAAoB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,yBAAyB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IACzE,sBAAsB,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACjD,qBAAqB,EAAE,MAAM,IAAI,CAAC;IAClC,oBAAoB,EAAE,MAAM,IAAI,CAAC;IACjC,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5E;AAkBD,wBAAgB,gBAAgB,CAAC,EAC/B,MAAM,EACN,eAAe,EACf,UAAU,EACV,MAAM,EACN,cAAc,EACd,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACpB,gBAAgB,GACjB,EAAE,qBAAqB,+BAwWvB"}
1
+ {"version":3,"file":"ValidateDataStep.d.ts","sourceRoot":"","sources":["../../../../src/components/bulk-import-modal/steps/ValidateDataStep.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAI3D,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EAChB,yBAAyB,EAC1B,MAAM,kCAAkC,CAAC;AAkB1C,UAAU,qBAAqB;IAC7B,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IACrC,MAAM,EAAE,yBAAyB,EAAE,CAAC;IACpC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,EAAE,gBAAgB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACxD,aAAa,EAAE,gBAAgB,CAAC,MAAM,gBAAgB,CAAC,CAAC;IACxD,qBAAqB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC/C,oBAAoB,EAAE,MAAM,IAAI,CAAC;IACjC,kBAAkB,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;CACnD;AA2GD,wBAAgB,gBAAgB,CAAC,EAC/B,MAAM,EACN,UAAU,EACV,MAAM,EACN,aAAa,EACb,aAAa,EACb,aAAa,EACb,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,GACnB,EAAE,qBAAqB,+BAocvB"}
@@ -5,5 +5,6 @@ export declare function createEmptySourceMapping(sourceColumns: SourceColumn[]):
5
5
  export declare function autoMatchSourceColumns(fields: BulkImportField[], sourceColumns: SourceColumn[]): SourceColumnMapping;
6
6
  export declare function isRequiredMappingComplete(fields: BulkImportField[], sourceColumnMapping: SourceColumnMapping, excludedColumns: number[]): boolean;
7
7
  export declare function mapRowsToRecords(rows: string[][], headerRowIndex: number, sourceColumnMapping: SourceColumnMapping, excludedColumns: number[]): Record<string, string>[];
8
+ export declare function mapDataRows(dataRows: string[][], sourceColumnMapping: SourceColumnMapping, excludedColumns: number[]): Record<string, string>[];
8
9
  export declare function getMappedFieldKeys(sourceColumnMapping: SourceColumnMapping, excludedColumns: number[]): string[];
9
10
  //# sourceMappingURL=mapRowsToRecords.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mapRowsToRecords.d.ts","sourceRoot":"","sources":["../../../../src/components/bulk-import-modal/utils/mapRowsToRecords.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;AAE1C,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EAAE,EAAE,EAChB,cAAc,EAAE,MAAM,GACrB,YAAY,EAAE,CAIhB;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EAAE,EAAE,EAChB,cAAc,EAAE,MAAM,GACrB,YAAY,EAAE,CAOhB;AAED,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,YAAY,EAAE,GAC5B,mBAAmB,CAIrB;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,eAAe,EAAE,EACzB,aAAa,EAAE,YAAY,EAAE,GAC5B,mBAAmB,CA0BrB;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,eAAe,EAAE,EACzB,mBAAmB,EAAE,mBAAmB,EACxC,eAAe,EAAE,MAAM,EAAE,WAY1B;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EAAE,EAAE,EAChB,cAAc,EAAE,MAAM,EACtB,mBAAmB,EAAE,mBAAmB,EACxC,eAAe,EAAE,MAAM,EAAE,GACxB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAwB1B;AAED,wBAAgB,kBAAkB,CAChC,mBAAmB,EAAE,mBAAmB,EACxC,eAAe,EAAE,MAAM,EAAE,YAM1B"}
1
+ {"version":3,"file":"mapRowsToRecords.d.ts","sourceRoot":"","sources":["../../../../src/components/bulk-import-modal/utils/mapRowsToRecords.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,mBAAmB,EACpB,MAAM,kCAAkC,CAAC;AAE1C,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EAAE,EAAE,EAChB,cAAc,EAAE,MAAM,GACrB,YAAY,EAAE,CAIhB;AAED,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EAAE,EAAE,EAChB,cAAc,EAAE,MAAM,GACrB,YAAY,EAAE,CAOhB;AAED,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,YAAY,EAAE,GAC5B,mBAAmB,CAIrB;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,eAAe,EAAE,EACzB,aAAa,EAAE,YAAY,EAAE,GAC5B,mBAAmB,CA0BrB;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,eAAe,EAAE,EACzB,mBAAmB,EAAE,mBAAmB,EACxC,eAAe,EAAE,MAAM,EAAE,WAY1B;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EAAE,EAAE,EAChB,cAAc,EAAE,MAAM,EACtB,mBAAmB,EAAE,mBAAmB,EACxC,eAAe,EAAE,MAAM,EAAE,GACxB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAwB1B;AAED,wBAAgB,WAAW,CACzB,QAAQ,EAAE,MAAM,EAAE,EAAE,EACpB,mBAAmB,EAAE,mBAAmB,EACxC,eAAe,EAAE,MAAM,EAAE,GACxB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAqB1B;AAED,wBAAgB,kBAAkB,CAChC,mBAAmB,EAAE,mBAAmB,EACxC,eAAe,EAAE,MAAM,EAAE,YAM1B"}
@@ -2,6 +2,10 @@ import type { ParsedSpreadsheet } from "../../../types/bulk-import-modal";
2
2
  export declare class BulkImportParseError extends Error {
3
3
  constructor(message: string);
4
4
  }
5
+ export declare function normalizeRows(rows: unknown[][]): string[][];
6
+ export declare function filterEmptyRows(rows: string[][]): string[][];
5
7
  export declare function isAcceptedSpreadsheetFile(fileName: string): boolean;
8
+ export declare function isCsv(fileName: string): boolean;
9
+ export declare function parseCsvText(text: string): string[][];
6
10
  export declare function parseSpreadsheetFile(file: File, maxFileSizeBytes?: number): Promise<ParsedSpreadsheet>;
7
11
  //# sourceMappingURL=parseSpreadsheetFile.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parseSpreadsheetFile.d.ts","sourceRoot":"","sources":["../../../../src/components/bulk-import-modal/utils/parseSpreadsheetFile.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAI1E,qBAAa,oBAAqB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;CAI5B;AAqBD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,WAEzD;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,IAAI,EACV,gBAAgB,SAAkB,GACjC,OAAO,CAAC,iBAAiB,CAAC,CAwC5B"}
1
+ {"version":3,"file":"parseSpreadsheetFile.d.ts","sourceRoot":"","sources":["../../../../src/components/bulk-import-modal/utils/parseSpreadsheetFile.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAG1E,qBAAa,oBAAqB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;CAI5B;AAmBD,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAI3D;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE,CAI5D;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,WAEzD;AAED,wBAAgB,KAAK,CAAC,QAAQ,EAAE,MAAM,WAErC;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,CA+CrD;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,IAAI,EACV,gBAAgB,SAAkB,GACjC,OAAO,CAAC,iBAAiB,CAAC,CAsD5B"}
@@ -1,5 +1,6 @@
1
1
  import type { BulkImportField, BulkImportValidationError } from "../../../types/bulk-import-modal";
2
- export declare function validateMappedRows(rows: Record<string, string>[], fields: BulkImportField[]): BulkImportValidationError[];
2
+ export declare function validateMappedRows(rows: Record<string, string>[], fields: BulkImportField[], changedRowIndex?: number): BulkImportValidationError[];
3
+ export declare function validateBatch(rows: Record<string, string>[], fields: BulkImportField[]): BulkImportValidationError[];
3
4
  export declare function splitValidationIssues(issues: BulkImportValidationError[]): {
4
5
  errors: BulkImportValidationError[];
5
6
  warnings: BulkImportValidationError[];
@@ -1 +1 @@
1
- {"version":3,"file":"validateMappedRows.d.ts","sourceRoot":"","sources":["../../../../src/components/bulk-import-modal/utils/validateMappedRows.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,yBAAyB,EAC1B,MAAM,kCAAkC,CAAC;AAG1C,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAC9B,MAAM,EAAE,eAAe,EAAE,GACxB,yBAAyB,EAAE,CAuB7B;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,yBAAyB,EAAE;;;EAKxE"}
1
+ {"version":3,"file":"validateMappedRows.d.ts","sourceRoot":"","sources":["../../../../src/components/bulk-import-modal/utils/validateMappedRows.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,yBAAyB,EAC1B,MAAM,kCAAkC,CAAC;AAG1C,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAC9B,MAAM,EAAE,eAAe,EAAE,EACzB,eAAe,CAAC,EAAE,MAAM,GACvB,yBAAyB,EAAE,CAQ7B;AAwGD,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAC9B,MAAM,EAAE,eAAe,EAAE,GACxB,yBAAyB,EAAE,CAE7B;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,yBAAyB,EAAE;;;EAKxE"}
@@ -0,0 +1,11 @@
1
+ import type { BulkImportField, BulkImportValidationError } from "../../../types/bulk-import-modal";
2
+ export interface ValidateRowsChunkedOptions {
3
+ rows: Record<string, string>[];
4
+ fields: BulkImportField[];
5
+ signal?: AbortSignal;
6
+ onProgress?: (pct: number) => void;
7
+ getRow?: (row: Record<string, string>, rowIndex: number) => Record<string, string>;
8
+ chunk_size?: number;
9
+ }
10
+ export declare function validateRowsChunked(options: ValidateRowsChunkedOptions): Promise<BulkImportValidationError[]>;
11
+ //# sourceMappingURL=validateRowsChunked.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validateRowsChunked.d.ts","sourceRoot":"","sources":["../../../../src/components/bulk-import-modal/utils/validateRowsChunked.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,yBAAyB,EAC1B,MAAM,kCAAkC,CAAC;AAM1C,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IAC/B,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,MAAM,CAAC,EAAE,CACP,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC3B,QAAQ,EAAE,MAAM,KACb,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,yBAAyB,EAAE,CAAC,CA4DtC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Command.d.ts","sourceRoot":"","sources":["../../../src/components/command/Command.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAY7B,OAAO,sBAAsB,CAAC;AAE9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,YAAY,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAqB1E,eAAO,MAAM,OAAO,yGA+BnB,CAAC;AAEF,eAAO,MAAM,aAAa,+GAmFzB,CAAC;AAEF,eAAO,MAAM,YAAY,gHAmFxB,CAAC;AAEF,eAAO,MAAM,WAAW,6GA2CvB,CAAC;AAEF,eAAO,MAAM,YAAY,8GAYxB,CAAC;AAEF,eAAO,MAAM,YAAY,8GAuCxB,CAAC;AAEF,eAAO,MAAM,WAAW,6GAYvB,CAAC;AAEF,eAAO,MAAM,eAAe,8GAW3B,CAAC;AAEF,eAAO,MAAM,gBAAgB,kHAW3B,CAAC;AAEH,eAAO,MAAM,cAAc,gHAY1B,CAAC"}
1
+ {"version":3,"file":"Command.d.ts","sourceRoot":"","sources":["../../../src/components/command/Command.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EACV,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,qBAAqB,CAAC;AAY7B,OAAO,sBAAsB,CAAC;AAE9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,YAAY,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,8BAA8B,CAAC;AACtC,YAAY,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAqB1E,eAAO,MAAM,OAAO,yGA+BnB,CAAC;AAEF,eAAO,MAAM,aAAa,+GAmFzB,CAAC;AAEF,eAAO,MAAM,YAAY,gHA0GxB,CAAC;AAEF,eAAO,MAAM,WAAW,6GA2CvB,CAAC;AAEF,eAAO,MAAM,YAAY,8GAYxB,CAAC;AAEF,eAAO,MAAM,YAAY,8GAuCxB,CAAC;AAEF,eAAO,MAAM,WAAW,6GAYvB,CAAC;AAEF,eAAO,MAAM,eAAe,8GAW3B,CAAC;AAEF,eAAO,MAAM,gBAAgB,kHAW3B,CAAC;AAEH,eAAO,MAAM,cAAc,gHAY1B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.d.ts","sourceRoot":"","sources":["../../../src/components/dropdown/Dropdown.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,uBAAuB,CAAC;AAI/B,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EACL,aAAa,EACb,OAAO,EACP,WAAyB,EACzB,SAAiB,EACjB,QAAgB,EAChB,OAAe,EACf,YAAY,EAAE,SAAS,EACvB,YAAY,EACZ,UAAU,EACV,SAAS,GACV,EAAE,aAAa,+BAuEf"}
1
+ {"version":3,"file":"Dropdown.d.ts","sourceRoot":"","sources":["../../../src/components/dropdown/Dropdown.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,uBAAuB,CAAC;AAK/B,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EACL,aAAa,EACb,OAAO,EACP,WAAyB,EACzB,SAAiB,EACjB,QAAgB,EAChB,OAAe,EACf,YAAY,EAAE,SAAS,EACvB,YAAY,EACZ,UAAU,EACV,SAAS,GACV,EAAE,aAAa,+BAmFf"}
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../../src/components/modal/Modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAG1D,OAAO,KAAK,EACR,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EAClB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,oBAAoB,CAAC;AAE5B,eAAO,MAAM,KAAK,iDAAuB,CAAC;AAC1C,eAAO,MAAM,YAAY,kIAA0B,CAAC;AACpD,eAAO,MAAM,WAAW,uDAAyB,CAAC;AAClD,eAAO,MAAM,UAAU,gIAAwB,CAAC;AAEhD,eAAO,MAAM,YAAY,8GAUxB,CAAC;AAEF,eAAO,MAAM,YAAY,8GA0GxB,CAAC;AAEF,eAAO,MAAM,WAAW,0GAUvB,CAAC;AAEF,eAAO,MAAM,UAAU,gHAUtB,CAAC;AAEF,eAAO,MAAM,gBAAgB,wHAe3B,CAAC;AAEH,eAAO,MAAM,SAAS,2GAUrB,CAAC;AAEF,eAAO,MAAM,WAAW,0GAUvB,CAAC"}
1
+ {"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../../src/components/modal/Modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAI1D,OAAO,KAAK,EACV,cAAc,EACd,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,oBAAoB,CAAC;AAG5B,eAAO,MAAM,KAAK,iDAAuB,CAAC;AAC1C,eAAO,MAAM,YAAY,kIAA0B,CAAC;AACpD,eAAO,MAAM,WAAW,uDAAyB,CAAC;AAClD,eAAO,MAAM,UAAU,gIAAwB,CAAC;AAEhD,eAAO,MAAM,YAAY,8GAUxB,CAAC;AAEF,eAAO,MAAM,YAAY,8GAgJxB,CAAC;AAEF,eAAO,MAAM,WAAW,0GAUvB,CAAC;AAEF,eAAO,MAAM,UAAU,gHAUtB,CAAC;AAEF,eAAO,MAAM,gBAAgB,wHAe3B,CAAC;AAEH,eAAO,MAAM,SAAS,2GAUrB,CAAC;AAEF,eAAO,MAAM,WAAW,0GAUvB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PhoneNumberInput.d.ts","sourceRoot":"","sources":["../../../src/components/phone-number-input/PhoneNumberInput.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAG5E,OAAO,iCAAiC,CAAC;AAezC,eAAO,MAAM,gBAAgB,oHA4M3B,CAAC"}
1
+ {"version":3,"file":"PhoneNumberInput.d.ts","sourceRoot":"","sources":["../../../src/components/phone-number-input/PhoneNumberInput.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAG5E,OAAO,iCAAiC,CAAC;AAuCzC,eAAO,MAAM,gBAAgB,oHAmN3B,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { type HTMLAttributes } from "react";
2
+ import "./styles/progress-modal.css";
3
+ interface ProgressModalClassNames {
4
+ root?: string;
5
+ }
6
+ interface ProgressModalProps extends HTMLAttributes<HTMLDivElement> {
7
+ open: boolean;
8
+ progress?: number;
9
+ classNames?: ProgressModalClassNames;
10
+ }
11
+ export declare const ProgressModal: import("react").ForwardRefExoticComponent<ProgressModalProps & import("react").RefAttributes<HTMLDivElement>>;
12
+ export {};
13
+ //# sourceMappingURL=ProgressModal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProgressModal.d.ts","sourceRoot":"","sources":["../../../src/components/table/ProgressModal.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA2C,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAUrF,OAAO,6BAA6B,CAAC;AAErC,UAAU,uBAAuB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,UAAU,kBAAmB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACjE,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,uBAAuB,CAAC;CACtC;AAID,eAAO,MAAM,aAAa,+GAsCzB,CAAC"}
@@ -1,28 +1,13 @@
1
1
  import { type ReactNode, type Ref } from "react";
2
- import type { TableColumn } from "../../types/table";
2
+ import type { TableContentProps } from "../../types/table";
3
3
  import type { TableProps } from "../../types/table";
4
4
  import "./styles/table.css";
5
5
  export declare const Table: import("react").ForwardRefExoticComponent<TableProps & import("react").RefAttributes<HTMLDivElement>>;
6
- interface TableContentInnerProps<T = unknown> {
7
- className?: string;
8
- children?: ReactNode;
9
- columns?: TableColumn<T>[];
10
- data?: T[];
11
- rowKey?: (row: T) => string | number;
12
- loading?: boolean;
13
- loadingRows?: number;
14
- selectable?: boolean;
15
- selectedIds?: Set<string | number>;
16
- onSelectionChange?: (selectedIds: Set<string | number>) => void;
17
- virtualize?: boolean;
18
- virtualRowHeight?: number;
19
- }
20
- export declare const TableContent: <T>(props: TableContentInnerProps<T> & {
6
+ export declare const TableContent: <T>(props: TableContentProps<T> & {
21
7
  ref?: Ref<HTMLDivElement>;
22
8
  }) => React.ReactElement;
23
9
  export declare const TableFooter: import("react").ForwardRefExoticComponent<{
24
10
  className?: string;
25
11
  children?: ReactNode;
26
12
  } & import("react").RefAttributes<HTMLDivElement>>;
27
- export {};
28
13
  //# sourceMappingURL=Table.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../src/components/table/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EAEd,KAAK,GAAG,EAET,MAAM,OAAO,CAAC;AAQf,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EACV,UAAU,EAEX,MAAM,mBAAmB,CAAC;AAE3B,OAAO,oBAAoB,CAAC;AA4B5B,eAAO,MAAM,KAAK,uGAehB,CAAC;AAIH,UAAU,sBAAsB,CAAC,CAAC,GAAG,OAAO;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,OAAO,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3B,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IACX,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,MAAM,GAAG,MAAM,CAAC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IACnC,iBAAiB,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,IAAI,CAAC;IAChE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAmSD,eAAO,MAAM,YAAY,EAAqC,CAAC,CAAC,EAC9D,KAAK,EAAE,sBAAsB,CAAC,CAAC,CAAC,GAAG;IAAE,GAAG,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAA;CAAE,KAC7D,KAAK,CAAC,YAAY,CAAC;AAIxB,eAAO,MAAM,WAAW;gBAER,MAAM;eAAa,SAAS;kDAO1C,CAAC"}
1
+ {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../src/components/table/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,SAAS,EAEd,KAAK,GAAG,EAET,MAAM,OAAO,CAAC;AAUf,OAAO,KAAK,EAAe,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,mBAAmB,CAAC;AAEnE,OAAO,oBAAoB,CAAC;AA4B5B,eAAO,MAAM,KAAK,uGAoBhB,CAAC;AA6ZH,eAAO,MAAM,YAAY,EAAqC,CAAC,CAAC,EAC9D,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG;IAAE,GAAG,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,CAAA;CAAE,KACxD,KAAK,CAAC,YAAY,CAAC;AAIxB,eAAO,MAAM,WAAW;gBAER,MAAM;eAAa,SAAS;kDAO1C,CAAC"}
@@ -2,5 +2,5 @@ export { Table, TableContent, TableFooter } from "./Table";
2
2
  export { TableHeader, TableSearch, TableFilter, TableActions } from "./TableHeader";
3
3
  export { TablePagination } from "./TablePagination";
4
4
  export { TableBulkActions } from "./TableBulkActions";
5
- export type { TableClassNames, TableColumn, TableContentProps, TableFilterProps, TableFooterProps, TableHeaderProps, TableProps, TableSearchProps, PaginationControlsProps, TableBulkAction, TableBulkActionsClassNames, TableBulkActionsProps, } from "../../types/table";
5
+ export type { TableClassNames, TableColumn, TableContentProps, TableFilterProps, TableFooterProps, TableHeaderProps, TableProps, TableSearchProps, PaginationControlsProps, TableBulkAction, TableBulkActionsClassNames, TableBulkActionsProps, TableRowAction, } from "../../types/table";
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/table/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EACV,eAAe,EACf,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,uBAAuB,EACvB,eAAe,EACf,0BAA0B,EAC1B,qBAAqB,GACtB,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/table/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EACV,eAAe,EACf,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,uBAAuB,EACvB,eAAe,EACf,0BAA0B,EAC1B,qBAAqB,EACrB,cAAc,GACf,MAAM,mBAAmB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../src/components/tooltip/Tooltip.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,sBAAsB,CAAC;AAE9B,eAAO,MAAM,OAAO,yGAqInB,CAAC"}
1
+ {"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../src/components/tooltip/Tooltip.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,sBAAsB,CAAC;AAE9B,eAAO,MAAM,OAAO,yGA8DnB,CAAC"}
@@ -14,4 +14,5 @@ export type { UseTablePaginationOptions, UseTablePaginationReturn, } from "./use
14
14
  export { useTableState } from "./useTableState";
15
15
  export type { TableFilters, UseTableStateOptions, UseTableStateReturn, } from "./useTableState";
16
16
  export type { SearchParamAdapter, SearchParamOverlayData, SearchParamOverlayIdInput, SearchParamOverlayState, UseSearchParamOverlayOptions, UseSearchParamOverlayReturn, } from "../types/search-param-overlay";
17
+ export { composeRefs, useComposedRefs } from "./useComposedRefs";
17
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,YAAY,EAAE,+BAA+B,EAAE,MAAM,4BAA4B,CAAC;AAClF,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,gBAAgB,GACjB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EACV,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EACV,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,YAAY,EACV,YAAY,EACZ,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,EACvB,4BAA4B,EAC5B,2BAA2B,GAC5B,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,YAAY,EAAE,+BAA+B,EAAE,MAAM,4BAA4B,CAAC;AAClF,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,gBAAgB,GACjB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EACV,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,YAAY,EACV,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,YAAY,EACV,YAAY,EACZ,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,EACvB,4BAA4B,EAC5B,2BAA2B,GAC5B,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,14 @@
1
+ import * as React from "react";
2
+ type PossibleRef<T> = React.Ref<T> | undefined;
3
+ /**
4
+ * A utility to compose multiple refs together
5
+ * Accepts callback refs and RefObject(s)
6
+ */
7
+ declare function composeRefs<T>(...refs: PossibleRef<T>[]): React.RefCallback<T>;
8
+ /**
9
+ * A custom hook that composes multiple refs
10
+ * Accepts callback refs and RefObject(s)
11
+ */
12
+ declare function useComposedRefs<T>(...refs: PossibleRef<T>[]): React.RefCallback<T>;
13
+ export { composeRefs, useComposedRefs };
14
+ //# sourceMappingURL=useComposedRefs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useComposedRefs.d.ts","sourceRoot":"","sources":["../../src/hooks/useComposedRefs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,KAAK,WAAW,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;AAc/C;;;GAGG;AACH,iBAAS,WAAW,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CA4BvE;AAED;;;GAGG;AACH,iBAAS,eAAe,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAG3E;AAED,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC"}