treege 3.0.0-beta.8 → 3.0.0-beta40

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.
Files changed (137) hide show
  1. package/LICENSE +18 -12
  2. package/README.md +213 -30
  3. package/dist/DefaultInputs-8yJMEyMh.js +1557 -0
  4. package/dist/ThemeContext-Ejgu9Mwr.js +1603 -0
  5. package/dist/editor/components/input/ComboboxWithCreate.d.ts +2 -1
  6. package/dist/editor/constants/defaultNode.d.ts +1 -1
  7. package/dist/editor/constants/edgeTypes.d.ts +3 -2
  8. package/dist/editor/constants/inputTypeIcons.d.ts +3 -0
  9. package/dist/editor/constants/nodeSpacing.d.ts +33 -0
  10. package/dist/editor/constants/nodeTypes.d.ts +5 -5
  11. package/dist/editor/context/TreegeEditorContext.d.ts +53 -1
  12. package/dist/editor/features/TreegeEditor/TreegeEditor.d.ts +1 -1
  13. package/dist/editor/features/TreegeEditor/dialogs/ChangeNodeTypeDialog.d.ts +2 -0
  14. package/dist/editor/features/TreegeEditor/dialogs/DeleteNodeDialog.d.ts +2 -0
  15. package/dist/editor/features/TreegeEditor/edges/ConditionalEdge.d.ts +2 -2
  16. package/dist/editor/features/TreegeEditor/edges/DefaultEdge.d.ts +3 -0
  17. package/dist/editor/features/TreegeEditor/forms/SubmitConfigForm.d.ts +7 -0
  18. package/dist/editor/features/TreegeEditor/inputs/ComboboxPattern.d.ts +2 -1
  19. package/dist/editor/features/TreegeEditor/inputs/OptionImageField.d.ts +6 -0
  20. package/dist/editor/features/TreegeEditor/nodes/GroupNode.d.ts +2 -2
  21. package/dist/editor/features/TreegeEditor/nodes/TreegeNode.d.ts +6 -0
  22. package/dist/editor/features/TreegeEditor/nodes/components/BottomHandleDropdown.d.ts +6 -0
  23. package/dist/editor/features/TreegeEditor/nodes/components/NodeInputPreview.d.ts +7 -0
  24. package/dist/editor/features/TreegeEditor/nodes/components/NodeLabelInput.d.ts +9 -0
  25. package/dist/editor/features/TreegeEditor/nodes/components/NodeMoreMenu.d.ts +6 -0
  26. package/dist/editor/features/TreegeEditor/nodes/components/NodeTypeBadge.d.ts +7 -0
  27. package/dist/editor/features/TreegeEditor/nodes/components/OptionsEditor.d.ts +7 -0
  28. package/dist/editor/features/TreegeEditor/nodes/components/RequiredBadge.d.ts +6 -0
  29. package/dist/editor/features/TreegeEditor/nodes/layout/NodeWrapper.d.ts +2 -1
  30. package/dist/editor/features/TreegeEditor/panel/AIGeneratorDialog.d.ts +16 -0
  31. package/dist/editor/hooks/useAutoLayout.d.ts +15 -0
  32. package/dist/editor/hooks/useFlowActions.d.ts +5 -2
  33. package/dist/editor/hooks/useFlowConnections.d.ts +4 -0
  34. package/dist/editor/hooks/useNodesSelection.d.ts +5 -5
  35. package/dist/editor/types/ai.d.ts +65 -0
  36. package/dist/editor/types/editor.d.ts +9 -8
  37. package/dist/editor/utils/aiFlowGenerator.d.ts +5 -0
  38. package/dist/editor/utils/dagreLayout.d.ts +17 -0
  39. package/dist/editor/utils/edge.d.ts +14 -0
  40. package/dist/editor/utils/image.d.ts +7 -0
  41. package/dist/editor/utils/inputTypeIcon.d.ts +6 -0
  42. package/dist/editor-DWJ95r4g.js +4001 -0
  43. package/dist/editor.js +3 -7
  44. package/dist/main.js +4 -52
  45. package/dist/renderer/context/TreegeRendererContext.d.ts +4 -1
  46. package/dist/renderer/features/TreegeRenderer/native/TreegeRenderer.d.ts +19 -11
  47. package/dist/renderer/features/TreegeRenderer/native/components/DefaultFormWrapper.d.ts +7 -7
  48. package/dist/renderer/features/TreegeRenderer/native/components/DefaultGroup.d.ts +7 -7
  49. package/dist/renderer/features/TreegeRenderer/native/components/DefaultInputs.d.ts +21 -15
  50. package/dist/renderer/features/TreegeRenderer/native/components/DefaultSubmitButton.d.ts +9 -7
  51. package/dist/renderer/features/TreegeRenderer/native/components/DefaultSubmitButtonWrapper.d.ts +11 -0
  52. package/dist/renderer/features/TreegeRenderer/native/components/DefaultUI.d.ts +8 -7
  53. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultAddressInput.d.ts +3 -0
  54. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultAutocompleteInput.d.ts +3 -0
  55. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultCheckboxInput.d.ts +3 -0
  56. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultDateInput.d.ts +3 -0
  57. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultDateRangeInput.d.ts +3 -0
  58. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultFileInput.d.ts +3 -0
  59. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultHiddenInput.d.ts +3 -0
  60. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultHttpInput.d.ts +3 -0
  61. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultNumberInput.d.ts +3 -0
  62. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultPasswordInput.d.ts +3 -0
  63. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultRadioInput.d.ts +3 -0
  64. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultSelectInput.d.ts +3 -0
  65. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultSwitchInput.d.ts +3 -0
  66. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultTextInput.d.ts +3 -0
  67. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultTextareaInput.d.ts +3 -0
  68. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultTimeInput.d.ts +3 -0
  69. package/dist/renderer/features/TreegeRenderer/native/components/inputs/DefaultTimeRangeInput.d.ts +3 -0
  70. package/dist/renderer/features/TreegeRenderer/useTreegeRenderer.d.ts +84 -24
  71. package/dist/renderer/features/TreegeRenderer/web/TreegeRenderer.d.ts +1 -1
  72. package/dist/renderer/features/TreegeRenderer/web/components/DefaultSubmitButton.d.ts +1 -1
  73. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultAddressInput.d.ts +1 -1
  74. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultAutocompleteInput.d.ts +1 -1
  75. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultCheckboxInput.d.ts +1 -1
  76. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultDateInput.d.ts +1 -1
  77. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultDateRangeInput.d.ts +1 -1
  78. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultFileInput.d.ts +1 -1
  79. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultHiddenInput.d.ts +1 -1
  80. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultHttpInput.d.ts +1 -1
  81. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultNumberInput.d.ts +1 -1
  82. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultPasswordInput.d.ts +1 -1
  83. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultRadioInput.d.ts +1 -1
  84. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultSelectInput.d.ts +1 -1
  85. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultSubmitInput.d.ts +3 -0
  86. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultSwitchInput.d.ts +1 -1
  87. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultTextAreaInput.d.ts +1 -1
  88. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultTextInput.d.ts +1 -1
  89. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultTimeInput.d.ts +1 -1
  90. package/dist/renderer/features/TreegeRenderer/web/components/inputs/DefaultTimeRangeInput.d.ts +1 -1
  91. package/dist/renderer/hooks/useRenderNode.d.ts +55 -0
  92. package/dist/renderer/hooks/useSubmitHandler.d.ts +34 -0
  93. package/dist/renderer/hooks/useTranslate.d.ts +6 -4
  94. package/dist/renderer/index.d.ts +2 -0
  95. package/dist/renderer/index.native.d.ts +19 -0
  96. package/dist/renderer/types/renderer.d.ts +60 -6
  97. package/dist/renderer/utils/form.d.ts +22 -2
  98. package/dist/renderer/utils/http.d.ts +101 -0
  99. package/dist/renderer/utils/node.d.ts +18 -1
  100. package/dist/renderer/utils/sanitize.d.ts +85 -0
  101. package/dist/renderer/utils/sanitize.native.d.ts +69 -0
  102. package/dist/renderer/utils/submit.d.ts +47 -0
  103. package/dist/renderer-native.d.ts +2 -0
  104. package/dist/renderer-native.js +3496 -0
  105. package/dist/renderer.js +3 -45
  106. package/dist/shared/components/ui/badge.d.ts +2 -2
  107. package/dist/shared/components/ui/button.d.ts +2 -2
  108. package/dist/shared/components/ui/collapsible.d.ts +1 -1
  109. package/dist/shared/components/ui/command.d.ts +1 -1
  110. package/dist/shared/components/ui/dropdown-menu.d.ts +1 -1
  111. package/dist/shared/components/ui/form.d.ts +1 -1
  112. package/dist/shared/components/ui/popover.d.ts +4 -2
  113. package/dist/shared/components/ui/select.d.ts +3 -1
  114. package/dist/shared/components/ui/sheet.d.ts +1 -1
  115. package/dist/shared/components/ui/tooltip.d.ts +1 -1
  116. package/dist/shared/constants/colors.d.ts +45 -0
  117. package/dist/shared/constants/inputType.d.ts +1 -0
  118. package/dist/shared/context/ThemeContext.d.ts +2 -0
  119. package/dist/shared/context/ThemeContext.native.d.ts +22 -0
  120. package/dist/shared/hooks/useThemeColors.d.ts +37 -0
  121. package/dist/shared/locales/ar.json.d.ts +117 -10
  122. package/dist/shared/locales/de.json.d.ts +118 -11
  123. package/dist/shared/locales/en.json.d.ts +119 -12
  124. package/dist/shared/locales/es.json.d.ts +118 -11
  125. package/dist/shared/locales/fr.json.d.ts +118 -11
  126. package/dist/shared/locales/it.json.d.ts +118 -11
  127. package/dist/shared/locales/pt.json.d.ts +118 -11
  128. package/dist/shared/types/edge.d.ts +6 -0
  129. package/dist/shared/types/node.d.ts +64 -0
  130. package/package.json +38 -12
  131. package/dist/ThemeContext-BIvs8Kw-.js +0 -758
  132. package/dist/TreegeEditor-Lv5Tn9_F.js +0 -2152
  133. package/dist/TreegeRenderer-D3EvsEfJ.js +0 -1413
  134. package/dist/editor/features/TreegeEditor/inputs/SelectInputType.d.ts +0 -7
  135. package/dist/editor/features/TreegeEditor/nodes/FlowNode.d.ts +0 -6
  136. package/dist/editor/features/TreegeEditor/nodes/InputNode.d.ts +0 -6
  137. package/dist/editor/features/TreegeEditor/nodes/UINode.d.ts +0 -6
