@gct-paas/word 0.1.45 → 0.1.46

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 (81) hide show
  1. package/README.md +32 -5
  2. package/dist/capabilities/panel/schema/registry.d.ts +1 -1
  3. package/dist/core/cursor/CursorController.d.ts +9 -4
  4. package/dist/core/cursor/composables/useCursorSelection.d.ts +6 -0
  5. package/dist/core/cursor/hit/types.d.ts +2 -0
  6. package/dist/core/cursor/layout/baseMeta.d.ts +2 -0
  7. package/dist/core/cursor/logic/index.d.ts +1 -0
  8. package/dist/core/cursor/logic/resolveCursorState.d.ts +24 -0
  9. package/dist/core/cursor/types/cursor.d.ts +4 -2
  10. package/dist/core/data/DataManager.d.ts +46 -3
  11. package/dist/core/data/data-path-suffix.d.ts +2 -0
  12. package/dist/core/data/enrichers/build-field-enrichers.d.ts +4 -3
  13. package/dist/core/data/enrichers/hyperlink-enricher.d.ts +8 -0
  14. package/dist/core/index.d.ts +2 -1
  15. package/dist/core/layout/handlers/RunHandlerBase.d.ts +13 -0
  16. package/dist/core/layout/handlers/TextHandler.d.ts +2 -6
  17. package/dist/core/layout/handlers/fields/FieldBaseHandler.d.ts +9 -7
  18. package/dist/core/layout/handlers/pageWidgets/TimeDiffHandler.d.ts +17 -0
  19. package/dist/core/layout/handlers/pageWidgets/WidgetBaseHandler.d.ts +6 -15
  20. package/dist/core/layout/handlers/pageWidgets/index.d.ts +1 -0
  21. package/dist/core/view/base/LayoutNode.d.ts +0 -2
  22. package/dist/core/view/runs/ImageWidget.d.ts +4 -9
  23. package/dist/core/view/runs/TextRun.d.ts +3 -2
  24. package/dist/core/view/runs/TextWidget.d.ts +6 -11
  25. package/dist/core/view/types/index.d.ts +9 -0
  26. package/dist/core/widget/field-hyperlink.d.ts +12 -0
  27. package/dist/core/widget/widget-state.d.ts +27 -1
  28. package/dist/domain/constants/enum.d.ts +22 -0
  29. package/dist/domain/field/field-props-schema-type.d.ts +7 -0
  30. package/dist/domain/field/field-type.d.ts +8 -0
  31. package/dist/domain/paper-widget/paper-widget-props-schema-type.d.ts +1 -1
  32. package/dist/domain/paper-widget/paper-widget-type.d.ts +3 -1
  33. package/dist/domain/widget/component-type.d.ts +1 -1
  34. package/dist/index.es.js +3169 -3300
  35. package/dist/runtime/_register_/composables/panel/useActivePanel.d.ts +1 -1
  36. package/dist/runtime/interface/render.d.ts +2 -0
  37. package/dist/runtime/renderer/dropdowns/components/tables/composables/useTableDropdown.d.ts +1 -0
  38. package/dist/runtime/renderer/dropdowns/components/tables/strategy/selectStrategy.d.ts +2 -0
  39. package/dist/sdk/doc-runtime/device-link/resolve-field-focus-context.d.ts +15 -0
  40. package/dist/sdk/doc-runtime/device-link/useDeviceFieldFocusBridge.d.ts +7 -0
  41. package/dist/sdk/doc-runtime/device-link/useFormTmplAndModelInit.d.ts +15 -0
  42. package/dist/sdk/doc-runtime/device-link/useFormTmplConfig.d.ts +10 -0
  43. package/dist/sdk/doc-runtime/factories/document-initializer.d.ts +16 -0
  44. package/dist/sdk/doc-runtime/factories/useDocumentFactory.d.ts +2 -0
  45. package/dist/sdk/doc-runtime/useWord.d.ts +11 -5
  46. package/dist/sdk/engine/index.d.ts +1 -0
  47. package/dist/sdk/plugins/index.d.ts +2 -1
  48. package/dist/sdk/plugins/register-panel-schemas.d.ts +9 -0
  49. package/dist/sdk/types/form-tmpl-config.types.d.ts +123 -0
  50. package/dist/sdk/types/index.d.ts +12 -4
  51. package/dist/sdk/vue/layouts/doc-design-layout.vue.d.ts +2 -5
  52. package/dist/suites/edhr/field-manifest/trace/order-no-manifest.d.ts +2 -0
  53. package/dist/suites/edhr/field-manifest/trace/related-lot-no-manifest.d.ts +2 -0
  54. package/dist/suites/edhr/panel-schema/index.d.ts +0 -5
  55. package/dist/suites/edhr/paper-widget-manifest/basic/timediff-manifest.d.ts +2 -0
  56. package/dist/utils/TriggerUtil.d.ts +1 -1
  57. package/dist/utils/func/core.d.ts +9 -0
  58. package/dist/utils/func/render.d.ts +2 -0
  59. package/dist/word.css +104 -415
  60. package/package.json +1 -1
  61. package/dist/sdk/vue/layouts/doc-design-layout.d.ts +0 -7
  62. package/dist/suites/edhr/panel-schema/data-load/DataLoadPanel.vue.d.ts +0 -2
  63. package/dist/suites/edhr/panel-schema/data-load/ai-tmpl/ai-tmpl-editor.vue.d.ts +0 -6
  64. package/dist/suites/edhr/panel-schema/data-load/ai-tmpl/identify-param-card.vue.d.ts +0 -14
  65. package/dist/suites/edhr/panel-schema/data-load/common/add-tmpl-btn.vue.d.ts +0 -16
  66. package/dist/suites/edhr/panel-schema/data-load/common/decimal-slider.vue.d.ts +0 -21
  67. package/dist/suites/edhr/panel-schema/data-load/common/form-field-select.vue.d.ts +0 -19
  68. package/dist/suites/edhr/panel-schema/data-load/common/icon-tooltip.vue.d.ts +0 -10
  69. package/dist/suites/edhr/panel-schema/data-load/common/remove-icon.vue.d.ts +0 -7
  70. package/dist/suites/edhr/panel-schema/data-load/common/tmpl-card.vue.d.ts +0 -25
  71. package/dist/suites/edhr/panel-schema/data-load/data-load.basic.d.ts +0 -5
  72. package/dist/suites/edhr/panel-schema/data-load/device-tmpl/device-field-status.vue.d.ts +0 -9
  73. package/dist/suites/edhr/panel-schema/data-load/device-tmpl/device-tmpl-editor.vue.d.ts +0 -6
  74. package/dist/suites/edhr/panel-schema/data-load/device-tmpl/params-item-card.vue.d.ts +0 -30
  75. package/dist/suites/edhr/panel-schema/data-load/hooks/device-link/constant.d.ts +0 -44
  76. package/dist/suites/edhr/panel-schema/data-load/hooks/device-link/controller.d.ts +0 -38
  77. package/dist/suites/edhr/panel-schema/data-load/hooks/device-link/index.d.ts +0 -3
  78. package/dist/suites/edhr/panel-schema/data-load/hooks/device-link/types.d.ts +0 -157
  79. package/dist/suites/edhr/panel-schema/data-load/hooks/form-tmpl-config/form-tmpl-config-controller.d.ts +0 -67
  80. package/dist/suites/edhr/panel-schema/data-load/hooks/form-tmpl-config/index.d.ts +0 -2
  81. package/dist/suites/edhr/panel-schema/data-load/hooks/form-tmpl-config/use-form-tmpl-config.d.ts +0 -10
