@form-engine-ts/mui 2.9.3 → 2.9.5

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.d.cts CHANGED
@@ -1,21 +1,68 @@
1
- import { BuilderButtonProps, BuilderCheckboxProps, BuilderErrorMessageProps, BuilderFieldsetProps, BuilderIconButtonProps, BuilderSectionProps, BuilderSelectProps, BuilderTextAreaProps, BuilderTextInputProps, FormBuilderComponents, FormBuilderSlots, FormBuilderProps, BuilderActionIconType, BuilderFieldEditorSlotProps, BuilderLocalizationSlotProps, BuilderOptionEditorSlotProps, BuilderToolbarSlotProps } from '@form-engine-ts/react';
1
+ import { BuilderActionIconType, BuilderButtonProps, BuilderCheckboxProps, BuilderErrorMessageProps, BuilderFieldsetProps, BuilderIconButtonProps, BuilderSectionProps, BuilderSelectProps, BuilderTextAreaProps, BuilderTextInputProps, FormBuilderComponents, FormBuilderSlots, FormBuilderProps, BuilderFieldEditorSlotProps, BuilderLocalizationSlotProps, BuilderOptionEditorSlotProps, BuilderToolbarSlotProps } from '@form-engine-ts/react';
2
2
  import * as react from 'react';
3
3
  import { ComponentType, ReactNode } from 'react';
4
+ import { CardProps, PaperProps, StackProps, AccordionProps } from '@mui/material';
4
5
 
6
+ type BuilderSectionName = "basicSettings" | "completionMessage" | "questions" | "addQuestion" | "localization";
7
+ type MuiButtonVariant = "contained" | "outlined" | "text";
8
+ interface MuiLayoutOptions {
9
+ readonly sectionOrder?: readonly BuilderSectionName[];
10
+ }
11
+ interface MuiLocalizationOptions {
12
+ readonly collapsible?: boolean;
13
+ readonly defaultExpanded?: boolean | "when-configured";
14
+ readonly defaultLocaleControl?: "editable" | "readOnly" | "hidden";
15
+ }
16
+ interface MuiFieldEditorOptions {
17
+ readonly description?: "editable" | "readOnly" | "hidden";
18
+ }
19
+ interface MuiBuilderSlotProps {
20
+ readonly card?: Partial<CardProps>;
21
+ readonly paper?: Partial<PaperProps>;
22
+ readonly stack?: Partial<StackProps>;
23
+ readonly accordion?: Partial<AccordionProps>;
24
+ }
5
25
  interface MuiAdapterOptions {
6
26
  readonly size?: "small" | "medium";
7
27
  readonly variant?: "outlined" | "filled" | "standard";
8
28
  readonly buttonVariant?: "contained" | "outlined" | "text";
29
+ readonly buttonVariants?: {
30
+ readonly primary?: MuiButtonVariant;
31
+ readonly secondary?: MuiButtonVariant;
32
+ readonly danger?: MuiButtonVariant;
33
+ };
9
34
  readonly fullWidth?: boolean;
35
+ readonly inputFullWidth?: boolean;
36
+ readonly buttonFullWidth?: boolean;
10
37
  readonly dense?: boolean;
38
+ readonly getLocaleLabel?: (locale: string) => string;
39
+ readonly getActionLabel?: (actionType: BuilderActionIconType) => string;
40
+ readonly layoutOptions?: MuiLayoutOptions;
41
+ readonly fieldEditorOptions?: MuiFieldEditorOptions;
42
+ readonly localizationOptions?: MuiLocalizationOptions;
43
+ readonly muiSlotProps?: MuiBuilderSlotProps;
11
44
  }
