@tmagic/editor 1.8.0-beta.15 → 1.8.0-beta.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/es/index.js CHANGED
@@ -2,7 +2,7 @@ import { CODE_DRAFT_STORAGE_KEY, CodeDeleteErrorType, ColumnLayout, DragType, Ke
2
2
  import { useCodeBlockEdit } from "./hooks/use-code-block-edit.js";
3
3
  import { getEditorConfig, isGlobalFlat, setEditorConfig } from "./utils/config.js";
4
4
  import { getCodeBlockFormConfig } from "./utils/code-block.js";
5
- import { advancedTabConfig, arrayOptions, booleanOptions, displayTabConfig, eqOptions, eventTabConfig, fillConfig, getCondOpOptionsByFieldType, numberOptions, removeStyleDisplayConfig, styleTabConfig, validatePropsForm } from "./utils/props.js";
5
+ import { advancedTabConfig, arrayOptions, booleanOptions, displayTabConfig, eqOptions, eventTabConfig, fillConfig, getCondOpOptionsByFieldType, numberOptions, removeStyleDisplayConfig, styleTabConfig } from "./utils/props.js";
6
6
  import { useCompareForm } from "./hooks/use-compare-form.js";
7
7
  import props_default from "./services/props.js";
8
8
  import { UndoRedo } from "./utils/undo-redo.js";
@@ -92,4 +92,4 @@ export * from "@tmagic/table";
92
92
  export * from "@tmagic/stage";
93
93
  export * from "@tmagic/design";
94
94
  export * from "@tmagic/utils";
95
- export { ALL_COND_OPS, CODE_DRAFT_STORAGE_KEY, COPY_CODE_STORAGE_KEY, COPY_DS_STORAGE_KEY, COPY_STORAGE_KEY, CodeBlockEditor_default as CodeBlockEditor, CodeBlockList_default as CodeBlockList, CodeBlockListPanel_default as CodeBlockListPanel, CodeDeleteErrorType, CodeSelect_default as CodeSelect, CodeSelectCol_default as CodeSelectCol, ColumnLayout, CompareForm_default as CompareForm, ComponentListPanel_default as ComponentListPanel, CondOpSelect_default as CondOpSelect, ContentMenu_default as ContentMenu, DEFAULT_LEFT_COLUMN_WIDTH, DEFAULT_RIGHT_COLUMN_WIDTH, DataSourceAddButton_default as DataSourceAddButton, DataSourceConfigPanel_default as DataSourceConfigPanel, Index_default as DataSourceFieldSelect, DataSourceFields_default as DataSourceFields, DataSourceInput_default as DataSourceInput, DataSourceMethodSelect_default as DataSourceMethodSelect, DataSourceMethods_default as DataSourceMethods, DataSourceMocks_default as DataSourceMocks, DataSourceSelect_default as DataSourceSelect, DepTargetType, DisplayConds_default as DisplayConds, DragType, EVENT_NAME_VALUE_SEPARATOR, EventSelect_default as EventSelect, Fixed2Other, FloatingBox_default as FloatingBox, H_GUIDE_LINE_STORAGE_KEY, HistoryDiffDialog_default as HistoryDiffDialog, Bucket_default as HistoryListBucket, BucketTab_default as HistoryListBucketTab, Icon_default as Icon, IdleTask, KeyBindingCommand, KeyValue_default as KeyValue, Keys, LEFT_COLUMN_WIDTH_STORAGE_KEY, LayerNodeContent_default as LayerNodeContent, LayerOffset, LayerPanel_default as LayerPanel, Layout, SplitView_default as LayoutContainer, MIN_CENTER_COLUMN_WIDTH, MIN_LEFT_COLUMN_WIDTH, MIN_RIGHT_COLUMN_WIDTH, PROPS_PANEL_WIDTH_STORAGE_KEY, PageFragmentSelect_default as PageFragmentSelect, FormPanel_default as PropsFormPanel, PropsPanel_default as PropsPanel, RIGHT_COLUMN_WIDTH_STORAGE_KEY, Resizer_default as Resizer, ScrollViewer, SideItemKey, SplitView_default as SplitView, StageCore, Index_default$1 as StyleSetter, CodeEditor_default as TMagicCodeEditor, Editor_default as TMagicEditor, ToolButton_default as ToolButton, Tree_default as Tree, TreeNode_default as TreeNode, UI_SELECT_MODE_EVENT_NAME, UndoRedo, V_GUIDE_LINE_STORAGE_KEY, ViewForm_default as ViewForm, advancedTabConfig, arrayOptions, beforePaste, booleanOptions, buildChangeRecords, calcAlignCenterStyle, calcLayerTargetIndex, calcMoveStyle, canUsePluginMethods, change2Fixed, classifyDragSources, codeBlock_default as codeBlockService, collectEventNameOptionValues, collectRelatedNodes, componentList_default as componentListService, confirmHistoryAction, createStackStep, dataSource_default as dataSourceService, debug, plugin_default as default, defaultIsExpandable, dep_default as depService, describeRevertStep, describeStepForRevert, deserializeStacks, designPlugin, detectStackOpType, detectTargetId, detectTargetName, displayTabConfig, editorNodeMergeCustomizer, editor_default as editorService, editorTypeMatchRules, eqOptions, error, eventTabConfig, events_default as eventsService, fillConfig, fixNodeLeft, fixNodePosition, formPlugin, generatePageName, generatePageNameByApp, getAddParent, getCascaderOptionsFromFields, getCodeBlockFormConfig, getCompActionAllowedValues, getCompActionOptions, getCondOpOptionsByFieldType, getDefaultConfig, getDisplayField, getEditorConfig, getEventNameAllowedValues, getEventNameOptions, getFieldType, getFormConfig, getFormValue, getGuideLineFromCache, getInitPositionStyle, getLastPushedHistoryIds, getNodeIndex, getOrCreateStack, getPageFragmentList, getPageList, getPageNameList, getPositionInContainer, getRelativeStyle, history_default as historyService, idbDelete, idbGet, idbSet, info, isEventNameCheckStrictly, isGlobalFlat, isIncludeDataSource, isIndexedDBSupported, keybinding_default as keybindingService, monaco_editor_default as loadMonaco, log, markStackSaved, mergeSteps, moveItemsInContainer, normalizeCompActionValue, numberOptions, openIndexedDB, props_default as propsService, removeStyleDisplayConfig, resolveFieldByPath, resolveSelectedNode, serializeConfig, serializeStacks, setChildrenLayout, setEditorConfig, setLayout, stageOverlay_default as stageOverlayService, storage_default as storageService, styleTabConfig, tablePlugin, toggleFixedPosition, ui_default as uiService, undoFloor, updateStatus, useCodeBlockEdit, useCompareForm, useEditorContentHeight, useFilter, useFloatBox, useGetSo, useHistoryRevert, useNextFloatBoxPosition, useNodeStatus, useServices, useStage, useWindowRect, validatePropsForm, warn };
95
+ export { ALL_COND_OPS, CODE_DRAFT_STORAGE_KEY, COPY_CODE_STORAGE_KEY, COPY_DS_STORAGE_KEY, COPY_STORAGE_KEY, CodeBlockEditor_default as CodeBlockEditor, CodeBlockList_default as CodeBlockList, CodeBlockListPanel_default as CodeBlockListPanel, CodeDeleteErrorType, CodeSelect_default as CodeSelect, CodeSelectCol_default as CodeSelectCol, ColumnLayout, CompareForm_default as CompareForm, ComponentListPanel_default as ComponentListPanel, CondOpSelect_default as CondOpSelect, ContentMenu_default as ContentMenu, DEFAULT_LEFT_COLUMN_WIDTH, DEFAULT_RIGHT_COLUMN_WIDTH, DataSourceAddButton_default as DataSourceAddButton, DataSourceConfigPanel_default as DataSourceConfigPanel, Index_default as DataSourceFieldSelect, DataSourceFields_default as DataSourceFields, DataSourceInput_default as DataSourceInput, DataSourceMethodSelect_default as DataSourceMethodSelect, DataSourceMethods_default as DataSourceMethods, DataSourceMocks_default as DataSourceMocks, DataSourceSelect_default as DataSourceSelect, DepTargetType, DisplayConds_default as DisplayConds, DragType, EVENT_NAME_VALUE_SEPARATOR, EventSelect_default as EventSelect, Fixed2Other, FloatingBox_default as FloatingBox, H_GUIDE_LINE_STORAGE_KEY, HistoryDiffDialog_default as HistoryDiffDialog, Bucket_default as HistoryListBucket, BucketTab_default as HistoryListBucketTab, Icon_default as Icon, IdleTask, KeyBindingCommand, KeyValue_default as KeyValue, Keys, LEFT_COLUMN_WIDTH_STORAGE_KEY, LayerNodeContent_default as LayerNodeContent, LayerOffset, LayerPanel_default as LayerPanel, Layout, SplitView_default as LayoutContainer, MIN_CENTER_COLUMN_WIDTH, MIN_LEFT_COLUMN_WIDTH, MIN_RIGHT_COLUMN_WIDTH, PROPS_PANEL_WIDTH_STORAGE_KEY, PageFragmentSelect_default as PageFragmentSelect, FormPanel_default as PropsFormPanel, PropsPanel_default as PropsPanel, RIGHT_COLUMN_WIDTH_STORAGE_KEY, Resizer_default as Resizer, ScrollViewer, SideItemKey, SplitView_default as SplitView, StageCore, Index_default$1 as StyleSetter, CodeEditor_default as TMagicCodeEditor, Editor_default as TMagicEditor, ToolButton_default as ToolButton, Tree_default as Tree, TreeNode_default as TreeNode, UI_SELECT_MODE_EVENT_NAME, UndoRedo, V_GUIDE_LINE_STORAGE_KEY, ViewForm_default as ViewForm, advancedTabConfig, arrayOptions, beforePaste, booleanOptions, buildChangeRecords, calcAlignCenterStyle, calcLayerTargetIndex, calcMoveStyle, canUsePluginMethods, change2Fixed, classifyDragSources, codeBlock_default as codeBlockService, collectEventNameOptionValues, collectRelatedNodes, componentList_default as componentListService, confirmHistoryAction, createStackStep, dataSource_default as dataSourceService, debug, plugin_default as default, defaultIsExpandable, dep_default as depService, describeRevertStep, describeStepForRevert, deserializeStacks, designPlugin, detectStackOpType, detectTargetId, detectTargetName, displayTabConfig, editorNodeMergeCustomizer, editor_default as editorService, editorTypeMatchRules, eqOptions, error, eventTabConfig, events_default as eventsService, fillConfig, fixNodeLeft, fixNodePosition, formPlugin, generatePageName, generatePageNameByApp, getAddParent, getCascaderOptionsFromFields, getCodeBlockFormConfig, getCompActionAllowedValues, getCompActionOptions, getCondOpOptionsByFieldType, getDefaultConfig, getDisplayField, getEditorConfig, getEventNameAllowedValues, getEventNameOptions, getFieldType, getFormConfig, getFormValue, getGuideLineFromCache, getInitPositionStyle, getLastPushedHistoryIds, getNodeIndex, getOrCreateStack, getPageFragmentList, getPageList, getPageNameList, getPositionInContainer, getRelativeStyle, history_default as historyService, idbDelete, idbGet, idbSet, info, isEventNameCheckStrictly, isGlobalFlat, isIncludeDataSource, isIndexedDBSupported, keybinding_default as keybindingService, monaco_editor_default as loadMonaco, log, markStackSaved, mergeSteps, moveItemsInContainer, normalizeCompActionValue, numberOptions, openIndexedDB, props_default as propsService, removeStyleDisplayConfig, resolveFieldByPath, resolveSelectedNode, serializeConfig, serializeStacks, setChildrenLayout, setEditorConfig, setLayout, stageOverlay_default as stageOverlayService, storage_default as storageService, styleTabConfig, tablePlugin, toggleFixedPosition, ui_default as uiService, undoFloor, updateStatus, useCodeBlockEdit, useCompareForm, useEditorContentHeight, useFilter, useFloatBox, useGetSo, useHistoryRevert, useNextFloatBoxPosition, useNodeStatus, useServices, useStage, useWindowRect, warn };
@@ -1,10 +1,9 @@
1
- import { validatePropsForm } from "../../utils/props.js";
2
1
  import { useServices } from "../../hooks/use-services.js";
3
2
  import { useEditorContentHeight } from "../../hooks/use-editor-content-height.js";
4
3
  import Icon_default from "../../components/Icon.js";
5
4
  import CodeEditor_default from "../CodeEditor.js";
6
5
  import { ENABLE_PROPS_FORM_VALIDATE } from "../../editorProps.js";
7
- import { MForm } from "@tmagic/form";
6
+ import { MForm, validateForm } from "@tmagic/form";
8
7
  import { TMagicButton, TMagicScrollbar, tMagicMessage } from "@tmagic/design";
9
8
  import { filterXSS } from "@tmagic/utils";
10
9
  import { computed, createBlock, createCommentVNode, createElementBlock, createVNode, defineComponent, getCurrentInstance, inject, normalizeClass, onMounted, onUnmounted, openBlock, ref, renderSlot, unref, useTemplateRef, watchEffect, withCtx } from "vue";
@@ -82,14 +81,18 @@ var FormPanel_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ define
82
81
  return;
83
82
  }
