openxiangda 2.9.0 → 2.9.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"resource-query.d.ts","sourceRoot":"","sources":["../../../../src/browser/components/platform-fields/resource-query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,SAAS,EAGV,MAAM,+BAA+B,CAAC;AAOvC,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAAG,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAA;CAAE;AAWtE,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,mBAAmB,EAC5B,KAAK,EAAE,oBAAoB,GAC1B,SAAS,GAAG,SAAS,CA0GvB;AAED,sGAAsG;AACtG,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,GAAG,SAAS,CAQ3G"}
1
+ {"version":3,"file":"resource-query.d.ts","sourceRoot":"","sources":["../../../../src/browser/components/platform-fields/resource-query.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,SAAS,EAGV,MAAM,+BAA+B,CAAC;AAOvC,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB,KAAK,CAAC,EAAE,YAAY,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAAG,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAA;CAAE;AActE,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,mBAAmB,EAC5B,KAAK,EAAE,oBAAoB,GAC1B,SAAS,GAAG,SAAS,CA0GvB;AAED,sGAAsG;AACtG,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,GAAG,SAAS,CA8B3G"}
@@ -1,10 +1,13 @@
1
1
  import { cascadeTerminalValues, } from './cascade-value';
2
2
  import { deepestAddressPredicate } from './address-value';
3
+ function isSelectionSnapshot(value) {
4
+ return Boolean(value && typeof value === 'object' && !Array.isArray(value) && 'value' in value);
5
+ }
6
+ function stableValue(value) {
7
+ return isSelectionSnapshot(value) ? String(value.value) : value;
8
+ }
3
9
  function stableValues(value) {
4
- const values = Array.isArray(value) ? value : [value];
5
- return values.map(item => item && typeof item === 'object' && 'value' in item
6
- ? String(item.value)
7
- : item);
10
+ return (Array.isArray(value) ? value : [value]).map(stableValue);
8
11
  }
9
12
  export function buildResourceWhere(resourceCode, surface, query) {
10
13
  const declaredFields = new Set(Object.keys(surface.fields));
@@ -115,8 +118,32 @@ export function compileAdvancedWhere(code, surface, node) {
115
118
  return { or: node.or.map(item => compileAdvancedWhere(code, surface, item)) };
116
119
  if ('not' in node)
117
120
  return { not: compileAdvancedWhere(code, surface, node.not) };
121
+ // A path already selects the canonical subvalue; top-level field control
122
+ // normalization must not replace its value or silently drop the path.
123
+ if (node.path !== undefined)
124
+ return node;
118
125
  if (node.operator === 'isEmpty' || node.operator === 'isNotEmpty')
119
126
  return { field: node.field, operator: node.operator };
127
+ const field = surface.fields[node.field];
128
+ if (node.operator === 'has') {
129
+ const cascadePath = field?.type === 'cascade.single' && Array.isArray(node.value) &&
130
+ node.value.length > 0 && node.value.every(isSelectionSnapshot);
131
+ return { ...node, value: cascadePath
132
+ ? cascadeTerminalValues(node.value, false)[0]
133
+ : stableValue(node.value) };
134
+ }
135
+ if (['in', 'between', 'hasAny', 'hasAll'].includes(node.operator)) {
136
+ // Explicit operators own operand cardinality. Do not apply shortcut
137
+ // filters, which infer hasAny or reduce a range to its first comparison.
138
+ if (!Array.isArray(node.value))
139
+ return node;
140
+ const cascadePaths = field?.type === 'cascade.multiple' &&
141
+ ['hasAny', 'hasAll'].includes(node.operator) && node.value.length > 0 &&
142
+ node.value.every(path => Array.isArray(path) && path.length > 0 && path.every(isSelectionSnapshot));
143
+ return { ...node, value: cascadePaths
144
+ ? cascadeTerminalValues(node.value, true)
145
+ : node.value.map(stableValue) };
146
+ }
120
147
  const normalized = buildResourceWhere(code, surface, { page: 1, pageSize: 20, filters: { [node.field]: node.value } });
121
148
  const predicate = normalized && 'and' in normalized ? normalized.and[0] : undefined;
122
149
  return predicate && 'field' in predicate ? { ...predicate, operator: node.operator } : node;
@@ -1 +1 @@
1
- {"version":3,"file":"resource-query.js","sourceRoot":"","sources":["../../../../src/browser/components/platform-fields/resource-query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource-query.js","sourceRoot":"","sources":["../../../../src/browser/components/platform-fields/resource-query.ts"],"names":[],"mappings":"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"}
@@ -11,10 +11,10 @@ OpenXiangda 2.0 默认生成 React 应用和共享契约。普通 CRUD、标准
11
11
  以下命令的版本占位符由随包资料替换为该根包的精确版本。网站源码阅读者应先确认要使用的发行版本。
12
12
 
13
13
  ```bash
14
- pnpm dlx openxiangda@2.9.0 skill install --force
15
- pnpm dlx openxiangda@2.9.0 auth status --base-url <平台地址> --json
16
- pnpm dlx openxiangda@2.9.0 login --base-url https://platform.example.com
17
- pnpm dlx openxiangda@2.9.0 create my-app --base-url https://platform.example.com
14
+ pnpm dlx openxiangda@2.9.2 skill install --force
15
+ pnpm dlx openxiangda@2.9.2 auth status --base-url <平台地址> --json
16
+ pnpm dlx openxiangda@2.9.2 login --base-url https://platform.example.com
17
+ pnpm dlx openxiangda@2.9.2 create my-app --base-url https://platform.example.com
18
18
  cd my-app
19
19
  pnpm openxiangda context --json
20
20
  pnpm openxiangda dev
@@ -116,9 +116,9 @@ MCP 的 `docs_read` 可以读取本说明,当前没有独立的源码操作 MC
116
116
  无需本地工作区,使用本 Skill 随包精确版本或已安装的对应 CLI:
117
117
 
118
118
  ```bash
119
- pnpm dlx openxiangda@2.9.0 auth status --base-url <平台> --json
120
- pnpm dlx openxiangda@2.9.0 source resolve <仓库URL> --base-url <平台> --json
121
- pnpm dlx openxiangda@2.9.0 source clone <仓库URL> <新目录> --base-url <平台> --json
119
+ pnpm dlx openxiangda@2.9.2 auth status --base-url <平台> --json
120
+ pnpm dlx openxiangda@2.9.2 source resolve <仓库URL> --base-url <平台> --json
121
+ pnpm dlx openxiangda@2.9.2 source clone <仓库URL> <新目录> --base-url <平台> --json
122
122
  ```
123
123
 
124
124
  登录缺失或站点不匹配时,先按该平台执行 login。resolve 根据平台已经登记的绑定返回
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "schemaVersion": "openxiangda.documentation/v1",
3
- "version": "2.9.0",
3
+ "version": "2.9.2",
4
4
  "topics": [
5
5
  {
6
6
  "id": "getting-started",
7
7
  "title": "安装与开始开发",
8
8
  "file": "getting-started.md",
9
- "sha256": "506b785f8a098a56a8adf59ae50a9a5f8d4e56961c62dacb696129fbe68bbad0"
9
+ "sha256": "26c9eb4ddba8d67d4b685749787c62601b6f2049f6e45ddb796d4cc36a933151"
10
10
  },
11
11
  {
12
12
  "id": "product-design",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openxiangda",
3
- "version": "2.9.0",
3
+ "version": "2.9.2",
4
4
  "description": "OpenXiangda 2.0 的统一命令、应用 SDK、MCP 与中文 AI 技能资料。",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -60,7 +60,7 @@
60
60
  "antd-mobile": "5.42.3",
61
61
  "dayjs": "1.11.18",
62
62
  "docx-preview": "0.3.7",
63
- "openxiangda-cli": "2.2.13",
63
+ "openxiangda-cli": "2.2.14",
64
64
  "openxiangda-contracts": "2.7.0",
65
65
  "openxiangda-devkit-core": "2.6.0",
66
66
  "openxiangda-legacy": "npm:openxiangda@1.0.268",
@@ -132,36 +132,36 @@
132
132
  },
133
133
  "openxiangdaRelease": {
134
134
  "schemaVersion": "openxiangda.release-notes/v1",
135
- "version": "2.9.0",
135
+ "version": "2.9.2",
136
136
  "status": "reviewed",
137
- "title": "OpenXiangda 2.9.0:声明标准列表导入导出入口",
138
- "summary": "应用可按默认或命名视图配置标准列表的导入、导出任务,PC 与移动端使用相同声明。",
139
- "newFeatures": [
140
- "crud[].list.actions 支持 import 与 export 布尔开关,直接资源声明同样支持。",
141
- "关闭导入适用于原生与流程列表;关闭导出同时覆盖 PC 和移动列表。"
142
- ],
137
+ "title": "OpenXiangda 2.9.2:查询操作数修正与模板版本联动",
138
+ "summary": "修复标准客户端将成员包含查询的单值改成数组导致400的问题,并补齐根包和CLI模板的发布版本联动。",
139
+ "newFeatures": [],
143
140
  "fixes": [
144
- "应用可通过公开配置移除首发范围之外的列表任务,无需修改共享组件或使用 CSS 隐藏。"
141
+ "has操作保持单个稳定标识;in、between、hasAny、hasAll保留数组全部值,不再复用快捷筛选推断操作数形状。",
142
+ "显式查询path保持原值路径;单项快照和级联控件选择仍转为稳定查询值。",
143
+ "列表、批量列表和导出使用相同修正,应用无需修改正确的DataWhere条件。",
144
+ "发布版本规划在写入版本前拒绝缺少CLI配套Changeset的根包升级,避免模板变更到不可变包检查阶段才被发现。"
145
145
  ],
146
146
  "affectedUsers": [
147
- "使用标准 CRUD 默认或命名视图,需要控制导入导出入口的 V2 应用开发者。"
147
+ "使用openxiangda/core显式where成员筛选、数组操作或子值路径查询的V2应用。"
148
148
  ],
149
149
  "upgradeSteps": [
150
- "平台采用 openxiangda-contracts 2.7.0,应用采用 openxiangda 2.9.0 后重新生成和检查。",
151
- "在目标视图的 list.actions 中将不需要的入口设为 false,再部署测试候选并验证 PC/移动页面。"
150
+ "将应用的公开openxiangda依赖升级到2.9.2,重新检查并发布测试候选。",
151
+ "复测参与人归属、数组区间筛选及导出;生产晋级复用验收通过的原测试制品。"
152
152
  ],
153
153
  "knownLimitations": [
154
- "省略开关保持既有行为;true 不授予权限,也不改变原生、流程或只读写入归属。",
155
- "这是页面入口配置,Data API 和敏感字段仍按原有授权规则执行。",
156
- "命名视图各自声明开关,不继承默认视图的任务选择;无需新增数据库迁移。"
154
+ "快捷filters的既有界面语义不变;字段类型、行权限与查询边界仍由平台Data API验证。",
155
+ "本补丁不改变业务数据、权限或数据库结构;新增CRUD列表开关仍需平台采用contracts2.7.0。",
156
+ "2.9.1仅为被发布门禁拦截的未发布候选;其查询修正随2.9.2正式交付。"
157
157
  ],
158
158
  "compatibility": {
159
159
  "node": ">=24",
160
160
  "platform": "openxiangda-contracts 2.7.0"
161
161
  },
162
162
  "issues": [],
163
- "sha256": "c9d413f52c85a7ca1ee5e113ca72d9284efd303b3a99dc8ba71ae35cf7526783",
164
- "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.9.0"
163
+ "sha256": "9989af7b2e2b9e5eaf81bf19b1307366a35b07522082b384918882f8db05d61c",
164
+ "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.9.2"
165
165
  },
166
166
  "scripts": {
167
167
  "build": "node ../../scripts/prune-package-dist.mjs && tsc -p tsconfig.json && node scripts/copy-assets.mjs",
@@ -0,0 +1,31 @@
1
+ {
2
+ "schemaVersion": "openxiangda.release-notes/v1",
3
+ "version": "2.9.1",
4
+ "status": "reviewed",
5
+ "title": "OpenXiangda 2.9.1:保留显式查询操作数与路径",
6
+ "summary": "修复标准客户端将成员包含查询的单值改成数组,导致合法查询返回400的问题。",
7
+ "newFeatures": [],
8
+ "fixes": [
9
+ "has操作保持单个稳定标识;in、between、hasAny、hasAll保留数组全部值,不再复用快捷筛选推断操作数形状。",
10
+ "显式查询path保持原值路径;单项快照和级联控件选择仍转为稳定查询值。",
11
+ "列表、批量列表和导出使用相同修正,应用无需修改正确的DataWhere条件。"
12
+ ],
13
+ "affectedUsers": [
14
+ "使用openxiangda/core显式where成员筛选、数组操作或子值路径查询的V2应用。"
15
+ ],
16
+ "upgradeSteps": [
17
+ "将应用的公开openxiangda依赖升级到2.9.1,重新检查并发布测试候选。",
18
+ "复测参与人归属、数组区间筛选及导出;生产晋级复用验收通过的原测试制品。"
19
+ ],
20
+ "knownLimitations": [
21
+ "快捷filters的既有界面语义不变;字段类型、行权限与查询边界仍由平台Data API验证。",
22
+ "本补丁不改变业务数据、权限或数据库结构;新增CRUD列表开关仍需平台采用contracts2.7.0。"
23
+ ],
24
+ "compatibility": {
25
+ "node": ">=24",
26
+ "platform": "openxiangda-contracts 2.7.0"
27
+ },
28
+ "issues": [],
29
+ "sha256": "2cfb20fed9921fc7281f36970f9ba534192fe0eacafb55223e3031587b27f6c7",
30
+ "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.9.1"
31
+ }
@@ -0,0 +1,33 @@
1
+ {
2
+ "schemaVersion": "openxiangda.release-notes/v1",
3
+ "version": "2.9.2",
4
+ "status": "reviewed",
5
+ "title": "OpenXiangda 2.9.2:查询操作数修正与模板版本联动",
6
+ "summary": "修复标准客户端将成员包含查询的单值改成数组导致400的问题,并补齐根包和CLI模板的发布版本联动。",
7
+ "newFeatures": [],
8
+ "fixes": [
9
+ "has操作保持单个稳定标识;in、between、hasAny、hasAll保留数组全部值,不再复用快捷筛选推断操作数形状。",
10
+ "显式查询path保持原值路径;单项快照和级联控件选择仍转为稳定查询值。",
11
+ "列表、批量列表和导出使用相同修正,应用无需修改正确的DataWhere条件。",
12
+ "发布版本规划在写入版本前拒绝缺少CLI配套Changeset的根包升级,避免模板变更到不可变包检查阶段才被发现。"
13
+ ],
14
+ "affectedUsers": [
15
+ "使用openxiangda/core显式where成员筛选、数组操作或子值路径查询的V2应用。"
16
+ ],
17
+ "upgradeSteps": [
18
+ "将应用的公开openxiangda依赖升级到2.9.2,重新检查并发布测试候选。",
19
+ "复测参与人归属、数组区间筛选及导出;生产晋级复用验收通过的原测试制品。"
20
+ ],
21
+ "knownLimitations": [
22
+ "快捷filters的既有界面语义不变;字段类型、行权限与查询边界仍由平台Data API验证。",
23
+ "本补丁不改变业务数据、权限或数据库结构;新增CRUD列表开关仍需平台采用contracts2.7.0。",
24
+ "2.9.1仅为被发布门禁拦截的未发布候选;其查询修正随2.9.2正式交付。"
25
+ ],
26
+ "compatibility": {
27
+ "node": ">=24",
28
+ "platform": "openxiangda-contracts 2.7.0"
29
+ },
30
+ "issues": [],
31
+ "sha256": "9989af7b2e2b9e5eaf81bf19b1307366a35b07522082b384918882f8db05d61c",
32
+ "url": "https://github.com/1377385356/openxiangda/releases/tag/v2.9.2"
33
+ }
@@ -4,7 +4,7 @@
4
4
  {
5
5
  "name": "openxiangda-v2",
6
6
  "description": "使用 OpenXiangda 2.0 从模糊业务想法、已有资料或具体变更出发,通过对话发现模块、完成详细产品设计,再开发、检查和交付应用。维护 1.x 应用时使用对应的 1.x 技能。",
7
- "sha256": "c69da0d5337572356a56c19a9e78fd39c12f7f9828395a1cadc65d9ad3726035"
7
+ "sha256": "f739d040741bd91cdb73fd1c69eb71d2b709d48d6fa084ce74855569bbad4cfb"
8
8
  }
9
9
  ]
10
10
  }
@@ -18,10 +18,10 @@ description: 使用 OpenXiangda 2.0 从模糊业务想法、已有资料或具
18
18
  未创建工作区时使用本 Skill 随根包发布的精确版本:
19
19
 
20
20
  ```bash
21
- pnpm dlx openxiangda@2.9.0 auth status --base-url <平台地址> --json
22
- pnpm dlx openxiangda@2.9.0 login --base-url <平台地址>
23
- pnpm dlx openxiangda@2.9.0 create <应用目录> --base-url <同一平台地址>
24
- pnpm dlx openxiangda@2.9.0 skill install --force
21
+ pnpm dlx openxiangda@2.9.2 auth status --base-url <平台地址> --json
22
+ pnpm dlx openxiangda@2.9.2 login --base-url <平台地址>
23
+ pnpm dlx openxiangda@2.9.2 create <应用目录> --base-url <同一平台地址>
24
+ pnpm dlx openxiangda@2.9.2 skill install --force
25
25
  ```
26
26
 
27
27
  创建前把产品要求的目标平台明确带入命令,不从旧登录态推断站点。已有工作区从原绑定恢复,平台不一致时先解决登录与目标,不改 link 文件跨站创建。
@@ -11,10 +11,10 @@ OpenXiangda 2.0 默认生成 React 应用和共享契约。普通 CRUD、标准
11
11
  以下命令的版本占位符由随包资料替换为该根包的精确版本。网站源码阅读者应先确认要使用的发行版本。
12
12
 
13
13
  ```bash
14
- pnpm dlx openxiangda@2.9.0 skill install --force
15
- pnpm dlx openxiangda@2.9.0 auth status --base-url <平台地址> --json
16
- pnpm dlx openxiangda@2.9.0 login --base-url https://platform.example.com
17
- pnpm dlx openxiangda@2.9.0 create my-app --base-url https://platform.example.com
14
+ pnpm dlx openxiangda@2.9.2 skill install --force
15
+ pnpm dlx openxiangda@2.9.2 auth status --base-url <平台地址> --json
16
+ pnpm dlx openxiangda@2.9.2 login --base-url https://platform.example.com
17
+ pnpm dlx openxiangda@2.9.2 create my-app --base-url https://platform.example.com
18
18
  cd my-app
19
19
  pnpm openxiangda context --json
20
20
  pnpm openxiangda dev
@@ -116,9 +116,9 @@ MCP 的 `docs_read` 可以读取本说明,当前没有独立的源码操作 MC
116
116
  无需本地工作区,使用本 Skill 随包精确版本或已安装的对应 CLI:
117
117
 
118
118
  ```bash
119
- pnpm dlx openxiangda@2.9.0 auth status --base-url <平台> --json
120
- pnpm dlx openxiangda@2.9.0 source resolve <仓库URL> --base-url <平台> --json
121
- pnpm dlx openxiangda@2.9.0 source clone <仓库URL> <新目录> --base-url <平台> --json
119
+ pnpm dlx openxiangda@2.9.2 auth status --base-url <平台> --json
120
+ pnpm dlx openxiangda@2.9.2 source resolve <仓库URL> --base-url <平台> --json
121
+ pnpm dlx openxiangda@2.9.2 source clone <仓库URL> <新目录> --base-url <平台> --json
122
122
  ```
123
123
 
124
124
  登录缺失或站点不匹配时,先按该平台执行 login。resolve 根据平台已经登记的绑定返回