@vunk/plus 1.8.2 → 1.8.4

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 (71) hide show
  1. package/components/architecture-O4VJ6CD3-ZoZ2IAk2.mjs +2 -1
  2. package/components/architectureDiagram-SUXI7LT5-kyYGGrHN.mjs +2 -1
  3. package/components/blockDiagram-6J76NXCF-IAr4zDV3.mjs +2 -1
  4. package/components/broadcasting-markdown/src/howler-speech.vue.d.ts +3 -3
  5. package/components/broadcasting-markdown/src/index.vue.d.ts +7 -7
  6. package/components/bubble-list/index.css +70 -0
  7. package/components/bubble-list/index.mjs +2 -1
  8. package/components/bubble-list/src/core/index.vue.d.ts +1582 -0
  9. package/components/bubble-list/src/ctx.d.ts +1 -0
  10. package/components/bubble-list/src/index.vue.d.ts +1579 -61
  11. package/components/c4Diagram-6F6E4RAY-Dv27rXcJ.mjs +2 -1
  12. package/components/chat-independent/src/index.vue.d.ts +1819 -300
  13. package/components/classDiagram-M3E45YP4-D0ySDe-v.mjs +2 -1
  14. package/components/classDiagram-v2-YAWTLIQI-D0ySDe-v.mjs +2 -1
  15. package/components/dagre-JOIXM2OF-5zx0JY2T.mjs +2 -1
  16. package/components/diagram-5UYTHUR4-C19nyAKc.mjs +2 -1
  17. package/components/diagram-VMROVX33-DkGwo-hj.mjs +2 -1
  18. package/components/diagram-ZTM2IBQH-CBgHCu9L.mjs +2 -1
  19. package/components/erDiagram-3M52JZNH-cttdAJXW.mjs +2 -1
  20. package/components/flowDiagram-KYDEHFYC-9HpsqDdB.mjs +2 -1
  21. package/components/ganttDiagram-EK5VF46D-8QB3ofs6.mjs +2 -1
  22. package/components/gitGraph-ZV4HHKMB-BSmtVGRu.mjs +2 -1
  23. package/components/gitGraphDiagram-GW3U2K7C-DNzc0Vx_.mjs +2 -1
  24. package/components/index3.mjs +350 -364
  25. package/components/info-63CPKGFF-C8sYWczU.mjs +2 -1
  26. package/components/infoDiagram-LHK5PUON-C-vFFPTf.mjs +2 -1
  27. package/components/journeyDiagram-EWQZEKCU-BJrw4-AG.mjs +2 -1
  28. package/components/kanban-definition-ZSS6B67P-BptAnqU-.mjs +2 -1
  29. package/components/mermaid.core-CAqkCmS1.mjs +2 -1
  30. package/components/metahuman-broadcasting/src/index.vue.d.ts +55 -55
  31. package/components/mindmap-definition-6CBA2TL7-Cp_EeEsh.mjs +2 -1
  32. package/components/packet-HUATNLJX-bfFWFja0.mjs +2 -1
  33. package/components/pie-WTHONI2E-QPrWs3SR.mjs +2 -1
  34. package/components/pieDiagram-NIOCPIFQ-C46Y_4C6.mjs +2 -1
  35. package/components/pixi-frame/src/apng.vue.d.ts +3 -3
  36. package/components/pixi-frame/src/bitmap.vue.d.ts +42 -42
  37. package/components/pixi-frame/src/core.vue.d.ts +6 -6
  38. package/components/pixi-frame/src/index.vue.d.ts +51 -51
  39. package/components/pixi-frame/src/video.vue.d.ts +3 -3
  40. package/components/quadrantDiagram-2OG54O6I-Dgf6d6F_.mjs +2 -1
  41. package/components/radar-NJJJXTRR-BnUCJhQL.mjs +2 -1
  42. package/components/recorder-button/src/index.vue.d.ts +19 -19
  43. package/components/requirementDiagram-QOLK2EJ7-CSF6N7HA.mjs +2 -1
  44. package/components/routes-menu-content/src/index.vue.d.ts +5 -5
  45. package/components/routes-menu-content/src/item/index.vue.d.ts +5 -5
  46. package/components/sankeyDiagram-4UZDY2LN-BAHB7dMS.mjs +2 -1
  47. package/components/scrollbar/index.mjs +23 -1
  48. package/components/scrollbar/src/index.vue.d.ts +5 -3
  49. package/components/sender/index.mjs +1 -1
  50. package/components/sender/src/SenderHeader.vue.d.ts +1 -1
  51. package/components/sender/src/ctx.d.ts +2 -2
  52. package/components/sender/src/index.vue.d.ts +13 -13
  53. package/components/sequenceDiagram-SKLFT4DO-10gLJ50N.mjs +2 -1
  54. package/components/stateDiagram-MI5ZYTHO-D6p6nCaj.mjs +2 -1
  55. package/components/stateDiagram-v2-5AN5P6BG-DaN5hC-t.mjs +2 -1
  56. package/components/table-columns/src/el-ctx.d.ts +1 -1
  57. package/components/tables-v1/src/ctx.d.ts +8 -8
  58. package/components/tables-v1/src/el-ctx.d.ts +2 -2
  59. package/components/tables-v1/src/index.vue.d.ts +18 -18
  60. package/components/tables-v1-checkbox/src/ctx.d.ts +6 -6
  61. package/components/tables-v1-checkbox/src/index.vue.d.ts +43 -43
  62. package/components/text/src/ctx.d.ts +2 -2
  63. package/components/text/src/index.vue.d.ts +21 -21
  64. package/components/timeline-definition-MYPXXCX6-gLqnWxDu.mjs +2 -1
  65. package/components/treemap-75Q7IDZK-B2atdfMH.mjs +2 -1
  66. package/components/typing-markdown/src/index.vue.d.ts +2 -2
  67. package/components/vditor/src/ctx.d.ts +1 -1
  68. package/components/vditor/src/index.vue.d.ts +1 -1
  69. package/components/xychartDiagram-H2YORKM3-Whqa4ezL.mjs +2 -1
  70. package/index.css +70 -0
  71. package/package.json +1 -1
@@ -1,11 +1,33 @@
1
- import { defineComponent, computed, openBlock, createElementBlock, mergeProps, unref, renderSlot, shallowRef, watchEffect, readonly, warn, getCurrentInstance, inject, ref, watch, customRef, getCurrentScope, onScopeDispose, onMounted, nextTick, isRef, createElementVNode, createBlock, resolveDynamicComponent, withCtx, Fragment, normalizeClass, createCommentVNode, provide, reactive, toRef, onUnmounted, useSlots, Text, onBeforeUnmount, Teleport as Teleport$1, markRaw, effectScope, createVNode, Transition, normalizeStyle, withModifiers, createTextVNode, toDisplayString, renderList, useAttrs as useAttrs$1, createSlots, normalizeProps, guardReactiveProps, TransitionGroup, withKeys, createStaticVNode, withDirectives, cloneVNode, Comment, vShow, onDeactivated, onBeforeMount, onActivated, onUpdated, resolveComponent, toHandlers, h as h$2, isVNode, triggerRef, onBeforeUpdate, shallowReactive, toRefs, toValue, isReadonly, render as render$2 } from 'vue';
1
+ import { defineComponent, openBlock, createElementBlock, createElementVNode, computed, mergeProps, unref, renderSlot, shallowRef, watchEffect, readonly, warn, getCurrentInstance, inject, ref, watch, customRef, getCurrentScope, onScopeDispose, onMounted, nextTick, isRef, createBlock, resolveDynamicComponent, withCtx, Fragment, normalizeClass, createCommentVNode, provide, reactive, toRef, onUnmounted, useSlots, Text, onBeforeUnmount, Teleport as Teleport$1, markRaw, effectScope, createVNode, Transition, normalizeStyle, withModifiers, createTextVNode, toDisplayString, renderList, useAttrs as useAttrs$1, createSlots, normalizeProps, guardReactiveProps, TransitionGroup, withKeys, withDirectives, cloneVNode, Comment, vShow, onDeactivated, onBeforeMount, onActivated, onUpdated, resolveComponent, toHandlers, h as h$2, isVNode, triggerRef, onBeforeUpdate, shallowReactive, toRefs, toValue, isReadonly, render as render$2, createStaticVNode } from 'vue';
2
2
  import { VkBubbleRenderer, VkBubbleRenderTemplates, VkBubbleTemplates } from '@vunk/plus/components/bubble-templates';
3
3
  import { VkSpreadTo } from '@vunk/core/components/spread-to';
