@flowgram.ai/form-materials 0.1.0-alpha.17 → 0.1.0-alpha.19

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 (227) hide show
  1. package/dist/cjs/components/batch-outputs/index.js +5 -3
  2. package/dist/cjs/components/batch-outputs/styles.css +13 -0
  3. package/dist/cjs/components/blur-input/index.js +1 -0
  4. package/dist/cjs/components/code-editor/editor.js +16 -12
  5. package/dist/cjs/components/code-editor/styles.css +4 -0
  6. package/dist/cjs/components/code-editor/theme/dark.js +1 -1
  7. package/dist/cjs/components/code-editor/theme/light.js +1 -1
  8. package/dist/cjs/components/code-editor-mini/index.js +2 -16
  9. package/dist/cjs/components/condition-context/hooks/use-condition.js +17 -1
  10. package/dist/cjs/components/condition-row/index.js +26 -12
  11. package/dist/cjs/components/condition-row/styles.css +19 -0
  12. package/dist/cjs/components/coze-editor-extensions/extensions/inputs-tree.js +2 -2
  13. package/dist/cjs/components/coze-editor-extensions/extensions/variable-tag.js +31 -11
  14. package/dist/{esm/components/coze-editor-extensions/styles.mjs → cjs/components/coze-editor-extensions/styles.css} +19 -18
  15. package/dist/cjs/components/db-condition-row/index.js +29 -14
  16. package/dist/cjs/components/db-condition-row/styles.css +30 -0
  17. package/dist/cjs/components/display-inputs-values/index.js +3 -2
  18. package/dist/cjs/components/display-inputs-values/styles.css +6 -0
  19. package/dist/cjs/components/display-outputs/index.js +5 -4
  20. package/dist/cjs/components/display-outputs/styles.css +6 -0
  21. package/dist/cjs/components/display-schema-tag/index.js +7 -4
  22. package/dist/cjs/components/display-schema-tag/styles.css +21 -0
  23. package/dist/cjs/components/display-schema-tree/index.js +12 -7
  24. package/dist/cjs/components/display-schema-tree/styles.css +64 -0
  25. package/dist/cjs/components/dynamic-value-input/index.js +9 -5
  26. package/dist/{esm/components/dynamic-value-input/styles.mjs → cjs/components/dynamic-value-input/styles.css} +24 -30
  27. package/dist/cjs/components/inputs-values/index.js +5 -3
  28. package/dist/cjs/components/inputs-values/styles.css +13 -0
  29. package/dist/cjs/components/inputs-values-tree/icon.js +70 -0
  30. package/dist/cjs/components/inputs-values-tree/index.js +4 -3
  31. package/dist/cjs/components/inputs-values-tree/row.js +19 -15
  32. package/dist/cjs/components/inputs-values-tree/styles.css +85 -0
  33. package/dist/cjs/components/json-schema-editor/default-value.js +2 -2
  34. package/dist/cjs/components/json-schema-editor/hooks.js +55 -48
  35. package/dist/cjs/components/json-schema-editor/icon.js +70 -0
  36. package/dist/cjs/components/json-schema-editor/index.js +37 -25
  37. package/dist/cjs/components/json-schema-editor/styles.css +113 -0
  38. package/dist/cjs/components/prompt-editor/editor.js +16 -6
  39. package/dist/cjs/components/prompt-editor/styles.css +10 -0
  40. package/dist/cjs/components/prompt-editor-with-inputs/index.js +16 -26
  41. package/dist/cjs/components/prompt-editor-with-variables/index.js +17 -26
  42. package/dist/cjs/components/variable-selector/context.js +7 -3
  43. package/dist/cjs/components/variable-selector/index.js +16 -10
  44. package/dist/{esm/components/variable-selector/styles.mjs → cjs/components/variable-selector/styles.css} +37 -29
  45. package/dist/cjs/components/variable-selector/use-variable-tree.js +3 -1
  46. package/dist/cjs/shared/inject-material/index.js +1 -1
  47. package/dist/esm/components/batch-outputs/index.mjs +5 -3
  48. package/dist/esm/components/batch-outputs/styles.css +13 -0
  49. package/dist/esm/components/blur-input/index.mjs +1 -0
  50. package/dist/esm/components/code-editor/editor.mjs +16 -11
  51. package/dist/esm/components/code-editor/styles.css +4 -0
  52. package/dist/esm/components/code-editor/theme/dark.mjs +1 -1
  53. package/dist/esm/components/code-editor/theme/light.mjs +1 -1
  54. package/dist/esm/components/code-editor-mini/index.mjs +2 -6
  55. package/dist/esm/components/condition-context/hooks/use-condition.mjs +18 -2
  56. package/dist/esm/components/condition-row/index.mjs +26 -12
  57. package/dist/esm/components/condition-row/styles.css +19 -0
  58. package/dist/esm/components/coze-editor-extensions/extensions/inputs-tree.mjs +3 -3
  59. package/dist/esm/components/coze-editor-extensions/extensions/variable-tag.mjs +32 -12
  60. package/dist/esm/components/coze-editor-extensions/styles.css +37 -0
  61. package/dist/esm/components/db-condition-row/index.mjs +29 -14
  62. package/dist/esm/components/db-condition-row/styles.css +30 -0
  63. package/dist/esm/components/display-inputs-values/index.mjs +3 -2
  64. package/dist/esm/components/display-inputs-values/styles.css +6 -0
  65. package/dist/esm/components/display-outputs/index.mjs +5 -4
  66. package/dist/esm/components/display-outputs/styles.css +6 -0
  67. package/dist/esm/components/display-schema-tag/index.mjs +8 -5
  68. package/dist/esm/components/display-schema-tag/styles.css +21 -0
  69. package/dist/esm/components/display-schema-tree/index.mjs +12 -7
  70. package/dist/esm/components/display-schema-tree/styles.css +64 -0
  71. package/dist/esm/components/dynamic-value-input/index.mjs +9 -5
  72. package/dist/esm/components/dynamic-value-input/styles.css +48 -0
  73. package/dist/esm/components/inputs-values/index.mjs +5 -3
  74. package/dist/esm/components/inputs-values/styles.css +13 -0
  75. package/dist/esm/components/inputs-values-tree/icon.mjs +26 -0
  76. package/dist/esm/components/inputs-values-tree/index.mjs +4 -3
  77. package/dist/esm/components/inputs-values-tree/row.mjs +18 -14
  78. package/dist/esm/components/inputs-values-tree/styles.css +85 -0
  79. package/dist/esm/components/json-schema-editor/default-value.mjs +2 -2
  80. package/dist/esm/components/json-schema-editor/hooks.mjs +55 -48
  81. package/dist/esm/components/json-schema-editor/icon.mjs +26 -0
  82. package/dist/esm/components/json-schema-editor/index.mjs +36 -24
  83. package/dist/esm/components/json-schema-editor/styles.css +113 -0
  84. package/dist/esm/components/prompt-editor/editor.mjs +16 -6
  85. package/dist/esm/components/prompt-editor/styles.css +10 -0
  86. package/dist/esm/components/prompt-editor-with-inputs/index.mjs +12 -4
  87. package/dist/esm/components/prompt-editor-with-variables/index.mjs +13 -4
  88. package/dist/esm/components/variable-selector/context.mjs +7 -3
  89. package/dist/esm/components/variable-selector/index.mjs +17 -11
  90. package/{src/components/variable-selector/styles.tsx → dist/esm/components/variable-selector/styles.css} +35 -38
  91. package/dist/esm/components/variable-selector/use-variable-tree.mjs +3 -1
  92. package/dist/esm/shared/inject-material/index.mjs +1 -1
  93. package/dist/tsconfig.tsbuildinfo +1 -1
  94. package/dist/types/components/batch-outputs/index.d.ts +1 -0
  95. package/dist/types/components/blur-input/index.d.ts +1 -1
  96. package/dist/types/components/code-editor/editor.d.ts +1 -0
  97. package/dist/types/components/condition-context/hooks/use-condition.d.ts +16 -1
  98. package/dist/types/components/condition-row/index.d.ts +5 -1
  99. package/dist/types/components/coze-editor-extensions/extensions/inputs-tree.d.ts +3 -3
  100. package/dist/types/components/coze-editor-extensions/extensions/variable-tag.d.ts +1 -0
  101. package/dist/types/components/coze-editor-extensions/index.d.ts +1 -1
  102. package/dist/types/components/db-condition-row/index.d.ts +4 -0
  103. package/dist/types/components/db-condition-row/types.d.ts +0 -1
  104. package/dist/types/components/display-inputs-values/index.d.ts +3 -1
  105. package/dist/types/components/display-outputs/index.d.ts +1 -0
  106. package/dist/types/components/display-schema-tag/index.d.ts +1 -0
  107. package/dist/types/components/display-schema-tree/index.d.ts +1 -0
  108. package/dist/types/components/dynamic-value-input/index.d.ts +1 -0
  109. package/dist/types/components/inputs-values/index.d.ts +1 -0
  110. package/dist/types/components/inputs-values-tree/icon.d.ts +6 -0
  111. package/dist/types/components/inputs-values-tree/index.d.ts +1 -0
  112. package/dist/types/components/inputs-values-tree/row.d.ts +1 -0
  113. package/dist/types/components/inputs-values-tree/types.d.ts +3 -2
  114. package/dist/types/components/json-schema-editor/icon.d.ts +6 -0
  115. package/dist/types/components/json-schema-editor/index.d.ts +1 -0
  116. package/dist/types/components/prompt-editor/editor.d.ts +1 -0
  117. package/dist/types/components/prompt-editor-with-inputs/index.d.ts +7 -2
  118. package/dist/types/components/prompt-editor-with-variables/index.d.ts +5 -2
  119. package/dist/types/components/variable-selector/context.d.ts +16 -3
  120. package/dist/types/components/variable-selector/index.d.ts +1 -0
  121. package/dist/types/index.d.ts +1 -1
  122. package/dist/types/shared/flow-value/index.d.ts +1 -1
  123. package/dist/types/shared/flow-value/types.d.ts +3 -0
  124. package/dist/types/shared/index.d.ts +1 -1
  125. package/package.json +7 -10
  126. package/src/components/batch-outputs/index.tsx +5 -5
  127. package/src/components/batch-outputs/{styles.tsx → styles.css} +4 -6
  128. package/src/components/blur-input/index.tsx +2 -1
  129. package/src/components/code-editor/editor.tsx +19 -14
  130. package/src/components/code-editor/styles.css +11 -0
  131. package/src/components/code-editor/theme/dark.ts +1 -1
  132. package/src/components/code-editor/theme/light.ts +1 -1
  133. package/src/components/code-editor-mini/index.tsx +2 -9
  134. package/src/components/condition-context/hooks/use-condition.tsx +51 -7
  135. package/src/components/condition-row/index.tsx +27 -22
  136. package/src/components/condition-row/{styles.tsx → styles.css} +11 -11
  137. package/src/components/coze-editor-extensions/extensions/inputs-tree.tsx +7 -6
  138. package/src/components/coze-editor-extensions/extensions/variable-tag.tsx +19 -14
  139. package/src/components/coze-editor-extensions/{styles.tsx → styles.css} +8 -11
  140. package/src/components/db-condition-row/index.tsx +29 -26
  141. package/src/components/db-condition-row/{styles.tsx → styles.css} +14 -16
  142. package/src/components/db-condition-row/types.ts +0 -1
  143. package/src/components/display-inputs-values/index.tsx +5 -4
  144. package/src/components/display-inputs-values/{styles.ts → styles.css} +2 -4
  145. package/src/components/display-outputs/index.tsx +5 -5
  146. package/src/components/display-outputs/{styles.ts → styles.css} +2 -4
  147. package/src/components/display-schema-tag/index.tsx +7 -7
  148. package/src/components/display-schema-tag/{styles.ts → styles.css} +7 -10
  149. package/src/components/display-schema-tree/index.tsx +10 -10
  150. package/src/components/display-schema-tree/{styles.tsx → styles.css} +18 -24
  151. package/src/components/dynamic-value-input/index.tsx +6 -6
  152. package/src/components/dynamic-value-input/{styles.tsx → styles.css} +9 -12
  153. package/src/components/inputs-values/index.tsx +5 -5
  154. package/src/components/inputs-values/{styles.tsx → styles.css} +4 -6
  155. package/src/components/inputs-values-tree/icon.tsx +28 -0
  156. package/src/components/inputs-values-tree/index.tsx +8 -6
  157. package/src/components/inputs-values-tree/row.tsx +25 -27
  158. package/src/components/inputs-values-tree/styles.css +94 -0
  159. package/src/components/inputs-values-tree/types.ts +3 -2
  160. package/src/components/json-schema-editor/default-value.tsx +2 -4
  161. package/src/components/json-schema-editor/hooks.tsx +60 -53
  162. package/src/components/json-schema-editor/icon.tsx +28 -0
  163. package/src/components/json-schema-editor/index.tsx +45 -50
  164. package/src/components/json-schema-editor/styles.css +135 -0
  165. package/src/components/prompt-editor/editor.tsx +18 -7
  166. package/src/components/prompt-editor/styles.css +14 -0
  167. package/src/components/prompt-editor-with-inputs/index.tsx +18 -5
  168. package/src/components/prompt-editor-with-variables/index.tsx +13 -5
  169. package/src/components/variable-selector/context.tsx +22 -2
  170. package/src/components/variable-selector/index.tsx +24 -14
  171. package/src/components/variable-selector/styles.css +70 -0
  172. package/src/components/variable-selector/use-variable-tree.tsx +9 -1
  173. package/src/index.ts +1 -0
  174. package/src/shared/flow-value/index.ts +1 -0
  175. package/src/shared/flow-value/types.ts +4 -0
  176. package/src/shared/index.ts +1 -0
  177. package/src/shared/inject-material/index.tsx +1 -1
  178. package/dist/cjs/components/batch-outputs/styles.js +0 -60
  179. package/dist/cjs/components/condition-row/styles.js +0 -77
  180. package/dist/cjs/components/coze-editor-extensions/styles.js +0 -89
  181. package/dist/cjs/components/db-condition-row/styles.js +0 -94
  182. package/dist/cjs/components/display-inputs-values/styles.js +0 -51
  183. package/dist/cjs/components/display-outputs/styles.js +0 -51
  184. package/dist/cjs/components/display-schema-tag/styles.js +0 -71
  185. package/dist/cjs/components/display-schema-tree/styles.js +0 -135
  186. package/dist/cjs/components/dynamic-value-input/styles.js +0 -107
  187. package/dist/cjs/components/inputs-values/styles.js +0 -60
  188. package/dist/cjs/components/inputs-values-tree/styles.js +0 -177
  189. package/dist/cjs/components/json-schema-editor/styles.js +0 -231
  190. package/dist/cjs/components/prompt-editor/styles.js +0 -55
  191. package/dist/cjs/components/prompt-editor-with-inputs/editor.js +0 -47
  192. package/dist/cjs/components/prompt-editor-with-variables/editor.js +0 -48
  193. package/dist/cjs/components/variable-selector/styles.js +0 -114
  194. package/dist/esm/components/batch-outputs/styles.mjs +0 -13
  195. package/dist/esm/components/condition-row/styles.mjs +0 -21
  196. package/dist/esm/components/db-condition-row/styles.mjs +0 -32
  197. package/dist/esm/components/display-inputs-values/styles.mjs +0 -7
  198. package/dist/esm/components/display-outputs/styles.mjs +0 -7
  199. package/dist/esm/components/display-schema-tag/styles.mjs +0 -21
  200. package/dist/esm/components/display-schema-tree/styles.mjs +0 -79
  201. package/dist/esm/components/inputs-values/styles.mjs +0 -13
  202. package/dist/esm/components/inputs-values-tree/styles.mjs +0 -105
  203. package/dist/esm/components/json-schema-editor/styles.mjs +0 -138
  204. package/dist/esm/components/prompt-editor/styles.mjs +0 -11
  205. package/dist/esm/components/prompt-editor-with-inputs/editor.mjs +0 -13
  206. package/dist/esm/components/prompt-editor-with-variables/editor.mjs +0 -14
  207. package/dist/types/components/batch-outputs/styles.d.ts +0 -6
  208. package/dist/types/components/condition-row/styles.d.ts +0 -9
  209. package/dist/types/components/coze-editor-extensions/styles.d.ts +0 -9
  210. package/dist/types/components/db-condition-row/styles.d.ts +0 -12
  211. package/dist/types/components/display-inputs-values/styles.d.ts +0 -5
  212. package/dist/types/components/display-outputs/styles.d.ts +0 -5
  213. package/dist/types/components/display-schema-tag/styles.d.ts +0 -8
  214. package/dist/types/components/display-schema-tree/styles.d.ts +0 -11
  215. package/dist/types/components/dynamic-value-input/styles.d.ts +0 -8
  216. package/dist/types/components/inputs-values/styles.d.ts +0 -6
  217. package/dist/types/components/inputs-values-tree/styles.d.ts +0 -23
  218. package/dist/types/components/json-schema-editor/styles.d.ts +0 -30
  219. package/dist/types/components/prompt-editor/styles.d.ts +0 -7
  220. package/dist/types/components/prompt-editor-with-inputs/editor.d.ts +0 -10
  221. package/dist/types/components/prompt-editor-with-variables/editor.d.ts +0 -9
  222. package/dist/types/components/variable-selector/styles.d.ts +0 -14
  223. package/src/components/inputs-values-tree/styles.tsx +0 -128
  224. package/src/components/json-schema-editor/styles.tsx +0 -168
  225. package/src/components/prompt-editor/styles.tsx +0 -18
  226. package/src/components/prompt-editor-with-inputs/editor.tsx +0 -24
  227. package/src/components/prompt-editor-with-variables/editor.tsx +0 -20
