@nocobase/flow-engine 2.0.0-alpha.7 → 2.0.0-alpha.71
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/BlockScopedFlowEngine.d.ts +23 -0
- package/lib/BlockScopedFlowEngine.js +91 -0
- package/lib/FlowContextProvider.d.ts +2 -2
- package/lib/FlowContextProvider.js +3 -3
- package/lib/FlowDefinition.d.ts +6 -4
- package/lib/JSRunner.d.ts +6 -0
- package/lib/JSRunner.js +27 -1
- package/lib/ViewScopedFlowEngine.d.ts +1 -1
- package/lib/ViewScopedFlowEngine.js +18 -1
- package/lib/acl/Acl.d.ts +12 -12
- package/lib/acl/Acl.js +88 -30
- package/lib/components/DynamicFlowsEditor.js +2 -4
- package/lib/components/FieldModelRenderer.js +17 -9
- package/lib/components/FieldSkeleton.d.ts +10 -0
- package/lib/components/FieldSkeleton.js +64 -0
- package/lib/components/FlowContextSelector.js +19 -3
- package/lib/components/FlowModelRenderer.d.ts +4 -6
- package/lib/components/FlowModelRenderer.js +35 -53
- package/lib/components/FormItem.js +5 -1
- package/lib/components/MobilePopup.d.ts +20 -0
- package/lib/components/MobilePopup.js +102 -0
- package/lib/components/MobilePopup.style.d.ts +17 -0
- package/lib/components/MobilePopup.style.js +186 -0
- package/lib/components/common/withFlowDesignMode.d.ts +1 -1
- package/lib/components/common/withFlowDesignMode.js +5 -5
- package/lib/components/dnd/gridDragPlanner.d.ts +1 -0
- package/lib/components/dnd/gridDragPlanner.js +53 -1
- package/lib/components/index.d.ts +1 -0
- package/lib/components/index.js +3 -1
- package/lib/components/settings/independents/dropdown/FlowsDropdownButton.js +71 -53
- package/lib/components/settings/wrappers/component/SelectWithTitle.d.ts +19 -0
- package/lib/components/settings/wrappers/component/SelectWithTitle.js +136 -0
- package/lib/components/settings/wrappers/component/SwitchWithTitle.d.ts +10 -0
- package/lib/components/settings/wrappers/component/SwitchWithTitle.js +111 -0
- package/lib/components/settings/wrappers/contextual/DefaultSettingsIcon.js +233 -97
- package/lib/components/settings/wrappers/contextual/FlowsContextMenu.js +71 -54
- package/lib/components/settings/wrappers/contextual/FlowsFloatContextMenu.d.ts +2 -2
- package/lib/components/settings/wrappers/contextual/FlowsFloatContextMenu.js +63 -23
- package/lib/components/settings/wrappers/contextual/StepSettingsDialog.js +13 -2
- package/lib/components/settings/wrappers/embedded/FlowSettings.js +42 -28
- package/lib/components/settings/wrappers/embedded/FlowsSettings.js +3 -3
- package/lib/components/settings/wrappers/embedded/FlowsSettingsContent.js +52 -32
- package/lib/components/subModel/AddSubModelButton.d.ts +7 -0
- package/lib/components/subModel/AddSubModelButton.js +78 -8
- package/lib/components/subModel/LazyDropdown.js +14 -15
- package/lib/components/subModel/utils.d.ts +1 -1
- package/lib/components/subModel/utils.js +21 -11
- package/lib/components/variables/VariableInput.js +26 -6
- package/lib/components/variables/VariableTag.js +43 -2
- package/lib/components/variables/types.d.ts +2 -0
- package/lib/components/variables/utils.js +4 -2
- package/lib/data-source/index.d.ts +23 -4
- package/lib/data-source/index.js +135 -14
- package/lib/data-source/jioToJoiSchema.js +1 -0
- package/lib/emitter.d.ts +6 -0
- package/lib/emitter.js +12 -0
- package/lib/executor/FlowExecutor.d.ts +6 -6
- package/lib/executor/FlowExecutor.js +302 -99
- package/lib/flow-registry/GlobalFlowRegistry.d.ts +1 -0
- package/lib/flow-registry/GlobalFlowRegistry.js +3 -0
- package/lib/flow-registry/InstanceFlowRegistry.d.ts +1 -0
- package/lib/flow-registry/InstanceFlowRegistry.js +3 -0
- package/lib/flowContext.d.ts +105 -6
- package/lib/flowContext.js +447 -139
- package/lib/flowEngine.d.ts +71 -1
- package/lib/flowEngine.js +319 -16
- package/lib/flowSettings.d.ts +4 -3
- package/lib/flowSettings.js +45 -21
- package/lib/hooks/useApplyAutoFlows.d.ts +1 -0
- package/lib/hooks/useApplyAutoFlows.js +3 -2
- package/lib/index.d.ts +14 -3
- package/lib/index.js +54 -7
- package/lib/locale/de-DE.json +62 -0
- package/lib/locale/en-US.json +57 -45
- package/lib/locale/es-ES.json +62 -0
- package/lib/locale/fr-FR.json +62 -0
- package/lib/locale/hu-HU.json +62 -0
- package/lib/locale/id-ID.json +62 -0
- package/lib/locale/index.d.ts +114 -90
- package/lib/locale/it-IT.json +62 -0
- package/lib/locale/ja-JP.json +62 -0
- package/lib/locale/ko-KR.json +62 -0
- package/lib/locale/nl-NL.json +62 -0
- package/lib/locale/pt-BR.json +62 -0
- package/lib/locale/ru-RU.json +62 -0
- package/lib/locale/tr-TR.json +62 -0
- package/lib/locale/uk-UA.json +62 -0
- package/lib/locale/vi-VN.json +62 -0
- package/lib/locale/zh-CN.json +58 -46
- package/lib/locale/zh-TW.json +62 -0
- package/lib/models/CollectionFieldModel.d.ts +7 -2
- package/lib/models/CollectionFieldModel.js +63 -16
- package/lib/models/flowModel.d.ts +76 -32
- package/lib/models/flowModel.js +300 -112
- package/lib/models/forkFlowModel.d.ts +8 -4
- package/lib/models/forkFlowModel.js +38 -8
- package/lib/provider.d.ts +3 -1
- package/lib/provider.js +14 -11
- package/lib/reactive/index.d.ts +10 -0
- package/lib/{runjs-context/snippets/global/api-request-post.snippet.js → reactive/index.js} +14 -15
- package/lib/reactive/observer.d.ts +19 -0
- package/lib/reactive/observer.js +109 -0
- package/lib/resources/baseRecordResource.d.ts +6 -0
- package/lib/resources/baseRecordResource.js +38 -3
- package/lib/resources/multiRecordResource.d.ts +5 -2
- package/lib/resources/multiRecordResource.js +26 -10
- package/lib/resources/singleRecordResource.js +8 -3
- package/lib/resources/sqlResource.d.ts +5 -3
- package/lib/resources/sqlResource.js +30 -28
- package/lib/runjs-context/contexts/FormJSFieldItemRunJSContext.d.ts +1 -6
- package/lib/runjs-context/contexts/FormJSFieldItemRunJSContext.js +37 -20
- package/lib/runjs-context/contexts/JSBlockRunJSContext.d.ts +1 -6
- package/lib/runjs-context/contexts/JSBlockRunJSContext.js +46 -33
- package/lib/runjs-context/contexts/JSCollectionActionRunJSContext.d.ts +1 -2
- package/lib/runjs-context/contexts/JSCollectionActionRunJSContext.js +14 -15
- package/lib/runjs-context/contexts/{LinkageRunJSContext.d.ts → JSColumnRunJSContext.d.ts} +6 -3
- package/lib/runjs-context/contexts/JSColumnRunJSContext.js +78 -0
- package/lib/runjs-context/contexts/JSEditableFieldRunJSContext.d.ts +16 -0
- package/lib/runjs-context/contexts/JSEditableFieldRunJSContext.js +125 -0
- package/lib/runjs-context/contexts/JSFieldRunJSContext.d.ts +1 -6
- package/lib/runjs-context/contexts/JSFieldRunJSContext.js +28 -24
- package/lib/runjs-context/contexts/JSItemRunJSContext.d.ts +1 -6
- package/lib/runjs-context/contexts/JSItemRunJSContext.js +34 -20
- package/lib/runjs-context/contexts/JSRecordActionRunJSContext.d.ts +1 -2
- package/lib/runjs-context/contexts/JSRecordActionRunJSContext.js +16 -17
- package/lib/runjs-context/contexts/base.d.ts +9 -0
- package/lib/runjs-context/contexts/base.js +879 -0
- package/lib/runjs-context/contributions.d.ts +33 -0
- package/lib/runjs-context/contributions.js +88 -0
- package/lib/runjs-context/helpers.d.ts +5 -2
- package/lib/runjs-context/helpers.js +36 -27
- package/lib/runjs-context/registry.d.ts +7 -4
- package/lib/runjs-context/registry.js +10 -42
- package/lib/runjs-context/setup.d.ts +9 -0
- package/lib/runjs-context/setup.js +88 -0
- package/lib/runjs-context/snippets/global/{copy-record-json.snippet.js → api-request.snippet.js} +25 -10
- package/lib/runjs-context/snippets/global/clipboard-copy-text.snippet.js +61 -0
- package/lib/runjs-context/snippets/global/{view-navigation-push.snippet.js → import-esm.snippet.js} +26 -12
- package/lib/runjs-context/snippets/global/message-error.snippet.js +6 -0
- package/lib/runjs-context/snippets/global/message-success.snippet.js +6 -0
- package/lib/runjs-context/snippets/global/notification-open.snippet.d.ts +3 -8
- package/lib/runjs-context/snippets/global/notification-open.snippet.js +8 -1
- package/lib/runjs-context/snippets/global/open-view-dialog.snippet.js +10 -3
- package/lib/runjs-context/snippets/global/open-view-drawer.snippet.js +10 -3
- package/lib/runjs-context/snippets/global/query-selector.snippet.js +53 -0
- package/lib/runjs-context/snippets/global/require-amd.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/global/{requireAsync.snippet.js → require-amd.snippet.js} +16 -13
- package/lib/runjs-context/snippets/global/window-open.snippet.d.ts +3 -8
- package/lib/runjs-context/snippets/global/window-open.snippet.js +8 -1
- package/lib/runjs-context/snippets/index.d.ts +24 -3
- package/lib/runjs-context/snippets/index.js +183 -40
- package/lib/runjs-context/snippets/scene/block/add-event-listener.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/{jsblock → block}/add-event-listener.snippet.js +11 -2
- package/lib/runjs-context/snippets/scene/block/api-fetch-render-list.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/block/api-fetch-render-list.snippet.js +64 -0
- package/lib/runjs-context/snippets/scene/block/chartjs-bar.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/block/chartjs-bar.snippet.js +99 -0
- package/lib/runjs-context/snippets/{libs → scene/block}/echarts-init.snippet.js +24 -7
- package/lib/runjs-context/snippets/scene/block/render-antd-icons.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/block/render-antd-icons.snippet.js +65 -0
- package/lib/runjs-context/snippets/scene/block/render-button-handler.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/{jsblock → block}/render-button-handler.snippet.js +17 -9
- package/lib/runjs-context/snippets/scene/block/render-iframe.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/block/render-iframe.snippet.js +57 -0
- package/lib/runjs-context/snippets/scene/block/render-info-card.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/block/render-info-card.snippet.js +71 -0
- package/lib/runjs-context/snippets/scene/block/render-react-jsx.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/{jsblock/render-card.snippet.js → block/render-react-jsx.snippet.js} +26 -13
- package/lib/runjs-context/snippets/scene/block/render-react.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/{jsblock → block}/render-react.snippet.js +18 -17
- package/lib/runjs-context/snippets/scene/block/render-statistics.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/block/render-statistics.snippet.js +95 -0
- package/lib/runjs-context/snippets/scene/block/render-timeline.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/block/render-timeline.snippet.js +84 -0
- package/lib/runjs-context/snippets/scene/block/resource-example.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/block/resource-example.snippet.js +60 -0
- package/lib/runjs-context/snippets/scene/block/three-users-orbit.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/block/three-users-orbit.snippet.js +283 -0
- package/lib/runjs-context/snippets/scene/block/vue-component.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/block/vue-component.snippet.js +124 -0
- package/lib/runjs-context/snippets/scene/detail/color-by-value.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/{jsfield → detail}/color-by-value.snippet.js +13 -3
- package/lib/runjs-context/snippets/scene/detail/copy-to-clipboard.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/{global → scene/detail}/copy-to-clipboard.snippet.js +28 -6
- package/lib/runjs-context/snippets/scene/detail/format-number.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/{jsfield → detail}/format-number.snippet.js +13 -3
- package/lib/runjs-context/snippets/scene/detail/innerHTML-value.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/{jsfield → detail}/innerHTML-value.snippet.js +13 -3
- package/lib/runjs-context/snippets/scene/detail/percentage-bar.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/detail/percentage-bar.snippet.js +82 -0
- package/lib/runjs-context/snippets/scene/detail/relative-time.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/detail/relative-time.snippet.js +80 -0
- package/lib/runjs-context/snippets/scene/detail/status-tag.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/detail/status-tag.snippet.js +74 -0
- package/lib/runjs-context/snippets/scene/form/calculate-total.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/form/calculate-total.snippet.js +63 -0
- package/lib/runjs-context/snippets/scene/form/cascade-select.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/form/cascade-select.snippet.js +81 -0
- package/lib/runjs-context/snippets/scene/form/conditional-required.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/form/conditional-required.snippet.js +64 -0
- package/lib/runjs-context/snippets/scene/form/copy-field-values.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/form/copy-field-values.snippet.js +74 -0
- package/lib/runjs-context/snippets/scene/form/render-basic.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/{jsitem → form}/render-basic.snippet.js +11 -2
- package/lib/runjs-context/snippets/scene/form/set-disabled.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/{linkage → form}/set-disabled.snippet.js +12 -3
- package/lib/runjs-context/snippets/scene/form/set-field-value.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/{linkage → form}/set-field-value.snippet.js +12 -3
- package/lib/runjs-context/snippets/scene/form/set-required.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/{linkage → form}/set-required.snippet.js +12 -3
- package/lib/runjs-context/snippets/scene/form/toggle-multiple-fields.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/form/toggle-multiple-fields.snippet.js +67 -0
- package/lib/runjs-context/snippets/scene/form/toggle-visible.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/{linkage → form}/toggle-visible.snippet.js +12 -3
- package/lib/runjs-context/snippets/scene/table/cell-open-dialog.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/table/cell-open-dialog.snippet.js +64 -0
- package/lib/runjs-context/snippets/scene/table/collection-selected-count.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/{actions → table}/collection-selected-count.snippet.js +11 -2
- package/lib/runjs-context/snippets/scene/table/concat-fields.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/table/concat-fields.snippet.js +79 -0
- package/lib/runjs-context/snippets/scene/table/destroy-selected.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/{global/log-json-record.snippet.js → scene/table/destroy-selected.snippet.js} +24 -11
- package/lib/runjs-context/snippets/scene/table/export-selected-json.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/table/export-selected-json.snippet.js +64 -0
- package/lib/runjs-context/snippets/scene/table/iterate-selected-rows.snippet.d.ts +11 -0
- package/lib/runjs-context/snippets/scene/{actions → table}/iterate-selected-rows.snippet.js +11 -2
- package/lib/runjs-context/snippets/types.d.ts +9 -1
- package/lib/runjsLibs.d.ts +28 -0
- package/lib/runjsLibs.js +532 -0
- package/lib/scheduler/ModelOperationScheduler.d.ts +53 -0
- package/lib/scheduler/ModelOperationScheduler.js +262 -0
- package/lib/types.d.ts +66 -7
- package/lib/types.js +4 -3
- package/lib/utils/associationObjectVariable.d.ts +32 -0
- package/lib/utils/associationObjectVariable.js +157 -0
- package/lib/utils/createCollectionContextMeta.d.ts +1 -1
- package/lib/utils/createCollectionContextMeta.js +9 -4
- package/lib/utils/createEphemeralContext.d.ts +13 -0
- package/lib/utils/createEphemeralContext.js +140 -0
- package/lib/utils/flows.d.ts +10 -0
- package/lib/{runjs-context/snippets/global/console-log-ctx.snippet.js → utils/flows.js} +21 -14
- package/lib/utils/index.d.ts +9 -3
- package/lib/utils/index.js +30 -2
- package/lib/utils/jsxTransform.d.ts +15 -0
- package/lib/utils/jsxTransform.js +68 -0
- package/lib/utils/params-resolvers.js +19 -12
- package/lib/utils/parsePathnameToViewParams.d.ts +1 -1
- package/lib/utils/parsePathnameToViewParams.js +41 -5
- package/lib/utils/pruneFilter.d.ts +21 -0
- package/lib/{runjs-context/snippets/global/try-catch-async.snippet.js → utils/pruneFilter.js} +24 -16
- package/lib/utils/resolveModuleUrl.d.ts +58 -0
- package/lib/utils/resolveModuleUrl.js +65 -0
- package/lib/utils/runjsModuleLoader.d.ts +58 -0
- package/lib/utils/runjsModuleLoader.js +422 -0
- package/lib/utils/runjsTemplateCompat.d.ts +35 -0
- package/lib/utils/runjsTemplateCompat.js +743 -0
- package/lib/utils/safeGlobals.d.ts +6 -8
- package/lib/utils/safeGlobals.js +169 -14
- package/lib/utils/schema-utils.d.ts +6 -0
- package/lib/utils/schema-utils.js +71 -6
- package/lib/utils/serverContextParams.d.ts +4 -0
- package/lib/utils/serverContextParams.js +2 -0
- package/lib/utils/translation.d.ts +4 -1
- package/lib/utils/translation.js +6 -2
- package/lib/utils/variablesParams.d.ts +22 -5
- package/lib/utils/variablesParams.js +141 -61
- package/lib/views/DialogComponent.js +1 -5
- package/lib/views/DrawerComponent.js +18 -9
- package/lib/views/PageComponent.js +5 -5
- package/lib/views/ViewNavigation.d.ts +11 -15
- package/lib/views/ViewNavigation.js +37 -19
- package/lib/views/createViewMeta.d.ts +27 -5
- package/lib/views/createViewMeta.js +338 -72
- package/lib/views/index.d.ts +1 -1
- package/lib/views/index.js +4 -0
- package/lib/views/useDialog.d.ts +10 -9
- package/lib/views/useDialog.js +46 -34
- package/lib/views/useDrawer.d.ts +10 -9
- package/lib/views/useDrawer.js +74 -48
- package/lib/views/usePage.d.ts +14 -9
- package/lib/views/usePage.js +82 -33
- package/lib/views/usePopover.js +4 -1
- package/lib/views/viewEvents.d.ts +17 -0
- package/lib/views/viewEvents.js +90 -0
- package/package.json +6 -3
- package/src/BlockScopedFlowEngine.ts +85 -0
- package/src/FlowContextProvider.tsx +4 -2
- package/src/JSRunner.ts +39 -1
- package/src/ViewScopedFlowEngine.ts +21 -1
- package/src/__tests__/JSRunner.test.ts +125 -52
- package/src/__tests__/blockScopedFlowEngine.test.ts +154 -0
- package/src/__tests__/createViewMeta.popup.test.ts +203 -0
- package/src/__tests__/flow-engine.test.ts +3 -0
- package/src/__tests__/flowContext.test.ts +160 -0
- package/src/__tests__/flowContextCreateJSRunner.test.ts +163 -0
- package/src/__tests__/flowEngine.dataSourceDirty.test.ts +63 -0
- package/src/__tests__/flowEngine.destroyModel.test.ts +74 -0
- package/src/__tests__/flowEngine.moveModel.test.ts +43 -0
- package/src/__tests__/flowEngine.removeModel.test.ts +72 -0
- package/src/__tests__/flowEngine.saveModel.test.ts +4 -0
- package/src/__tests__/flowModel.openView.navigation.test.ts +31 -2
- package/src/__tests__/flowRunJSContextDefine.test.ts +508 -0
- package/src/__tests__/flowSettings.open.test.tsx +71 -15
- package/src/__tests__/flowSettings.test.ts +2 -0
- package/src/__tests__/globalFlowRegistry.test.ts +1 -1
- package/src/__tests__/modelOperationScheduler.test.ts +346 -0
- package/src/__tests__/objectVariable.test.ts +464 -0
- package/src/__tests__/provider.test.tsx +0 -5
- package/src/__tests__/runjsContext.test.ts +219 -35
- package/src/__tests__/runjsContextImplementations.test.ts +217 -0
- package/src/__tests__/runjsContextRuntime.test.ts +269 -0
- package/src/__tests__/runjsEdgeCases.test.ts +281 -0
- package/src/__tests__/runjsExternalLibs.test.ts +242 -0
- package/src/__tests__/runjsLibsLazyLoading.test.ts +44 -0
- package/src/__tests__/runjsLocales.test.ts +39 -0
- package/src/__tests__/runjsPreprocessDefault.test.ts +49 -0
- package/src/__tests__/runjsRuntimeFeatures.test.ts +461 -0
- package/src/__tests__/runjsSnippets.test.ts +140 -0
- package/src/__tests__/viewScopedFlowEngine.test.ts +101 -3
- package/src/acl/Acl.tsx +85 -31
- package/src/acl/__tests__/Acl.test.tsx +43 -1
- package/src/components/DynamicFlowsEditor.tsx +0 -10
- package/src/components/FieldModelRenderer.tsx +22 -9
- package/src/components/FieldSkeleton.tsx +27 -0
- package/src/components/FlowContextSelector.tsx +20 -2
- package/src/components/FlowModelRenderer.tsx +52 -84
- package/src/components/FormItem.tsx +8 -1
- package/src/components/MobilePopup.style.ts +220 -0
- package/src/components/MobilePopup.tsx +86 -0
- package/src/components/__tests__/FlowModelRenderer.test.tsx +89 -0
- package/src/components/__tests__/flow-model-render-error-fallback.test.tsx +6 -6
- package/src/components/__tests__/gridDragPlanner.test.ts +141 -1
- package/src/components/common/withFlowDesignMode.tsx +5 -5
- package/src/components/dnd/gridDragPlanner.ts +60 -0
- package/src/components/index.ts +1 -0
- package/src/components/settings/independents/dropdown/FlowsDropdownButton.tsx +34 -17
- package/src/components/settings/wrappers/component/SelectWithTitle.tsx +110 -0
- package/src/components/settings/wrappers/component/SwitchWithTitle.tsx +83 -0
- package/src/components/settings/wrappers/component/__tests__/InlineControls.test.tsx +74 -0
- package/src/components/settings/wrappers/contextual/DefaultSettingsIcon.tsx +272 -125
- package/src/components/settings/wrappers/contextual/FlowsContextMenu.tsx +34 -18
- package/src/components/settings/wrappers/contextual/FlowsFloatContextMenu.tsx +56 -18
- package/src/components/settings/wrappers/contextual/StepSettings.tsx +1 -2
- package/src/components/settings/wrappers/contextual/StepSettingsDialog.tsx +13 -1
- package/src/components/settings/wrappers/contextual/__tests__/DefaultSettingsIcon.test.tsx +624 -0
- package/src/components/settings/wrappers/embedded/FlowSettings.tsx +47 -35
- package/src/components/settings/wrappers/embedded/FlowsSettings.tsx +1 -1
- package/src/components/settings/wrappers/embedded/FlowsSettingsContent.tsx +64 -42
- package/src/components/subModel/AddSubModelButton.tsx +104 -9
- package/src/components/subModel/LazyDropdown.tsx +14 -14
- package/src/components/subModel/__tests__/AddSubModelButton.test.tsx +168 -7
- package/src/components/subModel/__tests__/utils.test.ts +12 -12
- package/src/components/subModel/utils.ts +25 -6
- package/src/components/variables/VariableInput.tsx +32 -6
- package/src/components/variables/VariableTag.tsx +54 -2
- package/src/components/variables/types.ts +2 -0
- package/src/components/variables/utils.ts +7 -3
- package/src/data-source/index.ts +143 -12
- package/src/data-source/jioToJoiSchema.ts +1 -0
- package/src/emitter.ts +14 -0
- package/src/executor/FlowExecutor.ts +383 -119
- package/src/executor/__tests__/ctx-defs-injection.test.ts +197 -0
- package/src/executor/__tests__/flowExecutor.test.ts +217 -5
- package/src/flow-registry/GlobalFlowRegistry.ts +1 -0
- package/src/flow-registry/InstanceFlowRegistry.ts +1 -0
- package/src/flow-registry/__tests__/globalFlowRegistry.test.ts +54 -0
- package/src/flowContext.ts +646 -158
- package/src/flowEngine.ts +385 -14
- package/src/flowSettings.ts +59 -30
- package/src/hooks/useApplyAutoFlows.ts +5 -3
- package/src/index.ts +26 -3
- package/src/locale/de-DE.json +62 -0
- package/src/locale/en-US.json +57 -45
- package/src/locale/es-ES.json +62 -0
- package/src/locale/fr-FR.json +62 -0
- package/src/locale/hu-HU.json +62 -0
- package/src/locale/id-ID.json +62 -0
- package/src/locale/it-IT.json +62 -0
- package/src/locale/ja-JP.json +62 -0
- package/src/locale/ko-KR.json +62 -0
- package/src/locale/nl-NL.json +62 -0
- package/src/locale/pt-BR.json +62 -0
- package/src/locale/ru-RU.json +62 -0
- package/src/locale/tr-TR.json +62 -0
- package/src/locale/uk-UA.json +62 -0
- package/src/locale/vi-VN.json +62 -0
- package/src/locale/zh-CN.json +58 -46
- package/src/locale/zh-TW.json +62 -0
- package/src/models/CollectionFieldModel.tsx +82 -18
- package/src/models/__tests__/dispatchEvent.behavior.test.ts +169 -0
- package/src/models/__tests__/dispatchEvent.when.test.ts +356 -0
- package/src/models/__tests__/flowEngine.resolveUse.test.ts +170 -0
- package/src/models/__tests__/flowModel.clone.test.ts +416 -0
- package/src/models/__tests__/flowModel.getFlows.sort.test.ts +33 -9
- package/src/models/__tests__/flowModel.scheduleModelOperation.test.tsx +129 -0
- package/src/models/__tests__/flowModel.test.ts +296 -119
- package/src/models/__tests__/forkFlowModel.test.ts +40 -7
- package/src/models/flowModel.tsx +426 -148
- package/src/models/forkFlowModel.ts +48 -8
- package/src/provider.tsx +18 -14
- package/src/reactive/__tests__/observer.test.tsx +211 -0
- package/src/reactive/index.ts +11 -0
- package/src/reactive/observer.tsx +101 -0
- package/src/resources/__tests__/multiRecordResource.test.ts +44 -0
- package/src/resources/__tests__/sqlResource.test.ts +60 -0
- package/src/resources/baseRecordResource.ts +46 -3
- package/src/resources/multiRecordResource.ts +28 -12
- package/src/resources/singleRecordResource.ts +9 -3
- package/src/resources/sqlResource.ts +33 -32
- package/src/runjs-context/contexts/FormJSFieldItemRunJSContext.ts +38 -21
- package/src/runjs-context/contexts/JSBlockRunJSContext.ts +50 -34
- package/src/runjs-context/contexts/JSCollectionActionRunJSContext.ts +15 -16
- package/src/runjs-context/contexts/JSColumnRunJSContext.ts +58 -0
- package/src/runjs-context/contexts/JSEditableFieldRunJSContext.ts +106 -0
- package/src/runjs-context/contexts/JSFieldRunJSContext.ts +30 -25
- package/src/runjs-context/contexts/JSItemRunJSContext.ts +35 -21
- package/src/runjs-context/contexts/JSRecordActionRunJSContext.ts +17 -18
- package/src/runjs-context/contexts/base.ts +871 -0
- package/src/runjs-context/contributions.ts +88 -0
- package/src/runjs-context/helpers.ts +32 -30
- package/src/runjs-context/registry.ts +16 -47
- package/src/runjs-context/setup.ts +57 -0
- package/src/runjs-context/snippets/global/api-request.snippet.ts +38 -0
- package/src/runjs-context/snippets/global/clipboard-copy-text.snippet.ts +42 -0
- package/src/runjs-context/snippets/global/import-esm.snippet.ts +39 -0
- package/src/runjs-context/snippets/global/message-error.snippet.ts +6 -0
- package/src/runjs-context/snippets/global/message-success.snippet.ts +6 -0
- package/src/runjs-context/snippets/global/notification-open.snippet.ts +11 -1
- package/src/runjs-context/snippets/global/open-view-dialog.snippet.ts +10 -3
- package/src/runjs-context/snippets/global/open-view-drawer.snippet.ts +10 -3
- package/src/runjs-context/snippets/global/query-selector.snippet.ts +34 -0
- package/src/runjs-context/snippets/global/require-amd.snippet.ts +30 -0
- package/src/runjs-context/snippets/global/window-open.snippet.ts +11 -1
- package/src/runjs-context/snippets/index.ts +212 -39
- package/src/runjs-context/snippets/scene/{jsblock → block}/add-event-listener.snippet.ts +14 -2
- package/src/runjs-context/snippets/scene/block/api-fetch-render-list.snippet.ts +45 -0
- package/src/runjs-context/snippets/scene/block/chartjs-bar.snippet.ts +80 -0
- package/src/runjs-context/snippets/scene/block/echarts-init.snippet.ts +44 -0
- package/src/runjs-context/snippets/scene/block/render-antd-icons.snippet.ts +46 -0
- package/src/runjs-context/snippets/scene/block/render-button-handler.snippet.ts +35 -0
- package/src/runjs-context/snippets/scene/block/render-iframe.snippet.ts +38 -0
- package/src/runjs-context/snippets/scene/block/render-info-card.snippet.ts +52 -0
- package/src/runjs-context/snippets/scene/block/render-react-jsx.snippet.ts +39 -0
- package/src/runjs-context/snippets/scene/block/render-react.snippet.ts +38 -0
- package/src/runjs-context/snippets/scene/block/render-statistics.snippet.ts +76 -0
- package/src/runjs-context/snippets/scene/block/render-timeline.snippet.ts +65 -0
- package/src/runjs-context/snippets/scene/block/resource-example.snippet.ts +46 -0
- package/src/runjs-context/snippets/scene/block/three-users-orbit.snippet.ts +264 -0
- package/src/runjs-context/snippets/scene/block/vue-component.snippet.ts +105 -0
- package/src/runjs-context/snippets/scene/detail/color-by-value.snippet.ts +33 -0
- package/src/runjs-context/snippets/scene/detail/copy-to-clipboard.snippet.ts +45 -0
- package/src/runjs-context/snippets/scene/detail/format-number.snippet.ts +32 -0
- package/src/runjs-context/snippets/scene/detail/innerHTML-value.snippet.ts +31 -0
- package/src/runjs-context/snippets/scene/detail/percentage-bar.snippet.ts +63 -0
- package/src/runjs-context/snippets/scene/detail/relative-time.snippet.ts +61 -0
- package/src/runjs-context/snippets/scene/detail/status-tag.snippet.ts +55 -0
- package/src/runjs-context/snippets/scene/form/calculate-total.snippet.ts +44 -0
- package/src/runjs-context/snippets/scene/form/cascade-select.snippet.ts +62 -0
- package/src/runjs-context/snippets/scene/form/conditional-required.snippet.ts +45 -0
- package/src/runjs-context/snippets/scene/form/copy-field-values.snippet.ts +55 -0
- package/src/runjs-context/snippets/scene/{jsitem → form}/render-basic.snippet.ts +14 -2
- package/src/runjs-context/snippets/scene/{linkage → form}/set-disabled.snippet.ts +15 -3
- package/src/runjs-context/snippets/scene/{linkage → form}/set-field-value.snippet.ts +15 -3
- package/src/runjs-context/snippets/scene/{linkage → form}/set-required.snippet.ts +15 -3
- package/src/runjs-context/snippets/scene/form/toggle-multiple-fields.snippet.ts +48 -0
- package/src/runjs-context/snippets/scene/{linkage → form}/toggle-visible.snippet.ts +15 -3
- package/src/runjs-context/snippets/scene/table/cell-open-dialog.snippet.ts +45 -0
- package/src/runjs-context/snippets/scene/{actions → table}/collection-selected-count.snippet.ts +14 -2
- package/src/runjs-context/snippets/scene/table/concat-fields.snippet.ts +60 -0
- package/src/runjs-context/snippets/scene/table/destroy-selected.snippet.ts +36 -0
- package/src/runjs-context/snippets/scene/table/export-selected-json.snippet.ts +45 -0
- package/src/runjs-context/snippets/scene/{actions → table}/iterate-selected-rows.snippet.ts +14 -2
- package/src/runjs-context/snippets/types.ts +5 -1
- package/src/runjsLibs.ts +622 -0
- package/src/scheduler/ModelOperationScheduler.ts +306 -0
- package/src/types.ts +86 -5
- package/src/utils/__tests__/createCollectionContextMeta.test.ts +51 -0
- package/src/utils/__tests__/flows.test.ts +65 -0
- package/src/utils/__tests__/jsxTransform.test.ts +38 -0
- package/src/utils/__tests__/params-resolvers.test.ts +40 -0
- package/src/utils/__tests__/parsePathnameToViewParams.test.ts +25 -0
- package/src/utils/__tests__/pruneFilter.test.ts +38 -0
- package/src/utils/__tests__/runjsRequireAsyncAutoWhitelist.test.ts +38 -0
- package/src/utils/__tests__/runjsTemplateCompat.test.ts +159 -0
- package/src/utils/__tests__/safeGlobals.test.ts +79 -2
- package/src/utils/__tests__/utils.test.ts +114 -15
- package/src/utils/__tests__/variablesParams.test.ts +120 -0
- package/src/utils/associationObjectVariable.ts +180 -0
- package/src/utils/createCollectionContextMeta.ts +9 -3
- package/src/utils/createEphemeralContext.ts +142 -0
- package/src/utils/flows.ts +23 -0
- package/src/utils/index.ts +17 -3
- package/src/utils/jsxTransform.ts +39 -0
- package/src/utils/params-resolvers.ts +25 -11
- package/src/utils/parsePathnameToViewParams.ts +50 -6
- package/src/utils/pruneFilter.ts +41 -0
- package/src/utils/resolveModuleUrl.ts +91 -0
- package/src/utils/runjsModuleLoader.ts +553 -0
- package/src/utils/runjsTemplateCompat.ts +828 -0
- package/src/utils/safeGlobals.ts +181 -15
- package/src/utils/schema-utils.ts +81 -3
- package/src/utils/serverContextParams.ts +6 -0
- package/src/utils/translation.ts +7 -2
- package/src/utils/variablesParams.ts +164 -72
- package/src/views/DialogComponent.tsx +1 -4
- package/src/views/DrawerComponent.tsx +19 -7
- package/src/views/PageComponent.tsx +3 -5
- package/src/views/ViewNavigation.ts +49 -43
- package/src/views/__tests__/FlowView.usePage.test.tsx +186 -0
- package/src/views/__tests__/ViewNavigation.test.ts +54 -34
- package/src/views/__tests__/useDialog.closeDestroy.test.tsx +159 -0
- package/src/views/__tests__/viewEvents.resolveOpenerEngine.test.ts +28 -0
- package/src/views/createViewMeta.ts +402 -73
- package/src/views/index.tsx +1 -1
- package/src/views/useDialog.tsx +52 -31
- package/src/views/useDrawer.tsx +99 -55
- package/src/views/usePage.tsx +101 -33
- package/src/views/usePopover.tsx +4 -1
- package/src/views/viewEvents.ts +55 -0
- package/lib/runjs-context/contexts/FlowRunJSContext.d.ts +0 -38
- package/lib/runjs-context/contexts/FlowRunJSContext.js +0 -217
- package/lib/runjs-context/contexts/LinkageRunJSContext.js +0 -62
- package/lib/runjs-context/index.d.ts +0 -19
- package/lib/runjs-context/index.js +0 -57
- package/lib/runjs-context/snippets/global/api-request-get.snippet.d.ts +0 -16
- package/lib/runjs-context/snippets/global/api-request-get.snippet.js +0 -42
- package/lib/runjs-context/snippets/global/api-request-post.snippet.d.ts +0 -16
- package/lib/runjs-context/snippets/global/console-log-ctx.snippet.d.ts +0 -16
- package/lib/runjs-context/snippets/global/requireAsync.snippet.d.ts +0 -16
- package/lib/runjs-context/snippets/global/sleep.snippet.d.ts +0 -16
- package/lib/runjs-context/snippets/global/sleep.snippet.js +0 -43
- package/lib/runjs-context/snippets/global/try-catch-async.snippet.d.ts +0 -16
- package/lib/runjs-context/snippets/libs/echarts-init.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/actions/collection-selected-count.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/actions/iterate-selected-rows.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/actions/record-id-message.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/actions/record-id-message.snippet.js +0 -43
- package/lib/runjs-context/snippets/scene/actions/run-action-basic.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/actions/run-action-basic.snippet.js +0 -40
- package/lib/runjs-context/snippets/scene/jsblock/add-event-listener.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/jsblock/append-style.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/jsblock/append-style.snippet.js +0 -42
- package/lib/runjs-context/snippets/scene/jsblock/jsx-mount.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/jsblock/jsx-mount.snippet.js +0 -46
- package/lib/runjs-context/snippets/scene/jsblock/jsx-unmount.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/jsblock/jsx-unmount.snippet.js +0 -41
- package/lib/runjs-context/snippets/scene/jsblock/render-basic.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/jsblock/render-basic.snippet.js +0 -41
- package/lib/runjs-context/snippets/scene/jsblock/render-button-handler.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/jsblock/render-react.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/jsfield/color-by-value.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/jsfield/format-number.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/jsfield/innerHTML-value.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/jsitem/render-basic.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/linkage/set-disabled.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/linkage/set-field-value.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/linkage/set-required.snippet.d.ts +0 -15
- package/lib/runjs-context/snippets/scene/linkage/toggle-visible.snippet.d.ts +0 -15
- package/src/runjs-context/contexts/FlowRunJSContext.ts +0 -190
- package/src/runjs-context/contexts/LinkageRunJSContext.ts +0 -35
- package/src/runjs-context/index.ts +0 -20
- package/src/runjs-context/snippets/global/api-request-get.snippet.ts +0 -20
- package/src/runjs-context/snippets/global/api-request-post.snippet.ts +0 -20
- package/src/runjs-context/snippets/global/console-log-ctx.snippet.ts +0 -19
- package/src/runjs-context/snippets/global/copy-record-json.snippet.ts +0 -21
- package/src/runjs-context/snippets/global/copy-to-clipboard.snippet.ts +0 -21
- package/src/runjs-context/snippets/global/log-json-record.snippet.ts +0 -21
- package/src/runjs-context/snippets/global/requireAsync.snippet.ts +0 -24
- package/src/runjs-context/snippets/global/sleep.snippet.ts +0 -21
- package/src/runjs-context/snippets/global/try-catch-async.snippet.ts +0 -22
- package/src/runjs-context/snippets/global/view-navigation-push.snippet.ts +0 -23
- package/src/runjs-context/snippets/libs/echarts-init.snippet.ts +0 -24
- package/src/runjs-context/snippets/scene/actions/record-id-message.snippet.ts +0 -21
- package/src/runjs-context/snippets/scene/actions/run-action-basic.snippet.ts +0 -18
- package/src/runjs-context/snippets/scene/jsblock/append-style.snippet.ts +0 -20
- package/src/runjs-context/snippets/scene/jsblock/jsx-mount.snippet.ts +0 -24
- package/src/runjs-context/snippets/scene/jsblock/jsx-unmount.snippet.ts +0 -19
- package/src/runjs-context/snippets/scene/jsblock/render-basic.snippet.ts +0 -24
- package/src/runjs-context/snippets/scene/jsblock/render-button-handler.snippet.ts +0 -24
- package/src/runjs-context/snippets/scene/jsblock/render-card.snippet.ts +0 -30
- package/src/runjs-context/snippets/scene/jsblock/render-react.snippet.ts +0 -34
- package/src/runjs-context/snippets/scene/jsfield/color-by-value.snippet.ts +0 -20
- package/src/runjs-context/snippets/scene/jsfield/format-number.snippet.ts +0 -19
- package/src/runjs-context/snippets/scene/jsfield/innerHTML-value.snippet.ts +0 -18
- /package/lib/runjs-context/snippets/global/{copy-record-json.snippet.d.ts → api-request.snippet.d.ts} +0 -0
- /package/lib/runjs-context/snippets/global/{copy-to-clipboard.snippet.d.ts → clipboard-copy-text.snippet.d.ts} +0 -0
- /package/lib/runjs-context/snippets/global/{log-json-record.snippet.d.ts → import-esm.snippet.d.ts} +0 -0
- /package/lib/runjs-context/snippets/global/{view-navigation-push.snippet.d.ts → query-selector.snippet.d.ts} +0 -0
- /package/lib/runjs-context/snippets/scene/{jsblock/render-card.snippet.d.ts → block/echarts-init.snippet.d.ts} +0 -0
|
@@ -0,0 +1,33 @@
|
|
|
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 { FlowRunJSContext } from '../flowContext';
|
|
10
|
+
import { RunJSContextRegistry, type RunJSVersion } from './registry';
|
|
11
|
+
export type RunJSContextContributionApi = {
|
|
12
|
+
version: RunJSVersion;
|
|
13
|
+
RunJSContextRegistry: typeof RunJSContextRegistry;
|
|
14
|
+
FlowRunJSContext: typeof FlowRunJSContext;
|
|
15
|
+
};
|
|
16
|
+
export type RunJSContextContribution = (api: RunJSContextContributionApi) => void | Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Register a RunJS context/doc contribution.
|
|
19
|
+
*
|
|
20
|
+
* - If RunJS contexts have already been set up for a version, the contribution is applied immediately once.
|
|
21
|
+
* - Each contribution is executed at most once per version.
|
|
22
|
+
*/
|
|
23
|
+
export declare function registerRunJSContextContribution(contribution: RunJSContextContribution): void;
|
|
24
|
+
/**
|
|
25
|
+
* Apply all registered contributions for a given version.
|
|
26
|
+
* Intended to be called by setupRunJSContexts().
|
|
27
|
+
*/
|
|
28
|
+
export declare function applyRunJSContextContributions(version: RunJSVersion): Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
* Mark setupRunJSContexts() as completed for a given version.
|
|
31
|
+
* Used to support late contributions that should take effect without re-running setup.
|
|
32
|
+
*/
|
|
33
|
+
export declare function markRunJSContextsSetupDone(version: RunJSVersion): void;
|
|
@@ -0,0 +1,88 @@
|
|
|
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 contributions_exports = {};
|
|
29
|
+
__export(contributions_exports, {
|
|
30
|
+
applyRunJSContextContributions: () => applyRunJSContextContributions,
|
|
31
|
+
markRunJSContextsSetupDone: () => markRunJSContextsSetupDone,
|
|
32
|
+
registerRunJSContextContribution: () => registerRunJSContextContribution
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(contributions_exports);
|
|
35
|
+
var import_flowContext = require("../flowContext");
|
|
36
|
+
var import_registry = require("./registry");
|
|
37
|
+
const contributions = /* @__PURE__ */ new Set();
|
|
38
|
+
const appliedByVersion = /* @__PURE__ */ new Map();
|
|
39
|
+
const setupDoneVersions = /* @__PURE__ */ new Set();
|
|
40
|
+
async function applyContributionOnce(version, contribution) {
|
|
41
|
+
const applied = appliedByVersion.get(version) || /* @__PURE__ */ new Set();
|
|
42
|
+
appliedByVersion.set(version, applied);
|
|
43
|
+
if (applied.has(contribution)) return;
|
|
44
|
+
applied.add(contribution);
|
|
45
|
+
try {
|
|
46
|
+
await contribution({
|
|
47
|
+
version,
|
|
48
|
+
RunJSContextRegistry: import_registry.RunJSContextRegistry,
|
|
49
|
+
FlowRunJSContext: import_flowContext.FlowRunJSContext
|
|
50
|
+
});
|
|
51
|
+
} catch (error) {
|
|
52
|
+
applied.delete(contribution);
|
|
53
|
+
throw error;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
__name(applyContributionOnce, "applyContributionOnce");
|
|
57
|
+
function registerRunJSContextContribution(contribution) {
|
|
58
|
+
if (typeof contribution !== "function") {
|
|
59
|
+
throw new Error("[flow-engine] registerRunJSContextContribution: contribution must be a function");
|
|
60
|
+
}
|
|
61
|
+
if (contributions.has(contribution)) return;
|
|
62
|
+
contributions.add(contribution);
|
|
63
|
+
for (const version of setupDoneVersions) {
|
|
64
|
+
void applyContributionOnce(version, contribution).catch((error) => {
|
|
65
|
+
try {
|
|
66
|
+
console.error("[flow-engine] RunJS context contribution failed:", error);
|
|
67
|
+
} catch (_) {
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
__name(registerRunJSContextContribution, "registerRunJSContextContribution");
|
|
73
|
+
async function applyRunJSContextContributions(version) {
|
|
74
|
+
for (const contribution of contributions) {
|
|
75
|
+
await applyContributionOnce(version, contribution);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
__name(applyRunJSContextContributions, "applyRunJSContextContributions");
|
|
79
|
+
function markRunJSContextsSetupDone(version) {
|
|
80
|
+
setupDoneVersions.add(version);
|
|
81
|
+
}
|
|
82
|
+
__name(markRunJSContextsSetupDone, "markRunJSContextsSetupDone");
|
|
83
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
84
|
+
0 && (module.exports = {
|
|
85
|
+
applyRunJSContextContributions,
|
|
86
|
+
markRunJSContextsSetupDone,
|
|
87
|
+
registerRunJSContextContribution
|
|
88
|
+
});
|
|
@@ -9,9 +9,12 @@
|
|
|
9
9
|
import type { FlowContext } from '../flowContext';
|
|
10
10
|
import { JSRunner } from '../JSRunner';
|
|
11
11
|
import type { JSRunnerOptions } from '../JSRunner';
|
|
12
|
-
import { RunJSVersion } from './
|
|
12
|
+
import { type RunJSVersion } from './registry';
|
|
13
13
|
export declare function getRunJSDocFor(ctx: FlowContext, { version }?: {
|
|
14
14
|
version?: RunJSVersion;
|
|
15
15
|
}): any;
|
|
16
16
|
export declare function createJSRunnerWithVersion(this: FlowContext, options?: JSRunnerOptions): JSRunner;
|
|
17
|
-
export declare function
|
|
17
|
+
export declare function getRunJSScenesForModel(modelClass: string, version?: RunJSVersion): string[];
|
|
18
|
+
export declare function getRunJSScenesForContext(ctx: FlowContext, { version }?: {
|
|
19
|
+
version?: RunJSVersion;
|
|
20
|
+
}): string[];
|
|
@@ -29,51 +29,60 @@ var helpers_exports = {};
|
|
|
29
29
|
__export(helpers_exports, {
|
|
30
30
|
createJSRunnerWithVersion: () => createJSRunnerWithVersion,
|
|
31
31
|
getRunJSDocFor: () => getRunJSDocFor,
|
|
32
|
-
|
|
32
|
+
getRunJSScenesForContext: () => getRunJSScenesForContext,
|
|
33
|
+
getRunJSScenesForModel: () => getRunJSScenesForModel
|
|
33
34
|
});
|
|
34
35
|
module.exports = __toCommonJS(helpers_exports);
|
|
35
36
|
var import_JSRunner = require("../JSRunner");
|
|
36
|
-
var import_FlowRunJSContext = require("./contexts/FlowRunJSContext");
|
|
37
37
|
var import_registry = require("./registry");
|
|
38
|
-
|
|
39
|
-
var
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
var import_JSCollectionActionRunJSContext = require("./contexts/JSCollectionActionRunJSContext");
|
|
38
|
+
function getLocale(ctx) {
|
|
39
|
+
var _a, _b, _c;
|
|
40
|
+
return ((_b = (_a = ctx == null ? void 0 : ctx.api) == null ? void 0 : _a.auth) == null ? void 0 : _b.locale) || ((_c = ctx == null ? void 0 : ctx.i18n) == null ? void 0 : _c.language) || (ctx == null ? void 0 : ctx.locale);
|
|
41
|
+
}
|
|
42
|
+
__name(getLocale, "getLocale");
|
|
44
43
|
function getRunJSDocFor(ctx, { version = "v1" } = {}) {
|
|
45
|
-
var _a;
|
|
44
|
+
var _a, _b;
|
|
46
45
|
const modelClass = (0, import_registry.getModelClassName)(ctx);
|
|
47
|
-
const ctor = import_registry.RunJSContextRegistry.resolve(version, modelClass) || import_registry.RunJSContextRegistry.resolve("
|
|
48
|
-
|
|
46
|
+
const ctor = import_registry.RunJSContextRegistry.resolve(version, modelClass) || import_registry.RunJSContextRegistry.resolve(version, "*");
|
|
47
|
+
const locale = getLocale(ctx);
|
|
48
|
+
if ((_a = ctor == null ? void 0 : ctor.getDoc) == null ? void 0 : _a.length) {
|
|
49
|
+
return ctor.getDoc(locale) || {};
|
|
50
|
+
}
|
|
51
|
+
return ((_b = ctor == null ? void 0 : ctor.getDoc) == null ? void 0 : _b.call(ctor)) || {};
|
|
49
52
|
}
|
|
50
53
|
__name(getRunJSDocFor, "getRunJSDocFor");
|
|
51
54
|
function createJSRunnerWithVersion(options) {
|
|
52
|
-
var _a;
|
|
53
55
|
const version = (options == null ? void 0 : options.version) || "v1";
|
|
54
56
|
const modelClass = (0, import_registry.getModelClassName)(this);
|
|
55
|
-
const
|
|
56
|
-
const
|
|
57
|
-
|
|
58
|
-
|
|
57
|
+
const ensureFlowContext = /* @__PURE__ */ __name((obj) => obj, "ensureFlowContext");
|
|
58
|
+
const Ctor = import_registry.RunJSContextRegistry.resolve(version, modelClass) || import_registry.RunJSContextRegistry.resolve(version, "*");
|
|
59
|
+
if (!Ctor) {
|
|
60
|
+
throw new Error("[RunJS] No RunJSContext registered for version/model.");
|
|
61
|
+
}
|
|
62
|
+
const runCtx = new Ctor(ensureFlowContext(this));
|
|
63
|
+
const globals = { ctx: runCtx, ...(options == null ? void 0 : options.globals) || {} };
|
|
64
|
+
if (modelClass === "JSFieldModel" || modelClass === "JSBlockModel") {
|
|
65
|
+
if (typeof window !== "undefined") globals.window = window;
|
|
66
|
+
if (typeof document !== "undefined") globals.document = document;
|
|
67
|
+
}
|
|
59
68
|
const { timeoutMs } = options || {};
|
|
60
69
|
return new import_JSRunner.JSRunner({ globals, timeoutMs });
|
|
61
70
|
}
|
|
62
71
|
__name(createJSRunnerWithVersion, "createJSRunnerWithVersion");
|
|
63
|
-
function
|
|
64
|
-
const
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
import_registry.RunJSContextRegistry.register(v, "*", import_FlowRunJSContext.FlowRunJSContext);
|
|
72
|
+
function getRunJSScenesForModel(modelClass, version = "v1") {
|
|
73
|
+
const meta = import_registry.RunJSContextRegistry.getMeta(version, modelClass);
|
|
74
|
+
return Array.isArray(meta == null ? void 0 : meta.scenes) ? [...meta.scenes] : [];
|
|
75
|
+
}
|
|
76
|
+
__name(getRunJSScenesForModel, "getRunJSScenesForModel");
|
|
77
|
+
function getRunJSScenesForContext(ctx, { version = "v1" } = {}) {
|
|
78
|
+
const modelClass = (0, import_registry.getModelClassName)(ctx);
|
|
79
|
+
return getRunJSScenesForModel(modelClass, version);
|
|
72
80
|
}
|
|
73
|
-
__name(
|
|
81
|
+
__name(getRunJSScenesForContext, "getRunJSScenesForContext");
|
|
74
82
|
// Annotate the CommonJS export names for ESM import in node:
|
|
75
83
|
0 && (module.exports = {
|
|
76
84
|
createJSRunnerWithVersion,
|
|
77
85
|
getRunJSDocFor,
|
|
78
|
-
|
|
86
|
+
getRunJSScenesForContext,
|
|
87
|
+
getRunJSScenesForModel
|
|
79
88
|
});
|
|
@@ -6,12 +6,15 @@
|
|
|
6
6
|
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
7
|
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
8
|
*/
|
|
9
|
-
|
|
9
|
+
export type RunJSVersion = 'v1' | (string & {});
|
|
10
|
+
export type RunJSContextCtor = new (delegate: any) => any;
|
|
11
|
+
export type RunJSContextMeta = {
|
|
12
|
+
scenes?: string[];
|
|
13
|
+
};
|
|
10
14
|
export declare class RunJSContextRegistry {
|
|
11
15
|
private static map;
|
|
12
|
-
|
|
13
|
-
private static ensureDefaults;
|
|
14
|
-
static register(version: RunJSVersion, modelClass: string, ctor: RunJSContextCtor): void;
|
|
16
|
+
static register(version: RunJSVersion, modelClass: string, ctor: RunJSContextCtor, meta?: RunJSContextMeta): void;
|
|
15
17
|
static resolve(version: RunJSVersion, modelClass: string): RunJSContextCtor;
|
|
18
|
+
static getMeta(version: RunJSVersion, modelClass: string): RunJSContextMeta | undefined;
|
|
16
19
|
}
|
|
17
20
|
export declare function getModelClassName(ctx: any): string;
|
|
@@ -33,57 +33,25 @@ __export(registry_exports, {
|
|
|
33
33
|
getModelClassName: () => getModelClassName
|
|
34
34
|
});
|
|
35
35
|
module.exports = __toCommonJS(registry_exports);
|
|
36
|
-
var import_FlowRunJSContext = require("./contexts/FlowRunJSContext");
|
|
37
|
-
var import_JSBlockRunJSContext = require("./contexts/JSBlockRunJSContext");
|
|
38
|
-
var import_JSFieldRunJSContext = require("./contexts/JSFieldRunJSContext");
|
|
39
|
-
var import_JSItemRunJSContext = require("./contexts/JSItemRunJSContext");
|
|
40
|
-
var import_FormJSFieldItemRunJSContext = require("./contexts/FormJSFieldItemRunJSContext");
|
|
41
|
-
var import_JSRecordActionRunJSContext = require("./contexts/JSRecordActionRunJSContext");
|
|
42
|
-
var import_JSCollectionActionRunJSContext = require("./contexts/JSCollectionActionRunJSContext");
|
|
43
36
|
const _RunJSContextRegistry = class _RunJSContextRegistry {
|
|
44
|
-
static
|
|
45
|
-
|
|
46
|
-
const v = "v1";
|
|
47
|
-
try {
|
|
48
|
-
const ensure = /* @__PURE__ */ __name((model, ctor) => {
|
|
49
|
-
const key = `${v}:${model}`;
|
|
50
|
-
if (!this.map.has(key)) this.map.set(key, ctor);
|
|
51
|
-
}, "ensure");
|
|
52
|
-
ensure("JSBlockModel", import_JSBlockRunJSContext.JSBlockRunJSContext);
|
|
53
|
-
ensure("JSFieldModel", import_JSFieldRunJSContext.JSFieldRunJSContext);
|
|
54
|
-
ensure("JSItemModel", import_JSItemRunJSContext.JSItemRunJSContext);
|
|
55
|
-
ensure("FormJSFieldItemModel", import_FormJSFieldItemRunJSContext.FormJSFieldItemRunJSContext);
|
|
56
|
-
ensure("JSRecordActionModel", import_JSRecordActionRunJSContext.JSRecordActionRunJSContext);
|
|
57
|
-
ensure("JSCollectionActionModel", import_JSCollectionActionRunJSContext.JSCollectionActionRunJSContext);
|
|
58
|
-
ensure("*", import_FlowRunJSContext.FlowRunJSContext);
|
|
59
|
-
} finally {
|
|
60
|
-
this.defaultsRegistered = true;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
static register(version, modelClass, ctor) {
|
|
64
|
-
this.map.set(`${version}:${modelClass}`, ctor);
|
|
37
|
+
static register(version, modelClass, ctor, meta) {
|
|
38
|
+
this.map.set(`${version}:${modelClass}`, { ctor, meta });
|
|
65
39
|
}
|
|
66
40
|
static resolve(version, modelClass) {
|
|
67
|
-
|
|
68
|
-
return this.map.get(`${version}:${modelClass}`) || this.map.get(`${version}:*`);
|
|
41
|
+
var _a, _b;
|
|
42
|
+
return ((_a = this.map.get(`${version}:${modelClass}`)) == null ? void 0 : _a.ctor) || ((_b = this.map.get(`${version}:*`)) == null ? void 0 : _b.ctor);
|
|
43
|
+
}
|
|
44
|
+
static getMeta(version, modelClass) {
|
|
45
|
+
var _a, _b;
|
|
46
|
+
return ((_a = this.map.get(`${version}:${modelClass}`)) == null ? void 0 : _a.meta) || ((_b = this.map.get(`${version}:*`)) == null ? void 0 : _b.meta);
|
|
69
47
|
}
|
|
70
48
|
};
|
|
71
49
|
__name(_RunJSContextRegistry, "RunJSContextRegistry");
|
|
72
50
|
__publicField(_RunJSContextRegistry, "map", /* @__PURE__ */ new Map());
|
|
73
|
-
__publicField(_RunJSContextRegistry, "defaultsRegistered", false);
|
|
74
51
|
let RunJSContextRegistry = _RunJSContextRegistry;
|
|
75
52
|
function getModelClassName(ctx) {
|
|
76
|
-
var _a, _b
|
|
77
|
-
|
|
78
|
-
if (!model) return "*";
|
|
79
|
-
try {
|
|
80
|
-
const Ctor = model.constructor;
|
|
81
|
-
const use = (_b = (_a = Ctor == null ? void 0 : Ctor.meta) == null ? void 0 : _a.createModelOptions) == null ? void 0 : _b.use;
|
|
82
|
-
if (typeof use === "string" && use) return use;
|
|
83
|
-
} catch (_) {
|
|
84
|
-
}
|
|
85
|
-
const byName = (_c = model == null ? void 0 : model.constructor) == null ? void 0 : _c.name;
|
|
86
|
-
return byName || "*";
|
|
53
|
+
var _a, _b;
|
|
54
|
+
return ((_b = (_a = ctx == null ? void 0 : ctx.model) == null ? void 0 : _a.constructor) == null ? void 0 : _b.name) || "*";
|
|
87
55
|
}
|
|
88
56
|
__name(getModelClassName, "getModelClassName");
|
|
89
57
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -0,0 +1,9 @@
|
|
|
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
|
+
export declare function setupRunJSContexts(): Promise<void>;
|
|
@@ -0,0 +1,88 @@
|
|
|
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 __create = Object.create;
|
|
11
|
+
var __defProp = Object.defineProperty;
|
|
12
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
13
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
14
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
15
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
16
|
+
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
17
|
+
var __export = (target, all) => {
|
|
18
|
+
for (var name in all)
|
|
19
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
20
|
+
};
|
|
21
|
+
var __copyProps = (to, from, except, desc) => {
|
|
22
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
23
|
+
for (let key of __getOwnPropNames(from))
|
|
24
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
25
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
26
|
+
}
|
|
27
|
+
return to;
|
|
28
|
+
};
|
|
29
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
30
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
31
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
32
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
33
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
34
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
35
|
+
mod
|
|
36
|
+
));
|
|
37
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
38
|
+
var setup_exports = {};
|
|
39
|
+
__export(setup_exports, {
|
|
40
|
+
setupRunJSContexts: () => setupRunJSContexts
|
|
41
|
+
});
|
|
42
|
+
module.exports = __toCommonJS(setup_exports);
|
|
43
|
+
var import_registry = require("./registry");
|
|
44
|
+
var import_flowContext = require("../flowContext");
|
|
45
|
+
var import_base = require("./contexts/base");
|
|
46
|
+
var import_contributions = require("./contributions");
|
|
47
|
+
let done = false;
|
|
48
|
+
async function setupRunJSContexts() {
|
|
49
|
+
if (done) return;
|
|
50
|
+
(0, import_base.defineBaseContextMeta)();
|
|
51
|
+
const [
|
|
52
|
+
{ JSBlockRunJSContext },
|
|
53
|
+
{ JSFieldRunJSContext },
|
|
54
|
+
{ JSEditableFieldRunJSContext },
|
|
55
|
+
{ JSItemRunJSContext },
|
|
56
|
+
{ JSColumnRunJSContext },
|
|
57
|
+
{ FormJSFieldItemRunJSContext },
|
|
58
|
+
{ JSRecordActionRunJSContext },
|
|
59
|
+
{ JSCollectionActionRunJSContext }
|
|
60
|
+
] = await Promise.all([
|
|
61
|
+
import("./contexts/JSBlockRunJSContext"),
|
|
62
|
+
import("./contexts/JSFieldRunJSContext"),
|
|
63
|
+
import("./contexts/JSEditableFieldRunJSContext"),
|
|
64
|
+
import("./contexts/JSItemRunJSContext"),
|
|
65
|
+
import("./contexts/JSColumnRunJSContext"),
|
|
66
|
+
import("./contexts/FormJSFieldItemRunJSContext"),
|
|
67
|
+
import("./contexts/JSRecordActionRunJSContext"),
|
|
68
|
+
import("./contexts/JSCollectionActionRunJSContext")
|
|
69
|
+
]);
|
|
70
|
+
const v1 = "v1";
|
|
71
|
+
import_registry.RunJSContextRegistry.register(v1, "*", import_flowContext.FlowRunJSContext);
|
|
72
|
+
import_registry.RunJSContextRegistry.register(v1, "JSBlockModel", JSBlockRunJSContext, { scenes: ["block"] });
|
|
73
|
+
import_registry.RunJSContextRegistry.register(v1, "JSFieldModel", JSFieldRunJSContext, { scenes: ["detail"] });
|
|
74
|
+
import_registry.RunJSContextRegistry.register(v1, "JSEditableFieldModel", JSEditableFieldRunJSContext, { scenes: ["form"] });
|
|
75
|
+
import_registry.RunJSContextRegistry.register(v1, "JSItemModel", JSItemRunJSContext, { scenes: ["form"] });
|
|
76
|
+
import_registry.RunJSContextRegistry.register(v1, "JSColumnModel", JSColumnRunJSContext, { scenes: ["table"] });
|
|
77
|
+
import_registry.RunJSContextRegistry.register(v1, "FormJSFieldItemModel", FormJSFieldItemRunJSContext, { scenes: ["form"] });
|
|
78
|
+
import_registry.RunJSContextRegistry.register(v1, "JSRecordActionModel", JSRecordActionRunJSContext, { scenes: ["table"] });
|
|
79
|
+
import_registry.RunJSContextRegistry.register(v1, "JSCollectionActionModel", JSCollectionActionRunJSContext, { scenes: ["table"] });
|
|
80
|
+
await (0, import_contributions.applyRunJSContextContributions)(v1);
|
|
81
|
+
done = true;
|
|
82
|
+
(0, import_contributions.markRunJSContextsSetupDone)(v1);
|
|
83
|
+
}
|
|
84
|
+
__name(setupRunJSContexts, "setupRunJSContexts");
|
|
85
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
86
|
+
0 && (module.exports = {
|
|
87
|
+
setupRunJSContexts
|
|
88
|
+
});
|
package/lib/runjs-context/snippets/global/{copy-record-json.snippet.js → api-request.snippet.js}
RENAMED
|
@@ -24,19 +24,34 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
24
24
|
return to;
|
|
25
25
|
};
|
|
26
26
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
27
|
-
var
|
|
28
|
-
__export(
|
|
29
|
-
default: () =>
|
|
27
|
+
var api_request_snippet_exports = {};
|
|
28
|
+
__export(api_request_snippet_exports, {
|
|
29
|
+
default: () => api_request_snippet_default
|
|
30
30
|
});
|
|
31
|
-
module.exports = __toCommonJS(
|
|
31
|
+
module.exports = __toCommonJS(api_request_snippet_exports);
|
|
32
32
|
const snippet = {
|
|
33
33
|
contexts: ["*"],
|
|
34
|
-
prefix: "sn-
|
|
35
|
-
label: "
|
|
36
|
-
description: "
|
|
34
|
+
prefix: "sn-api-request",
|
|
35
|
+
label: "API request template",
|
|
36
|
+
description: "Basic template to send HTTP requests via ctx.api.request",
|
|
37
|
+
locales: {
|
|
38
|
+
"zh-CN": {
|
|
39
|
+
label: "API \u8BF7\u6C42\u6A21\u677F",
|
|
40
|
+
description: "\u4F7F\u7528 ctx.api.request \u53D1\u9001 HTTP \u8BF7\u6C42\u7684\u57FA\u7840\u6A21\u677F"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
37
43
|
content: `
|
|
38
|
-
|
|
39
|
-
ctx.
|
|
44
|
+
// Replace url/method/params/data as needed
|
|
45
|
+
const response = await ctx.api.request({
|
|
46
|
+
url: 'users:list',
|
|
47
|
+
method: 'get',
|
|
48
|
+
params: {
|
|
49
|
+
pageSize: 10,
|
|
50
|
+
},
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
ctx.message.success(ctx.t('Request finished'));
|
|
54
|
+
console.log(ctx.t('Response data:'), response?.data);
|
|
40
55
|
`
|
|
41
56
|
};
|
|
42
|
-
var
|
|
57
|
+
var api_request_snippet_default = snippet;
|
|
@@ -0,0 +1,61 @@
|
|
|
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 clipboard_copy_text_snippet_exports = {};
|
|
28
|
+
__export(clipboard_copy_text_snippet_exports, {
|
|
29
|
+
default: () => clipboard_copy_text_snippet_default
|
|
30
|
+
});
|
|
31
|
+
module.exports = __toCommonJS(clipboard_copy_text_snippet_exports);
|
|
32
|
+
const snippet = {
|
|
33
|
+
contexts: ["*"],
|
|
34
|
+
prefix: "sn-clipboard-copy",
|
|
35
|
+
label: "Copy text to clipboard (function)",
|
|
36
|
+
description: "A reusable function that copies a given string to the clipboard.",
|
|
37
|
+
locales: {
|
|
38
|
+
"zh-CN": {
|
|
39
|
+
label: "\u590D\u5236\u6587\u672C\u5230\u526A\u8D34\u677F\uFF08\u51FD\u6570\uFF09",
|
|
40
|
+
description: "\u901A\u7528\u51FD\u6570\uFF1A\u63A5\u53D7\u4E00\u4E2A\u5B57\u7B26\u4E32\u53C2\u6570\u5E76\u590D\u5236\u5230\u526A\u8D34\u677F\u3002"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
content: `
|
|
44
|
+
// A general utility function that copies text to clipboard.
|
|
45
|
+
// Usage:
|
|
46
|
+
// const ok = await copyTextToClipboard('Hello');
|
|
47
|
+
// if (ok) { /* success */ } else { /* handle failure */ }
|
|
48
|
+
async function copyTextToClipboard(text) {
|
|
49
|
+
const s = String(text ?? '');
|
|
50
|
+
try {
|
|
51
|
+
if (navigator?.clipboard?.writeText) {
|
|
52
|
+
await navigator.clipboard.writeText(s);
|
|
53
|
+
return true;
|
|
54
|
+
}
|
|
55
|
+
} catch (_) {
|
|
56
|
+
// Fallback below
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
`
|
|
60
|
+
};
|
|
61
|
+
var clipboard_copy_text_snippet_default = snippet;
|
package/lib/runjs-context/snippets/global/{view-navigation-push.snippet.js → import-esm.snippet.js}
RENAMED
|
@@ -24,21 +24,35 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
24
24
|
return to;
|
|
25
25
|
};
|
|
26
26
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
27
|
-
var
|
|
28
|
-
__export(
|
|
29
|
-
default: () =>
|
|
27
|
+
var import_esm_snippet_exports = {};
|
|
28
|
+
__export(import_esm_snippet_exports, {
|
|
29
|
+
default: () => import_esm_snippet_default
|
|
30
30
|
});
|
|
31
|
-
module.exports = __toCommonJS(
|
|
31
|
+
module.exports = __toCommonJS(import_esm_snippet_exports);
|
|
32
32
|
const snippet = {
|
|
33
33
|
contexts: ["*"],
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
34
|
+
prefix: "sn-import",
|
|
35
|
+
label: "Import ESM module",
|
|
36
|
+
description: "Dynamically import an ESM module by URL",
|
|
37
|
+
locales: {
|
|
38
|
+
"zh-CN": {
|
|
39
|
+
label: "\u5BFC\u5165 ESM \u6A21\u5757",
|
|
40
|
+
description: "\u6309 URL \u52A8\u6001\u5BFC\u5165 ESM \u6A21\u5757"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
38
43
|
content: `
|
|
39
|
-
//
|
|
40
|
-
|
|
41
|
-
|
|
44
|
+
// Import an ESM module by URL
|
|
45
|
+
// Works in yarn dev and yarn start
|
|
46
|
+
const mod = await ctx.importAsync('https://cdn.jsdelivr.net/npm/lit-html@2/+esm');
|
|
47
|
+
const { html, render } = mod;
|
|
48
|
+
|
|
49
|
+
ctx.element.innerHTML = '';
|
|
50
|
+
const container = document.createElement('div');
|
|
51
|
+
container.style.padding = '8px';
|
|
52
|
+
container.style.border = '1px dashed #999';
|
|
53
|
+
ctx.element.append(container);
|
|
54
|
+
|
|
55
|
+
render(html\`<span style="color:#52c41a;">lit-html loaded and rendered</span>\`, container);
|
|
42
56
|
`
|
|
43
57
|
};
|
|
44
|
-
var
|
|
58
|
+
var import_esm_snippet_default = snippet;
|
|
@@ -34,6 +34,12 @@ const snippet = {
|
|
|
34
34
|
prefix: "sn-msg-error",
|
|
35
35
|
label: "Message error",
|
|
36
36
|
description: "Show an error toast message",
|
|
37
|
+
locales: {
|
|
38
|
+
"zh-CN": {
|
|
39
|
+
label: "\u9519\u8BEF\u6D88\u606F\u63D0\u793A",
|
|
40
|
+
description: "\u663E\u793A\u4E00\u6761\u9519\u8BEF\u63D0\u793A\u6D88\u606F"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
37
43
|
content: `
|
|
38
44
|
ctx.message.error(ctx.t('Operation failed'));
|
|
39
45
|
`
|
|
@@ -34,6 +34,12 @@ const snippet = {
|
|
|
34
34
|
prefix: "sn-msg",
|
|
35
35
|
label: "Message success",
|
|
36
36
|
description: "Show a success toast message",
|
|
37
|
+
locales: {
|
|
38
|
+
"zh-CN": {
|
|
39
|
+
label: "\u6210\u529F\u6D88\u606F\u63D0\u793A",
|
|
40
|
+
description: "\u663E\u793A\u4E00\u6761\u6210\u529F\u63D0\u793A\u6D88\u606F"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
37
43
|
content: `
|
|
38
44
|
ctx.message.success(ctx.t('Operation succeeded'));
|
|
39
45
|
`
|
|
@@ -6,11 +6,6 @@
|
|
|
6
6
|
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
7
|
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
8
|
*/
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
label: string;
|
|
13
|
-
description: string;
|
|
14
|
-
content: string;
|
|
15
|
-
};
|
|
16
|
-
export default _default;
|
|
9
|
+
import type { SnippetModule } from '../types';
|
|
10
|
+
declare const snippet: SnippetModule;
|
|
11
|
+
export default snippet;
|
|
@@ -29,11 +29,17 @@ __export(notification_open_snippet_exports, {
|
|
|
29
29
|
default: () => notification_open_snippet_default
|
|
30
30
|
});
|
|
31
31
|
module.exports = __toCommonJS(notification_open_snippet_exports);
|
|
32
|
-
|
|
32
|
+
const snippet = {
|
|
33
33
|
contexts: ["*"],
|
|
34
34
|
prefix: "sn-notify",
|
|
35
35
|
label: "Open notification",
|
|
36
36
|
description: "Open an AntD notification with custom content",
|
|
37
|
+
locales: {
|
|
38
|
+
"zh-CN": {
|
|
39
|
+
label: "\u6253\u5F00\u901A\u77E5",
|
|
40
|
+
description: "\u5C55\u793A\u4E00\u6761\u81EA\u5B9A\u4E49\u5185\u5BB9\u7684\u901A\u77E5"
|
|
41
|
+
}
|
|
42
|
+
},
|
|
37
43
|
content: `
|
|
38
44
|
ctx.notification.open({
|
|
39
45
|
message: ctx.t('Notification title'),
|
|
@@ -41,3 +47,4 @@ ctx.notification.open({
|
|
|
41
47
|
});
|
|
42
48
|
`
|
|
43
49
|
};
|
|
50
|
+
var notification_open_snippet_default = snippet;
|