@nocobase/plugin-flow-engine 2.1.22 → 2.1.24

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.
@@ -8,16 +8,16 @@
8
8
  */
9
9
 
10
10
  module.exports = {
11
- "@nocobase/client": "2.1.22",
11
+ "@nocobase/client": "2.1.24",
12
12
  "lodash": "4.18.1",
13
- "@nocobase/database": "2.1.22",
14
- "@nocobase/data-source-manager": "2.1.22",
15
- "@nocobase/resourcer": "2.1.22",
16
- "@nocobase/utils": "2.1.22",
17
- "@nocobase/cache": "2.1.22",
18
- "@nocobase/server": "2.1.22",
19
- "@nocobase/actions": "2.1.22",
13
+ "@nocobase/database": "2.1.24",
14
+ "@nocobase/data-source-manager": "2.1.24",
15
+ "@nocobase/resourcer": "2.1.24",
16
+ "@nocobase/utils": "2.1.24",
17
+ "@nocobase/cache": "2.1.24",
18
+ "@nocobase/server": "2.1.24",
19
+ "@nocobase/actions": "2.1.24",
20
20
  "sequelize": "6.35.2",
21
21
  "@formily/json-schema": "2.3.7",
22
- "@nocobase/ai": "2.1.22"
22
+ "@nocobase/ai": "2.1.24"
23
23
  };
