@nocobase/flow-engine 2.1.0-beta.9 → 2.2.0-alpha.1
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/lib/FlowContextProvider.d.ts +5 -1
- package/lib/FlowContextProvider.js +9 -2
- package/lib/components/FieldModelRenderer.js +2 -2
- package/lib/components/FlowModelRenderer.d.ts +3 -1
- package/lib/components/FlowModelRenderer.js +12 -6
- package/lib/components/FormItem.d.ts +6 -0
- package/lib/components/FormItem.js +11 -3
- package/lib/components/MobilePopup.js +6 -5
- package/lib/components/dnd/gridDragPlanner.d.ts +59 -2
- package/lib/components/dnd/gridDragPlanner.js +607 -19
- package/lib/components/dnd/index.d.ts +31 -2
- package/lib/components/dnd/index.js +244 -23
- package/lib/components/settings/wrappers/component/SelectWithTitle.d.ts +2 -1
- package/lib/components/settings/wrappers/component/SelectWithTitle.js +14 -12
- package/lib/components/settings/wrappers/contextual/DefaultSettingsIcon.d.ts +3 -0
- package/lib/components/settings/wrappers/contextual/DefaultSettingsIcon.js +152 -42
- package/lib/components/settings/wrappers/contextual/FlowsFloatContextMenu.d.ts +23 -43
- package/lib/components/settings/wrappers/contextual/FlowsFloatContextMenu.js +352 -295
- package/lib/components/settings/wrappers/contextual/useFloatToolbarPortal.d.ts +36 -0
- package/lib/components/settings/wrappers/contextual/useFloatToolbarPortal.js +274 -0
- package/lib/components/settings/wrappers/contextual/useFloatToolbarVisibility.d.ts +30 -0
- package/lib/components/settings/wrappers/contextual/useFloatToolbarVisibility.js +315 -0
- package/lib/components/subModel/AddSubModelButton.js +12 -1
- package/lib/components/subModel/LazyDropdown.js +301 -52
- package/lib/components/subModel/index.d.ts +1 -0
- package/lib/components/subModel/index.js +19 -0
- package/lib/components/subModel/utils.d.ts +2 -1
- package/lib/components/subModel/utils.js +15 -5
- package/lib/components/variables/VariableHybridInput.d.ts +27 -0
- package/lib/components/variables/VariableHybridInput.js +499 -0
- package/lib/components/variables/index.d.ts +2 -0
- package/lib/components/variables/index.js +3 -0
- package/lib/data-source/index.d.ts +84 -0
- package/lib/data-source/index.js +269 -7
- package/lib/executor/FlowExecutor.js +6 -3
- package/lib/flow-registry/DetachedFlowRegistry.d.ts +21 -0
- package/lib/flow-registry/DetachedFlowRegistry.js +80 -0
- package/lib/flow-registry/index.d.ts +1 -0
- package/lib/flow-registry/index.js +3 -1
- package/lib/flowContext.d.ts +9 -1
- package/lib/flowContext.js +77 -6
- package/lib/flowEngine.d.ts +136 -4
- package/lib/flowEngine.js +429 -51
- package/lib/flowI18n.js +2 -1
- package/lib/flowSettings.d.ts +14 -6
- package/lib/flowSettings.js +34 -6
- package/lib/index.d.ts +2 -0
- package/lib/index.js +7 -0
- package/lib/lazy-helper.d.ts +14 -0
- package/lib/lazy-helper.js +71 -0
- package/lib/locale/en-US.json +1 -0
- package/lib/locale/index.d.ts +2 -0
- package/lib/locale/zh-CN.json +1 -0
- package/lib/models/DisplayItemModel.d.ts +1 -1
- package/lib/models/EditableItemModel.d.ts +1 -1
- package/lib/models/FilterableItemModel.d.ts +1 -1
- package/lib/models/flowModel.d.ts +13 -10
- package/lib/models/flowModel.js +126 -34
- package/lib/provider.js +38 -23
- package/lib/reactive/observer.js +46 -16
- package/lib/runjs-context/contexts/FormJSFieldItemRunJSContext.js +4 -3
- package/lib/runjs-context/contexts/JSBlockRunJSContext.js +4 -15
- package/lib/runjs-context/contexts/JSColumnRunJSContext.js +5 -2
- package/lib/runjs-context/contexts/JSEditableFieldRunJSContext.js +5 -8
- package/lib/runjs-context/contexts/JSFieldRunJSContext.js +4 -3
- package/lib/runjs-context/contexts/JSItemRunJSContext.js +4 -3
- package/lib/runjs-context/contexts/base.js +464 -29
- package/lib/runjs-context/contexts/elementDoc.d.ts +11 -0
- package/lib/runjs-context/contexts/elementDoc.js +152 -0
- package/lib/runjs-context/setup.js +1 -0
- package/lib/runjs-context/snippets/index.js +13 -2
- package/lib/runjs-context/snippets/scene/detail/set-field-style.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/detail/set-field-style.snippet.js +50 -0
- package/lib/runjs-context/snippets/scene/table/set-cell-style.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/table/set-cell-style.snippet.js +54 -0
- package/lib/types.d.ts +50 -2
- package/lib/types.js +1 -0
- package/lib/utils/createCollectionContextMeta.js +6 -2
- package/lib/utils/index.d.ts +3 -2
- package/lib/utils/index.js +7 -0
- package/lib/utils/loadedPageCache.d.ts +24 -0
- package/lib/utils/loadedPageCache.js +139 -0
- package/lib/utils/parsePathnameToViewParams.d.ts +5 -1
- package/lib/utils/parsePathnameToViewParams.js +28 -4
- package/lib/utils/randomId.d.ts +39 -0
- package/lib/utils/randomId.js +45 -0
- package/lib/utils/runjsTemplateCompat.js +1 -1
- package/lib/utils/runjsValue.js +41 -11
- package/lib/utils/schema-utils.d.ts +7 -1
- package/lib/utils/schema-utils.js +19 -0
- package/lib/views/FlowView.d.ts +7 -1
- package/lib/views/FlowView.js +11 -1
- package/lib/views/PageComponent.js +8 -6
- package/lib/views/ViewNavigation.d.ts +12 -2
- package/lib/views/ViewNavigation.js +28 -9
- package/lib/views/createViewMeta.js +114 -50
- package/lib/views/inheritLayoutContext.d.ts +10 -0
- package/lib/views/inheritLayoutContext.js +50 -0
- package/lib/views/runViewBeforeClose.d.ts +10 -0
- package/lib/views/runViewBeforeClose.js +45 -0
- package/lib/views/useDialog.d.ts +2 -1
- package/lib/views/useDialog.js +12 -3
- package/lib/views/useDrawer.d.ts +2 -1
- package/lib/views/useDrawer.js +12 -3
- package/lib/views/usePage.d.ts +5 -11
- package/lib/views/usePage.js +304 -144
- package/package.json +5 -4
- package/src/FlowContextProvider.tsx +9 -1
- package/src/__tests__/createViewMeta.popup.test.ts +115 -1
- package/src/__tests__/flow-engine.test.ts +166 -0
- package/src/__tests__/flowContext.test.ts +105 -1
- package/src/__tests__/flowEngine.modelLoaders.test.ts +245 -0
- package/src/__tests__/flowEngine.moveModel.test.ts +81 -1
- package/src/__tests__/flowEngine.removeModel.test.ts +47 -3
- package/src/__tests__/flowSettings.test.ts +94 -15
- package/src/__tests__/objectVariable.test.ts +24 -0
- package/src/__tests__/provider.test.tsx +24 -2
- package/src/__tests__/renderHiddenInConfig.test.tsx +6 -6
- package/src/__tests__/runjsContext.test.ts +21 -0
- package/src/__tests__/runjsContextImplementations.test.ts +9 -2
- package/src/__tests__/runjsContextRuntime.test.ts +2 -0
- package/src/__tests__/runjsLocales.test.ts +6 -5
- package/src/__tests__/runjsSnippets.test.ts +21 -0
- package/src/__tests__/viewScopedFlowEngine.test.ts +136 -3
- package/src/components/FieldModelRenderer.tsx +2 -1
- package/src/components/FlowModelRenderer.tsx +18 -6
- package/src/components/FormItem.tsx +7 -1
- package/src/components/MobilePopup.tsx +4 -2
- package/src/components/__tests__/FlowModelRenderer.test.tsx +65 -2
- package/src/components/__tests__/FormItem.test.tsx +25 -0
- package/src/components/__tests__/dnd.test.ts +44 -0
- package/src/components/__tests__/flow-model-render-error-fallback.test.tsx +20 -10
- package/src/components/__tests__/gridDragPlanner.test.ts +472 -5
- package/src/components/dnd/__tests__/DndProvider.test.tsx +98 -0
- package/src/components/dnd/gridDragPlanner.ts +750 -17
- package/src/components/dnd/index.tsx +305 -28
- package/src/components/settings/wrappers/component/SelectWithTitle.tsx +21 -9
- package/src/components/settings/wrappers/contextual/DefaultSettingsIcon.tsx +178 -48
- package/src/components/settings/wrappers/contextual/FlowsFloatContextMenu.tsx +487 -440
- package/src/components/settings/wrappers/contextual/__tests__/DefaultSettingsIcon.test.tsx +344 -8
- package/src/components/settings/wrappers/contextual/__tests__/FlowsFloatContextMenu.test.tsx +778 -0
- package/src/components/settings/wrappers/contextual/useFloatToolbarPortal.ts +360 -0
- package/src/components/settings/wrappers/contextual/useFloatToolbarVisibility.ts +361 -0
- package/src/components/subModel/AddSubModelButton.tsx +16 -2
- package/src/components/subModel/LazyDropdown.tsx +341 -56
- package/src/components/subModel/__tests__/AddSubModelButton.test.tsx +524 -38
- package/src/components/subModel/__tests__/utils.test.ts +24 -0
- package/src/components/subModel/index.ts +1 -0
- package/src/components/subModel/utils.ts +13 -2
- package/src/components/variables/VariableHybridInput.tsx +531 -0
- package/src/components/variables/index.ts +2 -0
- package/src/data-source/__tests__/collection.test.ts +41 -2
- package/src/data-source/__tests__/index.test.ts +69 -2
- package/src/data-source/index.ts +332 -8
- package/src/executor/FlowExecutor.ts +6 -3
- package/src/executor/__tests__/flowExecutor.test.ts +57 -0
- package/src/flow-registry/DetachedFlowRegistry.ts +46 -0
- package/src/flow-registry/__tests__/detachedFlowRegistry.test.ts +47 -0
- package/src/flow-registry/index.ts +1 -0
- package/src/flowContext.ts +85 -6
- package/src/flowEngine.ts +484 -45
- package/src/flowI18n.ts +2 -1
- package/src/flowSettings.ts +40 -6
- package/src/index.ts +2 -0
- package/src/lazy-helper.tsx +57 -0
- package/src/locale/en-US.json +1 -0
- package/src/locale/zh-CN.json +1 -0
- package/src/models/DisplayItemModel.tsx +1 -1
- package/src/models/EditableItemModel.tsx +1 -1
- package/src/models/FilterableItemModel.tsx +1 -1
- package/src/models/__tests__/flowEngine.resolveUse.test.ts +0 -15
- package/src/models/__tests__/flowModel.test.ts +65 -37
- package/src/models/flowModel.tsx +184 -65
- package/src/provider.tsx +41 -25
- package/src/reactive/__tests__/observer.test.tsx +82 -0
- package/src/reactive/observer.tsx +87 -25
- package/src/runjs-context/contexts/FormJSFieldItemRunJSContext.ts +4 -3
- package/src/runjs-context/contexts/JSBlockRunJSContext.ts +4 -15
- package/src/runjs-context/contexts/JSColumnRunJSContext.ts +4 -2
- package/src/runjs-context/contexts/JSEditableFieldRunJSContext.ts +5 -9
- package/src/runjs-context/contexts/JSFieldRunJSContext.ts +4 -3
- package/src/runjs-context/contexts/JSItemRunJSContext.ts +4 -3
- package/src/runjs-context/contexts/base.ts +467 -31
- package/src/runjs-context/contexts/elementDoc.ts +130 -0
- package/src/runjs-context/setup.ts +1 -0
- package/src/runjs-context/snippets/index.ts +12 -1
- package/src/runjs-context/snippets/scene/detail/set-field-style.snippet.ts +30 -0
- package/src/runjs-context/snippets/scene/table/set-cell-style.snippet.ts +34 -0
- package/src/types.ts +62 -0
- package/src/utils/__tests__/createCollectionContextMeta.test.ts +48 -0
- package/src/utils/__tests__/parsePathnameToViewParams.test.ts +21 -0
- package/src/utils/__tests__/runjsValue.test.ts +11 -0
- package/src/utils/__tests__/utils.test.ts +62 -0
- package/src/utils/createCollectionContextMeta.ts +6 -2
- package/src/utils/index.ts +5 -1
- package/src/utils/loadedPageCache.ts +147 -0
- package/src/utils/parsePathnameToViewParams.ts +45 -5
- package/src/utils/randomId.ts +48 -0
- package/src/utils/runjsTemplateCompat.ts +1 -1
- package/src/utils/runjsValue.ts +50 -11
- package/src/utils/schema-utils.ts +30 -1
- package/src/views/FlowView.tsx +22 -2
- package/src/views/PageComponent.tsx +7 -4
- package/src/views/ViewNavigation.ts +46 -9
- package/src/views/__tests__/FlowView.usePage.test.tsx +243 -3
- package/src/views/__tests__/ViewNavigation.test.ts +52 -0
- package/src/views/__tests__/inheritLayoutContext.test.ts +53 -0
- package/src/views/__tests__/runViewBeforeClose.test.ts +30 -0
- package/src/views/__tests__/useDialog.closeDestroy.test.tsx +12 -12
- package/src/views/createViewMeta.ts +106 -34
- package/src/views/inheritLayoutContext.ts +26 -0
- package/src/views/runViewBeforeClose.ts +19 -0
- package/src/views/useDialog.tsx +13 -3
- package/src/views/useDrawer.tsx +13 -3
- package/src/views/usePage.tsx +367 -180
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is part of the NocoBase (R) project.
|
|
3
|
+
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
+
* Authors: NocoBase Team.
|
|
5
|
+
*
|
|
6
|
+
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
+
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
var __defProp = Object.defineProperty;
|
|
11
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
12
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
13
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
14
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
15
|
+
var __export = (target, all) => {
|
|
16
|
+
for (var name in all)
|
|
17
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
18
|
+
};
|
|
19
|
+
var __copyProps = (to, from, except, desc) => {
|
|
20
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
21
|
+
for (let key of __getOwnPropNames(from))
|
|
22
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
23
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
24
|
+
}
|
|
25
|
+
return to;
|
|
26
|
+
};
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
var elementDoc_exports = {};
|
|
29
|
+
__export(elementDoc_exports, {
|
|
30
|
+
createElementPropertyDoc: () => createElementPropertyDoc,
|
|
31
|
+
createZhCNElementPropertyDoc: () => createZhCNElementPropertyDoc
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(elementDoc_exports);
|
|
34
|
+
const elementProperties = {
|
|
35
|
+
innerHTML: "Sanitized inner HTML string.",
|
|
36
|
+
outerHTML: "Sanitized outer HTML string.",
|
|
37
|
+
textContent: "Text content.",
|
|
38
|
+
style: "Inline style declaration.",
|
|
39
|
+
classList: "DOMTokenList for CSS classes.",
|
|
40
|
+
appendChild: {
|
|
41
|
+
type: "function",
|
|
42
|
+
description: "Append a DOM node or text.",
|
|
43
|
+
detail: "(child: Node | string) => void",
|
|
44
|
+
completion: { insertText: `ctx.element.appendChild('text')` }
|
|
45
|
+
},
|
|
46
|
+
setAttribute: {
|
|
47
|
+
type: "function",
|
|
48
|
+
description: "Set an HTML attribute.",
|
|
49
|
+
detail: "(name: string, value: string) => void",
|
|
50
|
+
completion: { insertText: `ctx.element.setAttribute('data-key', 'value')` }
|
|
51
|
+
},
|
|
52
|
+
getAttribute: {
|
|
53
|
+
type: "function",
|
|
54
|
+
description: "Read an HTML attribute.",
|
|
55
|
+
detail: "(name: string) => string | null",
|
|
56
|
+
completion: { insertText: `ctx.element.getAttribute('data-key')` }
|
|
57
|
+
},
|
|
58
|
+
querySelector: {
|
|
59
|
+
type: "function",
|
|
60
|
+
description: "Find the first matching descendant.",
|
|
61
|
+
detail: "(selectors: string) => Element | null",
|
|
62
|
+
completion: { insertText: `ctx.element.querySelector('.selector')` }
|
|
63
|
+
},
|
|
64
|
+
querySelectorAll: {
|
|
65
|
+
type: "function",
|
|
66
|
+
description: "Find all matching descendants.",
|
|
67
|
+
detail: "(selectors: string) => NodeListOf<Element>",
|
|
68
|
+
completion: { insertText: `ctx.element.querySelectorAll('.selector')` }
|
|
69
|
+
},
|
|
70
|
+
addEventListener: {
|
|
71
|
+
type: "function",
|
|
72
|
+
description: "Attach an event listener to the element.",
|
|
73
|
+
detail: "(type: string, listener: EventListener) => void",
|
|
74
|
+
completion: { insertText: `ctx.element.addEventListener('click', (event) => {})` }
|
|
75
|
+
},
|
|
76
|
+
removeEventListener: {
|
|
77
|
+
type: "function",
|
|
78
|
+
description: "Remove an event listener from the element.",
|
|
79
|
+
detail: "(type: string, listener: EventListener) => void",
|
|
80
|
+
completion: { insertText: `ctx.element.removeEventListener('click', handler)` }
|
|
81
|
+
}
|
|
82
|
+
};
|
|
83
|
+
const zhCNElementProperties = {
|
|
84
|
+
innerHTML: "\u5DF2\u6D88\u6BD2\u7684 innerHTML \u5B57\u7B26\u4E32\u3002",
|
|
85
|
+
outerHTML: "\u5DF2\u6D88\u6BD2\u7684 outerHTML \u5B57\u7B26\u4E32\u3002",
|
|
86
|
+
textContent: "\u6587\u672C\u5185\u5BB9\u3002",
|
|
87
|
+
style: "\u5185\u8054\u6837\u5F0F\u58F0\u660E\u3002",
|
|
88
|
+
classList: "CSS class \u5217\u8868\u3002",
|
|
89
|
+
appendChild: {
|
|
90
|
+
type: "function",
|
|
91
|
+
description: "\u8FFD\u52A0 DOM \u8282\u70B9\u6216\u6587\u672C\u3002",
|
|
92
|
+
detail: "(child: Node | string) => void",
|
|
93
|
+
completion: { insertText: `ctx.element.appendChild('text')` }
|
|
94
|
+
},
|
|
95
|
+
setAttribute: {
|
|
96
|
+
type: "function",
|
|
97
|
+
description: "\u8BBE\u7F6E HTML \u5C5E\u6027\u3002",
|
|
98
|
+
detail: "(name: string, value: string) => void",
|
|
99
|
+
completion: { insertText: `ctx.element.setAttribute('data-key', 'value')` }
|
|
100
|
+
},
|
|
101
|
+
getAttribute: {
|
|
102
|
+
type: "function",
|
|
103
|
+
description: "\u8BFB\u53D6 HTML \u5C5E\u6027\u3002",
|
|
104
|
+
detail: "(name: string) => string | null",
|
|
105
|
+
completion: { insertText: `ctx.element.getAttribute('data-key')` }
|
|
106
|
+
},
|
|
107
|
+
querySelector: {
|
|
108
|
+
type: "function",
|
|
109
|
+
description: "\u67E5\u8BE2\u7B2C\u4E00\u4E2A\u5339\u914D\u7684\u540E\u4EE3\u5143\u7D20\u3002",
|
|
110
|
+
detail: "(selectors: string) => Element | null",
|
|
111
|
+
completion: { insertText: `ctx.element.querySelector('.selector')` }
|
|
112
|
+
},
|
|
113
|
+
querySelectorAll: {
|
|
114
|
+
type: "function",
|
|
115
|
+
description: "\u67E5\u8BE2\u6240\u6709\u5339\u914D\u7684\u540E\u4EE3\u5143\u7D20\u3002",
|
|
116
|
+
detail: "(selectors: string) => NodeListOf<Element>",
|
|
117
|
+
completion: { insertText: `ctx.element.querySelectorAll('.selector')` }
|
|
118
|
+
},
|
|
119
|
+
addEventListener: {
|
|
120
|
+
type: "function",
|
|
121
|
+
description: "\u7ED9\u5143\u7D20\u6DFB\u52A0\u4E8B\u4EF6\u76D1\u542C\u3002",
|
|
122
|
+
detail: "(type: string, listener: EventListener) => void",
|
|
123
|
+
completion: { insertText: `ctx.element.addEventListener('click', (event) => {})` }
|
|
124
|
+
},
|
|
125
|
+
removeEventListener: {
|
|
126
|
+
type: "function",
|
|
127
|
+
description: "\u79FB\u9664\u5143\u7D20\u4E8B\u4EF6\u76D1\u542C\u3002",
|
|
128
|
+
detail: "(type: string, listener: EventListener) => void",
|
|
129
|
+
completion: { insertText: `ctx.element.removeEventListener('click', handler)` }
|
|
130
|
+
}
|
|
131
|
+
};
|
|
132
|
+
function createElementPropertyDoc(description = "Current DOM container for this RunJS context. Usually an ElementProxy.") {
|
|
133
|
+
return {
|
|
134
|
+
description,
|
|
135
|
+
detail: "HTMLElement | ElementProxy",
|
|
136
|
+
properties: elementProperties
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
__name(createElementPropertyDoc, "createElementPropertyDoc");
|
|
140
|
+
function createZhCNElementPropertyDoc(description = "\u5F53\u524D RunJS \u4E0A\u4E0B\u6587\u7684 DOM \u5BB9\u5668\uFF0C\u901A\u5E38\u4E3A ElementProxy\u3002") {
|
|
141
|
+
return {
|
|
142
|
+
description,
|
|
143
|
+
detail: "HTMLElement | ElementProxy",
|
|
144
|
+
properties: zhCNElementProperties
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
__name(createZhCNElementPropertyDoc, "createZhCNElementPropertyDoc");
|
|
148
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
149
|
+
0 && (module.exports = {
|
|
150
|
+
createElementPropertyDoc,
|
|
151
|
+
createZhCNElementPropertyDoc
|
|
152
|
+
});
|
|
@@ -73,6 +73,7 @@ async function setupRunJSContexts() {
|
|
|
73
73
|
import_registry.RunJSContextRegistry.register(version, "JSFieldModel", JSFieldRunJSContext, { scenes: ["detail"] });
|
|
74
74
|
import_registry.RunJSContextRegistry.register(version, "JSEditableFieldModel", JSEditableFieldRunJSContext, { scenes: ["form"] });
|
|
75
75
|
import_registry.RunJSContextRegistry.register(version, "JSItemModel", JSItemRunJSContext, { scenes: ["form"] });
|
|
76
|
+
import_registry.RunJSContextRegistry.register(version, "JSItemActionModel", JSItemRunJSContext, { scenes: ["table"] });
|
|
76
77
|
import_registry.RunJSContextRegistry.register(version, "JSColumnModel", JSColumnRunJSContext, { scenes: ["table"] });
|
|
77
78
|
import_registry.RunJSContextRegistry.register(version, "FormJSFieldItemModel", FormJSFieldItemRunJSContext, { scenes: ["form"] });
|
|
78
79
|
import_registry.RunJSContextRegistry.register(version, "JSRecordActionModel", JSRecordActionRunJSContext, { scenes: ["table"] });
|
|
@@ -81,6 +81,7 @@ const snippets = {
|
|
|
81
81
|
"scene/detail/status-tag": /* @__PURE__ */ __name(() => import("./scene/detail/status-tag.snippet"), "scene/detail/status-tag"),
|
|
82
82
|
"scene/detail/relative-time": /* @__PURE__ */ __name(() => import("./scene/detail/relative-time.snippet"), "scene/detail/relative-time"),
|
|
83
83
|
"scene/detail/percentage-bar": /* @__PURE__ */ __name(() => import("./scene/detail/percentage-bar.snippet"), "scene/detail/percentage-bar"),
|
|
84
|
+
"scene/detail/set-field-style": /* @__PURE__ */ __name(() => import("./scene/detail/set-field-style.snippet"), "scene/detail/set-field-style"),
|
|
84
85
|
// scene/form
|
|
85
86
|
"scene/form/render-basic": /* @__PURE__ */ __name(() => import("./scene/form/render-basic.snippet"), "scene/form/render-basic"),
|
|
86
87
|
"scene/form/set-field-value": /* @__PURE__ */ __name(() => import("./scene/form/set-field-value.snippet"), "scene/form/set-field-value"),
|
|
@@ -98,7 +99,8 @@ const snippets = {
|
|
|
98
99
|
"scene/table/collection-selected-count": /* @__PURE__ */ __name(() => import("./scene/table/collection-selected-count.snippet"), "scene/table/collection-selected-count"),
|
|
99
100
|
"scene/table/iterate-selected-rows": /* @__PURE__ */ __name(() => import("./scene/table/iterate-selected-rows.snippet"), "scene/table/iterate-selected-rows"),
|
|
100
101
|
"scene/table/destroy-selected": /* @__PURE__ */ __name(() => import("./scene/table/destroy-selected.snippet"), "scene/table/destroy-selected"),
|
|
101
|
-
"scene/table/export-selected-json": /* @__PURE__ */ __name(() => import("./scene/table/export-selected-json.snippet"), "scene/table/export-selected-json")
|
|
102
|
+
"scene/table/export-selected-json": /* @__PURE__ */ __name(() => import("./scene/table/export-selected-json.snippet"), "scene/table/export-selected-json"),
|
|
103
|
+
"scene/table/set-cell-style": /* @__PURE__ */ __name(() => import("./scene/table/set-cell-style.snippet"), "scene/table/set-cell-style")
|
|
102
104
|
};
|
|
103
105
|
var snippets_default = snippets;
|
|
104
106
|
function registerRunJSSnippet(ref, loader, options) {
|
|
@@ -131,10 +133,19 @@ function normalizeScenes(def, key) {
|
|
|
131
133
|
return [];
|
|
132
134
|
}
|
|
133
135
|
__name(normalizeScenes, "normalizeScenes");
|
|
136
|
+
function normalizeSceneGroup(scene) {
|
|
137
|
+
const mapping = {
|
|
138
|
+
detailFieldEvent: "detail",
|
|
139
|
+
tableFieldEvent: "table",
|
|
140
|
+
formFieldEvent: "form"
|
|
141
|
+
};
|
|
142
|
+
return mapping[scene] || scene;
|
|
143
|
+
}
|
|
144
|
+
__name(normalizeSceneGroup, "normalizeSceneGroup");
|
|
134
145
|
function computeGroups(def, key) {
|
|
135
146
|
const scenes = normalizeScenes(def, key);
|
|
136
147
|
if (scenes.length) {
|
|
137
|
-
return scenes.map((scene) => `scene/${scene}`);
|
|
148
|
+
return Array.from(new Set(scenes.map((scene) => `scene/${normalizeSceneGroup(scene)}`)));
|
|
138
149
|
}
|
|
139
150
|
const parts = key.split("/");
|
|
140
151
|
if (!parts.length) return [];
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is part of the NocoBase (R) project.
|
|
3
|
+
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
+
* Authors: NocoBase Team.
|
|
5
|
+
*
|
|
6
|
+
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
+
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
+
*/
|
|
9
|
+
import type { SnippetModule } from '../../types';
|
|
10
|
+
declare const snippet: SnippetModule;
|
|
11
|
+
export default snippet;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is part of the NocoBase (R) project.
|
|
3
|
+
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
+
* Authors: NocoBase Team.
|
|
5
|
+
*
|
|
6
|
+
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
+
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
var __defProp = Object.defineProperty;
|
|
11
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
12
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
13
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
14
|
+
var __export = (target, all) => {
|
|
15
|
+
for (var name in all)
|
|
16
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
17
|
+
};
|
|
18
|
+
var __copyProps = (to, from, except, desc) => {
|
|
19
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
20
|
+
for (let key of __getOwnPropNames(from))
|
|
21
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
22
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
23
|
+
}
|
|
24
|
+
return to;
|
|
25
|
+
};
|
|
26
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
27
|
+
var set_field_style_snippet_exports = {};
|
|
28
|
+
__export(set_field_style_snippet_exports, {
|
|
29
|
+
default: () => set_field_style_snippet_default
|
|
30
|
+
});
|
|
31
|
+
module.exports = __toCommonJS(set_field_style_snippet_exports);
|
|
32
|
+
const snippet = {
|
|
33
|
+
contexts: ["*"],
|
|
34
|
+
scenes: ["detailFieldEvent", "formFieldEvent"],
|
|
35
|
+
prefix: "sn-item-style",
|
|
36
|
+
label: "Set form item/details item style",
|
|
37
|
+
description: "Customize form item and details item container styles",
|
|
38
|
+
locales: {
|
|
39
|
+
"zh-CN": {
|
|
40
|
+
label: "\u8BBE\u7F6E\u8868\u5355\u9879/\u8BE6\u60C5\u9879\u6837\u5F0F",
|
|
41
|
+
description: "\u81EA\u5B9A\u4E49\u8868\u5355\u9879\u548C\u8BE6\u60C5\u9879\u5BB9\u5668\u6837\u5F0F"
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
content: `
|
|
45
|
+
ctx.model.props.style = {
|
|
46
|
+
background: 'red',
|
|
47
|
+
};
|
|
48
|
+
`
|
|
49
|
+
};
|
|
50
|
+
var set_field_style_snippet_default = snippet;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is part of the NocoBase (R) project.
|
|
3
|
+
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
+
* Authors: NocoBase Team.
|
|
5
|
+
*
|
|
6
|
+
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
+
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
+
*/
|
|
9
|
+
import type { SnippetModule } from '../../types';
|
|
10
|
+
declare const snippet: SnippetModule;
|
|
11
|
+
export default snippet;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is part of the NocoBase (R) project.
|
|
3
|
+
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
+
* Authors: NocoBase Team.
|
|
5
|
+
*
|
|
6
|
+
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
+
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
var __defProp = Object.defineProperty;
|
|
11
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
12
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
13
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
14
|
+
var __export = (target, all) => {
|
|
15
|
+
for (var name in all)
|
|
16
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
17
|
+
};
|
|
18
|
+
var __copyProps = (to, from, except, desc) => {
|
|
19
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
20
|
+
for (let key of __getOwnPropNames(from))
|
|
21
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
22
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
23
|
+
}
|
|
24
|
+
return to;
|
|
25
|
+
};
|
|
26
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
27
|
+
var set_cell_style_snippet_exports = {};
|
|
28
|
+
__export(set_cell_style_snippet_exports, {
|
|
29
|
+
default: () => set_cell_style_snippet_default
|
|
30
|
+
});
|
|
31
|
+
module.exports = __toCommonJS(set_cell_style_snippet_exports);
|
|
32
|
+
const snippet = {
|
|
33
|
+
contexts: ["*"],
|
|
34
|
+
scenes: ["tableFieldEvent"],
|
|
35
|
+
prefix: "sn-table-cell-style",
|
|
36
|
+
label: "Set table cell style",
|
|
37
|
+
description: "Customize table field cell styles with onCell",
|
|
38
|
+
locales: {
|
|
39
|
+
"zh-CN": {
|
|
40
|
+
label: "\u8868\u683C\u5B57\u6BB5\u6837\u5F0F\u8BBE\u7F6E",
|
|
41
|
+
description: "\u901A\u8FC7 onCell \u81EA\u5B9A\u4E49\u8868\u683C\u5B57\u6BB5\u5355\u5143\u683C\u6837\u5F0F"
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
content: `
|
|
45
|
+
ctx.model.props.onCell = (record, rowIndex) => {
|
|
46
|
+
return {
|
|
47
|
+
style: {
|
|
48
|
+
background: 'red',
|
|
49
|
+
},
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
`
|
|
53
|
+
};
|
|
54
|
+
var set_cell_style_snippet_default = snippet;
|
package/lib/types.d.ts
CHANGED
|
@@ -120,7 +120,9 @@ export declare enum ActionScene {
|
|
|
120
120
|
/** 按钮级联动规则可用 */
|
|
121
121
|
ACTION_LINKAGE_RULES = 5,
|
|
122
122
|
/** 动态事件流可用 */
|
|
123
|
-
DYNAMIC_EVENT_FLOW = 6
|
|
123
|
+
DYNAMIC_EVENT_FLOW = 6,
|
|
124
|
+
/** 菜单项联动规则可用 */
|
|
125
|
+
MENU_LINKAGE_RULES = 7
|
|
124
126
|
}
|
|
125
127
|
/**
|
|
126
128
|
* Defines a reusable action with generic model type support.
|
|
@@ -177,7 +179,7 @@ export interface ActionDefinition<TModel extends FlowModel = FlowModel, TCtx ext
|
|
|
177
179
|
* - 收录内置常用事件,便于智能提示;
|
|
178
180
|
* - 允许扩展字符串以保持向后兼容。
|
|
179
181
|
*/
|
|
180
|
-
export type FlowEventName = 'click' | 'submit' | 'reset' | 'remove' | 'openView' | 'dropdownOpen' | 'popupScroll' | 'search' | 'customRequest' | 'collapseToggle' | (string & {});
|
|
182
|
+
export type FlowEventName = 'click' | 'close' | 'submit' | 'reset' | 'remove' | 'openView' | 'dropdownOpen' | 'popupScroll' | 'search' | 'customRequest' | 'collapseToggle' | (string & {});
|
|
181
183
|
/**
|
|
182
184
|
* 事件流的执行时机(phase)。
|
|
183
185
|
*
|
|
@@ -303,6 +305,52 @@ export interface CreateModelOptions {
|
|
|
303
305
|
delegateToParent?: boolean;
|
|
304
306
|
[key: string]: any;
|
|
305
307
|
}
|
|
308
|
+
/**
|
|
309
|
+
* FlowModel loader result.
|
|
310
|
+
* Supports returning the model constructor directly, a default export, or a module object containing the named export.
|
|
311
|
+
*/
|
|
312
|
+
export type FlowModelLoaderResult = ModelConstructor | {
|
|
313
|
+
default?: ModelConstructor;
|
|
314
|
+
[key: string]: unknown;
|
|
315
|
+
} | Record<string, unknown>;
|
|
316
|
+
/**
|
|
317
|
+
* FlowModel loader function.
|
|
318
|
+
*/
|
|
319
|
+
export type FlowModelLoader = () => Promise<FlowModelLoaderResult>;
|
|
320
|
+
/**
|
|
321
|
+
* FlowModel loader entry (normalized internal form).
|
|
322
|
+
*/
|
|
323
|
+
export interface FlowModelLoaderEntry {
|
|
324
|
+
loader: FlowModelLoader;
|
|
325
|
+
extends?: string[];
|
|
326
|
+
}
|
|
327
|
+
/**
|
|
328
|
+
* FlowModel loader input (user-facing form for registerModelLoaders).
|
|
329
|
+
* The `extends` field accepts flexible formats that will be normalized to `string[]` at registration time.
|
|
330
|
+
*/
|
|
331
|
+
export interface FlowModelLoaderInput {
|
|
332
|
+
loader: FlowModelLoader;
|
|
333
|
+
extends?: string | ModelConstructor | (string | ModelConstructor)[];
|
|
334
|
+
}
|
|
335
|
+
/**
|
|
336
|
+
* FlowModel loader entry map (normalized internal form).
|
|
337
|
+
*/
|
|
338
|
+
export type FlowModelLoaderMap = Record<string, FlowModelLoaderEntry>;
|
|
339
|
+
/**
|
|
340
|
+
* FlowModel loader input map (user-facing form for registerModelLoaders).
|
|
341
|
+
*/
|
|
342
|
+
export type FlowModelLoaderInputMap = Record<string, FlowModelLoaderInput>;
|
|
343
|
+
/**
|
|
344
|
+
* Batch ensure result.
|
|
345
|
+
*/
|
|
346
|
+
export interface EnsureBatchResult {
|
|
347
|
+
requested: string[];
|
|
348
|
+
loaded: string[];
|
|
349
|
+
failed: Array<{
|
|
350
|
+
name: string;
|
|
351
|
+
error?: unknown;
|
|
352
|
+
}>;
|
|
353
|
+
}
|
|
306
354
|
export interface IFlowModelRepository<T extends FlowModel = FlowModel> {
|
|
307
355
|
findOne(query: Record<string, any>): Promise<Record<string, any> | null>;
|
|
308
356
|
save(model: T, options?: {
|
package/lib/types.js
CHANGED
|
@@ -36,6 +36,7 @@ var ActionScene = /* @__PURE__ */ ((ActionScene2) => {
|
|
|
36
36
|
ActionScene2[ActionScene2["DETAILS_FIELD_LINKAGE_RULES"] = 4] = "DETAILS_FIELD_LINKAGE_RULES";
|
|
37
37
|
ActionScene2[ActionScene2["ACTION_LINKAGE_RULES"] = 5] = "ACTION_LINKAGE_RULES";
|
|
38
38
|
ActionScene2[ActionScene2["DYNAMIC_EVENT_FLOW"] = 6] = "DYNAMIC_EVENT_FLOW";
|
|
39
|
+
ActionScene2[ActionScene2["MENU_LINKAGE_RULES"] = 7] = "MENU_LINKAGE_RULES";
|
|
39
40
|
return ActionScene2;
|
|
40
41
|
})(ActionScene || {});
|
|
41
42
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -32,6 +32,10 @@ __export(createCollectionContextMeta_exports, {
|
|
|
32
32
|
module.exports = __toCommonJS(createCollectionContextMeta_exports);
|
|
33
33
|
const RELATION_FIELD_TYPES = ["belongsTo", "hasOne", "hasMany", "belongsToMany", "belongsToArray"];
|
|
34
34
|
const NUMERIC_FIELD_TYPES = ["integer", "float", "double", "decimal"];
|
|
35
|
+
function shouldShowFieldInMeta(field, includeNonFilterable) {
|
|
36
|
+
return Boolean(field.interface && (includeNonFilterable || field.filterable));
|
|
37
|
+
}
|
|
38
|
+
__name(shouldShowFieldInMeta, "shouldShowFieldInMeta");
|
|
35
39
|
function createFieldMetadata(field, includeNonFilterable) {
|
|
36
40
|
const baseProperties = createMetaBaseProperties(field);
|
|
37
41
|
if (field.isAssociationField()) {
|
|
@@ -49,7 +53,7 @@ function createFieldMetadata(field, includeNonFilterable) {
|
|
|
49
53
|
properties: /* @__PURE__ */ __name(async () => {
|
|
50
54
|
const subProperties = {};
|
|
51
55
|
targetCollection.fields.forEach((subField) => {
|
|
52
|
-
if (includeNonFilterable
|
|
56
|
+
if (shouldShowFieldInMeta(subField, includeNonFilterable)) {
|
|
53
57
|
subProperties[subField.name] = createFieldMetadata(subField, includeNonFilterable);
|
|
54
58
|
}
|
|
55
59
|
});
|
|
@@ -104,7 +108,7 @@ function createCollectionContextMeta(collectionOrFactory, title, includeNonFilte
|
|
|
104
108
|
properties: /* @__PURE__ */ __name(async () => {
|
|
105
109
|
const properties = {};
|
|
106
110
|
collection.fields.forEach((field) => {
|
|
107
|
-
if (includeNonFilterable
|
|
111
|
+
if (shouldShowFieldInMeta(field, includeNonFilterable)) {
|
|
108
112
|
properties[field.name] = createFieldMetadata(field, includeNonFilterable);
|
|
109
113
|
}
|
|
110
114
|
});
|
package/lib/utils/index.d.ts
CHANGED
|
@@ -8,11 +8,11 @@
|
|
|
8
8
|
*/
|
|
9
9
|
export { BLOCK_GROUP_CONFIGS, BLOCK_TYPES, FLOW_ENGINE_NAMESPACE, MENU_KEYS, type BlockBuilderConfig, } from './constants';
|
|
10
10
|
export { escapeT, getT, tExpr } from './translation';
|
|
11
|
-
export { FlowCancelSaveException, FlowExitException } from './exceptions';
|
|
11
|
+
export { FlowCancelSaveException, FlowExitAllException, FlowExitException } from './exceptions';
|
|
12
12
|
export { defineAction } from './flow-definitions';
|
|
13
13
|
export { isInheritedFrom } from './inheritance';
|
|
14
14
|
export { resolveCreateModelOptions, resolveDefaultParams, resolveExpressions } from './params-resolvers';
|
|
15
|
-
export { compileUiSchema, resolveStepUiSchema, resolveStepDisabledInSettings, resolveUiMode, shouldHideStepInSettings, } from './schema-utils';
|
|
15
|
+
export { compileUiSchema, resolveStepUiSchema, resolveStepDisabledInSettings, resolveUiMode, shouldHideEventInSettings, shouldHideStepInSettings, } from './schema-utils';
|
|
16
16
|
export { setupRuntimeContextSteps } from './setupRuntimeContextSteps';
|
|
17
17
|
export { createCollectionContextMeta } from './createCollectionContextMeta';
|
|
18
18
|
export { createAssociationAwareObjectMetaFactory, createAssociationSubpathResolver } from './associationObjectVariable';
|
|
@@ -29,3 +29,4 @@ export { createEphemeralContext } from './createEphemeralContext';
|
|
|
29
29
|
export { pruneFilter } from './pruneFilter';
|
|
30
30
|
export { isBeforeRenderFlow } from './flows';
|
|
31
31
|
export { resolveModuleUrl, isCssFile } from './resolveModuleUrl';
|
|
32
|
+
export { randomId } from './randomId';
|
package/lib/utils/index.js
CHANGED
|
@@ -30,6 +30,7 @@ __export(utils_exports, {
|
|
|
30
30
|
BLOCK_TYPES: () => import_constants.BLOCK_TYPES,
|
|
31
31
|
FLOW_ENGINE_NAMESPACE: () => import_constants.FLOW_ENGINE_NAMESPACE,
|
|
32
32
|
FlowCancelSaveException: () => import_exceptions.FlowCancelSaveException,
|
|
33
|
+
FlowExitAllException: () => import_exceptions.FlowExitAllException,
|
|
33
34
|
FlowExitException: () => import_exceptions.FlowExitException,
|
|
34
35
|
MENU_KEYS: () => import_constants.MENU_KEYS,
|
|
35
36
|
buildRecordMeta: () => import_variablesParams.buildRecordMeta,
|
|
@@ -73,6 +74,7 @@ __export(utils_exports, {
|
|
|
73
74
|
prepareRunJsCode: () => import_runjsTemplateCompat.prepareRunJsCode,
|
|
74
75
|
preprocessRunJsTemplates: () => import_runjsTemplateCompat.preprocessRunJsTemplates,
|
|
75
76
|
pruneFilter: () => import_pruneFilter.pruneFilter,
|
|
77
|
+
randomId: () => import_randomId.randomId,
|
|
76
78
|
resolveCreateModelOptions: () => import_params_resolvers.resolveCreateModelOptions,
|
|
77
79
|
resolveCtxDatePath: () => import_dateVariable.resolveCtxDatePath,
|
|
78
80
|
resolveDefaultParams: () => import_params_resolvers.resolveDefaultParams,
|
|
@@ -86,6 +88,7 @@ __export(utils_exports, {
|
|
|
86
88
|
serializeCtxDateValue: () => import_dateVariable.serializeCtxDateValue,
|
|
87
89
|
setAutoFlowError: () => import_autoFlowError.setAutoFlowError,
|
|
88
90
|
setupRuntimeContextSteps: () => import_setupRuntimeContextSteps.setupRuntimeContextSteps,
|
|
91
|
+
shouldHideEventInSettings: () => import_schema_utils.shouldHideEventInSettings,
|
|
89
92
|
shouldHideStepInSettings: () => import_schema_utils.shouldHideStepInSettings,
|
|
90
93
|
tExpr: () => import_translation.tExpr
|
|
91
94
|
});
|
|
@@ -113,12 +116,14 @@ var import_createEphemeralContext = require("./createEphemeralContext");
|
|
|
113
116
|
var import_pruneFilter = require("./pruneFilter");
|
|
114
117
|
var import_flows = require("./flows");
|
|
115
118
|
var import_resolveModuleUrl = require("./resolveModuleUrl");
|
|
119
|
+
var import_randomId = require("./randomId");
|
|
116
120
|
// Annotate the CommonJS export names for ESM import in node:
|
|
117
121
|
0 && (module.exports = {
|
|
118
122
|
BLOCK_GROUP_CONFIGS,
|
|
119
123
|
BLOCK_TYPES,
|
|
120
124
|
FLOW_ENGINE_NAMESPACE,
|
|
121
125
|
FlowCancelSaveException,
|
|
126
|
+
FlowExitAllException,
|
|
122
127
|
FlowExitException,
|
|
123
128
|
MENU_KEYS,
|
|
124
129
|
buildRecordMeta,
|
|
@@ -162,6 +167,7 @@ var import_resolveModuleUrl = require("./resolveModuleUrl");
|
|
|
162
167
|
prepareRunJsCode,
|
|
163
168
|
preprocessRunJsTemplates,
|
|
164
169
|
pruneFilter,
|
|
170
|
+
randomId,
|
|
165
171
|
resolveCreateModelOptions,
|
|
166
172
|
resolveCtxDatePath,
|
|
167
173
|
resolveDefaultParams,
|
|
@@ -175,6 +181,7 @@ var import_resolveModuleUrl = require("./resolveModuleUrl");
|
|
|
175
181
|
serializeCtxDateValue,
|
|
176
182
|
setAutoFlowError,
|
|
177
183
|
setupRuntimeContextSteps,
|
|
184
|
+
shouldHideEventInSettings,
|
|
178
185
|
shouldHideStepInSettings,
|
|
179
186
|
tExpr
|
|
180
187
|
});
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is part of the NocoBase (R) project.
|
|
3
|
+
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
+
* Authors: NocoBase Team.
|
|
5
|
+
*
|
|
6
|
+
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
+
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
+
*/
|
|
9
|
+
import type { FlowModel } from '../models';
|
|
10
|
+
type LoadedPageOptions = {
|
|
11
|
+
parentId?: string;
|
|
12
|
+
subKey?: string;
|
|
13
|
+
};
|
|
14
|
+
type DirtyKeyOptions = {
|
|
15
|
+
force?: boolean;
|
|
16
|
+
};
|
|
17
|
+
export declare const createLoadedPageCache: () => {
|
|
18
|
+
getDirtyKeyForModel(model?: FlowModel | null, options?: DirtyKeyOptions): string | undefined;
|
|
19
|
+
markDirty(key?: string): void;
|
|
20
|
+
shouldBypass(options?: LoadedPageOptions, isFlowSettingsEnabled?: () => boolean): boolean;
|
|
21
|
+
clear(options?: LoadedPageOptions): void;
|
|
22
|
+
mountModelToParent: <T extends FlowModel<import("..").DefaultStructure> = FlowModel<import("..").DefaultStructure>>(model: T, forceReplace?: boolean) => T;
|
|
23
|
+
};
|
|
24
|
+
export {};
|