84
83
  try {
85
- const error = await validatePropsForm({
84
+ const error = await validateForm({
86
85
  config: props.config,
87
- values: newValues,
88
- appContext: internalInstance?.appContext ?? null,
89
- services,
90
- stage: stage.value,
91
86
  typeMatchValid: true,
92
- extendState: props.extendState
87
+ initValues: newValues,
88
+ appContext: internalInstance?.appContext ? {
89
+ ...internalInstance?.appContext,
90
+ provides: { services }
91
+ } : null,
92
+ extendState: (state) => {
93
+ if (configFormRef.value?.formState) return { ...configFormRef.value?.formState || {} };
94
+ return props.extendState?.(state) || {};
95
+ }
93
96
  });
94
97
  if (error) tMagicMessage({
95
98
  type: "error",
@@ -1,4 +1,3 @@
1
- import { validateForm } from "@tmagic/form";
2
1
  import { tMagicMessage } from "@tmagic/design";
3
2
  import { HookType, NODE_CONDS_KEY, NODE_CONDS_RESULT_KEY, NODE_DISABLE_CODE_BLOCK_KEY, NODE_DISABLE_DATA_SOURCE_KEY } from "@tmagic/core";
4
3
  //#region packages/editor/src/utils/props.ts
@@ -314,48 +313,5 @@ var removeStyleDisplayConfig = (formConfig) => formConfig.map((item) => {
314
313
  })
315
314
  };
316
315
  });
317
- /**
318
- * 对一份「组件属性表单配置 + 值」做一次独立的校验,**不复用也不污染页面上正在展示的表单**。
319
- *
320
- * 内部基于 `@tmagic/form` 的 `validateForm` 另建一个独立的 MForm 实例完成校验,并统一处理
321
- * 编辑器场景所需的上下文注入:将当前组件实例的 provides 合入 appContext,并向 formState 注入
322
- * stage / services 及外部扩展状态,保证校验规则依赖的上下文可用。
323
- *
324
- * 常用于源码编辑器保存后,对最新配置做一次校验,并将校验结果(错误信息)随提交一并抛给上层记录,
325
- * 使源码保存的错误状态与表单编辑保持一致。
326
- *
327
- * @returns 校验通过返回空字符串 `''`,否则返回以 `<br>` 拼接的错误文案。
328
- * 仅在初始化超时或挂载失败等异常情况下才会 reject。
329
- *
330
- * @example
331
- * ```ts
332
- * const error = await validatePropsForm({
333
- * config,
334
- * values,
335
- * appContext: getCurrentInstance()?.appContext,
336
- * services,
337
- * stage: editorService.get('stage'),
338
- * extendState,
339
- * });
340
- * if (error) {
341
- * // 配置不合法,error 为错误文案
342
- * }
343
- * ```
344
- */
345
- var validatePropsForm = ({ config, values, appContext = null, services, stage, extendState, debug, typeMatchValid }) => validateForm({
346
- config,
347
- debug,
348
- typeMatchValid,
349
- initValues: values,
350
- appContext: appContext ? {
351
- ...appContext,
352
- provides: { services }
353
- } : null,
354
- extendState: async (state) => ({
355
- ...await extendState?.(state) || {},
356
- stage,
357
- services
358
- })
359
- });
360
316
  //#endregion
361
- export { advancedTabConfig, arrayOptions, booleanOptions, displayTabConfig, eqOptions, eventTabConfig, fillConfig, getCondOpOptionsByFieldType, numberOptions, removeStyleDisplayConfig, styleTabConfig, validatePropsForm };
317
+ export { advancedTabConfig, arrayOptions, booleanOptions, displayTabConfig, eqOptions, eventTabConfig, fillConfig, getCondOpOptionsByFieldType, numberOptions, removeStyleDisplayConfig, styleTabConfig };
@@ -21,7 +21,7 @@ var stringifyExampleValue = (value) => {
21
21
  }
22
22
  return String(value);
23
23
  };
24
- var MAX_SUGGESTION_OPTIONS = 5;
24
+ var MAX_SUGGESTION_OPTIONS = 20;
25
25
  /**
26
26
  * 生成「请使用以下某一个值:xxx;xxx」形式的参考建议;无可选值时返回空字符串(不追加建议)。
27
27
  */
@@ -5182,7 +5182,7 @@
5182
5182
  }));
