@k3-universe/react-kit 0.0.13 → 0.0.15
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.
- package/dist/index.js +1773 -1739
- package/dist/kit/builder/data-table/types.d.ts +1 -1
- package/dist/kit/builder/data-table/types.d.ts.map +1 -1
- package/dist/kit/builder/form/components/FormBuilder.d.ts +3 -172
- package/dist/kit/builder/form/components/FormBuilder.d.ts.map +1 -1
- package/dist/kit/builder/form/components/FormBuilderContext.d.ts +18 -0
- package/dist/kit/builder/form/components/FormBuilderContext.d.ts.map +1 -0
- package/dist/kit/builder/form/components/FormBuilderField.d.ts +8 -8
- package/dist/kit/builder/form/components/FormBuilderField.d.ts.map +1 -1
- package/dist/kit/builder/form/components/fields/types.d.ts +3 -3
- package/dist/kit/builder/form/components/fields/types.d.ts.map +1 -1
- package/dist/kit/builder/form/components/sectionNodes.d.ts +17 -0
- package/dist/kit/builder/form/components/sectionNodes.d.ts.map +1 -0
- package/dist/kit/builder/form/index.d.ts +1 -0
- package/dist/kit/builder/form/index.d.ts.map +1 -1
- package/dist/kit/builder/form/types.d.ts +176 -0
- package/dist/kit/builder/form/types.d.ts.map +1 -0
- package/dist/kit/builder/form/utils/common-forms.d.ts +1 -1
- package/dist/kit/builder/form/utils/common-forms.d.ts.map +1 -1
- package/dist/kit/builder/form/utils/field-factories.d.ts +3 -3
- package/dist/kit/builder/form/utils/field-factories.d.ts.map +1 -1
- package/dist/kit/builder/form/utils/section-factories.d.ts +4 -4
- package/dist/kit/builder/form/utils/section-factories.d.ts.map +1 -1
- package/dist/kit/builder/stack-dialog/provider.d.ts.map +1 -1
- package/dist/kit/builder/stack-dialog/renderer.d.ts.map +1 -1
- package/dist/kit/components/autocomplete/Autocomplete.d.ts +8 -8
- package/dist/kit/components/autocomplete/Autocomplete.d.ts.map +1 -1
- package/dist/kit/components/autocomplete/types.d.ts +6 -4
- package/dist/kit/components/autocomplete/types.d.ts.map +1 -1
- package/dist/kit/themes/clean-slate.css +3 -3
- package/dist/kit/themes/default.css +4 -4
- package/dist/kit/themes/minimal-modern.css +3 -3
- package/dist/kit/themes/spotify.css +3 -3
- package/package.json +1 -1
- package/src/kit/builder/data-table/components/DataTable.tsx +1 -1
- package/src/kit/builder/data-table/types.ts +1 -1
- package/src/kit/builder/form/components/FormBuilder.tsx +113 -369
- package/src/kit/builder/form/components/FormBuilderContext.tsx +45 -0
- package/src/kit/builder/form/components/FormBuilderField.tsx +42 -34
- package/src/kit/builder/form/components/fields/AutocompleteField.tsx +2 -2
- package/src/kit/builder/form/components/fields/types.ts +3 -3
- package/src/kit/builder/form/components/sectionNodes.tsx +116 -0
- package/src/kit/builder/form/index.ts +1 -0
- package/src/kit/builder/form/types.ts +200 -0
- package/src/kit/builder/form/utils/common-forms.ts +1 -1
- package/src/kit/builder/form/utils/field-factories.ts +5 -5
- package/src/kit/builder/form/utils/section-factories.ts +10 -10
- package/src/kit/builder/stack-dialog/provider.tsx +2 -1
- package/src/kit/builder/stack-dialog/renderer.tsx +6 -7
- package/src/kit/components/autocomplete/Autocomplete.tsx +34 -26
- package/src/kit/components/autocomplete/types.ts +7 -5
- package/src/kit/themes/default.css +1 -1
- package/src/shadcn/ui/button.tsx +1 -1
- package/src/shadcn/ui/command.tsx +1 -1
- package/src/shadcn/ui/input.tsx +1 -1
- package/src/shadcn/ui/popover.tsx +1 -1
- package/src/shadcn/ui/select.tsx +1 -1
- package/src/shadcn/ui/textarea.tsx +1 -1
- package/src/stories/kit/builder/Form.MultipleFormBuilder.stories.tsx +335 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { default as React } from 'react';
|
|
2
2
|
import { AutocompleteFetcher, AutocompleteMode, AutocompleteOption } from './types';
|
|
3
|
-
export type AutocompleteProps = {
|
|
3
|
+
export type AutocompleteProps<T = unknown> = {
|
|
4
4
|
mode: AutocompleteMode;
|
|
5
|
-
options?: AutocompleteOption[];
|
|
6
|
-
fetcher?: AutocompleteFetcher
|
|
5
|
+
options?: AutocompleteOption<T>[];
|
|
6
|
+
fetcher?: AutocompleteFetcher<T>;
|
|
7
7
|
pageSize?: number;
|
|
8
8
|
/**
|
|
9
9
|
* Value can be a single primitive or an array when `multiple` is true
|
|
@@ -12,7 +12,7 @@ export type AutocompleteProps = {
|
|
|
12
12
|
/**
|
|
13
13
|
* onChange returns a single value + option in single mode, or an array of values + options in multiple mode
|
|
14
14
|
*/
|
|
15
|
-
onChange?: (value: string | number | null | Array<string | number>, option: AutocompleteOption | AutocompleteOption[] | null) => void;
|
|
15
|
+
onChange?: (value: string | number | null | Array<string | number>, option: AutocompleteOption<T> | AutocompleteOption<T>[] | null, raw?: T | T[] | null) => void;
|
|
16
16
|
/** Enable selecting multiple values (shows chips) */
|
|
17
17
|
multiple?: boolean;
|
|
18
18
|
/** Placeholder shown when nothing is selected */
|
|
@@ -20,7 +20,7 @@ export type AutocompleteProps = {
|
|
|
20
20
|
disabled?: boolean;
|
|
21
21
|
className?: string;
|
|
22
22
|
emptyText?: string;
|
|
23
|
-
renderOption?: (option: AutocompleteOption
|
|
23
|
+
renderOption?: (option: AutocompleteOption<T>, selected: boolean) => React.ReactNode;
|
|
24
24
|
searchPlaceholder?: string;
|
|
25
25
|
/** Controls initial open state; component is uncontrolled otherwise */
|
|
26
26
|
defaultOpen?: boolean;
|
|
@@ -41,13 +41,13 @@ export type AutocompleteProps = {
|
|
|
41
41
|
* Optional: seed selected labels for edit pages. These options are only used to populate the
|
|
42
42
|
* internal label map so labels render correctly when values are prefilled.
|
|
43
43
|
*/
|
|
44
|
-
initialSelectedOptions?: AutocompleteOption | AutocompleteOption[] | null;
|
|
44
|
+
initialSelectedOptions?: AutocompleteOption<T> | AutocompleteOption<T>[] | null;
|
|
45
45
|
/**
|
|
46
46
|
* Optional: load labels/options for a list of values whose labels are unknown.
|
|
47
47
|
* Useful for edit pages in server mode when only values are available.
|
|
48
48
|
*/
|
|
49
|
-
loadSelected?: (values: Array<string | number>) => Promise<AutocompleteOption[]>;
|
|
49
|
+
loadSelected?: (values: Array<string | number>) => Promise<AutocompleteOption<T>[]>;
|
|
50
50
|
};
|
|
51
|
-
export declare function Autocomplete({ mode, options, fetcher, pageSize, value: controlledValue, onChange, multiple, placeholder, disabled, className, emptyText, renderOption, searchPlaceholder, defaultOpen, defaultValue, allowCustomValue, chipVariant, chipClassName, clearable, initialSelectedOptions, loadSelected, }: AutocompleteProps): import("react/jsx-runtime").JSX.Element;
|
|
51
|
+
export declare function Autocomplete<T = unknown>({ mode, options, fetcher, pageSize, value: controlledValue, onChange, multiple, placeholder, disabled, className, emptyText, renderOption, searchPlaceholder, defaultOpen, defaultValue, allowCustomValue, chipVariant, chipClassName, clearable, initialSelectedOptions, loadSelected, }: AutocompleteProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
52
52
|
export default Autocomplete;
|
|
53
53
|
//# sourceMappingURL=Autocomplete.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Autocomplete.d.ts","sourceRoot":"","sources":["../../../../src/kit/components/autocomplete/Autocomplete.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA0B/B,OAAO,KAAK,EACX,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAElB,MAAM,SAAS,CAAC;AAGjB,MAAM,MAAM,iBAAiB,GAAG;
|
|
1
|
+
{"version":3,"file":"Autocomplete.d.ts","sourceRoot":"","sources":["../../../../src/kit/components/autocomplete/Autocomplete.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA0B/B,OAAO,KAAK,EACX,mBAAmB,EACnB,gBAAgB,EAChB,kBAAkB,EAElB,MAAM,SAAS,CAAC;AAGjB,MAAM,MAAM,iBAAiB,CAAC,CAAC,GAAG,OAAO,IAAI;IAC5C,IAAI,EAAE,gBAAgB,CAAC;IACvB,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;IAClC,OAAO,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IACxD;;OAEG;IACH,QAAQ,CAAC,EAAE,CACV,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,EACtD,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAC9D,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,KAChB,IAAI,CAAC;IACV,qDAAqD;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,CACd,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAC7B,QAAQ,EAAE,OAAO,KACb,KAAK,CAAC,SAAS,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uEAAuE;IACvE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mDAAmD;IACnD,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IAC/D,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;OAGG;IACH,WAAW,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,aAAa,GAAG,SAAS,CAAC;IAClE,yCAAyC;IACzC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kDAAkD;IAClD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,sBAAsB,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC;IAChF;;;OAGG;IACH,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;CACpF,CAAC;AAMF,wBAAgB,YAAY,CAAC,CAAC,GAAG,OAAO,EAAE,EACzC,IAAI,EACJ,OAAkD,EAClD,OAAO,EACP,QAA4B,EAC5B,KAAK,EAAE,eAAe,EACtB,QAAQ,EACR,QAAgB,EAChB,WAAyB,EACzB,QAAQ,EACR,SAAS,EACT,SAA8B,EAC9B,YAAY,EACZ,iBAA+B,EAC/B,WAAW,EACX,YAAY,EACZ,gBAAwB,EACxB,WAAyB,EACzB,aAAa,EACb,SAAgB,EAChB,sBAAsB,EACtB,YAAY,GACZ,EAAE,iBAAiB,CAAC,CAAC,CAAC,2CA8qBtB;AAED,eAAe,YAAY,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
export type AutocompleteOption = {
|
|
1
|
+
export type AutocompleteOption<T = unknown> = {
|
|
2
2
|
value: string | number;
|
|
3
3
|
label: string;
|
|
4
|
+
/** Optional original object returned by the fetcher/static source */
|
|
5
|
+
raw?: T;
|
|
4
6
|
};
|
|
5
7
|
export type AutocompleteFetchParams = {
|
|
6
8
|
search: string;
|
|
@@ -8,12 +10,12 @@ export type AutocompleteFetchParams = {
|
|
|
8
10
|
page: number;
|
|
9
11
|
pageSize: number;
|
|
10
12
|
};
|
|
11
|
-
export type AutocompleteFetchResult = {
|
|
12
|
-
items: AutocompleteOption[];
|
|
13
|
+
export type AutocompleteFetchResult<T = unknown> = {
|
|
14
|
+
items: AutocompleteOption<T>[];
|
|
13
15
|
nextCursor?: string | number | null;
|
|
14
16
|
hasMore: boolean;
|
|
15
17
|
total?: number;
|
|
16
18
|
};
|
|
17
|
-
export type AutocompleteFetcher = (params: AutocompleteFetchParams) => Promise<AutocompleteFetchResult
|
|
19
|
+
export type AutocompleteFetcher<T = unknown> = (params: AutocompleteFetchParams) => Promise<AutocompleteFetchResult<T>>;
|
|
18
20
|
export type AutocompleteMode = 'client' | 'server';
|
|
19
21
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/kit/components/autocomplete/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,GAAG;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/kit/components/autocomplete/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,CAAC,CAAC,GAAG,OAAO,IAAI;IAC5C,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,KAAK,EAAE,MAAM,CAAA;IACb,qEAAqE;IACrE,GAAG,CAAC,EAAE,CAAC,CAAA;CACR,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,uBAAuB,CAAC,CAAC,GAAG,OAAO,IAAI;IACjD,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAA;IAC9B,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;IACnC,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,MAAM,MAAM,mBAAmB,CAAC,CAAC,GAAG,OAAO,IAAI,CAC7C,MAAM,EAAE,uBAAuB,KAC5B,OAAO,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAA;AAExC,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,QAAQ,CAAA"}
|
|
@@ -1900,7 +1900,7 @@
|
|
|
1900
1900
|
border-color: var(--color-blue-200);
|
|
1901
1901
|
}
|
|
1902
1902
|
|
|
1903
|
-
.border-border\/40 {
|
|
1903
|
+
.border-border, .border-border\/40 {
|
|
1904
1904
|
border-color: var(--border);
|
|
1905
1905
|
}
|
|
1906
1906
|
|
|
@@ -4808,8 +4808,8 @@
|
|
|
4808
4808
|
}
|
|
4809
4809
|
|
|
4810
4810
|
@media (prefers-color-scheme: dark) {
|
|
4811
|
-
.dark\:border-
|
|
4812
|
-
border-color: var(--
|
|
4811
|
+
.dark\:border-border {
|
|
4812
|
+
border-color: var(--border);
|
|
4813
4813
|
}
|
|
4814
4814
|
|
|
4815
4815
|
.dark\:bg-destructive\/60 {
|
|
@@ -1903,7 +1903,7 @@
|
|
|
1903
1903
|
border-color: var(--color-blue-200);
|
|
1904
1904
|
}
|
|
1905
1905
|
|
|
1906
|
-
.border-border\/40 {
|
|
1906
|
+
.border-border, .border-border\/40 {
|
|
1907
1907
|
border-color: var(--border);
|
|
1908
1908
|
}
|
|
1909
1909
|
|
|
@@ -4815,8 +4815,8 @@
|
|
|
4815
4815
|
}
|
|
4816
4816
|
|
|
4817
4817
|
@media (prefers-color-scheme: dark) {
|
|
4818
|
-
.dark\:border-
|
|
4819
|
-
border-color: var(--
|
|
4818
|
+
.dark\:border-border {
|
|
4819
|
+
border-color: var(--border);
|
|
4820
4820
|
}
|
|
4821
4821
|
|
|
4822
4822
|
.dark\:bg-destructive\/60 {
|
|
@@ -5468,7 +5468,7 @@
|
|
|
5468
5468
|
--destructive: oklch(63.68% .2078 25.3313);
|
|
5469
5469
|
--destructive-foreground: oklch(100% 0 0);
|
|
5470
5470
|
--border: oklch(91.97% .004 286.32);
|
|
5471
|
-
--input: oklch(
|
|
5471
|
+
--input: oklch(100% 0 0);
|
|
5472
5472
|
--ring: oklch(52.34% .1347 144.167);
|
|
5473
5473
|
--chart-1: oklch(52.34% .1347 144.167);
|
|
5474
5474
|
--chart-2: oklch(67.31% .1624 144.208);
|
|
@@ -1900,7 +1900,7 @@
|
|
|
1900
1900
|
border-color: var(--color-blue-200);
|
|
1901
1901
|
}
|
|
1902
1902
|
|
|
1903
|
-
.border-border\/40 {
|
|
1903
|
+
.border-border, .border-border\/40 {
|
|
1904
1904
|
border-color: var(--border);
|
|
1905
1905
|
}
|
|
1906
1906
|
|
|
@@ -4808,8 +4808,8 @@
|
|
|
4808
4808
|
}
|
|
4809
4809
|
|
|
4810
4810
|
@media (prefers-color-scheme: dark) {
|
|
4811
|
-
.dark\:border-
|
|
4812
|
-
border-color: var(--
|
|
4811
|
+
.dark\:border-border {
|
|
4812
|
+
border-color: var(--border);
|
|
4813
4813
|
}
|
|
4814
4814
|
|
|
4815
4815
|
.dark\:bg-destructive\/60 {
|
|
@@ -1900,7 +1900,7 @@
|
|
|
1900
1900
|
border-color: var(--color-blue-200);
|
|
1901
1901
|
}
|
|
1902
1902
|
|
|
1903
|
-
.border-border\/40 {
|
|
1903
|
+
.border-border, .border-border\/40 {
|
|
1904
1904
|
border-color: var(--border);
|
|
1905
1905
|
}
|
|
1906
1906
|
|
|
@@ -4808,8 +4808,8 @@
|
|
|
4808
4808
|
}
|
|
4809
4809
|
|
|
4810
4810
|
@media (prefers-color-scheme: dark) {
|
|
4811
|
-
.dark\:border-
|
|
4812
|
-
border-color: var(--
|
|
4811
|
+
.dark\:border-border {
|
|
4812
|
+
border-color: var(--border);
|
|
4813
4813
|
}
|
|
4814
4814
|
|
|
4815
4815
|
.dark\:bg-destructive\/60 {
|
package/package.json
CHANGED
|
@@ -20,7 +20,7 @@ import { Button } from '../../../../shadcn/ui/button';
|
|
|
20
20
|
import { Checkbox } from '../../../../shadcn/ui/checkbox';
|
|
21
21
|
import { Skeleton } from '../../../../shadcn/ui/skeleton';
|
|
22
22
|
import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from '../../../../shadcn/ui/table';
|
|
23
|
-
import { FormBuilder, type FormBuilderSectionConfig } from '../../form
|
|
23
|
+
import { FormBuilder, type FormBuilderSectionConfig } from '../../form';
|
|
24
24
|
import type { DataTableAction, DataTableBatchAction, DataTableFiltersProp } from '../types';
|
|
25
25
|
import { DataTablePagination } from './DataTablePagination';
|
|
26
26
|
import { DataTableViewOptions } from './DataTableViewOptions';
|