persagy-vant 0.0.34 → 0.0.36

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 (100) hide show
  1. package/es/index.d.ts +1 -1
  2. package/es/index.mjs +1 -1
  3. package/es/label/Label.d.ts +11 -1
  4. package/es/label/Label.mjs +34 -3
  5. package/es/label/index.css +1 -1
  6. package/es/label/index.d.ts +6 -2
  7. package/es/label/index.less +22 -0
  8. package/es/label/var.less +1 -0
  9. package/es/material-action-bar/MaterialActionBar.d.ts +15 -0
  10. package/es/material-action-bar/MaterialActionBar.mjs +107 -58
  11. package/es/material-action-bar/index.css +1 -1
  12. package/es/material-action-bar/index.d.ts +76 -2
  13. package/es/material-action-bar/index.less +9 -5
  14. package/es/material-action-bar/index.mjs +4 -2
  15. package/es/material-action-bar/style/index.mjs +1 -0
  16. package/es/material-action-bar/style/less.mjs +1 -0
  17. package/es/material-add/MaterialAdd.mjs +0 -1
  18. package/es/material-add/index.css +1 -1
  19. package/es/material-add/style/index.mjs +1 -0
  20. package/es/material-add/style/less.mjs +1 -0
  21. package/es/material-detail/MaterialDetail.mjs +7 -2
  22. package/es/material-display-bar/MaterialDisplayBar.d.ts +2 -1
  23. package/es/material-display-bar/MaterialDisplayBar.mjs +5 -3
  24. package/es/material-display-bar/index.css +1 -1
  25. package/es/material-display-bar/index.d.ts +205 -3
  26. package/es/material-display-bar/index.less +34 -1
  27. package/es/material-display-bar/index.mjs +6 -2
  28. package/es/material-display-bar/var.less +2 -1
  29. package/es/tag/Tag.d.ts +15 -2
  30. package/es/tag/Tag.mjs +20 -3
  31. package/es/tag/index.css +1 -1
  32. package/es/tag/index.d.ts +9 -0
  33. package/es/tag/index.less +45 -1
  34. package/es/tag/var.less +13 -0
  35. package/es/title-bar/TitleBar.d.ts +29 -11
  36. package/es/title-bar/TitleBar.mjs +38 -8
  37. package/es/title-bar/index.css +1 -1
  38. package/es/title-bar/index.d.ts +14 -1
  39. package/es/title-bar/index.less +10 -2
  40. package/es/title-bar/style/index.mjs +2 -0
  41. package/es/title-bar/style/less.mjs +2 -0
  42. package/es/title-bar/var.less +4 -0
  43. package/lib/index.css +1 -1
  44. package/lib/index.d.ts +1 -1
  45. package/lib/index.js +1 -1
  46. package/lib/index.less +1 -1
  47. package/lib/label/Label.d.ts +11 -1
  48. package/lib/label/Label.js +34 -3
  49. package/lib/label/index.css +1 -1
  50. package/lib/label/index.d.ts +6 -2
  51. package/lib/label/index.less +22 -0
  52. package/lib/label/var.less +1 -0
  53. package/lib/material-action-bar/MaterialActionBar.d.ts +15 -0
  54. package/lib/material-action-bar/MaterialActionBar.js +106 -57
  55. package/lib/material-action-bar/index.css +1 -1
  56. package/lib/material-action-bar/index.d.ts +76 -2
  57. package/lib/material-action-bar/index.js +4 -2
  58. package/lib/material-action-bar/index.less +9 -5
  59. package/lib/material-action-bar/style/index.js +1 -0
  60. package/lib/material-action-bar/style/less.js +1 -0
  61. package/lib/material-add/MaterialAdd.js +0 -1
  62. package/lib/material-add/index.css +1 -1
  63. package/lib/material-add/style/index.js +1 -0
  64. package/lib/material-add/style/less.js +1 -0
  65. package/lib/material-detail/MaterialDetail.js +7 -2
  66. package/lib/material-display-bar/MaterialDisplayBar.d.ts +2 -1
  67. package/lib/material-display-bar/MaterialDisplayBar.js +5 -3
  68. package/lib/material-display-bar/index.css +1 -1
  69. package/lib/material-display-bar/index.d.ts +205 -3
  70. package/lib/material-display-bar/index.js +6 -2
  71. package/lib/material-display-bar/index.less +34 -1
  72. package/lib/material-display-bar/var.less +2 -1
  73. package/lib/tag/Tag.d.ts +15 -2
  74. package/lib/tag/Tag.js +20 -3
  75. package/lib/tag/index.css +1 -1
  76. package/lib/tag/index.d.ts +9 -0
  77. package/lib/tag/index.less +45 -1
  78. package/lib/tag/var.less +13 -0
  79. package/lib/title-bar/TitleBar.d.ts +29 -11
  80. package/lib/title-bar/TitleBar.js +38 -8
  81. package/lib/title-bar/index.css +1 -1
  82. package/lib/title-bar/index.d.ts +14 -1
  83. package/lib/title-bar/index.less +10 -2
  84. package/lib/title-bar/style/index.js +2 -0
  85. package/lib/title-bar/style/less.js +2 -0
  86. package/lib/title-bar/var.less +4 -0
  87. package/lib/vant.cjs.js +218 -80
  88. package/lib/vant.es.js +218 -80
  89. package/lib/vant.js +218 -80
  90. package/lib/vant.min.js +1 -1
  91. package/lib/web-types.json +1 -1
  92. package/package.json +1 -1
  93. package/skills/use-persagy-vant/SKILL.md +2 -2
  94. package/skills/use-persagy-vant/references/component-catalog.md +3 -2
  95. package/skills/use-persagy-vant/references/component-documentation.md +1 -1
  96. package/skills/use-persagy-vant/references/component-gap-template.md +3 -0
  97. package/skills/use-persagy-vant/references/design-interaction-baseline.md +1 -0
  98. package/skills/use-persagy-vant/references/page-recipes.md +1 -1
  99. package/skills/use-persagy-vant/references/reuse-policy.md +27 -1
  100. package/skills/use-persagy-vant/references/usage-patterns.md +1 -1