5183
5183
  //#endregion
5184
5184
  //#region packages/editor/src/utils/props.ts
5185
- var arrayOptions, eqOptions, numberOptions, booleanOptions, getCondOpOptionsByFieldType, styleTabConfig, eventTabConfig, advancedTabConfig, displayTabConfig, fillConfig, removeStyleDisplayConfig, validatePropsForm;
5185
+ var arrayOptions, eqOptions, numberOptions, booleanOptions, getCondOpOptionsByFieldType, styleTabConfig, eventTabConfig, advancedTabConfig, displayTabConfig, fillConfig, removeStyleDisplayConfig;
5186
5186
  var init_props = __esmMin((() => {
5187
5187
  arrayOptions = [{
5188
5188
  text: "包含",
@@ -5479,21 +5479,6 @@
5479
5479
  })
5480
5480
  };
5481
5481
  });
5482
- validatePropsForm = ({ config, values, appContext = null, services, stage, extendState, debug, typeMatchValid }) => (0, _tmagic_form.validateForm)({
5483
- config,
5484
- debug,
5485
- typeMatchValid,
5486
- initValues: values,
5487
- appContext: appContext ? {
5488
- ...appContext,
5489
- provides: { services }
5490
- } : null,
5491
- extendState: async (state) => ({
5492
- ...await extendState?.(state) || {},
5493
- stage,
5494
- services
5495
- })
5496
- });
5497
5482
  }));
