@zat-design/sisyphus-react 4.5.6-beta.4 → 4.5.7-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,6 +5,8 @@ import classNames from 'classnames';
5
5
  import foldSvg from "../../../assets/fold.svg";
6
6
  import ProIcon from "../../../ProIcon/index";
7
7
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
8
+ const OPEN_ACTIVE_KEYS = ['1'];
9
+ const CLOSED_ACTIVE_KEYS = [];
8
10
  const ProCollapse = props => {
9
11
  const {
10
12
  title,
@@ -34,7 +36,7 @@ const ProCollapse = props => {
34
36
  ...collapseProps
35
37
  };
36
38
  if (open !== undefined && !('activeKey' in finalCollapseProps)) {
37
- finalCollapseProps.activeKey = open ? ['1'] : [];
39
+ finalCollapseProps.activeKey = open ? OPEN_ACTIVE_KEYS : CLOSED_ACTIVE_KEYS;
38
40
  }
39
41
  const cls = classNames({
40
42
  'pro-collapse': true,
@@ -66,6 +66,14 @@ const ProLayout = props => {
66
66
  const setTabsBarElRef = useCallback(el => setTabsState({
67
67
  tabsBarEl: el
68
68
  }), []);
69
+ // TabsManager 会在 effect 中调用这两个回调;保持引用稳定,避免父组件每次
70
+ // render 都让 effect 重新执行并再次 setState,形成无限更新循环。
71
+ const handleTabsChange = useCallback(v => setTabsState({
72
+ hasTabs: v
73
+ }), []);
74
+ const handleIframePureChange = useCallback(v => setTabsState({
75
+ isIframePure: v
76
+ }), []);
69
77
 
70
78
  // 仅 tabs 模式需要感知滚动位置(用于控制右上角圆弧伪元素的显隐)
71
79
  // 非 tabs 模式传 null,useScroll 不挂载监听器
@@ -150,12 +158,8 @@ const ProLayout = props => {
150
158
  dataSource: menuDataSource,
151
159
  originalOnMenuClick: onMenuClick,
152
160
  tabsBarContainer: tabsBarEl,
153
- onTabsChange: v => setTabsState({
154
- hasTabs: v
155
- }),
156
- onIframePureChange: v => setTabsState({
157
- isIframePure: v
158
- }),
161
+ onTabsChange: handleTabsChange,
162
+ onIframePureChange: handleIframePureChange,
159
163
  children: children
160
164
  });
161
165
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zat-design/sisyphus-react",
3
- "version": "4.5.6-beta.4",
3
+ "version": "4.5.7-beta.1",
4
4
  "license": "MIT",
5
5
  "files": [
6
6
  "es",
@@ -28,6 +28,7 @@
28
28
  "import": "./es/tokens.js",
29
29
  "default": "./es/tokens.js"
30
30
  },
31
+ "./ai-meta/*": "./dist/ai/*",
31
32
  "./es/*": "./es/*",
32
33
  "./dist/*": "./dist/*"
33
34
  },
@@ -60,6 +61,9 @@
60
61
  "build": "father build && npm run build:types && mv dist/index.min.css dist/index.esm.css && mv dist/less.min.css dist/less.esm.css && npm run build:ai-meta",
61
62
  "build:types": "tsc -p tsconfig.build.json",
62
63
  "build:ai-meta": "node ./scripts/build-ai-meta.mjs",
64
+ "check:ai-meta": "npm run build:ai-meta && cd packages/sisyphus-react-mcp && npm run check",
65
+ "sync:ai-version": "node ./scripts/sync-ai-version.mjs --write",
66
+ "check:ai-contract": "node ./scripts/sync-ai-version.mjs --check && node ./scripts/check-ai-docs.mjs && node --test ./scripts/tests/*.test.mjs",
63
67
  "docs": "cross-env NODE_OPTIONS=\"--openssl-legacy-provider\" dumi build",
64
68
  "docs:deploy": "gh-pages -d docs-dist",
65
69
  "lint": "npm run lint:js && npm run lint:style && npm run lint:prettier",
@@ -76,9 +80,12 @@
76
80
  "prettier": "prettier --write '**/*.{js,jsx,tsx,ts,less,md,json}'",
77
81
  "pack:main": "npm pack --dry-run",
78
82
  "pack:mcp": "npm run build:ai-meta && cd packages/sisyphus-react-mcp && npm pack --dry-run",
79
- "release": "yarn build && npm publish",
80
- "release:mcp": "npm run build:ai-meta && cd packages/sisyphus-react-mcp && npm publish",
81
- "release:beta": "yarn build && npm publish --tag=beta",
83
+ "release": "npm run release:ai",
84
+ "release:mcp": "npm run release:ai",
85
+ "release:scene": "npm run release:ai",
86
+ "release:ai:check": "node ./scripts/release-ai.mjs --check",
87
+ "release:ai": "node ./scripts/release-ai.mjs --publish",
88
+ "release:beta": "npm run release:ai",
82
89
  "start": "cross-env NODE_OPTIONS=\"--openssl-legacy-provider\" dumi dev",
83
90
  "test": "umi-test",
84
91
  "test:coverage": "umi-test --coverage",