4
4
  import { ElAutoResizer } from 'element-plus';
5
- import { noop as noop$1 } from '@vunk/shared/function';
5
+ import { VkScrollbar } from '@vunk/plus/components/scrollbar';
6
6
  import { _ as _export_sfc$2 } from './_plugin-vue_export-helper.mjs';
7
+ import { noop as noop$1 } from '@vunk/shared/function';
7
8
  import '@vunk/plus/components/agent-chat-provider';
8
9
 
10
+ /*! Element Plus Icons Vue v2.3.1 */
11
+
12
+ var arrow_down_bold_vue_vue_type_script_setup_true_lang_default$1 = /* @__PURE__ */ defineComponent({
13
+ name: "ArrowDownBold",
14
+ __name: "arrow-down-bold",
15
+ setup(__props) {
16
+ return (_ctx, _cache) => (openBlock(), createElementBlock("svg", {
17
+ xmlns: "http://www.w3.org/2000/svg",
18
+ viewBox: "0 0 1024 1024"
19
+ }, [
20
+ createElementVNode("path", {
21
+ fill: "currentColor",
22
+ d: "M104.704 338.752a64 64 0 0 1 90.496 0l316.8 316.8 316.8-316.8a64 64 0 0 1 90.496 90.496L557.248 791.296a64 64 0 0 1-90.496 0L104.704 429.248a64 64 0 0 1 0-90.496z"
23
+ })
24
+ ]));
25
+ }
26
+ });
27
+
28
+ // src/components/arrow-down-bold.vue
29
+ var arrow_down_bold_default$1 = arrow_down_bold_vue_vue_type_script_setup_true_lang_default$1;
30
+
9
31
  const defaultNamespace = "el";
10
32
  const statePrefix = "is-";