package/lib/vant.es.js CHANGED
@@ -4543,7 +4543,11 @@ const tagProps = {
4543
4543
  plain: Boolean,
4544
4544
  round: Boolean,
4545
4545
  textColor: String,
4546
- closeable: Boolean
4546
+ closeable: Boolean,
4547
+ rightIcon: String,
4548
+ number: [String, Number],
4549
+ showNumber: Boolean,
4550
+ numberColor: String
4547
4551
  };
4548
4552
  var stdin_default$1H = defineComponent({
4549
4553
  name: name$1y,
@@ -4577,7 +4581,11 @@ var stdin_default$1H = defineComponent({
4577
4581
  plain,
4578
4582
  round,
4579
4583
  size,
4580
- closeable
4584
+ closeable,
4585
+ rightIcon,
4586
+ number,
4587
+ showNumber,
4588
+ numberColor
4581
4589
  } = props2;
4582
4590
  const classes = {
4583
4591
  mark,
@@ -4592,10 +4600,19 @@ var stdin_default$1H = defineComponent({
4592
4600
  "class": [bem$1u("close"), HAPTICS_FEEDBACK],
4593
4601
  "onClick": onClose
4594
4602
  }, null);
4603
+ const RightIcon = rightIcon && createVNode(Icon, {
4604
+ "name": rightIcon,
4605
+ "class": bem$1u("right-icon")
4606
+ }, null);
4595
4607
  return createVNode("span", {
4596
4608
  "style": getStyle(),
4597
4609
  "class": bem$1u([classes, type])
4598
- }, [(_a = slots.default) == null ? void 0 : _a.call(slots), CloseIcon]);
4610
+ }, [showNumber && number !== void 0 && createVNode("span", {
4611
+ "class": bem$1u("number"),
4612
+ "style": {
4613
+ color: numberColor
4614
+ }
4615
+ }, [number]), (_a = slots.default) == null ? void 0 : _a.call(slots), RightIcon, CloseIcon]);
4599
4616
  };
4600
4617
  return () => createVNode(Transition, {
4601
4618
  "name": props2.closeable ? "van-fade" : void 0
@@ -12067,6 +12084,7 @@ const labelProps = {
12067
12084
  size: makeStringProp("default"),
12068
12085
  contentAlign: makeStringProp("follow"),
12069
12086
  vertical: Boolean,
12087
+ ellipsis: Boolean,
12070
12088
  href: String,
12071
12089
  location: String,
12072
12090
  tags: {
@@ -12081,12 +12099,14 @@ const labelProps = {
12081
12099
  var stdin_default$M = defineComponent({
12082
12100
  name: name$E,
12083
12101
  props: labelProps,
12084
- emits: ["click", "click-media"],
12102
+ emits: ["click", "click-media", "long-press"],
12085
12103
  setup(props2, {
12086
12104
  slots,
12087
12105
  emit
12088
12106
  }) {
12107
+ let longPressTimer;
12089
12108
  const vertical = computed(() => props2.vertical || props2.type === "media");
12109
+ const ellipsis = computed(() => props2.ellipsis && !vertical.value && !["tag", "media"].includes(props2.type));
12090
12110
  const displayLabel = computed(() => {
12091
12111
  var _a;
12092
12112
  const showColon = (_a = props2.showColon) != null ? _a : !vertical.value && props2.contentAlign !== "right";
@@ -12096,6 +12116,25 @@ var stdin_default$M = defineComponent({
12096
12116
  return `${props2.label}:`;
12097
12117
  });
12098
12118
  const showLocation = computed(() => props2.vertical && (props2.type === "bold" || props2.type === "link") && !!props2.location);
12119
+ const clearLongPress = () => {
12120
+ if (longPressTimer !== void 0) {
12121
+ clearTimeout(longPressTimer);
12122
+ longPressTimer = void 0;
12123
+ }
12124
+ };
12125
+ const startLongPress = (target, text) => {
12126
+ if (!ellipsis.value || !text)
12127
+ return;
12128
+ clearLongPress();
12129
+ longPressTimer = setTimeout(() => {
12130
+ longPressTimer = void 0;
12131
+ const payload = {
12132
+ target,
12133
+ text
12134
+ };
12135
+ emit("long-press", payload);
12136
+ }, 500);
12137
+ };
12099
12138
  const renderText = () => {
12100
12139
  var _a;
12101
12140
  const content = ((_a = slots.default) == null ? void 0 : _a.call(slots)) || props2.content;
@@ -12148,13 +12187,22 @@ var stdin_default$M = defineComponent({
12148
12187
  "class": bem$E([props2.type, {
12149
12188
  mini: props2.size === "mini",
12150
12189
  vertical: vertical.value,
12190
+ ellipsis: ellipsis.value,
12151
12191
  location: showLocation.value,
12152
12192
  "content-right": props2.contentAlign === "right"
12153
12193
  }])
12154
12194
  }, [props2.showLabel && createVNode("span", {
12155
- "class": bem$E("label")
12195
+ "class": bem$E("label"),
12196
+ "onPointerdown": () => startLongPress("label", displayLabel.value),
12197
+ "onPointerup": clearLongPress,
12198
+ "onPointercancel": clearLongPress,
12199
+ "onPointerleave": clearLongPress
12156
12200
  }, [displayLabel.value]), props2.showContent && createVNode("div", {
12157
- "class": bem$E("value")
12201
+ "class": bem$E("value"),
12202
+ "onPointerdown": () => startLongPress("content", props2.content),
12203
+ "onPointerup": clearLongPress,
12204
+ "onPointercancel": clearLongPress,
12205
+ "onPointerleave": clearLongPress
12158
12206
  }, [renderContent(), showLocation.value && createVNode("div", {
12159
12207
  "class": bem$E("location")
12160
12208
  }, [createVNode(Icon, {
@@ -13194,14 +13242,20 @@ var stdin_default$E = defineComponent({
13194
13242
  warning: {
13195
13243
  type: String,
13196
13244
  default: ""
13245
+ },
13246
+ picking: {
13247
+ type: Object,
13248
+ default: void 0
13197
13249
  }
13198
13250
  },
13199
13251
  emits: ["update:modelValue", "detail"],
13200
13252
  setup(props2, {
13253
+ slots,
13201
13254
  emit
13202
13255
  }) {
13203
13256
  const showInputDialog = ref(false);
13204
13257
  const inputValue = ref("");
13258
+ let detailLongPressTimer;
13205
13259
  const openInputDialog = () => {
13206
13260
  if (!props2.enableInputDialog)
13207
13261
  return;
@@ -13214,6 +13268,25 @@ var stdin_default$E = defineComponent({
13214
13268
  emit("update:modelValue", Math.max(0, value));
13215
13269
  }
13216
13270
  };
13271
+ const clearDetailLongPress = () => {
13272
+ if (detailLongPressTimer) {
13273
+ clearTimeout(detailLongPressTimer);
13274
+ detailLongPressTimer = void 0;
13275
+ }
13276
+ };
13277
+ const onDetailLongPressStart = (event) => {
13278
+ const target = event.currentTarget;
13279
+ if (target.scrollWidth <= target.clientWidth) {
13280
+ return;
13281
+ }
13282
+ clearDetailLongPress();
13283
+ detailLongPressTimer = setTimeout(() => {
13284
+ Toast({
13285
+ message: props2.item.detail,
13286
+ position: "middle"
13287
+ });
13288
+ }, 500);
13289
+ };
13217
13290
  const highlight = (text) => {
13218
13291
  const query = props2.keyword.trim();
13219
13292
  if (!query)
@@ -13236,67 +13309,91 @@ var stdin_default$E = defineComponent({
13236
13309
  parts.push(text.slice(start));
13237
13310
  return parts;
13238
13311
  };
13239
- return () => createVNode("div", {
13240
- "class": bem$x({
13241
- selected: props2.selected
13242
- })
13243
- }, [createVNode("div", {
13244
- "class": bem$x("main")
13245
- }, [createVNode("button", {
13246
- "type": "button",
13247
- "class": bem$x("detail"),
13248
- "onClick": () => emit("detail", props2.item)
13249
- }, [createVNode("span", null, [highlight(props2.item.name)]), props2.selected && props2.item.kind && createVNode(Tag, {
13250
- "class": bem$x("kind-tag"),
13251
- "color": props2.item.kind === "material" ? "#d9ebff" : "#d9f7f7",
13252
- "textColor": props2.item.kind === "material" ? "var(--van-primary-color)" : "#00aeb3"
13253
- }, {
13254
- default: () => [props2.item.kind === "material" ? "物资" : "工具"]
13255
- }), createVNode(Icon, {
13256
- "name": "arrow",
13257
- "size": "12"
13258
- }, null)]), createVNode("div", {
13259
- "class": bem$x("stepper-wrapper")
13260
- }, [createVNode(Stepper, {
13261
- "class": bem$x("stepper"),
13262
- "modelValue": props2.modelValue,
13263
- "min": 0,
13264
- "theme": "round",
13265
- "buttonSize": 18,
13266
- "disableInput": true,
13267
- "onUpdate:modelValue": (value) => emit("update:modelValue", Number(value))
13268
- }, null), props2.enableInputDialog && createVNode("button", {
13269
- "type": "button",
13270
- "class": bem$x("number-trigger"),
13271
- "aria-label": "输入数量",
13272
- "onClick": openInputDialog
13273
- }, null)]), createVNode("span", {
13274
- "class": bem$x("unit")
13275
- }, [props2.item.unit])]), createVNode("p", {
13276
- "class": bem$x("desc")
13277
- }, [highlight(props2.item.detail)]), props2.showWarning && props2.warning && createVNode("p", {
13278
- "class": bem$x("warning")
13279
- }, [props2.warning]), createVNode(Dialog.Component, {
13280
- "show": showInputDialog.value,
13281
- "inputValue": inputValue.value,
13282
- "inputAlign": "left",
13283
- "title": "输入数量",
13284
- "inputPlaceholder": "请输入数量",
13285
- "inputAutofocus": true,
13286
- "showInput": true,
13287
- "showCancelButton": true,
13288
- "onUpdate:show": (value) => {
13289
- showInputDialog.value = value;
13290
- },
13291
- "onUpdate:inputValue": (value) => {
13292
- inputValue.value = value;
13293
- },
13294
- "onConfirm": confirmInputValue
13295
- }, null)]);
13312
+ onBeforeUnmount(clearDetailLongPress);
13313
+ return () => {
13314
+ var _a, _b, _c, _d, _e;
13315
+ return createVNode("div", {
13316
+ "class": bem$x({
13317
+ selected: props2.selected
13318
+ })
13319
+ }, [createVNode("div", {
13320
+ "class": bem$x("main")
13321
+ }, [createVNode("button", {
13322
+ "type": "button",
13323
+ "class": bem$x("detail"),
13324
+ "onClick": () => emit("detail", props2.item)
13325
+ }, [createVNode("span", null, [highlight(props2.item.name)]), props2.selected && props2.item.kind && createVNode(Tag, {
13326
+ "class": bem$x("kind-tag"),
13327
+ "color": props2.item.kind === "material" ? "#d9ebff" : "#d9f7f7",
13328
+ "textColor": props2.item.kind === "material" ? "var(--van-primary-color)" : "#00aeb3"
13329
+ }, {
13330
+ default: () => [props2.item.kind === "material" ? "物资" : "工具"]
13331
+ }), createVNode(Icon, {
13332
+ "name": "arrow",
13333
+ "size": "12"
13334
+ }, null)]), (((_a = props2.picking) == null ? void 0 : _a.quantityLabel) || slots["stepper-prefix"]) && createVNode("div", {
13335
+ "class": bem$x("stepper-prefix")
13336
+ }, [((_b = props2.picking) == null ? void 0 : _b.quantityLabel) || ((_c = slots["stepper-prefix"]) == null ? void 0 : _c.call(slots))]), createVNode("div", {
13337
+ "class": bem$x("stepper-wrapper")
13338
+ }, [createVNode(Stepper, {
13339
+ "class": bem$x("stepper"),
13340
+ "modelValue": props2.modelValue,
13341
+ "min": 0,
13342
+ "theme": "round",
13343
+ "buttonSize": 18,
13344
+ "disableInput": true,
13345
+ "onUpdate:modelValue": (value) => emit("update:modelValue", Number(value))
13346
+ }, null), props2.enableInputDialog && createVNode("button", {
13347
+ "type": "button",
13348
+ "class": bem$x("number-trigger"),
13349
+ "aria-label": "输入数量",
13350
+ "onClick": openInputDialog
13351
+ }, null)]), createVNode("span", {
13352
+ "class": bem$x("unit")
13353
+ }, [props2.item.unit])]), createVNode("p", {
13354
+ "class": bem$x("desc"),
13355
+ "onTouchstart": onDetailLongPressStart,
13356
+ "onTouchmove": clearDetailLongPress,
13357
+ "onTouchend": clearDetailLongPress,
13358
+ "onTouchcancel": clearDetailLongPress,
13359
+ "onMousedown": onDetailLongPressStart,
13360
+ "onMousemove": clearDetailLongPress,
13361
+ "onMouseup": clearDetailLongPress,
13362
+ "onMouseleave": clearDetailLongPress
13363
+ }, [highlight(props2.item.detail)]), props2.showWarning && props2.warning && createVNode("p", {
13364
+ "class": bem$x("warning")
13365
+ }, [props2.warning]), ((_d = props2.picking) == null ? void 0 : _d.outboundValue) !== void 0 && createVNode("p", {
13366
+ "class": bem$x("picking-outbound")
13367
+ }, [createVNode("span", {
13368
+ "class": bem$x("picking-label")
13369
+ }, [props2.picking.outboundLabel || "应出:"]), createVNode("span", {
13370
+ "class": bem$x("picking-value"),
13371
+ "style": {
13372
+ fontWeight: props2.picking.outboundBold ? 600 : 400
13373
+ }
13374
+ }, [props2.picking.outboundValue])]), (_e = slots.default) == null ? void 0 : _e.call(slots), createVNode(Dialog.Component, {
13375
+ "show": showInputDialog.value,
13376
+ "inputValue": inputValue.value,
13377
+ "inputAlign": "left",
13378
+ "title": "输入数量",
13379
+ "inputPlaceholder": "请输入数量",
13380
+ "inputAutofocus": true,
13381
+ "showInput": true,
13382
+ "showCancelButton": true,
13383
+ "onUpdate:show": (value) => {
13384
+ showInputDialog.value = value;
13385
+ },
13386
+ "onUpdate:inputValue": (value) => {
13387
+ inputValue.value = value;
13388
+ },
13389
+ "onConfirm": confirmInputValue
13390
+ }, null)]);
13391
+ };
13296
13392
  }
13297
13393
  });
13298
- const MaterialActionBar = withInstall(stdin_default$E);
13299
- var stdin_default$D = MaterialActionBar;
13394
+ const MaterialActionList = withInstall(stdin_default$E);
13395
+ const MaterialActionBar = MaterialActionList;
13396
+ var stdin_default$D = MaterialActionList;
13300
13397
  const [name$w, bem$w] = createNamespace("material-detail");
13301
13398
  const defaultImages = ["/dog1.jpg", "/dog2.jpg", "/dog3.jpg"];
13302
13399
  const materialDetailProps = {
@@ -13318,6 +13415,7 @@ var stdin_default$C = defineComponent({
13318
13415
  const usageExpanded = ref(true);
13319
13416
  const noticeExpanded = ref(true);
13320
13417
  const bannerIndex = ref(0);
13418
+ const swipeRef = ref();
13321
13419
  const item = computed(() => props2.item);
13322
13420
  const close = () => emit("update:show", false);
13323
13421
  const infoRows = computed(() => {
@@ -13374,14 +13472,18 @@ var stdin_default$C = defineComponent({
13374
13472
  });
13375
13473
  const displayImages = computed(() => props2.images.length ? props2.images : defaultImages);
13376
13474
  return () => createVNode(Transition, {
13377
- "name": "van-material-detail"
13475
+ "name": "van-material-detail",
13476
+ "onAfterEnter": () => {
13477
+ var _a;
13478
+ return (_a = swipeRef.value) == null ? void 0 : _a.resize();
13479
+ }
13378
13480
  }, {
13379
13481
  default: () => [props2.show && item.value ? createVNode("div", {
13380
13482
  "class": bem$w()
13381
13483
  }, [createVNode("div", {
13382
13484
  "class": bem$w("banner")
13383
13485
  }, [createVNode(Swipe, {
13384
- "loop": false,
13486
+ "ref": swipeRef,
13385
13487
  "showIndicators": false,
13386
13488
  "class": bem$w("swipe"),
13387
13489
  "onChange": (index) => {
@@ -14216,10 +14318,12 @@ var stdin_default$y = defineComponent({
14216
14318
  return;
14217
14319
  return createVNode(Label, {
14218
14320
  "key": `${field.label}-${index}`,
14321
+ "class": bem$t("field"),
14219
14322
  "size": "mini",
14220
14323
  "label": field.label,
14221
14324
  "showLabel": field.showLabel,
14222
14325
  "showContent": field.showContent,
14326
+ "showColon": field.showColon,
14223
14327
  "content": field.content,
14224
14328
  "type": field.type,
14225
14329
  "vertical": field.vertical,
@@ -14235,7 +14339,7 @@ var stdin_default$y = defineComponent({
14235
14339
  route2();
14236
14340
  };
14237
14341
  const renderBar = () => {
14238
- var _a, _b, _c;
14342
+ var _a, _b, _c, _d;
14239
14343
  return createVNode("section", {
14240
14344
  "class": bem$t({
14241
14345
  rounded: props2.rounded
@@ -14257,12 +14361,12 @@ var stdin_default$y = defineComponent({
14257
14361
  "class": bem$t("quantity")
14258
14362
  }, [((_b = slots.quantity) == null ? void 0 : _b.call(slots)) || createVNode(Fragment, null, [props2.quantityLabel && createVNode("span", {
14259
14363
  "class": bem$t("quantity-label")
14260
- }, [props2.quantityLabel]), createVNode("strong", null, [props2.quantity]), props2.unit && createVNode("span", null, [props2.unit])])])]), props2.fields.filter((field) => field.visible !== false).length > 0 && createVNode("div", {
14364
+ }, [props2.quantityLabel]), createVNode("strong", null, [props2.quantity]), props2.unit && createVNode("span", null, [props2.unit])]), (_c = slots["quantity-suffix"]) == null ? void 0 : _c.call(slots)])]), props2.fields.filter((field) => field.visible !== false).length > 0 && createVNode("div", {
14261
14365
  "class": bem$t("fields")
14262
14366
  }, [props2.fields.map(renderField)])]), props2.divider && createVNode(Divider, {
14263
14367
  "hairline": true,
14264
14368
  "class": bem$t("divider")
14265
- }, null), ((_c = slots.default) == null ? void 0 : _c.call(slots)) && createVNode("div", {
14369
+ }, null), ((_d = slots.default) == null ? void 0 : _d.call(slots)) && createVNode("div", {
14266
14370
  "class": bem$t("bottom")
14267
14371
  }, [slots.default()])]);
14268
14372
  };
@@ -14282,7 +14386,9 @@ var stdin_default$y = defineComponent({
14282
14386
  }) : renderBar();
14283
14387
  }
14284
14388
  });
14285
- const MaterialDisplayBar = withInstall(stdin_default$y);
14389
+ const MaterialPreviewList = withInstall(stdin_default$y);
14390
+ const MaterialPreview = MaterialPreviewList;
14391
+ const MaterialDisplayBar = MaterialPreviewList;
14286
14392
  const [name$s, bem$s] = createNamespace("multi-person-select");
14287
14393
  const defaultGroups$1 = [{
14288
14394
  id: "air-conditioning-a",
@@ -17915,6 +18021,8 @@ const titleBarProps = {
17915
18021
  showIcon: Boolean,
17916
18022
  showDescription: Boolean,
17917
18023
  showArrow: Boolean,
18024
+ actionText: makeStringProp("操作"),
18025
+ showAction: Boolean,
17918
18026
  size: makeStringProp("default"),
17919
18027
  expandable: Boolean,
17920
18028
  modelValue: truthProp
@@ -17922,7 +18030,7 @@ const titleBarProps = {
17922
18030
  var stdin_default$9 = defineComponent({
17923
18031
  name: name$4,
17924
18032
  props: titleBarProps,
17925
- emits: ["update:modelValue", "change", "click"],
18033
+ emits: ["update:modelValue", "change", "click", "click-action"],
17926
18034
  setup(props2, {
17927
18035
  slots,
17928
18036
  emit
@@ -17934,6 +18042,21 @@ var stdin_default$9 = defineComponent({
17934
18042
  emit("update:modelValue", value);
17935
18043
  emit("change", value);
17936
18044
  };
18045
+ const onHeaderClick = (event) => {
18046
+ emit("click", event);
18047
+ toggle();
18048
+ };
18049
+ const onActionClick = (event) => {
18050
+ event.stopPropagation();
18051
+ emit("click-action", event);
18052
+ };
18053
+ const onHeaderKeydown = (event) => {
18054
+ if (event.key === "Enter" || event.key === " ") {
18055
+ event.preventDefault();
18056
+ emit("click", event);
18057
+ toggle();
18058
+ }
18059
+ };
17937
18060
  return () => {
17938
18061
  var _a, _b, _c;
17939
18062
  return createVNode("section", {
@@ -17941,20 +18064,32 @@ var stdin_default$9 = defineComponent({
17941
18064
  mini: props2.size === "mini",
17942
18065
  expandable: props2.expandable
17943
18066
  })
17944
- }, [createVNode("button", {
17945
- "type": "button",
18067
+ }, [createVNode("div", {
17946
18068
  "class": bem$4("header"),
18069
+ "role": "button",
18070
+ "tabindex": "0",
17947
18071
  "aria-expanded": props2.expandable ? props2.modelValue : void 0,
17948
- "onClick": (event) => {
17949
- emit("click", event);
17950
- toggle();
17951
- }
18072
+ "onClick": onHeaderClick,
18073
+ "onKeydown": onHeaderKeydown
17952
18074
  }, [props2.showIcon && props2.icon && createVNode(Icon, {
17953
18075
  "name": props2.icon,
17954
18076
  "class": bem$4("icon")
17955
18077
  }, null), createVNode("span", {
17956
18078
  "class": bem$4("text")
17957
- }, [createVNode("strong", null, [((_a = slots.title) == null ? void 0 : _a.call(slots)) || props2.title]), props2.size !== "mini" && props2.showDescription && props2.description && createVNode("span", null, [((_b = slots.description) == null ? void 0 : _b.call(slots)) || props2.description])]), (props2.showArrow || props2.expandable) && createVNode(Icon, {
18079
+ }, [createVNode("span", {
18080
+ "class": bem$4("title-row")
18081
+ }, [createVNode("strong", null, [((_a = slots.title) == null ? void 0 : _a.call(slots)) || props2.title]), props2.showAction && props2.actionText && createVNode("span", {
18082
+ "class": bem$4("action")
18083
+ }, [createVNode("i", {
18084
+ "class": bem$4("action-divider")
18085
+ }, null), createVNode(Button, {
18086
+ "type": "text",
18087
+ "size": "small",
18088
+ "text": props2.actionText,
18089
+ "onClick": onActionClick
18090
+ }, null)])]), props2.size !== "mini" && props2.showDescription && props2.description && createVNode("span", {
18091
+ "class": bem$4("description")
18092
+ }, [((_b = slots.description) == null ? void 0 : _b.call(slots)) || props2.description])]), (props2.showArrow || props2.expandable) && createVNode(Icon, {
17958
18093
  "name": "arrow-up",
17959
18094
  "class": bem$4("arrow", {
17960
18095
  expanded: props2.expandable && props2.modelValue
@@ -20213,7 +20348,7 @@ const Lazyload = {
20213
20348
  });
20214
20349
  }
20215
20350
  };
20216
- const version = "0.0.34";
20351
+ const version = "0.0.36";
20217
20352
  function install(app) {
20218
20353
  const components = [
20219
20354
  ActionBar,
@@ -20404,9 +20539,12 @@ export {
20404
20539
  Locale,
20405
20540
  LocationSelect,
20406
20541
  MaterialActionBar,
20542
+ MaterialActionList,
20407
20543
  MaterialAdd,
20408
20544
  MaterialDetail,
20409
20545
  MaterialDisplayBar,
20546
+ MaterialPreview,
20547
+ MaterialPreviewList,
20410
20548
  MultiPersonSelect,
20411
20549
  NavBar,
20412
20550
  NoticeBar,