@pisell/materials 6.8.8 → 6.8.10

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.
Files changed (73) hide show
  1. package/build/lowcode/assets-daily.json +11 -11
  2. package/build/lowcode/assets-dev.json +2 -2
  3. package/build/lowcode/assets-prod.json +11 -11
  4. package/build/lowcode/index.js +1 -1
  5. package/build/lowcode/meta.js +1 -1
  6. package/build/lowcode/preview.js +8 -8
  7. package/build/lowcode/render/default/view.js +16 -16
  8. package/build/lowcode/view.js +16 -16
  9. package/es/components/PisellProcedure/PisellProcedure.stories.d.ts +163 -0
  10. package/es/components/PisellProcedure/PisellProcedure.stories.js +1611 -0
  11. package/es/components/PisellScrollView/PisellScrollView.stories.d.ts +87 -0
  12. package/es/components/PisellScrollView/PisellScrollView.stories.js +772 -0
  13. package/es/components/PisellScrollView/hooks/useScrollEvents.js +18 -3
  14. package/es/components/PisellScrollView/index.d.ts +2 -1
  15. package/es/components/PisellScrollView/index.js +2 -1
  16. package/es/components/PisellSteps/PisellSteps.stories.d.ts +155 -0
  17. package/es/components/PisellSteps/PisellSteps.stories.js +851 -0
  18. package/es/components/PisellSuperTabs/PisellSuperTabs.d.ts +6 -10
  19. package/es/components/PisellSuperTabs/PisellSuperTabs.js +28 -8
  20. package/es/components/PisellSuperTabs/types.d.ts +1 -0
  21. package/es/components/PisellTabbar/PisellTabbar.d.ts +2 -19
  22. package/es/components/PisellTabbar/PisellTabbar.js +2 -1
  23. package/es/components/PisellTabbar/constants.d.ts +4 -4
  24. package/es/components/PisellTabbar/constants.js +5 -5
  25. package/es/components/PisellTabbar/index.d.ts +2 -0
  26. package/es/components/PisellTabbar/index.js +2 -0
  27. package/es/components/PisellTabbar/template/Template1/PisellTabbar.d.ts +20 -0
  28. package/es/components/PisellTabbar/template/Template1/PisellTabbar.js +426 -0
  29. package/es/components/PisellTabbar/template/Template1/constants.d.ts +10 -0
  30. package/es/components/PisellTabbar/template/Template1/constants.js +33 -0
  31. package/es/components/PisellTabbar/template/Template1/index.d.ts +6 -0
  32. package/es/components/PisellTabbar/template/Template1/index.js +7 -0
  33. package/es/components/PisellTabbar/template/Template1/utils/index.d.ts +35 -0
  34. package/es/components/PisellTabbar/template/Template1/utils/index.js +96 -0
  35. package/es/components/PisellTabbar/utils/index.d.ts +33 -0
  36. package/es/components/PisellTabbar/utils/index.js +3 -2
  37. package/es/components/productCard/cartSkuCard/components/packages/utils.d.ts +1 -1
  38. package/es/components/productCard/components/Packages/utils.d.ts +1 -1
  39. package/es/index.d.ts +2 -1
  40. package/es/index.js +2 -1
  41. package/lib/components/PisellProcedure/PisellProcedure.stories.d.ts +163 -0
  42. package/lib/components/PisellProcedure/PisellProcedure.stories.js +925 -0
  43. package/lib/components/PisellScrollView/PisellScrollView.stories.d.ts +87 -0
  44. package/lib/components/PisellScrollView/PisellScrollView.stories.js +535 -0
  45. package/lib/components/PisellScrollView/hooks/useScrollEvents.js +13 -3
  46. package/lib/components/PisellScrollView/index.d.ts +2 -1
  47. package/lib/components/PisellScrollView/index.js +2 -5
  48. package/lib/components/PisellSteps/PisellSteps.stories.d.ts +155 -0
  49. package/lib/components/PisellSteps/PisellSteps.stories.js +570 -0
  50. package/lib/components/PisellSuperTabs/PisellSuperTabs.d.ts +6 -10
  51. package/lib/components/PisellSuperTabs/PisellSuperTabs.js +25 -6
  52. package/lib/components/PisellSuperTabs/types.d.ts +1 -0
  53. package/lib/components/PisellTabbar/PisellTabbar.d.ts +2 -19
  54. package/lib/components/PisellTabbar/PisellTabbar.js +2 -1
  55. package/lib/components/PisellTabbar/constants.d.ts +4 -4
  56. package/lib/components/PisellTabbar/constants.js +5 -5
  57. package/lib/components/PisellTabbar/index.d.ts +2 -0
  58. package/lib/components/PisellTabbar/index.js +6 -0
  59. package/lib/components/PisellTabbar/template/Template1/PisellTabbar.d.ts +20 -0
  60. package/lib/components/PisellTabbar/template/Template1/PisellTabbar.js +437 -0
  61. package/lib/components/PisellTabbar/template/Template1/constants.d.ts +10 -0
  62. package/lib/components/PisellTabbar/template/Template1/constants.js +60 -0
  63. package/lib/components/PisellTabbar/template/Template1/index.d.ts +6 -0
  64. package/lib/components/PisellTabbar/template/Template1/index.js +36 -0
  65. package/lib/components/PisellTabbar/template/Template1/utils/index.d.ts +35 -0
  66. package/lib/components/PisellTabbar/template/Template1/utils/index.js +68 -0
  67. package/lib/components/PisellTabbar/utils/index.d.ts +33 -0
  68. package/lib/components/PisellTabbar/utils/index.js +4 -1
  69. package/lib/components/productCard/cartSkuCard/components/packages/utils.d.ts +1 -1
  70. package/lib/components/productCard/components/Packages/utils.d.ts +1 -1
  71. package/lib/index.d.ts +2 -1
  72. package/lib/index.js +5 -2
  73. package/package.json +23 -4