11
33
  const _bem = (namespace, block, blockSuffix, element, modifier) => {
@@ -455,7 +477,7 @@ const __default__$j = defineComponent({
455
477
  name: "ElIcon",
456
478
  inheritAttrs: false
457
479
  });
458
- const _sfc_main$w = /* @__PURE__ */ defineComponent({
480
+ const _sfc_main$u = /* @__PURE__ */ defineComponent({
459
481
  ...__default__$j,
460
482
  props: iconProps,
461
483
  setup(__props) {
@@ -480,7 +502,7 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
480
502
  };
481
503
  }
482
504
  });
483
- var Icon = /* @__PURE__ */ _export_sfc$1(_sfc_main$w, [["__file", "icon.vue"]]);
505
+ var Icon = /* @__PURE__ */ _export_sfc$1(_sfc_main$u, [["__file", "icon.vue"]]);
484
506
  const ElIcon = withInstall(Icon);
485
507
 
486
508
  var freeGlobal = typeof global == "object" && global && global.Object === Object && global;
@@ -2965,7 +2987,7 @@ function useButtonCustomStyle(props) {
2965
2987
  const __default__$1$6 = defineComponent({
2966
2988
  name: "ElButton"
2967
2989
  });
2968
- const _sfc_main$1$9 = /* @__PURE__ */ defineComponent({
2990
+ const _sfc_main$1$a = /* @__PURE__ */ defineComponent({
2969
2991
  ...__default__$1$6,
2970
2992
  props: buttonProps,
2971
2993
  emits: buttonEmits,
@@ -3042,7 +3064,7 @@ const _sfc_main$1$9 = /* @__PURE__ */ defineComponent({
3042
3064
  };
3043
3065
  }
3044
3066
  });
3045
- var Button = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$9, [["__file", "button.vue"]]);
3067
+ var Button = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$a, [["__file", "button.vue"]]);
3046
3068
  const buttonGroupProps = {
3047
3069
  size: buttonProps.size,
3048
3070
  type: buttonProps.type
@@ -3050,7 +3072,7 @@ const buttonGroupProps = {
3050
3072
  const __default__$i = defineComponent({
3051
3073
  name: "ElButtonGroup"
3052
3074
  });
3053
- const _sfc_main$v = /* @__PURE__ */ defineComponent({
3075
+ const _sfc_main$t = /* @__PURE__ */ defineComponent({
3054
3076
  ...__default__$i,
3055
3077
  props: buttonGroupProps,
3056
3078
  setup(__props) {
@@ -3069,7 +3091,7 @@ const _sfc_main$v = /* @__PURE__ */ defineComponent({
3069
3091
  };
3070
3092
  }
3071
3093
  });
3072
- var ButtonGroup = /* @__PURE__ */ _export_sfc$1(_sfc_main$v, [["__file", "button-group.vue"]]);
3094
+ var ButtonGroup = /* @__PURE__ */ _export_sfc$1(_sfc_main$t, [["__file", "button-group.vue"]]);
3073
3095
  const ElButton = withInstall(Button, {
3074
3096
  ButtonGroup
3075
3097
  });
@@ -3616,7 +3638,7 @@ const useEscapeKeydown = (handler) => {
3616
3638
  }
3617
3639
  });
3618
3640
  };
3619
- const _sfc_main$1$8 = defineComponent({
3641
+ const _sfc_main$1$9 = defineComponent({
3620
3642
  name: "ElFocusTrap",
3621
3643
  inheritAttrs: false,
3622
3644
  props: {
@@ -3858,10 +3880,10 @@ const _sfc_main$1$8 = defineComponent({
3858
3880
  };
3859
3881
  }
3860
3882
  });
3861
- function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) {
3883
+ function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) {
3862
3884
  return renderSlot(_ctx.$slots, "default", { handleKeydown: _ctx.onKeydown });
3863
3885
  }
3864
- var ElFocusTrap = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$8, [["render", _sfc_render$a], ["__file", "focus-trap.vue"]]);
3886
+ var ElFocusTrap = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$9, [["render", _sfc_render$9], ["__file", "focus-trap.vue"]]);
3865
3887
  const teleportProps = buildProps({
3866
3888
  to: {
3867
3889
  type: definePropType([String, Object]),
@@ -3869,7 +3891,7 @@ const teleportProps = buildProps({
3869
3891
  },
3870
3892
  disabled: Boolean
3871
3893
  });
3872
- const _sfc_main$u = /* @__PURE__ */ defineComponent({
3894
+ const _sfc_main$s = /* @__PURE__ */ defineComponent({
3873
3895
  __name: "teleport",
3874
3896
  props: teleportProps,
3875
3897
  setup(__props) {
@@ -3883,7 +3905,7 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
3883
3905
  };
3884
3906
  }
3885
3907
  });
3886
- var Teleport = /* @__PURE__ */ _export_sfc$1(_sfc_main$u, [["__file", "teleport.vue"]]);
3908
+ var Teleport = /* @__PURE__ */ _export_sfc$1(_sfc_main$s, [["__file", "teleport.vue"]]);
3887
3909
  const ElTeleport = withInstall(Teleport);
3888
3910
 
3889
3911
  const mutable = (val) => val;
@@ -4161,7 +4183,7 @@ const imageViewerEmits = {
4161
4183
  const __default__$1$5 = defineComponent({
4162
4184
  name: "ElImageViewer"
4163
4185
  });
4164
- const _sfc_main$1$7 = /* @__PURE__ */ defineComponent({
4186
+ const _sfc_main$1$8 = /* @__PURE__ */ defineComponent({
4165
4187
  ...__default__$1$5,
4166
4188
  props: imageViewerProps,
4167
4189
  emits: imageViewerEmits,
@@ -4591,7 +4613,7 @@ const _sfc_main$1$7 = /* @__PURE__ */ defineComponent({
4591
4613
  };
4592
4614
  }
4593
4615
  });
4594
- var ImageViewer = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$7, [["__file", "image-viewer.vue"]]);
4616
+ var ImageViewer = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$8, [["__file", "image-viewer.vue"]]);
4595
4617
  const ElImageViewer = withInstall(ImageViewer);
4596
4618
  const imageProps = buildProps({
4597
4619
  hideOnClickModal: Boolean,
@@ -4660,7 +4682,7 @@ const __default__$h = defineComponent({
4660
4682
  name: "ElImage",
4661
4683
  inheritAttrs: false
4662
4684
  });
4663
- const _sfc_main$t = /* @__PURE__ */ defineComponent({
4685
+ const _sfc_main$r = /* @__PURE__ */ defineComponent({
4664
4686
  ...__default__$h,
4665
4687
  props: imageProps,
4666
4688
  emits: imageEmits,
@@ -4871,7 +4893,7 @@ const _sfc_main$t = /* @__PURE__ */ defineComponent({
4871
4893
  };
4872
4894
  }
4873
4895
  });
4874
- var Image$1 = /* @__PURE__ */ _export_sfc$1(_sfc_main$t, [["__file", "image.vue"]]);
4896
+ var Image$1 = /* @__PURE__ */ _export_sfc$1(_sfc_main$r, [["__file", "image.vue"]]);
4875
4897
  withInstall(Image$1);
4876
4898
 
4877
4899
  const progressProps = buildProps({
@@ -6375,7 +6397,7 @@ const __default__$1$4 = defineComponent({
6375
6397
  name: "ElUploadContent",
6376
6398
  inheritAttrs: false
6377
6399
  });
6378
- const _sfc_main$2$5 = /* @__PURE__ */ defineComponent({
6400
+ const _sfc_main$2$6 = /* @__PURE__ */ defineComponent({
6379
6401
  ...__default__$1$4,
6380
6402
  props: uploadContentProps,
6381
6403
  setup(__props, { expose }) {
@@ -6557,7 +6579,7 @@ const _sfc_main$2$5 = /* @__PURE__ */ defineComponent({
6557
6579
  };
6558
6580
  }
6559
6581
  });
6560
- var UploadContent = /* @__PURE__ */ _export_sfc$1(_sfc_main$2$5, [["__file", "upload-content.vue"]]);
6582
+ var UploadContent = /* @__PURE__ */ _export_sfc$1(_sfc_main$2$6, [["__file", "upload-content.vue"]]);
6561
6583
  const SCOPE$2 = "ElUpload";
6562
6584
  const revokeFileObjectURL = (file) => {
6563
6585
  var _a;
@@ -6688,7 +6710,7 @@ const useHandlers = (props, uploadRef) => {
6688
6710
  const __default__$f = defineComponent({
6689
6711
  name: "ElUpload"
6690
6712
  });
6691
- const _sfc_main$1$6 = /* @__PURE__ */ defineComponent({
6713
+ const _sfc_main$1$7 = /* @__PURE__ */ defineComponent({
6692
6714
  ...__default__$f,
6693
6715
  props: uploadProps,
6694
6716
  setup(__props, { expose }) {
@@ -6803,7 +6825,7 @@ const _sfc_main$1$6 = /* @__PURE__ */ defineComponent({
6803
6825
  };
6804
6826
  }
6805
6827
  });
6806
- var Upload = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$6, [["__file", "upload.vue"]]);
6828
+ var Upload = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$7, [["__file", "upload.vue"]]);
6807
6829
  withInstall(Upload);
6808
6830
 
6809
6831
  /*! @license DOMPurify 3.2.6 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.2.6/LICENSE */
@@ -12963,7 +12985,7 @@ function useConfigProvider() {
12963
12985
  }
12964
12986
 
12965
12987
  const _hoisted_1$a = ["innerHTML"];
12966
- const _sfc_main$s = /* @__PURE__ */ defineComponent({
12988
+ const _sfc_main$q = /* @__PURE__ */ defineComponent({
12967
12989
  __name: "index",
12968
12990
  props: {
12969
12991
  content: { default: "" },
@@ -13145,7 +13167,7 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
13145
13167
  };
13146
13168
  }
13147
13169
  });
13148
- const Typewriter = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__scopeId", "data-v-9311cb64"]]);
13170
+ const Typewriter = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["__scopeId", "data-v-9311cb64"]]);
13149
13171
 
13150
13172
  const avatarProps = buildProps({
13151
13173
  size: {
@@ -13179,7 +13201,7 @@ const avatarEmits = {
13179
13201
  const __default__$e = defineComponent({
13180
13202
  name: "ElAvatar"
13181
13203
  });
13182
- const _sfc_main$1$5 = /* @__PURE__ */ defineComponent({
13204
+ const _sfc_main$1$6 = /* @__PURE__ */ defineComponent({
13183
13205
  ...__default__$e,
13184
13206
  props: avatarProps,
13185
13207
  emits: avatarEmits,
@@ -13234,7 +13256,7 @@ const _sfc_main$1$5 = /* @__PURE__ */ defineComponent({
13234
13256
  };
13235
13257
  }
13236
13258
  });
13237
- var Avatar = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$5, [["__file", "avatar.vue"]]);
13259
+ var Avatar = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$6, [["__file", "avatar.vue"]]);
13238
13260
  const ElAvatar = withInstall(Avatar);
13239
13261
  const _hoisted_1$9 = {
13240
13262
  key: 0,
@@ -13265,7 +13287,7 @@ const _hoisted_8 = {
13265
13287
  key: 1,
13266
13288
  class: "el-bubble-footer"
13267
13289
  };
13268
- const _sfc_main$r = /* @__PURE__ */ defineComponent({
13290
+ const _sfc_main$p = /* @__PURE__ */ defineComponent({
13269
13291
  __name: "index",
13270
13292
  props: {
13271
13293
  isFog: { type: [Boolean, Object] },
@@ -13465,309 +13487,7 @@ const _sfc_main$r = /* @__PURE__ */ defineComponent({
13465
13487
  };
13466
13488
  }
13467
13489
  });
13468
- const Bubble = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__scopeId", "data-v-a52d8fe0"]]);
13469
-
13470
- const _sfc_main$q = {};
13471
- const _hoisted_1$8 = {
13472
- xmlns: "http://www.w3.org/2000/svg",
13473
- "xmlns:xlink": "http://www.w3.org/1999/xlink",
13474
- version: "1.1",
13475
- width: "704",
13476
- height: "704",
13477
- viewBox: "0 0 704 704"
13478
- };
13479
- function _sfc_render$9(_ctx, _cache) {
13480
- return openBlock(), createElementBlock("svg", _hoisted_1$8, _cache[0] || (_cache[0] = [
13481
- createStaticVNode('<defs><filter id="master_svg0_62_10054" filterUnits="objectBoundingBox" color-interpolation-filters="sRGB" x="-0.030120481927710843" y="-0.030120481927710843" width="1.0602409638554218" height="1.0602409638554218"><feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood><feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"></feBlend><feGaussianBlur stdDeviation="5" result="effect1_foregroundBlur"></feGaussianBlur></filter><linearGradient id="master_svg1_62_10082" x1="0.5" y1="-0.13192443549633026" x2="0.42319029569625854" y2="1.368432641029358"><stop offset="9.145302325487137%" stop-color="currentColor" stop-opacity="1"></stop><stop offset="13.636428117752075%" stop-color="currentColor" stop-opacity="0.07539999485015869"></stop><stop offset="16.968481242656708%" stop-color="currentColor" stop-opacity="0"></stop></linearGradient></defs><g transform="matrix(0,1,-1,0,704,-664)" filter="url(#master_svg0_62_10054)"><path d="M1016,684C1199.359,684,1348,535.359,1348,352C1348,168.641,1199.359,20,1016,20C832.641,20,684,168.641,684,352C684,535.359,832.641,684,1016,684ZM1016,32C1192.731,32,1336,175.269,1336,352C1336,528.731,1192.731,672,1016,672C839.269,672,696,528.731,696,352C696,175.269,839.269,32,1016,32Z" fill-rule="evenodd" fill="url(#master_svg1_62_10082)" fill-opacity="1"></path></g>', 2)
13482
- ]));
13483
- }
13484
- const loadingBg = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["render", _sfc_render$9]]);
13485
-
13486
- const useScrollDetector = (elementRef) => {
13487
- const hasVertical = ref(false);
13488
- const hasHorizontal = ref(false);
13489
- const check = () => {
13490
- const el = elementRef.value;
13491
- if (!el)
13492
- return;
13493
- hasVertical.value = el.scrollHeight > el.clientHeight;
13494
- hasHorizontal.value = el.scrollWidth > el.clientWidth;
13495
- };
13496
- onMounted(() => {
13497
- check();
13498
- const observer = new ResizeObserver(check);
13499
- observer.observe(elementRef.value);
13500
- onBeforeUnmount(() => observer.disconnect());
13501
- });
13502
- return {
13503
- hasVertical,
13504
- // 是否有纵向滚动条
13505
- hasHorizontal,
13506
- // 是否有横向滚动条
13507
- check
13508
- // 检查滚动条状态
13509
- };
13510
- };
13511
- const threshold = 20;
13512
- const _sfc_main$p = /* @__PURE__ */ defineComponent({
13513
- __name: "index",
13514
- props: {
13515
- list: { default: () => [] },
13516
- maxHeight: { default: "500px" },
13517
- triggerIndices: { default: "only-last" },
13518
- showBackButton: { type: Boolean, default: true },
13519
- backButtonThreshold: { default: 80 },
13520
- backButtonPosition: { default: () => {
13521
- return { bottom: "20px", left: "calc(50% - 19px)" };
13522
- } },
13523
- alwaysShowScrollbar: { type: Boolean, default: false },
13524
- btnLoading: { type: Boolean, default: true },
13525
- btnColor: { default: "#409EFF" },
13526
- btnIconSize: { default: 24 }
13527
- },
13528
- emits: ["complete"],
13529
- setup(__props, { expose: __expose, emit: __emit }) {
13530
- const props = __props;
13531
- const emits = __emit;
13532
- function initStyle() {
13533
- document.documentElement.style.setProperty(
13534
- "--el-bubble-list-max-height",
13535
- props.maxHeight
13536
- );
13537
- document.documentElement.style.setProperty(
13538
- "--el-bubble-list-btn-size",
13539
- `${props.btnIconSize}px`
13540
- );
13541
- }
13542
- onMounted(() => {
13543
- initStyle();
13544
- });
13545
- const scrollContainer = ref(null);
13546
- const { hasVertical } = useScrollDetector(scrollContainer);
13547
- const stopAutoScrollToBottom = ref(false);
13548
- const lastScrollTop = ref(0);
13549
- const accumulatedScrollUpDistance = ref(0);
13550
- const resizeObserver = ref(null);
13551
- const showBackToBottom = ref(false);
13552
- watch(
13553
- () => props.list.length,
13554
- () => {
13555
- if (props.list && props.list.length > 0) {
13556
- nextTick(() => {
13557
- autoScroll();
13558
- });
13559
- }
13560
- },
13561
- { immediate: true }
13562
- );
13563
- function scrollToTop() {
13564
- stopAutoScrollToBottom.value = true;
13565
- nextTick(() => {
13566
- scrollContainer.value.scrollTop = 0;
13567
- });
13568
- }
13569
- function scrollToBottom() {
13570
- try {
13571
- if (scrollContainer.value && scrollContainer.value.scrollHeight) {
13572
- nextTick(() => {
13573
- scrollContainer.value.scrollTop = scrollContainer.value.scrollHeight;
13574
- stopAutoScrollToBottom.value = false;
13575
- });
13576
- }
13577
- } catch (error) {
13578
- }
13579
- }
13580
- function scrollToBubble(index) {
13581
- const container = scrollContainer.value;
13582
- if (!container)
13583
- return;
13584
- const bubbles = container.querySelectorAll(".el-bubble");
13585
- if (index >= bubbles.length)
13586
- return;
13587
- stopAutoScrollToBottom.value = true;
13588
- const targetBubble = bubbles[index];
13589
- const containerRect = container.getBoundingClientRect();
13590
- const bubbleRect = targetBubble.getBoundingClientRect();
13591
- const scrollPosition = bubbleRect.top - containerRect.top + container.scrollTop;
13592
- container.scrollTo({
13593
- top: scrollPosition,
13594
- behavior: "smooth"
13595
- });
13596
- }
13597
- function autoScroll() {
13598
- if (scrollContainer.value) {
13599
- const listBubbles = scrollContainer.value.querySelectorAll(
13600
- ".el-bubble-content-wrapper"
13601
- );
13602
- if (resizeObserver.value) {
13603
- resizeObserver.value.disconnect();
13604
- }
13605
- const lastItem = listBubbles[listBubbles.length - 1];
13606
- if (lastItem) {
13607
- resizeObserver.value = new ResizeObserver(() => {
13608
- if (!stopAutoScrollToBottom.value) {
13609
- scrollToBottom();
13610
- }
13611
- });
13612
- resizeObserver.value.observe(lastItem);
13613
- }
13614
- }
13615
- }
13616
- const completeMap = ref({});
13617
- const typingList = computed(
13618
- () => props.list.map((item, _index_) => ({ ...item, _index_ })).filter((item) => item.typing)
13619
- );
13620
- function handleBubbleComplete(index, instance) {
13621
- var _a;
13622
- switch (props.triggerIndices) {
13623
- case "only-last":
13624
- if (index === ((_a = typingList.value[typingList.value.length - 1]) == null ? void 0 : _a._index_)) {
13625
- emits("complete", instance, index);
13626
- }
13627
- break;
13628
- case "all":
13629
- completeMap.value[index] = instance;
13630
- if (Object.keys(completeMap.value).length === typingList.value.length) {
13631
- emits("complete", instance, index);
13632
- }
13633
- break;
13634
- default:
13635
- props.triggerIndices.includes(index) && emits("complete", instance, index);
13636
- break;
13637
- }
13638
- }
13639
- function handleScroll() {
13640
- if (scrollContainer.value) {
13641
- const { scrollTop, scrollHeight, clientHeight } = scrollContainer.value;
13642
- const distanceToBottom = scrollHeight - (scrollTop + clientHeight);
13643
- showBackToBottom.value = props.showBackButton && distanceToBottom > props.backButtonThreshold;
13644
- const isCloseToBottom = scrollTop + clientHeight >= scrollHeight - 30;
13645
- const isScrollingUp = lastScrollTop.value > scrollTop;
13646
- const isScrollingDown = lastScrollTop.value < scrollTop;
13647
- const scrollDelta = lastScrollTop.value - scrollTop;
13648
- lastScrollTop.value = scrollTop;
13649
- if (isScrollingUp) {
13650
- accumulatedScrollUpDistance.value += scrollDelta;
13651
- if (accumulatedScrollUpDistance.value >= threshold) {
13652
- if (!stopAutoScrollToBottom.value) {
13653
- stopAutoScrollToBottom.value = true;
13654
- }
13655
- accumulatedScrollUpDistance.value = 0;
13656
- }
13657
- } else {
13658
- accumulatedScrollUpDistance.value = 0;
13659
- }
13660
- if (isScrollingDown && isCloseToBottom) {
13661
- if (stopAutoScrollToBottom.value) {
13662
- stopAutoScrollToBottom.value = false;
13663
- }
13664
- }
13665
- }
13666
- }
13667
- __expose({
13668
- scrollToTop,
13669
- scrollToBottom,
13670
- scrollToBubble
13671
- });
13672
- return (_ctx, _cache) => {
13673
- const _component_el_icon = ElIcon;
13674
- return openBlock(), createElementBlock("div", {
13675
- ref_key: "scrollContainer",
13676
- ref: scrollContainer,
13677
- class: normalizeClass(["el-bubble-list", { "always-scrollbar": props.alwaysShowScrollbar }]),
13678
- onScroll: handleScroll
13679
- }, [
13680
- (openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.list, (item, index) => {
13681
- return openBlock(), createBlock(Bubble, {
13682
- key: index,
13683
- content: item.content,
13684
- placement: item.placement,
13685
- loading: item.loading,
13686
- shape: item.shape,
13687
- variant: item.variant,
13688
- "is-markdown": item.isMarkdown,
13689
- "is-fog": item.isFog,
13690
- typing: item.typing,
13691
- "max-width": item.maxWidth,
13692
- avatar: item.avatar,
13693
- "avatar-size": item.avatarSize,
13694
- "avatar-gap": item.avatarGap,
13695
- "avatar-shape": item.avatarShape,
13696
- "avatar-src-set": item.avatarSrcSet,
13697
- "avatar-alt": item.avatarAlt,
13698
- "avatar-fit": item.avatarFit,
13699
- "no-style": item.noStyle,
13700
- onFinish: (instance) => handleBubbleComplete(index, instance)
13701
- }, createSlots({ _: 2 }, [
13702
- _ctx.$slots.avatar ? {
13703
- name: "avatar",
13704
- fn: withCtx(() => [
13705
- renderSlot(_ctx.$slots, "avatar", { item }, void 0, true)
13706
- ]),
13707
- key: "0"
13708
- } : void 0,
13709
- _ctx.$slots.header ? {
13710
- name: "header",
13711
- fn: withCtx(() => [
13712
- renderSlot(_ctx.$slots, "header", { item }, void 0, true)
13713
- ]),
13714
- key: "1"
13715
- } : void 0,
13716
- _ctx.$slots.content ? {
13717
- name: "content",
13718
- fn: withCtx(() => [
13719
- renderSlot(_ctx.$slots, "content", { item }, void 0, true)
13720
- ]),
13721
- key: "2"
13722
- } : void 0,
13723
- _ctx.$slots.footer ? {
13724
- name: "footer",
13725
- fn: withCtx(() => [
13726
- renderSlot(_ctx.$slots, "footer", { item }, void 0, true)
13727
- ]),
13728
- key: "3"
13729
- } : void 0,
13730
- _ctx.$slots.loading ? {
13731
- name: "loading",
13732
- fn: withCtx(() => [
13733
- renderSlot(_ctx.$slots, "loading", { item }, void 0, true)
13734
- ]),
13735
- key: "4"
13736
- } : void 0
13737
- ]), 1032, ["content", "placement", "loading", "shape", "variant", "is-markdown", "is-fog", "typing", "max-width", "avatar", "avatar-size", "avatar-gap", "avatar-shape", "avatar-src-set", "avatar-alt", "avatar-fit", "no-style", "onFinish"]);
13738
- }), 128)),
13739
- unref(showBackToBottom) && unref(hasVertical) ? (openBlock(), createElementBlock("div", {
13740
- key: 0,
13741
- class: normalizeClass(["el-bubble-list-default-back-button", {
13742
- "el-bubble-list-back-to-bottom-solt": _ctx.$slots.backToBottom
13743
- }]),
13744
- style: normalizeStyle({
13745
- bottom: _ctx.backButtonPosition.bottom,
13746
- left: _ctx.backButtonPosition.left
13747
- }),
13748
- onClick: scrollToBottom
13749
- }, [
13750
- renderSlot(_ctx.$slots, "backToBottom", {}, () => [
13751
- createVNode(_component_el_icon, {
13752
- class: "el-bubble-list-back-to-bottom-icon",
13753
- style: normalizeStyle({ color: props.btnColor })
13754
- }, {
13755
- default: withCtx(() => [
13756
- createVNode(unref(arrow_down_bold_default)),
13757
- props.btnLoading ? (openBlock(), createBlock(loadingBg, {
13758
- key: 0,
13759
- class: "back-to-bottom-loading-svg-bg"
13760
- })) : createCommentVNode("", true)
13761
- ]),
13762
- _: 1
13763
- }, 8, ["style"])
13764
- ], true)
13765
- ], 6)) : createCommentVNode("", true)
13766
- ], 34);
13767
- };
13768
- }
13769
- });
13770
- const BubbleList = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["__scopeId", "data-v-854e3219"]]);
13490
+ const Bubble = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["__scopeId", "data-v-a52d8fe0"]]);
13771
13491
 
13772
13492
  function castArray() {
13773
13493
  if (!arguments.length) {
@@ -15543,7 +15263,7 @@ const whenMouse = (handler) => {
15543
15263
  const __default__$2$2 = defineComponent({
15544
15264
  name: "ElTooltipTrigger"
15545
15265
  });
15546
- const _sfc_main$2$4 = /* @__PURE__ */ defineComponent({
15266
+ const _sfc_main$2$5 = /* @__PURE__ */ defineComponent({
15547
15267
  ...__default__$2$2,
15548
15268
  props: useTooltipTriggerProps,
15549
15269
  setup(__props, { expose }) {
@@ -15603,7 +15323,7 @@ const _sfc_main$2$4 = /* @__PURE__ */ defineComponent({
15603
15323
  };
15604
15324
  }
15605
15325
  });
15606
- var ElTooltipTrigger = /* @__PURE__ */ _export_sfc$1(_sfc_main$2$4, [["__file", "trigger.vue"]]);
15326
+ var ElTooltipTrigger = /* @__PURE__ */ _export_sfc$1(_sfc_main$2$5, [["__file", "trigger.vue"]]);
15607
15327
  const usePopperContainerId = () => {
15608
15328
  const namespace = useGetDerivedNamespace();
15609
15329
  const idInjection = useIdInjection();
@@ -15640,7 +15360,7 @@ const __default__$1$3 = defineComponent({
15640
15360
  name: "ElTooltipContent",
15641
15361
  inheritAttrs: false
15642
15362
  });
15643
- const _sfc_main$1$4 = /* @__PURE__ */ defineComponent({
15363
+ const _sfc_main$1$5 = /* @__PURE__ */ defineComponent({
15644
15364
  ...__default__$1$3,
15645
15365
  props: useTooltipContentProps,
15646
15366
  setup(__props, { expose }) {
@@ -15816,7 +15536,7 @@ const _sfc_main$1$4 = /* @__PURE__ */ defineComponent({
15816
15536
  };
15817
15537
  }
15818
15538
  });
15819
- var ElTooltipContent = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$4, [["__file", "content.vue"]]);
15539
+ var ElTooltipContent = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$5, [["__file", "content.vue"]]);
15820
15540
  const __default__$d = defineComponent({
15821
15541
  name: "ElTooltip"
15822
15542
  });
@@ -16015,7 +15735,7 @@ const thumbProps = buildProps({
16015
15735
  always: Boolean
16016
15736
  });
16017
15737
  const COMPONENT_NAME$1$1 = "Thumb";
16018
- const _sfc_main$2$3 = /* @__PURE__ */ defineComponent({
15738
+ const _sfc_main$2$4 = /* @__PURE__ */ defineComponent({
16019
15739
  __name: "thumb",
16020
15740
  props: thumbProps,
16021
15741
  setup(__props) {
@@ -16144,7 +15864,7 @@ const _sfc_main$2$3 = /* @__PURE__ */ defineComponent({
16144
15864
  };
16145
15865
  }
16146
15866
  });
16147
- var Thumb = /* @__PURE__ */ _export_sfc$1(_sfc_main$2$3, [["__file", "thumb.vue"]]);
15867
+ var Thumb = /* @__PURE__ */ _export_sfc$1(_sfc_main$2$4, [["__file", "thumb.vue"]]);
16148
15868
  const barProps = buildProps({
16149
15869
  always: {
16150
15870
  type: Boolean,
@@ -16155,7 +15875,7 @@ const barProps = buildProps({
16155
15875
  required: true
16156
15876
  }
16157
15877
  });
16158
- const _sfc_main$1$3 = /* @__PURE__ */ defineComponent({
15878
+ const _sfc_main$1$4 = /* @__PURE__ */ defineComponent({
16159
15879
  __name: "bar",
16160
15880
  props: barProps,
16161
15881
  setup(__props, { expose }) {
@@ -16213,7 +15933,7 @@ const _sfc_main$1$3 = /* @__PURE__ */ defineComponent({
16213
15933
  };
16214
15934
  }
16215
15935
  });
16216
- var Bar = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$3, [["__file", "bar.vue"]]);
15936
+ var Bar = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$4, [["__file", "bar.vue"]]);
16217
15937
  const scrollbarProps = buildProps({
16218
15938
  distance: {
16219
15939
  type: Number,
@@ -16482,13 +16202,13 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
16482
16202
  var Scrollbar = /* @__PURE__ */ _export_sfc$1(_sfc_main$n, [["__file", "scrollbar.vue"]]);
16483
16203
  const ElScrollbar = withInstall(Scrollbar);
16484
16204
 
16485
- const _sfc_main$1$2 = /* @__PURE__ */ defineComponent({
16205
+ const _sfc_main$1$3 = /* @__PURE__ */ defineComponent({
16486
16206
  inheritAttrs: false
16487
16207
  });
16488
16208
  function _sfc_render$1$2(_ctx, _cache, $props, $setup, $data, $options) {
16489
16209
  return renderSlot(_ctx.$slots, "default");
16490
16210
  }
16491
- var Collection = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$2, [["render", _sfc_render$1$2], ["__file", "collection.vue"]]);
16211
+ var Collection = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$3, [["render", _sfc_render$1$2], ["__file", "collection.vue"]]);
16492
16212
  const _sfc_main$m = /* @__PURE__ */ defineComponent({
16493
16213
  name: "ElCollectionItem",
16494
16214
  inheritAttrs: false
@@ -17213,7 +16933,7 @@ const _sfc_main$5$1 = defineComponent({
17213
16933
  };
17214
16934
  }
17215
16935
  });
17216
- function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {
16936
+ function _sfc_render$3$1(_ctx, _cache, $props, $setup, $data, $options) {
17217
16937
  const _component_el_roving_focus_collection_item = resolveComponent("el-roving-focus-collection-item");
17218
16938
  return openBlock(), createBlock(_component_el_roving_focus_collection_item, {
17219
16939
  id: _ctx.id,
@@ -17226,7 +16946,7 @@ function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {
17226
16946
  _: 3
17227
16947
  }, 8, ["id", "focusable", "active"]);
17228
16948
  }
17229
- var ElRovingFocusItem = /* @__PURE__ */ _export_sfc$1(_sfc_main$5$1, [["render", _sfc_render$3], ["__file", "roving-focus-item.vue"]]);
16949
+ var ElRovingFocusItem = /* @__PURE__ */ _export_sfc$1(_sfc_main$5$1, [["render", _sfc_render$3$1], ["__file", "roving-focus-item.vue"]]);
17230
16950
  const _sfc_main$4$2 = defineComponent({
17231
16951
  name: "DropdownItemImpl",
17232
16952
  components: {
@@ -17277,7 +16997,7 @@ const _sfc_main$4$2 = defineComponent({
17277
16997
  };
17278
16998
  }
17279
16999
  });
17280
- function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
17000
+ function _sfc_render$2$1(_ctx, _cache, $props, $setup, $data, $options) {
17281
17001
  const _component_el_icon = resolveComponent("el-icon");
17282
17002
  return openBlock(), createElementBlock(Fragment, null, [
17283
17003
  _ctx.divided ? (openBlock(), createElementBlock("li", {
@@ -17307,7 +17027,7 @@ function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
17307
17027
  ], 16, ["aria-disabled", "tabindex", "role", "onClick", "onFocus", "onKeydown", "onMousedown", "onPointermove", "onPointerleave"])
17308
17028
  ], 64);
17309
17029
  }
17310
- var ElDropdownItemImpl = /* @__PURE__ */ _export_sfc$1(_sfc_main$4$2, [["render", _sfc_render$2], ["__file", "dropdown-item-impl.vue"]]);
17030
+ var ElDropdownItemImpl = /* @__PURE__ */ _export_sfc$1(_sfc_main$4$2, [["render", _sfc_render$2$1], ["__file", "dropdown-item-impl.vue"]]);
17311
17031
  const useDropdown = () => {
17312
17032
  const elDropdown = inject(DROPDOWN_INSTANCE_INJECTION_KEY, {});
17313
17033
  const _elDropdownSize = computed(() => elDropdown == null ? void 0 : elDropdown.dropdownSize);
@@ -17417,7 +17137,7 @@ function _sfc_render$1$1(_ctx, _cache, $props, $setup, $data, $options) {
17417
17137
  }, 8, ["disabled", "text-value"]);
17418
17138
  }
17419
17139
  var DropdownItem = /* @__PURE__ */ _export_sfc$1(_sfc_main$3$2, [["render", _sfc_render$1$1], ["__file", "dropdown-item.vue"]]);
17420
- const _sfc_main$2$2 = defineComponent({
17140
+ const _sfc_main$2$3 = defineComponent({
17421
17141
  name: "ElDropdownMenu",
17422
17142
  props: dropdownMenuProps,
17423
17143
  setup(props) {
@@ -17494,7 +17214,7 @@ function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) {
17494
17214
  renderSlot(_ctx.$slots, "default")
17495
17215
  ], 46, ["role", "aria-labelledby", "onBlur", "onFocus", "onKeydown", "onMousedown"]);
17496
17216
  }
17497
- var DropdownMenu = /* @__PURE__ */ _export_sfc$1(_sfc_main$2$2, [["render", _sfc_render$7], ["__file", "dropdown-menu.vue"]]);
17217
+ var DropdownMenu = /* @__PURE__ */ _export_sfc$1(_sfc_main$2$3, [["render", _sfc_render$7], ["__file", "dropdown-menu.vue"]]);
17498
17218
  withInstall(Dropdown, {
17499
17219
  DropdownItem,
17500
17220
  DropdownMenu
@@ -29425,7 +29145,7 @@ const useCollapseItemDOM = (props, { focusing, isActive, id }) => {
29425
29145
  const __default__$1$1 = defineComponent({
29426
29146
  name: "ElCollapseItem"
29427
29147
  });
29428
- const _sfc_main$2$1 = /* @__PURE__ */ defineComponent({
29148
+ const _sfc_main$2$2 = /* @__PURE__ */ defineComponent({
29429
29149
  ...__default__$1$1,
29430
29150
  props: collapseItemProps,
29431
29151
  setup(__props, { expose }) {
@@ -29510,7 +29230,7 @@ const _sfc_main$2$1 = /* @__PURE__ */ defineComponent({
29510
29230
  };
29511
29231
  }
29512
29232
  });
29513
- var CollapseItem = /* @__PURE__ */ _export_sfc$1(_sfc_main$2$1, [["__file", "collapse-item.vue"]]);
29233
+ var CollapseItem = /* @__PURE__ */ _export_sfc$1(_sfc_main$2$2, [["__file", "collapse-item.vue"]]);
29514
29234
  withInstall(Collapse, {
29515
29235
  CollapseItem
29516
29236
  });
@@ -29560,7 +29280,7 @@ const timelineItemProps = buildProps({
29560
29280
  const __default__$8 = defineComponent({
29561
29281
  name: "ElTimelineItem"
29562
29282
  });
29563
- const _sfc_main$1$1 = /* @__PURE__ */ defineComponent({
29283
+ const _sfc_main$1$2 = /* @__PURE__ */ defineComponent({
29564
29284
  ...__default__$8,
29565
29285
  props: timelineItemProps,
29566
29286
  setup(__props) {
@@ -29623,7 +29343,7 @@ const _sfc_main$1$1 = /* @__PURE__ */ defineComponent({
29623
29343
  };
29624
29344
  }
29625
29345
  });
29626
- var TimelineItem = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$1, [["__file", "timeline-item.vue"]]);
29346
+ var TimelineItem = /* @__PURE__ */ _export_sfc$1(_sfc_main$1$2, [["__file", "timeline-item.vue"]]);
29627
29347
  withInstall(Timeline, {
29628
29348
  TimelineItem
29629
29349
  });
@@ -46937,12 +46657,12 @@ var lodashExports = requireLodash();
46937
46657
  const _ = /* @__PURE__ */ getDefaultExportFromCjs(lodashExports);
46938
46658
  const _sfc_main$a = {};
46939
46659
  const _hoisted_1$6 = { class: "dot-spinner" };
46940
- function _sfc_render$1(_ctx, _cache) {
46660
+ function _sfc_render$3(_ctx, _cache) {
46941
46661
  return openBlock(), createElementBlock("div", _hoisted_1$6, _cache[0] || (_cache[0] = [
46942
46662
  createStaticVNode('<div class="dot-spinner__dot" data-v-623b4e7e></div><div class="dot-spinner__dot" data-v-623b4e7e></div><div class="dot-spinner__dot" data-v-623b4e7e></div><div class="dot-spinner__dot" data-v-623b4e7e></div><div class="dot-spinner__dot" data-v-623b4e7e></div><div class="dot-spinner__dot" data-v-623b4e7e></div><div class="dot-spinner__dot" data-v-623b4e7e></div><div class="dot-spinner__dot" data-v-623b4e7e></div>', 8)
46943
46663
  ]));
46944
46664
  }
46945
- const CustomLoading = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["render", _sfc_render$1], ["__scopeId", "data-v-623b4e7e"]]);
46665
+ const CustomLoading = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["render", _sfc_render$3], ["__scopeId", "data-v-623b4e7e"]]);
46946
46666
  const _hoisted_1$5 = { class: "elx-xmarkdown-container elx-run-code-content" };
46947
46667
  const _hoisted_2$2 = {
46948
46668
  style: { "position": "relative", "width": "100%", "height": "100%" },
@@ -47785,7 +47505,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
47785
47505
  }
47786
47506
  });
47787
47507
  const CodeLine = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-7ca0e1bd"]]);
47788
- const _sfc_main$2 = defineComponent({
47508
+ const _sfc_main$2$1 = defineComponent({
47789
47509
  props: {
47790
47510
  raw: {
47791
47511
  type: Object,
@@ -47904,12 +47624,12 @@ function downloadSvgAsPng(svg2) {
47904
47624
  } catch (error) {
47905
47625
  }
47906
47626
  }
47907
- const _hoisted_1$1 = { class: "toolbar-right" };
47627
+ const _hoisted_1$1$1 = { class: "toolbar-right" };
47908
47628
  const _hoisted_2$1 = {
47909
47629
  key: 1,
47910
47630
  class: "toolbar-divider"
47911
47631
  };
47912
- const _sfc_main$1 = /* @__PURE__ */ defineComponent({
47632
+ const _sfc_main$1$1 = /* @__PURE__ */ defineComponent({
47913
47633
  __name: "MermaidToolbar",
47914
47634
  props: {
47915
47635
  toolbarConfig: { default: () => ({}) },
@@ -48077,7 +47797,7 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
48077
47797
  _: 1
48078
47798
  }, 8, ["model-value"])
48079
47799
  ], 4),
48080
- createElementVNode("div", _hoisted_1$1, [
47800
+ createElementVNode("div", _hoisted_1$1$1, [
48081
47801
  props.isSourceCodeMode ? (openBlock(), createElementBlock("div", {
48082
47802
  key: 0,
48083
47803
  class: normalizeClass(["toolbar-action-btn", { "copy-success": isCopySuccess.value }]),
@@ -48163,8 +47883,8 @@ const _sfc_main$1 = /* @__PURE__ */ defineComponent({
48163
47883
  };
48164
47884
  }
48165
47885
  });
48166
- const MermaidToolbar = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["__scopeId", "data-v-c91486b5"]]);
48167
- const _hoisted_1 = { class: "toolbar-container" };
47886
+ const MermaidToolbar = /* @__PURE__ */ _export_sfc(_sfc_main$1$1, [["__scopeId", "data-v-c91486b5"]]);
47887
+ const _hoisted_1$8 = { class: "toolbar-container" };
48168
47888
  const _hoisted_2 = {
48169
47889
  key: "source",
48170
47890
  class: "mermaid-source-code"
@@ -48302,7 +48022,7 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
48302
48022
  default: withCtx(() => {
48303
48023
  var _a3, _b;
48304
48024
  return [
48305
- createElementVNode("div", _hoisted_1, [
48025
+ createElementVNode("div", _hoisted_1$8, [
48306
48026
  ((_a3 = unref(codeXSlot)) == null ? void 0 : _a3.codeMermaidHeader) ? (openBlock(), createBlock(resolveDynamicComponent(unref(codeXSlot).codeMermaidHeader), normalizeProps(mergeProps({ key: 0 }, exposedMethods.value)), null, 16)) : (openBlock(), createElementBlock(Fragment, { key: 1 }, [
48307
48027
  ((_b = unref(codeXSlot)) == null ? void 0 : _b.codeMermaidHeaderControl) ? (openBlock(), createBlock(resolveDynamicComponent(unref(codeXSlot).codeMermaidHeaderControl), normalizeProps(mergeProps({ key: 0 }, exposedMethods.value)), null, 16)) : (openBlock(), createBlock(MermaidToolbar, {
48308
48028
  key: 1,
@@ -48343,7 +48063,7 @@ const _sfc_main$k = /* @__PURE__ */ defineComponent({
48343
48063
  });
48344
48064
  function useComponents() {
48345
48065
  const components = {
48346
- code: (raw2) => h$2(_sfc_main$2, { raw: raw2 })
48066
+ code: (raw2) => h$2(_sfc_main$2$1, { raw: raw2 })
48347
48067
  };
48348
48068
  return components;
48349
48069
  }
@@ -79403,6 +79123,272 @@ function requirePrism() {
79403
79123
  }
79404
79124
  requirePrism();
79405
79125
 
79126
+ const _sfc_main$2 = {};
79127
+
79128
+ const _hoisted_1$1 = {
79129
+ xmlns: "http://www.w3.org/2000/svg",
79130
+ "xmlns:xlink": "http://www.w3.org/1999/xlink",
79131
+ version: "1.1",
79132
+ width: "704",
79133
+ height: "704",
79134
+ viewBox: "0 0 704 704"
79135
+ };
79136
+
79137
+ function _sfc_render$2(_ctx, _cache) {
79138
+ return (openBlock(), createElementBlock("svg", _hoisted_1$1, _cache[0] || (_cache[0] = [
79139
+ createStaticVNode("<defs><filter id=\"master_svg0_62_10054\" filterUnits=\"objectBoundingBox\" color-interpolation-filters=\"sRGB\" x=\"-0.030120481927710843\" y=\"-0.030120481927710843\" width=\"1.0602409638554218\" height=\"1.0602409638554218\"><feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\"></feFlood><feBlend mode=\"normal\" in=\"SourceGraphic\" in2=\"BackgroundImageFix\" result=\"shape\"></feBlend><feGaussianBlur stdDeviation=\"5\" result=\"effect1_foregroundBlur\"></feGaussianBlur></filter><linearGradient id=\"master_svg1_62_10082\" x1=\"0.5\" y1=\"-0.13192443549633026\" x2=\"0.42319029569625854\" y2=\"1.368432641029358\"><stop offset=\"9.145302325487137%\" stop-color=\"currentColor\" stop-opacity=\"1\"></stop><stop offset=\"13.636428117752075%\" stop-color=\"currentColor\" stop-opacity=\"0.07539999485015869\"></stop><stop offset=\"16.968481242656708%\" stop-color=\"currentColor\" stop-opacity=\"0\"></stop></linearGradient></defs><g transform=\"matrix(0,1,-1,0,704,-664)\" filter=\"url(#master_svg0_62_10054)\"><path d=\"M1016,684C1199.359,684,1348,535.359,1348,352C1348,168.641,1199.359,20,1016,20C832.641,20,684,168.641,684,352C684,535.359,832.641,684,1016,684ZM1016,32C1192.731,32,1336,175.269,1336,352C1336,528.731,1192.731,672,1016,672C839.269,672,696,528.731,696,352C696,175.269,839.269,32,1016,32Z\" fill-rule=\"evenodd\" fill=\"url(#master_svg1_62_10082)\" fill-opacity=\"1\"></path></g>", 2)
79140
+ ])))
79141
+ }
79142
+ var loadingBg = /*#__PURE__*/_export_sfc$2(_sfc_main$2, [['render',_sfc_render$2],['__file',"/home/runner/work/vunk-plus/vunk-plus/packages/components/bubble-list/src/core/loading.vue"]]);
79143
+
79144
+ var _sfc_main$1 = /* @__PURE__ */ defineComponent({
79145
+ __name: "index",
79146
+ props: {
79147
+ list: {
79148
+ type: Array,
79149
+ default: () => []
79150
+ },
79151
+ autoScroll: {
79152
+ type: Boolean,
79153
+ default: true
79154
+ },
79155
+ maxHeight: {
79156
+ type: String,
79157
+ default: ""
79158
+ },
79159
+ alwaysShowScrollbar: {
79160
+ type: Boolean,
79161
+ default: false
79162
+ },
79163
+ backButtonThreshold: {
79164
+ type: Number,
79165
+ default: 80
79166
+ },
79167
+ showBackButton: {
79168
+ type: Boolean,
79169
+ default: true
79170
+ },
79171
+ backButtonPosition: {
79172
+ type: Object,
79173
+ default: () => {
79174
+ return { bottom: "20px", left: "calc(50% - 19px)" };
79175
+ }
79176
+ },
79177
+ btnLoading: {
79178
+ type: Boolean,
79179
+ default: true
79180
+ },
79181
+ btnColor: {
79182
+ type: String,
79183
+ default: "#409EFF"
79184
+ },
79185
+ btnIconSize: {
79186
+ type: Number,
79187
+ default: 24
79188
+ },
79189
+ scrollbarAppendTo: {
79190
+ type: null,
79191
+ default: void 0
79192
+ }
79193
+ },
79194
+ emits: {
79195
+ complete: null
79196
+ },
79197
+ setup(__props, { expose: __expose }) {
79198
+ const props = __props;
79199
+ const scrollbarRef = ref();
79200
+ function initStyle() {
79201
+ document.documentElement.style.setProperty(
79202
+ "--el-bubble-list-max-height",
79203
+ props.maxHeight || "100%"
79204
+ );
79205
+ document.documentElement.style.setProperty(
79206
+ "--el-bubble-list-btn-size",
79207
+ `${props.btnIconSize}px`
79208
+ );
79209
+ }
79210
+ onMounted(() => {
79211
+ initStyle();
79212
+ });
79213
+ watch(
79214
+ () => [props.maxHeight, props.btnIconSize],
79215
+ () => {
79216
+ initStyle();
79217
+ }
79218
+ );
79219
+ const distanceToBottom = ref();
79220
+ const btnShow = computed(() => {
79221
+ return props.showBackButton && distanceToBottom.value !== void 0 && distanceToBottom.value > props.backButtonThreshold;
79222
+ });
79223
+ onMounted(() => {
79224
+ setTimeout(getDistanceToBottom);
79225
+ });
79226
+ function getDistanceToBottom() {
79227
+ const el = scrollbarRef.value?.$el;
79228
+ const wrap = scrollbarRef.value?.wrapRef;
79229
+ if (!el || !wrap) {
79230
+ return;
79231
+ }
79232
+ distanceToBottom.value = wrap.scrollHeight - wrap.scrollTop - wrap.clientHeight;
79233
+ }
79234
+ function scrollToBottom() {
79235
+ scrollbarRef.value?.scrollToBottom();
79236
+ }
79237
+ function scrollToBubble(index) {
79238
+ const container = scrollbarRef.value?.wrapRef;
79239
+ if (!container)
79240
+ return;
79241
+ const bubbles = container.querySelectorAll(".el-bubble");
79242
+ if (index >= bubbles.length)
79243
+ return;
79244
+ const targetBubble = bubbles[index];
79245
+ const containerRect = container.getBoundingClientRect();
79246
+ const bubbleRect = targetBubble.getBoundingClientRect();
79247
+ const scrollPosition = bubbleRect.top - containerRect.top + container.scrollTop;
79248
+ container.scrollTo({
79249
+ top: scrollPosition,
79250
+ behavior: "smooth"
79251
+ });
79252
+ }
79253
+ __expose({
79254
+ scrollToTop: scrollbarRef.value?.scrollToTop,
79255
+ scrollToBottom,
79256
+ scrollToBubble
79257
+ });
79258
+ const __returned__ = { props, scrollbarRef, initStyle, distanceToBottom, btnShow, getDistanceToBottom, scrollToBottom, scrollToBubble, get ArrowDownBold() {
79259
+ return arrow_down_bold_default$1;
79260
+ }, get VkScrollbar() {
79261
+ return VkScrollbar;
79262
+ }, get Bubble() {
79263
+ return Bubble;
79264
+ }, loadingBg };
79265
+ Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true });
79266
+ return __returned__;
79267
+ }
79268
+ });
79269
+
79270
+ const _hoisted_1 = { class: "vk-bubble-list-wrapper" };
79271
+ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
79272
+ const _component_el_icon = resolveComponent("el-icon");
79273
+ return openBlock(), createElementBlock("div", _hoisted_1, [
79274
+ createVNode($setup["VkScrollbar"], {
79275
+ ref: "scrollbarRef",
79276
+ class: "vk-bubble-list",
79277
+ "append-to": $props.scrollbarAppendTo,
79278
+ always: $props.alwaysShowScrollbar,
79279
+ onScroll: $setup.getDistanceToBottom
79280
+ }, {
79281
+ default: withCtx(() => [
79282
+ (openBlock(true), createElementBlock(
79283
+ Fragment,
79284
+ null,
79285
+ renderList($props.list, (item, index) => {
79286
+ return openBlock(), createBlock($setup["Bubble"], {
79287
+ key: item.key || index,
79288
+ content: item.content,
79289
+ placement: item.placement,
79290
+ loading: item.loading,
79291
+ shape: item.shape,
79292
+ variant: item.variant,
79293
+ "is-markdown": item.isMarkdown,
79294
+ "is-fog": item.isFog,
79295
+ typing: item.typing,
79296
+ "max-width": item.maxWidth,
79297
+ avatar: item.avatar,
79298
+ "avatar-size": item.avatarSize,
79299
+ "avatar-gap": item.avatarGap,
79300
+ "avatar-shape": item.avatarShape,
79301
+ "avatar-src-set": item.avatarSrcSet,
79302
+ "avatar-alt": item.avatarAlt,
79303
+ "avatar-fit": item.avatarFit,
79304
+ "no-style": item.noStyle
79305
+ }, createSlots({
79306
+ _: 2
79307
+ /* DYNAMIC */
79308
+ }, [
79309
+ _ctx.$slots.avatar ? {
79310
+ name: "avatar",
79311
+ fn: withCtx(() => [
79312
+ renderSlot(_ctx.$slots, "avatar", { item })
79313
+ ]),
79314
+ key: "0"
79315
+ } : void 0,
79316
+ _ctx.$slots.header ? {
79317
+ name: "header",
79318
+ fn: withCtx(() => [
79319
+ renderSlot(_ctx.$slots, "header", { item })
79320
+ ]),
79321
+ key: "1"
79322
+ } : void 0,
79323
+ _ctx.$slots.content ? {
79324
+ name: "content",
79325
+ fn: withCtx(() => [
79326
+ renderSlot(_ctx.$slots, "content", { item })
79327
+ ]),
79328
+ key: "2"
79329
+ } : void 0,
79330
+ _ctx.$slots.footer ? {
79331
+ name: "footer",
79332
+ fn: withCtx(() => [
79333
+ renderSlot(_ctx.$slots, "footer", { item })
79334
+ ]),
79335
+ key: "3"
79336
+ } : void 0,
79337
+ _ctx.$slots.loading ? {
79338
+ name: "loading",
79339
+ fn: withCtx(() => [
79340
+ renderSlot(_ctx.$slots, "loading", { item })
79341
+ ]),
79342
+ key: "4"
79343
+ } : void 0
79344
+ ]), 1032, ["content", "placement", "loading", "shape", "variant", "is-markdown", "is-fog", "typing", "max-width", "avatar", "avatar-size", "avatar-gap", "avatar-shape", "avatar-src-set", "avatar-alt", "avatar-fit", "no-style"]);
79345
+ }),
79346
+ 128
79347
+ /* KEYED_FRAGMENT */
79348
+ ))
79349
+ ]),
79350
+ _: 3
79351
+ /* FORWARDED */
79352
+ }, 8, ["append-to", "always"]),
79353
+ withDirectives(createElementVNode(
79354
+ "div",
79355
+ {
79356
+ class: normalizeClass(["vk-bubble-list-default-back-button", {
79357
+ "vk-bubble-list-back-to-bottom-solt": _ctx.$slots.backToBottom
79358
+ }]),
79359
+ style: normalizeStyle({
79360
+ bottom: $props.backButtonPosition.bottom,
79361
+ left: $props.backButtonPosition.left
79362
+ }),
79363
+ onClick: $setup.scrollToBottom
79364
+ },
79365
+ [
79366
+ renderSlot(_ctx.$slots, "backToBottom", {}, () => [
79367
+ createVNode(_component_el_icon, {
79368
+ class: "vk-bubble-list-back-to-bottom-icon",
79369
+ style: normalizeStyle({ color: $setup.props.btnColor })
79370
+ }, {
79371
+ default: withCtx(() => [
79372
+ createVNode($setup["ArrowDownBold"]),
79373
+ $setup.props.btnLoading ? (openBlock(), createBlock($setup["loadingBg"], {
79374
+ key: 0,
79375
+ class: "back-to-bottom-loading-svg-bg"
79376
+ })) : createCommentVNode("v-if", true)
79377
+ ]),
79378
+ _: 1
79379
+ /* STABLE */
79380
+ }, 8, ["style"])
79381
+ ])
79382
+ ],
79383
+ 6
79384
+ /* CLASS, STYLE */
79385
+ ), [
79386
+ [vShow, $setup.btnShow]
79387
+ ])
79388
+ ]);
79389
+ }
79390
+ var BubbleList = /* @__PURE__ */ _export_sfc$2(_sfc_main$1, [["render", _sfc_render$1], ["__file", "/home/runner/work/vunk-plus/vunk-plus/packages/components/bubble-list/src/core/index.vue"]]);
79391
+
79406
79392
  const props = {
79407
79393
  items: {
79408
79394
  type: Array,
@@ -79411,7 +79397,8 @@ const props = {
79411
79397
  elRef: {
79412
79398
  type: Function,
79413
79399
  default: noop$1
79414
- }
79400
+ },
79401
+ scrollbarAppendTo: null
79415
79402
  };
79416
79403
 
79417
79404
  var _sfc_main = /* @__PURE__ */ defineComponent({
@@ -79436,9 +79423,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
79436
79423
  return VkSpreadTo;
79437
79424
  }, get ElAutoResizer() {
79438
79425
  return ElAutoResizer;
79439
- }, get BubbleList() {
79440
- return BubbleList;
79441
- } };
79426
+ }, BubbleList };
79442
79427
  Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true });
79443
79428
  return __returned__;
79444
79429
  }
@@ -79457,6 +79442,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
79457
79442
  ref: _ctx.elRef,
79458
79443
  "btn-icon-size": 18,
79459
79444
  "max-height": `${height}px`,
79445
+ "scrollbar-append-to": _ctx.scrollbarAppendTo,
79460
79446
  style: {
79461
79447
  "--el-bubble-list-max-height": `${height}px`
79462
79448
  },
@@ -79505,7 +79491,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
79505
79491
  ]),
79506
79492
  key: "3"
79507
79493
  } : void 0
79508
- ]), 1040, ["max-height", "style", "list"])
79494
+ ]), 1040, ["max-height", "scrollbar-append-to", "style", "list"])
79509
79495
  ]),
79510
79496
  _: 3
79511
79497
  /* FORWARDED */