@form-engine-ts/mui 2.9.6 → 3.1.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/README.md +24 -4
- package/dist/index.cjs +230 -71
- package/dist/index.d.cts +38 -5
- package/dist/index.d.ts +38 -5
- package/dist/index.js +264 -80
- package/package.json +5 -5
package/dist/index.d.cts
CHANGED
|
@@ -1,28 +1,59 @@
|
|
|
1
|
-
import { BuilderActionIconType, BuilderButtonProps, BuilderCheckboxProps, BuilderErrorMessageProps, BuilderFieldsetProps, BuilderIconButtonProps, BuilderSectionProps, BuilderSelectProps, BuilderTextAreaProps, BuilderTextInputProps, FormBuilderComponents, FormBuilderSlots, FormBuilderProps, BuilderFieldEditorSlotProps, BuilderLocalizationSlotProps, BuilderOptionEditorSlotProps, BuilderToolbarSlotProps } from '@form-engine-ts/react';
|
|
1
|
+
import { BuilderActionIconType, LocalizationSummaryContext, BuilderButtonProps, BuilderCheckboxProps, BuilderErrorMessageProps, BuilderFieldsetProps, BuilderIconButtonProps, BuilderSectionProps, BuilderSelectProps, BuilderTextAreaProps, BuilderTextInputProps, FormBuilderComponents, FormBuilderSlots, FormBuilderProps, QuestionType, BuilderFieldEditorSlotProps, BuilderLocalizationSlotProps, BuilderOptionEditorSlotProps, BuilderToolbarSlotProps } from '@form-engine-ts/react';
|
|
2
2
|
import * as react from 'react';
|
|
3
|
-
import {
|
|
4
|
-
import { CardProps, PaperProps, StackProps,
|
|
3
|
+
import { ReactNode, ComponentType } from 'react';
|
|
4
|
+
import { CardProps, PaperProps, AccordionProps, StackProps, TextFieldProps, SelectProps, MenuProps, CheckboxProps, ButtonProps, IconButtonProps } from '@mui/material';
|
|
5
5
|
|
|
6
6
|
type BuilderSectionName = "basicSettings" | "completionMessage" | "questions" | "addQuestion" | "localization";
|
|
7
7
|
type MuiButtonVariant = "contained" | "outlined" | "text";
|
|
8
|
+
type MuiComponentSlotProps<T> = Partial<T> & {
|
|
9
|
+
readonly [key: `data-${string}`]: string | number | boolean | undefined;
|
|
10
|
+
};
|
|
11
|
+
interface LocaleOptionItem {
|
|
12
|
+
readonly value: string;
|
|
13
|
+
readonly label: string;
|
|
14
|
+
}
|
|
15
|
+
type LocalizationSectionPlacement = "top" | "beforeQuestions" | "afterQuestions" | "bottom";
|
|
8
16
|
interface MuiLayoutOptions {
|
|
9
17
|
readonly sectionOrder?: readonly BuilderSectionName[];
|
|
10
18
|
}
|
|
11
19
|
interface MuiLocalizationOptions {
|
|
20
|
+
readonly availableLocales?: readonly (LocaleOptionItem | string)[];
|
|
21
|
+
readonly placement?: LocalizationSectionPlacement;
|
|
12
22
|
readonly collapsible?: boolean;
|
|
13
23
|
readonly defaultExpanded?: boolean | "when-configured" | "always";
|
|
14
24
|
readonly showSummary?: boolean;
|
|
25
|
+
readonly renderSummary?: (context: LocalizationSummaryContext) => ReactNode;
|
|
15
26
|
readonly emptyStateMessage?: string;
|
|
16
27
|
readonly defaultLocaleControl?: "editable" | "readOnly" | "hidden";
|
|
28
|
+
readonly noWrapActions?: boolean;
|
|
29
|
+
readonly autoFocusNewTab?: boolean;
|
|
17
30
|
}
|
|
18
31
|
interface MuiFieldEditorOptions {
|
|
19
32
|
readonly description?: "editable" | "readOnly" | "hidden";
|
|
20
33
|
}
|
|
21
|
-
interface
|
|
34
|
+
interface MuiSlotProps {
|
|
22
35
|
readonly card?: Partial<CardProps>;
|
|
23
36
|
readonly paper?: Partial<PaperProps>;
|
|
37
|
+
readonly accordion?: Partial<AccordionProps>;
|
|
24
38
|
readonly stack?: Partial<StackProps>;
|
|
39
|
+
readonly textField?: MuiComponentSlotProps<TextFieldProps>;
|
|
40
|
+
readonly select?: MuiComponentSlotProps<SelectProps>;
|
|
41
|
+
readonly selectMenu?: Partial<MenuProps>;
|
|
42
|
+
readonly checkbox?: MuiComponentSlotProps<CheckboxProps>;
|
|
43
|
+
readonly button?: MuiComponentSlotProps<ButtonProps>;
|
|
44
|
+
readonly iconButton?: MuiComponentSlotProps<IconButtonProps>;
|
|
45
|
+
}
|
|
46
|
+
interface MuiBuilderSlotProps {
|
|
47
|
+
readonly card?: Partial<CardProps>;
|
|
48
|
+
readonly paper?: Partial<PaperProps>;
|
|
25
49
|
readonly accordion?: Partial<AccordionProps>;
|
|
50
|
+
readonly stack?: Partial<StackProps>;
|
|
51
|
+
readonly textField?: MuiComponentSlotProps<TextFieldProps>;
|
|
52
|
+
readonly select?: MuiComponentSlotProps<SelectProps>;
|
|
53
|
+
readonly selectMenu?: Partial<MenuProps>;
|
|
54
|
+
readonly checkbox?: MuiComponentSlotProps<CheckboxProps>;
|
|
55
|
+
readonly button?: MuiComponentSlotProps<ButtonProps>;
|
|
56
|
+
readonly iconButton?: MuiComponentSlotProps<IconButtonProps>;
|
|
26
57
|
}
|
|
27
58
|
interface MuiAdapterOptions {
|
|
28
59
|
readonly size?: "small" | "medium";
|
|
@@ -65,6 +96,7 @@ interface ResolvedMuiAdapterOptions {
|
|
|
65
96
|
readonly muiSlotProps?: MuiBuilderSlotProps;
|
|
66
97
|
}
|
|
67
98
|
declare const DEFAULT_MUI_SECTION_ORDER: readonly BuilderSectionName[];
|
|
99
|
+
declare const MUI_LOCALIZATION_SECTION_ORDERS: Readonly<Record<LocalizationSectionPlacement, readonly BuilderSectionName[]>>;
|
|
68
100
|
declare function resolveMuiAdapterOptions(options?: MuiAdapterOptions): ResolvedMuiAdapterOptions;
|
|
69
101
|
|
|
70
102
|
declare function createMuiButtonAdapter(options?: MuiAdapterOptions): ComponentType<BuilderButtonProps>;
|
|
@@ -112,6 +144,7 @@ declare function mergeMuiAdapterOptions(base?: MuiAdapterOptions, overrides?: Mu
|
|
|
112
144
|
declare function useResolvedMuiAdapterOptions(overrides?: MuiAdapterOptions): ResolvedMuiAdapterOptions;
|
|
113
145
|
|
|
114
146
|
declare function muiDefaultIconResolver(actionType: BuilderActionIconType): ReactNode;
|
|
147
|
+
declare function muiDefaultFieldTypeIcon(type: QuestionType): ReactNode;
|
|
115
148
|
|
|
116
149
|
interface MuiFormBuilderProps extends Omit<FormBuilderProps, "components" | "disableDefaultStyles" | "slots" | "unstyled"> {
|
|
117
150
|
readonly muiOptions?: MuiAdapterOptions;
|
|
@@ -138,4 +171,4 @@ declare const MuiToolbarSlot: NonNullable<FormBuilderSlots["toolbar"]>;
|
|
|
138
171
|
declare const muiBuilderSlots: FormBuilderSlots;
|
|
139
172
|
declare function createMuiBuilderSlots(options?: MuiAdapterOptions, customOverrides?: Partial<FormBuilderSlots>): FormBuilderSlots;
|
|
140
173
|
|
|
141
|
-
export { type BuilderSectionName, DEFAULT_MUI_SECTION_ORDER, type MuiAdapterOptions, type MuiBuilderOverrides, type MuiBuilderSlotProps, MuiButtonAdapter, type MuiButtonVariant, MuiCheckboxAdapter, MuiErrorMessageAdapter, type MuiFieldEditorOptions, MuiFieldEditorSlot, MuiFieldsetAdapter, MuiFormBuilder, MuiFormBuilderContext, type MuiFormBuilderContextValue, type MuiFormBuilderProps, MuiIconButtonAdapter, type MuiLayoutOptions, type MuiLocalizationOptions, MuiLocalizationSlot, MuiOptionEditorSlot, MuiSectionAdapter, MuiSelectAdapter, MuiTextAreaAdapter, MuiTextInputAdapter, MuiToolbarSlot, type ResolvedMuiAdapterOptions, createMuiBuilderComponents, createMuiBuilderProps, createMuiBuilderSlots, createMuiButtonAdapter, createMuiCheckboxAdapter, createMuiErrorMessageAdapter, createMuiFieldEditorSlot, createMuiFieldsetAdapter, createMuiIconButtonAdapter, createMuiLocalizationSlot, createMuiOptionEditorSlot, createMuiSectionAdapter, createMuiSelectAdapter, createMuiTextAreaAdapter, createMuiTextInputAdapter, createMuiToolbarSlot, mergeMuiAdapterOptions, muiBuilderComponents, muiBuilderSlots, muiDefaultIconResolver, resolveMuiAdapterOptions, useResolvedMuiAdapterOptions };
|
|
174
|
+
export { type BuilderSectionName, DEFAULT_MUI_SECTION_ORDER, type LocaleOptionItem, type LocalizationSectionPlacement, MUI_LOCALIZATION_SECTION_ORDERS, type MuiAdapterOptions, type MuiBuilderOverrides, type MuiBuilderSlotProps, MuiButtonAdapter, type MuiButtonVariant, MuiCheckboxAdapter, MuiErrorMessageAdapter, type MuiFieldEditorOptions, MuiFieldEditorSlot, MuiFieldsetAdapter, MuiFormBuilder, MuiFormBuilderContext, type MuiFormBuilderContextValue, type MuiFormBuilderProps, MuiIconButtonAdapter, type MuiLayoutOptions, type MuiLocalizationOptions, MuiLocalizationSlot, MuiOptionEditorSlot, MuiSectionAdapter, MuiSelectAdapter, type MuiSlotProps, MuiTextAreaAdapter, MuiTextInputAdapter, MuiToolbarSlot, type ResolvedMuiAdapterOptions, createMuiBuilderComponents, createMuiBuilderProps, createMuiBuilderSlots, createMuiButtonAdapter, createMuiCheckboxAdapter, createMuiErrorMessageAdapter, createMuiFieldEditorSlot, createMuiFieldsetAdapter, createMuiIconButtonAdapter, createMuiLocalizationSlot, createMuiOptionEditorSlot, createMuiSectionAdapter, createMuiSelectAdapter, createMuiTextAreaAdapter, createMuiTextInputAdapter, createMuiToolbarSlot, mergeMuiAdapterOptions, muiBuilderComponents, muiBuilderSlots, muiDefaultFieldTypeIcon, muiDefaultIconResolver, resolveMuiAdapterOptions, useResolvedMuiAdapterOptions };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,28 +1,59 @@
|
|
|
1
|
-
import { BuilderActionIconType, BuilderButtonProps, BuilderCheckboxProps, BuilderErrorMessageProps, BuilderFieldsetProps, BuilderIconButtonProps, BuilderSectionProps, BuilderSelectProps, BuilderTextAreaProps, BuilderTextInputProps, FormBuilderComponents, FormBuilderSlots, FormBuilderProps, BuilderFieldEditorSlotProps, BuilderLocalizationSlotProps, BuilderOptionEditorSlotProps, BuilderToolbarSlotProps } from '@form-engine-ts/react';
|
|
1
|
+
import { BuilderActionIconType, LocalizationSummaryContext, BuilderButtonProps, BuilderCheckboxProps, BuilderErrorMessageProps, BuilderFieldsetProps, BuilderIconButtonProps, BuilderSectionProps, BuilderSelectProps, BuilderTextAreaProps, BuilderTextInputProps, FormBuilderComponents, FormBuilderSlots, FormBuilderProps, QuestionType, BuilderFieldEditorSlotProps, BuilderLocalizationSlotProps, BuilderOptionEditorSlotProps, BuilderToolbarSlotProps } from '@form-engine-ts/react';
|
|
2
2
|
import * as react from 'react';
|
|
3
|
-
import {
|
|
4
|
-
import { CardProps, PaperProps, StackProps,
|
|
3
|
+
import { ReactNode, ComponentType } from 'react';
|
|
4
|
+
import { CardProps, PaperProps, AccordionProps, StackProps, TextFieldProps, SelectProps, MenuProps, CheckboxProps, ButtonProps, IconButtonProps } from '@mui/material';
|
|
5
5
|
|
|
6
6
|
type BuilderSectionName = "basicSettings" | "completionMessage" | "questions" | "addQuestion" | "localization";
|
|
7
7
|
type MuiButtonVariant = "contained" | "outlined" | "text";
|
|
8
|
+
type MuiComponentSlotProps<T> = Partial<T> & {
|
|
9
|
+
readonly [key: `data-${string}`]: string | number | boolean | undefined;
|
|
10
|
+
};
|
|
11
|
+
interface LocaleOptionItem {
|
|
12
|
+
readonly value: string;
|
|
13
|
+
readonly label: string;
|
|
14
|
+
}
|
|
15
|
+
type LocalizationSectionPlacement = "top" | "beforeQuestions" | "afterQuestions" | "bottom";
|
|
8
16
|
interface MuiLayoutOptions {
|
|
9
17
|
readonly sectionOrder?: readonly BuilderSectionName[];
|
|
10
18
|
}
|
|
11
19
|
interface MuiLocalizationOptions {
|
|
20
|
+
readonly availableLocales?: readonly (LocaleOptionItem | string)[];
|
|
21
|
+
readonly placement?: LocalizationSectionPlacement;
|
|
12
22
|
readonly collapsible?: boolean;
|
|
13
23
|
readonly defaultExpanded?: boolean | "when-configured" | "always";
|
|
14
24
|
readonly showSummary?: boolean;
|
|
25
|
+
readonly renderSummary?: (context: LocalizationSummaryContext) => ReactNode;
|
|
15
26
|
readonly emptyStateMessage?: string;
|
|
16
27
|
readonly defaultLocaleControl?: "editable" | "readOnly" | "hidden";
|
|
28
|
+
readonly noWrapActions?: boolean;
|
|
29
|
+
readonly autoFocusNewTab?: boolean;
|
|
17
30
|
}
|
|
18
31
|
interface MuiFieldEditorOptions {
|
|
19
32
|
readonly description?: "editable" | "readOnly" | "hidden";
|
|
20
33
|
}
|
|
21
|
-
interface
|
|
34
|
+
interface MuiSlotProps {
|
|
22
35
|
readonly card?: Partial<CardProps>;
|
|
23
36
|
readonly paper?: Partial<PaperProps>;
|
|
37
|
+
readonly accordion?: Partial<AccordionProps>;
|
|
24
38
|
readonly stack?: Partial<StackProps>;
|
|
39
|
+
readonly textField?: MuiComponentSlotProps<TextFieldProps>;
|
|
40
|
+
readonly select?: MuiComponentSlotProps<SelectProps>;
|
|
41
|
+
readonly selectMenu?: Partial<MenuProps>;
|
|
42
|
+
readonly checkbox?: MuiComponentSlotProps<CheckboxProps>;
|
|
43
|
+
readonly button?: MuiComponentSlotProps<ButtonProps>;
|
|
44
|
+
readonly iconButton?: MuiComponentSlotProps<IconButtonProps>;
|
|
45
|
+
}
|
|
46
|
+
interface MuiBuilderSlotProps {
|
|
47
|
+
readonly card?: Partial<CardProps>;
|
|
48
|
+
readonly paper?: Partial<PaperProps>;
|
|
25
49
|
readonly accordion?: Partial<AccordionProps>;
|
|
50
|
+
readonly stack?: Partial<StackProps>;
|
|
51
|
+
readonly textField?: MuiComponentSlotProps<TextFieldProps>;
|
|
52
|
+
readonly select?: MuiComponentSlotProps<SelectProps>;
|
|
53
|
+
readonly selectMenu?: Partial<MenuProps>;
|
|
54
|
+
readonly checkbox?: MuiComponentSlotProps<CheckboxProps>;
|
|
55
|
+
readonly button?: MuiComponentSlotProps<ButtonProps>;
|
|
56
|
+
readonly iconButton?: MuiComponentSlotProps<IconButtonProps>;
|
|
26
57
|
}
|
|
27
58
|
interface MuiAdapterOptions {
|
|
28
59
|
readonly size?: "small" | "medium";
|
|
@@ -65,6 +96,7 @@ interface ResolvedMuiAdapterOptions {
|
|
|
65
96
|
readonly muiSlotProps?: MuiBuilderSlotProps;
|
|
66
97
|
}
|
|
67
98
|
declare const DEFAULT_MUI_SECTION_ORDER: readonly BuilderSectionName[];
|
|
99
|
+
declare const MUI_LOCALIZATION_SECTION_ORDERS: Readonly<Record<LocalizationSectionPlacement, readonly BuilderSectionName[]>>;
|
|
68
100
|
declare function resolveMuiAdapterOptions(options?: MuiAdapterOptions): ResolvedMuiAdapterOptions;
|
|
69
101
|
|
|
70
102
|
declare function createMuiButtonAdapter(options?: MuiAdapterOptions): ComponentType<BuilderButtonProps>;
|
|
@@ -112,6 +144,7 @@ declare function mergeMuiAdapterOptions(base?: MuiAdapterOptions, overrides?: Mu
|
|
|
112
144
|
declare function useResolvedMuiAdapterOptions(overrides?: MuiAdapterOptions): ResolvedMuiAdapterOptions;
|
|
113
145
|
|
|
114
146
|
declare function muiDefaultIconResolver(actionType: BuilderActionIconType): ReactNode;
|
|
147
|
+
declare function muiDefaultFieldTypeIcon(type: QuestionType): ReactNode;
|
|
115
148
|
|
|
116
149
|
interface MuiFormBuilderProps extends Omit<FormBuilderProps, "components" | "disableDefaultStyles" | "slots" | "unstyled"> {
|
|
117
150
|
readonly muiOptions?: MuiAdapterOptions;
|
|
@@ -138,4 +171,4 @@ declare const MuiToolbarSlot: NonNullable<FormBuilderSlots["toolbar"]>;
|
|
|
138
171
|
declare const muiBuilderSlots: FormBuilderSlots;
|
|
139
172
|
declare function createMuiBuilderSlots(options?: MuiAdapterOptions, customOverrides?: Partial<FormBuilderSlots>): FormBuilderSlots;
|
|
140
173
|
|
|
141
|
-
export { type BuilderSectionName, DEFAULT_MUI_SECTION_ORDER, type MuiAdapterOptions, type MuiBuilderOverrides, type MuiBuilderSlotProps, MuiButtonAdapter, type MuiButtonVariant, MuiCheckboxAdapter, MuiErrorMessageAdapter, type MuiFieldEditorOptions, MuiFieldEditorSlot, MuiFieldsetAdapter, MuiFormBuilder, MuiFormBuilderContext, type MuiFormBuilderContextValue, type MuiFormBuilderProps, MuiIconButtonAdapter, type MuiLayoutOptions, type MuiLocalizationOptions, MuiLocalizationSlot, MuiOptionEditorSlot, MuiSectionAdapter, MuiSelectAdapter, MuiTextAreaAdapter, MuiTextInputAdapter, MuiToolbarSlot, type ResolvedMuiAdapterOptions, createMuiBuilderComponents, createMuiBuilderProps, createMuiBuilderSlots, createMuiButtonAdapter, createMuiCheckboxAdapter, createMuiErrorMessageAdapter, createMuiFieldEditorSlot, createMuiFieldsetAdapter, createMuiIconButtonAdapter, createMuiLocalizationSlot, createMuiOptionEditorSlot, createMuiSectionAdapter, createMuiSelectAdapter, createMuiTextAreaAdapter, createMuiTextInputAdapter, createMuiToolbarSlot, mergeMuiAdapterOptions, muiBuilderComponents, muiBuilderSlots, muiDefaultIconResolver, resolveMuiAdapterOptions, useResolvedMuiAdapterOptions };
|
|
174
|
+
export { type BuilderSectionName, DEFAULT_MUI_SECTION_ORDER, type LocaleOptionItem, type LocalizationSectionPlacement, MUI_LOCALIZATION_SECTION_ORDERS, type MuiAdapterOptions, type MuiBuilderOverrides, type MuiBuilderSlotProps, MuiButtonAdapter, type MuiButtonVariant, MuiCheckboxAdapter, MuiErrorMessageAdapter, type MuiFieldEditorOptions, MuiFieldEditorSlot, MuiFieldsetAdapter, MuiFormBuilder, MuiFormBuilderContext, type MuiFormBuilderContextValue, type MuiFormBuilderProps, MuiIconButtonAdapter, type MuiLayoutOptions, type MuiLocalizationOptions, MuiLocalizationSlot, MuiOptionEditorSlot, MuiSectionAdapter, MuiSelectAdapter, type MuiSlotProps, MuiTextAreaAdapter, MuiTextInputAdapter, MuiToolbarSlot, type ResolvedMuiAdapterOptions, createMuiBuilderComponents, createMuiBuilderProps, createMuiBuilderSlots, createMuiButtonAdapter, createMuiCheckboxAdapter, createMuiErrorMessageAdapter, createMuiFieldEditorSlot, createMuiFieldsetAdapter, createMuiIconButtonAdapter, createMuiLocalizationSlot, createMuiOptionEditorSlot, createMuiSectionAdapter, createMuiSelectAdapter, createMuiTextAreaAdapter, createMuiTextInputAdapter, createMuiToolbarSlot, mergeMuiAdapterOptions, muiBuilderComponents, muiBuilderSlots, muiDefaultFieldTypeIcon, muiDefaultIconResolver, resolveMuiAdapterOptions, useResolvedMuiAdapterOptions };
|