@@ -12,5 +12,5 @@ export declare function useActivePanel(): {
12
12
  } | null | undefined>;
13
13
  widget: import('vue').ComputedRef<any>;
14
14
  schemaKey: import('vue').ComputedRef<string | null>;
15
- schema: import('vue').ComputedRef<import('../../../../capabilities/panel/schema/types').PanelSchema | null | undefined>;
15
+ schema: import('vue').ComputedRef<import('../../../..').PanelSchema | null | undefined>;
16
16
  };
@@ -8,6 +8,7 @@ import { FieldMeta } from '../../capabilities/model-field-runtime';
8
8
  */
9
9
  export declare function getDefaultQueryIdsByFieldType(payload: {
10
10
  materialNumber?: string;
11
+ mainRelatedLotNumber?: string;
11
12
  productId?: string;
12
13
  routingOperation?: string;
13
14
  manufacturingOrderId?: string;
@@ -15,6 +16,7 @@ export declare function getDefaultQueryIdsByFieldType(payload: {
15
16
  defaultOrgId?: string;
16
17
  }): {
17
18
  material_no: string | undefined;
19
+ related_lot_no: string | undefined;
18
20
  product: string | undefined;
19
21
  routing_operation: string | undefined;
20
22
  mfg_order: string | undefined;
@@ -11,4 +11,5 @@ export declare function useTableDropdown(props: any): {
11
11
  message: import('vue').ComputedRef<string>;
12
12
  enableLinkage: import('vue').ComputedRef<boolean>;
13
13
  clearValuePath: import('vue').ComputedRef<string | undefined>;
14
+ allowManualInput: import('vue').ComputedRef<boolean>;
14
15
  };
@@ -8,6 +8,8 @@ export interface SelectStrategy {
8
8
  linkFieldId?: string;
9
9
  /** 数据联动,切换分类进行清空原因数据 */
10
10
  clearFieldId?: string;
11
+ /** 搜索无匹配时允许将输入关键字作为值写入 */
12
+ allowManualInput?: boolean;
11
13
  buildQuery?: (keyword: string, isLinkQuery?: boolean) => {
12
14
  queryData?: Record<string, any>;
13
15
  exp?: string;
@@ -0,0 +1,15 @@
1
+ import { Doc } from '../../../core';
2
+ /** 字段获得/失去焦点时的上下文 */
3
+ export interface FieldFocusContext {
4
+ modelId: string;
5
+ modelFieldKey: string;
6
+ runtimeValuePath: string;
7
+ field: string;
8
+ modelKey: string;
9
+ subModelKey?: string;
10
+ realRowIndex?: number;
11
+ }
12
+ /**
13
+ * 根据 focusModelId 解析字段焦点上下文;无绑定字段时返回 null。
14
+ */
15
+ export declare function resolveFieldFocusContext(doc: Doc, modelId: string): FieldFocusContext | null;
@@ -0,0 +1,7 @@
1
+ import { IFormTmplConfigController } from '../../types/form-tmpl-config.types';
2
+ import { DocumentFactory } from '../factories/useDocumentFactory';
3
+ /**
4
+ * 监听 focusModelId 变化,驱动设备互联焦点 state 与缓存回填。
5
+ * init 由外部通过 useFormTmplConfigInit 按 tmplId 负责,不在此处调用。
6
+ */
7
+ export declare function useDeviceFieldFocusBridge(factory: DocumentFactory, formTmplConfig: IFormTmplConfigController): void;
@@ -0,0 +1,15 @@
1
+ import { ShallowRef } from 'vue';
2
+ import { DocController } from '../../types';
3
+ /**
4
+ * 监听 docController 就绪,自动按 tmplId 初始化 form-tmpl、form-model 配置,避免重复 init。
5
+ *
6
+ * - 文档未就绪时不触发
7
+ * - 同一 tmplId 不会重复 init(换文档/requestId 变化时若 tmplId 变了则重新 init)
8
+ * - 返回 stop,可在组件卸载时手动停止监听(onUnmounted 时调用)
9
+ */
10
+ export declare function useFormTmplAndModelInit(controller: ShallowRef<DocController | null>, options: {
11
+ formTmplConfigController?: any;
12
+ formModelConfigController?: any;
13
+ }): {
14
+ stop: () => void;
15
+ };
@@ -0,0 +1,10 @@
1
+ import { IFormTmplConfigController } from '../../types/form-tmpl-config.types';
2
+ /**
3
+ * 表单模板里的设备互联模板配置(provide / inject)。
4
+ * 实例由 useWord 注入主工程 controller,word 包内不再内置默认实现。
5
+ */
6
+ export declare function useFormTmplConfig(): {
7
+ provideController: (c: IFormTmplConfigController) => IFormTmplConfigController;
8
+ injectController: () => IFormTmplConfigController;
9
+ tryInjectController: () => IFormTmplConfigController | undefined;
10
+ };
@@ -2,10 +2,26 @@ import { Doc } from '../../../core';
2
2
  import { DocInfo } from '../../types';
3
3
  import { DocModel } from '../../../core/model';
4
4
  import { IDocPayload, IDocProps, Execute } from './useDocumentFactory';
5
+ import { DesignSuiteContext } from '../../../runtime/_register_/context/DesignSuiteContext';
5
6
  export interface InitializedDocument {
6
7
  doc: Doc;
7
8
  docInfo: DocInfo;
8
9
  }
10
+ /**
11
+ * 全量替换 rawData 后补跑 enrich(超链接 _href_ 等)。
12
+ * setRawData 仅 emit('$'),不会按字段路径触发 PostChangePipeline。
13
+ */
14
+ export declare function runDocumentPostLoadEnrichFlush(doc: Doc): Promise<void>;
15
+ /**
16
+ * setRawData 会清空 depGraph / fieldRuntimeConfigByPath,已挂载的 overlay 不会再次 initDependency。
17
+ * 在 refreshData、controller.setRawData 等全量换数后调用,与首次挂载 overlay 行为对齐。
18
+ */
19
+ export declare function reinitializeDocumentFieldDependencies(doc: Doc, ctx: DesignSuiteContext): Promise<void>;
20
+ /**
21
+ * 全量 setRawData 后的统一收尾:依赖重算 → enrich(超链接 _href_ 等)→ 排版。
22
+ * 用于 refreshData、controller.setRawData(overlay 已挂载,不会再次 initDependency)。
23
+ */
24
+ export declare function finalizeAfterRawDataReplace(doc: Doc, ctx: DesignSuiteContext): Promise<void>;
9
25
  /** 从 Doc 实例提取响应式页面快照(与 layout 同步,供 docInfo ref 驱动 Vue) */
10
26
  export declare function snapshotDocInfo(docInst?: Doc): DocInfo;
11
27
  export declare function initializeDocumentEngine(props: IDocProps, payload: IDocPayload, result: Execute): Promise<InitializedDocument>;
@@ -73,6 +73,8 @@ export interface DocumentFactory {
73
73
  * 适用于保存后需要同步服务端最新实例状态与填报数据的场景。
74
74
  */
75
75
  refreshData(): Promise<void>;
76
+ /** 设计套件上下文(依赖注册、enrich manifest 等) */
77
+ ctx: DesignSuiteContext;
76
78
  }
77
79
  export interface Execute {
78
80
  /** 文档实例id或者文档模板id */
@@ -3,14 +3,20 @@ import { WordRuntime, UseWordProps, UseWordOptions } from '../types';
3
3
  * Word 文档运行时入口
4
4
  * 返回值中的 controller 为异步就绪:首次渲染时可能为 null,待文档初始化后可用。
5
5
  * 业务侧调用 controller 方法前,需通过可选链或监听方式判断其是否已就绪。
6
+ * form-tmpl controller 由外部 new 后传入,word 内部只负责 provide 给数据加载面板、
7
+ * 以及驱动设备互联焦点桥接(focusModelId → deviceConnector → dataManager)。
6
8
  *
7
9
  * @returns WordRuntime - 运行时对象
8
10
  * @example
9
- * const { controller } = useWord(
10
- * { requestId: 'xxx' },
11
- * { factoryType: 'template', suiteKey: 'edhr', modelKey: 'fm_xxx' },
11
+ * const formTmpl = new FormTmplConfigController();
12
+ * const { controller, formTmplConfigController } = useWord(
13
+ * { requestId: instanceId },
14
+ * {
15
+ * factoryType: 'instance',
16
+ * suiteKey: 'edhr',
17
+ * modelKey: 'fm_xxx',
18
+ * formTmplConfigController: formTmpl,
19
+ * },
12
20
  * );
13
- * await controller.value?.validate();
14
- * controller.value?.reload();
15
21
  */
16
22
  export declare function useWord(props: UseWordProps, options: UseWordOptions): WordRuntime;
@@ -12,3 +12,4 @@ export { useDocumentFactory } from '../doc-runtime/factories/useDocumentFactory'
12
12
  export { useDocRuntimeProvider } from '../doc-runtime/composables/useDocRuntimeProvider';
13
13
  export { useDocOperations } from '../doc-runtime/composables/useDocOperations';
14
14
  export { useDocController } from '../doc-runtime/composables/useDocController';
15
+ export { useFormTmplAndModelInit } from '../doc-runtime/device-link/useFormTmplAndModelInit';
@@ -12,4 +12,5 @@ import { WordSuitePlugin } from '../types';
12
12
  export declare function registerSuite(plugin: WordSuitePlugin): void;
13
13
  export type { WordSuitePlugin } from '../types';
14
14
  export { edhrSuitePlugin } from '../../suites/edhr';
15
- export { useFormTmplConfig } from '../../suites/edhr/panel-schema/data-load/hooks/form-tmpl-config';
15
+ export { registerPanelSchemas } from './register-panel-schemas';
16
+ export type { PanelSchema, PanelSchemaKey, PanelSchemaMap } from './register-panel-schemas';
@@ -0,0 +1,9 @@
1
+ import { PanelSchemaMap } from '../../capabilities/panel/schema/types';
2
+ /**
3
+ * 向指定 suite 注册属性面板 schema
4
+ * @param suiteKey 套件 key
5
+ * @param schemas 面板 schema 映射,key 需与 panel-router 解析结果一致
6
+ * @param override 是否覆盖已注册的同名 schema
7
+ */
8
+ export declare function registerPanelSchemas(suiteKey: string, schemas: PanelSchemaMap, override?: boolean): void;
9
+ export type { PanelSchema, PanelSchemaKey, PanelSchemaMap, } from '../../capabilities/panel/schema/types';
@@ -0,0 +1,123 @@
1
+ interface CacheFocusData {
2
+ /** 唯一key */
3
+ uniqueKey: string;
4
+ /** 关联字段 */
5
+ fieldKeys: string[];
6
+ /** 缓存值 */
7
+ value: any;
8
+ }
9
+ /**
10
+ *
11
+ */
12
+ /** 设备连接器实例接口 */
13
+ export interface IDeviceConnector {
14
+ state: {
15
+ /** mqtt取消订阅回调 */
16
+ unMqttTopicMap: Record<string, Function | undefined>;
17
+ /** 当前聚焦的字段key */
18
+ focusFieldKey: string | null;
19
+ /** 当前聚焦的子表字段的行 */
20
+ focusSubRowIndex?: number | null;
21
+ /** 缓存的需要聚焦才修改的值 */
22
+ cacheFieldData: Record<string, CacheFocusData>;
23
+ };
24
+ /** 初始化连接器 */
25
+ init(): void;
26
+ /**
27
+ * 取消订阅mqtt
28
+ * @param id
29
+ */
30
+ unsubscribeMqtt(id: string): void;
31
+ /** 清空数据 */
32
+ clear(): void;
33
+ /**
34
+ * 添加缓存的聚焦时填充的字段数据
35
+ * @param params
36
+ */
37
+ addCachedFocusValue(params: CacheFocusData): void;
38
+ /**
39
+ * 判断字段是否存在缓存聚焦值
40
+ * @param field
41
+ */
42
+ hasCachedFocusValue(field: string): boolean;
43
+ /**
44
+ * 获取缓存聚焦值
45
+ * @param field
46
+ */
47
+ getCachedFocusValue(field: string): any;
48
+ }
49
+ export interface IDeviceLinkTmplUtil {
50
+ /** 创建模板 */
51
+ createTmpl(type: unknown): unknown;
52
+ /** 计算 AI OCR 完整提示词 */
53
+ calcEntirePrompt(tmpl: unknown): string;
54
+ /** 平台设备互联对象转换 */
55
+ transfer2DeviceLink(data: unknown): unknown;
56
+ /** 通过设备 id 获取设备互联信息 */
57
+ getDeviceLink(deviceId: string): Promise<unknown | undefined>;
58
+ /** 初始化设备字段与表单字段映射 */
59
+ initDevice2FormFieldMap(deviceLink: unknown): unknown[];
60
+ }
61
+ /**
62
+ * 与主工程 form-tmpl-config 对齐的契约(word 包仅保留类型,实现由主工程注入)。
63
+ */
64
+ export interface IFormTmplConfigController {
65
+ TmplUtil: IDeviceLinkTmplUtil;
66
+ /** 设备连接器 */
67
+ deviceConnector: IDeviceConnector;
68
+ /** 存储响应式变量 */
69
+ state: {
70
+ /** 模板列表 */
71
+ tmpls: unknown[];
72
+ /** 运行中的模板,目前是 mqtt 模板 */
73
+ runningTmpls: unknown[];
74
+ /** IOT 权限 */
75
+ IOTPermission: boolean;
76
+ /** OCR 权限 */
77
+ OCRPermission: boolean;
78
+ };
79
+ /** 表单模板 id */
80
+ tmplId: string;
81
+ /** 是否手动模式,手动模式不触发接口 */
82
+ isManual: boolean;
83
+ /**
84
+ * 初始化权限
85
+ */
86
+ initPermissions(): Promise<void>;
87
+ /**
88
+ * 初始化
89
+ */
90
+ init(opts: {
91
+ tmplId: string;
92
+ isManual?: boolean;
93
+ }): Promise<void>;
94
+ /**
95
+ * 设置配置字符串
96
+ */
97
+ setConfigStr(configStr?: string): void;
98
+ /**
99
+ * 获取配置字符串
100
+ */
101
+ getConfigStr(): string;
102
+ /**
103
+ * 保存数据
104
+ */
105
+ save(): Promise<void>;
106
+ /**
107
+ * 刷新数据
108
+ */
109
+ refresh(): Promise<void>;
110
+ /**
111
+ * 添加或更新模板
112
+ */
113
+ createOrUpdate(tmpl: unknown): Promise<void>;
114
+ /**
115
+ * 缓存运行中的模板
116
+ */
117
+ cacheRunningTmpl(tmpl: unknown): void;
118
+ /**
119
+ * 断开连接
120
+ */
121
+ disconnect(tmpl: unknown): void;
122
+ }
123
+ export {};
@@ -5,7 +5,7 @@ import { Page } from '../../core';
5
5
  import { DocBaselineContext, DocUnsavedChanges, DocOperations, DocGetUnsavedChangesOptions } from '../doc-runtime/composables/useDocOperations';
6
6
  import { OnlineFormInstanceResponse, OnlineFormTmplResponse } from '@gct-paas/api/apaas';
7
7
  import { FieldChangeItem } from '../../runtime/interface/change-diff';
8
- import { FormTmplConfigController } from '../../suites/edhr/panel-schema/data-load/hooks/form-tmpl-config';
8
+ import { IFormTmplConfigController } from './form-tmpl-config.types';
9
9
  import { DesignerValidationResult } from './designer-validation';
10
10
  export type { DocUnsavedChanges, DocGetUnsavedChangesOptions, } from '../doc-runtime/composables/useDocOperations';
11
11
  export type { DesignerValidationError, DesignerValidationResult, DesignerValidationSource, } from './designer-validation';
@@ -77,8 +77,11 @@ export interface DocControllerMethods extends DocOperations {
77
77
  * 未传 formData 时使用当前 rawData。
78
78
  */
79
79
  getSubmitFormData(formData?: Record<string, any>): Record<string, any>;
80
- /** 设置当前文档整个原始数据 */
81
- setRawData(data: Record<string, any>, defaultDataMap?: Record<string, any>): void;
80
+ /**
81
+ * 全量替换填报数据,并重算依赖、超链接 enrich、排版。
82
+ * 与 refreshData 的数据收尾一致(不含重新请求接口、不重置未保存基线)。
83
+ */
84
+ setRawData(data: Record<string, any>, defaultDataMap?: Record<string, any>): Promise<void>;
82
85
  /** 根据 jsonpath 批量设置文档数据 */
83
86
  setMultiple(updates: Record<string, any>): boolean;
84
87
  /** 获取当前文档的所有子表信息 */
@@ -175,7 +178,6 @@ export interface WordRuntime {
175
178
  * - 通过该对象调用命令、读取页面与模式状态、访问只读查询 API。
176
179
  */
177
180
  controller: ShallowRef<DocController | null>;
178
- formTmplConfigController: FormTmplConfigController;
179
181
  /** 文档响应式页面信息(用于驱动 canvas 渲染) */
180
182
  docInfo: Ref<DocInfo>;
181
183
  }
@@ -220,6 +222,12 @@ export interface UseWordOptions {
220
222
  onLooperAutoSave?: (payload?: {
221
223
  changed?: boolean;
222
224
  }) => void;
225
+ /**
226
+ * 主工程 form-tmpl 控制器。
227
+ * 外部 new 后传入,word 内部 provide 给数据加载面板使用。
228
+ * 多实例时每个 useWord 传入独立实例,避免 MQTT / 缓存串实例。
229
+ */
230
+ formTmplConfigController?: IFormTmplConfigController;
223
231
  /** 扩展字段 - 兼容其他未明确定义的负载参数 */
224
232
  [key: string]: any;
225
233
  }
@@ -1,9 +1,6 @@
1
- import { DocDesignLayoutProps } from './doc-design-layout';
2
- declare const _default: import('vue').DefineComponent<DocDesignLayoutProps, {
1
+ declare const _default: import('vue').DefineComponent<{}, {
3
2
  onImportTemplate: () => void;
4
- }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<DocDesignLayoutProps> & Readonly<{}>, {
5
- IOTPermission: boolean;
6
- }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
3
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
7
4
  layoutRef: HTMLDivElement;
8
5
  scrollRef: HTMLElement;
9
6
  }, HTMLDivElement>;
@@ -0,0 +1,2 @@
1
+ import { FieldManifest } from '../../../../capabilities/field-manifest';
2
+ export declare const manifest: FieldManifest;
@@ -0,0 +1,2 @@
1
+ import { FieldManifest } from '../../../../capabilities/field-manifest';
2
+ export declare const manifest: FieldManifest;
@@ -93,11 +93,6 @@ export declare function registryPanelSchemas(): {
93
93
  title: string;
94
94
  render: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
95
95
  };
96
- 'data-load.basic': {
97
- key: string;
98
- title: string;
99
- render: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, HTMLDivElement>;
100
- };
101
96
  'paper-header-footer.basic': {
102
97
  key: string;
103
98
  title: string;
@@ -0,0 +1,2 @@
1
+ import { PaperWidgetManifest } from '../../../../capabilities/paper-widget-manifest';
2
+ export declare const manifest: Omit<PaperWidgetManifest, 'renderers'>;
@@ -1,4 +1,4 @@
1
- type TriggerName = 'OPEN_DATA_INIT_DATASOURCE_FORM_MODEL_MODAL' | 'OPEN_DATA_INIT_DATASOURCE_INPUT_PARAMS_MODAL' | 'OPEN_DATA_INIT_DATASOURCE_OUTPUT_PARAMS_MODAL' | 'OPEN_DATA_LOAD_DEVICE_INTERCONNECTION_ADD_PARAM_MAPPING_MODAL';
1
+ export type TriggerName = 'OPEN_DATA_INIT_DATASOURCE_FORM_MODEL_MODAL' | 'OPEN_DATA_INIT_DATASOURCE_INPUT_PARAMS_MODAL' | 'OPEN_DATA_INIT_DATASOURCE_OUTPUT_PARAMS_MODAL' | 'OPEN_FIELD_HYPERLINK_MODAL';
2
2
  export type TriggerHandler = (name: TriggerName, options?: any) => Promise<any>;
3
3
  interface TriggerUtilHandlers {
4
4
  handle?: TriggerHandler;
@@ -61,6 +61,15 @@ export declare function replacePathIndexPlaceholders(params: {
61
61
  * // $.a[2].b
62
62
  */
63
63
  export declare function replacePathIndexPlaceholder(refPath: string | number | undefined, templatePath: string, placeholder?: string): string;
64
+ /**
65
+ * 判断运行时路径是否匹配 valuePath 模板(支持 [n] / [n_x] / [n_y] 占位符)
66
+ *
67
+ * @example
68
+ * runtimePathMatchesTemplate('$.items[n].name', '$.items[2].name') // true
69
+ */
70
+ export declare function runtimePathMatchesTemplate(template: string, runtimePath: string): boolean;
71
+ /** 由 valuePath 模板生成 enricher 用的 path 匹配函数 */
72
+ export declare function createValuePathMatcher(template: string): (runtimePath: string) => boolean;
64
73
  export interface ParsedValuePath {
65
74
  /** 原始路径 */
66
75
  raw: string;
@@ -6,6 +6,8 @@ export declare function transformSourceDataList(data: any[], dict?: {}): {
6
6
  _OPCT: any;
7
7
  [key: string]: any;
8
8
  }[];
9
+ /** 深度剔除 rawData 中的超链接派生字段(*_href_) */
10
+ export declare function stripHrefDerivedData(value: any): any;
9
11
  /** 转换formState */
10
12
  export declare function conversionFormState(payload: {
11
13
  /** 主从关联字段列表 */