@@ -1 +1 @@
1
- {"name":"@ant-design/icons-svg","version":"4.3.1","sideEffects":false,"description":"Abstract nodes for ant design icons.","contributors":["HeskeyBaozi <hezhiyu233@foxmail.com>"],"homepage":"https://github.com/ant-design/ant-design-icons/","license":"MIT","main":"lib/index.js","module":"es/index.js","files":["lib","es","inline-svg","inline-namespaced-svg"],"repository":{"type":"git","url":"git+https://github.com/ant-design/ant-design-icons.git"},"scripts":{"g":"npm run generate","generate":"cross-env NODE_ENV=production gulp --require ts-node/register/transpile-only","type-check":"tsc --noEmit","build:es":"tsc --project tsconfig.build.json --module esnext --outDir es","build:lib":"tsc --project tsconfig.build.json --module commonjs --outDir lib","build":"cross-env NODE_ENV=production && npm run build:es && npm run build:lib","test":"cross-env NODE_ENV=test && npm run test:unit","test:unit":"jest","prepublishOnly":"npm run test && npm run g && npm run build && npm run type-check && npm run digest","digest":"node scripts/digest.js"},"bugs":{"url":"https://github.com/ant-design/ant-design-icons/issues"},"devDependencies":{"@babel/core":"^7.8.6","@babel/preset-env":"^7.8.6","@babel/preset-typescript":"^7.8.3","@rgrove/parse-xml":"^2.0.2","@types/gulp":"^4.0.6","@types/gulp-concat":"^0.0.32","@types/gulp-rename":"^0.0.33","@types/jest":"^25.1.3","@types/lodash.camelcase":"^4.3.6","@types/lodash.template":"^4.4.6","@types/lodash.upperfirst":"^4.3.6","@types/node":"^13.9.3","@types/ramda":"^0.26.43","@types/rgrove__parse-xml":"^1.1.0","@types/svgo":"^1.3.1","@types/through2":"^2.0.34","@typescript-eslint/eslint-plugin":"^2.21.0","@typescript-eslint/parser":"^2.21.0","babel-jest":"^25.1.0","cross-env":"^7.0.0","del":"^5.1.0","eslint":"^7.16.0","globby":"^11.0.0","gulp":"^4.0.2","gulp-clone":"^2.0.1","gulp-concat":"^2.6.1","gulp-header":"^2.0.9","gulp-rename":"^2.0.0","jest":"^25.1.0","lodash.camelcase":"^4.3.0","lodash.template":"^4.5.0","lodash.upperfirst":"^4.3.1","ramda":"^0.27.0","svgo":"^1.3.2","through2":"^3.0.1","ts-node":"^8.6.2","typescript":"^4.0.0","vinyl":"^2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_lastModified":"2026-07-09T04:48:41.337Z"}
1
+ {"name":"@ant-design/icons-svg","version":"4.3.1","sideEffects":false,"description":"Abstract nodes for ant design icons.","contributors":["HeskeyBaozi <hezhiyu233@foxmail.com>"],"homepage":"https://github.com/ant-design/ant-design-icons/","license":"MIT","main":"lib/index.js","module":"es/index.js","files":["lib","es","inline-svg","inline-namespaced-svg"],"repository":{"type":"git","url":"git+https://github.com/ant-design/ant-design-icons.git"},"scripts":{"g":"npm run generate","generate":"cross-env NODE_ENV=production gulp --require ts-node/register/transpile-only","type-check":"tsc --noEmit","build:es":"tsc --project tsconfig.build.json --module esnext --outDir es","build:lib":"tsc --project tsconfig.build.json --module commonjs --outDir lib","build":"cross-env NODE_ENV=production && npm run build:es && npm run build:lib","test":"cross-env NODE_ENV=test && npm run test:unit","test:unit":"jest","prepublishOnly":"npm run test && npm run g && npm run build && npm run type-check && npm run digest","digest":"node scripts/digest.js"},"bugs":{"url":"https://github.com/ant-design/ant-design-icons/issues"},"devDependencies":{"@babel/core":"^7.8.6","@babel/preset-env":"^7.8.6","@babel/preset-typescript":"^7.8.3","@rgrove/parse-xml":"^2.0.2","@types/gulp":"^4.0.6","@types/gulp-concat":"^0.0.32","@types/gulp-rename":"^0.0.33","@types/jest":"^25.1.3","@types/lodash.camelcase":"^4.3.6","@types/lodash.template":"^4.4.6","@types/lodash.upperfirst":"^4.3.6","@types/node":"^13.9.3","@types/ramda":"^0.26.43","@types/rgrove__parse-xml":"^1.1.0","@types/svgo":"^1.3.1","@types/through2":"^2.0.34","@typescript-eslint/eslint-plugin":"^2.21.0","@typescript-eslint/parser":"^2.21.0","babel-jest":"^25.1.0","cross-env":"^7.0.0","del":"^5.1.0","eslint":"^7.16.0","globby":"^11.0.0","gulp":"^4.0.2","gulp-clone":"^2.0.1","gulp-concat":"^2.6.1","gulp-header":"^2.0.9","gulp-rename":"^2.0.0","jest":"^25.1.0","lodash.camelcase":"^4.3.0","lodash.template":"^4.5.0","lodash.upperfirst":"^4.3.1","ramda":"^0.27.0","svgo":"^1.3.2","through2":"^3.0.1","ts-node":"^8.6.2","typescript":"^4.0.0","vinyl":"^2.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_lastModified":"2026-07-13T15:20:34.500Z"}
@@ -1 +1 @@
1
- {"name":"acorn","description":"ECMAScript parser","homepage":"https://github.com/acornjs/acorn","main":"dist/acorn.js","types":"dist/acorn.d.ts","module":"dist/acorn.mjs","exports":{".":[{"import":"./dist/acorn.mjs","require":"./dist/acorn.js","default":"./dist/acorn.js"},"./dist/acorn.js"],"./package.json":"./package.json"},"version":"8.11.2","engines":{"node":">=0.4.0"},"maintainers":[{"name":"Marijn Haverbeke","email":"marijnh@gmail.com","web":"https://marijnhaverbeke.nl"},{"name":"Ingvar Stepanyan","email":"me@rreverser.com","web":"https://rreverser.com/"},{"name":"Adrian Heine","web":"http://adrianheine.de"}],"repository":{"type":"git","url":"https://github.com/acornjs/acorn.git"},"license":"MIT","scripts":{"prepare":"cd ..; npm run build:main"},"bin":{"acorn":"./bin/acorn"},"_lastModified":"2026-07-09T04:48:42.439Z"}
1
+ {"name":"acorn","description":"ECMAScript parser","homepage":"https://github.com/acornjs/acorn","main":"dist/acorn.js","types":"dist/acorn.d.ts","module":"dist/acorn.mjs","exports":{".":[{"import":"./dist/acorn.mjs","require":"./dist/acorn.js","default":"./dist/acorn.js"},"./dist/acorn.js"],"./package.json":"./package.json"},"version":"8.11.2","engines":{"node":">=0.4.0"},"maintainers":[{"name":"Marijn Haverbeke","email":"marijnh@gmail.com","web":"https://marijnhaverbeke.nl"},{"name":"Ingvar Stepanyan","email":"me@rreverser.com","web":"https://rreverser.com/"},{"name":"Adrian Heine","web":"http://adrianheine.de"}],"repository":{"type":"git","url":"https://github.com/acornjs/acorn.git"},"license":"MIT","scripts":{"prepare":"cd ..; npm run build:main"},"bin":{"acorn":"./bin/acorn"},"_lastModified":"2026-07-13T15:20:35.530Z"}
@@ -1 +1 @@
1
- {"name":"acorn-jsx","description":"Modern, fast React.js JSX parser","homepage":"https://github.com/acornjs/acorn-jsx","version":"5.3.2","maintainers":[{"name":"Ingvar Stepanyan","email":"me@rreverser.com","web":"http://rreverser.com/"}],"repository":{"type":"git","url":"https://github.com/acornjs/acorn-jsx"},"license":"MIT","scripts":{"test":"node test/run.js"},"peerDependencies":{"acorn":"^6.0.0 || ^7.0.0 || ^8.0.0"},"devDependencies":{"acorn":"^8.0.1"},"_lastModified":"2026-07-09T04:48:42.866Z"}
1
+ {"name":"acorn-jsx","description":"Modern, fast React.js JSX parser","homepage":"https://github.com/acornjs/acorn-jsx","version":"5.3.2","maintainers":[{"name":"Ingvar Stepanyan","email":"me@rreverser.com","web":"http://rreverser.com/"}],"repository":{"type":"git","url":"https://github.com/acornjs/acorn-jsx"},"license":"MIT","scripts":{"test":"node test/run.js"},"peerDependencies":{"acorn":"^6.0.0 || ^7.0.0 || ^8.0.0"},"devDependencies":{"acorn":"^8.0.1"},"_lastModified":"2026-07-13T15:20:35.987Z"}
@@ -1 +1 @@
1
- {"name":"acorn-walk","description":"ECMAScript (ESTree) AST walker","homepage":"https://github.com/acornjs/acorn","main":"dist/walk.js","types":"dist/walk.d.ts","module":"dist/walk.mjs","exports":{".":[{"import":"./dist/walk.mjs","require":"./dist/walk.js","default":"./dist/walk.js"},"./dist/walk.js"],"./package.json":"./package.json"},"version":"8.3.4","engines":{"node":">=0.4.0"},"dependencies":{"acorn":"^8.11.0"},"maintainers":[{"name":"Marijn Haverbeke","email":"marijnh@gmail.com","web":"https://marijnhaverbeke.nl"},{"name":"Ingvar Stepanyan","email":"me@rreverser.com","web":"https://rreverser.com/"},{"name":"Adrian Heine","web":"http://adrianheine.de"}],"repository":{"type":"git","url":"https://github.com/acornjs/acorn.git"},"scripts":{"prepare":"cd ..; npm run build:walk"},"license":"MIT","_lastModified":"2026-07-09T04:48:42.981Z"}
1
+ {"name":"acorn-walk","description":"ECMAScript (ESTree) AST walker","homepage":"https://github.com/acornjs/acorn","main":"dist/walk.js","types":"dist/walk.d.ts","module":"dist/walk.mjs","exports":{".":[{"import":"./dist/walk.mjs","require":"./dist/walk.js","default":"./dist/walk.js"},"./dist/walk.js"],"./package.json":"./package.json"},"version":"8.3.4","engines":{"node":">=0.4.0"},"dependencies":{"acorn":"^8.11.0"},"maintainers":[{"name":"Marijn Haverbeke","email":"marijnh@gmail.com","web":"https://marijnhaverbeke.nl"},{"name":"Ingvar Stepanyan","email":"me@rreverser.com","web":"https://rreverser.com/"},{"name":"Adrian Heine","web":"http://adrianheine.de"}],"repository":{"type":"git","url":"https://github.com/acornjs/acorn.git"},"scripts":{"prepare":"cd ..; npm run build:walk"},"license":"MIT","_lastModified":"2026-07-13T15:20:36.103Z"}
@@ -1 +1 @@
1
- {"name":"ses","version":"1.14.0","description":"Hardened JavaScript for Fearless Cooperation","keywords":["lockdown","harden","Compartment","assert","security","confinement","isolation","object capabilities","ocaps","secure execution","third-party code","prototype pollution","supply-chain attack","plugin"],"author":"Agoric","license":"Apache-2.0","homepage":"https://github.com/Agoric/SES-shim/tree/master/packages/ses#readme","repository":{"type":"git","url":"git+https://github.com/endojs/endo.git","directory":"packages/ses"},"bugs":{"url":"https://github.com/endojs/endo/issues"},"type":"module","main":"./dist/ses.cjs","module":"./index.js","unpkg":"./dist/ses.umd.js","types":"./types.d.ts","exports":{".":{"import":{"types":"./types.d.ts","xs":"./src-xs/index.js","default":"./index.js"},"require":{"types":"./dist/types.d.cts","default":"./dist/ses.cjs"}},"./lockdown":{"import":{"types":"./types.d.ts","default":"./index.js"},"require":{"types":"./dist/types.d.cts","default":"./dist/ses.cjs"}},"./hermes":{"require":{"types":"./dist/types.d.cts","default":"./dist/ses-hermes.cjs"}},"./tools.js":"./tools.js","./assert-shim.js":"./assert-shim.js","./lockdown-shim.js":{"xs":"./src-xs/lockdown-shim.js","default":"./lockdown-shim.js"},"./compartment-shim.js":{"xs":"./src-xs/compartment-shim.js","default":"./compartment-shim.js"},"./console-shim.js":"./console-shim.js","./package.json":"./package.json"},"scripts":{"build:vanilla":"node scripts/bundle.js","build:hermes":"node scripts/bundle.js hermes","build":"yarn build:vanilla && yarn build:hermes","clean":"rm -rf dist","cover":"c8 ava","demo":"python3 -m http.server","lint":"yarn lint:types && yarn lint:eslint","lint-fix":"eslint --fix .","lint:eslint":"eslint .","lint:types":"tsc","prepare":"npm run clean && npm run build","qt":"ava","test":"tsd && ava","test:hermes":"./scripts/hermes-test.sh","test:xs":"xst dist/ses.umd.js test/_lockdown-safe.js && node scripts/generate-test-xs.js && xst tmp/test-xs.js && rm -rf tmp","postpack":"git clean -fX \"*.d.ts*\" \"*.d.cts*\" \"*.d.mts*\" \"*.tsbuildinfo\""},"dependencies":{"@endo/cache-map":"^1.1.0","@endo/env-options":"^1.1.11","@endo/immutable-arraybuffer":"^1.1.2"},"devDependencies":{"@babel/generator":"^7.26.3","@babel/parser":"~7.26.2","@babel/traverse":"~7.25.9","@babel/types":"~7.26.0","@endo/compartment-mapper":"^1.6.3","@endo/module-source":"^1.3.3","@endo/test262-runner":"^0.1.48","@types/babel__traverse":"^7.20.5","ava":"^6.1.3","babel-eslint":"^10.1.0","c8":"^7.14.0","core-js":"^3.31.0","eslint":"^8.57.1","eslint-config-airbnb-base":"^15.0.0","eslint-config-prettier":"^9.1.0","eslint-plugin-eslint-comments":"^3.2.0","eslint-plugin-import":"^2.31.0","hermes-engine-cli":"^0.12.0","prettier":"^3.5.3","terser":"^5.16.6","tsd":"^0.31.2","typescript":"~5.8.3"},"files":["./*.d.ts","./*.js","./*.map","LICENSE*","SECURITY*","dist","lib","src","tools"],"publishConfig":{"access":"public"},"eslintConfig":{"extends":["plugin:@endo/ses"]},"ava":{"files":["test/**/*.test.*"],"timeout":"2m"},"typeCoverage":{"atLeast":81.17},"gitHead":"9815aea9541f241389d2135c6097a7442bdffa17","_lastModified":"2026-07-09T04:48:42.001Z"}
1
+ {"name":"ses","version":"1.14.0","description":"Hardened JavaScript for Fearless Cooperation","keywords":["lockdown","harden","Compartment","assert","security","confinement","isolation","object capabilities","ocaps","secure execution","third-party code","prototype pollution","supply-chain attack","plugin"],"author":"Agoric","license":"Apache-2.0","homepage":"https://github.com/Agoric/SES-shim/tree/master/packages/ses#readme","repository":{"type":"git","url":"git+https://github.com/endojs/endo.git","directory":"packages/ses"},"bugs":{"url":"https://github.com/endojs/endo/issues"},"type":"module","main":"./dist/ses.cjs","module":"./index.js","unpkg":"./dist/ses.umd.js","types":"./types.d.ts","exports":{".":{"import":{"types":"./types.d.ts","xs":"./src-xs/index.js","default":"./index.js"},"require":{"types":"./dist/types.d.cts","default":"./dist/ses.cjs"}},"./lockdown":{"import":{"types":"./types.d.ts","default":"./index.js"},"require":{"types":"./dist/types.d.cts","default":"./dist/ses.cjs"}},"./hermes":{"require":{"types":"./dist/types.d.cts","default":"./dist/ses-hermes.cjs"}},"./tools.js":"./tools.js","./assert-shim.js":"./assert-shim.js","./lockdown-shim.js":{"xs":"./src-xs/lockdown-shim.js","default":"./lockdown-shim.js"},"./compartment-shim.js":{"xs":"./src-xs/compartment-shim.js","default":"./compartment-shim.js"},"./console-shim.js":"./console-shim.js","./package.json":"./package.json"},"scripts":{"build:vanilla":"node scripts/bundle.js","build:hermes":"node scripts/bundle.js hermes","build":"yarn build:vanilla && yarn build:hermes","clean":"rm -rf dist","cover":"c8 ava","demo":"python3 -m http.server","lint":"yarn lint:types && yarn lint:eslint","lint-fix":"eslint --fix .","lint:eslint":"eslint .","lint:types":"tsc","prepare":"npm run clean && npm run build","qt":"ava","test":"tsd && ava","test:hermes":"./scripts/hermes-test.sh","test:xs":"xst dist/ses.umd.js test/_lockdown-safe.js && node scripts/generate-test-xs.js && xst tmp/test-xs.js && rm -rf tmp","postpack":"git clean -fX \"*.d.ts*\" \"*.d.cts*\" \"*.d.mts*\" \"*.tsbuildinfo\""},"dependencies":{"@endo/cache-map":"^1.1.0","@endo/env-options":"^1.1.11","@endo/immutable-arraybuffer":"^1.1.2"},"devDependencies":{"@babel/generator":"^7.26.3","@babel/parser":"~7.26.2","@babel/traverse":"~7.25.9","@babel/types":"~7.26.0","@endo/compartment-mapper":"^1.6.3","@endo/module-source":"^1.3.3","@endo/test262-runner":"^0.1.48","@types/babel__traverse":"^7.20.5","ava":"^6.1.3","babel-eslint":"^10.1.0","c8":"^7.14.0","core-js":"^3.31.0","eslint":"^8.57.1","eslint-config-airbnb-base":"^15.0.0","eslint-config-prettier":"^9.1.0","eslint-plugin-eslint-comments":"^3.2.0","eslint-plugin-import":"^2.31.0","hermes-engine-cli":"^0.12.0","prettier":"^3.5.3","terser":"^5.16.6","tsd":"^0.31.2","typescript":"~5.8.3"},"files":["./*.d.ts","./*.js","./*.map","LICENSE*","SECURITY*","dist","lib","src","tools"],"publishConfig":{"access":"public"},"eslintConfig":{"extends":["plugin:@endo/ses"]},"ava":{"files":["test/**/*.test.*"],"timeout":"2m"},"typeCoverage":{"atLeast":81.17},"gitHead":"9815aea9541f241389d2135c6097a7442bdffa17","_lastModified":"2026-07-13T15:20:34.990Z"}
@@ -1 +1 @@
1
- {"name":"zod","version":"4.3.5","type":"module","license":"MIT","author":"Colin McDonnell <zod@colinhacks.com>","description":"TypeScript-first schema declaration and validation library with static type inference","homepage":"https://zod.dev","llms":"https://zod.dev/llms.txt","llmsFull":"https://zod.dev/llms-full.txt","mcpServer":"https://mcp.inkeep.com/zod/mcp","funding":"https://github.com/sponsors/colinhacks","sideEffects":false,"files":["src","**/*.js","**/*.mjs","**/*.cjs","**/*.d.ts","**/*.d.mts","**/*.d.cts","**/package.json"],"keywords":["typescript","schema","validation","type","inference"],"main":"./index.cjs","types":"./index.d.cts","module":"./index.js","zshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts","./mini":"./src/mini/index.ts","./locales":"./src/locales/index.ts","./v3":"./src/v3/index.ts","./v4":"./src/v4/index.ts","./v4-mini":"./src/v4-mini/index.ts","./v4/mini":"./src/v4/mini/index.ts","./v4/core":"./src/v4/core/index.ts","./v4/locales":"./src/v4/locales/index.ts","./v4/locales/*":"./src/v4/locales/*"},"conditions":{"@zod/source":"src"}},"exports":{"./package.json":"./package.json",".":{"@zod/source":"./src/index.ts","types":"./index.d.cts","import":"./index.js","require":"./index.cjs"},"./mini":{"@zod/source":"./src/mini/index.ts","types":"./mini/index.d.cts","import":"./mini/index.js","require":"./mini/index.cjs"},"./locales":{"@zod/source":"./src/locales/index.ts","types":"./locales/index.d.cts","import":"./locales/index.js","require":"./locales/index.cjs"},"./v3":{"@zod/source":"./src/v3/index.ts","types":"./v3/index.d.cts","import":"./v3/index.js","require":"./v3/index.cjs"},"./v4":{"@zod/source":"./src/v4/index.ts","types":"./v4/index.d.cts","import":"./v4/index.js","require":"./v4/index.cjs"},"./v4-mini":{"@zod/source":"./src/v4-mini/index.ts","types":"./v4-mini/index.d.cts","import":"./v4-mini/index.js","require":"./v4-mini/index.cjs"},"./v4/mini":{"@zod/source":"./src/v4/mini/index.ts","types":"./v4/mini/index.d.cts","import":"./v4/mini/index.js","require":"./v4/mini/index.cjs"},"./v4/core":{"@zod/source":"./src/v4/core/index.ts","types":"./v4/core/index.d.cts","import":"./v4/core/index.js","require":"./v4/core/index.cjs"},"./v4/locales":{"@zod/source":"./src/v4/locales/index.ts","types":"./v4/locales/index.d.cts","import":"./v4/locales/index.js","require":"./v4/locales/index.cjs"},"./v4/locales/*":{"@zod/source":"./src/v4/locales/*","types":"./v4/locales/*","import":"./v4/locales/*","require":"./v4/locales/*"}},"repository":{"type":"git","url":"git+https://github.com/colinhacks/zod.git"},"bugs":{"url":"https://github.com/colinhacks/zod/issues"},"support":{"backing":{"npm-funding":true}},"scripts":{"clean":"git clean -xdf . -e node_modules","build":"zshy --project tsconfig.build.json","postbuild":"tsx ../../scripts/write-stub-package-jsons.ts && pnpm biome check --write .","test:watch":"pnpm vitest","test":"pnpm vitest run","prepublishOnly":"tsx ../../scripts/check-versions.ts"},"_lastModified":"2026-07-09T04:48:44.138Z"}
1
+ {"name":"zod","version":"4.3.5","type":"module","license":"MIT","author":"Colin McDonnell <zod@colinhacks.com>","description":"TypeScript-first schema declaration and validation library with static type inference","homepage":"https://zod.dev","llms":"https://zod.dev/llms.txt","llmsFull":"https://zod.dev/llms-full.txt","mcpServer":"https://mcp.inkeep.com/zod/mcp","funding":"https://github.com/sponsors/colinhacks","sideEffects":false,"files":["src","**/*.js","**/*.mjs","**/*.cjs","**/*.d.ts","**/*.d.mts","**/*.d.cts","**/package.json"],"keywords":["typescript","schema","validation","type","inference"],"main":"./index.cjs","types":"./index.d.cts","module":"./index.js","zshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts","./mini":"./src/mini/index.ts","./locales":"./src/locales/index.ts","./v3":"./src/v3/index.ts","./v4":"./src/v4/index.ts","./v4-mini":"./src/v4-mini/index.ts","./v4/mini":"./src/v4/mini/index.ts","./v4/core":"./src/v4/core/index.ts","./v4/locales":"./src/v4/locales/index.ts","./v4/locales/*":"./src/v4/locales/*"},"conditions":{"@zod/source":"src"}},"exports":{"./package.json":"./package.json",".":{"@zod/source":"./src/index.ts","types":"./index.d.cts","import":"./index.js","require":"./index.cjs"},"./mini":{"@zod/source":"./src/mini/index.ts","types":"./mini/index.d.cts","import":"./mini/index.js","require":"./mini/index.cjs"},"./locales":{"@zod/source":"./src/locales/index.ts","types":"./locales/index.d.cts","import":"./locales/index.js","require":"./locales/index.cjs"},"./v3":{"@zod/source":"./src/v3/index.ts","types":"./v3/index.d.cts","import":"./v3/index.js","require":"./v3/index.cjs"},"./v4":{"@zod/source":"./src/v4/index.ts","types":"./v4/index.d.cts","import":"./v4/index.js","require":"./v4/index.cjs"},"./v4-mini":{"@zod/source":"./src/v4-mini/index.ts","types":"./v4-mini/index.d.cts","import":"./v4-mini/index.js","require":"./v4-mini/index.cjs"},"./v4/mini":{"@zod/source":"./src/v4/mini/index.ts","types":"./v4/mini/index.d.cts","import":"./v4/mini/index.js","require":"./v4/mini/index.cjs"},"./v4/core":{"@zod/source":"./src/v4/core/index.ts","types":"./v4/core/index.d.cts","import":"./v4/core/index.js","require":"./v4/core/index.cjs"},"./v4/locales":{"@zod/source":"./src/v4/locales/index.ts","types":"./v4/locales/index.d.cts","import":"./v4/locales/index.js","require":"./v4/locales/index.cjs"},"./v4/locales/*":{"@zod/source":"./src/v4/locales/*","types":"./v4/locales/*","import":"./v4/locales/*","require":"./v4/locales/*"}},"repository":{"type":"git","url":"git+https://github.com/colinhacks/zod.git"},"bugs":{"url":"https://github.com/colinhacks/zod/issues"},"support":{"backing":{"npm-funding":true}},"scripts":{"clean":"git clean -xdf . -e node_modules","build":"zshy --project tsconfig.build.json","postbuild":"tsx ../../scripts/write-stub-package-jsons.ts && pnpm biome check --write .","test:watch":"pnpm vitest","test":"pnpm vitest run","prepublishOnly":"tsx ../../scripts/check-versions.ts"},"_lastModified":"2026-07-13T15:20:37.236Z"}
@@ -63,6 +63,21 @@ var import_runjs_authoring = require("./runjs-authoring");
63
63
  var import_configure_options = require("./configure-options");