@@ -0,0 +1,925 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // src/components/PisellProcedure/PisellProcedure.stories.tsx
30
+ var PisellProcedure_stories_exports = {};
31
+ __export(PisellProcedure_stories_exports, {
32
+ BackConfirmModal: () => BackConfirmModal,
33
+ BodyContentOrderReverse: () => BodyContentOrderReverse,
34
+ BodyFixedLayout: () => BodyFixedLayout,
35
+ BodyRatioLayout: () => BodyRatioLayout,
36
+ BodyVerticalLayout: () => BodyVerticalLayout,
37
+ CloseConfirmModal: () => CloseConfirmModal,
38
+ Default: () => Default,
39
+ DisableOverflow: () => DisableOverflow,
40
+ FooterFixedBottom: () => FooterFixedBottom,
41
+ FooterFixedContentBottom: () => FooterFixedContentBottom,
42
+ FooterFixedSidebarBottom: () => FooterFixedSidebarBottom,
43
+ FooterFloatAll: () => FooterFloatAll,
44
+ FooterFloatContent: () => FooterFloatContent,
45
+ FooterFloatSidebar: () => FooterFloatSidebar,
46
+ FormWizard: () => FormWizard,
47
+ HeaderSlotDefault: () => HeaderSlotDefault,
48
+ HeaderSlotReverse: () => HeaderSlotReverse,
49
+ HideSteps: () => HideSteps,
50
+ InteractionTest: () => InteractionTest,
51
+ MinimalConfig: () => MinimalConfig,
52
+ MobileSummaryButton: () => MobileSummaryButton,
53
+ ModalMode: () => ModalMode,
54
+ OverflowActions: () => OverflowActions,
55
+ PageMode: () => PageMode,
56
+ RegistrationFlow: () => RegistrationFlow,
57
+ ShoppingFlow: () => ShoppingFlow,
58
+ ShowBackOnFirstStep: () => ShowBackOnFirstStep,
59
+ StepControl: () => StepControl,
60
+ StepIntercept: () => StepIntercept,
61
+ WithoutFooter: () => WithoutFooter,
62
+ WithoutHeader: () => WithoutHeader,
63
+ WithoutSidebar: () => WithoutSidebar,
64
+ default: () => PisellProcedure_stories_default
65
+ });
66
+ module.exports = __toCommonJS(PisellProcedure_stories_exports);
67
+ var import_test = require("@storybook/test");
68
+ var import_antd = require("antd");
69
+ var import_icons = require("@ant-design/icons");
70
+ var import_PisellProcedure = __toESM(require("./PisellProcedure"));
71
+ var meta = {
72
+ title: "Pro Components/PisellProcedure",
73
+ component: import_PisellProcedure.default,
74
+ parameters: {
75
+ layout: "fullscreen",
76
+ docs: {
77
+ description: {
78
+ component: "流程容器组件,用于管理多步骤流程的复合容器,支持步骤控制、区域配置和响应式布局。"
79
+ }
80
+ }
81
+ },
82
+ tags: ["autodocs"],
83
+ argTypes: {
84
+ mode: {
85
+ control: "select",
86
+ options: ["page", "modal"],
87
+ description: "组件使用模式"
88
+ },
89
+ showHeader: {
90
+ control: "boolean",
91
+ description: "是否显示头部区域"
92
+ },
93
+ showSidebar: {
94
+ control: "boolean",
95
+ description: "是否显示信息区(侧边栏)"
96
+ },
97
+ showFooter: {
98
+ control: "boolean",
99
+ description: "是否显示底部区域"
100
+ },
101
+ defaultCurrent: {
102
+ control: "number",
103
+ description: "默认当前步骤"
104
+ }
105
+ }
106
+ };
107
+ var PisellProcedure_stories_default = meta;
108
+ var Default = {
109
+ args: {
110
+ headerProps: {
111
+ left: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.ArrowLeftOutlined, null) }, "返回"),
112
+ right: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.CloseOutlined, null) }, "关闭"),
113
+ stepsProps: {
114
+ items: [
115
+ { title: "第一步", description: "基础信息" },
116
+ { title: "第二步", description: "详细配置" },
117
+ { title: "第三步", description: "确认提交" }
118
+ ]
119
+ }
120
+ },
121
+ bodyProps: {
122
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容区域"), /* @__PURE__ */ React.createElement("p", null, "这里是步骤的主要内容,可以放置表单、列表等任何内容。")),
123
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"), /* @__PURE__ */ React.createElement("p", null, "这里是信息摘要区域,可以显示订单信息、配置预览等。"))
124
+ },
125
+ footerProps: {
126
+ actions: /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步")
127
+ }
128
+ }
129
+ };
130
+ var PageMode = {
131
+ args: {
132
+ mode: "page",
133
+ headerProps: {
134
+ stepsProps: {
135
+ items: [
136
+ { title: "第一步" },
137
+ { title: "第二步" },
138
+ { title: "第三步" }
139
+ ]
140
+ }
141
+ },
142
+ bodyProps: {
143
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "页面模式"), /* @__PURE__ */ React.createElement("p", null, "支持响应式布局,移动端会自动调整")),
144
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
145
+ },
146
+ footerProps: {
147
+ actions: /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步")
148
+ }
149
+ }
150
+ };
151
+ var ModalMode = {
152
+ args: {
153
+ mode: "modal",
154
+ headerProps: {
155
+ stepsProps: {
156
+ items: [
157
+ { title: "第一步" },
158
+ { title: "第二步" },
159
+ { title: "第三步" }
160
+ ]
161
+ }
162
+ },
163
+ bodyProps: {
164
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 300 } }, /* @__PURE__ */ React.createElement("h2", null, "弹窗模式"), /* @__PURE__ */ React.createElement("p", null, "不应用移动端模式,保持固定布局")),
165
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
166
+ },
167
+ footerProps: {
168
+ position: "float-sidebar",
169
+ actions: /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步")
170
+ }
171
+ },
172
+ decorators: [
173
+ (Story) => /* @__PURE__ */ React.createElement(
174
+ "div",
175
+ {
176
+ style: {
177
+ width: 800,
178
+ height: 600,
179
+ border: "1px solid #d9d9d9",
180
+ borderRadius: 8,
181
+ overflow: "hidden",
182
+ margin: "20px auto"
183
+ }
184
+ },
185
+ /* @__PURE__ */ React.createElement(Story, null)
186
+ )
187
+ ]
188
+ };
189
+ var StepControl = {
190
+ args: {
191
+ defaultCurrent: 0,
192
+ headerProps: {
193
+ stepsProps: {
194
+ items: [
195
+ { title: "基础信息" },
196
+ { title: "详细配置" },
197
+ { title: "确认提交" }
198
+ ]
199
+ }
200
+ },
201
+ bodyProps: {
202
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "步骤控制演示"), /* @__PURE__ */ React.createElement("p", null, "点击下方按钮可以切换步骤")),
203
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"), /* @__PURE__ */ React.createElement("p", null, "步骤相关信息"))
204
+ },
205
+ footerProps: {
206
+ actions: /* @__PURE__ */ React.createElement(import_antd.Space, null, /* @__PURE__ */ React.createElement(import_antd.Button, null, "上一步"), /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步"))
207
+ },
208
+ onStepsChange: (result) => {
209
+ console.log("步骤变化:", result);
210
+ }
211
+ }
212
+ };
213
+ var StepIntercept = {
214
+ args: {
215
+ defaultCurrent: 0,
216
+ headerProps: {
217
+ stepsProps: {
218
+ items: [
219
+ { title: "第一步" },
220
+ { title: "第二步" },
221
+ { title: "第三步" }
222
+ ]
223
+ }
224
+ },
225
+ bodyProps: {
226
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "步骤拦截演示"), /* @__PURE__ */ React.createElement("p", null, "可以通过 onNext/onPrev 返回 false 来阻止步骤切换"), /* @__PURE__ */ React.createElement("p", { style: { color: "#ff4d4f" } }, "提示:在控制台中取消注释 return false 来测试拦截功能")),
227
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
228
+ },
229
+ footerProps: {
230
+ actions: /* @__PURE__ */ React.createElement(import_antd.Space, null, /* @__PURE__ */ React.createElement(import_antd.Button, null, "上一步"), /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步"))
231
+ },
232
+ onNext: (current) => {
233
+ console.log("下一步,当前步骤:", current);
234
+ },
235
+ onPrev: (current) => {
236
+ console.log("上一步,当前步骤:", current);
237
+ }
238
+ }
239
+ };
240
+ var WithoutSidebar = {
241
+ args: {
242
+ showSidebar: false,
243
+ headerProps: {
244
+ stepsProps: {
245
+ items: [
246
+ { title: "第一步" },
247
+ { title: "第二步" },
248
+ { title: "第三步" }
249
+ ]
250
+ }
251
+ },
252
+ bodyProps: {
253
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容"), /* @__PURE__ */ React.createElement("p", null, "不显示侧边栏时的布局,内容区将占满整个主体区域"))
254
+ },
255
+ footerProps: {
256
+ position: "fixed-bottom",
257
+ actions: /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步")
258
+ }
259
+ }
260
+ };
261
+ var WithoutHeader = {
262
+ args: {
263
+ showHeader: false,
264
+ bodyProps: {
265
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容"), /* @__PURE__ */ React.createElement("p", null, "不显示头部时的布局")),
266
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
267
+ },
268
+ footerProps: {
269
+ actions: /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "提交")
270
+ }
271
+ }
272
+ };
273
+ var WithoutFooter = {
274
+ args: {
275
+ showFooter: false,
276
+ headerProps: {
277
+ stepsProps: {
278
+ items: [
279
+ { title: "第一步" },
280
+ { title: "第二步" },
281
+ { title: "第三步" }
282
+ ]
283
+ }
284
+ },
285
+ bodyProps: {
286
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容"), /* @__PURE__ */ React.createElement("p", null, "不显示底部操作区时的布局")),
287
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
288
+ }
289
+ }
290
+ };
291
+ var MinimalConfig = {
292
+ args: {
293
+ showHeader: false,
294
+ showSidebar: false,
295
+ showFooter: false,
296
+ bodyProps: {
297
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "最小配置"), /* @__PURE__ */ React.createElement("p", null, "仅显示主体内容区域"))
298
+ }
299
+ }
300
+ };
301
+ var HeaderSlotDefault = {
302
+ args: {
303
+ headerProps: {
304
+ slotOrder: "default",
305
+ left: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.ArrowLeftOutlined, null), type: "text" }, "返回"),
306
+ right: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.CloseOutlined, null), type: "text" }, "关闭"),
307
+ stepsProps: {
308
+ items: [
309
+ { title: "第一步" },
310
+ { title: "第二步" },
311
+ { title: "第三步" }
312
+ ]
313
+ }
314
+ },
315
+ bodyProps: {
316
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "头部插槽默认顺序"), /* @__PURE__ */ React.createElement("p", null, "返回按钮在左,关闭按钮在右")),
317
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
318
+ },
319
+ footerProps: {
320
+ actions: /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步")
321
+ }
322
+ }
323
+ };
324
+ var HeaderSlotReverse = {
325
+ args: {
326
+ headerProps: {
327
+ slotOrder: "reverse",
328
+ left: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.ArrowLeftOutlined, null), type: "text" }, "返回"),
329
+ right: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.CloseOutlined, null), type: "text" }, "关闭"),
330
+ stepsProps: {
331
+ items: [
332
+ { title: "第一步" },
333
+ { title: "第二步" },
334
+ { title: "第三步" }
335
+ ]
336
+ }
337
+ },
338
+ bodyProps: {
339
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "头部插槽反转顺序"), /* @__PURE__ */ React.createElement("p", null, "返回按钮在右,关闭按钮在左")),
340
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
341
+ },
342
+ footerProps: {
343
+ actions: /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步")
344
+ }
345
+ }
346
+ };
347
+ var HideSteps = {
348
+ args: {
349
+ headerProps: {
350
+ showSteps: false,
351
+ left: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.ArrowLeftOutlined, null) }, "返回"),
352
+ right: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.CloseOutlined, null) }, "关闭")
353
+ },
354
+ bodyProps: {
355
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "隐藏步骤条"), /* @__PURE__ */ React.createElement("p", null, "头部只显示返回和关闭按钮")),
356
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
357
+ },
358
+ footerProps: {
359
+ actions: /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "提交")
360
+ }
361
+ }
362
+ };
363
+ var ShowBackOnFirstStep = {
364
+ args: {
365
+ defaultCurrent: 0,
366
+ headerProps: {
367
+ showBackOnFirstStep: true,
368
+ left: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.ArrowLeftOutlined, null) }, "返回"),
369
+ stepsProps: {
370
+ items: [
371
+ { title: "第一步" },
372
+ { title: "第二步" },
373
+ { title: "第三步" }
374
+ ]
375
+ }
376
+ },
377
+ bodyProps: {
378
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "第一步显示返回按钮"), /* @__PURE__ */ React.createElement("p", null, "即使在第一步,也显示返回按钮")),
379
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
380
+ },
381
+ footerProps: {
382
+ actions: /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步")
383
+ },
384
+ onFirstStepBack: () => {
385
+ console.log("点击了第一步的返回按钮");
386
+ }
387
+ }
388
+ };
389
+ var BackConfirmModal = {
390
+ args: {
391
+ defaultCurrent: 1,
392
+ headerProps: {
393
+ left: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.ArrowLeftOutlined, null) }, "返回"),
394
+ stepsProps: {
395
+ items: [
396
+ { title: "第一步" },
397
+ { title: "第二步" },
398
+ { title: "第三步" }
399
+ ]
400
+ },
401
+ backConfirmModal: {
402
+ enabled: true,
403
+ title: "确认返回",
404
+ describe: "确定要返回上一步吗?当前填写的内容将不会保存"
405
+ }
406
+ },
407
+ bodyProps: {
408
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "返回确认弹窗"), /* @__PURE__ */ React.createElement("p", null, "点击返回按钮或上一步会弹出确认弹窗")),
409
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
410
+ },
411
+ footerProps: {
412
+ actions: /* @__PURE__ */ React.createElement(import_antd.Space, null, /* @__PURE__ */ React.createElement(import_antd.Button, null, "上一步"), /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步"))
413
+ },
414
+ onBackConfirm: (action) => {
415
+ console.log("返回确认:", action);
416
+ }
417
+ }
418
+ };
419
+ var CloseConfirmModal = {
420
+ args: {
421
+ headerProps: {
422
+ right: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.CloseOutlined, null) }, "关闭"),
423
+ stepsProps: {
424
+ items: [
425
+ { title: "第一步" },
426
+ { title: "第二步" },
427
+ { title: "第三步" }
428
+ ]
429
+ },
430
+ closeConfirmModal: {
431
+ enabled: true,
432
+ title: "确认关闭",
433
+ describe: "确定要关闭吗?所有未保存的数据将丢失"
434
+ }
435
+ },
436
+ bodyProps: {
437
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "关闭确认弹窗"), /* @__PURE__ */ React.createElement("p", null, "点击关闭按钮会弹出确认弹窗")),
438
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
439
+ },
440
+ footerProps: {
441
+ actions: /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步")
442
+ },
443
+ onCloseConfirm: (action) => {
444
+ console.log("关闭确认:", action);
445
+ },
446
+ onClose: () => {
447
+ console.log("关闭按钮被点击");
448
+ }
449
+ }
450
+ };
451
+ var BodyRatioLayout = {
452
+ args: {
453
+ headerProps: {
454
+ stepsProps: {
455
+ items: [
456
+ { title: "第一步" },
457
+ { title: "第二步" },
458
+ { title: "第三步" }
459
+ ]
460
+ }
461
+ },
462
+ bodyProps: {
463
+ layoutMode: "ratio",
464
+ layoutRatio: "6:4",
465
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容(60%)"), /* @__PURE__ */ React.createElement("p", null, "使用比例布局,内容区占 60%")),
466
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要(40%)"), /* @__PURE__ */ React.createElement("p", null, "侧边栏占 40%"))
467
+ },
468
+ footerProps: {
469
+ actions: /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步")
470
+ }
471
+ }
472
+ };
473
+ var BodyFixedLayout = {
474
+ args: {
475
+ headerProps: {
476
+ stepsProps: {
477
+ items: [
478
+ { title: "第一步" },
479
+ { title: "第二步" },
480
+ { title: "第三步" }
481
+ ]
482
+ }
483
+ },
484
+ bodyProps: {
485
+ layoutMode: "fixed",
486
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容(自适应)"), /* @__PURE__ */ React.createElement("p", null, "使用固定布局,内容区自适应宽度")),
487
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要(固定宽度)"), /* @__PURE__ */ React.createElement("p", null, "侧边栏使用固定宽度"))
488
+ },
489
+ footerProps: {
490
+ actions: /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步")
491
+ }
492
+ }
493
+ };
494
+ var BodyVerticalLayout = {
495
+ args: {
496
+ headerProps: {
497
+ stepsProps: {
498
+ items: [
499
+ { title: "第一步" },
500
+ { title: "第二步" },
501
+ { title: "第三步" }
502
+ ]
503
+ }
504
+ },
505
+ bodyProps: {
506
+ direction: "vertical",
507
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 300 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容(上方)"), /* @__PURE__ */ React.createElement("p", null, "垂直布局,内容区在上方")),
508
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要(下方)"), /* @__PURE__ */ React.createElement("p", null, "侧边栏在下方"))
509
+ },
510
+ footerProps: {
511
+ position: "fixed-bottom",
512
+ actions: /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步")
513
+ }
514
+ }
515
+ };
516
+ var BodyContentOrderReverse = {
517
+ args: {
518
+ headerProps: {
519
+ stepsProps: {
520
+ items: [
521
+ { title: "第一步" },
522
+ { title: "第二步" },
523
+ { title: "第三步" }
524
+ ]
525
+ }
526
+ },
527
+ bodyProps: {
528
+ contentOrder: "sidebar-first",
529
+ layoutMode: "ratio",
530
+ layoutRatio: "7:3",
531
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容(右侧)"), /* @__PURE__ */ React.createElement("p", null, "侧边栏在前(左侧),内容区在后(右侧)")),
532
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要(左侧)"), /* @__PURE__ */ React.createElement("p", null, "侧边栏占 30%"))
533
+ },
534
+ footerProps: {
535
+ position: "float-content",
536
+ actions: /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步")
537
+ }
538
+ }
539
+ };
540
+ var FooterFloatSidebar = {
541
+ args: {
542
+ headerProps: {
543
+ stepsProps: {
544
+ items: [
545
+ { title: "第一步" },
546
+ { title: "第二步" },
547
+ { title: "第三步" }
548
+ ]
549
+ }
550
+ },
551
+ bodyProps: {
552
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 600 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容"), /* @__PURE__ */ React.createElement("p", null, "底部操作区悬浮在侧边栏区域")),
553
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"), /* @__PURE__ */ React.createElement("p", null, "侧边栏内容"))
554
+ },
555
+ footerProps: {
556
+ position: "float-sidebar",
557
+ leftSlot: /* @__PURE__ */ React.createElement("div", null, "总价:¥999"),
558
+ actions: /* @__PURE__ */ React.createElement(import_antd.Space, null, /* @__PURE__ */ React.createElement(import_antd.Button, null, "上一步"), /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步"))
559
+ }
560
+ }
561
+ };
562
+ var FooterFixedBottom = {
563
+ args: {
564
+ headerProps: {
565
+ stepsProps: {
566
+ items: [
567
+ { title: "第一步" },
568
+ { title: "第二步" },
569
+ { title: "第三步" }
570
+ ]
571
+ }
572
+ },
573
+ bodyProps: {
574
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 600 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容"), /* @__PURE__ */ React.createElement("p", null, "底部操作区固定在整体底部")),
575
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
576
+ },
577
+ footerProps: {
578
+ position: "fixed-bottom",
579
+ leftSlot: /* @__PURE__ */ React.createElement("div", null, "总价:¥999"),
580
+ actions: /* @__PURE__ */ React.createElement(import_antd.Space, null, /* @__PURE__ */ React.createElement(import_antd.Button, null, "上一步"), /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步"))
581
+ }
582
+ }
583
+ };
584
+ var FooterFloatAll = {
585
+ args: {
586
+ headerProps: {
587
+ stepsProps: {
588
+ items: [
589
+ { title: "第一步" },
590
+ { title: "第二步" },
591
+ { title: "第三步" }
592
+ ]
593
+ }
594
+ },
595
+ bodyProps: {
596
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 600 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容"), /* @__PURE__ */ React.createElement("p", null, "底部操作区悬浮在整体区域(移动端默认)")),
597
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
598
+ },
599
+ footerProps: {
600
+ position: "float-all",
601
+ leftSlot: /* @__PURE__ */ React.createElement("div", null, "总价:¥999"),
602
+ actions: /* @__PURE__ */ React.createElement(import_antd.Space, null, /* @__PURE__ */ React.createElement(import_antd.Button, null, "上一步"), /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步"))
603
+ }
604
+ }
605
+ };
606
+ var FooterFloatContent = {
607
+ args: {
608
+ headerProps: {
609
+ stepsProps: {
610
+ items: [
611
+ { title: "第一步" },
612
+ { title: "第二步" },
613
+ { title: "第三步" }
614
+ ]
615
+ }
616
+ },
617
+ bodyProps: {
618
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 600 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容"), /* @__PURE__ */ React.createElement("p", null, "底部操作区悬浮在内容区域")),
619
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
620
+ },
621
+ footerProps: {
622
+ position: "float-content",
623
+ leftSlot: /* @__PURE__ */ React.createElement("div", null, "总价:¥999"),
624
+ actions: /* @__PURE__ */ React.createElement(import_antd.Space, null, /* @__PURE__ */ React.createElement(import_antd.Button, null, "上一步"), /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步"))
625
+ }
626
+ }
627
+ };
628
+ var FooterFixedContentBottom = {
629
+ args: {
630
+ headerProps: {
631
+ stepsProps: {
632
+ items: [
633
+ { title: "第一步" },
634
+ { title: "第二步" },
635
+ { title: "第三步" }
636
+ ]
637
+ }
638
+ },
639
+ bodyProps: {
640
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容"), /* @__PURE__ */ React.createElement("p", null, "底部操作区内嵌在内容区底部")),
641
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
642
+ },
643
+ footerProps: {
644
+ position: "fixed-content-bottom",
645
+ leftSlot: /* @__PURE__ */ React.createElement("div", null, "总价:¥999"),
646
+ actions: /* @__PURE__ */ React.createElement(import_antd.Space, null, /* @__PURE__ */ React.createElement(import_antd.Button, null, "上一步"), /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步"))
647
+ }
648
+ }
649
+ };
650
+ var FooterFixedSidebarBottom = {
651
+ args: {
652
+ headerProps: {
653
+ stepsProps: {
654
+ items: [
655
+ { title: "第一步" },
656
+ { title: "第二步" },
657
+ { title: "第三步" }
658
+ ]
659
+ }
660
+ },
661
+ bodyProps: {
662
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容"), /* @__PURE__ */ React.createElement("p", null, "底部操作区内嵌在侧边栏底部")),
663
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
664
+ },
665
+ footerProps: {
666
+ position: "fixed-sidebar-bottom",
667
+ leftSlot: /* @__PURE__ */ React.createElement("div", null, "总价:¥999"),
668
+ actions: /* @__PURE__ */ React.createElement(import_antd.Space, null, /* @__PURE__ */ React.createElement(import_antd.Button, null, "上一步"), /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步"))
669
+ }
670
+ }
671
+ };
672
+ var MobileSummaryButton = {
673
+ args: {
674
+ headerProps: {
675
+ stepsProps: {
676
+ items: [
677
+ { title: "第一步" },
678
+ { title: "第二步" },
679
+ { title: "第三步" }
680
+ ]
681
+ }
682
+ },
683
+ bodyProps: {
684
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容"), /* @__PURE__ */ React.createElement("p", null, "移动端(宽度 < 744px)会显示总结按钮"), /* @__PURE__ */ React.createElement("p", null, "点击总结按钮可以在弹窗中查看侧边栏内容")),
685
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "订单摘要"), /* @__PURE__ */ React.createElement(import_antd.Divider, null), /* @__PURE__ */ React.createElement("p", null, "商品:iPhone 15 Pro"), /* @__PURE__ */ React.createElement("p", null, "数量:1"), /* @__PURE__ */ React.createElement("p", null, "单价:¥7999"), /* @__PURE__ */ React.createElement(import_antd.Divider, null), /* @__PURE__ */ React.createElement("p", { style: { fontSize: 18, fontWeight: "bold" } }, "总计:¥7999"))
686
+ },
687
+ footerProps: {
688
+ position: "float-all",
689
+ summaryButton: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.ShoppingCartOutlined, null) }, "查看详情"),
690
+ summaryModalTitle: "订单详情",
691
+ leftSlot: /* @__PURE__ */ React.createElement("div", null, "总价:", /* @__PURE__ */ React.createElement("strong", null, "¥7999")),
692
+ actions: /* @__PURE__ */ React.createElement(import_antd.Space, null, /* @__PURE__ */ React.createElement(import_antd.Button, null, "上一步"), /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步"))
693
+ }
694
+ },
695
+ parameters: {
696
+ viewport: {
697
+ defaultViewport: "mobile1"
698
+ }
699
+ }
700
+ };
701
+ var OverflowActions = {
702
+ args: {
703
+ headerProps: {
704
+ stepsProps: {
705
+ items: [
706
+ { title: "第一步" },
707
+ { title: "第二步" },
708
+ { title: "第三步" }
709
+ ]
710
+ }
711
+ },
712
+ bodyProps: {
713
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容"), /* @__PURE__ */ React.createElement("p", null, "当宽度不足时,次要按钮会被收纳到 More 菜单中"), /* @__PURE__ */ React.createElement("p", null, "缩小窗口宽度可以看到效果")),
714
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
715
+ },
716
+ footerProps: {
717
+ enableOverflow: true,
718
+ moreText: "更多",
719
+ leftSlot: /* @__PURE__ */ React.createElement("div", null, "总价:¥999"),
720
+ actions: /* @__PURE__ */ React.createElement(import_antd.Space, null, /* @__PURE__ */ React.createElement(import_antd.Button, null, "保存草稿"), /* @__PURE__ */ React.createElement(import_antd.Button, null, "预览"), /* @__PURE__ */ React.createElement(import_antd.Button, null, "上一步"), /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步"))
721
+ }
722
+ }
723
+ };
724
+ var DisableOverflow = {
725
+ args: {
726
+ headerProps: {
727
+ stepsProps: {
728
+ items: [
729
+ { title: "第一步" },
730
+ { title: "第二步" },
731
+ { title: "第三步" }
732
+ ]
733
+ }
734
+ },
735
+ bodyProps: {
736
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "主要内容"), /* @__PURE__ */ React.createElement("p", null, "禁用溢出收纳,按钮不会被收纳")),
737
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
738
+ },
739
+ footerProps: {
740
+ enableOverflow: false,
741
+ leftSlot: /* @__PURE__ */ React.createElement("div", null, "总价:¥999"),
742
+ actions: /* @__PURE__ */ React.createElement(import_antd.Space, null, /* @__PURE__ */ React.createElement(import_antd.Button, null, "保存草稿"), /* @__PURE__ */ React.createElement(import_antd.Button, null, "预览"), /* @__PURE__ */ React.createElement(import_antd.Button, null, "上一步"), /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步"))
743
+ }
744
+ }
745
+ };
746
+ var ShoppingFlow = {
747
+ args: {
748
+ defaultCurrent: 1,
749
+ headerProps: {
750
+ left: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.ArrowLeftOutlined, null), type: "text" }, "返回"),
751
+ right: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.CloseOutlined, null), type: "text" }),
752
+ stepsProps: {
753
+ items: [
754
+ { title: "选择商品", description: "选择您要购买的商品" },
755
+ { title: "填写信息", description: "填写收货信息" },
756
+ { title: "确认订单", description: "确认订单信息" },
757
+ { title: "支付", description: "完成支付" }
758
+ ]
759
+ },
760
+ backConfirmModal: {
761
+ enabled: true,
762
+ title: "确认返回",
763
+ describe: "返回上一步将清除当前填写的信息,确定要返回吗?"
764
+ }
765
+ },
766
+ bodyProps: {
767
+ layoutMode: "ratio",
768
+ layoutRatio: "7:3",
769
+ contentSlot: /* @__PURE__ */ React.createElement(import_antd.Card, { style: { margin: 24 } }, /* @__PURE__ */ React.createElement("h2", null, "填写收货信息"), /* @__PURE__ */ React.createElement(import_antd.Divider, null), /* @__PURE__ */ React.createElement(import_antd.Form, { layout: "vertical" }, /* @__PURE__ */ React.createElement(import_antd.Form.Item, { label: "收货人", required: true }, /* @__PURE__ */ React.createElement(import_antd.Input, { placeholder: "请输入收货人姓名" })), /* @__PURE__ */ React.createElement(import_antd.Form.Item, { label: "联系电话", required: true }, /* @__PURE__ */ React.createElement(import_antd.Input, { placeholder: "请输入联系电话" })), /* @__PURE__ */ React.createElement(import_antd.Form.Item, { label: "收货地址", required: true }, /* @__PURE__ */ React.createElement(
770
+ import_antd.Input.TextArea,
771
+ {
772
+ placeholder: "请输入详细地址",
773
+ rows: 4
774
+ }
775
+ )))),
776
+ sidebarSlot: /* @__PURE__ */ React.createElement(import_antd.Card, { style: { margin: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "订单摘要"), /* @__PURE__ */ React.createElement(import_antd.Divider, null), /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("p", null, "商品:iPhone 15 Pro"), /* @__PURE__ */ React.createElement("p", null, "数量:1"), /* @__PURE__ */ React.createElement("p", null, "单价:¥7999"), /* @__PURE__ */ React.createElement(import_antd.Divider, null), /* @__PURE__ */ React.createElement("p", { style: { fontSize: 18, fontWeight: "bold" } }, "总计:¥7999")))
777
+ },
778
+ footerProps: {
779
+ position: "float-sidebar",
780
+ enableOverflow: true,
781
+ summaryButton: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.ShoppingCartOutlined, null) }, "购物车"),
782
+ summaryModalTitle: "订单详情",
783
+ leftSlot: /* @__PURE__ */ React.createElement("div", null, "总价:", /* @__PURE__ */ React.createElement("strong", { style: { fontSize: 18, color: "#ff4d4f" } }, "¥7999")),
784
+ actions: /* @__PURE__ */ React.createElement(import_antd.Space, null, /* @__PURE__ */ React.createElement(import_antd.Button, null, "上一步"), /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步"))
785
+ },
786
+ onStepsChange: (result) => {
787
+ console.log("步骤变化:", result);
788
+ },
789
+ onBackConfirm: (action) => {
790
+ console.log("返回确认:", action);
791
+ }
792
+ }
793
+ };
794
+ var RegistrationFlow = {
795
+ args: {
796
+ defaultCurrent: 0,
797
+ headerProps: {
798
+ left: /* @__PURE__ */ React.createElement(import_antd.Button, { icon: /* @__PURE__ */ React.createElement(import_icons.HomeOutlined, null), type: "text" }, "首页"),
799
+ stepsProps: {
800
+ items: [
801
+ { title: "基本信息", description: "填写账户信息" },
802
+ { title: "身份验证", description: "验证您的身份" },
803
+ { title: "完成注册", description: "设置完成" }
804
+ ],
805
+ labelPlacement: "vertical"
806
+ },
807
+ showBackOnFirstStep: true
808
+ },
809
+ bodyProps: {
810
+ layoutMode: "fixed",
811
+ contentSlot: /* @__PURE__ */ React.createElement(import_antd.Card, { style: { margin: 24, maxWidth: 600 } }, /* @__PURE__ */ React.createElement("h2", null, "创建您的账户"), /* @__PURE__ */ React.createElement(import_antd.Divider, null), /* @__PURE__ */ React.createElement(import_antd.Form, { layout: "vertical" }, /* @__PURE__ */ React.createElement(import_antd.Form.Item, { label: "用户名", required: true }, /* @__PURE__ */ React.createElement(import_antd.Input, { placeholder: "请输入用户名" })), /* @__PURE__ */ React.createElement(import_antd.Form.Item, { label: "邮箱", required: true }, /* @__PURE__ */ React.createElement(import_antd.Input, { placeholder: "请输入邮箱地址" })), /* @__PURE__ */ React.createElement(import_antd.Form.Item, { label: "密码", required: true }, /* @__PURE__ */ React.createElement(import_antd.Input.Password, { placeholder: "请输入密码" })), /* @__PURE__ */ React.createElement(import_antd.Form.Item, { label: "确认密码", required: true }, /* @__PURE__ */ React.createElement(import_antd.Input.Password, { placeholder: "请再次输入密码" })))),
812
+ sidebarSlot: /* @__PURE__ */ React.createElement(import_antd.Card, { style: { margin: 24 } }, /* @__PURE__ */ React.createElement("h3", null, /* @__PURE__ */ React.createElement(import_icons.InfoCircleOutlined, { style: { marginRight: 8 } }), "注册须知"), /* @__PURE__ */ React.createElement(import_antd.Divider, null), /* @__PURE__ */ React.createElement("ul", { style: { paddingLeft: 20 } }, /* @__PURE__ */ React.createElement("li", null, "用户名长度 4-20 个字符"), /* @__PURE__ */ React.createElement("li", null, "密码长度至少 8 个字符"), /* @__PURE__ */ React.createElement("li", null, "密码需包含数字和字母"), /* @__PURE__ */ React.createElement("li", null, "邮箱将用于账户验证")))
813
+ },
814
+ footerProps: {
815
+ position: "float-sidebar",
816
+ actions: /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary", size: "large", block: true }, "下一步")
817
+ },
818
+ onFirstStepBack: () => {
819
+ console.log("返回首页");
820
+ }
821
+ }
822
+ };
823
+ var FormWizard = {
824
+ args: {
825
+ defaultCurrent: 0,
826
+ showSidebar: false,
827
+ headerProps: {
828
+ stepsProps: {
829
+ items: [
830
+ { title: "个人信息" },
831
+ { title: "工作信息" },
832
+ { title: "教育背景" },
833
+ { title: "提交申请" }
834
+ ],
835
+ size: "small"
836
+ }
837
+ },
838
+ bodyProps: {
839
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, maxWidth: 800, margin: "0 auto" } }, /* @__PURE__ */ React.createElement(import_antd.Card, null, /* @__PURE__ */ React.createElement("h2", null, "个人信息"), /* @__PURE__ */ React.createElement(import_antd.Divider, null), /* @__PURE__ */ React.createElement(import_antd.Form, { layout: "vertical" }, /* @__PURE__ */ React.createElement(import_antd.Space, { direction: "vertical", style: { width: "100%" }, size: "large" }, /* @__PURE__ */ React.createElement(import_antd.Space, { size: "large", wrap: true }, /* @__PURE__ */ React.createElement(import_antd.Form.Item, { label: "姓名", required: true, style: { marginBottom: 0 } }, /* @__PURE__ */ React.createElement(import_antd.Input, { placeholder: "请输入姓名", style: { width: 200 } })), /* @__PURE__ */ React.createElement(import_antd.Form.Item, { label: "性别", required: true, style: { marginBottom: 0 } }, /* @__PURE__ */ React.createElement(import_antd.Select, { placeholder: "请选择", style: { width: 120 } }, /* @__PURE__ */ React.createElement(import_antd.Select.Option, { value: "male" }, "男"), /* @__PURE__ */ React.createElement(import_antd.Select.Option, { value: "female" }, "女"))), /* @__PURE__ */ React.createElement(import_antd.Form.Item, { label: "出生日期", required: true, style: { marginBottom: 0 } }, /* @__PURE__ */ React.createElement(import_antd.Input, { type: "date", style: { width: 160 } }))), /* @__PURE__ */ React.createElement(import_antd.Form.Item, { label: "联系电话", required: true }, /* @__PURE__ */ React.createElement(import_antd.Input, { placeholder: "请输入联系电话", style: { width: 300 } })), /* @__PURE__ */ React.createElement(import_antd.Form.Item, { label: "电子邮箱", required: true }, /* @__PURE__ */ React.createElement(import_antd.Input, { placeholder: "请输入电子邮箱", style: { width: 300 } })), /* @__PURE__ */ React.createElement(import_antd.Form.Item, { label: "现居住地址" }, /* @__PURE__ */ React.createElement(
840
+ import_antd.Input.TextArea,
841
+ {
842
+ placeholder: "请输入详细地址",
843
+ rows: 3
844
+ }
845
+ ))))))
846
+ },
847
+ footerProps: {
848
+ position: "fixed-bottom",
849
+ leftSlot: /* @__PURE__ */ React.createElement("div", { style: { color: "#999" } }, "第 1 步,共 4 步"),
850
+ actions: /* @__PURE__ */ React.createElement(import_antd.Space, null, /* @__PURE__ */ React.createElement(import_antd.Button, { disabled: true }, "上一步"), /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步"))
851
+ },
852
+ onStepsChange: (result) => {
853
+ console.log("步骤变化:", result);
854
+ }
855
+ }
856
+ };
857
+ var InteractionTest = {
858
+ args: {
859
+ defaultCurrent: 0,
860
+ headerProps: {
861
+ stepsProps: {
862
+ items: [
863
+ { title: "第一步" },
864
+ { title: "第二步" },
865
+ { title: "第三步" }
866
+ ]
867
+ }
868
+ },
869
+ bodyProps: {
870
+ contentSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24, minHeight: 400 } }, /* @__PURE__ */ React.createElement("h2", null, "步骤内容")),
871
+ sidebarSlot: /* @__PURE__ */ React.createElement("div", { style: { padding: 24 } }, /* @__PURE__ */ React.createElement("h3", null, "信息摘要"))
872
+ },
873
+ footerProps: {
874
+ actions: /* @__PURE__ */ React.createElement(import_antd.Space, null, /* @__PURE__ */ React.createElement(import_antd.Button, null, "上一步"), /* @__PURE__ */ React.createElement(import_antd.Button, { type: "primary" }, "下一步"))
875
+ }
876
+ },
877
+ play: async ({ canvasElement }) => {
878
+ const canvas = (0, import_test.within)(canvasElement);
879
+ const procedure = canvasElement.querySelector(
880
+ '[data-component="pisell-procedure"]'
881
+ );
882
+ await (0, import_test.expect)(procedure).toBeInTheDocument();
883
+ const steps = canvasElement.querySelectorAll(".ant-steps-item");
884
+ await (0, import_test.expect)(steps.length).toBeGreaterThan(0);
885
+ await (0, import_test.expect)(canvas.getByText("步骤内容")).toBeInTheDocument();
886
+ await (0, import_test.expect)(canvas.getByText("信息摘要")).toBeInTheDocument();
887
+ await (0, import_test.expect)(canvas.getByText("上一步")).toBeInTheDocument();
888
+ await (0, import_test.expect)(canvas.getByText("下一步")).toBeInTheDocument();
889
+ }
890
+ };
891
+ // Annotate the CommonJS export names for ESM import in node:
892
+ 0 && (module.exports = {
893
+ BackConfirmModal,
894
+ BodyContentOrderReverse,
895
+ BodyFixedLayout,
896
+ BodyRatioLayout,
897
+ BodyVerticalLayout,
898
+ CloseConfirmModal,
899
+ Default,
900
+ DisableOverflow,
901
+ FooterFixedBottom,
902
+ FooterFixedContentBottom,
903
+ FooterFixedSidebarBottom,
904
+ FooterFloatAll,
905
+ FooterFloatContent,
906
+ FooterFloatSidebar,
907
+ FormWizard,
908
+ HeaderSlotDefault,
909
+ HeaderSlotReverse,
910
+ HideSteps,
911
+ InteractionTest,
912
+ MinimalConfig,
913
+ MobileSummaryButton,
914
+ ModalMode,
915
+ OverflowActions,
916
+ PageMode,
917
+ RegistrationFlow,
918
+ ShoppingFlow,
919
+ ShowBackOnFirstStep,
920
+ StepControl,
921
+ StepIntercept,
922
+ WithoutFooter,
923
+ WithoutHeader,
924
+ WithoutSidebar
925
+ });