@adobe-commerce/aio-experience-kit 1.0.3 → 1.0.4
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/CHANGELOG.md +91 -0
- package/README.md +534 -0
- package/dist/cjs/components/DataForm/ButtonContainer/index.js +158 -0
- package/dist/cjs/components/DataForm/ButtonContainer/index.js.map +1 -0
- package/dist/cjs/components/DataForm/FieldBuilder/index.js.map +1 -1
- package/dist/cjs/components/DataForm/FormBuilder/index.js +178 -65
- package/dist/cjs/components/DataForm/FormBuilder/index.js.map +1 -1
- package/dist/cjs/components/DataForm/FormBuilder/types.js.map +1 -1
- package/dist/cjs/components/DataForm/index.js +6 -3
- package/dist/cjs/components/DataForm/index.js.map +1 -1
- package/dist/cjs/components/DataTable/GridBuilder/index.js.map +1 -1
- package/dist/cjs/components/DataTable/SearchBar/index.js +184 -0
- package/dist/cjs/components/DataTable/SearchBar/index.js.map +1 -0
- package/dist/cjs/components/DataTable/index.js +47 -31
- package/dist/cjs/components/DataTable/index.js.map +1 -1
- package/dist/cjs/components/DataTable/types.js.map +1 -1
- package/dist/esm/components/DataForm/ButtonContainer/index.js +154 -0
- package/dist/esm/components/DataForm/ButtonContainer/index.js.map +1 -0
- package/dist/esm/components/DataForm/FieldBuilder/index.js.map +1 -1
- package/dist/esm/components/DataForm/FormBuilder/index.js +180 -67
- package/dist/esm/components/DataForm/FormBuilder/index.js.map +1 -1
- package/dist/esm/components/DataForm/FormBuilder/types.js.map +1 -1
- package/dist/esm/components/DataForm/index.js +7 -4
- package/dist/esm/components/DataForm/index.js.map +1 -1
- package/dist/esm/components/DataTable/GridBuilder/index.js.map +1 -1
- package/dist/esm/components/DataTable/SearchBar/index.js +180 -0
- package/dist/esm/components/DataTable/SearchBar/index.js.map +1 -0
- package/dist/esm/components/DataTable/index.js +45 -29
- package/dist/esm/components/DataTable/index.js.map +1 -1
- package/dist/esm/components/DataTable/types.js.map +1 -1
- package/dist/esm/types/components/DataForm/ButtonContainer/index.d.ts +12 -0
- package/dist/esm/types/components/DataForm/ButtonContainer/index.d.ts.map +1 -0
- package/dist/esm/types/components/DataForm/ButtonContainer/types.d.ts +82 -0
- package/dist/esm/types/components/DataForm/ButtonContainer/types.d.ts.map +1 -0
- package/dist/esm/types/components/DataForm/FieldBuilder/index.d.ts.map +1 -1
- package/dist/esm/types/components/DataForm/FormBuilder/index.d.ts.map +1 -1
- package/dist/esm/types/components/DataForm/FormBuilder/types.d.ts +40 -0
- package/dist/esm/types/components/DataForm/FormBuilder/types.d.ts.map +1 -1
- package/dist/esm/types/components/DataForm/index.d.ts.map +1 -1
- package/dist/esm/types/components/DataForm/types.d.ts +2 -0
- package/dist/esm/types/components/DataForm/types.d.ts.map +1 -1
- package/dist/esm/types/components/DataTable/SearchBar/index.d.ts +11 -0
- package/dist/esm/types/components/DataTable/SearchBar/index.d.ts.map +1 -0
- package/dist/esm/types/components/DataTable/index.d.ts +1 -1
- package/dist/esm/types/components/DataTable/index.d.ts.map +1 -1
- package/dist/esm/types/components/DataTable/types.d.ts +37 -0
- package/dist/esm/types/components/DataTable/types.d.ts.map +1 -1
- package/dist/esm/types/components/index.d.ts +1 -0
- package/dist/esm/types/components/index.d.ts.map +1 -1
- package/package.json +6 -6
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* <license header>
|
|
3
|
+
*/
|
|
4
|
+
import { ReactElement } from 'react';
|
|
5
|
+
/**
|
|
6
|
+
* Configuration for a secondary button in the form
|
|
7
|
+
*/
|
|
8
|
+
export interface FormSecondaryButton {
|
|
9
|
+
/** Unique identifier for the button */
|
|
10
|
+
key: string;
|
|
11
|
+
/** Button label text */
|
|
12
|
+
label: string;
|
|
13
|
+
/** Optional icon to display in the button */
|
|
14
|
+
icon?: ReactElement;
|
|
15
|
+
/** Async handler called when button is pressed */
|
|
16
|
+
onPress: () => Promise<void>;
|
|
17
|
+
/** Button variant style. Defaults to 'secondary' */
|
|
18
|
+
variant?: 'primary' | 'secondary' | 'negative';
|
|
19
|
+
/** Whether the button is disabled. Defaults to false */
|
|
20
|
+
isDisabled?: boolean;
|
|
21
|
+
/** Button type. Defaults to 'button' */
|
|
22
|
+
type?: 'button' | 'submit';
|
|
23
|
+
/** Custom ARIA label for accessibility */
|
|
24
|
+
ariaLabel?: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Configuration for the submit button
|
|
28
|
+
*/
|
|
29
|
+
export interface SubmitButtonConfig {
|
|
30
|
+
/** Button label text. Defaults to 'Save' */
|
|
31
|
+
label?: string;
|
|
32
|
+
/** Icon to display in the button. Defaults to SaveFloppy */
|
|
33
|
+
icon?: ReactElement;
|
|
34
|
+
/** Whether to hide the button. Defaults to false */
|
|
35
|
+
isHidden?: boolean;
|
|
36
|
+
/** Custom ARIA label for accessibility */
|
|
37
|
+
ariaLabel?: string;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Configuration for the back button
|
|
41
|
+
*/
|
|
42
|
+
export interface BackButtonConfig {
|
|
43
|
+
/** Button label text. Defaults to 'Back' */
|
|
44
|
+
label?: string;
|
|
45
|
+
/** Icon to display in the button. Defaults to Back */
|
|
46
|
+
icon?: ReactElement;
|
|
47
|
+
/** Whether to hide the button. Defaults to false */
|
|
48
|
+
isHidden?: boolean;
|
|
49
|
+
/** Custom ARIA label for accessibility */
|
|
50
|
+
ariaLabel?: string;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Complete configuration for form buttons
|
|
54
|
+
*/
|
|
55
|
+
export interface FormButtonConfig {
|
|
56
|
+
/** Configuration for the submit button */
|
|
57
|
+
submitButton?: SubmitButtonConfig;
|
|
58
|
+
/** Configuration for the back button */
|
|
59
|
+
backButton?: BackButtonConfig;
|
|
60
|
+
/** Array of additional secondary buttons */
|
|
61
|
+
secondaryButtons?: FormSecondaryButton[];
|
|
62
|
+
/** Position of button container relative to form. Defaults to 'after' */
|
|
63
|
+
position?: 'before' | 'after';
|
|
64
|
+
/** Horizontal alignment of buttons. Defaults to 'start' */
|
|
65
|
+
alignment?: 'start' | 'center' | 'end';
|
|
66
|
+
/** Gap size between buttons. Defaults to 'small' */
|
|
67
|
+
gap?: 'small' | 'medium' | 'large';
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Props for the ButtonContainer component
|
|
71
|
+
*/
|
|
72
|
+
export interface ButtonContainerProps {
|
|
73
|
+
/** Button configuration */
|
|
74
|
+
buttonConfig?: FormButtonConfig;
|
|
75
|
+
/** Whether form is currently submitting */
|
|
76
|
+
isSubmitting: boolean;
|
|
77
|
+
/** External processing state */
|
|
78
|
+
isProcessing: boolean;
|
|
79
|
+
/** Handler for back button press */
|
|
80
|
+
onBackPress: () => void;
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/components/DataForm/ButtonContainer/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAErC;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,uCAAuC;IACvC,GAAG,EAAE,MAAM,CAAC;IAEZ,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAC;IAEd,6CAA6C;IAC7C,IAAI,CAAC,EAAE,YAAY,CAAC;IAEpB,kDAAkD;IAClD,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7B,oDAAoD;IACpD,OAAO,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,UAAU,CAAC;IAE/C,wDAAwD;IACxD,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,wCAAwC;IACxC,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAE3B,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,4DAA4D;IAC5D,IAAI,CAAC,EAAE,YAAY,CAAC;IAEpB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,sDAAsD;IACtD,IAAI,CAAC,EAAE,YAAY,CAAC;IAEpB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,0CAA0C;IAC1C,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAElC,wCAAwC;IACxC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAE9B,4CAA4C;IAC5C,gBAAgB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAEzC,yEAAyE;IACzE,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAE9B,2DAA2D;IAC3D,SAAS,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IAEvC,oDAAoD;IACpD,GAAG,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;CACpC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,2BAA2B;IAC3B,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAEhC,2CAA2C;IAC3C,YAAY,EAAE,OAAO,CAAC;IAEtB,gCAAgC;IAChC,YAAY,EAAE,OAAO,CAAC;IAEtB,oCAAoC;IACpC,WAAW,EAAE,MAAM,IAAI,CAAC;CACzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/DataForm/FieldBuilder/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAmB,MAAM,OAAO,CAAC;AAYxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAG5C,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/DataForm/FieldBuilder/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAmB,MAAM,OAAO,CAAC;AAYxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAG5C,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAqN7C,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/DataForm/FormBuilder/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/DataForm/FormBuilder/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAyC,MAAM,OAAO,CAAC;AAE9D,OAAO,EAAE,gBAAgB,EAAyC,MAAM,SAAS,CAAC;AAwClF,QAAA,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA2M3C,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* <license header>
|
|
3
3
|
*/
|
|
4
4
|
import React from 'react';
|
|
5
|
+
import { FormButtonConfig } from '../ButtonContainer/types';
|
|
5
6
|
export declare enum FieldType {
|
|
6
7
|
TEXT = "text",
|
|
7
8
|
EMAIL = "email",
|
|
@@ -15,6 +16,43 @@ export declare enum FieldType {
|
|
|
15
16
|
TOGGLE = "toggle",
|
|
16
17
|
LABEL = "label"
|
|
17
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* Dependency condition types for field visibility
|
|
21
|
+
*/
|
|
22
|
+
export type DependencyCondition = {
|
|
23
|
+
type: 'equals';
|
|
24
|
+
value: any;
|
|
25
|
+
} | {
|
|
26
|
+
type: 'notEquals';
|
|
27
|
+
value: any;
|
|
28
|
+
} | {
|
|
29
|
+
type: 'in';
|
|
30
|
+
values: any[];
|
|
31
|
+
} | {
|
|
32
|
+
type: 'notIn';
|
|
33
|
+
values: any[];
|
|
34
|
+
} | {
|
|
35
|
+
type: 'greaterThan';
|
|
36
|
+
value: number;
|
|
37
|
+
} | {
|
|
38
|
+
type: 'lessThan';
|
|
39
|
+
value: number;
|
|
40
|
+
} | {
|
|
41
|
+
type: 'truthy';
|
|
42
|
+
} | {
|
|
43
|
+
type: 'falsy';
|
|
44
|
+
} | {
|
|
45
|
+
type: 'custom';
|
|
46
|
+
validator: (value: any, formValues: Record<string, any>) => boolean;
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* Field dependency configuration
|
|
50
|
+
*/
|
|
51
|
+
export interface FieldDependency {
|
|
52
|
+
field: string;
|
|
53
|
+
condition: DependencyCondition;
|
|
54
|
+
clearValueOnHide?: boolean;
|
|
55
|
+
}
|
|
18
56
|
export interface FormBuilderProps {
|
|
19
57
|
components: FormBuilderComponents;
|
|
20
58
|
editItem?: Record<string, any>;
|
|
@@ -24,6 +62,7 @@ export interface FormBuilderProps {
|
|
|
24
62
|
onBackPress?: () => void;
|
|
25
63
|
isProcessing?: boolean;
|
|
26
64
|
usePlaceholder?: boolean;
|
|
65
|
+
buttonConfig?: FormButtonConfig;
|
|
27
66
|
}
|
|
28
67
|
export interface FormBuilderComponents {
|
|
29
68
|
groups: FormBuilderGroup[];
|
|
@@ -45,6 +84,7 @@ export interface FormBuilderField {
|
|
|
45
84
|
options?: FormBuilderOption[];
|
|
46
85
|
contextualHelp?: React.ReactNode;
|
|
47
86
|
onFieldChange?: (value: any) => void;
|
|
87
|
+
dependsOn?: FieldDependency;
|
|
48
88
|
}
|
|
49
89
|
export interface FormBuilderOption {
|
|
50
90
|
value: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/components/DataForm/FormBuilder/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/components/DataForm/FormBuilder/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/DataForm/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAmD,MAAM,OAAO,CAAC;AAExE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAGxC,QAAA,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/DataForm/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAmD,MAAM,OAAO,CAAC;AAExE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAGxC,QAAA,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAyDrC,CAAC;AAEF,eAAe,QAAQ,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* <license header>
|
|
3
3
|
*/
|
|
4
4
|
import { FormBuilderComponents } from './FormBuilder/types';
|
|
5
|
+
import { FormButtonConfig } from './ButtonContainer/types';
|
|
5
6
|
export interface DataFormProps {
|
|
6
7
|
components: FormBuilderComponents;
|
|
7
8
|
editItem: Record<string, any>;
|
|
@@ -12,5 +13,6 @@ export interface DataFormProps {
|
|
|
12
13
|
onBackPress?: () => void;
|
|
13
14
|
isProcessing?: boolean;
|
|
14
15
|
usePlaceholder?: boolean;
|
|
16
|
+
buttonConfig?: FormButtonConfig;
|
|
15
17
|
}
|
|
16
18
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/DataForm/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/DataForm/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,qBAAqB,CAAC;IAClC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9B,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,gBAAgB,CAAC;CACjC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* <license header>
|
|
3
|
+
*/
|
|
4
|
+
import { DataTableSearchConfig } from '../types';
|
|
5
|
+
export interface SearchBarProps {
|
|
6
|
+
searchConfig: DataTableSearchConfig;
|
|
7
|
+
onSearch: (searchText: string, searchColumns?: string[]) => Promise<void>;
|
|
8
|
+
}
|
|
9
|
+
declare const SearchBar: ({ searchConfig, onSearch }: SearchBarProps) => JSX.Element | null;
|
|
10
|
+
export default SearchBar;
|
|
11
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/components/DataTable/SearchBar/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAEjD,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,qBAAqB,CAAC;IACpC,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3E;AAED,QAAA,MAAM,SAAS,GAAI,4BAA4B,cAAc,KAAG,GAAG,CAAC,OAAO,GAAG,IAuJ7E,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
* <license header>
|
|
3
3
|
*/
|
|
4
4
|
import { DataTableProps, DataTableRow } from './types';
|
|
5
|
-
declare const DataTable: <T extends DataTableRow = DataTableRow>({ columns, data, buttons, massActions, onMassActionPress, gridAction, gridActions, onGridActionPress, onGridLoad, isProcessing, maxHeight, }: DataTableProps<T>) => JSX.Element;
|
|
5
|
+
declare const DataTable: <T extends DataTableRow = DataTableRow>({ columns, data, buttons, massActions, onMassActionPress, gridAction, gridActions, onGridActionPress, onGridLoad, isProcessing, maxHeight, searchConfig, onSearch, }: DataTableProps<T>) => JSX.Element;
|
|
6
6
|
export default DataTable;
|
|
7
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/DataTable/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/DataTable/index.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAAE,cAAc,EAAc,YAAY,EAAE,MAAM,SAAS,CAAC;AAGnE,QAAA,MAAM,SAAS,GAAI,CAAC,SAAS,YAAY,GAAG,YAAY,EAAE,sKAcvD,cAAc,CAAC,CAAC,CAAC,KAAG,GAAG,CAAC,OAqF1B,CAAC;AAEF,eAAe,SAAS,CAAC"}
|
|
@@ -12,6 +12,39 @@ export interface DataTableRow {
|
|
|
12
12
|
id: string | number;
|
|
13
13
|
[key: string]: any;
|
|
14
14
|
}
|
|
15
|
+
/**
|
|
16
|
+
* Configuration options for DataTable search functionality
|
|
17
|
+
*/
|
|
18
|
+
export interface DataTableSearchConfig {
|
|
19
|
+
/** Flag to enable/disable search bar */
|
|
20
|
+
enabled: boolean;
|
|
21
|
+
/** Placeholder text for search input (default: "Search...") */
|
|
22
|
+
placeholder?: string;
|
|
23
|
+
/** Accessible label for search button (default: "Search") */
|
|
24
|
+
searchButtonLabel?: string;
|
|
25
|
+
/** Accessible label for clear button (default: "Clear search") */
|
|
26
|
+
clearButtonLabel?: string;
|
|
27
|
+
/** Show clear button when text exists (default: true) */
|
|
28
|
+
showClearButton?: boolean;
|
|
29
|
+
/** Search while typing vs. button click only (default: false) */
|
|
30
|
+
searchOnType?: boolean;
|
|
31
|
+
/** Debounce time for search-as-you-type in ms (default: 300, only applies when searchOnType: true) */
|
|
32
|
+
debounceMs?: number;
|
|
33
|
+
/** Case-sensitive search (default: false) */
|
|
34
|
+
caseSensitive?: boolean;
|
|
35
|
+
/** Specific columns to search (empty = all columns) */
|
|
36
|
+
searchableColumns?: string[];
|
|
37
|
+
/** Minimum characters before search triggers (default: 1) */
|
|
38
|
+
minCharacters?: number;
|
|
39
|
+
/** Maximum length of search input (default: 100) */
|
|
40
|
+
maxLength?: number;
|
|
41
|
+
/** Show count of filtered results (default: false) */
|
|
42
|
+
showResultsCount?: boolean;
|
|
43
|
+
/** Show loading state in search button */
|
|
44
|
+
isSearching?: boolean;
|
|
45
|
+
/** ARIA label for search input (default: "Search table") */
|
|
46
|
+
ariaLabel?: string;
|
|
47
|
+
}
|
|
15
48
|
export interface DataTableProps<T extends DataTableRow = DataTableRow> {
|
|
16
49
|
columns?: DataTableColumn[];
|
|
17
50
|
data?: T[];
|
|
@@ -24,6 +57,10 @@ export interface DataTableProps<T extends DataTableRow = DataTableRow> {
|
|
|
24
57
|
onGridLoad?: () => Promise<void>;
|
|
25
58
|
isProcessing?: boolean;
|
|
26
59
|
maxHeight?: string;
|
|
60
|
+
/** Search configuration options */
|
|
61
|
+
searchConfig?: DataTableSearchConfig;
|
|
62
|
+
/** Callback triggered when search is performed */
|
|
63
|
+
onSearch?: (searchText: string, searchColumns?: string[]) => Promise<void>;
|
|
27
64
|
}
|
|
28
65
|
export interface MassActionProps {
|
|
29
66
|
key: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/DataTable/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAErC,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY;IACnE,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IACX,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;IAChC,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpF,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,WAAW,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;IACnC,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/DataTable/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,7 @@ export type { DataFormProps } from './DataForm/types';
|
|
|
21
21
|
export type { FormBuilderProps, FormBuilderComponents, FormBuilderGroup, FormBuilderField, FormBuilderOption, } from './DataForm/FormBuilder/types';
|
|
22
22
|
export { FieldType } from './DataForm/FormBuilder/types';
|
|
23
23
|
export type { FieldBuilderProps } from './DataForm/FieldBuilder/types';
|
|
24
|
+
export type { FormButtonConfig, SubmitButtonConfig, BackButtonConfig, FormSecondaryButton, ButtonContainerProps, } from './DataForm/ButtonContainer/types';
|
|
24
25
|
/**
|
|
25
26
|
* @deprecated ShippingCarrierForm types are deprecated. Use DataForm types directly.
|
|
26
27
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEjD;;GAEG;AACH,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AAGrD,YAAY,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACnF,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACnE,YAAY,EACV,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,yCAAyC,CAAC;AACjD,YAAY,EACV,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,sCAAsC,CAAC;AAC9C,YAAY,EACV,cAAc,EACd,eAAe,EACf,YAAY,EACZ,eAAe,EACf,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,YAAY,EACV,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEjD;;GAEG;AACH,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AAGrD,YAAY,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACnF,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACnE,YAAY,EACV,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,yCAAyC,CAAC;AACjD,YAAY,EACV,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,sCAAsC,CAAC;AAC9C,YAAY,EACV,cAAc,EACd,eAAe,EACf,YAAY,EACZ,eAAe,EACf,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,YAAY,EACV,gBAAgB,EAChB,qBAAqB,EACrB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,YAAY,EACV,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,kCAAkC,CAAC;AAE1C;;GAEG;AACH,YAAY,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC1F,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adobe-commerce/aio-experience-kit",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.4",
|
|
4
4
|
"description": "A comprehensive TypeScript toolkit for building Adobe Commerce Admin UI extensions with React Spectrum components. Provides production-ready components and utilities for Adobe I/O extensibility platform integration.",
|
|
5
5
|
"main": "./dist/cjs/index.js",
|
|
6
6
|
"module": "./dist/esm/index.js",
|
|
@@ -58,13 +58,13 @@
|
|
|
58
58
|
"peerDependencies": {
|
|
59
59
|
"react": ">=16.8.0",
|
|
60
60
|
"react-dom": ">=16.8.0",
|
|
61
|
-
"react-router-dom": ">=6.0.0"
|
|
61
|
+
"react-router-dom": ">=6.0.0",
|
|
62
|
+
"@adobe/react-spectrum": ">=3.4.0",
|
|
63
|
+
"@react-spectrum/provider": ">=3.10.0",
|
|
64
|
+
"@react-spectrum/theme-default": ">=3.5.0"
|
|
62
65
|
},
|
|
63
66
|
"dependencies": {
|
|
64
|
-
"@adobe/
|
|
65
|
-
"@adobe/uix-guest": "^1.0.5",
|
|
66
|
-
"@react-spectrum/provider": "^3.10.11",
|
|
67
|
-
"@react-spectrum/theme-default": "^3.5.22"
|
|
67
|
+
"@adobe/uix-guest": "^1.0.5"
|
|
68
68
|
},
|
|
69
69
|
"devDependencies": {
|
|
70
70
|
"@babel/core": "^7.24.0",
|