64
64
  var import_context = require("./context");
65
65
  var import_filter_group = require("./filter-group");
66
+ const FLOW_SURFACE_DATA_SCOPE_DATE_EMPTY_OPERATORS = /* @__PURE__ */ new Set(["$empty", "$notEmpty"]);
67
+ const FLOW_SURFACE_DATA_SCOPE_DATE_ALLOWED_OPERATORS = /* @__PURE__ */ new Set([
68
+ ...import_filter_group.FLOW_SURFACE_DATE_FILTER_OPERATORS,
69
+ ...FLOW_SURFACE_DATA_SCOPE_DATE_EMPTY_OPERATORS
70
+ ]);
71
+ const FLOW_SURFACE_DATA_SCOPE_DATE_UI_INCOMPATIBLE_OPERATORS = /* @__PURE__ */ new Set([
72
+ "$eq",
73
+ "$ne",
74
+ "$lt",
75
+ "$lte",
76
+ "$gt",
77
+ "$gte",
78
+ "$in",
79
+ "$notIn"
80
+ ]);
66
81
  const MAIN_BLOCK_UNSUPPORTED_SECTIONS = {
67
82
  calendar: ["fields", "fieldGroups", "recordActions", "fieldsLayout"],
68
83
  kanban: ["fieldGroups", "recordActions", "fieldsLayout"],
@@ -4372,6 +4387,7 @@ async function collectConfigureErrors(values, errors, context) {
4372
4387
  collectGridCardSettingsErrors(changes, hostBlockType, "$.changes", errors, { directSettings: true });
4373
4388
  collectAssignValuesErrors(changes.assignValues, "$.changes.assignValues", errors, changesBlock, context);
4374
4389
  collectTriggerWorkflowsErrors(changes.triggerWorkflows, "$.changes.triggerWorkflows", errors);
4390
+ collectLinkageRulesErrors(changes.linkageRules, "$.changes.linkageRules", errors);
4375
4391
  collectFieldListInternalKeyErrors(changes.fields, "$.changes.fields", errors);
4376
4392
  const connectFieldsTargets = collectTreeConnectFieldsErrors(changes.connectFields, "$.changes.connectFields", errors);
4377
4393
  await collectTreeConnectFieldsLiveErrors(connectFieldsTargets, changes, "$.changes.connectFields", errors, context);
@@ -4483,6 +4499,82 @@ function collectDefaultFilterDateValueError(operator, value, path, errors, field
4483
4499
  });
4484
4500
  }