12
45
  interface ResolvedMuiAdapterOptions {
13
46
  readonly size: "small" | "medium";
14
47
  readonly variant: "outlined" | "filled" | "standard";
15
48
  readonly buttonVariant: "contained" | "outlined" | "text";
49
+ readonly buttonVariants?: {
50
+ readonly primary: MuiButtonVariant;
51
+ readonly secondary: MuiButtonVariant;
52
+ readonly danger: MuiButtonVariant;
53
+ };
16
54
  readonly fullWidth: boolean;
55
+ readonly inputFullWidth?: boolean;
56
+ readonly buttonFullWidth?: boolean;
17
57
  readonly dense: boolean;
58
+ readonly getLocaleLabel?: (locale: string) => string;
59
+ readonly getActionLabel?: (actionType: BuilderActionIconType) => string;
60
+ readonly layoutOptions?: MuiLayoutOptions;
61
+ readonly fieldEditorOptions?: MuiFieldEditorOptions;
62
+ readonly localizationOptions?: MuiLocalizationOptions;
63
+ readonly muiSlotProps?: MuiBuilderSlotProps;
18
64
  }
65
+ declare const DEFAULT_MUI_SECTION_ORDER: readonly BuilderSectionName[];
19
66
  declare function resolveMuiAdapterOptions(options?: MuiAdapterOptions): ResolvedMuiAdapterOptions;
20
67
 
21
68
  declare function createMuiButtonAdapter(options?: MuiAdapterOptions): ComponentType<BuilderButtonProps>;
@@ -55,14 +102,24 @@ declare const muiBuilderComponents: FormBuilderComponents;
55
102
  declare function createMuiBuilderComponents(customOverrides?: Partial<FormBuilderComponents>): FormBuilderComponents;
56
103
  declare function createMuiBuilderComponents(options?: MuiAdapterOptions, customOverrides?: Partial<FormBuilderComponents>): FormBuilderComponents;
57
104
 
105
+ interface MuiFormBuilderContextValue {
106
+ readonly options: MuiAdapterOptions;
107
+ }
108
+ declare const MuiFormBuilderContext: react.Context<MuiFormBuilderContextValue>;
109
+ declare function mergeMuiAdapterOptions(base?: MuiAdapterOptions, overrides?: MuiAdapterOptions): MuiAdapterOptions;
110
+ declare function useResolvedMuiAdapterOptions(overrides?: MuiAdapterOptions): ResolvedMuiAdapterOptions;
111
+
58
112
  declare function muiDefaultIconResolver(actionType: BuilderActionIconType): ReactNode;
59
113
 
60
114
  interface MuiFormBuilderProps extends Omit<FormBuilderProps, "components" | "disableDefaultStyles" | "slots" | "unstyled"> {
61
115
  readonly muiOptions?: MuiAdapterOptions;
116
+ readonly layoutOptions?: MuiLayoutOptions;
117
+ readonly localizationOptions?: MuiLocalizationOptions;
118
+ readonly muiSlotProps?: MuiBuilderSlotProps;
62
119
  readonly components?: Partial<FormBuilderComponents>;
63
120
  readonly slots?: Partial<FormBuilderSlots>;
64
121
  }
65
- declare function MuiFormBuilder({ muiOptions, components: customComponents, slots: customSlots, ...props }: MuiFormBuilderProps): react.JSX.Element;
122
+ declare function MuiFormBuilder({ muiOptions, layoutOptions, localizationOptions, muiSlotProps, components: customComponents, slots: customSlots, sectionOrder, ...props }: MuiFormBuilderProps): react.JSX.Element;
66
123
 
67
124
  declare function createMuiFieldEditorSlot(options?: MuiAdapterOptions): ComponentType<BuilderFieldEditorSlotProps>;
68
125
  declare const MuiFieldEditorSlot: NonNullable<FormBuilderSlots["fieldEditor"]>;
@@ -79,4 +136,4 @@ declare const MuiToolbarSlot: NonNullable<FormBuilderSlots["toolbar"]>;
79
136
  declare const muiBuilderSlots: FormBuilderSlots;
80
137
  declare function createMuiBuilderSlots(options?: MuiAdapterOptions, customOverrides?: Partial<FormBuilderSlots>): FormBuilderSlots;
81
138
 