package/dist/renderer.js CHANGED
@@ -1,45 +1,3 @@
1
- import { c as t, d as s, e as u, f as l, g as r, h as n, D as i, i as o, j as f, k as d, l as p, m as D, n as I, o as T, p as m, q as g, r as F, s as c, v, w as x, T as R, b as S, J as b, K as h, t as C, x as w, y as z, z as A, A as H, C as N, F as k, G as P, I as y, E, H as G, B as V, u as j, a as q } from "./TreegeRenderer-D3EvsEfJ.js";
2
- import { T as J, g as K, u as U } from "./ThemeContext-BIvs8Kw-.js";
3
- export {
4
- t as DefaultAddressInput,
5
- s as DefaultAutocompleteInput,
6
- u as DefaultCheckboxInput,
7
- l as DefaultDateInput,
8
- r as DefaultDateRangeInput,
9
- n as DefaultFileInput,
10
- i as DefaultGroup,
11
- o as DefaultHiddenInput,
12
- f as DefaultHttpInput,
13
- d as DefaultNumberInput,
14
- p as DefaultPasswordInput,
15
- D as DefaultRadioInput,
16
- I as DefaultSelectInput,
17
- T as DefaultSwitchInput,
18
- m as DefaultTextAreaInput,
19
- g as DefaultTextInput,
20
- F as DefaultTimeInput,
21
- c as DefaultTimeRangeInput,
22
- v as Divider,
23
- J as ThemeProvider,
24
- x as Title,
25
- R as TreegeConfigProvider,
26
- S as TreegeRenderer,
27
- b as checkFormFieldHasValue,
28
- h as convertFormValuesToNamedFormat,
29
- C as defaultInputRenderers,
30
- w as defaultUI,
31
- z as evaluateCondition,
32
- A as evaluateConditions,
33
- H as fileToSerializable,
34
- N as filesToSerializable,
35
- k as findStartNode,
36
- P as getFlowRenderState,
37
- K as getTranslatedText,
38
- y as isFieldEmpty,
39
- E as isStartNode,
40
- G as mergeFlows,
41
- V as serializableToFile,
42
- U as useTheme,
43
- j as useTreegeConfig,
44
- q as useTreegeRenderer
45
- };
1
+ import { C as e, D as t, N as n, O as r, S as i, _ as a, a as o, b as s, c, d as l, f as u, g as d, h as f, i as p, l as m, n as h, o as g, s as _, t as v, v as y, x as b, y as x } from "./ThemeContext-Ejgu9Mwr.js";
2
+ import { C as S, D as C, E as w, O as T, S as E, T as D, a as O, b as k, d as A, f as j, g as M, h as N, i as P, l as F, m as I, n as L, r as R, s as z, t as B, u as V, w as H, x as U, y as W } from "./DefaultInputs-8yJMEyMh.js";
3
+ export { T as DefaultAddressInput, C as DefaultAutocompleteInput, w as DefaultCheckboxInput, D as DefaultDateInput, H as DefaultDateRangeInput, S as DefaultFileInput, I as DefaultGroup, E as DefaultHiddenInput, U as DefaultHttpInput, k as DefaultNumberInput, W as DefaultPasswordInput, M as DefaultRadioInput, N as DefaultSelectInput, z as DefaultSwitchInput, O as DefaultTextAreaInput, P as DefaultTextInput, R as DefaultTimeInput, L as DefaultTimeRangeInput, V as Divider, v as ThemeProvider, A as Title, o as TreegeConfigProvider, F as TreegeRenderer, x as applyReferenceTransformation, s as calculateReferenceFieldUpdates, b as checkFormFieldHasValue, i as convertFormValuesToNamedFormat, B as defaultInputRenderers, j as defaultUI, t as evaluateCondition, r as evaluateConditions, _ as fileToSerializable, c as filesToSerializable, f as findStartNode, d as getFlowRenderState, n as getTranslatedText, e as isFieldEmpty, a as isStartNode, y as mergeFlows, l as sanitize, u as sanitizeHttpResponse, m as serializableToFile, h as useTheme, g as useTreegeConfig, p as useTreegeRenderer };
@@ -1,8 +1,8 @@
1
1
  import { VariantProps } from 'class-variance-authority';
