treege 3.0.0-beta.8 → 3.0.0-beta.81
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 +474 -79
- package/dist/DefaultSubmitButton-Dg9GPvh-.js +1853 -0
- package/dist/ThemeContext-BgTIhoK6.js +985 -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 +25 -0
- package/dist/editor/constants/nodeTypes.d.ts +4 -5
- package/dist/editor/context/OpenApiContext.d.ts +79 -0
- package/dist/editor/context/TreegeEditorRuntimeProvider.d.ts +78 -0
- 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/HttpConfigForm.d.ts +4 -1
- package/dist/editor/features/TreegeEditor/forms/JsonTemplateEditor.d.ts +13 -0
- package/dist/editor/features/TreegeEditor/forms/OptionsMappingFields.d.ts +34 -0
- package/dist/editor/features/TreegeEditor/forms/OptionsSourceForm.d.ts +7 -0
- package/dist/editor/features/TreegeEditor/forms/SensitiveHeaderWarning.d.ts +13 -0
- package/dist/editor/features/TreegeEditor/forms/SubmitConfigForm.d.ts +7 -0
- package/dist/editor/features/TreegeEditor/inputs/ApiUrlCombobox.d.ts +20 -0
- package/dist/editor/features/TreegeEditor/inputs/ComboboxPattern.d.ts +2 -1
- package/dist/editor/features/TreegeEditor/inputs/DefaultFileValueField.d.ts +14 -0
- 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/listeners/FlowChangeEmitter.d.ts +19 -0
- package/dist/editor/features/TreegeEditor/nodes/TreegeNode.d.ts +5 -0
- package/dist/editor/features/TreegeEditor/nodes/components/BottomHandleDropdown.d.ts +25 -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/components/NodeTypePickerMenuContent.d.ts +12 -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 +14 -0
- package/dist/editor/hooks/useFlowContent.d.ts +16 -0
- package/dist/editor/hooks/useHistoryStore.d.ts +26 -0
- package/dist/editor/hooks/useIsStackedEdge.d.ts +8 -0
- package/dist/editor/hooks/useKeyValueRows.d.ts +15 -0
- package/dist/editor/hooks/useNodesSelection.d.ts +5 -5
- package/dist/editor/hooks/useStackPosition.d.ts +14 -0
- package/dist/editor/hooks/useTranslate.d.ts +1 -1
- 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 +106 -10
- package/dist/editor/types/openapi.d.ts +106 -0
- package/dist/editor/utils/aiFlowGenerator.d.ts +5 -0
- package/dist/editor/utils/cleanEmptyData.d.ts +18 -0
- package/dist/editor/utils/cleanNodeConfig.d.ts +5 -0
- package/dist/editor/utils/dagreLayout.d.ts +8 -0
- package/dist/editor/utils/edge.d.ts +50 -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/jsonBindTarget.d.ts +15 -0
- package/dist/editor/utils/openApiPayload.d.ts +12 -0
- package/dist/editor/utils/openapi.d.ts +35 -0
- package/dist/editor/utils/sensitiveHeaders.d.ts +20 -0
- package/dist/editor/utils/stackPositionIndex.d.ts +9 -0
- package/dist/editor-h20-TVM8.js +6575 -0
- package/dist/editor.js +3 -7
- package/dist/main.js +6 -52
- package/dist/renderer/context/TreegeRenderRuntimeProvider.d.ts +135 -0
- package/dist/renderer/context/TreegeRendererProvider.d.ts +15 -0
- 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/DefaultInputLabel.d.ts +10 -0
- package/dist/renderer/features/TreegeRenderer/native/components/DefaultInputWrapper.d.ts +9 -0
- package/dist/renderer/features/TreegeRenderer/native/components/DefaultInputs.d.ts +20 -15
- package/dist/renderer/features/TreegeRenderer/native/components/DefaultLoadingSkeleton.d.ts +8 -0
- 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/DependencyHint.d.ts +15 -0
- package/dist/renderer/features/TreegeRenderer/native/components/OptionItemContent.d.ts +17 -0
- 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/DefaultSubmitInput.d.ts +11 -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 +97 -24
- package/dist/renderer/features/TreegeRenderer/web/TreegeRenderer.d.ts +1 -1
- package/dist/renderer/features/TreegeRenderer/web/components/DefaultFormWrapper.d.ts +3 -2
- package/dist/renderer/features/TreegeRenderer/web/components/DefaultInputLabel.d.ts +9 -0
- package/dist/renderer/features/TreegeRenderer/web/components/DefaultInputWrapper.d.ts +9 -0
- package/dist/renderer/features/TreegeRenderer/web/components/DefaultLoadingSkeleton.d.ts +7 -0
- package/dist/renderer/features/TreegeRenderer/web/components/DefaultStep.d.ts +3 -0
- package/dist/renderer/features/TreegeRenderer/web/components/DefaultSubmitButton.d.ts +5 -1
- package/dist/renderer/features/TreegeRenderer/web/components/DependencyHint.d.ts +22 -0
- package/dist/renderer/features/TreegeRenderer/web/components/OptionItemContent.d.ts +17 -0
- 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 +11 -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 +62 -0
- package/dist/renderer/hooks/useSubmitHandler.d.ts +36 -0
- package/dist/renderer/hooks/useTranslate.d.ts +7 -5
- package/dist/renderer/index.d.ts +5 -2
- package/dist/renderer/index.native.d.ts +20 -0
- package/dist/renderer/types/renderer.d.ts +316 -42
- package/dist/renderer/utils/file.d.ts +11 -10
- package/dist/renderer/utils/flow.d.ts +1 -18
- package/dist/renderer/utils/form.d.ts +54 -2
- package/dist/renderer/utils/http.d.ts +177 -0
- package/dist/renderer/utils/jsonTemplate.d.ts +30 -0
- package/dist/renderer/utils/node.d.ts +29 -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 +49 -0
- package/dist/renderer/utils/templateDependencies.d.ts +17 -0
- package/dist/renderer-DI6nF4St.js +256 -0
- package/dist/renderer-native.d.ts +2 -0
- package/dist/renderer-native.js +3704 -0
- package/dist/renderer.js +5 -45
- 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/item.d.ts +23 -0
- package/dist/shared/components/ui/popover.d.ts +10 -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/skeleton.d.ts +3 -0
- 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 +6 -0
- package/dist/shared/constants/node.d.ts +0 -1
- package/dist/shared/context/PortalContainerContext.d.ts +5 -0
- 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 +259 -19
- package/dist/shared/locales/de.json.d.ts +260 -20
- package/dist/shared/locales/en.json.d.ts +261 -21
- package/dist/shared/locales/es.json.d.ts +260 -20
- package/dist/shared/locales/fr.json.d.ts +260 -20
- package/dist/shared/locales/it.json.d.ts +260 -20
- package/dist/shared/locales/pt.json.d.ts +260 -20
- package/dist/shared/types/edge.d.ts +6 -0
- package/dist/shared/types/file.d.ts +14 -0
- package/dist/shared/types/node.d.ts +155 -19
- package/dist/shared/utils/httpRecord.d.ts +20 -0
- package/dist/shared/utils/inputTypeGuards.d.ts +7 -0
- package/dist/shared/utils/nodeTypeGuards.d.ts +1 -6
- package/dist/shared/utils/normalizeLabel.d.ts +21 -0
- package/dist/useRenderNode-B1sfwbia.js +527 -0
- package/package.json +54 -22
- package/dist/ThemeContext-BIvs8Kw-.js +0 -758
- package/dist/TreegeEditor-Lv5Tn9_F.js +0 -2152
- package/dist/TreegeRenderer-D3EvsEfJ.js +0 -1413
- package/dist/editor/context/TreegeEditorContext.d.ts +0 -12
- 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/context/TreegeConfigContext.d.ts +0 -39
- package/dist/renderer/context/TreegeRendererContext.d.ts +0 -25
- 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
package/dist/editor.js
CHANGED
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
export {
|
|
4
|
-
m as ThemeProvider,
|
|
5
|
-
o as TreegeEditor,
|
|
6
|
-
s as useTheme
|
|
7
|
-
};
|
|
1
|
+
import { t as e } from "./editor-h20-TVM8.js";
|
|
2
|
+
import { n as t, t as n } from "./ThemeContext-BgTIhoK6.js";
|
|
3
|
+
export { n as ThemeProvider, e as TreegeEditor, t as useTheme };
|
package/dist/main.js
CHANGED
|
@@ -1,52 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
T as DefaultCheckboxInput,
|
|
8
|
-
m as DefaultDateInput,
|
|
9
|
-
g as DefaultDateRangeInput,
|
|
10
|
-
F as DefaultFileInput,
|
|
11
|
-
c as DefaultGroup,
|
|
12
|
-
x as DefaultHiddenInput,
|
|
13
|
-
N as DefaultHttpInput,
|
|
14
|
-
S as DefaultNumberInput,
|
|
15
|
-
b as DefaultPasswordInput,
|
|
16
|
-
v as DefaultRadioInput,
|
|
17
|
-
R as DefaultSelectInput,
|
|
18
|
-
h as DefaultSwitchInput,
|
|
19
|
-
w as DefaultTextAreaInput,
|
|
20
|
-
C as DefaultTextInput,
|
|
21
|
-
z as DefaultTimeInput,
|
|
22
|
-
A as DefaultTimeRangeInput,
|
|
23
|
-
H as Divider,
|
|
24
|
-
u as ThemeProvider,
|
|
25
|
-
k as Title,
|
|
26
|
-
E as TreegeConfigProvider,
|
|
27
|
-
t as TreegeEditor,
|
|
28
|
-
G as TreegeRenderer,
|
|
29
|
-
P as checkFormFieldHasValue,
|
|
30
|
-
y as convertFormValuesToNamedFormat,
|
|
31
|
-
U as defaultInputRenderers,
|
|
32
|
-
V as defaultUI,
|
|
33
|
-
j as evaluateCondition,
|
|
34
|
-
q as evaluateConditions,
|
|
35
|
-
B as fileToSerializable,
|
|
36
|
-
J as filesToSerializable,
|
|
37
|
-
K as findStartNode,
|
|
38
|
-
L as getFlowRenderState,
|
|
39
|
-
l as getStaticTranslations,
|
|
40
|
-
r as getTranslatedText,
|
|
41
|
-
M as isFieldEmpty,
|
|
42
|
-
o as isFlowNode,
|
|
43
|
-
i as isGroupNode,
|
|
44
|
-
n as isInputNode,
|
|
45
|
-
O as isStartNode,
|
|
46
|
-
d as isUINode,
|
|
47
|
-
Q as mergeFlows,
|
|
48
|
-
W as serializableToFile,
|
|
49
|
-
f as useTheme,
|
|
50
|
-
X as useTreegeConfig,
|
|
51
|
-
Y as useTreegeRenderer
|
|
52
|
-
};
|
|
1
|
+
import { t as e } from "./editor-h20-TVM8.js";
|
|
2
|
+
import { F as t, G as n, H as r, P as i, U as a, V as o, W as s, _ as c, a as l, c as u, g as d, h as f, i as p, l as m, m as h, n as g, o as _, r as v, s as y, t as b, v as x } from "./ThemeContext-BgTIhoK6.js";
|
|
3
|
+
import { C as S, L as C, S as w, _ as T, a as E, b as D, c as O, d as k, g as A, h as j, i as M, m as N, n as P, o as F, r as I, u as L, v as R, x as z, y as B } from "./DefaultSubmitButton-Dg9GPvh-.js";
|
|
4
|
+
import { a as V, c as H, i as U, l as W, n as G, o as K, r as q, s as J } from "./useRenderNode-B1sfwbia.js";
|
|
5
|
+
import { i as Y, n as X, r as Z, t as Q } from "./renderer-DI6nF4St.js";
|
|
6
|
+
export { S as DefaultAddressInput, w as DefaultAutocompleteInput, z as DefaultCheckboxInput, D as DefaultDateInput, B as DefaultDateRangeInput, R as DefaultFileInput, T as DefaultHiddenInput, A as DefaultHttpInput, C as DefaultInputLabel, j as DefaultNumberInput, N as DefaultPasswordInput, k as DefaultRadioInput, L as DefaultSelectInput, O as DefaultSwitchInput, F as DefaultTextAreaInput, E as DefaultTextInput, M as DefaultTimeInput, I as DefaultTimeRangeInput, X as Divider, b as ThemeProvider, Z as Title, e as TreegeEditor, Q as TreegeRenderer, H as TreegeRendererProvider, v as applyReferenceTransformation, p as buildInitialFormValues, l as calculateReferenceFieldUpdates, _ as checkFormFieldHasValue, y as convertFormValuesToNamedFormat, P as defaultInputRenderers, Y as defaultUI, K as evaluateCondition, J as evaluateConditions, h as fileToSerializable, f as filesToSerializable, q as findStartNode, d as formatFileSize, U as getFlowRenderState, o as getStaticTranslations, r as getTranslatedText, u as isFieldEmpty, a as isGroupNode, s as isInputNode, V as isStartNode, n as isUINode, c as normalizeSerializableFiles, m as resolveNodeDefaultValue, i as sanitize, t as sanitizeHttpResponse, x as serializableToFile, g as useTheme, G as useTreegeRenderer, W as useTreegeRendererConfig };
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { Node } from '@xyflow/react';
|
|
2
|
+
import { PropsWithChildren } from 'react';
|
|
3
|
+
import { FormValues } from '../types/renderer';
|
|
4
|
+
import { Flow, HttpHeaders, InputNodeData } from '../../shared/types/node';
|
|
5
|
+
export interface TreegeRenderRuntimeContextValue {
|
|
6
|
+
/**
|
|
7
|
+
* Base URL prepended to every relative HTTP url issued by inputs. Absolute
|
|
8
|
+
* urls are left untouched. Resolved from the renderer config and applied
|
|
9
|
+
* after template-variable substitution.
|
|
10
|
+
*/
|
|
11
|
+
baseUrl?: string;
|
|
12
|
+
/**
|
|
13
|
+
* The flow currently being rendered. `null` when the renderer has no flow
|
|
14
|
+
* to display yet.
|
|
15
|
+
*/
|
|
16
|
+
flow?: Flow | null;
|
|
17
|
+
/**
|
|
18
|
+
* Validation errors keyed by field id (`node.id`). Empty when the form
|
|
19
|
+
* is valid. Renderers read their own entry to display field-level errors.
|
|
20
|
+
*/
|
|
21
|
+
formErrors: Record<string, string>;
|
|
22
|
+
/**
|
|
23
|
+
* Current form values keyed by field id (`node.id`). Read by inputs to
|
|
24
|
+
* resolve template variables (`{{fieldId}}` in URLs/headers/body) and to
|
|
25
|
+
* drive conditional visibility from `useRenderNode`.
|
|
26
|
+
*/
|
|
27
|
+
formValues: FormValues;
|
|
28
|
+
/**
|
|
29
|
+
* Google Maps Places API key for the address autocomplete input. When
|
|
30
|
+
* unset, the address input falls back to the free Nominatim provider.
|
|
31
|
+
*/
|
|
32
|
+
googleApiKey?: string;
|
|
33
|
+
/**
|
|
34
|
+
* Global HTTP headers (already merged from provider + props) to apply
|
|
35
|
+
* to every request issued by inputs. Field-level headers override these
|
|
36
|
+
* on key collision (case-insensitive).
|
|
37
|
+
*/
|
|
38
|
+
headers?: HttpHeaders;
|
|
39
|
+
/**
|
|
40
|
+
* The flow's input nodes — exposed so renderers can resolve references
|
|
41
|
+
* between fields (e.g. `convertFormValuesToNamedFormat`, reference-field
|
|
42
|
+
* defaults).
|
|
43
|
+
*/
|
|
44
|
+
inputNodes: Node<InputNodeData>[];
|
|
45
|
+
/**
|
|
46
|
+
* Active UI language (e.g. `"en"`, `"fr"`). Used both for static UI
|
|
47
|
+
* strings (via `useTranslate`) and for resolving `Translatable` values
|
|
48
|
+
* inside node data.
|
|
49
|
+
*/
|
|
50
|
+
language: string;
|
|
51
|
+
/**
|
|
52
|
+
* Soft cap on the number of options rendered for option-based inputs
|
|
53
|
+
* (radio, checkbox). When set, options past this count are replaced by
|
|
54
|
+
* an ellipsis row. Used by the editor's `NodeInputPreview` to keep node
|
|
55
|
+
* cards compact when an OpenAPI source returns hundreds of options.
|
|
56
|
+
* Unset at runtime — every option is rendered.
|
|
57
|
+
*/
|
|
58
|
+
optionsDisplayLimit?: number;
|
|
59
|
+
/**
|
|
60
|
+
* Update the value of a single field. Inputs call this from their
|
|
61
|
+
* `onChange` to push edits up to the form's state.
|
|
62
|
+
*/
|
|
63
|
+
setFieldValue: (fieldName: string, value: unknown) => void;
|
|
64
|
+
}
|
|
65
|
+
export interface TreegeRenderRuntimeProviderProps extends PropsWithChildren {
|
|
66
|
+
/**
|
|
67
|
+
* Any subset of `TreegeRenderRuntimeContextValue`. Missing fields default to
|
|
68
|
+
* sensible no-op values, so callers only need to supply what they actually
|
|
69
|
+
* want to expose to descendants.
|
|
70
|
+
*/
|
|
71
|
+
value: Partial<TreegeRenderRuntimeContextValue>;
|
|
72
|
+
}
|
|
73
|
+
export declare const TreegeRenderRuntimeContext: import('react').Context<TreegeRenderRuntimeContextValue | null>;
|
|
74
|
+
export declare const TreegeRenderRuntimeProvider: ({ children, value }: TreegeRenderRuntimeProviderProps) => import("react/jsx-runtime").JSX.Element;
|
|
75
|
+
export declare const useTreegeRenderRuntime: () => {
|
|
76
|
+
edges: import('@xyflow/react').Edge[];
|
|
77
|
+
/**
|
|
78
|
+
* Base URL prepended to every relative HTTP url issued by inputs. Absolute
|
|
79
|
+
* urls are left untouched. Resolved from the renderer config and applied
|
|
80
|
+
* after template-variable substitution.
|
|
81
|
+
*/
|
|
82
|
+
baseUrl?: string;
|
|
83
|
+
/**
|
|
84
|
+
* The flow currently being rendered. `null` when the renderer has no flow
|
|
85
|
+
* to display yet.
|
|
86
|
+
*/
|
|
87
|
+
flow?: Flow | null;
|
|
88
|
+
/**
|
|
89
|
+
* Validation errors keyed by field id (`node.id`). Empty when the form
|
|
90
|
+
* is valid. Renderers read their own entry to display field-level errors.
|
|
91
|
+
*/
|
|
92
|
+
formErrors: Record<string, string>;
|
|
93
|
+
/**
|
|
94
|
+
* Current form values keyed by field id (`node.id`). Read by inputs to
|
|
95
|
+
* resolve template variables (`{{fieldId}}` in URLs/headers/body) and to
|
|
96
|
+
* drive conditional visibility from `useRenderNode`.
|
|
97
|
+
*/
|
|
98
|
+
formValues: FormValues;
|
|
99
|
+
/**
|
|
100
|
+
* Google Maps Places API key for the address autocomplete input. When
|
|
101
|
+
* unset, the address input falls back to the free Nominatim provider.
|
|
102
|
+
*/
|
|
103
|
+
googleApiKey?: string;
|
|
104
|
+
/**
|
|
105
|
+
* Global HTTP headers (already merged from provider + props) to apply
|
|
106
|
+
* to every request issued by inputs. Field-level headers override these
|
|
107
|
+
* on key collision (case-insensitive).
|
|
108
|
+
*/
|
|
109
|
+
headers?: HttpHeaders;
|
|
110
|
+
/**
|
|
111
|
+
* The flow's input nodes — exposed so renderers can resolve references
|
|
112
|
+
* between fields (e.g. `convertFormValuesToNamedFormat`, reference-field
|
|
113
|
+
* defaults).
|
|
114
|
+
*/
|
|
115
|
+
inputNodes: Node<InputNodeData>[];
|
|
116
|
+
/**
|
|
117
|
+
* Active UI language (e.g. `"en"`, `"fr"`). Used both for static UI
|
|
118
|
+
* strings (via `useTranslate`) and for resolving `Translatable` values
|
|
119
|
+
* inside node data.
|
|
120
|
+
*/
|
|
121
|
+
language: string;
|
|
122
|
+
/**
|
|
123
|
+
* Soft cap on the number of options rendered for option-based inputs
|
|
124
|
+
* (radio, checkbox). When set, options past this count are replaced by
|
|
125
|
+
* an ellipsis row. Used by the editor's `NodeInputPreview` to keep node
|
|
126
|
+
* cards compact when an OpenAPI source returns hundreds of options.
|
|
127
|
+
* Unset at runtime — every option is rendered.
|
|
128
|
+
*/
|
|
129
|
+
optionsDisplayLimit?: number;
|
|
130
|
+
/**
|
|
131
|
+
* Update the value of a single field. Inputs call this from their
|
|
132
|
+
* `onChange` to push edits up to the form's state.
|
|
133
|
+
*/
|
|
134
|
+
setFieldValue: (fieldName: string, value: unknown) => void;
|
|
135
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { TreegeRendererConfig } from '../types/renderer';
|
|
3
|
+
/**
|
|
4
|
+
* Hook to access the global Treege configuration
|
|
5
|
+
* Returns undefined if used outside of TreegeRendererProvider
|
|
6
|
+
*/
|
|
7
|
+
export declare const useTreegeRendererConfig: () => TreegeRendererConfig | undefined;
|
|
8
|
+
export type TreegeRendererProviderProps = TreegeRendererConfig & {
|
|
9
|
+
children: ReactNode;
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Provider for global Treege configuration
|
|
13
|
+
* Wrap your app with this provider to set default options for all TreegeRenderer instances
|
|
14
|
+
*/
|
|
15
|
+
export declare const TreegeRendererProvider: ({ children, ...config }: TreegeRendererProviderProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,13 +1,21 @@
|
|
|
1
|
+
import { ViewStyle } from 'react-native';
|
|
2
|
+
import { TreegeRendererProps } from '../../../types/renderer';
|
|
1
3
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* The implementation should:
|
|
8
|
-
* - Import and use useTreegeRenderer hook (platform-agnostic)
|
|
9
|
-
* - Import and use utils from @/renderer/utils (platform-agnostic)
|
|
10
|
-
* - Use React Native UI components instead of web components
|
|
11
|
-
* - Share the same props interface (TreegeRendererProps)
|
|
4
|
+
* Props for the TreegeRenderer component (React Native)
|
|
5
|
+
* Same as TreegeRendererProps but:
|
|
6
|
+
* - Omits className (not used in React Native)
|
|
7
|
+
* - Adds style and contentContainerStyle (React Native specific)
|
|
12
8
|
*/
|
|
13
|
-
export {
|
|
9
|
+
export type TreegeRendererNativeProps = Omit<TreegeRendererProps, "className" | "formId"> & {
|
|
10
|
+
/**
|
|
11
|
+
* Style for the ScrollView container
|
|
12
|
+
*/
|
|
13
|
+
style?: ViewStyle;
|
|
14
|
+
/**
|
|
15
|
+
* Style for the ScrollView content container
|
|
16
|
+
* Use this to center content vertically with flexGrow: 1 and justifyContent: 'center'
|
|
17
|
+
*/
|
|
18
|
+
contentContainerStyle?: ViewStyle;
|
|
19
|
+
};
|
|
20
|
+
declare const TreegeRenderer: (props: TreegeRendererNativeProps) => import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
export default TreegeRenderer;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
export
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface DefaultFormWrapperProps {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
onSubmit?: () => void;
|
|
5
|
+
}
|
|
6
|
+
declare const DefaultFormWrapper: ({ children }: DefaultFormWrapperProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export default DefaultFormWrapper;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { InputLabelRenderProps } from '../../../../types/renderer';
|
|
2
|
+
/**
|
|
3
|
+
* Default input label (native). Renders nothing when no end-user label is
|
|
4
|
+
* configured, so the technical node key (`node.data.name`) never leaks into the
|
|
5
|
+
* rendered form. Native inputs keep an accessible name through the
|
|
6
|
+
* `accessibilityLabel` fallback on the control itself. Override globally via
|
|
7
|
+
* `components.inputLabel`.
|
|
8
|
+
*/
|
|
9
|
+
declare const DefaultInputLabel: ({ label, required, style }: InputLabelRenderProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
10
|
+
export default DefaultInputLabel;
|
|
@@ -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
|
+
declare const DefaultInputWrapper: ({ node, children }: DefaultInputWrapperProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export default DefaultInputWrapper;
|
|
@@ -1,15 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
1
|
+
import { default as DefaultAddressInput } from './inputs/DefaultAddressInput';
|
|
2
|
+
import { default as DefaultAutocompleteInput } from './inputs/DefaultAutocompleteInput';
|
|
3
|
+
import { default as DefaultCheckboxInput } from './inputs/DefaultCheckboxInput';
|
|
4
|
+
import { default as DefaultDateInput } from './inputs/DefaultDateInput';
|
|
5
|
+
import { default as DefaultDateRangeInput } from './inputs/DefaultDateRangeInput';
|
|
6
|
+
import { default as DefaultFileInput } from './inputs/DefaultFileInput';
|
|
7
|
+
import { default as DefaultHiddenInput } from './inputs/DefaultHiddenInput';
|
|
8
|
+
import { default as DefaultHttpInput } from './inputs/DefaultHttpInput';
|
|
9
|
+
import { default as DefaultNumberInput } from './inputs/DefaultNumberInput';
|
|
10
|
+
import { default as DefaultPasswordInput } from './inputs/DefaultPasswordInput';
|
|
11
|
+
import { default as DefaultRadioInput } from './inputs/DefaultRadioInput';
|
|
12
|
+
import { default as DefaultSelectInput } from './inputs/DefaultSelectInput';
|
|
13
|
+
import { default as DefaultSwitchInput } from './inputs/DefaultSwitchInput';
|
|
14
|
+
import { default as DefaultTextareaInput } from './inputs/DefaultTextareaInput';
|
|
15
|
+
import { default as DefaultTextInput } from './inputs/DefaultTextInput';
|
|
16
|
+
import { default as DefaultTimeInput } from './inputs/DefaultTimeInput';
|
|
17
|
+
import { default as DefaultTimeRangeInput } from './inputs/DefaultTimeRangeInput';
|
|
18
|
+
import { InputRenderers } from '../../../../types/renderer';
|
|
19
|
+
export { DefaultAddressInput, DefaultAutocompleteInput, DefaultCheckboxInput, DefaultDateInput, DefaultDateRangeInput, DefaultFileInput, DefaultHiddenInput, DefaultHttpInput, DefaultNumberInput, DefaultPasswordInput, DefaultRadioInput, DefaultSelectInput, DefaultSwitchInput, DefaultTextareaInput, DefaultTextInput, DefaultTimeInput, DefaultTimeRangeInput, };
|
|
20
|
+
export declare const defaultInputRenderers: InputRenderers;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Default loading skeleton displayed by `TreegeRenderer` (native) while
|
|
3
|
+
* `isLoading` is true. Mimics the visual structure of a step (title, a few
|
|
4
|
+
* fields and the continue/submit button) so the layout doesn't shift once the
|
|
5
|
+
* real form renders.
|
|
6
|
+
*/
|
|
7
|
+
declare const DefaultLoadingSkeleton: () => import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export default DefaultLoadingSkeleton;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { StepRenderProps } from '../../../../types/renderer';
|
|
2
|
+
declare const DefaultStep: ({ step, label, children, canGoBack, isLastStep, canContinue, isSubmitting, onBack, onContinue }: StepRenderProps) => import("react/jsx-runtime").JSX.Element;
|
|
3
|
+
export default DefaultStep;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface DefaultSubmitButtonProps {
|
|
3
|
+
children?: ReactNode;
|
|
4
|
+
disabled?: boolean;
|
|
5
|
+
isSubmitting?: boolean;
|
|
6
|
+
onPress?: () => void;
|
|
7
|
+
}
|
|
8
|
+
declare const DefaultSubmitButton: ({ children, disabled, isSubmitting, onPress }: DefaultSubmitButtonProps) => import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export default DefaultSubmitButton;
|
package/dist/renderer/features/TreegeRenderer/native/components/DefaultSubmitButtonWrapper.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export interface SubmitButtonWrapperProps {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
missingFields?: string[];
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Default submit button wrapper for React Native
|
|
8
|
+
* Simple wrapper that renders children (no tooltip like web version)
|
|
9
|
+
*/
|
|
10
|
+
declare const DefaultSubmitButtonWrapper: ({ children }: SubmitButtonWrapperProps) => ReactNode;
|
|
11
|
+
export default DefaultSubmitButtonWrapper;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
import { UiRenderProps } from '../../../../types/renderer';
|
|
2
|
+
declare const DefaultTitleUI: ({ node }: UiRenderProps) => import("react/jsx-runtime").JSX.Element;
|
|
3
|
+
declare const DefaultDividerUI: () => import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
export { DefaultDividerUI, DefaultTitleUI };
|
|
5
|
+
export declare const defaultUI: {
|
|
6
|
+
divider: () => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
title: ({ node }: UiRenderProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { MissingDependency } from '../../../../types/renderer';
|
|
3
|
+
interface DependencyHintProps {
|
|
4
|
+
/** Unfilled fields the input depends on (from `extra.missingDependencies`). */
|
|
5
|
+
missing: MissingDependency[];
|
|
6
|
+
children: ReactNode;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Renders an input control followed by an inline caption listing the fields the
|
|
10
|
+
* user must fill before the input's dynamic options can load. Mobile has no
|
|
11
|
+
* hover, so the hint is always-visible text rather than a tooltip. Renders only
|
|
12
|
+
* the children when there are no missing dependencies.
|
|
13
|
+
*/
|
|
14
|
+
declare const DependencyHint: ({ missing, children }: DependencyHintProps) => import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export default DependencyHint;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
interface OptionItemContentProps {
|
|
2
|
+
/** Already-translated option label. */
|
|
3
|
+
label: string;
|
|
4
|
+
/** Already-translated option description (optional). */
|
|
5
|
+
description?: string;
|
|
6
|
+
/** Option image — base64 data URL or remote URL (optional). */
|
|
7
|
+
image?: string;
|
|
8
|
+
/** Muted styling when the option is disabled. */
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Shared content for an option row in a dropdown/select modal: an optional
|
|
13
|
+
* leading image, the label, and an optional muted description underneath. The
|
|
14
|
+
* selection indicator is left to the caller so it can sit outside this block.
|
|
15
|
+
*/
|
|
16
|
+
declare const OptionItemContent: ({ label, description, image, disabled }: OptionItemContentProps) => import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export default OptionItemContent;
|
package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultSubmitInput.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { InputRenderProps } from '../../../../../types/renderer';
|
|
2
|
+
/**
|
|
3
|
+
* The `submit` input node is declarative only: it marks where the flow submits
|
|
4
|
+
* and carries the optional custom label / `submitConfig`. The actual submit
|
|
5
|
+
* button is rendered once by the step (see `DefaultStep`), so the node itself
|
|
6
|
+
* renders nothing — guaranteeing a single, consistently-placed button whether
|
|
7
|
+
* submission comes from an explicit submit node, the default "Submit", or a
|
|
8
|
+
* "Continue" step.
|
|
9
|
+
*/
|
|
10
|
+
declare const DefaultSubmitInput: (_props: InputRenderProps<"submit">) => null;
|
|
11
|
+
export default DefaultSubmitInput;
|