one-design-next 0.0.51 → 0.0.53

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.
@@ -110,9 +110,15 @@ export interface ComposerProps {
110
110
  */
111
111
  skillGroups?: SkillGroup[];
112
112
  /**
113
- * 技能管理回调。提供后会在 skill 弹窗底部渲染「管理技能」按钮。
113
+ * 技能管理回调。提供后会在 skill 弹窗底部渲染按钮。
114
114
  */
115
115
  onManageSkills?: () => void;
116
+ /**
117
+ * 技能管理按钮的自定义内容(ReactNode)。
118
+ * 仅在 `onManageSkills` 提供时生效。
119
+ * 不传时默认渲染「技能管理」文字 + 右箭头图标。
120
+ */
121
+ skillManageFooter?: React.ReactNode;
116
122
  /**
117
123
  * skill 弹窗列表的最大高度(px)。超出此高度后出现滚动条。
118
124
  * 不传则不限高(适合 skill 较少的场景)。
@@ -97,6 +97,7 @@ export var Composer = /*#__PURE__*/forwardRef(function Composer(_ref, ref) {
97
97
  skills = _ref.skills,
98
98
  skillGroups = _ref.skillGroups,
99
99
  onManageSkills = _ref.onManageSkills,
100
+ skillManageFooter = _ref.skillManageFooter,
100
101
  skillMenuMaxHeight = _ref.skillMenuMaxHeight,
101
102
  skillMenuWidth = _ref.skillMenuWidth,
102
103
  _ref$submitType = _ref.submitType,
@@ -743,7 +744,8 @@ export var Composer = /*#__PURE__*/forwardRef(function Composer(_ref, ref) {
743
744
  onSelect: function onSelect(s) {
744
745
  return handleSelectSkill(s, 'btn');
745
746
  },
746
- onManageSkills: onManageSkills
747
+ onManageSkills: onManageSkills,
748
+ skillManageFooter: skillManageFooter
747
749
  })
748
750
  }, /*#__PURE__*/React.createElement(HoverFill, {
749
751
  "data-odn-composer-tool-btn-wrap": true,
@@ -956,7 +958,8 @@ export var Composer = /*#__PURE__*/forwardRef(function Composer(_ref, ref) {
956
958
  onSelect: function onSelect(s) {
957
959
  return handleSelectSkill(s, 'trigger');
958
960
  },
959
- onManageSkills: onManageSkills
961
+ onManageSkills: onManageSkills,
962
+ skillManageFooter: skillManageFooter
960
963
  })
961
964
  }, /*#__PURE__*/React.createElement("div", {
962
965
  ref: triggerAnchorRef,
@@ -17,9 +17,16 @@ export interface SkillSlotProps {
17
17
  value?: string | null;
18
18
  onSelect?: (skill: SkillItem) => void;
19
19
  /**
20
- * 技能管理回调。提供后 menu 变体会在列表底部渲染「管理技能」按钮。
20
+ * 技能管理回调。提供后 menu 变体会在列表底部渲染按钮。
21
+ * 按钮内容默认显示「技能管理」文字 + 右箭头图标;可通过 `skillManageFooter` 自定义。
21
22
  */
22
23
  onManageSkills?: () => void;
24
+ /**
25
+ * 技能管理按钮的自定义内容(ReactNode)。
26
+ * 仅在 `onManageSkills` 提供且 `variant='menu'` 时生效。
27
+ * 不传时默认渲染「技能管理」文字 + 右箭头图标。
28
+ */
29
+ skillManageFooter?: React.ReactNode;
23
30
  /**
24
31
  * 受控的"键盘高亮"项 index(区别于 `value` 的"业务选中"语义)。仅 menu 变体响应。
25
32
  *
@@ -31,6 +31,7 @@ export var SkillSlot = /*#__PURE__*/forwardRef(function SkillSlot(_ref, ref) {
31
31
  value = _ref.value,
32
32
  onSelect = _ref.onSelect,
33
33
  onManageSkills = _ref.onManageSkills,
34
+ skillManageFooter = _ref.skillManageFooter,
34
35
  activeIndex = _ref.activeIndex,
35
36
  onActiveIndexChange = _ref.onActiveIndexChange,
36
37
  menuMaxHeight = _ref.menuMaxHeight,
@@ -240,6 +241,10 @@ export var SkillSlot = /*#__PURE__*/forwardRef(function SkillSlot(_ref, ref) {
240
241
  /* 渲染底部"技能管理"按钮(仅 menu 变体 + 提供 onManageSkills 时。不参与键盘导航)。 */
241
242
  var renderManageFooter = function renderManageFooter() {
242
243
  if (variant !== 'menu' || !onManageSkills) return null;
244
+ var defaultFooter = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", null, "\u6280\u80FD\u7BA1\u7406"), /*#__PURE__*/React.createElement(Icon, {
245
+ name: "right",
246
+ size: 12
247
+ }));
243
248
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
244
249
  "data-odn-skill-slot-divider": true
245
250
  }), /*#__PURE__*/React.createElement("button", {
@@ -249,10 +254,7 @@ export var SkillSlot = /*#__PURE__*/forwardRef(function SkillSlot(_ref, ref) {
249
254
  return e.preventDefault();
250
255
  },
251
256
  onClick: onManageSkills
252
- }, /*#__PURE__*/React.createElement("span", null, "\u6280\u80FD\u7BA1\u7406"), /*#__PURE__*/React.createElement(Icon, {
253
- name: "right",
254
- size: 12
255
- })));
257
+ }, skillManageFooter !== null && skillManageFooter !== void 0 ? skillManageFooter : defaultFooter));
256
258
  };
257
259
 
258
260
  /* 分组模式下渲染 menu 列表(带分组标题)。 */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "one-design-next",
3
- "version": "0.0.51",
3
+ "version": "0.0.53",
4
4
  "description": "One Design Next from TAD@tencent.com",
5
5
  "packageManager": "pnpm@11.8.0",
6
6
  "module": "dist/index.js",