2
2
  import * as React from "react";
3
3
  declare const badgeVariants: (props?: ({
4
- variant?: "default" | "destructive" | "outline" | "secondary" | "purple" | null | undefined;
5
- } & import('class-variance-authority/dist/types').ClassProp) | undefined) => string;
4
+ variant?: "default" | "destructive" | "outline" | "secondary" | "blue" | "purple" | null | undefined;
5
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
6
6
  declare function Badge({ className, variant, asChild, ...props }: React.ComponentProps<"span"> & VariantProps<typeof badgeVariants> & {
7
7
  asChild?: boolean;
8
8
  }): import("react/jsx-runtime").JSX.Element;
@@ -1,9 +1,9 @@
1
1
  import { VariantProps } from 'class-variance-authority';
2
2
  import * as React from "react";
3
3
  declare const buttonVariants: (props?: ({
4
- size?: "default" | "icon" | "icon-lg" | "icon-sm" | "lg" | "sm" | null | undefined;
4
+ size?: "default" | "icon" | "icon-lg" | "icon-sm" | "lg" | "sm" | "xs" | null | undefined;
5
5
  variant?: "default" | "link" | "destructive" | "ghost" | "outline" | "secondary" | null | undefined;
6
- } & import('class-variance-authority/dist/types').ClassProp) | undefined) => string;
6
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
7
7
  declare function Button({ className, variant, size, asChild, ...props }: React.ComponentProps<"button"> & VariantProps<typeof buttonVariants> & {
8
8
  asChild?: boolean;
9
9
  }): import("react/jsx-runtime").JSX.Element;