@@ -36,8 +36,8 @@ const semi_ui_namespaceObject = require("@douyinfe/semi-ui");
36
36
  const semi_icons_namespaceObject = require("@douyinfe/semi-icons");
37
37
  const index_js_namespaceObject = require("../../shared/index.js");
38
38
  const external_use_variable_tree_js_namespaceObject = require("./use-variable-tree.js");
39
- const external_styles_js_namespaceObject = require("./styles.js");
40
39
  const external_context_js_namespaceObject = require("./context.js");
40
+ require("./styles.css");
41
41
  const VariableSelector = ({ value, config = {}, onChange, style, readonly = false, includeSchema, excludeSchema, hasError, triggerRender })=>{
42
42
  const { skipVariable } = (0, external_context_js_namespaceObject.useVariableSelectorContext)();
43
43
  const treeData = (0, external_use_variable_tree_js_namespaceObject.useVariableTree)({
@@ -66,21 +66,23 @@ const VariableSelector = ({ value, config = {}, onChange, style, readonly = fals
66
66
  return icon;
67
67
  };
68
68
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(jsx_runtime_namespaceObject.Fragment, {
69
- children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_styles_js_namespaceObject.UITreeSelect, {
69
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(semi_ui_namespaceObject.TreeSelect, {
70
+ className: `gedit-m-variable-selector-tree-select ${hasError ? 'error' : ''}`,
70
71
  dropdownMatchSelectWidth: false,
71
72
  disabled: readonly,
72
73
  treeData: treeData,
73
74
  size: "small",
74
75
  value: treeValue,
75
76
  clearIcon: null,
76
- $error: hasError,
77
77
  style: style,
78
78
  validateStatus: hasError ? 'error' : void 0,
79
+ dropdownClassName: "gedit-m-variable-selector-dropdown",
79
80
  onChange: (_, _config)=>{
80
81
  onChange(_config.keyPath);
81
82
  },
82
83
  renderSelectedItem: (_option)=>{
83
- if (!_option?.keyPath) return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_styles_js_namespaceObject.UITag, {
84
+ if (!_option?.keyPath) return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(semi_ui_namespaceObject.Tag, {
85
+ className: "gedit-m-variable-selector-tag",
84
86
  prefixIcon: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(semi_icons_namespaceObject.IconIssueStroked, {}),
85
87
  color: "amber",
86
88
  closable: !readonly,
@@ -88,28 +90,32 @@ const VariableSelector = ({ value, config = {}, onChange, style, readonly = fals
88
90
  children: config?.notFoundContent ?? 'Undefined'
89
91
  });
90
92
  const rootIcon = renderIcon(_option.rootMeta?.icon || _option?.icon);
91
- const rootTitle = /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_styles_js_namespaceObject.UIRootTitle, {
93
+ const rootTitle = /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
94
+ className: "gedit-m-variable-selector-root-title",
92
95
  children: _option.rootMeta?.title ? `${_option.rootMeta?.title} ${_option.isRoot ? '' : '-'} ` : null
93
96
  });
94
97
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
95
98
  children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(semi_ui_namespaceObject.Popover, {
96
- content: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(external_styles_js_namespaceObject.UIPopoverContent, {
99
+ content: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
100
+ className: "gedit-m-variable-selector-tag-pop",
97
101
  children: [
98
102
  rootIcon,
99
103
  rootTitle,
100
- /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_styles_js_namespaceObject.UIVarName, {
104
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
105
+ className: "gedit-m-variable-selector-var-name",
101
106
  children: _option.keyPath.slice(1).join('.')
102
107
  })
103
108
  ]
104
109
  }),
105
- children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(external_styles_js_namespaceObject.UITag, {
110
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(semi_ui_namespaceObject.Tag, {
111
+ className: "gedit-m-variable-selector-tag",
106
112
  prefixIcon: rootIcon,
107
113
  closable: !readonly,
108
114
  onClose: ()=>onChange(void 0),
109
115
  children: [
110
116
  rootTitle,
111
- !_option.isRoot && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_styles_js_namespaceObject.UIVarName, {
112
- $inSelector: true,
117
+ !_option.isRoot && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
118
+ className: "gedit-m-variable-selector-var-name in-selector",
113
119
  children: _option.label
114
120
  })
115
121
  ]
@@ -1,43 +1,45 @@
1
- import styled_components, { css } from "styled-components";
2
- import { Tag, TreeSelect } from "@douyinfe/semi-ui";
3
- const UIRootTitle = styled_components.div`
4
- margin-right: 4px;
5
- min-width: 20px;
6
- overflow: hidden;
1
+ .gedit-m-variable-selector-root-title {
7
2
  text-overflow: ellipsis;
8
3
  white-space: nowrap;
4
+ min-width: 20px;
9
5
  color: var(--semi-color-text-2);
10
- `;
11
- const UIVarName = styled_components.div`
6
+ margin-right: 4px;
12
7
  overflow: hidden;
8
+ }
9
+
10
+ .gedit-m-variable-selector-var-name {
13
11
  text-overflow: ellipsis;
14
12
  white-space: nowrap;
13
+ overflow: hidden;
14
+
15
+ &.in-selector {
16
+ min-width: 50%;
17
+ }
18
+ }
15
19
 
16
- ${({ $inSelector })=>$inSelector && css`
17
- min-width: 50%;
18
- `}
19
- `;
20
- const UITag = styled_components(Tag)`
20
+ .gedit-m-variable-selector-tag {
21
+ justify-content: flex-start;
22
+ align-items: center;
21
23
  width: 100%;
24
+ height: 22px;
25
+ margin: 0;
22
26
  display: flex;
23
- align-items: center;
24
- justify-content: flex-start;
25
27
 
26
28
  & .semi-tag-content-center {
27
29
  justify-content: flex-start;
28
30
  }
31
+ }
29
32
 
30
- &.semi-tag {
31
- margin: 0;
32
- height: 22px;
33
+ .gedit-m-variable-selector-tree-select {
34
+ outline: none;
35
+
36
+ &.error {
37
+ outline: 1px solid red;
33
38
  }
34
- `;
35
- const UITreeSelect = styled_components(TreeSelect)`
36
- outline: ${({ $error })=>$error ? '1px solid red' : 'none'};
37
39
 
38
40
  & .semi-tree-select-selection {
39
- padding: 0px;
40
41
  height: 22px;
42
+ padding: 0;
41
43
  }
42
44
 
43
45
  & .semi-tree-select-selection-content {
@@ -47,12 +49,18 @@ const UITreeSelect = styled_components(TreeSelect)`
47
49
  & .semi-tree-select-selection-placeholder {
48
50
  padding-left: 10px;
49
51
  }
50
- `;
51
- const UIPopoverContent = styled_components.div`
52
+ }
53
+
54
+ .gedit-m-variable-selector-tag-pop {
55
+ white-space: nowrap;
56
+ justify-content: flex-start;
57
+ align-items: center;
52
58
  padding: 10px;
53
59
  display: inline-flex;
54
- align-items: center;
55
- justify-content: flex-start;
56
- white-space: nowrap;
57
- `;
58
- export { UIPopoverContent, UIRootTitle, UITag, UITreeSelect, UIVarName };
60
+ }
61
+
62
+ .gedit-m-variable-selector-dropdown {
63
+ max-height: 300px;
64
+ overflow: auto;
65
+ }
66
+
@@ -31,8 +31,10 @@ const external_react_namespaceObject = require("react");
31
31
  const json_schema_namespaceObject = require("@flowgram.ai/json-schema");
32
32
  const editor_namespaceObject = require("@flowgram.ai/editor");
33
33
  const semi_ui_namespaceObject = require("@douyinfe/semi-ui");
34
+ const external_context_js_namespaceObject = require("./context.js");
34
35
  function useVariableTree(params) {
35
- const { includeSchema, excludeSchema, skipVariable } = params;
36
+ const context = (0, external_context_js_namespaceObject.useVariableSelectorContext)();
37
+ const { includeSchema = context.includeSchema, excludeSchema = context.excludeSchema, skipVariable = context.skipVariable } = params;
36
38
  const typeManager = (0, json_schema_namespaceObject.useTypeManager)();
37
39
  const variables = (0, editor_namespaceObject.useAvailableVariables)();
38
40
  const getVariableTypeIcon = (0, external_react_namespaceObject.useCallback)((variable)=>{
@@ -42,7 +42,7 @@ function createInjectMaterial(Component, params) {
42
42
  const renderKey = params?.renderKey || Component.renderKey || Component.name || '';
43
43
  const InjectComponent = (props)=>{
44
44
  const container = (0, editor_namespaceObject.usePlaygroundContainer)();
45
- if (!container?.isBound(editor_namespaceObject.FlowRendererRegistry)) return /*#__PURE__*/ external_react_default().createElement(Component, {
45
+ if (!container?.isBound?.(editor_namespaceObject.FlowRendererRegistry)) return /*#__PURE__*/ external_react_default().createElement(Component, {
46
46
  ...props
47
47
  });
48
48
  const rendererRegistry = container.get(editor_namespaceObject.FlowRendererRegistry);
@@ -5,15 +5,17 @@ import { Button, Input } from "@douyinfe/semi-ui";
5
5
  import { IconDelete, IconPlus } from "@douyinfe/semi-icons";
6
6
  import { useObjectList } from "../../hooks/index.mjs";
7
7
  import { InjectVariableSelector } from "../variable-selector/index.mjs";
8
- import { UIRow, UIRows } from "./styles.mjs";
8
+ import "./styles.css";
9
9
  function BatchOutputs(props) {
10
10
  const { readonly, style } = props;
11
11
  const { list, add, updateKey, updateValue, remove } = useObjectList(props);
12
12
  return /*#__PURE__*/ jsxs("div", {
13
13
  children: [
14
- /*#__PURE__*/ jsx(UIRows, {
14
+ /*#__PURE__*/ jsx("div", {
15
+ className: "gedit-m-batch-outputs-rows",
15
16
  style: style,
16
- children: list.map((item)=>/*#__PURE__*/ jsxs(UIRow, {
17
+ children: list.map((item)=>/*#__PURE__*/ jsxs("div", {
18
+ className: "gedit-m-batch-outputs-row",
17
19
  children: [
18
20
  /*#__PURE__*/ jsx(Input, {
19
21
  style: {
@@ -0,0 +1,13 @@
1
+ .gedit-m-batch-outputs-rows {
2
+ flex-direction: column;
3
+ gap: 10px;
4
+ margin-bottom: 10px;
5
+ display: flex;
6
+ }
7
+
8
+ .gedit-m-batch-outputs-row {
9
+ align-items: center;
10
+ gap: 5px;
11
+ display: flex;
12
+ }
13
+
@@ -9,6 +9,7 @@ function BlurInput(props) {
9
9
  props.value
10
10
  ]);
11
11
  return /*#__PURE__*/ jsx(Input, {
12
+ ref: props.ref,
12
13
  ...props,
13
14
  value: value,
14
15
  onChange: (value)=>{
@@ -1,10 +1,10 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { useEffect, useRef } from "react";
3
- import styled_components, { css } from "styled-components";
4
3
  import { ActiveLinePlaceholder, EditorProvider, createRenderer } from "@flowgram.ai/coze-editor/react";
5
4
  import preset_code from "@flowgram.ai/coze-editor/preset-code";
6
5
  import { EditorView } from "@codemirror/view";
7
6
  import { getSuffixByLanguageId } from "./utils.mjs";
7
+ import "./styles.css";
8
8
  const OriginCodeEditor = createRenderer(preset_code, [
9
9
  EditorView.theme({
10
10
  '&.cm-focused': {
@@ -12,23 +12,28 @@ const OriginCodeEditor = createRenderer(preset_code, [
12
12
  }
13
13
  })
14
14
  ]);
15
- const UIContainer = styled_components.div`
16
- ${({ $mini })=>$mini && css`
17
- height: 24px;
18
- `}
19
- `;
20
15
  function BaseCodeEditor({ value, onChange, languageId = 'python', theme = 'light', children, placeholder, activeLinePlaceholder, options, readonly, mini }) {
21
16
  const editorRef = useRef(null);
17
+ const editorValue = String(value || '');
22
18
  useEffect(()=>{
23
- if (editorRef.current?.getValue() !== value) editorRef.current?.setValue(String(value || ''));
19
+ if (editorRef.current?.getValue() !== editorValue) {
20
+ const editorView = editorRef.current?.$view;
21
+ editorView?.dispatch({
22
+ changes: {
23
+ from: 0,
24
+ to: editorView?.state.doc.length,
25
+ insert: editorValue
26
+ }
27
+ });
28
+ }
24
29
  }, [
25
- value
30
+ editorValue
26
31
  ]);
27
- return /*#__PURE__*/ jsx(UIContainer, {
28
- $mini: mini,
32
+ return /*#__PURE__*/ jsx("div", {
33
+ className: `gedit-m-code-editor-container ${mini ? 'mini' : ''}`,
29
34
  children: /*#__PURE__*/ jsx(EditorProvider, {
30
35
  children: /*#__PURE__*/ jsxs(OriginCodeEditor, {
31
- defaultValue: String(value || ''),
36
+ defaultValue: editorValue,
32
37
  options: {
33
38
  uri: `file:///untitled${getSuffixByLanguageId(languageId)}`,
34
39
  languageId,
@@ -0,0 +1,4 @@
1
+ .gedit-m-code-editor-container.mini {
2
+ height: 24px;
3
+ }
4
+
@@ -39,7 +39,7 @@ const darkTheme = createTheme({
39
39
  gutterForeground: colors.foreground,
40
40
  gutterBorderColor: 'transparent',
41
41
  gutterBorderWidth: 0,
42
- lineHighlight: '#21262D',
42
+ lineHighlight: 'transparent',
43
43
  bracketColors: [
44
44
  '#FBBF24',
45
45
  '#A78BFA',
@@ -34,7 +34,7 @@ const lightTheme = createTheme({
34
34
  gutterForeground: colors.foreground,
35
35
  gutterBorderColor: 'transparent',
36
36
  gutterBorderWidth: 0,
37
- lineHighlight: colors.background,
37
+ lineHighlight: 'transparent',
38
38
  bracketColors: [
39
39
  '#F59E0B',
40
40
  '#8B5CF6',
@@ -1,13 +1,9 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import "react";
3
- import styled_components from "styled-components";
4
3
  import { CodeEditor } from "../code-editor/index.mjs";
5
- const UIMini = styled_components.div`
6
- .ͼ1 .cm-content {
7
- }
8
- `;
9
4
  function CodeEditorMini(props) {
10
- return /*#__PURE__*/ jsx(UIMini, {
5
+ return /*#__PURE__*/ jsx("div", {
6
+ className: "gedit-m-code-editor-mini",
11
7
  children: /*#__PURE__*/ jsx(CodeEditor, {
12
8
  ...props,
13
9
  options: {
@@ -1,8 +1,8 @@
1
- import { useMemo } from "react";
1
+ import { useEffect, useMemo, useRef } from "react";
2
2
  import { I18n } from "@flowgram.ai/editor";
3
3
  import { useTypeManager } from "../../../plugins/index.mjs";
4
4
  import { useConditionContext } from "../context.mjs";
5
- function useCondition({ leftSchema, operator, ruleConfig }) {
5
+ function useCondition({ leftSchema, operator, onClearOp, onClearRight, ruleConfig }) {
6
6
  const typeManager = useTypeManager();
7
7
  const { rules: contextRules, ops: contextOps } = useConditionContext();
8
8
  const userRules = useMemo(()=>ruleConfig?.rules || contextRules || {}, [
@@ -35,6 +35,14 @@ function useCondition({ leftSchema, operator, ruleConfig }) {
35
35
  rule,
36
36
  allOps
37
37
  ]);
38
+ useEffect(()=>{
39
+ if (!operator || !rule) return;
40
+ if (!opOptionList.find((item)=>item.value === operator)) onClearOp?.();
41
+ }, [
42
+ operator,
43
+ opOptionList,
44
+ onClearOp
45
+ ]);
38
46
  const targetSchema = useMemo(()=>{
39
47
  const targetType = rule?.[operator || ''] || null;
40
48
  if (!targetType) return;
@@ -49,6 +57,14 @@ function useCondition({ leftSchema, operator, ruleConfig }) {
49
57
  rule,
50
58
  operator
51
59
  ]);
60
+ const prevTargetSchemaRef = useRef(void 0);
61
+ useEffect(()=>{
62
+ if (prevTargetSchemaRef.current?.type !== targetSchema?.type) onClearRight?.();
63
+ prevTargetSchemaRef.current = targetSchema;
64
+ }, [
65
+ targetSchema,
66
+ onClearRight
67
+ ]);
52
68
  const opConfig = useMemo(()=>allOps[operator || ''], [
53
69
  operator,
54
70
  allOps
@@ -7,12 +7,8 @@ import { IconChevronDownStroked } from "@douyinfe/semi-icons";
7
7
  import { InjectVariableSelector } from "../variable-selector/index.mjs";
8
8
  import { InjectDynamicValueInput } from "../dynamic-value-input/index.mjs";
9
9
  import { useCondition } from "../condition-context/index.mjs";
10
- import { UIContainer, UILeft, UIOperator, UIRight, UIValues } from "./styles.mjs";
11
- const defaultRuleConfig = {
12
- ops: {},
13
- rules: {}
14
- };
15
- function ConditionRow({ style, value, onChange, readonly, ruleConfig = defaultRuleConfig }) {
10
+ import "./styles.css";
11
+ function ConditionRow({ style, value, onChange, readonly, ruleConfig }) {
16
12
  const { left, operator, right } = value || {};
17
13
  const available = useScopeAvailable();
18
14
  const variable = useMemo(()=>{
@@ -32,7 +28,20 @@ function ConditionRow({ style, value, onChange, readonly, ruleConfig = defaultRu
32
28
  ]);
33
29
  const { rule, opConfig, opOptionList, targetSchema } = useCondition({
34
30
  leftSchema,
35
- operator
31
+ operator,
32
+ ruleConfig,
33
+ onClearOp () {
34
+ onChange({
35
+ ...value,
36
+ operator: void 0
37
+ });
38
+ },
39
+ onClearRight () {
40
+ onChange({
41
+ ...value,
42
+ right: void 0
43
+ });
44
+ }
36
45
  });
37
46
  const renderOpSelect = ()=>/*#__PURE__*/ jsx(Select, {
38
47
  style: {
@@ -56,15 +65,19 @@ function ConditionRow({ style, value, onChange, readonly, ruleConfig = defaultRu
56
65
  })
57
66
  })
58
67
  });
59
- return /*#__PURE__*/ jsxs(UIContainer, {
68
+ return /*#__PURE__*/ jsxs("div", {
69
+ className: "gedit-m-condition-row-container",
60
70
  style: style,
61
71
  children: [
62
- /*#__PURE__*/ jsx(UIOperator, {
72
+ /*#__PURE__*/ jsx("div", {
73
+ className: "gedit-m-condition-row-operator",
63
74
  children: renderOpSelect()
64
75
  }),
65
- /*#__PURE__*/ jsxs(UIValues, {
76
+ /*#__PURE__*/ jsxs("div", {
77
+ className: "gedit-m-condition-row-values",
66
78
  children: [
67
- /*#__PURE__*/ jsx(UILeft, {
79
+ /*#__PURE__*/ jsx("div", {
80
+ className: "gedit-m-condition-row-left",
68
81
  children: /*#__PURE__*/ jsx(InjectVariableSelector, {
69
82
  readonly: readonly,
70
83
  style: {
@@ -80,7 +93,8 @@ function ConditionRow({ style, value, onChange, readonly, ruleConfig = defaultRu
80
93
  })
81
94
  })
82
95
  }),
83
- /*#__PURE__*/ jsx(UIRight, {
96
+ /*#__PURE__*/ jsx("div", {
97
+ className: "gedit-m-condition-row-right",
84
98
  children: targetSchema ? /*#__PURE__*/ jsx(InjectDynamicValueInput, {
85
99
  readonly: readonly || !rule,
86
100
  value: right,
@@ -0,0 +1,19 @@
1
+ .gedit-m-condition-row-container {
2
+ align-items: center;
3
+ gap: 4px;
4
+ display: flex;
5
+ }
6
+
7
+ .gedit-m-condition-row-left, .gedit-m-condition-row-right {
8
+ width: 100%;
9
+ }
10
+
11
+ .gedit-m-condition-row-values {
12
+ flex-direction: column;
13
+ flex-grow: 1;
14
+ align-items: center;
15
+ gap: 4px;
16
+ display: flex;
17
+ overflow: hidden;
18
+ }
19
+
@@ -1,12 +1,12 @@
1
1
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
2
2
  import { useEffect, useMemo, useState } from "react";
3
3
  import { isPlainObject, last } from "lodash-es";
4
- import { ASTMatch, useScopeAvailable } from "@flowgram.ai/editor";
4
+ import { ASTMatch, useCurrentScope } from "@flowgram.ai/editor";
5
5
  import { Mention, PositionMirror, getCurrentMentionReplaceRange, useEditor } from "@flowgram.ai/coze-editor/react";
6
6
  import { Popover, Tree } from "@douyinfe/semi-ui";
7
7
  import { FlowValueUtils } from "../../../shared/index.mjs";
8
8
  function InputsPicker({ inputsValues, onSelect }) {
9
- const available = useScopeAvailable();
9
+ const scope = useCurrentScope();
10
10
  const getArrayDrilldown = (type, depth = 1)=>{
11
11
  if (ASTMatch.isArray(type.items)) return getArrayDrilldown(type.items, depth + 1);
12
12
  return {
@@ -41,7 +41,7 @@ function InputsPicker({ inputsValues, onSelect }) {
41
41
  const currKey = keyPath.join('.');
42
42
  if (FlowValueUtils.isFlowValue(value)) {
43
43
  if (FlowValueUtils.isRef(value)) {
44
- const variable = available.getByKeyPath(value.content || []);
44
+ const variable = scope?.available?.getByKeyPath(value.content || []);
45
45
  if (variable) return renderVariable(variable, keyPath);
46
46
  }
47
47
  return {
@@ -3,11 +3,11 @@ import { useLayoutEffect } from "react";
3
3
  import { isEqual, last } from "lodash-es";
4
4
  import { Disposable, DisposableCollection, useCurrentScope } from "@flowgram.ai/editor";
5
5
  import { useInjector } from "@flowgram.ai/coze-editor/react";
6
- import { Popover } from "@douyinfe/semi-ui";
6
+ import { Popover, Tag } from "@douyinfe/semi-ui";
7
7
  import { IconIssueStroked } from "@douyinfe/semi-icons";
8
8
  import { Decoration, EditorView, MatchDecorator, ViewPlugin, WidgetType } from "@codemirror/view";
9
9
  import { polyfillCreateRoot } from "../../../shared/index.mjs";
10
- import { UIPopoverContent, UIRootTitle, UITag, UIVarName } from "../styles.mjs";
10
+ import "../styles.css";
11
11
  class VariableTagWidget extends WidgetType {
12
12
  constructor({ keyPath, scope }){
13
13
  super(), this.toDispose = new DisposableCollection(), this.renderIcon = (icon)=>{
@@ -25,32 +25,50 @@ class VariableTagWidget extends WidgetType {
25
25
  this.scope = scope;
26
26
  }
27
27
  renderVariable(v) {
28
- if (!v) return void this.root.render(/*#__PURE__*/ jsx(UITag, {
29
- prefixIcon: /*#__PURE__*/ jsx(IconIssueStroked, {}),
28
+ if (!v) return void this.root.render(/*#__PURE__*/ jsxs(Tag, {
29
+ className: "gedit-m-coze-editor-tag",
30
30
  color: "amber",
31
- children: "Unknown"
31
+ children: [
32
+ /*#__PURE__*/ jsx(IconIssueStroked, {
33
+ style: {
34
+ marginRight: '4px'
35
+ }
36
+ }),
37
+ /*#__PURE__*/ jsx("span", {
38
+ children: "Unknown"
39
+ })
40
+ ]
32
41
  }));
33
42
  const rootField = last(v.parentFields) || v;
34
43
  const isRoot = v === rootField;
35
- const rootTitle = /*#__PURE__*/ jsx(UIRootTitle, {
44
+ const rootTitle = /*#__PURE__*/ jsx("span", {
45
+ className: "gedit-m-coze-editor-root-title",
36
46
  children: rootField.meta?.title ? `${rootField.meta.title} ${isRoot ? '' : '-'} ` : ''
37
47
  });
38
48
  const rootIcon = this.renderIcon(rootField?.meta.icon);
39
49
  this.root.render(/*#__PURE__*/ jsx(Popover, {
40
- content: /*#__PURE__*/ jsxs(UIPopoverContent, {
50
+ content: /*#__PURE__*/ jsxs("div", {
51
+ className: "gedit-m-coze-editor-popover-content",
41
52
  children: [
42
53
  rootIcon,
43
54
  rootTitle,
44
- /*#__PURE__*/ jsx(UIVarName, {
55
+ /*#__PURE__*/ jsx("span", {
56
+ className: "gedit-m-coze-editor-var-name",
45
57
  children: v?.keyPath.slice(1).join('.')
46
58
  })
47
59
  ]
48
60
  }),
49
- children: /*#__PURE__*/ jsxs(UITag, {
50
- prefixIcon: rootIcon,
61
+ children: /*#__PURE__*/ jsxs(Tag, {
62
+ className: "gedit-m-coze-editor-tag",
63
+ style: {
64
+ display: 'inline-flex',
65
+ alignItems: 'center'
66
+ },
51
67
  children: [
68
+ rootIcon,
52
69
  rootTitle,
53
- !isRoot && /*#__PURE__*/ jsx(UIVarName, {
70
+ !isRoot && /*#__PURE__*/ jsx("span", {
71
+ className: "gedit-m-coze-editor-var-name",
54
72
  children: v?.key
55
73
  })
56
74
  ]
@@ -83,7 +101,9 @@ class VariableTagWidget extends WidgetType {
83
101
  }
84
102
  function VariableTagInject() {
85
103
  const injector = useInjector();
86
- const scope = useCurrentScope();
104
+ const scope = useCurrentScope({
105
+ strict: true
106
+ });
87
107
  useLayoutEffect(()=>{
88
108
  const atMatcher = new MatchDecorator({
89
109
  regexp: /\{\{([^\}\{]+)\}\}/g,
@@ -0,0 +1,37 @@
1
+ .gedit-m-coze-editor-root-title {
2
+ text-overflow: ellipsis;
3
+ white-space: nowrap;
4
+ min-width: 20px;
5
+ color: var(--semi-color-text-2);
6
+ margin-right: 4px;
7
+ overflow: hidden;
8
+ }
9
+
10
+ .gedit-m-coze-editor-var-name {
11
+ text-overflow: ellipsis;
12
+ white-space: nowrap;
13
+ overflow: hidden;
14
+ }
15
+
16
+ .gedit-m-coze-editor-tag {
17
+ justify-content: flex-start;
18
+ align-items: center;
19
+ max-width: 300px;
20
+ display: inline-flex;
21
+
22
+ & .semi-tag-content-center {
23
+ justify-content: flex-start;
24
+ }
25
+
26
+ &.semi-tag {
27
+ margin: 0 5px;
28
+ }
29
+ }
30
+
31
+ .gedit-m-coze-editor-popover-content {
32
+ justify-content: flex-start;
33
+ align-items: center;
34
+ padding: 10px;
35
+ display: inline-flex;
36
+ }
37
+