4485
4501
  }
4502
+ function collectPublicDataScopeDateOperatorError(operator, value, path, errors, fieldContext) {
4503
+ const fieldMeta = getDateConditionFieldContextMeta(fieldContext);
4504
+ if (!(0, import_filter_group.isFlowSurfaceDateLikeFieldMeta)(fieldMeta)) {
4505
+ return;
4506
+ }
4507
+ const normalizedOperator = typeof operator === "string" ? operator.trim() : "";
4508
+ if (FLOW_SURFACE_DATA_SCOPE_DATE_ALLOWED_OPERATORS.has(normalizedOperator)) {
4509
+ return;
4510
+ }
4511
+ const isComparisonOperator = FLOW_SURFACE_DATA_SCOPE_DATE_UI_INCOMPATIBLE_OPERATORS.has(normalizedOperator);
4512
+ const suggestedOperator = isComparisonOperator ? getSuggestedPublicDataScopeDateOperator(normalizedOperator) : void 0;
4513
+ const suggestedValue = getSuggestedPublicDataScopeDateValue(value);
4514
+ pushAuthoringError(errors, {
4515
+ path,
4516
+ ruleId: "dataScope-date-operator-ui-incompatible",
4517
+ message: `flowSurfaces authoring ${path} cannot use operator '${normalizedOperator}' for a date/datetime DataScope condition`,
4518
+ details: {
4519
+ fieldPath: fieldContext == null ? void 0 : fieldContext.fieldPath,
4520
+ fieldType: fieldMeta.type,
4521
+ fieldInterface: fieldMeta.interface,
4522
+ invalidOperator: normalizedOperator,
4523
+ invalidValue: value,
4524
+ allowedOperators: Array.from(FLOW_SURFACE_DATA_SCOPE_DATE_ALLOWED_OPERATORS),
4525
+ ...suggestedOperator ? { suggestedOperator } : {},
4526
+ ...typeof suggestedValue !== "undefined" ? { suggestedValue } : {},
4527
+ repairHint: 'For public settings.dataScope date/datetime fields, use UI date operators such as $dateOn with UI date values like "2026-07-05"; do not move fixed data-range conditions to defaultFilter.',
4528
+ repairExample: {
4529
+ logic: "$and",
4530
+ items: [
4531
+ {
4532
+ path: (fieldContext == null ? void 0 : fieldContext.fieldPath) || "createdAt",
4533
+ operator: suggestedOperator || "$dateOn",
4534
+ value: typeof suggestedValue !== "undefined" ? suggestedValue : "2026-07-05"
4535
+ }
4536
+ ]
4537
+ },
4538
+ agentInstruction: "Replace date/datetime DataScope comparison operators with $dateOn/$dateNotOn/$dateBefore/$dateAfter/$dateNotBefore/$dateNotAfter/$dateBetween and UI date values. Keep the condition in dataScope when it is a fixed data range."
4539
+ }
4540
+ });
4541
+ }
4542
+ function getSuggestedPublicDataScopeDateOperator(operator) {
4543
+ switch (operator) {
4544
+ case "$eq":
4545
+ return "$dateOn";
4546
+ case "$ne":
4547
+ return "$dateNotOn";
4548
+ case "$lt":
4549
+ return "$dateBefore";
4550
+ case "$lte":
4551
+ return "$dateNotAfter";
4552
+ case "$gt":
4553
+ return "$dateAfter";
4554
+ case "$gte":
4555
+ return "$dateNotBefore";
4556
+ default:
4557
+ return void 0;
4558
+ }
4559
+ }
4560
+ function getSuggestedPublicDataScopeDateValue(value) {
4561
+ if (typeof value === "string") {
4562
+ const match = /^(\d{4}-\d{2}-\d{2})/.exec(value.trim());
4563
+ if (match) {
4564
+ return match[1];
4565
+ }
4566
+ }
4567
+ if (Array.isArray(value)) {
4568
+ const suggested = value.map((item) => {
4569
+ var _a;
4570
+ return typeof item === "string" ? (_a = /^(\d{4}-\d{2}-\d{2})/.exec(item.trim())) == null ? void 0 : _a[1] : void 0;
4571
+ }).filter(Boolean);
4572
+ if (suggested.length === value.length && suggested.length > 0) {
4573
+ return suggested;
4574
+ }
4575
+ }
4576
+ return void 0;
4577
+ }
4486
4578
  function collectTopLevelLayoutErrors(actionName, values, errors) {
4487
4579
  if (actionName !== "applyBlueprint") {
4488
4580
  return;
@@ -6116,13 +6208,9 @@ function collectFilterGroupDateConditionErrors(value, path, errors, block, conte
6116
6208
  return;
6117
6209
  }
6118
6210
  const fieldPath = String(value.path || value.field || "").trim();
6119
- collectDefaultFilterDateValueError(
6120
- value.operator,
6121
- value.value,
6122
- `${path}.value`,
6123
- errors,
6124
- fieldPath ? resolveDefaultFilterDateConditionField(fieldPath, block, context) : void 0
6125
- );
6211
+ const fieldContext = fieldPath ? resolveDefaultFilterDateConditionField(fieldPath, block, context) : void 0;
6212
+ collectPublicDataScopeDateOperatorError(value.operator, value.value, `${path}.operator`, errors, fieldContext);
6213
+ collectDefaultFilterDateValueError(value.operator, value.value, `${path}.value`, errors, fieldContext);
6126
6214
  }
6127
6215
  function collectGridCardSettingsErrors(block, blockType, blockPath, errors, options = {}) {
6128
6216
  const hasSettings = _.isPlainObject(block == null ? void 0 : block.settings);
@@ -6388,7 +6476,7 @@ function collectActionSlotErrors(actionType, path, errors, block, slot = "action
6388
6476
  }
6389
6477
  }
6390
6478
  function collectActionErrors(action, path, errors, block, context = {}, slot = "actions") {
6391
- var _a, _b, _c, _d;
6479
+ var _a, _b, _c, _d, _e;
6392
6480
  const actionType = resolveAuthoringActionType(action, block);
6393
6481
  collectActionSlotErrors(actionType, path, errors, block, slot);
6394
6482
  if (!_.isPlainObject(action)) {
@@ -6397,6 +6485,7 @@ function collectActionErrors(action, path, errors, block, context = {}, slot = "
6397
6485
  collectApplyBlueprintScriptAssetReferenceErrors(action, path, errors, context);
6398
6486
  collectAssignValuesErrors((_a = action.settings) == null ? void 0 : _a.assignValues, `${path}.settings.assignValues`, errors, block, context);
6399
6487
  collectTriggerWorkflowsErrors((_b = action.settings) == null ? void 0 : _b.triggerWorkflows, `${path}.settings.triggerWorkflows`, errors);
6488
+ collectLinkageRulesErrors((_c = action.settings) == null ? void 0 : _c.linkageRules, `${path}.settings.linkageRules`, errors);
6400
6489
  if (hasOwn(action, "assignValues")) {
6401
6490
  pushAuthoringError(errors, {
6402
6491
  path: `${path}.assignValues`,
@@ -6432,7 +6521,7 @@ function collectActionErrors(action, path, errors, block, context = {}, slot = "
6432
6521
  }
6433
6522
  });
6434
6523
  }
6435
- const hasRunnableSource = typeof action.source === "string" && action.source.trim() || typeof action.code === "string" && action.code.trim() || hasApplyBlueprintRunnableScriptAssetReference(action.script, context) || typeof ((_c = action.settings) == null ? void 0 : _c.source) === "string" && action.settings.source.trim() || typeof ((_d = action.settings) == null ? void 0 : _d.code) === "string" && action.settings.code.trim();
6524
+ const hasRunnableSource = typeof action.source === "string" && action.source.trim() || typeof action.code === "string" && action.code.trim() || hasApplyBlueprintRunnableScriptAssetReference(action.script, context) || typeof ((_d = action.settings) == null ? void 0 : _d.source) === "string" && action.settings.source.trim() || typeof ((_e = action.settings) == null ? void 0 : _e.code) === "string" && action.settings.code.trim();
6436
6525
  if (!hasRunnableSource) {
6437
6526
  pushAuthoringError(errors, {
6438
6527
  path,
@@ -6697,6 +6786,59 @@ function collectTriggerWorkflowsErrors(value, path, errors) {
6697
6786
  }
6698
6787
  });
6699
6788
  }
6789
+ function collectLinkageRulesErrors(value, path, errors) {
6790
+ if (_.isUndefined(value)) {
6791
+ return;
6792
+ }
6793
+ if (!Array.isArray(value)) {
6794
+ pushAuthoringError(errors, {
6795
+ path,
6796
+ ruleId: "linkageRules-invalid-shape",
6797
+ message: `flowSurfaces authoring ${path} must be an array`
6798
+ });
6799
+ return;
6800
+ }
6801
+ value.forEach((rule, index) => {
6802
+ const rulePath = `${path}[${index}]`;
6803
+ if (!_.isPlainObject(rule)) {
6804
+ pushAuthoringError(errors, {
6805
+ path: rulePath,
6806
+ ruleId: "linkageRules-rule-invalid-shape",
6807
+ message: `flowSurfaces authoring ${rulePath} must be an object`
6808
+ });
6809
+ return;
6810
+ }
6811
+ const conditionPath = hasOwn(rule, "condition") ? `${rulePath}.condition` : hasOwn(rule, "when") ? `${rulePath}.when` : `${rulePath}.condition`;
6812
+ const conditionValue = hasOwn(rule, "condition") ? rule.condition : hasOwn(rule, "when") ? rule.when : import_filter_group.FLOW_SURFACE_EMPTY_FILTER_GROUP;
6813
+ try {
6814
+ (0, import_filter_group.normalizeFlowSurfaceCompatibleFilterGroupValue)(
6815
+ conditionValue,
6816
+ `flowSurfaces authoring ${conditionPath} expects FilterGroup or backend query filter like ${import_filter_group.FLOW_SURFACE_FILTER_GROUP_EXAMPLE}`,
6817
+ { strictDateValues: true }
6818
+ );
6819
+ } catch (error) {
6820
+ pushAuthoringError(errors, {
6821
+ path: conditionPath,
6822
+ ruleId: "linkageRules-condition-invalid-shape",
6823
+ message: error instanceof Error ? error.message : String(error)
6824
+ });
6825
+ }
6826
+ if (hasOwn(rule, "actions") && !Array.isArray(rule.actions)) {
6827
+ pushAuthoringError(errors, {
6828
+ path: `${rulePath}.actions`,
6829
+ ruleId: "linkageRules-actions-invalid-shape",
6830
+ message: `flowSurfaces authoring ${rulePath}.actions must be an array`
6831
+ });
6832
+ }
6833
+ if (hasOwn(rule, "then") && !Array.isArray(rule.then)) {
6834
+ pushAuthoringError(errors, {
6835
+ path: `${rulePath}.then`,
6836
+ ruleId: "linkageRules-actions-invalid-shape",
6837
+ message: `flowSurfaces authoring ${rulePath}.then must be an array`
6838
+ });
6839
+ }
6840
+ });
6841
+ }
6700
6842
  function collectPopupErrors(popup, path, errors, localKeys, context = {}) {
6701
6843
  if (!_.isPlainObject(popup)) {
6702
6844
  return;
@@ -960,10 +960,14 @@ function resolveApplyBlueprintAssociationContext(input) {
960
960
  }
961
961
  const targetCollection = (0, import_service_helpers.resolveFieldTargetCollection)(field, dataSourceKey, input.getCollection);
962
962
  const targetCollectionName = normalizeMetadataText(input.targetCollectionName) || normalizeMetadataText((0, import_service_helpers.getCollectionName)(targetCollection)) || normalizeMetadataText((0, import_service_helpers.getFieldTarget)(field));
963
+ const resolvedAssociationName = (0, import_service_helpers.resolveAssociationNameFromField)(
964
+ field,
965
+ associationPath.includes(".") ? void 0 : sourceCollection
966
+ );
963
967
  return {
964
968
  dataSourceKey,
965
969
  surfaceCollectionName: targetCollectionName || void 0,
966
- associationName: (associationPath.includes(".") ? `${sourceCollectionName}.${associationPath}` : void 0) || (0, import_service_helpers.resolveAssociationNameFromField)(field, sourceCollection) || `${sourceCollectionName}.${associationPath || associationFieldPath}`
970
+ associationName: resolvedAssociationName || `${sourceCollectionName}.${associationPath || associationFieldPath}`
967
971
  };
968
972
  }
969
973
  function getApplyBlueprintBlockResourceObject(block) {
@@ -1018,7 +1022,7 @@ function resolveApplyBlueprintBlockResourceContext(block, parentContext, getColl
1018
1022
  return {
1019
1023
  dataSourceKey,
1020
1024
  surfaceCollectionName: directCollectionName || (associatedContext == null ? void 0 : associatedContext.surfaceCollectionName) || (parentContext == null ? void 0 : parentContext.surfaceCollectionName),
1021
- associationName: (parentContext == null ? void 0 : parentContext.associationName) || (associatedContext == null ? void 0 : associatedContext.associationName)
1025
+ associationName: (associatedContext == null ? void 0 : associatedContext.associationName) || (parentContext == null ? void 0 : parentContext.associationName)
1022
1026
  };
1023
1027
  }
1024
1028
  return {
@@ -1665,7 +1669,7 @@ function compileField(input, index, scopePrefix, assets, localBlockKeys, context
1665
1669
  hostBlock: popupOptions.hostBlock,
1666
1670
  dataSourceKey: (fieldAssociationContext == null ? void 0 : fieldAssociationContext.dataSourceKey) || popupOptions.dataSourceKey,
1667
1671
  surfaceCollectionName: (fieldAssociationContext == null ? void 0 : fieldAssociationContext.surfaceCollectionName) || popupOptions.surfaceCollectionName,
1668
- associationName: popupOptions.associationName || (fieldAssociationContext == null ? void 0 : fieldAssociationContext.associationName)
1672
+ associationName: (fieldAssociationContext == null ? void 0 : fieldAssociationContext.associationName) || popupOptions.associationName
1669
1673
  });
1670
1674
  settings = resolvePopupTitleSettings(settings, popupResult.popupTitle);
1671
1675
  const popup = shouldAttachDefaultPopupMetadata(popupInput, void 0) ? attachCompiledPopupDefaults(popupResult.popup, popupDefaultsMetadata) : popupResult.popup;
@@ -933,6 +933,9 @@ function inferPopupActionSourceId(resourceInit) {
933
933
  if (!(resourceInit == null ? void 0 : resourceInit.associationName)) {
934
934
  return void 0;
935
935
  }
936
+ if (!Object.prototype.hasOwnProperty.call(resourceInit, "sourceId")) {
937
+ return "{{ctx.view.inputArgs.sourceId}}";
938
+ }
936
939
  const sourceId = typeof (resourceInit == null ? void 0 : resourceInit.sourceId) === "string" ? resourceInit.sourceId.trim() : resourceInit == null ? void 0 : resourceInit.sourceId;
937
940
  if (!sourceId) {
938
941
  return void 0;
@@ -393,27 +393,35 @@ function normalizeLinkageRulesValue(value, context, path) {
393
393
  return value;
394
394
  }
395
395
  return value.map((rule, index) => {
396
- if (!import_lodash.default.isPlainObject(rule) || !import_lodash.default.has(rule, "condition")) {
397
- return rule;
396
+ if (!import_lodash.default.isPlainObject(rule)) {
397
+ (0, import_errors.throwBadRequest)(
398
+ `flowSurfaces updateSettings domain '${getLinkageRuleDomainPath(context, path, index)}' on '${context.use}' expects each linkage rule to be an object`
399
+ );
398
400
  }
399
401
  const normalizedRule = import_lodash.default.cloneDeep(rule);
400
- const conditionPath = getLinkageRuleDomainPath(context, path, index, "condition");
402
+ const hasCondition = import_lodash.default.has(normalizedRule, "condition");
403
+ const hasWhen = import_lodash.default.has(normalizedRule, "when");
404
+ const conditionLeaf = hasCondition ? "condition" : hasWhen ? "when" : "condition";
405
+ const conditionInput = hasCondition ? import_lodash.default.get(normalizedRule, "condition") : hasWhen ? import_lodash.default.get(normalizedRule, "when") : import_filter_group.FLOW_SURFACE_EMPTY_FILTER_GROUP;
401
406
  import_lodash.default.set(
402
407
  normalizedRule,
403
408
  "condition",
404
409
  (0, import_filter_group.normalizeFlowSurfaceCompatibleFilterGroupValue)(
405
- import_lodash.default.get(normalizedRule, "condition"),
406
- `flowSurfaces updateSettings domain '${conditionPath}' on '${context.use}' expects FilterGroup or backend query filter like ${import_filter_group.FLOW_SURFACE_FILTER_GROUP_EXAMPLE}`,
410
+ conditionInput,
411
+ `flowSurfaces updateSettings domain '${getLinkageRuleDomainPath(context, path, index, conditionLeaf)}' on '${context.use}' expects FilterGroup or backend query filter like ${import_filter_group.FLOW_SURFACE_FILTER_GROUP_EXAMPLE}`,
407
412
  { strictDateValues: true }
408
413
  )
409
414
  );
410
- if (!import_lodash.default.has(normalizedRule, "actions")) {
411
- import_lodash.default.set(normalizedRule, "actions", []);
412
- } else if (!Array.isArray(import_lodash.default.get(normalizedRule, "actions"))) {
415
+ const hasActions = import_lodash.default.has(normalizedRule, "actions");
416
+ const hasThen = import_lodash.default.has(normalizedRule, "then");
417
+ const actionsLeaf = hasActions ? "actions" : hasThen ? "then" : "actions";
418
+ const actionsInput = hasActions ? import_lodash.default.get(normalizedRule, "actions") : hasThen ? import_lodash.default.get(normalizedRule, "then") : [];
419
+ if (!Array.isArray(actionsInput)) {
413
420
  (0, import_errors.throwBadRequest)(
414
- `flowSurfaces updateSettings domain '${getLinkageRuleDomainPath(context, path, index, "actions")}' on '${context.use}' expects actions to be an array`
421
+ `flowSurfaces updateSettings domain '${getLinkageRuleDomainPath(context, path, index, actionsLeaf)}' on '${context.use}' expects actions/then to be an array`
415
422
  );
416
423
  }
424
+ import_lodash.default.set(normalizedRule, "actions", actionsInput);
417
425
  if (!import_lodash.default.has(normalizedRule, "key")) {
418
426
  import_lodash.default.set(normalizedRule, "key", `linkage-rule-${index + 1}`);
419
427
  }
@@ -425,12 +433,14 @@ function normalizeLinkageRulesValue(value, context, path) {
425
433
  import_lodash.default.set(normalizedRule, "enable", typeof enabled === "boolean" ? enabled : true);
426
434
  }
427
435
  import_lodash.default.unset(normalizedRule, "enabled");
436
+ import_lodash.default.unset(normalizedRule, "when");
437
+ import_lodash.default.unset(normalizedRule, "then");
428
438
  return normalizedRule;
429
439
  });
430
440
  }
431
441
  function getLinkageRuleDomainPath(context, path, index, leaf) {
432
442
  const basePath = context.groupKey ? `${context.domain}.${context.groupKey}.${path}[${index}]` : `${context.domain}.${path}[${index}]`;
433
- return `${basePath}.${leaf}`;
443
+ return leaf ? `${basePath}.${leaf}` : basePath;
434
444
  }
435
445
  function isContractDefinedFlowGroup(groupContract) {
436
446
  if (!groupContract) {
@@ -1585,7 +1585,7 @@ class FlowSurfacesService {
1585
1585
  return !blockScenes.some((scene) => this.isPopupCollectionBlockSceneUnsupported(scene));
1586
1586
  }
1587
1587
  resolveFieldAssociationContextFromBinding(input) {
1588
- var _a;
1588
+ var _a, _b;
1589
1589
  const parsed = this.parseFieldPath(
1590
1590
  input.collection,
1591
1591
  input.fieldPath,
@@ -1602,13 +1602,14 @@ class FlowSurfacesService {
1602
1602
  );
1603
1603
  const targetCollection = (associationField ? resolveTargetCollection(associationField) || (associationField == null ? void 0 : associationField.targetCollection) : null) || resolveTargetCollection(leafField) || (leafField == null ? void 0 : leafField.targetCollection) || null;
1604
1604
  const targetCollectionName = (0, import_service_helpers.getCollectionName)(targetCollection) || (associationField ? (0, import_service_helpers.getFieldTarget)(associationField) : void 0) || parsed.collectionName || input.collectionName;
1605
- const associationName = parsed.associationPathName ? `${parsed.collectionName}.${parsed.associationPathName}` : associationField ? (0, import_service_helpers.resolveAssociationNameFromField)(associationField, input.collection) : void 0;
1605
+ const fallbackAssociationName = parsed.associationPathName ? `${parsed.collectionName}.${parsed.associationPathName}` : void 0;
1606
+ const associationName = associationField ? ((_a = parsed.associationPathName) == null ? void 0 : _a.includes(".")) ? fallbackAssociationName : (0, import_service_helpers.resolveAssociationNameFromField)(associationField, input.collection) : void 0;
1606
1607
  return {
1607
1608
  associationField,
1608
1609
  targetCollection,
1609
- dataSourceKey: (targetCollection == null ? void 0 : targetCollection.dataSourceKey) || ((_a = targetCollection == null ? void 0 : targetCollection.options) == null ? void 0 : _a.dataSourceKey) || parsed.dataSourceKey || input.dataSourceKey,
1610
+ dataSourceKey: (targetCollection == null ? void 0 : targetCollection.dataSourceKey) || ((_b = targetCollection == null ? void 0 : targetCollection.options) == null ? void 0 : _b.dataSourceKey) || parsed.dataSourceKey || input.dataSourceKey,
1610
1611
  collectionName: targetCollectionName,
1611
- associationName
1612
+ associationName: associationName || fallbackAssociationName
1612
1613
  };
1613
1614
  }
1614
1615
  async resolvePopupHostFieldAssociationContext(hostNode, transaction) {
@@ -4479,6 +4480,7 @@ class FlowSurfacesService {
4479
4480
  );
4480
4481
  }
4481
4482
  const popupProfile = await this.resolvePopupBlockProfile(node.uid, null, node, transaction).catch(() => null);
4483
+ const sourceId = String(openView.sourceId || "").trim() || ((popupProfile == null ? void 0 : popupProfile.sourceIdInferred) ? "" : String((popupProfile == null ? void 0 : popupProfile.sourceId) || "").trim()) || void 0;
4482
4484
  const popupSourceNode = popupTargetUid ? await this.repository.findModelById(popupTargetUid, {
4483
4485
  transaction,
4484
4486
  includeAsyncNode: true
@@ -4492,7 +4494,7 @@ class FlowSurfacesService {
4492
4494
  collectionName: String(openView.collectionName || "").trim() || String((popupProfile == null ? void 0 : popupProfile.collectionName) || "").trim() || void 0,
4493
4495
  associationName: String(openView.associationName || "").trim() || String((popupProfile == null ? void 0 : popupProfile.associationName) || "").trim() || void 0,
4494
4496
  filterByTk: String(openView.filterByTk || "").trim() || String((popupProfile == null ? void 0 : popupProfile.filterByTk) || "").trim() || void 0,
4495
- sourceId: String(openView.sourceId || "").trim() || String((popupProfile == null ? void 0 : popupProfile.sourceId) || "").trim() || void 0,
4497
+ sourceId,
4496
4498
  openViewStep
4497
4499
  };
4498
4500
  }
@@ -63,9 +63,14 @@ function mergeFieldsWithExtras(fields, extras = []) {
63
63
  if (!Array.isArray(fields) || fields.length === 0 || extras.length === 0) return fields;
64
64
  return uniqStrings([...fields, ...extras]);
65
65
  }
66
+ function toJsonRecord(record) {
67
+ if (!record || typeof record !== "object") return record;
68
+ const toJSON = record.toJSON;
69
+ return typeof toJSON === "function" ? toJSON.call(record) : record;
70
+ }
66
71
  function toJsonArray(rows) {
67
72
  if (!Array.isArray(rows)) return [];
68
- return rows.map((r) => (r == null ? void 0 : r.toJSON) ? r.toJSON() : r);
73
+ return rows.map(toJsonRecord);
69
74
  }
70
75
  function reorderRecordsByFilterByTk(records, filterByTk, options) {
71
76
  if (!Array.isArray(filterByTk) || filterByTk.length === 0) return records;
@@ -110,7 +115,7 @@ async function fetchRecordOrRecordsJson(repo, params) {
110
115
  const rec = await repo.findOne(
111
116
  preferFullRecord ? { filterByTk } : { filterByTk, fields, appends }
112
117
  );
113
- return rec ? rec.toJSON() : void 0;
118
+ return rec ? toJsonRecord(rec) : void 0;
114
119
  }
115
120
  // Annotate the CommonJS export names for ESM import in node:
116
121
  0 && (module.exports = {
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "displayName.zh-CN": "前端流引擎",
5
5
  "description": "",
6
6
  "description.zh-CN": "",
7
- "version": "2.1.22",
7
+ "version": "2.1.24",
8
8
  "main": "./dist/server/index.js",
9
9
  "license": "Apache-2.0",
10
10
  "devDependencies": {
@@ -26,5 +26,5 @@
26
26
  "@nocobase/test": "2.x",
27
27
  "@nocobase/utils": "2.x"
28
28
  },
29
- "gitHead": "811fc3d272389739babdfa4338faf843d5bf04ff"
29
+ "gitHead": "5b5e5c5987d6e93dadf940e0605e830b09f84f79"
30
30
  }