ding-react-admin 1.0.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.
- package/LICENSE +21 -0
- package/README.md +74 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +3067 -0
- package/dist/src/app/AdminApp.d.ts +7 -0
- package/dist/src/app/AdminApp.d.ts.map +1 -0
- package/dist/src/components/AuthAlternateLink.d.ts +7 -0
- package/dist/src/components/AuthAlternateLink.d.ts.map +1 -0
- package/dist/src/components/DensitySwitch.d.ts +2 -0
- package/dist/src/components/DensitySwitch.d.ts.map +1 -0
- package/dist/src/components/ThemeSwitch.d.ts +2 -0
- package/dist/src/components/ThemeSwitch.d.ts.map +1 -0
- package/dist/src/components/ThemeToolbar.d.ts +2 -0
- package/dist/src/components/ThemeToolbar.d.ts.map +1 -0
- package/dist/src/components/index.d.ts +5 -0
- package/dist/src/components/index.d.ts.map +1 -0
- package/dist/src/context/AppThemeProvider.d.ts +13 -0
- package/dist/src/context/AppThemeProvider.d.ts.map +1 -0
- package/dist/src/context/AuthProvider.d.ts +18 -0
- package/dist/src/context/AuthProvider.d.ts.map +1 -0
- package/dist/src/context/DataProvider.d.ts +10 -0
- package/dist/src/context/DataProvider.d.ts.map +1 -0
- package/dist/src/context/PermissionsProvider.d.ts +18 -0
- package/dist/src/context/PermissionsProvider.d.ts.map +1 -0
- package/dist/src/crud/FilterBar.d.ts +6 -0
- package/dist/src/crud/FilterBar.d.ts.map +1 -0
- package/dist/src/crud/FormSteps.d.ts +20 -0
- package/dist/src/crud/FormSteps.d.ts.map +1 -0
- package/dist/src/crud/FormTabs.d.ts +13 -0
- package/dist/src/crud/FormTabs.d.ts.map +1 -0
- package/dist/src/crud/InlineFormSet.d.ts +29 -0
- package/dist/src/crud/InlineFormSet.d.ts.map +1 -0
- package/dist/src/crud/ListActionsBar.d.ts +15 -0
- package/dist/src/crud/ListActionsBar.d.ts.map +1 -0
- package/dist/src/crud/ResourceForm.d.ts +21 -0
- package/dist/src/crud/ResourceForm.d.ts.map +1 -0
- package/dist/src/crud/ResourceFormModal.d.ts +10 -0
- package/dist/src/crud/ResourceFormModal.d.ts.map +1 -0
- package/dist/src/crud/ResourceList.d.ts +38 -0
- package/dist/src/crud/ResourceList.d.ts.map +1 -0
- package/dist/src/crud/columns/BooleanColumn.d.ts +6 -0
- package/dist/src/crud/columns/BooleanColumn.d.ts.map +1 -0
- package/dist/src/crud/columns/CustomColumn.d.ts +9 -0
- package/dist/src/crud/columns/CustomColumn.d.ts.map +1 -0
- package/dist/src/crud/columns/DateColumn.d.ts +6 -0
- package/dist/src/crud/columns/DateColumn.d.ts.map +1 -0
- package/dist/src/crud/columns/NumberColumn.d.ts +6 -0
- package/dist/src/crud/columns/NumberColumn.d.ts.map +1 -0
- package/dist/src/crud/columns/ReferenceColumn.d.ts +6 -0
- package/dist/src/crud/columns/ReferenceColumn.d.ts.map +1 -0
- package/dist/src/crud/columns/ReferenceManyColumn.d.ts +6 -0
- package/dist/src/crud/columns/ReferenceManyColumn.d.ts.map +1 -0
- package/dist/src/crud/columns/TextColumn.d.ts +7 -0
- package/dist/src/crud/columns/TextColumn.d.ts.map +1 -0
- package/dist/src/crud/context/FilterContext.d.ts +17 -0
- package/dist/src/crud/context/FilterContext.d.ts.map +1 -0
- package/dist/src/crud/context/FormContext.d.ts +16 -0
- package/dist/src/crud/context/FormContext.d.ts.map +1 -0
- package/dist/src/crud/context/FormFieldsContext.d.ts +14 -0
- package/dist/src/crud/context/FormFieldsContext.d.ts.map +1 -0
- package/dist/src/crud/context/FormSectionContext.d.ts +7 -0
- package/dist/src/crud/context/FormSectionContext.d.ts.map +1 -0
- package/dist/src/crud/context/InlineFormContext.d.ts +16 -0
- package/dist/src/crud/context/InlineFormContext.d.ts.map +1 -0
- package/dist/src/crud/context/ListContext.d.ts +22 -0
- package/dist/src/crud/context/ListContext.d.ts.map +1 -0
- package/dist/src/crud/fields/BooleanField.d.ts +7 -0
- package/dist/src/crud/fields/BooleanField.d.ts.map +1 -0
- package/dist/src/crud/fields/DateField.d.ts +8 -0
- package/dist/src/crud/fields/DateField.d.ts.map +1 -0
- package/dist/src/crud/fields/FieldWrapper.d.ts +29 -0
- package/dist/src/crud/fields/FieldWrapper.d.ts.map +1 -0
- package/dist/src/crud/fields/NumberField.d.ts +12 -0
- package/dist/src/crud/fields/NumberField.d.ts.map +1 -0
- package/dist/src/crud/fields/PasswordField.d.ts +11 -0
- package/dist/src/crud/fields/PasswordField.d.ts.map +1 -0
- package/dist/src/crud/fields/ReferenceField.d.ts +18 -0
- package/dist/src/crud/fields/ReferenceField.d.ts.map +1 -0
- package/dist/src/crud/fields/ReferenceManyField.d.ts +9 -0
- package/dist/src/crud/fields/ReferenceManyField.d.ts.map +1 -0
- package/dist/src/crud/fields/SelectField.d.ts +10 -0
- package/dist/src/crud/fields/SelectField.d.ts.map +1 -0
- package/dist/src/crud/fields/TextField.d.ts +10 -0
- package/dist/src/crud/fields/TextField.d.ts.map +1 -0
- package/dist/src/crud/fields/useInlineOrFormField.d.ts +10 -0
- package/dist/src/crud/fields/useInlineOrFormField.d.ts.map +1 -0
- package/dist/src/crud/filters/BooleanFilter.d.ts +4 -0
- package/dist/src/crud/filters/BooleanFilter.d.ts.map +1 -0
- package/dist/src/crud/filters/DateFilter.d.ts +4 -0
- package/dist/src/crud/filters/DateFilter.d.ts.map +1 -0
- package/dist/src/crud/filters/NumberFilter.d.ts +4 -0
- package/dist/src/crud/filters/NumberFilter.d.ts.map +1 -0
- package/dist/src/crud/filters/ReferenceFilter.d.ts +13 -0
- package/dist/src/crud/filters/ReferenceFilter.d.ts.map +1 -0
- package/dist/src/crud/filters/SelectFilter.d.ts +7 -0
- package/dist/src/crud/filters/SelectFilter.d.ts.map +1 -0
- package/dist/src/crud/filters/TextFilter.d.ts +6 -0
- package/dist/src/crud/filters/TextFilter.d.ts.map +1 -0
- package/dist/src/crud/index.d.ts +44 -0
- package/dist/src/crud/index.d.ts.map +1 -0
- package/dist/src/crud/types.d.ts +99 -0
- package/dist/src/crud/types.d.ts.map +1 -0
- package/dist/src/crud/utils/formErrors.d.ts +9 -0
- package/dist/src/crud/utils/formErrors.d.ts.map +1 -0
- package/dist/src/crud/utils/formSectionErrors.d.ts +6 -0
- package/dist/src/crud/utils/formSectionErrors.d.ts.map +1 -0
- package/dist/src/crud/utils/getByPath.d.ts +3 -0
- package/dist/src/crud/utils/getByPath.d.ts.map +1 -0
- package/dist/src/crud/utils/inlineArrayName.d.ts +3 -0
- package/dist/src/crud/utils/inlineArrayName.d.ts.map +1 -0
- package/dist/src/crud/utils/pickBySources.d.ts +6 -0
- package/dist/src/crud/utils/pickBySources.d.ts.map +1 -0
- package/dist/src/crud/utils/setByPath.d.ts +3 -0
- package/dist/src/crud/utils/setByPath.d.ts.map +1 -0
- package/dist/src/crud/utils/sortQueryParam.d.ts +7 -0
- package/dist/src/crud/utils/sortQueryParam.d.ts.map +1 -0
- package/dist/src/crud/utils/useChoices.d.ts +10 -0
- package/dist/src/crud/utils/useChoices.d.ts.map +1 -0
- package/dist/src/crud/utils/useListQueryState.d.ts +22 -0
- package/dist/src/crud/utils/useListQueryState.d.ts.map +1 -0
- package/dist/src/data/createMemoryResourceHandlers.d.ts +23 -0
- package/dist/src/data/createMemoryResourceHandlers.d.ts.map +1 -0
- package/dist/src/data/createRestResourceHandlers.d.ts +22 -0
- package/dist/src/data/createRestResourceHandlers.d.ts.map +1 -0
- package/dist/src/data/dataProviderTypes.d.ts +67 -0
- package/dist/src/data/dataProviderTypes.d.ts.map +1 -0
- package/dist/src/data/dataUtils.test.d.ts +2 -0
- package/dist/src/data/dataUtils.test.d.ts.map +1 -0
- package/dist/src/data/inMemoryList.d.ts +12 -0
- package/dist/src/data/inMemoryList.d.ts.map +1 -0
- package/dist/src/data/parseFormErrorHelpers.d.ts +35 -0
- package/dist/src/data/parseFormErrorHelpers.d.ts.map +1 -0
- package/dist/src/data/parseFormErrorHelpers.test.d.ts +2 -0
- package/dist/src/data/parseFormErrorHelpers.test.d.ts.map +1 -0
- package/dist/src/data/resourceHandlers.d.ts +33 -0
- package/dist/src/data/resourceHandlers.d.ts.map +1 -0
- package/dist/src/data/sortHelpers.d.ts +17 -0
- package/dist/src/data/sortHelpers.d.ts.map +1 -0
- package/dist/src/index.d.ts +31 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/layouts/AdminLayout.d.ts +3 -0
- package/dist/src/layouts/AdminLayout.d.ts.map +1 -0
- package/dist/src/layouts/AuthPageLayout.d.ts +11 -0
- package/dist/src/layouts/AuthPageLayout.d.ts.map +1 -0
- package/dist/src/pages/LoginPage.d.ts +3 -0
- package/dist/src/pages/LoginPage.d.ts.map +1 -0
- package/dist/src/pages/PlaceholderPage.d.ts +4 -0
- package/dist/src/pages/PlaceholderPage.d.ts.map +1 -0
- package/dist/src/permissions/resourcePermissions.d.ts +22 -0
- package/dist/src/permissions/resourcePermissions.d.ts.map +1 -0
- package/dist/src/router/createAdminRouter.d.ts +3 -0
- package/dist/src/router/createAdminRouter.d.ts.map +1 -0
- package/dist/src/router/guards.d.ts +20 -0
- package/dist/src/router/guards.d.ts.map +1 -0
- package/dist/src/router/routeAccess.d.ts +21 -0
- package/dist/src/router/routeAccess.d.ts.map +1 -0
- package/dist/src/types.d.ts +123 -0
- package/dist/src/types.d.ts.map +1 -0
- package/package.json +58 -0
- package/src/app/AdminApp.tsx +34 -0
- package/src/components/AuthAlternateLink.tsx +23 -0
- package/src/components/DensitySwitch.tsx +31 -0
- package/src/components/ThemeSwitch.tsx +28 -0
- package/src/components/ThemeToolbar.tsx +34 -0
- package/src/components/index.ts +4 -0
- package/src/context/AppThemeProvider.tsx +128 -0
- package/src/context/AuthProvider.tsx +77 -0
- package/src/context/DataProvider.tsx +30 -0
- package/src/context/PermissionsProvider.tsx +57 -0
- package/src/crud/FilterBar.tsx +36 -0
- package/src/crud/FormSteps.tsx +135 -0
- package/src/crud/FormTabs.tsx +126 -0
- package/src/crud/InlineFormSet.tsx +231 -0
- package/src/crud/ListActionsBar.tsx +106 -0
- package/src/crud/ResourceForm.tsx +281 -0
- package/src/crud/ResourceFormModal.tsx +121 -0
- package/src/crud/ResourceList.tsx +633 -0
- package/src/crud/columns/BooleanColumn.tsx +32 -0
- package/src/crud/columns/CustomColumn.tsx +33 -0
- package/src/crud/columns/DateColumn.tsx +28 -0
- package/src/crud/columns/NumberColumn.tsx +31 -0
- package/src/crud/columns/ReferenceColumn.tsx +85 -0
- package/src/crud/columns/ReferenceManyColumn.tsx +67 -0
- package/src/crud/columns/TextColumn.tsx +38 -0
- package/src/crud/context/FilterContext.tsx +71 -0
- package/src/crud/context/FormContext.tsx +39 -0
- package/src/crud/context/FormFieldsContext.tsx +76 -0
- package/src/crud/context/FormSectionContext.tsx +22 -0
- package/src/crud/context/InlineFormContext.tsx +71 -0
- package/src/crud/context/ListContext.tsx +93 -0
- package/src/crud/fields/BooleanField.tsx +32 -0
- package/src/crud/fields/DateField.tsx +47 -0
- package/src/crud/fields/FieldWrapper.tsx +109 -0
- package/src/crud/fields/NumberField.tsx +50 -0
- package/src/crud/fields/PasswordField.tsx +98 -0
- package/src/crud/fields/ReferenceField.tsx +191 -0
- package/src/crud/fields/ReferenceManyField.tsx +70 -0
- package/src/crud/fields/SelectField.tsx +42 -0
- package/src/crud/fields/TextField.tsx +44 -0
- package/src/crud/fields/useInlineOrFormField.tsx +91 -0
- package/src/crud/filters/BooleanFilter.tsx +38 -0
- package/src/crud/filters/DateFilter.tsx +35 -0
- package/src/crud/filters/NumberFilter.tsx +33 -0
- package/src/crud/filters/ReferenceFilter.tsx +173 -0
- package/src/crud/filters/SelectFilter.tsx +44 -0
- package/src/crud/filters/TextFilter.tsx +36 -0
- package/src/crud/index.ts +73 -0
- package/src/crud/types.ts +130 -0
- package/src/crud/utils/formErrors.ts +38 -0
- package/src/crud/utils/formSectionErrors.ts +85 -0
- package/src/crud/utils/getByPath.ts +13 -0
- package/src/crud/utils/inlineArrayName.ts +4 -0
- package/src/crud/utils/pickBySources.ts +24 -0
- package/src/crud/utils/setByPath.ts +18 -0
- package/src/crud/utils/sortQueryParam.ts +37 -0
- package/src/crud/utils/useChoices.ts +182 -0
- package/src/crud/utils/useListQueryState.ts +191 -0
- package/src/data/createMemoryResourceHandlers.ts +78 -0
- package/src/data/createRestResourceHandlers.ts +57 -0
- package/src/data/dataProviderTypes.ts +101 -0
- package/src/data/dataUtils.test.ts +108 -0
- package/src/data/inMemoryList.ts +97 -0
- package/src/data/parseFormErrorHelpers.test.ts +84 -0
- package/src/data/parseFormErrorHelpers.ts +224 -0
- package/src/data/resourceHandlers.ts +124 -0
- package/src/data/sortHelpers.ts +48 -0
- package/src/index.ts +182 -0
- package/src/layouts/AdminLayout.tsx +381 -0
- package/src/layouts/AuthPageLayout.tsx +81 -0
- package/src/pages/LoginPage.tsx +80 -0
- package/src/pages/PlaceholderPage.tsx +9 -0
- package/src/permissions/resourcePermissions.ts +47 -0
- package/src/router/createAdminRouter.tsx +64 -0
- package/src/router/guards.tsx +63 -0
- package/src/router/routeAccess.ts +89 -0
- package/src/types.ts +135 -0
- package/src/vite-env.d.ts +1 -0
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { FieldRules } from '../types';
|
|
3
|
+
export type FieldWrapperProps = {
|
|
4
|
+
source: string;
|
|
5
|
+
label?: string;
|
|
6
|
+
required?: boolean;
|
|
7
|
+
rules?: FieldRules;
|
|
8
|
+
children: (props: {
|
|
9
|
+
value: unknown;
|
|
10
|
+
onChange: (value: unknown) => void;
|
|
11
|
+
onBlur: () => void;
|
|
12
|
+
disabled?: boolean;
|
|
13
|
+
}) => ReactNode;
|
|
14
|
+
};
|
|
15
|
+
export declare function FieldWrapper({ source, label, required, rules, children, }: FieldWrapperProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
export declare function InlineFieldWrapper({ name, label, required, rules, hideLabel, children, }: {
|
|
17
|
+
name: string;
|
|
18
|
+
label?: string;
|
|
19
|
+
required?: boolean;
|
|
20
|
+
rules?: FieldRules;
|
|
21
|
+
/** Tabular inlines use column headers — suppress per-cell labels. */
|
|
22
|
+
hideLabel?: boolean;
|
|
23
|
+
children: (props: {
|
|
24
|
+
value: unknown;
|
|
25
|
+
onChange: (value: unknown) => void;
|
|
26
|
+
onBlur: () => void;
|
|
27
|
+
}) => ReactNode;
|
|
28
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
29
|
+
//# sourceMappingURL=FieldWrapper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FieldWrapper.d.ts","sourceRoot":"","sources":["../../../../src/crud/fields/FieldWrapper.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAI3C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,CAAC,KAAK,EAAE;QAChB,KAAK,EAAE,OAAO,CAAC;QACf,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;QACnC,MAAM,EAAE,MAAM,IAAI,CAAC;QACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,KAAK,SAAS,CAAC;CACjB,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAC3B,MAAM,EACN,KAAK,EACL,QAAQ,EACR,KAAK,EACL,QAAQ,GACT,EAAE,iBAAiB,2CA+BnB;AAED,wBAAgB,kBAAkB,CAAC,EACjC,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,KAAK,EACL,SAAS,EACT,QAAQ,GACT,EAAE;IACD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,qEAAqE;IACrE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,CAAC,KAAK,EAAE;QAChB,KAAK,EAAE,OAAO,CAAC;QACf,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;QACnC,MAAM,EAAE,MAAM,IAAI,CAAC;KACpB,KAAK,SAAS,CAAC;CACjB,2CA8BA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { CSSProperties } from 'react';
|
|
2
|
+
import { BaseSourceProps, FieldRules, InlineFieldOptions } from '../types';
|
|
3
|
+
export type NumberFieldProps = BaseSourceProps & InlineFieldOptions & {
|
|
4
|
+
required?: boolean;
|
|
5
|
+
rules?: FieldRules;
|
|
6
|
+
min?: number;
|
|
7
|
+
max?: number;
|
|
8
|
+
step?: number;
|
|
9
|
+
inputStyle?: CSSProperties;
|
|
10
|
+
};
|
|
11
|
+
export declare function NumberField({ source, label, required, rules, min, max, step, width: inlineWidth, minWidth: inlineMinWidth, inputStyle, }: NumberFieldProps): import("react/jsx-runtime").JSX.Element | null;
|
|
12
|
+
//# sourceMappingURL=NumberField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NumberField.d.ts","sourceRoot":"","sources":["../../../../src/crud/fields/NumberField.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGhF,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAC5C,kBAAkB,GAAG;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,aAAa,CAAC;CAC5B,CAAC;AAEJ,wBAAgB,WAAW,CAAC,EAC1B,MAAM,EACN,KAAK,EACL,QAAQ,EACR,KAAK,EACL,GAAG,EACH,GAAG,EACH,IAAI,EACJ,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,cAAc,EACxB,UAAU,GACX,EAAE,gBAAgB,kDAuBlB"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { BaseSourceProps, FieldRules, InlineFieldOptions } from '../types';
|
|
2
|
+
export type PasswordFieldProps = BaseSourceProps & InlineFieldOptions & {
|
|
3
|
+
required?: boolean;
|
|
4
|
+
rules?: FieldRules;
|
|
5
|
+
/** When set, renders a second field and validates it matches `source`. */
|
|
6
|
+
confirmSource?: string;
|
|
7
|
+
confirmLabel?: string;
|
|
8
|
+
autoComplete?: string;
|
|
9
|
+
};
|
|
10
|
+
export declare function PasswordField({ source, label, required, rules, confirmSource, confirmLabel, autoComplete, width, minWidth, }: PasswordFieldProps): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
//# sourceMappingURL=PasswordField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PasswordField.d.ts","sourceRoot":"","sources":["../../../../src/crud/fields/PasswordField.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGhF,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAC9C,kBAAkB,GAAG;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,0EAA0E;IAC1E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAgCJ,wBAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,KAAK,EACL,QAAQ,EACR,KAAK,EACL,aAAa,EACb,YAAiC,EACjC,YAA6B,EAC7B,KAAK,EACL,QAAQ,GACT,EAAE,kBAAkB,2CA0CpB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { CSSProperties } from 'react';
|
|
2
|
+
import { BaseSourceProps, ChoiceOption, FieldRules, InlineFieldOptions, ReferenceProps } from '../types';
|
|
3
|
+
export type ReferenceFieldProps = BaseSourceProps & ReferenceProps & InlineFieldOptions & {
|
|
4
|
+
required?: boolean;
|
|
5
|
+
rules?: FieldRules;
|
|
6
|
+
search?: boolean;
|
|
7
|
+
allowClear?: boolean;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
/** Applied to the underlying Select / input control. */
|
|
10
|
+
inputStyle?: CSSProperties;
|
|
11
|
+
/** Called after the value changes (e.g. to update dependent fields). */
|
|
12
|
+
onValueChange?: (value: unknown, option: ChoiceOption | undefined, meta: {
|
|
13
|
+
name?: string;
|
|
14
|
+
index?: number;
|
|
15
|
+
}) => void;
|
|
16
|
+
};
|
|
17
|
+
export declare function ReferenceField({ source, label, reference, choices, optionLabel, optionValue, required, rules, search, allowClear, disabled: disabledProp, width: inlineWidth, minWidth: inlineMinWidth, inputStyle, onValueChange, }: ReferenceFieldProps): import("react/jsx-runtime").JSX.Element | null;
|
|
18
|
+
//# sourceMappingURL=ReferenceField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReferenceField.d.ts","sourceRoot":"","sources":["../../../../src/crud/fields/ReferenceField.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAI3C,OAAO,KAAK,EAEV,eAAe,EAEf,YAAY,EAEZ,UAAU,EAEV,kBAAkB,EAElB,cAAc,EAEf,MAAM,UAAU,CAAC;AAQlB,MAAM,MAAM,mBAAmB,GAAG,eAAe,GAE/C,cAAc,GAEd,kBAAkB,GAAG;IAEnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,KAAK,CAAC,EAAE,UAAU,CAAC;IAEnB,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,wDAAwD;IAExD,UAAU,CAAC,EAAE,aAAa,CAAC;IAE3B,wEAAwE;IAExE,aAAa,CAAC,EAAE,CAEd,KAAK,EAAE,OAAO,EAEd,MAAM,EAAE,YAAY,GAAG,SAAS,EAEhC,IAAI,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,KAEpC,IAAI,CAAC;CAEX,CAAC;AAIJ,wBAAgB,cAAc,CAAC,EAE7B,MAAM,EAEN,KAAK,EAEL,SAAS,EAET,OAAO,EAEP,WAAoB,EAEpB,WAAkB,EAElB,QAAQ,EAER,KAAK,EAEL,MAAM,EAEN,UAAU,EAEV,QAAQ,EAAE,YAAY,EAEtB,KAAK,EAAE,WAAW,EAElB,QAAQ,EAAE,cAAc,EAExB,UAAU,EAEV,aAAa,GAEd,EAAE,mBAAmB,kDA8FrB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { BaseSourceProps, FieldRules, ReferenceProps } from '../types';
|
|
2
|
+
export type ReferenceManyFieldProps = BaseSourceProps & ReferenceProps & {
|
|
3
|
+
required?: boolean;
|
|
4
|
+
rules?: FieldRules;
|
|
5
|
+
search?: boolean;
|
|
6
|
+
allowClear?: boolean;
|
|
7
|
+
};
|
|
8
|
+
export declare function ReferenceManyField({ source, label, reference, choices, optionLabel, optionValue, required, rules, search, allowClear, }: ReferenceManyFieldProps): import("react/jsx-runtime").JSX.Element | null;
|
|
9
|
+
//# sourceMappingURL=ReferenceManyField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReferenceManyField.d.ts","sourceRoot":"","sources":["../../../../src/crud/fields/ReferenceManyField.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAI5E,MAAM,MAAM,uBAAuB,GAAG,eAAe,GACnD,cAAc,GAAG;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEJ,wBAAgB,kBAAkB,CAAC,EACjC,MAAM,EACN,KAAK,EACL,SAAS,EACT,OAAO,EACP,WAAoB,EACpB,WAAkB,EAClB,QAAQ,EACR,KAAK,EACL,MAAM,EACN,UAAiB,GAClB,EAAE,uBAAuB,kDA4CzB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { BaseSourceProps, ChoiceOption, FieldRules } from '../types';
|
|
2
|
+
export type SelectFieldProps = BaseSourceProps & {
|
|
3
|
+
required?: boolean;
|
|
4
|
+
rules?: FieldRules;
|
|
5
|
+
choices: ChoiceOption[];
|
|
6
|
+
mode?: "multiple";
|
|
7
|
+
allowClear?: boolean;
|
|
8
|
+
};
|
|
9
|
+
export declare function SelectField({ source, label, required, rules, choices, mode, allowClear, }: SelectFieldProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
//# sourceMappingURL=SelectField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectField.d.ts","sourceRoot":"","sources":["../../../../src/crud/fields/SelectField.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG1E,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG;IAC/C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,wBAAgB,WAAW,CAAC,EAC1B,MAAM,EACN,KAAK,EACL,QAAQ,EACR,KAAK,EACL,OAAO,EACP,IAAI,EACJ,UAAU,GACX,EAAE,gBAAgB,2CAqBlB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CSSProperties } from 'react';
|
|
2
|
+
import { BaseSourceProps, FieldRules, InlineFieldOptions } from '../types';
|
|
3
|
+
export type TextFieldProps = BaseSourceProps & InlineFieldOptions & {
|
|
4
|
+
required?: boolean;
|
|
5
|
+
rules?: FieldRules;
|
|
6
|
+
placeholder?: string;
|
|
7
|
+
inputStyle?: CSSProperties;
|
|
8
|
+
};
|
|
9
|
+
export declare function TextField({ source, label, required, rules, placeholder, width: inlineWidth, minWidth: inlineMinWidth, inputStyle, }: TextFieldProps): import("react/jsx-runtime").JSX.Element | null;
|
|
10
|
+
//# sourceMappingURL=TextField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextField.d.ts","sourceRoot":"","sources":["../../../../src/crud/fields/TextField.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGhF,MAAM,MAAM,cAAc,GAAG,eAAe,GAC1C,kBAAkB,GAAG;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,aAAa,CAAC;CAC5B,CAAC;AAEJ,wBAAgB,SAAS,CAAC,EACxB,MAAM,EACN,KAAK,EACL,QAAQ,EACR,KAAK,EACL,WAAW,EACX,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,cAAc,EACxB,UAAU,GACX,EAAE,cAAc,kDAqBhB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { FieldRenderProps, FieldRules, InlineFieldOptions } from '../types';
|
|
3
|
+
export declare function useInlineOrFormField(source: string, label: string | undefined, required: boolean | undefined, rules: FieldRules | undefined, renderInput: (props: FieldRenderProps) => ReactNode, inlineOptions?: InlineFieldOptions): {
|
|
4
|
+
mode: "inline";
|
|
5
|
+
element?: undefined;
|
|
6
|
+
} | {
|
|
7
|
+
mode: "form";
|
|
8
|
+
element: import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=useInlineOrFormField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useInlineOrFormField.d.ts","sourceRoot":"","sources":["../../../../src/crud/fields/useInlineOrFormField.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA8B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEnE,OAAO,KAAK,EACV,gBAAgB,EAChB,UAAU,EAEV,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAGlB,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,QAAQ,EAAE,OAAO,GAAG,SAAS,EAC7B,KAAK,EAAE,UAAU,GAAG,SAAS,EAC7B,WAAW,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,SAAS,EACnD,aAAa,CAAC,EAAE,kBAAkB;;;;;;EA0EnC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BooleanFilter.d.ts","sourceRoot":"","sources":["../../../../src/crud/filters/BooleanFilter.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGhD,MAAM,MAAM,kBAAkB,GAAG,eAAe,CAAC;AAEjD,wBAAgB,aAAa,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,kBAAkB,QA8BlE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DateFilter.d.ts","sourceRoot":"","sources":["../../../../src/crud/filters/DateFilter.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGhD,MAAM,MAAM,eAAe,GAAG,eAAe,CAAC;AAE9C,wBAAgB,UAAU,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,eAAe,QA0B5D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NumberFilter.d.ts","sourceRoot":"","sources":["../../../../src/crud/filters/NumberFilter.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGhD,MAAM,MAAM,iBAAiB,GAAG,eAAe,CAAC;AAEhD,wBAAgB,YAAY,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,iBAAiB,QAyBhE"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { BaseSourceProps, ChoiceOption, ReferenceProps } from '../types';
|
|
2
|
+
export type SelectFilterProps = BaseSourceProps & {
|
|
3
|
+
choices: ChoiceOption[];
|
|
4
|
+
multiple?: boolean;
|
|
5
|
+
};
|
|
6
|
+
export declare function SelectFilter({ source, label, choices, multiple, }: SelectFilterProps): null;
|
|
7
|
+
export type ReferenceFilterProps = BaseSourceProps & ReferenceProps & {
|
|
8
|
+
multiple?: boolean;
|
|
9
|
+
search?: boolean;
|
|
10
|
+
};
|
|
11
|
+
export declare function ReferenceFilter({ source, label, reference, choices, optionLabel, optionValue, multiple, search, }: ReferenceFilterProps): null;
|
|
12
|
+
export declare function ReferenceManyFilter(props: ReferenceFilterProps): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
//# sourceMappingURL=ReferenceFilter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ReferenceFilter.d.ts","sourceRoot":"","sources":["../../../../src/crud/filters/ReferenceFilter.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAI9E,MAAM,MAAM,iBAAiB,GAAG,eAAe,GAAG;IAChD,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AA0BF,wBAAgB,YAAY,CAAC,EAC3B,MAAM,EACN,KAAK,EACL,OAAO,EACP,QAAQ,GACT,EAAE,iBAAiB,QA2BnB;AAED,MAAM,MAAM,oBAAoB,GAAG,eAAe,GAChD,cAAc,GAAG;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AA8CJ,wBAAgB,eAAe,CAAC,EAC9B,MAAM,EACN,KAAK,EACL,SAAS,EACT,OAAO,EACP,WAAoB,EACpB,WAAkB,EAClB,QAAQ,EACR,MAAM,GACP,EAAE,oBAAoB,QAwCtB;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,oBAAoB,2CAE9D"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { BaseSourceProps, ChoiceOption } from '../types';
|
|
2
|
+
export type SelectFilterProps = BaseSourceProps & {
|
|
3
|
+
choices: ChoiceOption[];
|
|
4
|
+
multiple?: boolean;
|
|
5
|
+
};
|
|
6
|
+
export declare function SelectFilter({ source, label, choices, multiple, }: SelectFilterProps): null;
|
|
7
|
+
//# sourceMappingURL=SelectFilter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SelectFilter.d.ts","sourceRoot":"","sources":["../../../../src/crud/filters/SelectFilter.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAG9D,MAAM,MAAM,iBAAiB,GAAG,eAAe,GAAG;IAChD,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAC3B,MAAM,EACN,KAAK,EACL,OAAO,EACP,QAAQ,GACT,EAAE,iBAAiB,QA4BnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextFilter.d.ts","sourceRoot":"","sources":["../../../../src/crud/filters/TextFilter.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGhD,MAAM,MAAM,eAAe,GAAG,eAAe,GAAG;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,wBAAgB,UAAU,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,eAAe,QA0BzE"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export { ResourceList, useResourceListContext } from './ResourceList';
|
|
2
|
+
export type { ResourceListProps } from './ResourceList';
|
|
3
|
+
export { FilterBar } from './FilterBar';
|
|
4
|
+
export { ResourceForm } from './ResourceForm';
|
|
5
|
+
export type { ResourceFormProps, ResourceFormInlineConfig, } from './ResourceForm';
|
|
6
|
+
export { ResourceFormModal } from './ResourceFormModal';
|
|
7
|
+
export type { ResourceFormModalProps } from './ResourceFormModal';
|
|
8
|
+
export { InlineFormSet, saveInlineRows, loadInlineRows, } from './InlineFormSet';
|
|
9
|
+
export type { InlineFormSetProps, SaveInlineOptions, InlineFormSetLayout } from './InlineFormSet';
|
|
10
|
+
export { FormTabs, FormTab } from './FormTabs';
|
|
11
|
+
export type { FormTabsProps, FormTabProps } from './FormTabs';
|
|
12
|
+
export { FormSteps, FormStep } from './FormSteps';
|
|
13
|
+
export type { FormStepsProps, FormStepProps } from './FormSteps';
|
|
14
|
+
export { TextField } from './fields/TextField';
|
|
15
|
+
export { NumberField } from './fields/NumberField';
|
|
16
|
+
export { BooleanField } from './fields/BooleanField';
|
|
17
|
+
export { DateField } from './fields/DateField';
|
|
18
|
+
export { SelectField } from './fields/SelectField';
|
|
19
|
+
export { PasswordField } from './fields/PasswordField';
|
|
20
|
+
export { ReferenceField } from './fields/ReferenceField';
|
|
21
|
+
export { ReferenceManyField } from './fields/ReferenceManyField';
|
|
22
|
+
export { TextColumn } from './columns/TextColumn';
|
|
23
|
+
export { NumberColumn } from './columns/NumberColumn';
|
|
24
|
+
export { BooleanColumn } from './columns/BooleanColumn';
|
|
25
|
+
export { DateColumn } from './columns/DateColumn';
|
|
26
|
+
export { ReferenceColumn } from './columns/ReferenceColumn';
|
|
27
|
+
export { ReferenceManyColumn } from './columns/ReferenceManyColumn';
|
|
28
|
+
export { CustomColumn } from './columns/CustomColumn';
|
|
29
|
+
export { TextFilter } from './filters/TextFilter';
|
|
30
|
+
export { NumberFilter } from './filters/NumberFilter';
|
|
31
|
+
export { BooleanFilter } from './filters/BooleanFilter';
|
|
32
|
+
export { DateFilter } from './filters/DateFilter';
|
|
33
|
+
export { SelectFilter } from './filters/SelectFilter';
|
|
34
|
+
export { ReferenceFilter, ReferenceManyFilter, } from './filters/ReferenceFilter';
|
|
35
|
+
export { useListQueryState } from './utils/useListQueryState';
|
|
36
|
+
export type { ListQueryState, ListQueryActions, } from './utils/useListQueryState';
|
|
37
|
+
export { useChoices } from './utils/useChoices';
|
|
38
|
+
export { getByPath } from './utils/getByPath';
|
|
39
|
+
export { pickBySources } from './utils/pickBySources';
|
|
40
|
+
export { inlineArrayName } from './utils/inlineArrayName';
|
|
41
|
+
export { setByPath } from './utils/setByPath';
|
|
42
|
+
export { useRegisterFormSource } from './context/FormFieldsContext';
|
|
43
|
+
export type { BaseSourceProps, ChoiceOption, ChoicesLoader, ReferenceProps, DisplayProps, EditMode, FieldRules, ResourceListBuiltInActions, ResourceListBulkAction, ResourceListBulkActionHelpers, ResourceListRowActionsHelpers, } from './types';
|
|
44
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/crud/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { ColumnsType } from 'antd/es/table';
|
|
3
|
+
import { DataProvider } from '../data/dataProviderTypes';
|
|
4
|
+
import { RegisterOptions } from 'react-hook-form';
|
|
5
|
+
export type BaseSourceProps = {
|
|
6
|
+
source: string;
|
|
7
|
+
label?: string;
|
|
8
|
+
};
|
|
9
|
+
export type ChoiceOption = {
|
|
10
|
+
label: string;
|
|
11
|
+
value: unknown;
|
|
12
|
+
/** Full record when loaded from a reference resource (for dependent fields). */
|
|
13
|
+
record?: Record<string, unknown>;
|
|
14
|
+
};
|
|
15
|
+
export type ChoicesContext = {
|
|
16
|
+
dataProvider: DataProvider;
|
|
17
|
+
search?: string;
|
|
18
|
+
};
|
|
19
|
+
export type ChoicesLoader = {
|
|
20
|
+
resource: string;
|
|
21
|
+
filter?: Record<string, unknown>;
|
|
22
|
+
} | ChoiceOption[] | ((ctx: ChoicesContext) => Promise<ChoiceOption[]>);
|
|
23
|
+
export type ReferenceProps = {
|
|
24
|
+
reference?: string;
|
|
25
|
+
choices?: ChoicesLoader;
|
|
26
|
+
optionLabel?: string | ((record: Record<string, unknown>) => string);
|
|
27
|
+
optionValue?: string;
|
|
28
|
+
};
|
|
29
|
+
export type DisplayProps = {
|
|
30
|
+
display?: string | ((record: Record<string, unknown>) => ReactNode);
|
|
31
|
+
};
|
|
32
|
+
export type FieldRules = RegisterOptions;
|
|
33
|
+
export type ColumnDefinition<T extends Record<string, unknown>> = {
|
|
34
|
+
key: string;
|
|
35
|
+
source: string;
|
|
36
|
+
label?: string;
|
|
37
|
+
sortable?: boolean;
|
|
38
|
+
buildColumn: () => ColumnsType<T>[number];
|
|
39
|
+
};
|
|
40
|
+
export type FilterDefinition = {
|
|
41
|
+
key: string;
|
|
42
|
+
source: string;
|
|
43
|
+
label?: string;
|
|
44
|
+
render: (props: {
|
|
45
|
+
value: unknown;
|
|
46
|
+
onChange: (value: unknown) => void;
|
|
47
|
+
}) => ReactNode;
|
|
48
|
+
};
|
|
49
|
+
export type InlineFieldDefinition = {
|
|
50
|
+
key: string;
|
|
51
|
+
source: string;
|
|
52
|
+
label?: string;
|
|
53
|
+
/** Column width in tabular inline tables (Ant Design Table `width`). */
|
|
54
|
+
width?: number | string;
|
|
55
|
+
/** Minimum column width in tabular inline tables. */
|
|
56
|
+
minWidth?: number | string;
|
|
57
|
+
render: (props: {
|
|
58
|
+
name: string;
|
|
59
|
+
index: number;
|
|
60
|
+
}) => ReactNode;
|
|
61
|
+
};
|
|
62
|
+
export type InlineFieldOptions = {
|
|
63
|
+
width?: number | string;
|
|
64
|
+
minWidth?: number | string;
|
|
65
|
+
};
|
|
66
|
+
export type FieldRenderProps = {
|
|
67
|
+
value: unknown;
|
|
68
|
+
onChange: (value: unknown) => void;
|
|
69
|
+
onBlur: () => void;
|
|
70
|
+
disabled?: boolean;
|
|
71
|
+
/** Set when rendered inside `InlineFormSet`. */
|
|
72
|
+
name?: string;
|
|
73
|
+
index?: number;
|
|
74
|
+
};
|
|
75
|
+
export type EditMode = "page" | "modal" | "both";
|
|
76
|
+
/** Toggle built-in row actions. Omitted keys default to `true` (still gated by permissions). */
|
|
77
|
+
export type ResourceListBuiltInActions = {
|
|
78
|
+
edit?: boolean;
|
|
79
|
+
quickEdit?: boolean;
|
|
80
|
+
delete?: boolean;
|
|
81
|
+
};
|
|
82
|
+
export type ResourceListRowActionsHelpers = {
|
|
83
|
+
reload: () => void;
|
|
84
|
+
openEditModal: (id: string | number) => void;
|
|
85
|
+
};
|
|
86
|
+
export type ResourceListBulkActionHelpers = {
|
|
87
|
+
reload: () => void;
|
|
88
|
+
clearSelection: () => void;
|
|
89
|
+
};
|
|
90
|
+
/** Bulk list action (Django admin–style). Runs on selected row ids. */
|
|
91
|
+
export type ResourceListBulkAction = {
|
|
92
|
+
key: string;
|
|
93
|
+
label: string;
|
|
94
|
+
/** Optional confirmation message. Return false to cancel. */
|
|
95
|
+
confirm?: string | ((selectedIds: (string | number)[], helpers: ResourceListBulkActionHelpers) => string | false | Promise<string | false>);
|
|
96
|
+
execute: (selectedIds: (string | number)[], helpers: ResourceListBulkActionHelpers) => void | Promise<void>;
|
|
97
|
+
};
|
|
98
|
+
export declare const LIST_QUERY_RESERVED: Set<string>;
|
|
99
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/crud/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { MessageInstance } from 'antd/es/message/interface';
|
|
2
|
+
import { FieldValues, UseFormReturn } from 'react-hook-form';
|
|
3
|
+
import { DataProvider, ParseFormErrorContext } from '../../data/dataProviderTypes';
|
|
4
|
+
export declare function applyFormErrors<T extends FieldValues>(form: UseFormReturn<T>, parsed: {
|
|
5
|
+
fields?: Record<string, string | string[]>;
|
|
6
|
+
global?: string | string[];
|
|
7
|
+
}, message: MessageInstance): void;
|
|
8
|
+
export declare function parseAndApplyFormErrors<T extends FieldValues>(dp: DataProvider, form: UseFormReturn<T>, message: MessageInstance, error: unknown, context: ParseFormErrorContext): boolean;
|
|
9
|
+
//# sourceMappingURL=formErrors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formErrors.d.ts","sourceRoot":"","sources":["../../../../src/crud/utils/formErrors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAa,WAAW,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAOxF,wBAAgB,eAAe,CAAC,CAAC,SAAS,WAAW,EACnD,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,EACtB,MAAM,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;CAAE,EAClF,OAAO,EAAE,eAAe,QASzB;AAED,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,WAAW,EAC3D,EAAE,EAAE,YAAY,EAChB,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,EACtB,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAQT"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { MutableRefObject } from 'react';
|
|
2
|
+
import { FieldValues, FormState, UseFormGetFieldState } from 'react-hook-form';
|
|
3
|
+
export declare function sectionHasError<T extends FieldValues>(sources: Set<string>, getFieldState: UseFormGetFieldState<T>, formState: FormState<T>): boolean;
|
|
4
|
+
export declare function useSectionSourceRefs(count: number): MutableRefObject<Set<string>>[];
|
|
5
|
+
export declare function useActivateFirstErrorSection(sectionRefs: MutableRefObject<Set<string>>[], activate: (index: number) => void): void;
|
|
6
|
+
//# sourceMappingURL=formSectionErrors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formSectionErrors.d.ts","sourceRoot":"","sources":["../../../../src/crud/utils/formSectionErrors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,gBAAgB,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,oBAAoB,EAC1B,MAAM,iBAAiB,CAAC;AAEzB,wBAAgB,eAAe,CAAC,CAAC,SAAS,WAAW,EACnD,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,EACpB,aAAa,EAAE,oBAAoB,CAAC,CAAC,CAAC,EACtC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,GACtB,OAAO,CAOT;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,mCAWjD;AAED,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,EAC5C,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,QA8ClC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getByPath.d.ts","sourceRoot":"","sources":["../../../../src/crud/utils/getByPath.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,wBAAgB,SAAS,CACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,IAAI,EAAE,MAAM,GACX,OAAO,CAQT"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inlineArrayName.d.ts","sourceRoot":"","sources":["../../../../src/crud/utils/inlineArrayName.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,UAE9D"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build a submit payload from form values using declared field `source` paths.
|
|
3
|
+
* Flat `username` → `{ username }`; nested `invoiceLine.product` → `{ invoiceLine: { product } }`.
|
|
4
|
+
*/
|
|
5
|
+
export declare function pickBySources(values: Record<string, unknown>, sources: string[]): Record<string, unknown>;
|
|
6
|
+
//# sourceMappingURL=pickBySources.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pickBySources.d.ts","sourceRoot":"","sources":["../../../../src/crud/utils/pickBySources.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,OAAO,EAAE,MAAM,EAAE,GAChB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAazB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setByPath.d.ts","sourceRoot":"","sources":["../../../../src/crud/utils/setByPath.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,wBAAgB,SAAS,CACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,GACb,IAAI,CAYN"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { SortSpec } from '../../data/dataProviderTypes';
|
|
2
|
+
/** Parse `sort` query (Django-style: `sku,-price`; legacy: `sku:asc,price:desc`). */
|
|
3
|
+
export declare function parseSortParam(raw: string | null): SortSpec[];
|
|
4
|
+
/** Serialize sort specs to Django-style `sku,-price`. */
|
|
5
|
+
export declare function serializeSort(specs: SortSpec[]): string | null;
|
|
6
|
+
export declare function sortPrioritiesFromSpecs(specs: SortSpec[]): Map<string, number>;
|
|
7
|
+
//# sourceMappingURL=sortQueryParam.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sortQueryParam.d.ts","sourceRoot":"","sources":["../../../../src/crud/utils/sortQueryParam.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAExE,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,QAAQ,EAAE,CAmB7D;AAED,yDAAyD;AACzD,wBAAgB,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,GAAG,IAAI,CAK9D;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,QAAQ,EAAE,GAChB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAErB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ChoiceOption, ChoicesLoader } from '../types';
|
|
2
|
+
export declare function useChoices(loader: ChoicesLoader | undefined, reference: string | undefined, optionLabel?: string | ((record: Record<string, unknown>) => string), optionValue?: string, search?: string): {
|
|
3
|
+
options: ChoiceOption[];
|
|
4
|
+
loading: boolean;
|
|
5
|
+
labelForValue: (value: unknown) => string;
|
|
6
|
+
labelsForValues: (values: unknown[]) => string;
|
|
7
|
+
optionForValue: (value: unknown) => ChoiceOption | undefined;
|
|
8
|
+
reload: () => Promise<void>;
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=useChoices.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useChoices.d.ts","sourceRoot":"","sources":["../../../../src/crud/utils/useChoices.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAiF5D,wBAAgB,UAAU,CACxB,MAAM,EAAE,aAAa,GAAG,SAAS,EACjC,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,WAAW,GAAE,MAAM,GAAG,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,MAAM,CAAU,EAC5E,WAAW,SAAO,EAClB,MAAM,CAAC,EAAE,MAAM;;;2BAgEL,OAAO,KAAG,MAAM;8BAQf,OAAO,EAAE,KAAG,MAAM;4BAQnB,OAAO,KAAG,YAAY,GAAG,SAAS;;EAa7C"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { SortSpec } from '../../data/dataProviderTypes';
|
|
2
|
+
export type ListQueryState = {
|
|
3
|
+
page: number;
|
|
4
|
+
perPage: number;
|
|
5
|
+
sort: SortSpec[];
|
|
6
|
+
filter: Record<string, unknown>;
|
|
7
|
+
createModal: boolean;
|
|
8
|
+
editId: string | null;
|
|
9
|
+
};
|
|
10
|
+
export type ListQueryActions = {
|
|
11
|
+
setPage: (page: number) => void;
|
|
12
|
+
setPerPage: (perPage: number) => void;
|
|
13
|
+
setSort: (sort: SortSpec[]) => void;
|
|
14
|
+
toggleSort: (field: string) => void;
|
|
15
|
+
setFilter: (source: string, value: unknown) => void;
|
|
16
|
+
setFilters: (filter: Record<string, unknown>) => void;
|
|
17
|
+
openCreateModal: () => void;
|
|
18
|
+
openEditModal: (id: string | number) => void;
|
|
19
|
+
closeModal: () => void;
|
|
20
|
+
};
|
|
21
|
+
export declare function useListQueryState(staticFilter?: Record<string, unknown>): [ListQueryState, ListQueryActions];
|
|
22
|
+
//# sourceMappingURL=useListQueryState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useListQueryState.d.ts","sourceRoot":"","sources":["../../../../src/crud/utils/useListQueryState.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AA8B7D,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,UAAU,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAC;IACpC,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACpD,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;IACtD,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IAC7C,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB,CAAC;AAEF,wBAAgB,iBAAiB,CAC/B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACrC,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAuIpC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { GetListParams } from './dataProviderTypes';
|
|
2
|
+
import { ResourceHandlers } from './resourceHandlers';
|
|
3
|
+
type Row = Record<string, unknown>;
|
|
4
|
+
export type MemoryResourceHandlersConfig<T extends Record<string, unknown> & {
|
|
5
|
+
id: string | number;
|
|
6
|
+
}> = {
|
|
7
|
+
getRows: () => T[];
|
|
8
|
+
nextId: () => string | number;
|
|
9
|
+
/** Defaults to `{ ...data, id }` from form field sources. */
|
|
10
|
+
mapCreate?: (data: Row, id: string | number) => T;
|
|
11
|
+
/** Defaults to spread patch over current row. */
|
|
12
|
+
applyUpdate?: (current: T, patch: Row) => T;
|
|
13
|
+
scopeList?: (rows: T[], params: GetListParams) => T[];
|
|
14
|
+
afterDelete?: (removed: T) => void;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Generic in-memory CRUD for demos and tests. Override hooks for entity-specific rules.
|
|
18
|
+
*/
|
|
19
|
+
export declare function createMemoryResourceHandlers<T extends Record<string, unknown> & {
|
|
20
|
+
id: string | number;
|
|
21
|
+
}>(config: MemoryResourceHandlersConfig<T>): ResourceHandlers<T>;
|
|
22
|
+
export {};
|
|
23
|
+
//# sourceMappingURL=createMemoryResourceHandlers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createMemoryResourceHandlers.d.ts","sourceRoot":"","sources":["../../../src/data/createMemoryResourceHandlers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAGV,aAAa,EAId,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,KAAK,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEnC,MAAM,MAAM,4BAA4B,CACtC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,IACzD;IACF,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,MAAM,GAAG,MAAM,CAAC;IAC9B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,KAAK,CAAC,CAAC;IAClD,iDAAiD;IACjD,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC;IAC5C,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,aAAa,KAAK,CAAC,EAAE,CAAC;IACtD,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,CAAC;CACpC,CAAC;AAEF;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,EAC3D,MAAM,EAAE,4BAA4B,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CA8C9D"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { GetListParams, Identifier } from './dataProviderTypes';
|
|
2
|
+
import { ResourceHandlers } from './resourceHandlers';
|
|
3
|
+
export type RestResourceHandlersConfig<T extends Record<string, unknown> = Record<string, unknown>> = {
|
|
4
|
+
list: (params: GetListParams) => Promise<{
|
|
5
|
+
data: T[];
|
|
6
|
+
total: number;
|
|
7
|
+
}>;
|
|
8
|
+
retrieve: (id: Identifier) => Promise<T>;
|
|
9
|
+
create: (data: Record<string, unknown>) => Promise<T>;
|
|
10
|
+
update: (id: Identifier, data: Record<string, unknown>) => Promise<T>;
|
|
11
|
+
destroy: (id: Identifier) => Promise<void>;
|
|
12
|
+
/** When API create body differs from form `source` paths. */
|
|
13
|
+
transformCreate?: (data: Record<string, unknown>) => unknown;
|
|
14
|
+
/** When API update body differs from form `source` paths. */
|
|
15
|
+
transformUpdate?: (data: Record<string, unknown>) => unknown;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Thin CRUD glue for REST backends. Form payload comes from field `source` paths;
|
|
19
|
+
* wire your fetch or API client in the five functions below.
|
|
20
|
+
*/
|
|
21
|
+
export declare function createRestResourceHandlers<T extends Record<string, unknown> = Record<string, unknown>>(config: RestResourceHandlersConfig<T>): ResourceHandlers<T>;
|
|
22
|
+
//# sourceMappingURL=createRestResourceHandlers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createRestResourceHandlers.d.ts","sourceRoot":"","sources":["../../../src/data/createRestResourceHandlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,MAAM,MAAM,0BAA0B,CACpC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IACzD;IACF,IAAI,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC;QAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvE,QAAQ,EAAE,CAAC,EAAE,EAAE,UAAU,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IACzC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,EAAE,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IACtE,OAAO,EAAE,CAAC,EAAE,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,6DAA6D;IAC7D,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;IAC7D,6DAA6D;IAC7D,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC;CAC9D,CAAC;AAEF;;;GAGG;AACH,wBAAgB,0BAA0B,CACxC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,MAAM,EAAE,0BAA0B,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAiC5D"}
|