@@ -2,4 +2,4 @@ import * as CollapsiblePrimitive from "@radix-ui/react-collapsible";
2
2
  declare function Collapsible({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.Root>): import("react/jsx-runtime").JSX.Element;
3
3
  declare function CollapsibleTrigger({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleTrigger>): import("react/jsx-runtime").JSX.Element;
4
4
  declare function CollapsibleContent({ ...props }: React.ComponentProps<typeof CollapsiblePrimitive.CollapsibleContent>): import("react/jsx-runtime").JSX.Element;
5
- export { Collapsible, CollapsibleTrigger, CollapsibleContent };
5
+ export { Collapsible, CollapsibleContent, CollapsibleTrigger };
@@ -15,4 +15,4 @@ declare function CommandGroup({ className, ...props }: React.ComponentProps<type
15
15
  declare function CommandSeparator({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Separator>): import("react/jsx-runtime").JSX.Element;
16
16
  declare function CommandItem({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Item>): import("react/jsx-runtime").JSX.Element;
17
17
  declare function CommandShortcut({ className, ...props }: React.ComponentProps<"span">): import("react/jsx-runtime").JSX.Element;
18
- export { Command, CommandDialog, CommandInput, CommandList, CommandEmpty, CommandGroup, CommandItem, CommandShortcut, CommandSeparator };
18
+ export { Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut };
@@ -22,4 +22,4 @@ declare function DropdownMenuSubTrigger({ className, inset, children, ...props }
22
22
  inset?: boolean;
23
23
  }): import("react/jsx-runtime").JSX.Element;
24
24
  declare function DropdownMenuSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>): import("react/jsx-runtime").JSX.Element;
25
- export { DropdownMenu, DropdownMenuPortal, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuGroup, DropdownMenuLabel, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubTrigger, DropdownMenuSubContent, };
25
+ export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, };
@@ -2,4 +2,4 @@ import * as React from "react";
2
2
  declare function FormItem({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
3
3
  declare function FormDescription({ className, ...props }: React.ComponentProps<"p">): import("react/jsx-runtime").JSX.Element;
4
4
  declare function FormError({ className, ...props }: React.ComponentProps<"p">): import("react/jsx-runtime").JSX.Element;
5
- export { FormError, FormItem, FormDescription };
5
+ export { FormDescription, FormError, FormItem };
@@ -2,6 +2,8 @@ import * as PopoverPrimitive from "@radix-ui/react-popover";
2
2
  import * as React from "react";
3
3
  declare function Popover({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
4
  declare function PopoverTrigger({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
5
- declare function PopoverContent({ className, align, sideOffset, ...props }: React.ComponentProps<typeof PopoverPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
5
+ declare function PopoverContent({ className, align, sideOffset, disablePortal, ...props }: React.ComponentProps<typeof PopoverPrimitive.Content> & {
6
+ disablePortal?: boolean;
7
+ }): import("react/jsx-runtime").JSX.Element;
6
8
  declare function PopoverAnchor({ ...props }: React.ComponentProps<typeof PopoverPrimitive.Anchor>): import("react/jsx-runtime").JSX.Element;
7
- export { Popover, PopoverTrigger, PopoverContent, PopoverAnchor };
9
+ export { Popover, PopoverAnchor, PopoverContent, PopoverTrigger };
@@ -7,7 +7,9 @@ declare const SelectTrigger: ({ className, size, children, ...props }: React.Com
7
7
  size?: "sm" | "default";
8
8
  }) => import("react/jsx-runtime").JSX.Element;
9
9
  declare const SelectContent: ({ className, children, position, ...props }: React.ComponentProps<typeof SelectPrimitive.Content>) => import("react/jsx-runtime").JSX.Element;
10
- declare const SelectLabel: ({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Label>) => import("react/jsx-runtime").JSX.Element;
10
+ declare const SelectLabel: ({ className, htmlFor, children, ...props }: React.ComponentProps<typeof SelectPrimitive.Label> & {
11
+ htmlFor?: string;
12
+ }) => import("react/jsx-runtime").JSX.Element;
11
13
  declare const SelectItem: ({ className, children, ...props }: React.ComponentProps<typeof SelectPrimitive.Item>) => import("react/jsx-runtime").JSX.Element;
12
14
  declare const SelectSeparator: ({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Separator>) => import("react/jsx-runtime").JSX.Element;
13
15
  declare const SelectScrollUpButton: ({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.ScrollUpButton>) => import("react/jsx-runtime").JSX.Element;
@@ -10,4 +10,4 @@ declare function SheetHeader({ className, ...props }: React.ComponentProps<"div"
10
10
  declare function SheetFooter({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
11
11
  declare function SheetTitle({ className, ...props }: React.ComponentProps<typeof SheetPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
12
12
  declare function SheetDescription({ className, ...props }: React.ComponentProps<typeof SheetPrimitive.Description>): import("react/jsx-runtime").JSX.Element;
13
- export { Sheet, SheetTrigger, SheetClose, SheetContent, SheetHeader, SheetFooter, SheetTitle, SheetDescription };
13
+ export { Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger };
@@ -4,4 +4,4 @@ declare function TooltipProvider({ delayDuration, ...props }: React.ComponentPro
4
4
  declare function Tooltip({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
5
5
  declare function TooltipTrigger({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
6
6
  declare function TooltipContent({ className, sideOffset, children, ...props }: React.ComponentProps<typeof TooltipPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
7
- export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };
7
+ export { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };
@@ -0,0 +1,45 @@
1
+ export declare const COLORS: {
2
+ dark: {
3
+ background: string;
4
+ border: string;
5
+ borderFocus: string;
6
+ card: string;
7
+ error: string;
8
+ errorBg: string;
9
+ errorLight: string;
10
+ input: string;
11
+ muted: string;
12
+ primary: string;
13
+ primaryDisabled: string;
14
+ primaryForeground: string;
15
+ primaryLight: string;
16
+ separator: string;
17
+ success: string;
18
+ successBg: string;
19
+ text: string;
20
+ textMuted: string;
21
+ textSecondary: string;
22
+ };
23
+ light: {
24
+ background: string;
25
+ border: string;
26
+ borderFocus: string;
27
+ card: string;
28
+ error: string;
29
+ errorBg: string;
30
+ errorLight: string;
31
+ input: string;
32
+ muted: string;
33
+ primary: string;
34
+ primaryDisabled: string;
35
+ primaryForeground: string;
36
+ primaryLight: string;
37
+ separator: string;
38
+ success: string;
39
+ successBg: string;
40
+ text: string;
41
+ textMuted: string;
42
+ textSecondary: string;
43
+ };
44
+ };
45
+ export type ThemeColors = typeof COLORS.light;
@@ -11,6 +11,7 @@ export declare const INPUT_TYPE: {
11
11
  readonly password: "password";
12
12
  readonly radio: "radio";
13
13
  readonly select: "select";
14
+ readonly submit: "submit";
14
15
  readonly switch: "switch";
15
16
  readonly text: "text";
16
17
  readonly textarea: "textarea";
@@ -1,4 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
+ import { ThemeColors } from '../constants/colors';
2
3
  type Theme = "dark" | "light" | "system";
3
4
  interface ThemeProviderProps {
4
5
  children: ReactNode;
@@ -7,6 +8,7 @@ interface ThemeProviderProps {
7
8
  theme?: "dark" | "light";
8
9
  }
9
10
  interface ThemeProviderState {
11
+ colors: ThemeColors;
10
12
  theme: Theme;
11
13
  setTheme: (theme: Theme) => void;
12
14
  }
@@ -0,0 +1,22 @@
1
+ import { ReactNode } from 'react';
2
+ import { ThemeColors } from '../constants/colors';
3
+ type Theme = "dark" | "light" | "system";
4
+ interface ThemeProviderProps {
5
+ children: ReactNode;
6
+ defaultTheme?: Theme;
7
+ storageKey?: string;
8
+ theme?: "dark" | "light";
9
+ }
10
+ interface ThemeProviderState {
11
+ colors: ThemeColors;
12
+ theme: Theme;
13
+ setTheme: (theme: Theme) => void;
14
+ }
15
+ /**
16
+ * ThemeProvider for React Native
17
+ * Unlike the web version, this doesn't manipulate DOM classes
18
+ * Provides theme colors directly through the context
19
+ */
20
+ export declare const ThemeProvider: ({ children, defaultTheme, theme: controlledTheme, ...props }: ThemeProviderProps) => import("react/jsx-runtime").JSX.Element;
21
+ export declare const useTheme: () => ThemeProviderState;
22
+ export {};
@@ -0,0 +1,37 @@
1
+ /**
2
+ * useThemeColors hook for Web
3
+ *
4
+ * On web, theming is handled via CSS classes and CSS variables in the global stylesheet.
5
+ * This hook provides color values that map to CSS variables or returns empty strings
6
+ * since actual colors are defined in the CSS theme.
7
+ *
8
+ * React Native uses this same interface but returns actual color values.
9
+ */
10
+ export type ThemeColors = {
11
+ background: string;
12
+ card: string;
13
+ input: string;
14
+ border: string;
15
+ borderFocus: string;
16
+ error: string;
17
+ errorBg: string;
18
+ errorLight: string;
19
+ muted: string;
20
+ primary: string;
21
+ primaryDisabled: string;
22
+ primaryLight: string;
23
+ success: string;
24
+ successBg: string;
25
+ text: string;
26
+ textMuted: string;
27
+ textSecondary: string;
28
+ separator: string;
29
+ };
30
+ /**
31
+ * For web, we don't need to return actual color values since theming
32
+ * is handled via CSS classes (`.light` / `.dark`) and CSS variables.
33
+ *
34
+ * Components should use CSS classes for styling on web instead of inline styles.
35
+ * This hook exists for API compatibility with React Native.
36
+ */
37
+ export declare const useThemeColors: () => ThemeColors;
@@ -4,14 +4,17 @@ declare const _default: {
4
4
  "clear": "مسح",
5
5
  "close": "إغلاق",
6
6
  "create": "إنشاء",
7
+ "delete": "حذف",
8
+ "other": "أخرى",
7
9
  "retry": "إعادة المحاولة",
8
10
  "save": "حفظ",
11
+ "settings": "الإعدادات",
9
12
  "submit": "إرسال",
10
13
  "toggle": "تبديل"
11
14
  },
12
15
  "editor": {
13
16
  "actionsPanel": {
14
- "addNode": "إضافة عقدة",
17
+ "addNode": "إضافة عنصر",
15
18
  "clear": "مسح التدفق",
16
19
  "clearSuccess": "تم مسح التدفق!",
17
20
  "clearSuccessDesc": "تم إزالة جميع العقد والحواف.",
@@ -28,6 +31,32 @@ declare const _default: {
28
31
  "parseError": "خطأ في تحليل ملف JSON.",
29
32
  "parseErrorDesc": "حاول إصلاح الملف واستيراده مرة أخرى."
30
33
  },
34
+ "aiGenerator": {
35
+ "aiNotConfigured": "الذكاء الاصطناعي غير مُهيأ",
36
+ "aiNotConfiguredDesc": "أضف خاصية {code} إلى TreegeEditorProvider",
37
+ "buttonLabel": "إنشاء باستخدام الذكاء الاصطناعي",
38
+ "cancel": "إلغاء",
39
+ "description": "الوصف",
40
+ "descriptionPlaceholder": "مثال: إنشاء نموذج اتصال مع الاسم والبريد الإلكتروني ورقم الهاتف والرسالة",
41
+ "enterDescription": "الرجاء إدخال وصف",
42
+ "failedToGenerate": "فشل في إنشاء الشجرة",
43
+ "generate": "إنشاء",
44
+ "generating": "جارٍ الإنشاء...",
45
+ "keyboardShortcut": "اضغط {cmdEnter} أو {ctrlEnter} للإنشاء",
46
+ "missingApiKey": "تكوين الذكاء الاصطناعي مفقود",
47
+ "missingApiKeyDesc": "الرجاء تكوين مفتاح API الخاص بالذكاء الاصطناعي في TreegeEditorProvider",
48
+ "successDescription": "تم إنشاء {nodes} عقدة و {edges} حافة",
49
+ "successTitle": "تم إنشاء الشجرة بنجاح!",
50
+ "title": "إنشاء تدفق باستخدام الذكاء الاصطناعي",
51
+ "titleDescription": "صف النموذج أو شجرة القرار التي تريد إنشاءها، وسيقوم الذكاء الاصطناعي بإنشائها لك.",
52
+ "unknownError": "حدث خطأ غير معروف"
53
+ },
54
+ "changeNodeTypeDialog": {
55
+ "description": "يحتوي هذا العنصر على عدة فروع صادرة. النوع الجديد يدعم فرعاً واحداً فقط. اختر الفرع الذي تريد الاحتفاظ به؛ سيتم حذف الفروع الأخرى.",
56
+ "keepBranch": "الاحتفاظ بهذا الفرع",
57
+ "noConditions": "لا توجد شروط",
58
+ "title": "تغيير نوع العنصر"
59
+ },
31
60
  "comboboxPattern": {
32
61
  "custom": "مخصص: {value}",
33
62
  "search": "البحث عن أنماط...",
@@ -46,6 +75,7 @@ declare const _default: {
46
75
  "conditionsAnd": "شروط (و)",
47
76
  "conditionsMixed": "شروط (مختلطة)",
48
77
  "conditionsOr": "شروط (أو)",
78
+ "defineCondition": "تعريف شرط",
49
79
  "displayConditions": "عرض الشروط",
50
80
  "displayConditionsDesc": "سيتم عرض هذا الحقل إذا تم استيفاء الشروط التالية.",
51
81
  "fallback": "افتراضي",
@@ -94,8 +124,8 @@ declare const _default: {
94
124
  "methodPut": "PUT",
95
125
  "noFieldsAvailable": "لا توجد حقول متاحة",
96
126
  "requestBody": "جسم الطلب (JSON)",
97
- "requestBodyDesc": "استخدم متغيرات القالب مثل ${fieldId} للإشارة إلى الحقول الأخرى",
98
- "requestBodyPlaceholder": "{\"مفتاح\": \"قيمة\"}",
127
+ "requestBodyDesc": "استخدم {{fieldId}} للإشارة إلى حقول أخرى. تأكد من تنسيق JSON الصحيح بما في ذلك علامات الاقتباس حول القيم النصية.",
128
+ "requestBodyPlaceholder": "{\"name\": \"{{userName}}\", \"age\": {{userAge}}}",
99
129
  "responseConfiguration": "تكوين الاستجابة",
100
130
  "responsePath": "مسار الاستجابة",
101
131
  "responsePathDesc": "استخراج البيانات من الاستجابة باستخدام نقطة التدوين أو فهرسة المصفوفة",
@@ -104,6 +134,8 @@ declare const _default: {
104
134
  "searchParameterDesc": "إذا تم تعيينه، يتم تمكين مربع بحث يضيف هذا المعامل إلى استدعاءات API (مثال: ?q=باريس)",
105
135
  "searchParameterPlaceholder": "q، بحث، استعلام...",
106
136
  "selectMethod": "اختر الطريقة",
137
+ "sendAllFormValues": "إرسال جميع بيانات النموذج",
138
+ "sendAllFormValuesDesc": "إرسال جميع قيم النموذج تلقائياً كمحتوى JSON",
107
139
  "showLoadingState": "إظهار حالة التحميل",
108
140
  "valueField": "حقل القيمة",
109
141
  "valueFieldDesc": "الحقل المستخدم كقيمة خيار (مثال: id)",
@@ -121,6 +153,7 @@ declare const _default: {
121
153
  "defaultValueTypeNone": "لا شيء",
122
154
  "defaultValueTypeReference": "حقل مرجعي",
123
155
  "defaultValueTypeStatic": "قيمة ثابتة",
156
+ "disablePast": "تعطيل التواريخ الماضية",
124
157
  "errorMessage": "رسالة خطأ",
125
158
  "helperText": "نص مساعد",
126
159
  "httpConfiguration": "تكوين HTTP",
@@ -128,9 +161,20 @@ declare const _default: {
128
161
  "multipleFiles": "ملفات متعددة",
129
162
  "multipleSelection": "اختيار متعدد",
130
163
  "name": "الاسم",
164
+ "nameDescription": "اسم حقل مخصص اختياري لتصدير النموذج. إذا كان فارغاً، سيتم استخدام التسمية كمفتاح.",
131
165
  "noParentFieldsAvailable": "لا توجد حقول أصلية متاحة",
132
166
  "objectMapping": "تعيين الكائن",
133
167
  "objectMappingDesc": "تعيين خصائص الكائن المصدر إلى بنية جديدة",
168
+ "optional": "اختياري",
169
+ "optionDescription": "الوصف",
170
+ "optionImageAdd": "إضافة صورة",
171
+ "optionImageError": "تعذر معالجة الصورة.",
172
+ "optionImageInvalid": "تنسيق صورة غير مدعوم.",
173
+ "optionImageRemove": "إزالة الصورة",
174
+ "optionImageReplace": "استبدال الصورة",
175
+ "optionImageTooLarge": "الصورة كبيرة جدًا (الحد الأقصى 5 ميجابايت).",
176
+ "optionImageUpload": "تحميل ملف",
177
+ "optionImageUrlPlaceholder": "https://...",
134
178
  "optionLabel": "التسمية",
135
179
  "options": "خيارات",
136
180
  "optionValue": "القيمة",
@@ -144,6 +188,7 @@ declare const _default: {
144
188
  "sourceKey": "مفتاح المصدر",
145
189
  "staticValue": "قيمة ثابتة",
146
190
  "staticValuePlaceholder": "أدخل القيمة الافتراضية",
191
+ "submitConfiguration": "إعداد الإرسال",
147
192
  "targetKey": "مفتاح الوجهة",
148
193
  "transformArray": "تحويل إلى مصفوفة",
149
194
  "transformBoolean": "تحويل إلى منطقي",
@@ -153,7 +198,16 @@ declare const _default: {
153
198
  "transformNumber": "تحويل إلى رقم",
154
199
  "transformString": "تحويل إلى نص",
155
200
  "transformType": "نوع التحويل",
156
- "validation": "التحقق"
201
+ "validation": "التحقق",
202
+ "variant": "متغير",
203
+ "variantCard": "بطاقة",
204
+ "variantDefault": "افتراضي"
205
+ },
206
+ "nodeActionsSheet": {
207
+ "deleteNode": "حذف العقدة",
208
+ "deleteNodeConfirm": "هل أنت متأكد من أنك تريد حذف هذه العقدة؟",
209
+ "deleteNodeSuccess": "تم حذف العقدة بنجاح",
210
+ "editNode": "تعديل العقدة"
157
211
  },
158
212
  "selectInputType": {
159
213
  "type": "النوع"
@@ -172,7 +226,50 @@ declare const _default: {
172
226
  "noGroup": "بدون مجموعة"
173
227
  },
174
228
  "selectNodeType": {
175
- "nodeType": "نوع العقدة"
229
+ "nodeType": "نوع العقدة",
230
+ "options": {
231
+ "flow": "تدفق خارجي",
232
+ "group": "مجموعة",
233
+ "input": "سؤال",
234
+ "ui": "عنصر تصميم"
235
+ }
236
+ },
237
+ "submitConfigForm": {
238
+ "addHeader": "إضافة رأس",
239
+ "apiUrl": "رابط API",
240
+ "apiUrlDesc": "استخدم {{fieldId}} للإشارة إلى حقول أخرى",
241
+ "apiUrlPlaceholder": "https://api.example.com/submit",
242
+ "behavior": "السلوك",
243
+ "errorMessage": "رسالة الخطأ",
244
+ "errorMessageDesc": "الرسالة المعروضة عند فشل الإرسال",
245
+ "errorMessagePlaceholder": "حدث خطأ. يرجى المحاولة مرة أخرى.",
246
+ "headerName": "اسم الرأس",
247
+ "headers": "الرؤوس",
248
+ "headerValue": "قيمة الرأس",
249
+ "httpMethod": "طريقة HTTP",
250
+ "insertVariable": "إدراج متغير",
251
+ "methodDelete": "DELETE",
252
+ "methodPatch": "PATCH",
253
+ "methodPost": "POST",
254
+ "methodPut": "PUT",
255
+ "noFieldsAvailable": "لا توجد حقول متاحة",
256
+ "postSubmission": "بعد الإرسال",
257
+ "redirectUrl": "رابط إعادة التوجيه",
258
+ "redirectUrlDesc": "الرابط الذي سيتم التوجيه إليه بعد نجاح الإرسال",
259
+ "redirectUrlPlaceholder": "/success أو https://example.com/thank-you",
260
+ "requestBody": "محتوى الطلب (JSON)",
261
+ "requestBodyDesc": "استخدم {{fieldId}} للإشارة إلى حقول أخرى. تأكد من تنسيق JSON الصحيح بما في ذلك علامات الاقتباس حول القيم النصية.",
262
+ "requestBodyPlaceholder": "{\"name\": \"{{userName}}\", \"email\": \"{{userEmail}}\"}",
263
+ "selectMethod": "اختر الطريقة",
264
+ "sendAllFormValues": "إرسال جميع بيانات النموذج",
265
+ "sendAllFormValuesDesc": "إرسال جميع قيم النموذج تلقائياً كمحتوى JSON",
266
+ "showLoadingState": "إظهار حالة التحميل",
267
+ "successMessage": "رسالة النجاح",
268
+ "successMessageDesc": "الرسالة المعروضة عند نجاح الإرسال",
269
+ "successMessagePlaceholder": "تم إرسال النموذج بنجاح!"
270
+ },
271
+ "treegeNode": {
272
+ "labelPlaceholder": "تسمية..."
176
273
  },
177
274
  "uiNodeForm": {
178
275
  "label": "التسمية",
@@ -184,7 +281,9 @@ declare const _default: {
184
281
  "renderer": {
185
282
  "defaultAddressInput": {
186
283
  "enterAddress": "أدخل عنواناً...",
187
- "noAddressesFound": "لم يتم العثور على عناوين."
284
+ "noAddressesFound": "لم يتم العثور على عناوين.",
285
+ "searching": "جاري البحث...",
286
+ "typeMinChars": "اكتب 3 أحرف على الأقل للبحث"
188
287
  },
189
288
  "defaultAutocompleteInput": {
190
289
  "noResults": "لم يتم العثور على نتائج.",
@@ -192,22 +291,30 @@ declare const _default: {
192
291
  "selectOption": "اختر خياراً"
193
292
  },
194
293
  "defaultHttpInput": {
195
- "fetchFailed": "فشل في جلب البيانات",
196
- "httpError": "HTTP {status}: {statusText}",
294
+ "fetchFailed": "فشل في جلب البيانات. يرجى التحقق من اتصالك بالشبكة.",
295
+ "httpError": "خطأ HTTP {status}: {statusText}",
197
296
  "noDataAvailable": "لا توجد بيانات متاحة. قم بتكوين \"جلب عند التحميل\" أو أضف معامل بحث.",
198
297
  "noResults": "لم يتم العثور على نتائج.",
199
- "noUrlConfigured": "لم يتم تكوين رابط",
298
+ "noUrlConfigured": "لم يتم تكوين رابط. يرجى إضافة عنوان URL في إعدادات HTTP.",
200
299
  "retry": "إعادة المحاولة",
201
300
  "search": "بحث...",
202
301
  "searching": "جاري البحث...",
203
- "selectOption": "اختر خياراً"
302
+ "selectOption": "اختر خياراً",
303
+ "waitingForRequiredFields": "في انتظار الحقول المطلوبة"
204
304
  },
205
305
  "defaultInputs": {
306
+ "addMoreFiles": "إضافة المزيد من الملفات",
206
307
  "endDate": "تاريخ الانتهاء",
207
308
  "endTime": "وقت الانتهاء",
309
+ "filePickerError": "فشل في اختيار الملف",
310
+ "filePickerUnavailable": "اختيار الملفات غير متاح. يرجى تثبيت react-native-document-picker.",
311
+ "newAnswer": "إجابة جديدة...",
312
+ "replaceFile": "استبدال الملف",
208
313
  "required": "*",
209
314
  "selectDate": "اختر التاريخ",
210
315
  "selectDateRange": "اختر نطاق التاريخ",
316
+ "selectFile": "اختر ملف",
317
+ "selectFiles": "اختر ملفات",
211
318
  "startDate": "تاريخ البدء",
212
319
  "startTime": "وقت البدء"
213
320
  },