5498
5483
  //#endregion
5499
5484
  //#region packages/editor/src/hooks/use-compare-form.ts
@@ -10807,7 +10792,7 @@
10807
10792
  }
10808
10793
  return String(value);
10809
10794
  };
10810
- var MAX_SUGGESTION_OPTIONS = 5;
10795
+ var MAX_SUGGESTION_OPTIONS = 20;
10811
10796
  /**
10812
10797
  * 生成「请使用以下某一个值:xxx;xxx」形式的参考建议;无可选值时返回空字符串(不追加建议)。
10813
10798
  */
@@ -14840,7 +14825,6 @@
14840
14825
  //#endregion
14841
14826
  //#region packages/editor/src/layouts/props-panel/FormPanel.vue?vue&type=script&setup=true&lang.ts
14842
14827
  init_Icon();
14843
- init_props();
14844
14828
  init_CodeEditor();
14845
14829
  var _hoisted_1$59 = { class: "m-editor-props-form-panel" };
14846
14830
  var FormPanel_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
@@ -14914,14 +14898,18 @@
14914
14898
  return;
14915
14899
  }
14916
14900
  try {
14917
- const error = await validatePropsForm({
14901
+ const error = await (0, _tmagic_form.validateForm)({
14918
14902
  config: props.config,
14919
- values: newValues,
14920
- appContext: internalInstance?.appContext ?? null,
14921
- services,
14922
- stage: stage.value,
14923
14903
  typeMatchValid: true,
14924
- extendState: props.extendState
14904
+ initValues: newValues,
14905
+ appContext: internalInstance?.appContext ? {
14906
+ ...internalInstance?.appContext,
14907
+ provides: { services }
14908
+ } : null,
14909
+ extendState: (state) => {
14910
+ if (configFormRef.value?.formState) return { ...configFormRef.value?.formState || {} };
14911
+ return props.extendState?.(state) || {};
14912
+ }
14925
14913
  });
14926
14914
  if (error) (0, _tmagic_design.tMagicMessage)({
14927
14915
  type: "error",
@@ -25930,7 +25918,6 @@
25930
25918
  exports.useServices = useServices;
25931
25919
  exports.useStage = useStage;
25932
25920
  exports.useWindowRect = useWindowRect;
25933
- exports.validatePropsForm = validatePropsForm;
25934
25921
  exports.warn = warn;
25935
25922
  Object.keys(_tmagic_form).forEach(function(k) {
25936
25923
  if (k !== "default" && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.8.0-beta.15",
2
+ "version": "1.8.0-beta.16",
3
3
  "name": "@tmagic/editor",
4
4
  "type": "module",
5
5
  "sideEffects": [
@@ -58,11 +58,11 @@
58
58
  "moveable": "^0.53.0",
59
59
  "serialize-javascript": "^7.0.0",
60
60
  "sortablejs": "^1.15.6",
61
- "@tmagic/design": "1.8.0-beta.15",
62
- "@tmagic/form": "1.8.0-beta.15",
63
- "@tmagic/table": "1.8.0-beta.15",
64
- "@tmagic/utils": "1.8.0-beta.15",
65
- "@tmagic/stage": "1.8.0-beta.15"
61
+ "@tmagic/design": "1.8.0-beta.16",
62
+ "@tmagic/stage": "1.8.0-beta.16",
63
+ "@tmagic/form": "1.8.0-beta.16",
64
+ "@tmagic/utils": "1.8.0-beta.16",
65
+ "@tmagic/table": "1.8.0-beta.16"
66
66
  },
67
67
  "devDependencies": {
68
68
  "@types/events": "^3.0.3",
@@ -76,7 +76,7 @@
76
76
  "type-fest": "^5.2.0",
77
77
  "typescript": "^6.0.3",
78
78
  "vue": "^3.5.40",
79
- "@tmagic/core": "1.8.0-beta.15"
79
+ "@tmagic/core": "1.8.0-beta.16"
80
80
  },
81
81
  "peerDependenciesMeta": {
82
82
  "typescript": {
@@ -49,14 +49,13 @@ import { Document as DocumentIcon } from '@element-plus/icons-vue';
49
49
 
50
50
  import { TMagicButton, tMagicMessage, TMagicScrollbar } from '@tmagic/design';
51
51
  import type { ContainerChangeEventData, FormConfig, FormState, FormValue } from '@tmagic/form';
52
- import { MForm } from '@tmagic/form';
52
+ import { MForm, validateForm } from '@tmagic/form';
53
53
  import { filterXSS } from '@tmagic/utils';
54
54
 
55
55
  import MIcon from '@editor/components/Icon.vue';
56
56
  import { ENABLE_PROPS_FORM_VALIDATE } from '@editor/editorProps';
57
57
  import { useEditorContentHeight } from '@editor/hooks/use-editor-content-height';
58
58
  import { useServices } from '@editor/hooks/use-services';
59
- import { validatePropsForm } from '@editor/utils/props';
60
59
 
61
60
  import CodeEditor from '../CodeEditor.vue';
62
61
 
@@ -162,14 +161,19 @@ const saveCode = async (values: any) => {
162
161
  // 做一次静默校验(不复用、也不污染页面上正在展示的表单),并将校验结果(错误信息)随提交
163
162
  // 一并抛给上层记录,使源码保存的错误状态与表单编辑保持一致。
164
163
  try {
165
- const error = await validatePropsForm({
164
+ const error = await validateForm({
166
165
  config: props.config,
167
- values: newValues,
168
- appContext: internalInstance?.appContext ?? null,
169
- services,
170
- stage: stage.value,
171
166
  typeMatchValid: true,
172
- extendState: props.extendState,
167
+ initValues: newValues,
168
+ // 将当前组件实例的 provides(含 Editor 顶层的 services / codeOptions 等组件级 provide)
169
+ // 合入 appContext,使临时 MForm 中的编辑器字段组件(DataSourceInput 等)能正常 inject
170
+ appContext: internalInstance?.appContext ? { ...internalInstance?.appContext, provides: { services } } : null,
171
+ extendState: (state) => {
172
+ if (configFormRef.value?.formState) {
173
+ return { ...(configFormRef.value?.formState || {}) };
174
+ }
175
+ return props.extendState?.(state) || {};
176
+ },
173
177
  });
174
178
 
175
179
  if (error) {
@@ -16,9 +16,6 @@
16
16
  * See the License for the specific language governing permissions and
17
17
  * limitations under the License.
18
18
  */
19
-
20
- import type { AppContext } from 'vue';
21
-
22
19
  import {
23
20
  HookType,
24
21
  NODE_CONDS_KEY,
@@ -27,18 +24,7 @@ import {
27
24
  NODE_DISABLE_DATA_SOURCE_KEY,
28
25
  } from '@tmagic/core';
29
26
  import { tMagicMessage } from '@tmagic/design';
30
- import type {
31
- ChildConfig,
32
- DisplayCondsConfig,
33
- FormConfig,
34
- FormState,
35
- FormValue,
36
- TabConfig,
37
- TabPaneConfig,
38
- } from '@tmagic/form';
39
- import { validateForm } from '@tmagic/form';
40
-
41
- import type { Services } from '@editor/type';
27
+ import type { ChildConfig, DisplayCondsConfig, FormConfig, TabConfig, TabPaneConfig } from '@tmagic/form';
42
28
 
43
29
  export const arrayOptions = [
44
30
  { text: '包含', value: 'include' },
@@ -403,86 +389,3 @@ export const removeStyleDisplayConfig = (formConfig: FormConfig): FormConfig =>
403
389
  }),
404
390
  };
405
391
  });
406
-
407
- // #region ValidatePropsFormOptions
408
- /**
409
- * validatePropsForm 参数
410
- */
411
- export interface ValidatePropsFormOptions {
412
- /** 组件属性表单配置 */
413
- config: FormConfig;
414
- /** 待校验的表单值 */
415
- values: FormValue;
416
- /**
417
- * 当前组件实例的 appContext(通常为 `getCurrentInstance()?.appContext`)。
418
- * 会与 services 一并合入临时 MForm 的 appContext,使编辑器字段组件(DataSourceInput 等)能正常 inject。
419
- */
420
- appContext?: AppContext | null;
421
- /** 编辑器服务集合,注入到临时表单的 formState */
422
- services?: Services;
423
- /** stage 实例,注入到临时表单的 formState */
424
- stage?: any;
425
- /** 外部扩展的 formState */
426
- extendState?: (_state: FormState) => Record<string, any> | Promise<Record<string, any>>;
427
- /**
428
- * 调试模式,默认 `true`:以弹层形式可见地渲染表单,点击「确定」才触发校验。
429
- * 置为 `false` 时静默挂载后自动校验。
430
- */
431
- debug?: boolean;
432
- typeMatchValid?: boolean;
433
- }
434
- // #endregion ValidatePropsFormOptions
435
-
436
- /**
437
- * 对一份「组件属性表单配置 + 值」做一次独立的校验,**不复用也不污染页面上正在展示的表单**。
438
- *
439
- * 内部基于 `@tmagic/form` 的 `validateForm` 另建一个独立的 MForm 实例完成校验,并统一处理
440
- * 编辑器场景所需的上下文注入:将当前组件实例的 provides 合入 appContext,并向 formState 注入
441
- * stage / services 及外部扩展状态,保证校验规则依赖的上下文可用。
442
- *
443
- * 常用于源码编辑器保存后,对最新配置做一次校验,并将校验结果(错误信息)随提交一并抛给上层记录,
444
- * 使源码保存的错误状态与表单编辑保持一致。
445
- *
446
- * @returns 校验通过返回空字符串 `''`,否则返回以 `<br>` 拼接的错误文案。
447
- * 仅在初始化超时或挂载失败等异常情况下才会 reject。
448
- *
449
- * @example
450
- * ```ts
451
- * const error = await validatePropsForm({
452
- * config,
453
- * values,
454
- * appContext: getCurrentInstance()?.appContext,
455
- * services,
456
- * stage: editorService.get('stage'),
457
- * extendState,
458
- * });
459
- * if (error) {
460
- * // 配置不合法,error 为错误文案
461
- * }
462
- * ```
463
- */
464
- export const validatePropsForm = ({
465
- config,
466
- values,
467
- appContext = null,
468
- services,
469
- stage,
470
- extendState,
471
- debug,
472
- typeMatchValid,
473
- }: ValidatePropsFormOptions): Promise<string> =>
474
- validateForm({
475
- config,
476
- debug,
477
- typeMatchValid,
478
- initValues: values,
479
- // 将当前组件实例的 provides(含 Editor 顶层的 services / codeOptions 等组件级 provide)
480
- // 合入 appContext,使临时 MForm 中的编辑器字段组件(DataSourceInput 等)能正常 inject
481
- appContext: appContext ? { ...appContext, provides: { services } } : null,
482
- // 与页面表单保持一致:注入 stage/services 及外部扩展状态,保证校验规则依赖的上下文可用
483
- extendState: async (state) => ({
484
- ...((await extendState?.(state)) || {}),
485
- stage,
486
- services,
487
- }),
488
- });
@@ -58,7 +58,7 @@ const stringifyExampleValue = (value: any): string => {
58
58
  };
59
59
 
60
60
  // 参考建议中最多展示的可选值个数,超出以「等」省略。
61
- const MAX_SUGGESTION_OPTIONS = 5;
61
+ const MAX_SUGGESTION_OPTIONS = 20;
62
62
 
63
63
  /**
64
64
  * 生成「请使用以下某一个值:xxx;xxx」形式的参考建议;无可选值时返回空字符串(不追加建议)。
package/types/index.d.ts CHANGED
@@ -3109,70 +3109,6 @@ declare const fillConfig: (config?: FormConfig, {
3109
3109
  * @returns 处理后的表单配置(不修改入参,返回浅拷贝)
3110
3110
  */
3111
3111
  declare const removeStyleDisplayConfig: (formConfig: FormConfig) => FormConfig;
3112
- /**
3113
- * validatePropsForm 参数
3114
- */
3115
- interface ValidatePropsFormOptions {
3116
- /** 组件属性表单配置 */
3117
- config: FormConfig;
3118
- /** 待校验的表单值 */
3119
- values: FormValue;
3120
- /**
3121
- * 当前组件实例的 appContext(通常为 `getCurrentInstance()?.appContext`)。
3122
- * 会与 services 一并合入临时 MForm 的 appContext,使编辑器字段组件(DataSourceInput 等)能正常 inject。
3123
- */
3124
- appContext?: AppContext | null;
3125
- /** 编辑器服务集合,注入到临时表单的 formState */
3126
- services?: Services;
3127
- /** stage 实例,注入到临时表单的 formState */
3128
- stage?: any;
3129
- /** 外部扩展的 formState */
3130
- extendState?: (_state: FormState) => Record<string, any> | Promise<Record<string, any>>;
3131
- /**
3132
- * 调试模式,默认 `true`:以弹层形式可见地渲染表单,点击「确定」才触发校验。
3133
- * 置为 `false` 时静默挂载后自动校验。
3134
- */
3135
- debug?: boolean;
3136
- typeMatchValid?: boolean;
3137
- }
3138
- /**
3139
- * 对一份「组件属性表单配置 + 值」做一次独立的校验,**不复用也不污染页面上正在展示的表单**。
3140
- *
3141
- * 内部基于 `@tmagic/form` 的 `validateForm` 另建一个独立的 MForm 实例完成校验,并统一处理
3142
- * 编辑器场景所需的上下文注入:将当前组件实例的 provides 合入 appContext,并向 formState 注入
3143
- * stage / services 及外部扩展状态,保证校验规则依赖的上下文可用。
3144
- *
3145
- * 常用于源码编辑器保存后,对最新配置做一次校验,并将校验结果(错误信息)随提交一并抛给上层记录,
3146
- * 使源码保存的错误状态与表单编辑保持一致。
3147
- *
3148
- * @returns 校验通过返回空字符串 `''`,否则返回以 `<br>` 拼接的错误文案。
3149
- * 仅在初始化超时或挂载失败等异常情况下才会 reject。
3150
- *
3151
- * @example
3152
- * ```ts
3153
- * const error = await validatePropsForm({
3154
- * config,
3155
- * values,
3156
- * appContext: getCurrentInstance()?.appContext,
3157
- * services,
3158
- * stage: editorService.get('stage'),
3159
- * extendState,
3160
- * });
3161
- * if (error) {
3162
- * // 配置不合法,error 为错误文案
3163
- * }
3164
- * ```
3165
- */
3166
- declare const validatePropsForm: ({
3167
- config,
3168
- values,
3169
- appContext,
3170
- services,
3171
- stage,
3172
- extendState,
3173
- debug,
3174
- typeMatchValid
3175
- }: ValidatePropsFormOptions) => Promise<string>;
3176
3112
  //#endregion
3177
3113
  //#region temp/packages/editor/src/utils/code-block.d.ts
3178
3114
  /**
@@ -3221,7 +3157,7 @@ declare const getCodeBlockFormConfig: (options?: GetCodeBlockFormConfigOptions)
3221
3157
  declare const log: (...args: any[]) => void;
3222
3158
  declare const info: (...args: any[]) => void;
3223
3159
  declare const warn: (...args: any[]) => void;
3224
- declare const debug$1: (...args: any[]) => void;
3160
+ declare const debug: (...args: any[]) => void;
3225
3161
  declare const error: (...args: any[]) => void;
3226
3162
  //#endregion
3227
3163
  //#region temp/packages/editor/src/utils/editor.d.ts
@@ -6906,4 +6842,4 @@ declare const _default$43: {
6906
6842
  install: (app: App, opt?: Partial<EditorInstallOptions | DesignPluginOptions | FormInstallOptions>) => void;
6907
6843
  };
6908
6844
  //#endregion
6909
- export { ALL_COND_OPS, AddMNode, AddPrefixToObject, AsyncAfterHook, AsyncBeforeHook, AsyncHookPlugin, AsyncMethodName, BaseStepValue, BeforeAdd, CODE_DRAFT_STORAGE_KEY, COPY_CODE_STORAGE_KEY, COPY_DS_STORAGE_KEY, COPY_STORAGE_KEY, CanDropInFunction, CanDropInScene, _default as CodeBlockEditor, _default$1 as CodeBlockList, _default$2 as CodeBlockListPanel, CodeBlockListPanelSlots, CodeBlockListSlots, CodeBlockStepValue, CodeDeleteErrorType, CodeDslItem, CodeParamStatement, CodeRelation, _default$3 as CodeSelect, _default$4 as CodeSelectCol, CodeState, ColumnLayout, CombineInfo, CompareCategory, _default$5 as CompareForm, CompareFormBaseProps, CompareFormLoadConfig, CompareFormLoadConfigContext, ComponentGroup, ComponentGroupState, ComponentItem, _default$6 as ComponentListPanel, ComponentListPanelSlots, _default$7 as CondOpSelect, ConfirmAndRevertOptions, _default$8 as ContentMenu, ContentMenuTarget, ContentMenuType, CustomContentMenuFunction, CustomDiffFormOptions, DEFAULT_LEFT_COLUMN_WIDTH, DEFAULT_RIGHT_COLUMN_WIDTH, _default$9 as DataSourceAddButton, _default$10 as DataSourceConfigPanel, _default$11 as DataSourceFieldSelect, _default$12 as DataSourceFields, _default$13 as DataSourceInput, DataSourceListSlots, _default$14 as DataSourceMethodSelect, _default$15 as DataSourceMethods, _default$16 as DataSourceMocks, _default$17 as DataSourceSelect, DataSourceStepValue, DatasourceTypeOption, DepTargetType, DiffDialogPayload, _default$18 as DisplayConds, DragClassification, DragType, DslOpOptions, DslOpWithHistoryIdsResult, EVENT_NAME_VALUE_SEPARATOR, EditorChangeEvent, EditorChangeEventHistoryMeta, EditorChangeItem, EditorEvents, EditorInstallOptions, EditorNodeInfo, EditorSlots, EditorUpdateChangeItem, EventBus, EventBusEvent, EventNameOption, EventNameSelectOption, _default$19 as EventSelect, Fixed2Other, _default$20 as FloatingBox, FrameworkSlots, GetCodeBlockFormConfigOptions, GetColumnWidth, GetConfig, H_GUIDE_LINE_STORAGE_KEY, HistoryBucketConfig, _default$21 as HistoryDiffDialog, HistoryEvents, HistoryGroup, _default$22 as HistoryListBucket, _default$23 as HistoryListBucketTab, HistoryListExtraTab, HistoryOpOptions, HistoryOpOptionsWithChangeRecords, HistoryOpSource, HistoryOpType, HistoryPersistOptions, HistoryRowDescriptor, HistoryState, HistoryStepEntry, HistoryStepType, HistorySteps, _default$24 as Icon, IdleTask, IdleTaskEvents, IsExpandableFunction, KeyBindingCacheItem, KeyBindingCommand, KeyBindingItem, _default$25 as KeyValue, Keys, LEFT_COLUMN_WIDTH_STORAGE_KEY, _default$26 as LayerNodeContent, LayerNodeSlots, LayerNodeStatus, LayerOffset, _default$27 as LayerPanel, LayerPanelSlots, Layout, _default$28 as LayoutContainer, _default$28 as SplitView, ListState, MIN_CENTER_COLUMN_WIDTH, MIN_LEFT_COLUMN_WIDTH, MIN_RIGHT_COLUMN_WIDTH, MenuBarData, MenuButton, MenuComponent, MenuItem, NodeInvalidInfo, NodeInvalidSource, type OnDrag, PROPS_PANEL_WIDTH_STORAGE_KEY, PageBarSortOptions, _default$29 as PageFragmentSelect, PartSortableOptions, PastePosition, PersistedHistoryState, PropsFormConfigFunction, _default$30 as PropsFormPanel, PropsFormValueFunction, _default$31 as PropsPanel, PropsPanelSlots, PropsState, RIGHT_COLUMN_WIDTH_STORAGE_KEY, _default$32 as Resizer, ScrollViewer, ScrollViewerEvent, ScrollViewerSlots, SerializedUndoRedo, Services, SetColumnWidth, SideBarData, SideComponent, SideItem, SideItemKey, SidebarSlots, StageCore, StageOptions, StageOverlayState, StageRect, StageSlots, StepDiffItem, StepExtra, StepValue, StoreState, StoreStateKey, _default$33 as StyleSetter, SyncAfterHook, SyncBeforeHook, SyncHookPlugin, _default$34 as TMagicCodeEditor, _default$35 as TMagicEditor, _default$36 as ToolButton, _default$37 as Tree, _default$38 as TreeNode, TreeNodeData, type TypeMatchValidateContext, UI_SELECT_MODE_EVENT_NAME, UiState, UndoRedo, UseCompareFormReturn, UseHistoryRevertOptions, V_GUIDE_LINE_STORAGE_KEY, ValidatePropsFormOptions, _default$39 as ViewForm, WorkspaceSlots, advancedTabConfig, arrayOptions, beforePaste, booleanOptions, buildChangeRecords, calcAlignCenterStyle, calcLayerTargetIndex, calcMoveStyle, canUsePluginMethods, change2Fixed, classifyDragSources, _default$40 as codeBlockService, collectEventNameOptionValues, collectRelatedNodes, _default$41 as componentListService, confirmHistoryAction, createStackStep, _default$42 as dataSourceService, debug$1 as debug, _default$43 as default, defaultIsExpandable, _default$44 as depService, describeRevertStep, describeStepForRevert, deserializeStacks, designPlugin, detectStackOpType, detectTargetId, detectTargetName, displayTabConfig, editorNodeMergeCustomizer, _default$45 as editorService, editorTypeMatchRules, eqOptions, error, eventTabConfig, _default$46 as eventsService, fillConfig, fixNodeLeft, fixNodePosition, formPlugin, generatePageName, generatePageNameByApp, getAddParent, getCascaderOptionsFromFields, getCodeBlockFormConfig, getCompActionAllowedValues, getCompActionOptions, getCondOpOptionsByFieldType, getDefaultConfig, getDisplayField, getEditorConfig, getEventNameAllowedValues, getEventNameOptions, getFieldType, getFormConfig, getFormValue, getGuideLineFromCache, getInitPositionStyle, getLastPushedHistoryIds, getNodeIndex, getOrCreateStack, getPageFragmentList, getPageList, getPageNameList, getPositionInContainer, getRelativeStyle, _default$47 as historyService, idbDelete, idbGet, idbSet, info, isEventNameCheckStrictly, isGlobalFlat, isIncludeDataSource, isIndexedDBSupported, _default$48 as keybindingService, _default$49 as loadMonaco, log, markStackSaved, mergeSteps, moveItemsInContainer, normalizeCompActionValue, numberOptions, openIndexedDB, _default$50 as propsService, removeStyleDisplayConfig, resolveFieldByPath, resolveSelectedNode, serializeConfig, serializeStacks, setChildrenLayout, setEditorConfig, setLayout, _default$51 as stageOverlayService, _default$52 as storageService, styleTabConfig, tablePlugin, toggleFixedPosition, _default$53 as uiService, undoFloor, updateStatus, useCodeBlockEdit, useCompareForm, useEditorContentHeight, useFilter, useFloatBox, useGetSo, useHistoryRevert, useNextFloatBoxPosition, useNodeStatus, useServices, useStage, useWindowRect, validatePropsForm, warn };
6845
+ export { ALL_COND_OPS, AddMNode, AddPrefixToObject, AsyncAfterHook, AsyncBeforeHook, AsyncHookPlugin, AsyncMethodName, BaseStepValue, BeforeAdd, CODE_DRAFT_STORAGE_KEY, COPY_CODE_STORAGE_KEY, COPY_DS_STORAGE_KEY, COPY_STORAGE_KEY, CanDropInFunction, CanDropInScene, _default as CodeBlockEditor, _default$1 as CodeBlockList, _default$2 as CodeBlockListPanel, CodeBlockListPanelSlots, CodeBlockListSlots, CodeBlockStepValue, CodeDeleteErrorType, CodeDslItem, CodeParamStatement, CodeRelation, _default$3 as CodeSelect, _default$4 as CodeSelectCol, CodeState, ColumnLayout, CombineInfo, CompareCategory, _default$5 as CompareForm, CompareFormBaseProps, CompareFormLoadConfig, CompareFormLoadConfigContext, ComponentGroup, ComponentGroupState, ComponentItem, _default$6 as ComponentListPanel, ComponentListPanelSlots, _default$7 as CondOpSelect, ConfirmAndRevertOptions, _default$8 as ContentMenu, ContentMenuTarget, ContentMenuType, CustomContentMenuFunction, CustomDiffFormOptions, DEFAULT_LEFT_COLUMN_WIDTH, DEFAULT_RIGHT_COLUMN_WIDTH, _default$9 as DataSourceAddButton, _default$10 as DataSourceConfigPanel, _default$11 as DataSourceFieldSelect, _default$12 as DataSourceFields, _default$13 as DataSourceInput, DataSourceListSlots, _default$14 as DataSourceMethodSelect, _default$15 as DataSourceMethods, _default$16 as DataSourceMocks, _default$17 as DataSourceSelect, DataSourceStepValue, DatasourceTypeOption, DepTargetType, DiffDialogPayload, _default$18 as DisplayConds, DragClassification, DragType, DslOpOptions, DslOpWithHistoryIdsResult, EVENT_NAME_VALUE_SEPARATOR, EditorChangeEvent, EditorChangeEventHistoryMeta, EditorChangeItem, EditorEvents, EditorInstallOptions, EditorNodeInfo, EditorSlots, EditorUpdateChangeItem, EventBus, EventBusEvent, EventNameOption, EventNameSelectOption, _default$19 as EventSelect, Fixed2Other, _default$20 as FloatingBox, FrameworkSlots, GetCodeBlockFormConfigOptions, GetColumnWidth, GetConfig, H_GUIDE_LINE_STORAGE_KEY, HistoryBucketConfig, _default$21 as HistoryDiffDialog, HistoryEvents, HistoryGroup, _default$22 as HistoryListBucket, _default$23 as HistoryListBucketTab, HistoryListExtraTab, HistoryOpOptions, HistoryOpOptionsWithChangeRecords, HistoryOpSource, HistoryOpType, HistoryPersistOptions, HistoryRowDescriptor, HistoryState, HistoryStepEntry, HistoryStepType, HistorySteps, _default$24 as Icon, IdleTask, IdleTaskEvents, IsExpandableFunction, KeyBindingCacheItem, KeyBindingCommand, KeyBindingItem, _default$25 as KeyValue, Keys, LEFT_COLUMN_WIDTH_STORAGE_KEY, _default$26 as LayerNodeContent, LayerNodeSlots, LayerNodeStatus, LayerOffset, _default$27 as LayerPanel, LayerPanelSlots, Layout, _default$28 as LayoutContainer, _default$28 as SplitView, ListState, MIN_CENTER_COLUMN_WIDTH, MIN_LEFT_COLUMN_WIDTH, MIN_RIGHT_COLUMN_WIDTH, MenuBarData, MenuButton, MenuComponent, MenuItem, NodeInvalidInfo, NodeInvalidSource, type OnDrag, PROPS_PANEL_WIDTH_STORAGE_KEY, PageBarSortOptions, _default$29 as PageFragmentSelect, PartSortableOptions, PastePosition, PersistedHistoryState, PropsFormConfigFunction, _default$30 as PropsFormPanel, PropsFormValueFunction, _default$31 as PropsPanel, PropsPanelSlots, PropsState, RIGHT_COLUMN_WIDTH_STORAGE_KEY, _default$32 as Resizer, ScrollViewer, ScrollViewerEvent, ScrollViewerSlots, SerializedUndoRedo, Services, SetColumnWidth, SideBarData, SideComponent, SideItem, SideItemKey, SidebarSlots, StageCore, StageOptions, StageOverlayState, StageRect, StageSlots, StepDiffItem, StepExtra, StepValue, StoreState, StoreStateKey, _default$33 as StyleSetter, SyncAfterHook, SyncBeforeHook, SyncHookPlugin, _default$34 as TMagicCodeEditor, _default$35 as TMagicEditor, _default$36 as ToolButton, _default$37 as Tree, _default$38 as TreeNode, TreeNodeData, type TypeMatchValidateContext, UI_SELECT_MODE_EVENT_NAME, UiState, UndoRedo, UseCompareFormReturn, UseHistoryRevertOptions, V_GUIDE_LINE_STORAGE_KEY, _default$39 as ViewForm, WorkspaceSlots, advancedTabConfig, arrayOptions, beforePaste, booleanOptions, buildChangeRecords, calcAlignCenterStyle, calcLayerTargetIndex, calcMoveStyle, canUsePluginMethods, change2Fixed, classifyDragSources, _default$40 as codeBlockService, collectEventNameOptionValues, collectRelatedNodes, _default$41 as componentListService, confirmHistoryAction, createStackStep, _default$42 as dataSourceService, debug, _default$43 as default, defaultIsExpandable, _default$44 as depService, describeRevertStep, describeStepForRevert, deserializeStacks, designPlugin, detectStackOpType, detectTargetId, detectTargetName, displayTabConfig, editorNodeMergeCustomizer, _default$45 as editorService, editorTypeMatchRules, eqOptions, error, eventTabConfig, _default$46 as eventsService, fillConfig, fixNodeLeft, fixNodePosition, formPlugin, generatePageName, generatePageNameByApp, getAddParent, getCascaderOptionsFromFields, getCodeBlockFormConfig, getCompActionAllowedValues, getCompActionOptions, getCondOpOptionsByFieldType, getDefaultConfig, getDisplayField, getEditorConfig, getEventNameAllowedValues, getEventNameOptions, getFieldType, getFormConfig, getFormValue, getGuideLineFromCache, getInitPositionStyle, getLastPushedHistoryIds, getNodeIndex, getOrCreateStack, getPageFragmentList, getPageList, getPageNameList, getPositionInContainer, getRelativeStyle, _default$47 as historyService, idbDelete, idbGet, idbSet, info, isEventNameCheckStrictly, isGlobalFlat, isIncludeDataSource, isIndexedDBSupported, _default$48 as keybindingService, _default$49 as loadMonaco, log, markStackSaved, mergeSteps, moveItemsInContainer, normalizeCompActionValue, numberOptions, openIndexedDB, _default$50 as propsService, removeStyleDisplayConfig, resolveFieldByPath, resolveSelectedNode, serializeConfig, serializeStacks, setChildrenLayout, setEditorConfig, setLayout, _default$51 as stageOverlayService, _default$52 as storageService, styleTabConfig, tablePlugin, toggleFixedPosition, _default$53 as uiService, undoFloor, updateStatus, useCodeBlockEdit, useCompareForm, useEditorContentHeight, useFilter, useFloatBox, useGetSo, useHistoryRevert, useNextFloatBoxPosition, useNodeStatus, useServices, useStage, useWindowRect, warn };