82
- export { type MuiAdapterOptions, type MuiBuilderOverrides, MuiButtonAdapter, MuiCheckboxAdapter, MuiErrorMessageAdapter, MuiFieldEditorSlot, MuiFieldsetAdapter, MuiFormBuilder, type MuiFormBuilderProps, MuiIconButtonAdapter, 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, muiBuilderComponents, muiBuilderSlots, muiDefaultIconResolver, resolveMuiAdapterOptions };
139
+ 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 };
package/dist/index.d.ts CHANGED
@@ -1,21 +1,68 @@
1
- import { BuilderButtonProps, BuilderCheckboxProps, BuilderErrorMessageProps, BuilderFieldsetProps, BuilderIconButtonProps, BuilderSectionProps, BuilderSelectProps, BuilderTextAreaProps, BuilderTextInputProps, FormBuilderComponents, FormBuilderSlots, FormBuilderProps, BuilderActionIconType, BuilderFieldEditorSlotProps, BuilderLocalizationSlotProps, BuilderOptionEditorSlotProps, BuilderToolbarSlotProps } from '@form-engine-ts/react';
1
+ import { BuilderActionIconType, BuilderButtonProps, BuilderCheckboxProps, BuilderErrorMessageProps, BuilderFieldsetProps, BuilderIconButtonProps, BuilderSectionProps, BuilderSelectProps, BuilderTextAreaProps, BuilderTextInputProps, FormBuilderComponents, FormBuilderSlots, FormBuilderProps, BuilderFieldEditorSlotProps, BuilderLocalizationSlotProps, BuilderOptionEditorSlotProps, BuilderToolbarSlotProps } from '@form-engine-ts/react';
2
2
  import * as react from 'react';
3
3
  import { ComponentType, ReactNode } from 'react';
4
+ import { CardProps, PaperProps, StackProps, AccordionProps } from '@mui/material';
4
5
 
6
+ type BuilderSectionName = "basicSettings" | "completionMessage" | "questions" | "addQuestion" | "localization";
7
+ type MuiButtonVariant = "contained" | "outlined" | "text";
8
+ interface MuiLayoutOptions {
9
+ readonly sectionOrder?: readonly BuilderSectionName[];
10
+ }
11
+ interface MuiLocalizationOptions {
12
+ readonly collapsible?: boolean;
13
+ readonly defaultExpanded?: boolean | "when-configured";
14
+ readonly defaultLocaleControl?: "editable" | "readOnly" | "hidden";
15
+ }
16
+ interface MuiFieldEditorOptions {
17
+ readonly description?: "editable" | "readOnly" | "hidden";
18
+ }
19
+ interface MuiBuilderSlotProps {
20
+ readonly card?: Partial<CardProps>;
21
+ readonly paper?: Partial<PaperProps>;
22
+ readonly stack?: Partial<StackProps>;
23
+ readonly accordion?: Partial<AccordionProps>;
24
+ }
5
25
  interface MuiAdapterOptions {
6
26
  readonly size?: "small" | "medium";
7
27
  readonly variant?: "outlined" | "filled" | "standard";
8
28
  readonly buttonVariant?: "contained" | "outlined" | "text";
29
+ readonly buttonVariants?: {
30
+ readonly primary?: MuiButtonVariant;
31
+ readonly secondary?: MuiButtonVariant;
32
+ readonly danger?: MuiButtonVariant;
33
+ };
9
34
  readonly fullWidth?: boolean;
35
+ readonly inputFullWidth?: boolean;
36
+ readonly buttonFullWidth?: boolean;
10
37
  readonly dense?: boolean;
38
+ readonly getLocaleLabel?: (locale: string) => string;
39
+ readonly getActionLabel?: (actionType: BuilderActionIconType) => string;
40
+ readonly layoutOptions?: MuiLayoutOptions;
41
+ readonly fieldEditorOptions?: MuiFieldEditorOptions;
42
+ readonly localizationOptions?: MuiLocalizationOptions;
43
+ readonly muiSlotProps?: MuiBuilderSlotProps;
11
44
  }
12
45
  interface ResolvedMuiAdapterOptions {
13
46
  readonly size: "small" | "medium";
14
47
  readonly variant: "outlined" | "filled" | "standard";
15
48
  readonly buttonVariant: "contained" | "outlined" | "text";
49
+ readonly buttonVariants?: {
50
+ readonly primary: MuiButtonVariant;
51
+ readonly secondary: MuiButtonVariant;
52
+ readonly danger: MuiButtonVariant;
53
+ };
16
54
  readonly fullWidth: boolean;
55
+ readonly inputFullWidth?: boolean;
56
+ readonly buttonFullWidth?: boolean;
17
57
  readonly dense: boolean;
58
+ readonly getLocaleLabel?: (locale: string) => string;
59
+ readonly getActionLabel?: (actionType: BuilderActionIconType) => string;
60
+ readonly layoutOptions?: MuiLayoutOptions;
61
+ readonly fieldEditorOptions?: MuiFieldEditorOptions;
62
+ readonly localizationOptions?: MuiLocalizationOptions;
63
+ readonly muiSlotProps?: MuiBuilderSlotProps;
18
64
  }
