treege 3.0.0-beta.5 → 3.0.0-beta.50
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 +18 -12
- package/README.md +313 -52
- package/dist/DefaultInputs-lez0rJ7m.js +1761 -0
- package/dist/ThemeContext-BbA-sJ85.js +1353 -0
- package/dist/editor/components/input/ComboboxWithCreate.d.ts +2 -1
- package/dist/editor/components/styles/EditorStyles.d.ts +2 -0
- package/dist/editor/constants/defaultNode.d.ts +1 -1
- package/dist/editor/constants/edgeTypes.d.ts +3 -2
- package/dist/editor/constants/inputTypeIcons.d.ts +3 -0
- package/dist/editor/constants/nodeSpacing.d.ts +33 -0
- package/dist/editor/constants/nodeTypes.d.ts +4 -5
- package/dist/editor/context/OpenApiContext.d.ts +79 -0
- package/dist/editor/context/TreegeEditorContext.d.ts +60 -1
- package/dist/editor/features/TreegeEditor/TreegeEditor.d.ts +1 -1
- package/dist/editor/features/TreegeEditor/controls/MiniMapControl.d.ts +6 -0
- package/dist/editor/features/TreegeEditor/dialogs/AuthorizeDialog.d.ts +20 -0
- package/dist/editor/features/TreegeEditor/dialogs/ChangeNodeTypeDialog.d.ts +2 -0
- package/dist/editor/features/TreegeEditor/dialogs/DeleteNodeDialog.d.ts +2 -0
- package/dist/editor/features/TreegeEditor/dialogs/HeadersDialog.d.ts +19 -0
- package/dist/editor/features/TreegeEditor/dialogs/OpenApiDialog.d.ts +6 -0
- package/dist/editor/features/TreegeEditor/edges/ConditionalEdge.d.ts +2 -2
- package/dist/editor/features/TreegeEditor/edges/DefaultEdge.d.ts +3 -0
- package/dist/editor/features/TreegeEditor/forms/OptionsSourceForm.d.ts +7 -0
- package/dist/editor/features/TreegeEditor/forms/SubmitConfigForm.d.ts +7 -0
- package/dist/editor/features/TreegeEditor/inputs/ApiUrlCombobox.d.ts +30 -0
- package/dist/editor/features/TreegeEditor/inputs/ComboboxPattern.d.ts +2 -1
- package/dist/editor/features/TreegeEditor/inputs/OptionImageField.d.ts +6 -0
- package/dist/editor/features/TreegeEditor/inputs/SelectNodeGroup.d.ts +22 -1
- package/dist/editor/features/TreegeEditor/layout/AutoLayout.d.ts +15 -0
- package/dist/editor/features/TreegeEditor/nodes/TreegeNode.d.ts +5 -0
- package/dist/editor/features/TreegeEditor/nodes/components/BottomHandleDropdown.d.ts +7 -0
- package/dist/editor/features/TreegeEditor/nodes/components/NodeGroupBadge.d.ts +6 -0
- package/dist/editor/features/TreegeEditor/nodes/components/NodeImage.d.ts +5 -0
- package/dist/editor/features/TreegeEditor/nodes/components/NodeImageButton.d.ts +6 -0
- package/dist/editor/features/TreegeEditor/nodes/components/NodeInputPreview.d.ts +12 -0
- package/dist/editor/features/TreegeEditor/nodes/components/NodeLabelInput.d.ts +10 -0
- package/dist/editor/features/TreegeEditor/nodes/components/NodeMoreMenu.d.ts +6 -0
- package/dist/editor/features/TreegeEditor/nodes/components/NodeRequiredButton.d.ts +6 -0
- package/dist/editor/features/TreegeEditor/nodes/components/NodeStackOrderButtons.d.ts +6 -0
- package/dist/editor/features/TreegeEditor/nodes/components/NodeTypeBadge.d.ts +7 -0
- package/dist/editor/features/TreegeEditor/nodes/layout/NodeWrapper.d.ts +4 -2
- package/dist/editor/features/TreegeEditor/panel/AIGeneratorDialog.d.ts +16 -0
- package/dist/editor/features/TreegeEditor/panel/ActionsPanel.d.ts +7 -2
- package/dist/editor/features/TreegeEditor/panel/MultiSelectionPanel.d.ts +7 -0
- package/dist/editor/hooks/useAvailableParentFields.d.ts +13 -0
- package/dist/editor/hooks/useFlowActions.d.ts +6 -2
- package/dist/editor/hooks/useFlowConnections.d.ts +13 -0
- package/dist/editor/hooks/useHistoryStore.d.ts +26 -0
- package/dist/editor/hooks/useIsStackedEdge.d.ts +8 -0
- package/dist/editor/hooks/useNodesSelection.d.ts +5 -5
- package/dist/editor/hooks/useStackPosition.d.ts +14 -0
- package/dist/editor/hooks/useUndoRedo.d.ts +31 -0
- package/dist/editor/types/ai.d.ts +65 -0
- package/dist/editor/types/editor.d.ts +71 -9
- package/dist/editor/types/openapi.d.ts +81 -0
- package/dist/editor/utils/aiFlowGenerator.d.ts +5 -0
- package/dist/editor/utils/dagreLayout.d.ts +8 -0
- package/dist/editor/utils/edge.d.ts +14 -0
- package/dist/editor/utils/groupColor.d.ts +14 -0
- package/dist/editor/utils/image.d.ts +7 -0
- package/dist/editor/utils/inputTypeIcon.d.ts +6 -0
- package/dist/editor/utils/openapi.d.ts +35 -0
- package/dist/editor/utils/stackPositionIndex.d.ts +9 -0
- package/dist/editor-BEhbmVtH.js +5740 -0
- package/dist/editor.js +3 -8
- package/dist/main.js +4 -53
- package/dist/renderer/context/TreegeConfigContext.d.ts +3 -27
- package/dist/renderer/context/TreegeRendererContext.d.ts +100 -2
- package/dist/renderer/features/TreegeRenderer/native/TreegeRenderer.d.ts +19 -11
- package/dist/renderer/features/TreegeRenderer/native/components/DefaultFormWrapper.d.ts +7 -7
- package/dist/renderer/features/TreegeRenderer/native/components/DefaultInputWrapper.d.ts +9 -0
- package/dist/renderer/features/TreegeRenderer/native/components/DefaultInputs.d.ts +21 -15
- package/dist/renderer/features/TreegeRenderer/native/components/DefaultStep.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/DefaultSubmitButton.d.ts +9 -7
- package/dist/renderer/features/TreegeRenderer/native/components/DefaultSubmitButtonWrapper.d.ts +11 -0
- package/dist/renderer/features/TreegeRenderer/native/components/DefaultUI.d.ts +8 -7
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultAddressInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultAutocompleteInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultCheckboxInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultDateInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultDateRangeInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultFileInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultHiddenInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultHttpInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultNumberInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultPasswordInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultRadioInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultSelectInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultSwitchInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultTextInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultTextareaInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultTimeInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultTimeRangeInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/useTreegeRenderer.d.ts +92 -24
- package/dist/renderer/features/TreegeRenderer/web/TreegeRenderer.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/DefaultFormWrapper.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/DefaultInputWrapper.d.ts +9 -0
- package/dist/renderer/features/TreegeRenderer/web/components/DefaultStep.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/web/components/DefaultSubmitButton.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultAddressInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultAutocompleteInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultCheckboxInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultDateInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultDateRangeInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultFileInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultHiddenInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultHttpInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultNumberInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultPasswordInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultRadioInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultSelectInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultSubmitInput.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultSwitchInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultTextAreaInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultTextInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultTimeInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultTimeRangeInput.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/styles/RendererStyles.d.ts +2 -0
- package/dist/renderer/hooks/useInputOptions.d.ts +28 -0
- package/dist/renderer/hooks/useRenderNode.d.ts +57 -0
- package/dist/renderer/hooks/useSubmitHandler.d.ts +35 -0
- package/dist/renderer/hooks/useTranslate.d.ts +6 -4
- package/dist/renderer/index.d.ts +3 -1
- package/dist/renderer/index.native.d.ts +19 -0
- package/dist/renderer/types/renderer.d.ts +131 -33
- package/dist/renderer/utils/flow.d.ts +1 -18
- package/dist/renderer/utils/form.d.ts +22 -2
- package/dist/renderer/utils/http.d.ts +129 -0
- package/dist/renderer/utils/node.d.ts +18 -1
- package/dist/renderer/utils/sanitize.d.ts +85 -0
- package/dist/renderer/utils/sanitize.native.d.ts +69 -0
- package/dist/renderer/utils/step.d.ts +27 -0
- package/dist/renderer/utils/submit.d.ts +48 -0
- package/dist/renderer-native.d.ts +2 -0
- package/dist/renderer-native.js +3580 -0
- package/dist/renderer.js +3 -46
- package/dist/shared/components/ui/badge.d.ts +2 -2
- package/dist/shared/components/ui/button.d.ts +3 -3
- package/dist/shared/components/ui/collapsible.d.ts +1 -1
- package/dist/shared/components/ui/command.d.ts +1 -1
- package/dist/shared/components/ui/dropdown-menu.d.ts +1 -1
- package/dist/shared/components/ui/field.d.ts +24 -0
- package/dist/shared/components/ui/form.d.ts +1 -1
- package/dist/shared/components/ui/popover.d.ts +4 -2
- package/dist/shared/components/ui/select.d.ts +3 -1
- package/dist/shared/components/ui/sheet.d.ts +1 -1
- package/dist/shared/components/ui/toggle-group.d.ts +7 -0
- package/dist/shared/components/ui/toggle.d.ts +9 -0
- package/dist/shared/components/ui/tooltip.d.ts +1 -1
- package/dist/shared/constants/colors.d.ts +45 -0
- package/dist/shared/constants/inputType.d.ts +1 -0
- package/dist/shared/constants/node.d.ts +0 -1
- package/dist/shared/context/ThemeContext.d.ts +2 -0
- package/dist/shared/context/ThemeContext.native.d.ts +22 -0
- package/dist/shared/hooks/useMediaQuery.d.ts +12 -0
- package/dist/shared/hooks/useThemeColors.d.ts +37 -0
- package/dist/shared/locales/ar.json.d.ts +220 -18
- package/dist/shared/locales/de.json.d.ts +221 -19
- package/dist/shared/locales/en.json.d.ts +222 -20
- package/dist/shared/locales/es.json.d.ts +221 -19
- package/dist/shared/locales/fr.json.d.ts +221 -19
- package/dist/shared/locales/it.json.d.ts +221 -19
- package/dist/shared/locales/pt.json.d.ts +221 -19
- package/dist/shared/types/edge.d.ts +6 -0
- package/dist/shared/types/node.d.ts +109 -7
- package/dist/shared/utils/inputTypeGuards.d.ts +7 -0
- package/dist/shared/utils/nodeTypeGuards.d.ts +1 -6
- package/package.json +48 -22
- package/dist/ThemeContext-D4xMOrdt.js +0 -759
- package/dist/TreegeEditor-B8FP1rKR.js +0 -2153
- package/dist/TreegeRenderer-BOCobRLr.js +0 -1414
- package/dist/editor/features/TreegeEditor/forms/FlowNodeForm.d.ts +0 -2
- package/dist/editor/features/TreegeEditor/inputs/SelectInputType.d.ts +0 -7
- package/dist/editor/features/TreegeEditor/nodes/FlowNode.d.ts +0 -6
- package/dist/editor/features/TreegeEditor/nodes/GroupNode.d.ts +0 -6
- package/dist/editor/features/TreegeEditor/nodes/InputNode.d.ts +0 -6
- package/dist/editor/features/TreegeEditor/nodes/UINode.d.ts +0 -6
- package/dist/editor/hooks/useEdgesSelection.d.ts +0 -11
- package/dist/renderer/features/TreegeRenderer/native/components/DefaultGroup.d.ts +0 -7
- package/dist/renderer/features/TreegeRenderer/web/components/DefaultGroup.d.ts +0 -6
- /package/dist/editor/components/{data-display/logo.d.ts → branding/Logo.d.ts} +0 -0
|
@@ -1,43 +1,106 @@
|
|
|
1
1
|
import { Node } from '@xyflow/react';
|
|
2
|
-
import { FormValues } from '../../types/renderer';
|
|
3
|
-
import {
|
|
2
|
+
import { FormValues, TreegeRendererProps } from '../../types/renderer';
|
|
3
|
+
import { GroupNodeData, TreegeNodeData } from '../../../shared/types/node';
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
5
|
+
* Main TreegeRenderer hook
|
|
6
6
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* All state is keyed by nodeId for uniqueness.
|
|
7
|
+
* Manages all form state, configuration, validation, and submission logic.
|
|
8
|
+
* Can be used directly in custom components for headless mode.
|
|
10
9
|
*
|
|
11
10
|
* Responsibilities:
|
|
11
|
+
* - Config merging (props + global provider)
|
|
12
12
|
* - Form values state (keyed by nodeId)
|
|
13
13
|
* - Errors state
|
|
14
14
|
* - Node visibility calculation (progressive rendering)
|
|
15
|
-
* - Form validation (built-in: required, pattern)
|
|
16
|
-
* - Submit
|
|
15
|
+
* - Form validation (built-in: required, pattern + custom validation)
|
|
16
|
+
* - Submit handling (with HTTP integration support)
|
|
17
|
+
* - Side effects (onChange callbacks, validation modes, reference field sync)
|
|
17
18
|
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
* - Side effects like onChange callbacks (done in component)
|
|
21
|
-
* - Custom validation (passed to component)
|
|
19
|
+
* @param props - Configuration props (flows, initialValues, callbacks, etc.)
|
|
20
|
+
* @returns Complete form state and control methods
|
|
22
21
|
*/
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
*
|
|
26
|
-
* @param flows - Flow or array of flows (can be null/undefined)
|
|
27
|
-
* @param initialValues - Initial form values (will be merged with node defaults)
|
|
28
|
-
* @param language - Preferred language for translations (defaults to 'en')
|
|
29
|
-
* @returns Pure state and computed values (no side effects)
|
|
30
|
-
*/
|
|
31
|
-
export declare const useTreegeRenderer: (flows: Flow | Flow[] | null | undefined, initialValues?: FormValues, language?: string) => {
|
|
22
|
+
export declare const useTreegeRenderer: ({ components, flows, googleApiKey, headers, initialValues, language, onChange, onSubmit, theme, validate, validationMode, }: Pick<TreegeRendererProps, "components" | "flows" | "googleApiKey" | "headers" | "initialValues" | "language" | "onChange" | "onSubmit" | "theme" | "validate" | "validationMode">) => {
|
|
23
|
+
canContinueStep: boolean;
|
|
32
24
|
canSubmit: boolean;
|
|
25
|
+
clearSubmitMessage: () => void;
|
|
26
|
+
config: {
|
|
27
|
+
components: {
|
|
28
|
+
form: ((props: {
|
|
29
|
+
children: import('react').ReactNode;
|
|
30
|
+
onSubmit: (e: import('react').FormEvent<HTMLFormElement>) => void;
|
|
31
|
+
}) => import('react').ReactNode) | undefined;
|
|
32
|
+
inputs: {
|
|
33
|
+
number?: ((props: import('../../types/renderer').InputRenderProps<"number">) => import('react').ReactNode) | undefined;
|
|
34
|
+
checkbox?: ((props: import('../../types/renderer').InputRenderProps<"checkbox">) => import('react').ReactNode) | undefined;
|
|
35
|
+
radio?: ((props: import('../../types/renderer').InputRenderProps<"radio">) => import('react').ReactNode) | undefined;
|
|
36
|
+
switch?: ((props: import('../../types/renderer').InputRenderProps<"switch">) => import('react').ReactNode) | undefined;
|
|
37
|
+
address?: ((props: import('../../types/renderer').InputRenderProps<"address">) => import('react').ReactNode) | undefined;
|
|
38
|
+
autocomplete?: ((props: import('../../types/renderer').InputRenderProps<"autocomplete">) => import('react').ReactNode) | undefined;
|
|
39
|
+
date?: ((props: import('../../types/renderer').InputRenderProps<"date">) => import('react').ReactNode) | undefined;
|
|
40
|
+
daterange?: ((props: import('../../types/renderer').InputRenderProps<"daterange">) => import('react').ReactNode) | undefined;
|
|
41
|
+
file?: ((props: import('../../types/renderer').InputRenderProps<"file">) => import('react').ReactNode) | undefined;
|
|
42
|
+
hidden?: ((props: import('../../types/renderer').InputRenderProps<"hidden">) => import('react').ReactNode) | undefined;
|
|
43
|
+
http?: ((props: import('../../types/renderer').InputRenderProps<"http">) => import('react').ReactNode) | undefined;
|
|
44
|
+
password?: ((props: import('../../types/renderer').InputRenderProps<"password">) => import('react').ReactNode) | undefined;
|
|
45
|
+
select?: ((props: import('../../types/renderer').InputRenderProps<"select">) => import('react').ReactNode) | undefined;
|
|
46
|
+
submit?: ((props: import('../../types/renderer').InputRenderProps<"submit">) => import('react').ReactNode) | undefined;
|
|
47
|
+
text?: ((props: import('../../types/renderer').InputRenderProps<"text">) => import('react').ReactNode) | undefined;
|
|
48
|
+
textarea?: ((props: import('../../types/renderer').InputRenderProps<"textarea">) => import('react').ReactNode) | undefined;
|
|
49
|
+
time?: ((props: import('../../types/renderer').InputRenderProps<"time">) => import('react').ReactNode) | undefined;
|
|
50
|
+
timerange?: ((props: import('../../types/renderer').InputRenderProps<"timerange">) => import('react').ReactNode) | undefined;
|
|
51
|
+
};
|
|
52
|
+
step: ((props: import('../../types/renderer').StepRenderProps) => import('react').ReactNode) | undefined;
|
|
53
|
+
submitButton: ((props: {
|
|
54
|
+
label?: string;
|
|
55
|
+
disabled?: boolean;
|
|
56
|
+
[key: string]: unknown;
|
|
57
|
+
} | {
|
|
58
|
+
children?: import('react').ReactNode;
|
|
59
|
+
disabled?: boolean;
|
|
60
|
+
isSubmitting?: boolean;
|
|
61
|
+
onPress?: () => void;
|
|
62
|
+
[key: string]: unknown;
|
|
63
|
+
}) => import('react').ReactNode) | undefined;
|
|
64
|
+
submitButtonWrapper: ((props: {
|
|
65
|
+
children: import('react').ReactNode;
|
|
66
|
+
missingFields?: string[];
|
|
67
|
+
}) => import('react').ReactNode) | undefined;
|
|
68
|
+
ui: {
|
|
69
|
+
divider?: ((props: import('../../types/renderer').NodeRenderProps) => import('react').ReactNode) | undefined;
|
|
70
|
+
title?: ((props: import('../../types/renderer').NodeRenderProps) => import('react').ReactNode) | undefined;
|
|
71
|
+
};
|
|
72
|
+
};
|
|
73
|
+
googleApiKey: string | undefined;
|
|
74
|
+
headers: import('../../../shared/types/node').HttpHeader[];
|
|
75
|
+
language: string;
|
|
76
|
+
theme: "dark" | "light";
|
|
77
|
+
validationMode: "onChange" | "onSubmit";
|
|
78
|
+
};
|
|
79
|
+
currentStep: import('../../utils/step').FlowStep;
|
|
80
|
+
currentStepGroupNode: Node<GroupNodeData> | undefined;
|
|
81
|
+
currentStepIndex: number;
|
|
82
|
+
firstErrorFieldId: string | undefined;
|
|
33
83
|
formErrors: Record<string, string>;
|
|
34
84
|
formValues: FormValues;
|
|
85
|
+
goToNextStep: () => void;
|
|
86
|
+
goToPreviousStep: () => void;
|
|
87
|
+
handleSubmit: () => Promise<boolean>;
|
|
88
|
+
hasSubmitInput: boolean;
|
|
35
89
|
inputNodes: Node<import('../../../shared/types/node').InputNodeData>[];
|
|
36
|
-
|
|
90
|
+
isFirstStep: boolean;
|
|
91
|
+
isLastStep: boolean;
|
|
92
|
+
isSubmitting: boolean;
|
|
37
93
|
missingRequiredFields: string[];
|
|
94
|
+
prevFormValuesRef: import('react').RefObject<FormValues>;
|
|
95
|
+
setFieldErrors: import('react').Dispatch<import('react').SetStateAction<Record<string, string>>>;
|
|
38
96
|
setFieldValue: (fieldName: string, value: unknown) => void;
|
|
39
|
-
|
|
40
|
-
|
|
97
|
+
setMultipleFieldValues: (updates: FormValues) => void;
|
|
98
|
+
steps: import('../../utils/step').FlowStep[];
|
|
99
|
+
submitMessage: {
|
|
100
|
+
type: "success" | "error";
|
|
101
|
+
message: string;
|
|
102
|
+
} | null;
|
|
103
|
+
t: (key?: import('../../../main').Translatable | string) => string;
|
|
41
104
|
validateForm: (customValidate?: (values: FormValues, visibleNodesList: Node<TreegeNodeData>[]) => Record<string, string>) => {
|
|
42
105
|
errors: {
|
|
43
106
|
[x: string]: string;
|
|
@@ -48,3 +111,8 @@ export declare const useTreegeRenderer: (flows: Flow | Flow[] | null | undefined
|
|
|
48
111
|
visibleNodes: Node<TreegeNodeData>[];
|
|
49
112
|
visibleRootNodes: Node<TreegeNodeData>[];
|
|
50
113
|
};
|
|
114
|
+
/**
|
|
115
|
+
* Type for the return value of useTreegeRenderer
|
|
116
|
+
* Useful for TypeScript users building custom components
|
|
117
|
+
*/
|
|
118
|
+
export type UseTreegeRendererReturn = ReturnType<typeof useTreegeRenderer>;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { TreegeRendererProps } from '../../../types/renderer';
|
|
2
|
-
declare const TreegeRenderer: ({ components, flows, googleApiKey,
|
|
2
|
+
declare const TreegeRenderer: ({ components, className, flows, googleApiKey, headers, language, onChange, onSubmit, theme, validate, validationMode, initialValues, }: TreegeRendererProps) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default TreegeRenderer;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FormEvent, ReactNode } from 'react';
|
|
2
2
|
declare const DefaultFormWrapper: ({ children, onSubmit }: {
|
|
3
3
|
children: ReactNode;
|
|
4
|
-
onSubmit: (e: FormEvent) => void;
|
|
4
|
+
onSubmit: (e: FormEvent<HTMLFormElement>) => void;
|
|
5
5
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
6
6
|
export default DefaultFormWrapper;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Node } from '@xyflow/react';
|
|
2
|
+
import { ReactNode } from 'react';
|
|
3
|
+
import { InputNodeData } from '../../../../../shared/types/node';
|
|
4
|
+
interface DefaultInputWrapperProps {
|
|
5
|
+
node: Node<InputNodeData>;
|
|
6
|
+
children: ReactNode;
|
|
7
|
+
}
|
|
8
|
+
export declare const DefaultInputWrapper: ({ node, children }: DefaultInputWrapperProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export default DefaultInputWrapper;
|
|
@@ -5,5 +5,5 @@ export interface SubmitButtonProps extends ButtonHTMLAttributes<HTMLButtonElemen
|
|
|
5
5
|
/**
|
|
6
6
|
* Default submit button
|
|
7
7
|
*/
|
|
8
|
-
declare const DefaultSubmitButton: (
|
|
8
|
+
declare const DefaultSubmitButton: import('react').ForwardRefExoticComponent<SubmitButtonProps & import('react').RefAttributes<HTMLButtonElement>>;
|
|
9
9
|
export default DefaultSubmitButton;
|
package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultAddressInput.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultAddressInput: ({ node, value, setValue, error }: InputRenderProps<"address">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultAddressInput: ({ node, value, setValue, error, label, placeholder, helperText, id, name }: InputRenderProps<"address">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultAddressInput;
|
package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultAutocompleteInput.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultAutocompleteInput: ({ node, value, setValue, error }: InputRenderProps<"autocomplete">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultAutocompleteInput: ({ node, value, setValue, error, label, placeholder, helperText, id, }: InputRenderProps<"autocomplete">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultAutocompleteInput;
|
package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultCheckboxInput.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultCheckboxInput: ({ node, value, setValue, error }: InputRenderProps<"checkbox">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultCheckboxInput: ({ node, value, setValue, error, label, helperText, id, name, renderOptionExtras, compactOptions, }: InputRenderProps<"checkbox">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultCheckboxInput;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultDateInput: ({ node, value, setValue, error }: InputRenderProps<"date">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultDateInput: ({ node, value, setValue, error, label, placeholder, helperText, id, name }: InputRenderProps<"date">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultDateInput;
|
package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultDateRangeInput.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultDateRangeInput: ({ node, value, setValue, error }: InputRenderProps<"daterange">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultDateRangeInput: ({ node, value, setValue, error, label, helperText, id }: InputRenderProps<"daterange">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultDateRangeInput;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultFileInput: ({ node, setValue, error }: InputRenderProps<"file">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultFileInput: ({ node, setValue, error, label, placeholder, helperText, name, id }: InputRenderProps<"file">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultFileInput;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultHiddenInput: ({
|
|
2
|
+
declare const DefaultHiddenInput: ({ value, name, id }: InputRenderProps<"hidden">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultHiddenInput;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultHttpInput: ({ node, value, setValue, error }: InputRenderProps<"http">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultHttpInput: ({ node, value, setValue, error, label, placeholder, helperText, id, name }: InputRenderProps<"http">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultHttpInput;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultNumberInput: ({ node, value, setValue, error }: InputRenderProps<"number">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultNumberInput: ({ node, value, setValue, error, label, placeholder, helperText, name, id }: InputRenderProps<"number">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultNumberInput;
|
package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultPasswordInput.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultPasswordInput: ({ node, value, setValue, error }: InputRenderProps<"password">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultPasswordInput: ({ node, value, setValue, error, label, placeholder, helperText, name, id }: InputRenderProps<"password">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultPasswordInput;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultRadioInput: ({ node, value, setValue, error }: InputRenderProps<"radio">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultRadioInput: ({ node, value, setValue, error, label, helperText, id, name, renderOptionExtras, compactOptions, }: InputRenderProps<"radio">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultRadioInput;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultSelectInput: ({ node, value, setValue, error }: InputRenderProps<"select">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultSelectInput: ({ node, value, setValue, error, label, placeholder, helperText, name, id }: InputRenderProps<"select">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultSelectInput;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultSwitchInput: ({ node, value, setValue, error }: InputRenderProps<"switch">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultSwitchInput: ({ node, value, setValue, error, label, helperText, name, id }: InputRenderProps<"switch">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultSwitchInput;
|
package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultTextAreaInput.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultTextAreaInput: ({ node, value, setValue, error }: InputRenderProps<"textarea">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultTextAreaInput: ({ node, value, setValue, error, label, placeholder, helperText, name, id }: InputRenderProps<"textarea">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultTextAreaInput;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultTextInput: ({ node, value, setValue, error }: InputRenderProps<"text">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultTextInput: ({ node, value, setValue, error, label, placeholder, helperText, name, id }: InputRenderProps<"text">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultTextInput;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultTimeInput: ({ node, value, setValue, error }: InputRenderProps<"time">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultTimeInput: ({ node, value, setValue, error, label, placeholder, helperText, name, id }: InputRenderProps<"time">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultTimeInput;
|
package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultTimeRangeInput.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
-
declare const DefaultTimeRangeInput: ({ node, value, setValue, error }: InputRenderProps<"timerange">) => import("react/jsx-runtime").JSX.Element;
|
|
2
|
+
declare const DefaultTimeRangeInput: ({ node, value, setValue, error, label, helperText, id, name }: InputRenderProps<"timerange">) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
export default DefaultTimeRangeInput;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Node } from '@xyflow/react';
|
|
2
|
+
import { InputNodeData, InputOption } from '../../shared/types/node';
|
|
3
|
+
interface UseInputOptionsResult {
|
|
4
|
+
/**
|
|
5
|
+
* Resolved options for the input. When the node has an `optionsSource`,
|
|
6
|
+
* these are the fetched options (or the static fallback while loading or
|
|
7
|
+
* if the fetch errors). Otherwise the static `options` from the node data.
|
|
8
|
+
*/
|
|
9
|
+
options: InputOption[];
|
|
10
|
+
/** True while a remote fetch is in flight. */
|
|
11
|
+
isLoading: boolean;
|
|
12
|
+
/** Error message if the latest remote fetch failed; otherwise `null`. */
|
|
13
|
+
error: string | null;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Resolves the options for an option-based input (radio, checkbox, select,
|
|
17
|
+
* autocomplete). If the node declares an `optionsSource`, options are fetched
|
|
18
|
+
* from that API at runtime, with `{{templateVar}}` substitution from form
|
|
19
|
+
* values and merging of global + field-level headers. While loading, before
|
|
20
|
+
* the first successful fetch, or on error, falls back to the static
|
|
21
|
+
* `options` array (if any).
|
|
22
|
+
*
|
|
23
|
+
* The fetch plan is computed once and serialized to JSON. The fetch effect
|
|
24
|
+
* keys off this string: changes that don't affect the actual request (e.g.
|
|
25
|
+
* an unrelated form field) produce the same JSON and don't re-trigger.
|
|
26
|
+
*/
|
|
27
|
+
export declare const useInputOptions: (node: Node<InputNodeData>) => UseInputOptionsResult;
|
|
28
|
+
export {};
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { Node } from '@xyflow/react';
|
|
2
|
+
import { ComponentType, ReactNode } from 'react';
|
|
3
|
+
import { FormValues, InputRenderers, TreegeRendererComponents } from '../types/renderer';
|
|
4
|
+
import { InputNodeData, TreegeNodeData } from '../../shared/types/node';
|
|
5
|
+
type AnyComponent = ComponentType<any>;
|
|
6
|
+
type UseRenderNodeParams = {
|
|
7
|
+
config: {
|
|
8
|
+
components: TreegeRendererComponents;
|
|
9
|
+
language: string;
|
|
10
|
+
};
|
|
11
|
+
DefaultFormWrapper: AnyComponent;
|
|
12
|
+
DefaultInputWrapper: ComponentType<{
|
|
13
|
+
node: Node<InputNodeData>;
|
|
14
|
+
children: ReactNode;
|
|
15
|
+
}>;
|
|
16
|
+
DefaultSubmitButton: AnyComponent;
|
|
17
|
+
DefaultSubmitButtonWrapper?: AnyComponent;
|
|
18
|
+
defaultInputRenderers: InputRenderers;
|
|
19
|
+
defaultUI: Record<string, AnyComponent>;
|
|
20
|
+
formErrors: Record<string, string>;
|
|
21
|
+
formValues: FormValues;
|
|
22
|
+
missingRequiredFields: string[];
|
|
23
|
+
setFieldValue: (fieldId: string, value: unknown) => void;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Hook that returns rendering utilities for TreegeRenderer
|
|
27
|
+
* Shared between web and native TreegeRenderer
|
|
28
|
+
*
|
|
29
|
+
* Returns:
|
|
30
|
+
* - renderNode: Function to render individual nodes
|
|
31
|
+
* - FormWrapper: Form wrapper component with fallback
|
|
32
|
+
* - SubmitButton: Submit button component with fallback
|
|
33
|
+
* - SubmitButtonWrapper: Submit button wrapper component with fallback (web only, undefined for native)
|
|
34
|
+
*/
|
|
35
|
+
export declare const useRenderNode: ({ DefaultFormWrapper, DefaultInputWrapper, DefaultSubmitButton, DefaultSubmitButtonWrapper, config, defaultInputRenderers, defaultUI, formErrors, formValues, missingRequiredFields, setFieldValue, }: UseRenderNodeParams) => {
|
|
36
|
+
FormWrapper: ((props: {
|
|
37
|
+
children: ReactNode;
|
|
38
|
+
onSubmit: (e: import('react').FormEvent<HTMLFormElement>) => void;
|
|
39
|
+
}) => ReactNode) | AnyComponent;
|
|
40
|
+
renderNode: (node: Node<TreegeNodeData>) => ReactNode;
|
|
41
|
+
SubmitButton: ((props: {
|
|
42
|
+
label?: string;
|
|
43
|
+
disabled?: boolean;
|
|
44
|
+
[key: string]: unknown;
|
|
45
|
+
} | {
|
|
46
|
+
children?: ReactNode;
|
|
47
|
+
disabled?: boolean;
|
|
48
|
+
isSubmitting?: boolean;
|
|
49
|
+
onPress?: () => void;
|
|
50
|
+
[key: string]: unknown;
|
|
51
|
+
}) => ReactNode) | AnyComponent;
|
|
52
|
+
SubmitButtonWrapper: ((props: {
|
|
53
|
+
children: ReactNode;
|
|
54
|
+
missingFields?: string[];
|
|
55
|
+
}) => ReactNode) | AnyComponent;
|
|
56
|
+
};
|
|
57
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Node } from '@xyflow/react';
|
|
2
|
+
import { FormValues } from '../types/renderer';
|
|
3
|
+
import { SubmitResult } from '../utils/submit';
|
|
4
|
+
import { HttpHeader, InputNodeData, TreegeNodeData } from '../../shared/types/node';
|
|
5
|
+
/**
|
|
6
|
+
* Hook for handling form submission with submit button configuration
|
|
7
|
+
*
|
|
8
|
+
* This hook provides:
|
|
9
|
+
* - Submit button node detection
|
|
10
|
+
* - HTTP submission handling
|
|
11
|
+
* - Loading state management
|
|
12
|
+
* - Success/error message handling
|
|
13
|
+
* - Redirect handling
|
|
14
|
+
*
|
|
15
|
+
* @param visibleNodes - Currently visible nodes in the form
|
|
16
|
+
* @param formValues - Current form values
|
|
17
|
+
* @param language - Current language for translations
|
|
18
|
+
* @param inputNodes - All input nodes for form data conversion
|
|
19
|
+
* @param headers
|
|
20
|
+
* @returns Submit handler state and functions
|
|
21
|
+
*/
|
|
22
|
+
export declare const useSubmitHandler: (visibleNodes: Node<TreegeNodeData>[], formValues: FormValues, language: string, inputNodes: Node<InputNodeData>[], headers?: HttpHeader[]) => {
|
|
23
|
+
clearSubmitMessage: () => void;
|
|
24
|
+
handleSubmitWithConfig: (onSuccess?: (data: unknown) => void) => Promise<SubmitResult | null>;
|
|
25
|
+
hasSubmitConfig: boolean;
|
|
26
|
+
isSubmitting: boolean;
|
|
27
|
+
submitButtonNode: {
|
|
28
|
+
id: string;
|
|
29
|
+
data: InputNodeData;
|
|
30
|
+
} | null;
|
|
31
|
+
submitMessage: {
|
|
32
|
+
type: "success" | "error";
|
|
33
|
+
message: string;
|
|
34
|
+
} | null;
|
|
35
|
+
};
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
+
import { Translatable } from '../../shared/types/translate';
|
|
1
2
|
/**
|
|
2
3
|
* Hook for translating text in the renderer with context-aware language preference.
|
|
3
4
|
*
|
|
4
5
|
* This hook uses the language from TreegeRendererContext (or explicit override) and delegates to the shared useTranslate hook.
|
|
6
|
+
* All translations are automatically sanitized to prevent XSS attacks.
|
|
5
7
|
*
|
|
6
8
|
* @param language - Optional language override. If not provided, uses language from context.
|
|
7
|
-
* @returns A function that translates either a translation key or a Translatable object
|
|
9
|
+
* @returns A function that translates either a translation key or a Translatable object (with XSS protection)
|
|
8
10
|
*
|
|
9
11
|
* @example
|
|
10
12
|
* // Static translation (from translation files)
|
|
@@ -12,13 +14,13 @@
|
|
|
12
14
|
* const errorMsg = t("validation.required"); // "This field is required"
|
|
13
15
|
*
|
|
14
16
|
* @example
|
|
15
|
-
* // Dynamic translation (from node data)
|
|
17
|
+
* // Dynamic translation (from node data) - automatically sanitized
|
|
16
18
|
* const t = useTranslate();
|
|
17
|
-
* const label = t(node.data.label); // Translates user-defined content
|
|
19
|
+
* const label = t(node.data.label); // Translates and sanitizes user-defined content
|
|
18
20
|
*
|
|
19
21
|
* @example
|
|
20
22
|
* // With explicit language
|
|
21
23
|
* const t = useTranslate("fr");
|
|
22
24
|
* const errorMsg = t("validation.required"); // "Ce champ est requis"
|
|
23
25
|
*/
|
|
24
|
-
export declare const useTranslate: (language?: string) => (key?:
|
|
26
|
+
export declare const useTranslate: (language?: string) => (key?: Translatable | string) => string;
|
package/dist/renderer/index.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
export { TreegeConfigProvider, useTreegeConfig } from './context/TreegeConfigContext';
|
|
2
|
+
export type { UseTreegeRendererReturn } from './features/TreegeRenderer/useTreegeRenderer';
|
|
2
3
|
export { useTreegeRenderer } from './features/TreegeRenderer/useTreegeRenderer';
|
|
3
4
|
export * from './features/TreegeRenderer/web/components/DefaultFormWrapper';
|
|
4
|
-
export * from './features/TreegeRenderer/web/components/DefaultGroup';
|
|
5
5
|
export * from './features/TreegeRenderer/web/components/DefaultInputs';
|
|
6
|
+
export * from './features/TreegeRenderer/web/components/DefaultStep';
|
|
6
7
|
export * from './features/TreegeRenderer/web/components/DefaultSubmitButton';
|
|
7
8
|
export * from './features/TreegeRenderer/web/components/DefaultUI';
|
|
8
9
|
export * from './features/TreegeRenderer/web/TreegeRenderer';
|
|
@@ -13,5 +14,6 @@ export * from './utils/conditions';
|
|
|
13
14
|
export * from './utils/file';
|
|
14
15
|
export * from './utils/flow';
|
|
15
16
|
export * from './utils/form';
|
|
17
|
+
export * from './utils/sanitize';
|
|
16
18
|
export { ThemeProvider, useTheme } from '../shared/context/ThemeContext';
|
|
17
19
|
export { getTranslatedText } from '../shared/utils/translations';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export { TreegeConfigProvider, useTreegeConfig } from './context/TreegeConfigContext';
|
|
2
|
+
export * from './features/TreegeRenderer/native/components/DefaultFormWrapper';
|
|
3
|
+
export * from './features/TreegeRenderer/native/components/DefaultInputs';
|
|
4
|
+
export * from './features/TreegeRenderer/native/components/DefaultStep';
|
|
5
|
+
export * from './features/TreegeRenderer/native/components/DefaultSubmitButton';
|
|
6
|
+
export * from './features/TreegeRenderer/native/components/DefaultSubmitButtonWrapper';
|
|
7
|
+
export * from './features/TreegeRenderer/native/components/DefaultUI';
|
|
8
|
+
export type { TreegeRendererNativeProps } from './features/TreegeRenderer/native/TreegeRenderer';
|
|
9
|
+
export { default as TreegeRenderer } from './features/TreegeRenderer/native/TreegeRenderer';
|
|
10
|
+
export type { UseTreegeRendererReturn } from './features/TreegeRenderer/useTreegeRenderer';
|
|
11
|
+
export { useTreegeRenderer } from './features/TreegeRenderer/useTreegeRenderer';
|
|
12
|
+
export type { TreegeRendererConfig } from './types/renderer';
|
|
13
|
+
export * from './types/renderer';
|
|
14
|
+
export * from './utils/conditions';
|
|
15
|
+
export * from './utils/file';
|
|
16
|
+
export * from './utils/flow';
|
|
17
|
+
export * from './utils/form';
|
|
18
|
+
export * from './utils/sanitize.native';
|
|
19
|
+
export { getTranslatedText } from '../shared/utils/translations';
|