65
+ declare const DEFAULT_MUI_SECTION_ORDER: readonly BuilderSectionName[];
19
66
  declare function resolveMuiAdapterOptions(options?: MuiAdapterOptions): ResolvedMuiAdapterOptions;
20
67
 
21
68
  declare function createMuiButtonAdapter(options?: MuiAdapterOptions): ComponentType<BuilderButtonProps>;
@@ -55,14 +102,24 @@ declare const muiBuilderComponents: FormBuilderComponents;
55
102
  declare function createMuiBuilderComponents(customOverrides?: Partial<FormBuilderComponents>): FormBuilderComponents;
56
103
  declare function createMuiBuilderComponents(options?: MuiAdapterOptions, customOverrides?: Partial<FormBuilderComponents>): FormBuilderComponents;
57
104
 
105
+ interface MuiFormBuilderContextValue {
106
+ readonly options: MuiAdapterOptions;
107
+ }
108
+ declare const MuiFormBuilderContext: react.Context<MuiFormBuilderContextValue>;
109
+ declare function mergeMuiAdapterOptions(base?: MuiAdapterOptions, overrides?: MuiAdapterOptions): MuiAdapterOptions;
110
+ declare function useResolvedMuiAdapterOptions(overrides?: MuiAdapterOptions): ResolvedMuiAdapterOptions;
111
+
58
112
  declare function muiDefaultIconResolver(actionType: BuilderActionIconType): ReactNode;
59
113
 
60
114
  interface MuiFormBuilderProps extends Omit<FormBuilderProps, "components" | "disableDefaultStyles" | "slots" | "unstyled"> {
61
115
  readonly muiOptions?: MuiAdapterOptions;
116
+ readonly layoutOptions?: MuiLayoutOptions;
117
+ readonly localizationOptions?: MuiLocalizationOptions;
118
+ readonly muiSlotProps?: MuiBuilderSlotProps;
62
119
  readonly components?: Partial<FormBuilderComponents>;
63
120
  readonly slots?: Partial<FormBuilderSlots>;
64
121
  }
65
- declare function MuiFormBuilder({ muiOptions, components: customComponents, slots: customSlots, ...props }: MuiFormBuilderProps): react.JSX.Element;
122
+ declare function MuiFormBuilder({ muiOptions, layoutOptions, localizationOptions, muiSlotProps, components: customComponents, slots: customSlots, sectionOrder, ...props }: MuiFormBuilderProps): react.JSX.Element;
66
123
 
67
124
  declare function createMuiFieldEditorSlot(options?: MuiAdapterOptions): ComponentType<BuilderFieldEditorSlotProps>;
68
125
  declare const MuiFieldEditorSlot: NonNullable<FormBuilderSlots["fieldEditor"]>;
@@ -79,4 +136,4 @@ declare const MuiToolbarSlot: NonNullable<FormBuilderSlots["toolbar"]>;
79
136
  declare const muiBuilderSlots: FormBuilderSlots;
80
137
  declare function createMuiBuilderSlots(options?: MuiAdapterOptions, customOverrides?: Partial<FormBuilderSlots>): FormBuilderSlots;
81
138
 
82
- export { type MuiAdapterOptions, type MuiBuilderOverrides, MuiButtonAdapter, MuiCheckboxAdapter, MuiErrorMessageAdapter, MuiFieldEditorSlot, MuiFieldsetAdapter, MuiFormBuilder, type MuiFormBuilderProps, MuiIconButtonAdapter, 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, muiBuilderComponents, muiBuilderSlots, muiDefaultIconResolver, resolveMuiAdapterOptions };
139
+ 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 };