bkui-vue 0.0.1-beta.391 → 0.0.1-beta.393

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 (149) hide show
  1. package/dist/index.cjs.js +35 -35
  2. package/dist/index.esm.js +856 -857
  3. package/dist/index.umd.js +9 -9
  4. package/lib/affix/index.js +128 -60
  5. package/lib/alert/index.js +124 -56
  6. package/lib/animate-number/index.js +106 -42
  7. package/lib/backtop/index.js +133 -61
  8. package/lib/badge/index.js +114 -50
  9. package/lib/breadcrumb/index.js +133 -67
  10. package/lib/button/index.js +147 -68
  11. package/lib/card/index.js +154 -69
  12. package/lib/cascader/index.js +242 -168
  13. package/lib/checkbox/index.js +139 -77
  14. package/lib/code-diff/index.js +121 -79
  15. package/lib/collapse/index.js +150 -84
  16. package/lib/color-picker/index.js +245 -193
  17. package/lib/components.js +671 -434
  18. package/lib/container/index.js +125 -64
  19. package/lib/date-picker/index.js +563 -462
  20. package/lib/dialog/index.js +198 -108
  21. package/lib/directives/index.js +138 -92
  22. package/lib/dist.index.js +133 -48
  23. package/lib/divider/index.js +118 -50
  24. package/lib/dropdown/index.js +155 -73
  25. package/lib/exception/index.js +145 -97
  26. package/lib/fixed-navbar/index.js +107 -43
  27. package/lib/form/index.js +193 -107
  28. package/lib/icon/angle-double-down-line.js +90 -30
  29. package/lib/icon/angle-double-left-line.js +90 -30
  30. package/lib/icon/angle-double-left.js +90 -30
  31. package/lib/icon/angle-double-right-line.js +90 -30
  32. package/lib/icon/angle-double-right.js +90 -30
  33. package/lib/icon/angle-double-up-line.js +90 -30
  34. package/lib/icon/angle-down-fill.js +90 -30
  35. package/lib/icon/angle-down-line.js +90 -30
  36. package/lib/icon/angle-down.js +90 -30
  37. package/lib/icon/angle-left.js +90 -30
  38. package/lib/icon/angle-right.js +90 -30
  39. package/lib/icon/angle-up-fill.js +90 -30
  40. package/lib/icon/angle-up.js +90 -30
  41. package/lib/icon/archive-fill.js +90 -30
  42. package/lib/icon/arrows-left.js +90 -30
  43. package/lib/icon/arrows-right.js +90 -30
  44. package/lib/icon/audio-fill.js +90 -30
  45. package/lib/icon/bk.js +90 -30
  46. package/lib/icon/circle.js +90 -30
  47. package/lib/icon/close-line.js +90 -30
  48. package/lib/icon/close.js +90 -30
  49. package/lib/icon/code.js +90 -30
  50. package/lib/icon/cog-shape.js +90 -30
  51. package/lib/icon/collapse-left.js +90 -30
  52. package/lib/icon/copy.js +90 -30
  53. package/lib/icon/data-shape.js +90 -30
  54. package/lib/icon/del.js +90 -30
  55. package/lib/icon/doc-fill.js +90 -30
  56. package/lib/icon/done.js +90 -30
  57. package/lib/icon/down-shape.js +90 -30
  58. package/lib/icon/down-small.js +90 -30
  59. package/lib/icon/edit-line.js +90 -30
  60. package/lib/icon/ellipsis.js +90 -30
  61. package/lib/icon/enlarge-line.js +90 -30
  62. package/lib/icon/error.js +90 -30
  63. package/lib/icon/excel-fill.js +90 -30
  64. package/lib/icon/exclamation-circle-shape.js +90 -30
  65. package/lib/icon/eye.js +90 -30
  66. package/lib/icon/filliscreen-line.js +90 -30
  67. package/lib/icon/folder-open.js +90 -30
  68. package/lib/icon/folder-shape-open.js +90 -30
  69. package/lib/icon/folder-shape.js +90 -30
  70. package/lib/icon/folder.js +90 -30
  71. package/lib/icon/funnel.js +90 -30
  72. package/lib/icon/help-document-fill.js +90 -30
  73. package/lib/icon/help-fill.js +90 -30
  74. package/lib/icon/help.js +90 -30
  75. package/lib/icon/image-fill.js +90 -30
  76. package/lib/icon/img-placehoulder.js +88 -52
  77. package/lib/icon/index.js +255 -267
  78. package/lib/icon/info-line.js +88 -52
  79. package/lib/icon/info.js +88 -52
  80. package/lib/icon/left-shape.js +88 -52
  81. package/lib/icon/left-turn-line.js +88 -52
  82. package/lib/icon/narrow-line.js +88 -52
  83. package/lib/icon/original.js +88 -52
  84. package/lib/icon/pdf-fill.js +88 -52
  85. package/lib/icon/play-shape.js +88 -52
  86. package/lib/icon/plus.js +88 -52
  87. package/lib/icon/ppt-fill.js +88 -52
  88. package/lib/icon/qq.js +88 -52
  89. package/lib/icon/right-shape.js +88 -52
  90. package/lib/icon/right-turn-line.js +88 -52
  91. package/lib/icon/search.js +88 -52
  92. package/lib/icon/share.js +88 -52
  93. package/lib/icon/spinner.js +88 -52
  94. package/lib/icon/success.js +88 -52
  95. package/lib/icon/switcher-loading.js +88 -52
  96. package/lib/icon/text-file.js +88 -52
  97. package/lib/icon/text-fill.js +88 -52
  98. package/lib/icon/transfer.js +88 -52
  99. package/lib/icon/tree-application-shape.js +88 -52
  100. package/lib/icon/unfull-screen.js +88 -52
  101. package/lib/icon/unvisible.js +88 -52
  102. package/lib/icon/up-shape.js +88 -52
  103. package/lib/icon/upload.js +88 -52
  104. package/lib/icon/video-fill.js +88 -52
  105. package/lib/icon/warn.js +88 -52
  106. package/lib/icon/weixin.js +88 -52
  107. package/lib/image/index.js +213 -164
  108. package/lib/index.js +134 -50
  109. package/lib/info-box/index.js +206 -152
  110. package/lib/input/index.js +167 -99
  111. package/lib/link/index.js +115 -47
  112. package/lib/loading/index.js +127 -67
  113. package/lib/menu/index.js +156 -92
  114. package/lib/message/index.js +148 -76
  115. package/lib/modal/index.js +151 -85
  116. package/lib/navigation/index.js +134 -66
  117. package/lib/notify/index.js +153 -81
  118. package/lib/overflow-title/index.js +128 -92
  119. package/lib/pagination/index.js +220 -131
  120. package/lib/plugin-popover/index.js +329 -148
  121. package/lib/plugins/index.js +100 -33
  122. package/lib/popover/index.js +332 -153
  123. package/lib/popover2/index.js +99 -35
  124. package/lib/preset.js +104 -37
  125. package/lib/process/index.js +134 -92
  126. package/lib/progress/index.js +127 -63
  127. package/lib/radio/index.js +142 -81
  128. package/lib/rate/index.js +127 -63
  129. package/lib/resize-layout/index.js +147 -79
  130. package/lib/search-select/index.js +220 -168
  131. package/lib/select/index.js +394 -315
  132. package/lib/shared/index.js +203 -228
  133. package/lib/sideslider/index.js +137 -88
  134. package/lib/slider/index.js +196 -147
  135. package/lib/steps/index.js +152 -105
  136. package/lib/swiper/index.js +126 -62
  137. package/lib/switcher/index.js +133 -65
  138. package/lib/tab/index.js +188 -118
  139. package/lib/table/index.js +572 -457
  140. package/lib/table-column/index.js +197 -129
  141. package/lib/tag/index.js +130 -58
  142. package/lib/tag-input/index.js +277 -175
  143. package/lib/time-picker/index.js +111 -40
  144. package/lib/timeline/index.js +114 -50
  145. package/lib/transfer/index.js +174 -89
  146. package/lib/tree/index.js +235 -158
  147. package/lib/upload/index.js +227 -173
  148. package/lib/virtual-render/index.js +154 -86
  149. package/package.json +1 -1
package/dist/index.esm.js CHANGED
@@ -33,7 +33,7 @@ var __publicField = (obj, key2, value) => {
33
33
  __defNormalProp(obj, typeof key2 !== "symbol" ? key2 + "" : key2, value);
34
34
  return value;
35
35
  };
36
- import { inject, createVNode, mergeProps, h as h$1, defineComponent, reactive, ref, computed, watch, onMounted, onBeforeUnmount, getCurrentInstance, nextTick, Transition, provide, createTextVNode, isVNode, withDirectives, vShow, renderSlot, Fragment, shallowRef, onUnmounted, createApp, toRefs, Teleport, resolveDirective, customRef, onBeforeMount, toRef, vModelText, unref, watchEffect, markRaw, onUpdated, render as render$1, toRaw, withModifiers, TransitionGroup } from "vue";
36
+ import { inject, createVNode, mergeProps, h as h$1, defineComponent, reactive, ref, computed, watch, onMounted, onBeforeUnmount, getCurrentInstance, nextTick, Transition, provide, createTextVNode, isVNode, withDirectives, vShow, renderSlot, Fragment, toRefs, Teleport, resolveDirective, createApp, customRef, onBeforeMount, toRef, shallowRef, onUnmounted, vModelText, unref, watchEffect, markRaw, onUpdated, render as render$1, toRaw, withModifiers, TransitionGroup } from "vue";
37
37
  var reset = "";
38
38
  var alert = "";
39
39
  var affix = "";
@@ -10944,363 +10944,6 @@ var Component$r = defineComponent({
10944
10944
  }
10945
10945
  });
10946
10946
  const BkLink = withInstall(Component$r);
10947
- var props = {
10948
- content: String,
10949
- type: {
10950
- type: String,
10951
- default: "title"
10952
- },
10953
- calType: {
10954
- type: String,
10955
- default: "dom"
10956
- },
10957
- resizeable: Boolean
10958
- };
10959
- function getActualWidthByCanvas(text, options) {
10960
- const { fontSize = 14, fontFamily = "Microsoft YaHei" } = options;
10961
- const canvas = document.createElement("canvas");
10962
- const ctx = canvas.getContext("2d");
10963
- ctx.font = `${fontSize}px ${fontFamily}`;
10964
- const metrics = ctx.measureText(text);
10965
- const actual = Math.abs(metrics.actualBoundingBoxLeft) + Math.abs(metrics.actualBoundingBoxRight);
10966
- return Math.max(metrics.width, actual);
10967
- }
10968
- function getActualWidthByDom(text, options, dom = document.body) {
10969
- const { fontSize, fontFamily } = options || {};
10970
- const tempDom = document.createElement("div");
10971
- tempDom.style.cssText = `position: absolute;left: -999em;top:-999em;z-index: -1;text-overflow: initial;
10972
- ${fontSize ? `font-size:${fontSize} ;` : ""}
10973
- ${fontFamily ? `font-family:${fontFamily} ` : ""}
10974
- `;
10975
- tempDom.innerText = text;
10976
- dom.append(tempDom);
10977
- const { clientWidth } = tempDom;
10978
- dom.removeChild(tempDom);
10979
- return clientWidth;
10980
- }
10981
- var overflow = "";
10982
- var OverflowTitle = defineComponent({
10983
- name: "OverflowTitle",
10984
- props,
10985
- setup(props2, {
10986
- slots
10987
- }) {
10988
- const boxRef = ref(null);
10989
- const textRef = ref(null);
10990
- const isShowTips = ref(false);
10991
- const textProps = shallowRef();
10992
- const contentText = computed(() => {
10993
- var _a;
10994
- if (props2.content) {
10995
- return props2.content;
10996
- }
10997
- return (_a = slots == null ? void 0 : slots.default) == null ? void 0 : _a.call(slots);
10998
- });
10999
- onMounted(() => {
11000
- const {
11001
- clientWidth
11002
- } = boxRef.value;
11003
- const resizeHandler = debounce(500, () => {
11004
- isShowTips.value = false;
11005
- textProps.value = {};
11006
- let textWidth = 0;
11007
- if (props2.calType === "dom") {
11008
- textWidth = getActualWidthByDom(textRef.value.textContent, null, boxRef.value);
11009
- } else {
11010
- const {
11011
- fontSize,
11012
- fontFamily
11013
- } = getComputedStyle(boxRef.value);
11014
- textWidth = getActualWidthByCanvas(contentText.value, {
11015
- fontSize,
11016
- fontFamily
11017
- });
11018
- }
11019
- if (textWidth > clientWidth) {
11020
- isShowTips.value = true;
11021
- if (props2.type === "title") {
11022
- textProps.value = {
11023
- title: textRef.value.innerText
11024
- };
11025
- }
11026
- }
11027
- });
11028
- resizeHandler();
11029
- if (props2.resizeable) {
11030
- const observer = new ResizeObserver(resizeHandler);
11031
- observer.observe(boxRef.value);
11032
- onUnmounted(() => {
11033
- observer.unobserve(boxRef.value);
11034
- observer.disconnect();
11035
- });
11036
- }
11037
- });
11038
- return {
11039
- boxRef,
11040
- textRef,
11041
- isShowTips,
11042
- contentText,
11043
- textProps
11044
- };
11045
- },
11046
- render() {
11047
- return createVNode("div", {
11048
- "ref": "boxRef",
11049
- "class": "position-relative"
11050
- }, [createVNode(Popover, {
11051
- "disabled": this.type === "title"
11052
- }, {
11053
- default: () => createVNode("div", mergeProps({
11054
- "ref": "textRef",
11055
- "class": "text-ov"
11056
- }, this.textProps), [this.contentText]),
11057
- content: () => this.contentText
11058
- })]);
11059
- }
11060
- });
11061
- const overflowTitle = {
11062
- mounted(el, { value = {} }) {
11063
- const { clientWidth } = el.parentElement;
11064
- if (!clientWidth) {
11065
- return;
11066
- }
11067
- const { content, calType = "dom" } = value;
11068
- const text = content || el.innerText;
11069
- let textWidth = 0;
11070
- if (calType === "dom") {
11071
- textWidth = getActualWidthByDom(el.textContent, null, el.parentElement);
11072
- } else {
11073
- const { fontSize, fontFamily } = getComputedStyle(el);
11074
- textWidth = getActualWidthByCanvas(text, { fontSize, fontFamily });
11075
- }
11076
- if (textWidth > clientWidth) {
11077
- el.setAttribute("title", text);
11078
- }
11079
- }
11080
- };
11081
- const BkOverflowTitle = withInstall(OverflowTitle);
11082
- var _populated = false;
11083
- var _ie, _firefox, _opera, _webkit, _chrome;
11084
- var _ie_real_version;
11085
- var _osx, _windows, _linux, _android;
11086
- var _win64;
11087
- var _iphone, _ipad, _native;
11088
- var _mobile;
11089
- function _populate() {
11090
- if (_populated) {
11091
- return;
11092
- }
11093
- _populated = true;
11094
- var uas = navigator.userAgent;
11095
- var agent = /(?:MSIE.(\d+\.\d+))|(?:(?:Firefox|GranParadiso|Iceweasel).(\d+\.\d+))|(?:Opera(?:.+Version.|.)(\d+\.\d+))|(?:AppleWebKit.(\d+(?:\.\d+)?))|(?:Trident\/\d+\.\d+.*rv:(\d+\.\d+))/.exec(uas);
11096
- var os = /(Mac OS X)|(Windows)|(Linux)/.exec(uas);
11097
- _iphone = /\b(iPhone|iP[ao]d)/.exec(uas);
11098
- _ipad = /\b(iP[ao]d)/.exec(uas);
11099
- _android = /Android/i.exec(uas);
11100
- _native = /FBAN\/\w+;/i.exec(uas);
11101
- _mobile = /Mobile/i.exec(uas);
11102
- _win64 = !!/Win64/.exec(uas);
11103
- if (agent) {
11104
- _ie = agent[1] ? parseFloat(agent[1]) : agent[5] ? parseFloat(agent[5]) : NaN;
11105
- if (_ie && document && document.documentMode) {
11106
- _ie = document.documentMode;
11107
- }
11108
- var trident = /(?:Trident\/(\d+.\d+))/.exec(uas);
11109
- _ie_real_version = trident ? parseFloat(trident[1]) + 4 : _ie;
11110
- _firefox = agent[2] ? parseFloat(agent[2]) : NaN;
11111
- _opera = agent[3] ? parseFloat(agent[3]) : NaN;
11112
- _webkit = agent[4] ? parseFloat(agent[4]) : NaN;
11113
- if (_webkit) {
11114
- agent = /(?:Chrome\/(\d+\.\d+))/.exec(uas);
11115
- _chrome = agent && agent[1] ? parseFloat(agent[1]) : NaN;
11116
- } else {
11117
- _chrome = NaN;
11118
- }
11119
- } else {
11120
- _ie = _firefox = _opera = _chrome = _webkit = NaN;
11121
- }
11122
- if (os) {
11123
- if (os[1]) {
11124
- var ver = /(?:Mac OS X (\d+(?:[._]\d+)?))/.exec(uas);
11125
- _osx = ver ? parseFloat(ver[1].replace("_", ".")) : true;
11126
- } else {
11127
- _osx = false;
11128
- }
11129
- _windows = !!os[2];
11130
- _linux = !!os[3];
11131
- } else {
11132
- _osx = _windows = _linux = false;
11133
- }
11134
- }
11135
- var UserAgent_DEPRECATED$1 = {
11136
- ie: function() {
11137
- return _populate() || _ie;
11138
- },
11139
- ieCompatibilityMode: function() {
11140
- return _populate() || _ie_real_version > _ie;
11141
- },
11142
- ie64: function() {
11143
- return UserAgent_DEPRECATED$1.ie() && _win64;
11144
- },
11145
- firefox: function() {
11146
- return _populate() || _firefox;
11147
- },
11148
- opera: function() {
11149
- return _populate() || _opera;
11150
- },
11151
- webkit: function() {
11152
- return _populate() || _webkit;
11153
- },
11154
- safari: function() {
11155
- return UserAgent_DEPRECATED$1.webkit();
11156
- },
11157
- chrome: function() {
11158
- return _populate() || _chrome;
11159
- },
11160
- windows: function() {
11161
- return _populate() || _windows;
11162
- },
11163
- osx: function() {
11164
- return _populate() || _osx;
11165
- },
11166
- linux: function() {
11167
- return _populate() || _linux;
11168
- },
11169
- iphone: function() {
11170
- return _populate() || _iphone;
11171
- },
11172
- mobile: function() {
11173
- return _populate() || (_iphone || _ipad || _android || _mobile);
11174
- },
11175
- nativeApp: function() {
11176
- return _populate() || _native;
11177
- },
11178
- android: function() {
11179
- return _populate() || _android;
11180
- },
11181
- ipad: function() {
11182
- return _populate() || _ipad;
11183
- }
11184
- };
11185
- var UserAgent_DEPRECATED_1 = UserAgent_DEPRECATED$1;
11186
- var canUseDOM = !!(typeof window !== "undefined" && window.document && window.document.createElement);
11187
- var ExecutionEnvironment$1 = {
11188
- canUseDOM,
11189
- canUseWorkers: typeof Worker !== "undefined",
11190
- canUseEventListeners: canUseDOM && !!(window.addEventListener || window.attachEvent),
11191
- canUseViewport: canUseDOM && !!window.screen,
11192
- isInWorker: !canUseDOM
11193
- };
11194
- var ExecutionEnvironment_1 = ExecutionEnvironment$1;
11195
- var ExecutionEnvironment = ExecutionEnvironment_1;
11196
- var useHasFeature;
11197
- if (ExecutionEnvironment.canUseDOM) {
11198
- useHasFeature = document.implementation && document.implementation.hasFeature && document.implementation.hasFeature("", "") !== true;
11199
- }
11200
- /**
11201
- * Checks if an event is supported in the current execution environment.
11202
- *
11203
- * NOTE: This will not work correctly for non-generic events such as `change`,
11204
- * `reset`, `load`, `error`, and `select`.
11205
- *
11206
- * Borrows from Modernizr.
11207
- *
11208
- * @param {string} eventNameSuffix Event name, e.g. "click".
11209
- * @param {?boolean} capture Check if the capture phase is supported.
11210
- * @return {boolean} True if the event is supported.
11211
- * @internal
11212
- * @license Modernizr 3.0.0pre (Custom Build) | MIT
11213
- */
11214
- function isEventSupported$1(eventNameSuffix, capture) {
11215
- if (!ExecutionEnvironment.canUseDOM || capture && !("addEventListener" in document)) {
11216
- return false;
11217
- }
11218
- var eventName = "on" + eventNameSuffix;
11219
- var isSupported = eventName in document;
11220
- if (!isSupported) {
11221
- var element = document.createElement("div");
11222
- element.setAttribute(eventName, "return;");
11223
- isSupported = typeof element[eventName] === "function";
11224
- }
11225
- if (!isSupported && useHasFeature && eventNameSuffix === "wheel") {
11226
- isSupported = document.implementation.hasFeature("Events.wheel", "3.0");
11227
- }
11228
- return isSupported;
11229
- }
11230
- var isEventSupported_1 = isEventSupported$1;
11231
- var UserAgent_DEPRECATED = UserAgent_DEPRECATED_1;
11232
- var isEventSupported = isEventSupported_1;
11233
- var PIXEL_STEP = 10;
11234
- var LINE_HEIGHT$1 = 40;
11235
- var PAGE_HEIGHT = 800;
11236
- function normalizeWheel$1(event) {
11237
- var sX = 0, sY = 0, pX = 0, pY = 0;
11238
- if ("detail" in event) {
11239
- sY = event.detail;
11240
- }
11241
- if ("wheelDelta" in event) {
11242
- sY = -event.wheelDelta / 120;
11243
- }
11244
- if ("wheelDeltaY" in event) {
11245
- sY = -event.wheelDeltaY / 120;
11246
- }
11247
- if ("wheelDeltaX" in event) {
11248
- sX = -event.wheelDeltaX / 120;
11249
- }
11250
- if ("axis" in event && event.axis === event.HORIZONTAL_AXIS) {
11251
- sX = sY;
11252
- sY = 0;
11253
- }
11254
- pX = sX * PIXEL_STEP;
11255
- pY = sY * PIXEL_STEP;
11256
- if ("deltaY" in event) {
11257
- pY = event.deltaY;
11258
- }
11259
- if ("deltaX" in event) {
11260
- pX = event.deltaX;
11261
- }
11262
- if ((pX || pY) && event.deltaMode) {
11263
- if (event.deltaMode == 1) {
11264
- pX *= LINE_HEIGHT$1;
11265
- pY *= LINE_HEIGHT$1;
11266
- } else {
11267
- pX *= PAGE_HEIGHT;
11268
- pY *= PAGE_HEIGHT;
11269
- }
11270
- }
11271
- if (pX && !sX) {
11272
- sX = pX < 1 ? -1 : 1;
11273
- }
11274
- if (pY && !sY) {
11275
- sY = pY < 1 ? -1 : 1;
11276
- }
11277
- return {
11278
- spinX: sX,
11279
- spinY: sY,
11280
- pixelX: pX,
11281
- pixelY: pY
11282
- };
11283
- }
11284
- normalizeWheel$1.getEventType = function() {
11285
- return UserAgent_DEPRECATED.firefox() ? "DOMMouseScroll" : isEventSupported("wheel") ? "wheel" : "mousewheel";
11286
- };
11287
- var normalizeWheel_1 = normalizeWheel$1;
11288
- var normalizeWheel = normalizeWheel_1;
11289
- const isFirefox = typeof navigator !== "undefined" && navigator.userAgent.toLowerCase().indexOf("firefox") > -1;
11290
- const mousewheelHandler = function(element, callback) {
11291
- if (element == null ? void 0 : element.addEventListener) {
11292
- element.addEventListener(isFirefox ? "DOMMouseScroll" : "mousewheel", function(e) {
11293
- const normalized = normalizeWheel(e);
11294
- callback == null ? void 0 : callback.apply(this, [e, normalized]);
11295
- });
11296
- }
11297
- };
11298
- const mousewheel = {
11299
- beforeMount(el, binding) {
11300
- console.error(el, binding);
11301
- mousewheelHandler(el, binding.value);
11302
- }
11303
- };
11304
10947
  const isElement$1 = (e) => {
11305
10948
  if (typeof Element === "undefined")
11306
10949
  return false;
@@ -11372,493 +11015,69 @@ const ClickOutside = {
11372
11015
  ClickOutside.install = (app) => {
11373
11016
  app.directive("bkTooltips", ClickOutside);
11374
11017
  };
11375
- const nodeList = /* @__PURE__ */ new Map();
11376
- const tooltips = {
11377
- beforeMount(el, binding) {
11378
- const opts = getOpts(binding);
11379
- const { trigger } = opts;
11380
- const popper2 = renderContent(opts);
11381
- let delayTimeout = null;
11382
- if (trigger === "hover") {
11383
- let hideTimeout = null;
11384
- el.addEventListener("mouseenter", () => {
11385
- delayTimeout = setTimeout(() => {
11386
- show(el);
11387
- clearTimeout(hideTimeout);
11388
- clearTimeout(delayTimeout);
11389
- }, opts.delay);
11390
- });
11391
- popper2.addEventListener("mouseenter", () => {
11392
- clearTimeout(hideTimeout);
11393
- });
11394
- el.addEventListener("mouseleave", () => {
11395
- clearTimeout(delayTimeout);
11396
- hideTimeout = setTimeout(() => {
11397
- hide$1(el);
11398
- }, 100);
11399
- });
11400
- el.addEventListener("click", () => {
11401
- hide$1(el);
11402
- });
11403
- popper2.addEventListener("mouseleave", () => {
11404
- clearTimeout(delayTimeout);
11405
- hideTimeout = setTimeout(() => {
11406
- hide$1(el);
11407
- }, 100);
11408
- });
11409
- } else if (trigger === "click") {
11410
- document.body.addEventListener("click", (event) => {
11411
- if (el.contains(event.target) && !popper2.hasAttribute("data-show")) {
11412
- delayTimeout = setTimeout(() => {
11413
- show(el);
11414
- clearTimeout(delayTimeout);
11415
- }, opts.delay);
11416
- } else if (popper2.hasAttribute("data-show")) {
11417
- hide$1(el);
11418
- }
11419
- });
11420
- }
11421
- nodeList.set(el, {
11422
- opts,
11423
- popper: popper2,
11424
- popperInstance: null
11425
- });
11018
+ var Arrow = defineComponent({
11019
+ name: "PopArrow",
11020
+ render() {
11021
+ const arrowClassName = resolveClassName("pop2-arrow");
11022
+ return createVNode("div", {
11023
+ "class": arrowClassName
11024
+ }, null);
11025
+ }
11026
+ });
11027
+ const EMPTY$2 = (..._args) => true;
11028
+ let EMIT_EVENTS$1;
11029
+ (function(EMIT_EVENTS2) {
11030
+ EMIT_EVENTS2["SHOW"] = "show";
11031
+ EMIT_EVENTS2["HIDE"] = "hide";
11032
+ EMIT_EVENTS2["CLICK_OUTSIDE"] = "clickoutside";
11033
+ EMIT_EVENTS2["CONTENT_MOUSEENTER"] = "contentMouseenter";
11034
+ EMIT_EVENTS2["CONTENT_MOUSELEAVE"] = "contentMouseleave";
11035
+ EMIT_EVENTS2["STOP_HIDE"] = "stopHide";
11036
+ })(EMIT_EVENTS$1 || (EMIT_EVENTS$1 = {}));
11037
+ const EMIT_EVENT_TYPES$1 = {
11038
+ [EMIT_EVENTS$1.SHOW]: EMPTY$2,
11039
+ [EMIT_EVENTS$1.HIDE]: EMPTY$2,
11040
+ [EMIT_EVENTS$1.CLICK_OUTSIDE]: EMPTY$2,
11041
+ [EMIT_EVENTS$1.CONTENT_MOUSEENTER]: EMPTY$2,
11042
+ [EMIT_EVENTS$1.CONTENT_MOUSELEAVE]: EMPTY$2,
11043
+ [EMIT_EVENTS$1.STOP_HIDE]: EMPTY$2
11044
+ };
11045
+ var Content = defineComponent({
11046
+ name: "PopContent",
11047
+ props: {
11048
+ width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).def("auto"),
11049
+ height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).def("auto"),
11050
+ maxHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).def("auto")
11426
11051
  },
11427
- updated(el, binding) {
11428
- nodeList.get(el).opts = getOpts(binding);
11052
+ setup(props2) {
11053
+ const resolveValToPix = (val) => {
11054
+ if (/^\d+\.?\d*$/.test(`${val}`)) {
11055
+ return `${val}px`;
11056
+ }
11057
+ return val;
11058
+ };
11059
+ const style2 = computed(() => ({
11060
+ width: resolveValToPix(props2.width),
11061
+ height: resolveValToPix(props2.height),
11062
+ maxHeight: resolveValToPix(props2.maxHeight)
11063
+ }));
11064
+ return {
11065
+ style: style2
11066
+ };
11429
11067
  },
11430
- unmounted(el) {
11431
- hide$1(el);
11432
- nodeList.delete(el);
11068
+ render() {
11069
+ var _a, _b, _c, _d, _e, _f;
11070
+ const className = [resolveClassName("popover"), resolveClassName("pop2-content")];
11071
+ return createVNode("div", {
11072
+ "class": className,
11073
+ "tabindex": "-1",
11074
+ "style": this.style
11075
+ }, [(_c = (_b = (_a = this.$slots).arrow) == null ? void 0 : _b.call(_a)) != null ? _c : "", (_f = (_e = (_d = this.$slots).default) == null ? void 0 : _e.call(_d)) != null ? _f : ""]);
11433
11076
  }
11434
- };
11435
- function initOptions() {
11436
- const defaultOpts = {
11437
- arrow: true,
11438
- disabled: false,
11439
- trigger: "hover",
11440
- theme: "dark",
11441
- content: "",
11442
- showOnInit: false,
11443
- placement: "top",
11444
- distance: 8,
11445
- extCls: "",
11446
- delay: 0,
11447
- onShow: () => {
11448
- },
11449
- onHide: () => {
11450
- }
11451
- };
11452
- return defaultOpts;
11453
- }
11454
- function getOpts(binding) {
11455
- const opts = initOptions();
11456
- if (typeof binding.value === "object") {
11457
- Object.assign(opts, binding.value);
11458
- } else {
11459
- opts.content = binding.value;
11460
- }
11461
- return opts;
11462
- }
11463
- function renderContent(opts) {
11464
- const { content: value, arrow: hasArrow, theme, extCls } = opts;
11465
- const isLight = theme === "light";
11466
- const zIndex = bkZIndexManager.getPopperIndex();
11467
- const content = document.createElement("div");
11468
- content.className = `${resolveClassName("popper")} ${isLight ? "light" : "dark"} ${extCls}`;
11469
- content.innerText = value;
11470
- content.style.zIndex = String(zIndex);
11471
- if (hasArrow) {
11472
- const arrow2 = renderArrow();
11473
- content.appendChild(arrow2);
11474
- }
11475
- return content;
11476
- }
11477
- function renderArrow() {
11478
- const arrow2 = document.createElement("div");
11479
- arrow2.className = resolveClassName("popper-arrow");
11480
- arrow2.setAttribute("data-popper-arrow", "");
11481
- return arrow2;
11482
- }
11483
- function createPopperInstance(el, popper2) {
11484
- const { opts } = nodeList.get(el);
11485
- const { placement, distance: distance2, showOnInit } = opts;
11486
- const popperInstance = createPopper(el, popper2, {
11487
- placement,
11488
- modifiers: [
11489
- {
11490
- name: "offset",
11491
- options: {
11492
- offset: [0, distance2]
11493
- }
11494
- }
11495
- ]
11496
- });
11497
- if (showOnInit)
11498
- show(el);
11499
- return popperInstance;
11500
- }
11501
- function show(el) {
11502
- const { popper: popper2, opts } = nodeList.get(el);
11503
- const { disabled, content, arrow: hasArrow, onShow } = opts;
11504
- if (disabled)
11505
- return;
11506
- popper2.innerText = content;
11507
- if (hasArrow) {
11508
- const arrow2 = renderArrow();
11509
- popper2.appendChild(arrow2);
11510
- }
11511
- document.body.appendChild(popper2);
11512
- const popperInstance = createPopperInstance(el, popper2);
11513
- onShow();
11514
- popper2.setAttribute("data-show", "");
11515
- popperInstance.setOptions((options) => __spreadProps(__spreadValues({}, options), {
11516
- modifiers: [
11517
- ...options.modifiers,
11518
- { name: "eventListeners", enabled: true }
11519
- ]
11520
- }));
11521
- popperInstance.forceUpdate();
11522
- nodeList.get(el).popperInstance = popperInstance;
11523
- }
11524
- function hide$1(el) {
11525
- if (!nodeList.get(el))
11526
- return;
11527
- const { popper: popper2, popperInstance, opts } = nodeList.get(el);
11528
- const { onHide } = opts;
11529
- if (popper2 && document.body.contains(popper2)) {
11530
- popper2.removeAttribute("data-show");
11531
- popperInstance == null ? void 0 : popperInstance.destroy();
11532
- document.body.removeChild(popper2);
11533
- onHide();
11534
- }
11535
- }
11536
- const CachedConst = {};
11537
- const isAvailableId = (query) => {
11538
- const container2 = document.querySelector(query);
11539
- return container2 instanceof HTMLElement;
11540
- };
11541
- const getFullscreenUid = () => {
11542
- if (!CachedConst.fullscreenReferId) {
11543
- CachedConst.fullscreenReferId = `id_${uuid_1.v4()}`;
11544
- }
11545
- return CachedConst.fullscreenReferId;
11546
- };
11547
- function createPopoverComponent(options) {
11548
- let $PopoverInstance = null;
11549
- let $PopoverInstanceVm = null;
11550
- let $PopoverInstanceEl = null;
11551
- const resolvedOptions = __spreadProps(__spreadValues({
11552
- boundary: "body",
11553
- placement: "top",
11554
- autoVisibility: false
11555
- }, options), {
11556
- trigger: "manual"
11557
- });
11558
- const isElement2 = (element) => element instanceof Element || element instanceof HTMLDocument;
11559
- const popoverComponent = {
11560
- name: "$popover",
11561
- setup(_2, {
11562
- expose
11563
- }) {
11564
- const refProps = ref(resolvedOptions);
11565
- const refReference = ref();
11566
- const referStyle = ref({
11567
- position: "absolute",
11568
- pointerEvents: "none",
11569
- left: 0,
11570
- top: 0,
11571
- width: "auto",
11572
- height: "auto",
11573
- transform: ""
11574
- });
11575
- const updateStyle = (target) => {
11576
- if (isElement2(target)) {
11577
- const {
11578
- x: x2,
11579
- y: y2,
11580
- width,
11581
- height
11582
- } = target.getBoundingClientRect();
11583
- Object.assign(referStyle.value, {
11584
- width: `${width}px`,
11585
- height: `${height}px`,
11586
- transform: `translate3d(${x2}px,${y2}px,0)`
11587
- });
11588
- return;
11589
- }
11590
- const {
11591
- clientX,
11592
- clientY
11593
- } = target;
11594
- Object.assign(referStyle.value, {
11595
- transform: `translate3d(${clientX}px,${clientY}px,0)`,
11596
- width: "10px",
11597
- height: "10px"
11598
- });
11599
- };
11600
- updateStyle(refProps.value.target);
11601
- const show3 = () => {
11602
- setTimeout(() => {
11603
- var _a, _b;
11604
- (_b = (_a = refReference.value) == null ? void 0 : _a.show) == null ? void 0 : _b.call(_a);
11605
- });
11606
- };
11607
- const hide3 = () => {
11608
- var _a, _b;
11609
- (_b = (_a = refReference.value) == null ? void 0 : _a.hide) == null ? void 0 : _b.call(_a);
11610
- };
11611
- const stopHide = () => {
11612
- var _a, _b;
11613
- (_b = (_a = refReference.value) == null ? void 0 : _a.stopHide) == null ? void 0 : _b.call(_a);
11614
- };
11615
- const attrs = computed(() => {
11616
- const excludeKeys = ["target"];
11617
- return Object.keys(refProps.value).filter((key2) => !excludeKeys.includes(key2)).reduce((out, curKey) => __spreadProps(__spreadValues({}, out), {
11618
- [curKey]: refProps.value[curKey]
11619
- }), {});
11620
- });
11621
- const updateTarget = (target) => {
11622
- var _a, _b;
11623
- refProps.value.target = target;
11624
- updateStyle(target);
11625
- (_b = (_a = refReference.value) == null ? void 0 : _a.updatePopover) == null ? void 0 : _b.call(_a);
11626
- nextTick(() => {
11627
- var _a2, _b2;
11628
- (_b2 = (_a2 = refReference.value) == null ? void 0 : _a2.updatePopover) == null ? void 0 : _b2.call(_a2);
11629
- });
11630
- };
11631
- const handleContentMouseenter = () => {
11632
- var _a;
11633
- (_a = resolvedOptions.onContentMouseenter) == null ? void 0 : _a.call(resolvedOptions);
11634
- };
11635
- const handleContentMouseleave = () => {
11636
- var _a;
11637
- (_a = resolvedOptions.onContentMouseleave) == null ? void 0 : _a.call(resolvedOptions);
11638
- };
11639
- expose({
11640
- show: show3,
11641
- hide: hide3,
11642
- updateTarget,
11643
- stopHide
11644
- });
11645
- return () => createVNode(Component$q, mergeProps(attrs.value, {
11646
- "ref": refReference,
11647
- "onContentMouseenter": handleContentMouseenter,
11648
- "onContentMouseleave": handleContentMouseleave
11649
- }), {
11650
- default: () => [createVNode("span", {
11651
- "style": referStyle.value
11652
- }, null)]
11653
- });
11654
- }
11655
- };
11656
- function getBoundaryDom(boundary) {
11657
- if (/^body$/i.test(boundary)) {
11658
- return document.body;
11659
- }
11660
- if (/^parent$/i.test(boundary)) {
11661
- if (isElement2(resolvedOptions.target)) {
11662
- return resolvedOptions.target.parentNode;
11663
- }
11664
- return resolvedOptions.target.target.parentNode;
11665
- }
11666
- if (typeof boundary === "string" && isAvailableId(boundary)) {
11667
- return document.querySelector(boundary);
11668
- }
11669
- return document.body;
11670
- }
11671
- if ($PopoverInstance === null) {
11672
- $PopoverInstanceEl = document.createElement("div");
11673
- getBoundaryDom(resolvedOptions.boundary).append($PopoverInstanceEl);
11674
- setTimeout(() => {
11675
- $PopoverInstance = createApp(popoverComponent);
11676
- $PopoverInstanceVm = $PopoverInstance.mount($PopoverInstanceEl);
11677
- });
11678
- }
11679
- function close2() {
11680
- if ($PopoverInstance) {
11681
- $PopoverInstance.unmount();
11682
- $PopoverInstanceVm = null;
11683
- $PopoverInstance = null;
11684
- $PopoverInstanceEl.remove();
11685
- }
11686
- }
11687
- function show2() {
11688
- $PopoverInstanceVm == null ? void 0 : $PopoverInstanceVm.show();
11689
- }
11690
- function update(e) {
11691
- $PopoverInstanceVm == null ? void 0 : $PopoverInstanceVm.updateTarget(e);
11692
- }
11693
- function hide2() {
11694
- $PopoverInstanceVm == null ? void 0 : $PopoverInstanceVm.hide();
11695
- }
11696
- return {
11697
- close: close2,
11698
- show: show2,
11699
- hide: hide2,
11700
- update,
11701
- get vm() {
11702
- return $PopoverInstanceVm;
11703
- },
11704
- get $el() {
11705
- return $PopoverInstanceVm.$el;
11706
- }
11707
- };
11708
- }
11709
- const resolveOptions = (el, binding) => {
11710
- const options = {
11711
- content: "",
11712
- target: el
11713
- };
11714
- if (typeof binding.value === "object") {
11715
- Object.assign(options, binding.value);
11716
- } else {
11717
- options.content = binding.value;
11718
- }
11719
- return options;
11720
- };
11721
- const createInstance = (el, binding) => {
11722
- let instance = null;
11723
- let createTimer = null;
11724
- let hidePopTimer = null;
11725
- const options = resolveOptions(el, binding);
11726
- const { disabled } = options;
11727
- if (disabled || instance) {
11728
- return;
11729
- }
11730
- const handleContentEnter = () => {
11731
- hidePopTimer && clearTimeout(hidePopTimer);
11732
- hidePopTimer = null;
11733
- };
11734
- const handleContentLeave = () => {
11735
- if (createTimer) {
11736
- clearTimeout(createTimer);
11737
- }
11738
- instance == null ? void 0 : instance.hide();
11739
- instance == null ? void 0 : instance.close();
11740
- instance = null;
11741
- };
11742
- const handleMouseEnter = () => {
11743
- createTimer && clearTimeout(createTimer);
11744
- createTimer = setTimeout(() => {
11745
- const targetOptions = resolveOptions(el, binding);
11746
- targetOptions.content = targetOptions.content || el.innerHTML;
11747
- Object.assign(targetOptions, {
11748
- onContentMouseenter: handleContentEnter,
11749
- onContentMouseleave: handleContentLeave
11750
- });
11751
- instance = createPopoverComponent(targetOptions);
11752
- setTimeout(() => {
11753
- instance.show();
11754
- });
11755
- }, 100);
11756
- };
11757
- const handleMouseLeave = () => {
11758
- hidePopTimer = setTimeout(() => {
11759
- if (createTimer) {
11760
- clearTimeout(createTimer);
11761
- }
11762
- instance == null ? void 0 : instance.hide();
11763
- instance == null ? void 0 : instance.close();
11764
- instance = null;
11765
- }, 120);
11766
- };
11767
- el.addEventListener("mouseenter", handleMouseEnter);
11768
- el.addEventListener("mouseleave", handleMouseLeave);
11769
- Object.assign(binding, {
11770
- __cached: {
11771
- handleMouseEnter,
11772
- handleMouseLeave
11773
- }
11774
- });
11775
- const destroyInstance = (element) => {
11776
- var _a, _b;
11777
- handleMouseLeave();
11778
- (_a = element != null ? element : el) == null ? void 0 : _a.removeEventListener("mouseenter", handleMouseEnter);
11779
- (_b = element != null ? element : el) == null ? void 0 : _b.removeEventListener("mouseleave", handleMouseLeave);
11780
- };
11781
- return {
11782
- destroyInstance,
11783
- instance
11784
- };
11785
- };
11786
- const ellipsis = {
11787
- mounted(el, binding) {
11788
- createInstance(el, binding);
11789
- },
11790
- beforeUnmount(el, binding) {
11791
- if (binding.__cached) {
11792
- const { handleMouseEnter, handleMouseLeave } = binding.__cached;
11793
- el.removeEventListener("mouseenter", handleMouseEnter);
11794
- el.removeEventListener("mouseleave", handleMouseLeave);
11795
- binding.__cached = null;
11796
- }
11797
- }
11798
- };
11799
- var Arrow = defineComponent({
11800
- name: "PopArrow",
11801
- render() {
11802
- const arrowClassName = resolveClassName("pop2-arrow");
11803
- return createVNode("div", {
11804
- "class": arrowClassName
11805
- }, null);
11806
- }
11807
- });
11808
- const EMPTY$2 = (..._args) => true;
11809
- let EMIT_EVENTS$1;
11810
- (function(EMIT_EVENTS2) {
11811
- EMIT_EVENTS2["SHOW"] = "show";
11812
- EMIT_EVENTS2["HIDE"] = "hide";
11813
- EMIT_EVENTS2["CLICK_OUTSIDE"] = "clickoutside";
11814
- EMIT_EVENTS2["CONTENT_MOUSEENTER"] = "contentMouseenter";
11815
- EMIT_EVENTS2["CONTENT_MOUSELEAVE"] = "contentMouseleave";
11816
- EMIT_EVENTS2["STOP_HIDE"] = "stopHide";
11817
- })(EMIT_EVENTS$1 || (EMIT_EVENTS$1 = {}));
11818
- const EMIT_EVENT_TYPES$1 = {
11819
- [EMIT_EVENTS$1.SHOW]: EMPTY$2,
11820
- [EMIT_EVENTS$1.HIDE]: EMPTY$2,
11821
- [EMIT_EVENTS$1.CLICK_OUTSIDE]: EMPTY$2,
11822
- [EMIT_EVENTS$1.CONTENT_MOUSEENTER]: EMPTY$2,
11823
- [EMIT_EVENTS$1.CONTENT_MOUSELEAVE]: EMPTY$2,
11824
- [EMIT_EVENTS$1.STOP_HIDE]: EMPTY$2
11825
- };
11826
- var Content = defineComponent({
11827
- name: "PopContent",
11828
- props: {
11829
- width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).def("auto"),
11830
- height: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).def("auto"),
11831
- maxHeight: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).def("auto")
11832
- },
11833
- setup(props2) {
11834
- const resolveValToPix = (val) => {
11835
- if (/^\d+\.?\d*$/.test(`${val}`)) {
11836
- return `${val}px`;
11837
- }
11838
- return val;
11839
- };
11840
- const style2 = computed(() => ({
11841
- width: resolveValToPix(props2.width),
11842
- height: resolveValToPix(props2.height),
11843
- maxHeight: resolveValToPix(props2.maxHeight)
11844
- }));
11845
- return {
11846
- style: style2
11847
- };
11848
- },
11849
- render() {
11850
- var _a, _b, _c, _d, _e, _f;
11851
- const className = [resolveClassName("popover"), resolveClassName("pop2-content")];
11852
- return createVNode("div", {
11853
- "class": className,
11854
- "tabindex": "-1",
11855
- "style": this.style
11856
- }, [(_c = (_b = (_a = this.$slots).arrow) == null ? void 0 : _b.call(_a)) != null ? _c : "", (_f = (_e = (_d = this.$slots).default) == null ? void 0 : _e.call(_d)) != null ? _f : ""]);
11857
- }
11858
- });
11859
- const EventProps$1 = {
11860
- onAfterHidden: Function,
11861
- onAfterShow: Function
11077
+ });
11078
+ const EventProps$1 = {
11079
+ onAfterHidden: Function,
11080
+ onAfterShow: Function
11862
11081
  };
11863
11082
  const PopoverProps = __spreadValues({
11864
11083
  isShow: PropTypes.bool.def(false),
@@ -12408,7 +11627,7 @@ function getSideOffsets(overflow2, rect) {
12408
11627
  function isAnySideFullyClipped(overflow2) {
12409
11628
  return sides.some((side) => overflow2[side] >= 0);
12410
11629
  }
12411
- const hide = function(_temp) {
11630
+ const hide$1 = function(_temp) {
12412
11631
  let _a = _temp === void 0 ? {} : _temp, {
12413
11632
  strategy = "referenceHidden"
12414
11633
  } = _a, detectOverflowOptions = __objRest(_a, [
@@ -13280,7 +12499,7 @@ var useFloating = (props2, ctx, {
13280
12499
  middleware.push(flip());
13281
12500
  }
13282
12501
  if (isHideMiddlewareAvailable()) {
13283
- options.middleware.push(hide());
12502
+ options.middleware.push(hide$1());
13284
12503
  }
13285
12504
  if (isElementFullScreen() || props3.isVirtualEl) {
13286
12505
  const {
@@ -13519,6 +12738,17 @@ var useFloating = (props2, ctx, {
13519
12738
  cleanup
13520
12739
  };
13521
12740
  };
12741
+ const CachedConst = {};
12742
+ const isAvailableId = (query) => {
12743
+ const container2 = document.querySelector(query);
12744
+ return container2 instanceof HTMLElement;
12745
+ };
12746
+ const getFullscreenUid = () => {
12747
+ if (!CachedConst.fullscreenReferId) {
12748
+ CachedConst.fullscreenReferId = `id_${uuid_1.v4()}`;
12749
+ }
12750
+ return CachedConst.fullscreenReferId;
12751
+ };
13522
12752
  let popContainerId = null;
13523
12753
  let parentNodeReferId = null;
13524
12754
  var usePopperId = (props2, prefix = "#") => {
@@ -13850,8 +13080,169 @@ var Component$q = defineComponent({
13850
13080
  });
13851
13081
  }
13852
13082
  });
13083
+ function createPopoverComponent(options) {
13084
+ let $PopoverInstance = null;
13085
+ let $PopoverInstanceVm = null;
13086
+ let $PopoverInstanceEl = null;
13087
+ const resolvedOptions = __spreadProps(__spreadValues({
13088
+ boundary: "body",
13089
+ placement: "top",
13090
+ autoVisibility: false
13091
+ }, options), {
13092
+ trigger: "manual"
13093
+ });
13094
+ const isElement2 = (element) => element instanceof Element || element instanceof HTMLDocument;
13095
+ const popoverComponent = {
13096
+ name: "$popover",
13097
+ setup(_2, {
13098
+ expose
13099
+ }) {
13100
+ const refProps = ref(resolvedOptions);
13101
+ const refReference = ref();
13102
+ const referStyle = ref({
13103
+ position: "absolute",
13104
+ pointerEvents: "none",
13105
+ left: 0,
13106
+ top: 0,
13107
+ width: "auto",
13108
+ height: "auto",
13109
+ transform: ""
13110
+ });
13111
+ const updateStyle = (target) => {
13112
+ if (isElement2(target)) {
13113
+ const {
13114
+ x: x2,
13115
+ y: y2,
13116
+ width,
13117
+ height
13118
+ } = target.getBoundingClientRect();
13119
+ Object.assign(referStyle.value, {
13120
+ width: `${width}px`,
13121
+ height: `${height}px`,
13122
+ transform: `translate3d(${x2}px,${y2}px,0)`
13123
+ });
13124
+ return;
13125
+ }
13126
+ const {
13127
+ clientX,
13128
+ clientY
13129
+ } = target;
13130
+ Object.assign(referStyle.value, {
13131
+ transform: `translate3d(${clientX}px,${clientY}px,0)`,
13132
+ width: "10px",
13133
+ height: "10px"
13134
+ });
13135
+ };
13136
+ updateStyle(refProps.value.target);
13137
+ const show3 = () => {
13138
+ setTimeout(() => {
13139
+ var _a, _b;
13140
+ (_b = (_a = refReference.value) == null ? void 0 : _a.show) == null ? void 0 : _b.call(_a);
13141
+ });
13142
+ };
13143
+ const hide3 = () => {
13144
+ var _a, _b;
13145
+ (_b = (_a = refReference.value) == null ? void 0 : _a.hide) == null ? void 0 : _b.call(_a);
13146
+ };
13147
+ const stopHide = () => {
13148
+ var _a, _b;
13149
+ (_b = (_a = refReference.value) == null ? void 0 : _a.stopHide) == null ? void 0 : _b.call(_a);
13150
+ };
13151
+ const attrs = computed(() => {
13152
+ const excludeKeys = ["target"];
13153
+ return Object.keys(refProps.value).filter((key2) => !excludeKeys.includes(key2)).reduce((out, curKey) => __spreadProps(__spreadValues({}, out), {
13154
+ [curKey]: refProps.value[curKey]
13155
+ }), {});
13156
+ });
13157
+ const updateTarget = (target) => {
13158
+ var _a, _b;
13159
+ refProps.value.target = target;
13160
+ updateStyle(target);
13161
+ (_b = (_a = refReference.value) == null ? void 0 : _a.updatePopover) == null ? void 0 : _b.call(_a);
13162
+ nextTick(() => {
13163
+ var _a2, _b2;
13164
+ (_b2 = (_a2 = refReference.value) == null ? void 0 : _a2.updatePopover) == null ? void 0 : _b2.call(_a2);
13165
+ });
13166
+ };
13167
+ const handleContentMouseenter = () => {
13168
+ var _a;
13169
+ (_a = resolvedOptions.onContentMouseenter) == null ? void 0 : _a.call(resolvedOptions);
13170
+ };
13171
+ const handleContentMouseleave = () => {
13172
+ var _a;
13173
+ (_a = resolvedOptions.onContentMouseleave) == null ? void 0 : _a.call(resolvedOptions);
13174
+ };
13175
+ expose({
13176
+ show: show3,
13177
+ hide: hide3,
13178
+ updateTarget,
13179
+ stopHide
13180
+ });
13181
+ return () => createVNode(Component$q, mergeProps(attrs.value, {
13182
+ "ref": refReference,
13183
+ "onContentMouseenter": handleContentMouseenter,
13184
+ "onContentMouseleave": handleContentMouseleave
13185
+ }), {
13186
+ default: () => [createVNode("span", {
13187
+ "style": referStyle.value
13188
+ }, null)]
13189
+ });
13190
+ }
13191
+ };
13192
+ function getBoundaryDom(boundary) {
13193
+ if (/^body$/i.test(boundary)) {
13194
+ return document.body;
13195
+ }
13196
+ if (/^parent$/i.test(boundary)) {
13197
+ if (isElement2(resolvedOptions.target)) {
13198
+ return resolvedOptions.target.parentNode;
13199
+ }
13200
+ return resolvedOptions.target.target.parentNode;
13201
+ }
13202
+ if (typeof boundary === "string" && isAvailableId(boundary)) {
13203
+ return document.querySelector(boundary);
13204
+ }
13205
+ return document.body;
13206
+ }
13207
+ if ($PopoverInstance === null) {
13208
+ $PopoverInstanceEl = document.createElement("div");
13209
+ getBoundaryDom(resolvedOptions.boundary).append($PopoverInstanceEl);
13210
+ setTimeout(() => {
13211
+ $PopoverInstance = createApp(popoverComponent);
13212
+ $PopoverInstanceVm = $PopoverInstance.mount($PopoverInstanceEl);
13213
+ });
13214
+ }
13215
+ function close2() {
13216
+ if ($PopoverInstance) {
13217
+ $PopoverInstance.unmount();
13218
+ $PopoverInstanceVm = null;
13219
+ $PopoverInstance = null;
13220
+ $PopoverInstanceEl.remove();
13221
+ }
13222
+ }
13223
+ function show2() {
13224
+ $PopoverInstanceVm == null ? void 0 : $PopoverInstanceVm.show();
13225
+ }
13226
+ function update(e) {
13227
+ $PopoverInstanceVm == null ? void 0 : $PopoverInstanceVm.updateTarget(e);
13228
+ }
13229
+ function hide2() {
13230
+ $PopoverInstanceVm == null ? void 0 : $PopoverInstanceVm.hide();
13231
+ }
13232
+ return {
13233
+ close: close2,
13234
+ show: show2,
13235
+ hide: hide2,
13236
+ update,
13237
+ get vm() {
13238
+ return $PopoverInstanceVm;
13239
+ },
13240
+ get $el() {
13241
+ return $PopoverInstanceVm.$el;
13242
+ }
13243
+ };
13244
+ }
13853
13245
  const BkPopover = withInstall(Component$q);
13854
- var Popover = BkPopover;
13855
13246
  var popover = defineComponent({
13856
13247
  name: "Popover2",
13857
13248
  setup() {
@@ -14907,6 +14298,614 @@ var OptionGroup = defineComponent({
14907
14298
  }, [(_b = (_a = this.$slots).default) == null ? void 0 : _b.call(_a)]), [[vShow, !this.groupCollapse]])]), [[vShow, this.visible]]);
14908
14299
  }
14909
14300
  });
14301
+ var props = {
14302
+ content: String,
14303
+ type: {
14304
+ type: String,
14305
+ default: "title"
14306
+ },
14307
+ calType: {
14308
+ type: String,
14309
+ default: "dom"
14310
+ },
14311
+ resizeable: Boolean
14312
+ };
14313
+ function getActualWidthByCanvas(text, options) {
14314
+ const { fontSize = 14, fontFamily = "Microsoft YaHei" } = options;
14315
+ const canvas = document.createElement("canvas");
14316
+ const ctx = canvas.getContext("2d");
14317
+ ctx.font = `${fontSize}px ${fontFamily}`;
14318
+ const metrics = ctx.measureText(text);
14319
+ const actual = Math.abs(metrics.actualBoundingBoxLeft) + Math.abs(metrics.actualBoundingBoxRight);
14320
+ return Math.max(metrics.width, actual);
14321
+ }
14322
+ function getActualWidthByDom(text, options, dom = document.body) {
14323
+ const { fontSize, fontFamily } = options || {};
14324
+ const tempDom = document.createElement("div");
14325
+ tempDom.style.cssText = `position: absolute;left: -999em;top:-999em;z-index: -1;text-overflow: initial;
14326
+ ${fontSize ? `font-size:${fontSize} ;` : ""}
14327
+ ${fontFamily ? `font-family:${fontFamily} ` : ""}
14328
+ `;
14329
+ tempDom.innerText = text;
14330
+ dom.append(tempDom);
14331
+ const { clientWidth } = tempDom;
14332
+ dom.removeChild(tempDom);
14333
+ return clientWidth;
14334
+ }
14335
+ var overflow = "";
14336
+ var OverflowTitle = defineComponent({
14337
+ name: "OverflowTitle",
14338
+ props,
14339
+ setup(props2, {
14340
+ slots
14341
+ }) {
14342
+ const boxRef = ref(null);
14343
+ const textRef = ref(null);
14344
+ const isShowTips = ref(false);
14345
+ const textProps = shallowRef();
14346
+ const contentText = computed(() => {
14347
+ var _a;
14348
+ if (props2.content) {
14349
+ return props2.content;
14350
+ }
14351
+ return (_a = slots == null ? void 0 : slots.default) == null ? void 0 : _a.call(slots);
14352
+ });
14353
+ onMounted(() => {
14354
+ const {
14355
+ clientWidth
14356
+ } = boxRef.value;
14357
+ const resizeHandler = debounce(500, () => {
14358
+ isShowTips.value = false;
14359
+ textProps.value = {};
14360
+ let textWidth = 0;
14361
+ if (props2.calType === "dom") {
14362
+ textWidth = getActualWidthByDom(textRef.value.textContent, null, boxRef.value);
14363
+ } else {
14364
+ const {
14365
+ fontSize,
14366
+ fontFamily
14367
+ } = getComputedStyle(boxRef.value);
14368
+ textWidth = getActualWidthByCanvas(contentText.value, {
14369
+ fontSize,
14370
+ fontFamily
14371
+ });
14372
+ }
14373
+ if (textWidth > clientWidth) {
14374
+ isShowTips.value = true;
14375
+ if (props2.type === "title") {
14376
+ textProps.value = {
14377
+ title: textRef.value.innerText
14378
+ };
14379
+ }
14380
+ }
14381
+ });
14382
+ resizeHandler();
14383
+ if (props2.resizeable) {
14384
+ const observer = new ResizeObserver(resizeHandler);
14385
+ observer.observe(boxRef.value);
14386
+ onUnmounted(() => {
14387
+ observer.unobserve(boxRef.value);
14388
+ observer.disconnect();
14389
+ });
14390
+ }
14391
+ });
14392
+ return {
14393
+ boxRef,
14394
+ textRef,
14395
+ isShowTips,
14396
+ contentText,
14397
+ textProps
14398
+ };
14399
+ },
14400
+ render() {
14401
+ return createVNode("div", {
14402
+ "ref": "boxRef",
14403
+ "class": "position-relative"
14404
+ }, [createVNode(BkPopover, {
14405
+ "disabled": this.type === "title"
14406
+ }, {
14407
+ default: () => createVNode("div", mergeProps({
14408
+ "ref": "textRef",
14409
+ "class": "text-ov"
14410
+ }, this.textProps), [this.contentText]),
14411
+ content: () => this.contentText
14412
+ })]);
14413
+ }
14414
+ });
14415
+ const overflowTitle = {
14416
+ mounted(el, { value = {} }) {
14417
+ const { clientWidth } = el.parentElement;
14418
+ if (!clientWidth) {
14419
+ return;
14420
+ }
14421
+ const { content, calType = "dom" } = value;
14422
+ const text = content || el.innerText;
14423
+ let textWidth = 0;
14424
+ if (calType === "dom") {
14425
+ textWidth = getActualWidthByDom(el.textContent, null, el.parentElement);
14426
+ } else {
14427
+ const { fontSize, fontFamily } = getComputedStyle(el);
14428
+ textWidth = getActualWidthByCanvas(text, { fontSize, fontFamily });
14429
+ }
14430
+ if (textWidth > clientWidth) {
14431
+ el.setAttribute("title", text);
14432
+ }
14433
+ }
14434
+ };
14435
+ const BkOverflowTitle = withInstall(OverflowTitle);
14436
+ var _populated = false;
14437
+ var _ie, _firefox, _opera, _webkit, _chrome;
14438
+ var _ie_real_version;
14439
+ var _osx, _windows, _linux, _android;
14440
+ var _win64;
14441
+ var _iphone, _ipad, _native;
14442
+ var _mobile;
14443
+ function _populate() {
14444
+ if (_populated) {
14445
+ return;
14446
+ }
14447
+ _populated = true;
14448
+ var uas = navigator.userAgent;
14449
+ var agent = /(?:MSIE.(\d+\.\d+))|(?:(?:Firefox|GranParadiso|Iceweasel).(\d+\.\d+))|(?:Opera(?:.+Version.|.)(\d+\.\d+))|(?:AppleWebKit.(\d+(?:\.\d+)?))|(?:Trident\/\d+\.\d+.*rv:(\d+\.\d+))/.exec(uas);
14450
+ var os = /(Mac OS X)|(Windows)|(Linux)/.exec(uas);
14451
+ _iphone = /\b(iPhone|iP[ao]d)/.exec(uas);
14452
+ _ipad = /\b(iP[ao]d)/.exec(uas);
14453
+ _android = /Android/i.exec(uas);
14454
+ _native = /FBAN\/\w+;/i.exec(uas);
14455
+ _mobile = /Mobile/i.exec(uas);
14456
+ _win64 = !!/Win64/.exec(uas);
14457
+ if (agent) {
14458
+ _ie = agent[1] ? parseFloat(agent[1]) : agent[5] ? parseFloat(agent[5]) : NaN;
14459
+ if (_ie && document && document.documentMode) {
14460
+ _ie = document.documentMode;
14461
+ }
14462
+ var trident = /(?:Trident\/(\d+.\d+))/.exec(uas);
14463
+ _ie_real_version = trident ? parseFloat(trident[1]) + 4 : _ie;
14464
+ _firefox = agent[2] ? parseFloat(agent[2]) : NaN;
14465
+ _opera = agent[3] ? parseFloat(agent[3]) : NaN;
14466
+ _webkit = agent[4] ? parseFloat(agent[4]) : NaN;
14467
+ if (_webkit) {
14468
+ agent = /(?:Chrome\/(\d+\.\d+))/.exec(uas);
14469
+ _chrome = agent && agent[1] ? parseFloat(agent[1]) : NaN;
14470
+ } else {
14471
+ _chrome = NaN;
14472
+ }
14473
+ } else {
14474
+ _ie = _firefox = _opera = _chrome = _webkit = NaN;
14475
+ }
14476
+ if (os) {
14477
+ if (os[1]) {
14478
+ var ver = /(?:Mac OS X (\d+(?:[._]\d+)?))/.exec(uas);
14479
+ _osx = ver ? parseFloat(ver[1].replace("_", ".")) : true;
14480
+ } else {
14481
+ _osx = false;
14482
+ }
14483
+ _windows = !!os[2];
14484
+ _linux = !!os[3];
14485
+ } else {
14486
+ _osx = _windows = _linux = false;
14487
+ }
14488
+ }
14489
+ var UserAgent_DEPRECATED$1 = {
14490
+ ie: function() {
14491
+ return _populate() || _ie;
14492
+ },
14493
+ ieCompatibilityMode: function() {
14494
+ return _populate() || _ie_real_version > _ie;
14495
+ },
14496
+ ie64: function() {
14497
+ return UserAgent_DEPRECATED$1.ie() && _win64;
14498
+ },
14499
+ firefox: function() {
14500
+ return _populate() || _firefox;
14501
+ },
14502
+ opera: function() {
14503
+ return _populate() || _opera;
14504
+ },
14505
+ webkit: function() {
14506
+ return _populate() || _webkit;
14507
+ },
14508
+ safari: function() {
14509
+ return UserAgent_DEPRECATED$1.webkit();
14510
+ },
14511
+ chrome: function() {
14512
+ return _populate() || _chrome;
14513
+ },
14514
+ windows: function() {
14515
+ return _populate() || _windows;
14516
+ },
14517
+ osx: function() {
14518
+ return _populate() || _osx;
14519
+ },
14520
+ linux: function() {
14521
+ return _populate() || _linux;
14522
+ },
14523
+ iphone: function() {
14524
+ return _populate() || _iphone;
14525
+ },
14526
+ mobile: function() {
14527
+ return _populate() || (_iphone || _ipad || _android || _mobile);
14528
+ },
14529
+ nativeApp: function() {
14530
+ return _populate() || _native;
14531
+ },
14532
+ android: function() {
14533
+ return _populate() || _android;
14534
+ },
14535
+ ipad: function() {
14536
+ return _populate() || _ipad;
14537
+ }
14538
+ };
14539
+ var UserAgent_DEPRECATED_1 = UserAgent_DEPRECATED$1;
14540
+ var canUseDOM = !!(typeof window !== "undefined" && window.document && window.document.createElement);
14541
+ var ExecutionEnvironment$1 = {
14542
+ canUseDOM,
14543
+ canUseWorkers: typeof Worker !== "undefined",
14544
+ canUseEventListeners: canUseDOM && !!(window.addEventListener || window.attachEvent),
14545
+ canUseViewport: canUseDOM && !!window.screen,
14546
+ isInWorker: !canUseDOM
14547
+ };
14548
+ var ExecutionEnvironment_1 = ExecutionEnvironment$1;
14549
+ var ExecutionEnvironment = ExecutionEnvironment_1;
14550
+ var useHasFeature;
14551
+ if (ExecutionEnvironment.canUseDOM) {
14552
+ useHasFeature = document.implementation && document.implementation.hasFeature && document.implementation.hasFeature("", "") !== true;
14553
+ }
14554
+ /**
14555
+ * Checks if an event is supported in the current execution environment.
14556
+ *
14557
+ * NOTE: This will not work correctly for non-generic events such as `change`,
14558
+ * `reset`, `load`, `error`, and `select`.
14559
+ *
14560
+ * Borrows from Modernizr.
14561
+ *
14562
+ * @param {string} eventNameSuffix Event name, e.g. "click".
14563
+ * @param {?boolean} capture Check if the capture phase is supported.
14564
+ * @return {boolean} True if the event is supported.
14565
+ * @internal
14566
+ * @license Modernizr 3.0.0pre (Custom Build) | MIT
14567
+ */
14568
+ function isEventSupported$1(eventNameSuffix, capture) {
14569
+ if (!ExecutionEnvironment.canUseDOM || capture && !("addEventListener" in document)) {
14570
+ return false;
14571
+ }
14572
+ var eventName = "on" + eventNameSuffix;
14573
+ var isSupported = eventName in document;
14574
+ if (!isSupported) {
14575
+ var element = document.createElement("div");
14576
+ element.setAttribute(eventName, "return;");
14577
+ isSupported = typeof element[eventName] === "function";
14578
+ }
14579
+ if (!isSupported && useHasFeature && eventNameSuffix === "wheel") {
14580
+ isSupported = document.implementation.hasFeature("Events.wheel", "3.0");
14581
+ }
14582
+ return isSupported;
14583
+ }
14584
+ var isEventSupported_1 = isEventSupported$1;
14585
+ var UserAgent_DEPRECATED = UserAgent_DEPRECATED_1;
14586
+ var isEventSupported = isEventSupported_1;
14587
+ var PIXEL_STEP = 10;
14588
+ var LINE_HEIGHT$1 = 40;
14589
+ var PAGE_HEIGHT = 800;
14590
+ function normalizeWheel$1(event) {
14591
+ var sX = 0, sY = 0, pX = 0, pY = 0;
14592
+ if ("detail" in event) {
14593
+ sY = event.detail;
14594
+ }
14595
+ if ("wheelDelta" in event) {
14596
+ sY = -event.wheelDelta / 120;
14597
+ }
14598
+ if ("wheelDeltaY" in event) {
14599
+ sY = -event.wheelDeltaY / 120;
14600
+ }
14601
+ if ("wheelDeltaX" in event) {
14602
+ sX = -event.wheelDeltaX / 120;
14603
+ }
14604
+ if ("axis" in event && event.axis === event.HORIZONTAL_AXIS) {
14605
+ sX = sY;
14606
+ sY = 0;
14607
+ }
14608
+ pX = sX * PIXEL_STEP;
14609
+ pY = sY * PIXEL_STEP;
14610
+ if ("deltaY" in event) {
14611
+ pY = event.deltaY;
14612
+ }
14613
+ if ("deltaX" in event) {
14614
+ pX = event.deltaX;
14615
+ }
14616
+ if ((pX || pY) && event.deltaMode) {
14617
+ if (event.deltaMode == 1) {
14618
+ pX *= LINE_HEIGHT$1;
14619
+ pY *= LINE_HEIGHT$1;
14620
+ } else {
14621
+ pX *= PAGE_HEIGHT;
14622
+ pY *= PAGE_HEIGHT;
14623
+ }
14624
+ }
14625
+ if (pX && !sX) {
14626
+ sX = pX < 1 ? -1 : 1;
14627
+ }
14628
+ if (pY && !sY) {
14629
+ sY = pY < 1 ? -1 : 1;
14630
+ }
14631
+ return {
14632
+ spinX: sX,
14633
+ spinY: sY,
14634
+ pixelX: pX,
14635
+ pixelY: pY
14636
+ };
14637
+ }
14638
+ normalizeWheel$1.getEventType = function() {
14639
+ return UserAgent_DEPRECATED.firefox() ? "DOMMouseScroll" : isEventSupported("wheel") ? "wheel" : "mousewheel";
14640
+ };
14641
+ var normalizeWheel_1 = normalizeWheel$1;
14642
+ var normalizeWheel = normalizeWheel_1;
14643
+ const isFirefox = typeof navigator !== "undefined" && navigator.userAgent.toLowerCase().indexOf("firefox") > -1;
14644
+ const mousewheelHandler = function(element, callback) {
14645
+ if (element == null ? void 0 : element.addEventListener) {
14646
+ element.addEventListener(isFirefox ? "DOMMouseScroll" : "mousewheel", function(e) {
14647
+ const normalized = normalizeWheel(e);
14648
+ callback == null ? void 0 : callback.apply(this, [e, normalized]);
14649
+ });
14650
+ }
14651
+ };
14652
+ const mousewheel = {
14653
+ beforeMount(el, binding) {
14654
+ console.error(el, binding);
14655
+ mousewheelHandler(el, binding.value);
14656
+ }
14657
+ };
14658
+ const nodeList = /* @__PURE__ */ new Map();
14659
+ const tooltips = {
14660
+ beforeMount(el, binding) {
14661
+ const opts = getOpts(binding);
14662
+ const { trigger } = opts;
14663
+ const popper2 = renderContent(opts);
14664
+ let delayTimeout = null;
14665
+ if (trigger === "hover") {
14666
+ let hideTimeout = null;
14667
+ el.addEventListener("mouseenter", () => {
14668
+ delayTimeout = setTimeout(() => {
14669
+ show(el);
14670
+ clearTimeout(hideTimeout);
14671
+ clearTimeout(delayTimeout);
14672
+ }, opts.delay);
14673
+ });
14674
+ popper2.addEventListener("mouseenter", () => {
14675
+ clearTimeout(hideTimeout);
14676
+ });
14677
+ el.addEventListener("mouseleave", () => {
14678
+ clearTimeout(delayTimeout);
14679
+ hideTimeout = setTimeout(() => {
14680
+ hide(el);
14681
+ }, 100);
14682
+ });
14683
+ el.addEventListener("click", () => {
14684
+ hide(el);
14685
+ });
14686
+ popper2.addEventListener("mouseleave", () => {
14687
+ clearTimeout(delayTimeout);
14688
+ hideTimeout = setTimeout(() => {
14689
+ hide(el);
14690
+ }, 100);
14691
+ });
14692
+ } else if (trigger === "click") {
14693
+ document.body.addEventListener("click", (event) => {
14694
+ if (el.contains(event.target) && !popper2.hasAttribute("data-show")) {
14695
+ delayTimeout = setTimeout(() => {
14696
+ show(el);
14697
+ clearTimeout(delayTimeout);
14698
+ }, opts.delay);
14699
+ } else if (popper2.hasAttribute("data-show")) {
14700
+ hide(el);
14701
+ }
14702
+ });
14703
+ }
14704
+ nodeList.set(el, {
14705
+ opts,
14706
+ popper: popper2,
14707
+ popperInstance: null
14708
+ });
14709
+ },
14710
+ updated(el, binding) {
14711
+ nodeList.get(el).opts = getOpts(binding);
14712
+ },
14713
+ unmounted(el) {
14714
+ hide(el);
14715
+ nodeList.delete(el);
14716
+ }
14717
+ };
14718
+ function initOptions() {
14719
+ const defaultOpts = {
14720
+ arrow: true,
14721
+ disabled: false,
14722
+ trigger: "hover",
14723
+ theme: "dark",
14724
+ content: "",
14725
+ showOnInit: false,
14726
+ placement: "top",
14727
+ distance: 8,
14728
+ extCls: "",
14729
+ delay: 0,
14730
+ onShow: () => {
14731
+ },
14732
+ onHide: () => {
14733
+ }
14734
+ };
14735
+ return defaultOpts;
14736
+ }
14737
+ function getOpts(binding) {
14738
+ const opts = initOptions();
14739
+ if (typeof binding.value === "object") {
14740
+ Object.assign(opts, binding.value);
14741
+ } else {
14742
+ opts.content = binding.value;
14743
+ }
14744
+ return opts;
14745
+ }
14746
+ function renderContent(opts) {
14747
+ const { content: value, arrow: hasArrow, theme, extCls } = opts;
14748
+ const isLight = theme === "light";
14749
+ const zIndex = bkZIndexManager.getPopperIndex();
14750
+ const content = document.createElement("div");
14751
+ content.className = `${resolveClassName("popper")} ${isLight ? "light" : "dark"} ${extCls}`;
14752
+ content.innerText = value;
14753
+ content.style.zIndex = String(zIndex);
14754
+ if (hasArrow) {
14755
+ const arrow2 = renderArrow();
14756
+ content.appendChild(arrow2);
14757
+ }
14758
+ return content;
14759
+ }
14760
+ function renderArrow() {
14761
+ const arrow2 = document.createElement("div");
14762
+ arrow2.className = resolveClassName("popper-arrow");
14763
+ arrow2.setAttribute("data-popper-arrow", "");
14764
+ return arrow2;
14765
+ }
14766
+ function createPopperInstance(el, popper2) {
14767
+ const { opts } = nodeList.get(el);
14768
+ const { placement, distance: distance2, showOnInit } = opts;
14769
+ const popperInstance = createPopper(el, popper2, {
14770
+ placement,
14771
+ modifiers: [
14772
+ {
14773
+ name: "offset",
14774
+ options: {
14775
+ offset: [0, distance2]
14776
+ }
14777
+ }
14778
+ ]
14779
+ });
14780
+ if (showOnInit)
14781
+ show(el);
14782
+ return popperInstance;
14783
+ }
14784
+ function show(el) {
14785
+ const { popper: popper2, opts } = nodeList.get(el);
14786
+ const { disabled, content, arrow: hasArrow, onShow } = opts;
14787
+ if (disabled)
14788
+ return;
14789
+ popper2.innerText = content;
14790
+ if (hasArrow) {
14791
+ const arrow2 = renderArrow();
14792
+ popper2.appendChild(arrow2);
14793
+ }
14794
+ document.body.appendChild(popper2);
14795
+ const popperInstance = createPopperInstance(el, popper2);
14796
+ onShow();
14797
+ popper2.setAttribute("data-show", "");
14798
+ popperInstance.setOptions((options) => __spreadProps(__spreadValues({}, options), {
14799
+ modifiers: [
14800
+ ...options.modifiers,
14801
+ { name: "eventListeners", enabled: true }
14802
+ ]
14803
+ }));
14804
+ popperInstance.forceUpdate();
14805
+ nodeList.get(el).popperInstance = popperInstance;
14806
+ }
14807
+ function hide(el) {
14808
+ if (!nodeList.get(el))
14809
+ return;
14810
+ const { popper: popper2, popperInstance, opts } = nodeList.get(el);
14811
+ const { onHide } = opts;
14812
+ if (popper2 && document.body.contains(popper2)) {
14813
+ popper2.removeAttribute("data-show");
14814
+ popperInstance == null ? void 0 : popperInstance.destroy();
14815
+ document.body.removeChild(popper2);
14816
+ onHide();
14817
+ }
14818
+ }
14819
+ const resolveOptions = (el, binding) => {
14820
+ const options = {
14821
+ content: "",
14822
+ target: el
14823
+ };
14824
+ if (typeof binding.value === "object") {
14825
+ Object.assign(options, binding.value);
14826
+ } else {
14827
+ options.content = binding.value;
14828
+ }
14829
+ return options;
14830
+ };
14831
+ const createInstance = (el, binding) => {
14832
+ let instance = null;
14833
+ let createTimer = null;
14834
+ let hidePopTimer = null;
14835
+ const options = resolveOptions(el, binding);
14836
+ const { disabled } = options;
14837
+ if (disabled || instance) {
14838
+ return;
14839
+ }
14840
+ const handleContentEnter = () => {
14841
+ hidePopTimer && clearTimeout(hidePopTimer);
14842
+ hidePopTimer = null;
14843
+ };
14844
+ const handleContentLeave = () => {
14845
+ if (createTimer) {
14846
+ clearTimeout(createTimer);
14847
+ }
14848
+ instance == null ? void 0 : instance.hide();
14849
+ instance == null ? void 0 : instance.close();
14850
+ instance = null;
14851
+ };
14852
+ const handleMouseEnter = () => {
14853
+ createTimer && clearTimeout(createTimer);
14854
+ createTimer = setTimeout(() => {
14855
+ const targetOptions = resolveOptions(el, binding);
14856
+ targetOptions.content = targetOptions.content || el.innerHTML;
14857
+ Object.assign(targetOptions, {
14858
+ onContentMouseenter: handleContentEnter,
14859
+ onContentMouseleave: handleContentLeave
14860
+ });
14861
+ instance = createPopoverComponent(targetOptions);
14862
+ setTimeout(() => {
14863
+ instance.show();
14864
+ });
14865
+ }, 100);
14866
+ };
14867
+ const handleMouseLeave = () => {
14868
+ hidePopTimer = setTimeout(() => {
14869
+ if (createTimer) {
14870
+ clearTimeout(createTimer);
14871
+ }
14872
+ instance == null ? void 0 : instance.hide();
14873
+ instance == null ? void 0 : instance.close();
14874
+ instance = null;
14875
+ }, 120);
14876
+ };
14877
+ el.addEventListener("mouseenter", handleMouseEnter);
14878
+ el.addEventListener("mouseleave", handleMouseLeave);
14879
+ Object.assign(binding, {
14880
+ __cached: {
14881
+ handleMouseEnter,
14882
+ handleMouseLeave
14883
+ }
14884
+ });
14885
+ const destroyInstance = (element) => {
14886
+ var _a, _b;
14887
+ handleMouseLeave();
14888
+ (_a = element != null ? element : el) == null ? void 0 : _a.removeEventListener("mouseenter", handleMouseEnter);
14889
+ (_b = element != null ? element : el) == null ? void 0 : _b.removeEventListener("mouseleave", handleMouseLeave);
14890
+ };
14891
+ return {
14892
+ destroyInstance,
14893
+ instance
14894
+ };
14895
+ };
14896
+ const ellipsis = {
14897
+ mounted(el, binding) {
14898
+ createInstance(el, binding);
14899
+ },
14900
+ beforeUnmount(el, binding) {
14901
+ if (binding.__cached) {
14902
+ const { handleMouseEnter, handleMouseLeave } = binding.__cached;
14903
+ el.removeEventListener("mouseenter", handleMouseEnter);
14904
+ el.removeEventListener("mouseleave", handleMouseLeave);
14905
+ binding.__cached = null;
14906
+ }
14907
+ }
14908
+ };
14910
14909
  const EventProps = {
14911
14910
  onContentScroll: Function
14912
14911
  };
@@ -16074,7 +16073,7 @@ var Component$j = defineComponent({
16074
16073
  };
16075
16074
  return createVNode("div", {
16076
16075
  "class": selectClass
16077
- }, [createVNode(Popover, mergeProps(this.popoverConfig, {
16076
+ }, [createVNode(BkPopover, mergeProps(this.popoverConfig, {
16078
16077
  "onClickoutside": this.handleClickOutside,
16079
16078
  "onAfterShow": this.handlePopoverShow,
16080
16079
  "ref": "popoverRef"
@@ -17138,7 +17137,7 @@ var useSmallList = () => {
17138
17137
  "is-disabled": isPagePreDisabled.value
17139
17138
  },
17140
17139
  "onClick": handlePrePage
17141
- }, [createVNode(angleLeft, null, null)]), createVNode(Popover, {
17140
+ }, [createVNode(angleLeft, null, null)]), createVNode(BkPopover, {
17142
17141
  "theme": "light",
17143
17142
  "trigger": "click",
17144
17143
  "arrow": false,
@@ -18366,7 +18365,7 @@ var HeadFilter = defineComponent({
18366
18365
  "class": "list-item is-empty"
18367
18366
  }, [createTextVNode("\u6682\u65E0\u6570\u636E")]);
18368
18367
  };
18369
- return () => createVNode(Popover, mergeProps({
18368
+ return () => createVNode(BkPopover, mergeProps({
18370
18369
  "trigger": "click",
18371
18370
  "isShow": state.isOpen,
18372
18371
  "placement": "bottom-start",
@@ -18592,7 +18591,7 @@ var Settings = defineComponent({
18592
18591
  immediate: true,
18593
18592
  deep: true
18594
18593
  });
18595
- return () => props2.settings ? createVNode(Popover, mergeProps({
18594
+ return () => props2.settings ? createVNode(BkPopover, mergeProps({
18596
18595
  "trigger": "manual",
18597
18596
  "isShow": isShow.value,
18598
18597
  "placement": "bottom-end",
@@ -21177,7 +21176,7 @@ var Component$d = defineComponent({
21177
21176
  "onClick": this.focusInputTrigger,
21178
21177
  "onMouseenter": () => this.isHover = true,
21179
21178
  "onMouseleave": () => this.isHover = false
21180
- }, [createVNode(Popover, mergeProps({
21179
+ }, [createVNode(BkPopover, mergeProps({
21181
21180
  "theme": "light bk-tag-input-popover-content",
21182
21181
  "trigger": "manual",
21183
21182
  "placement": "bottom-start",
@@ -30261,7 +30260,7 @@ var Dropdown = defineComponent({
30261
30260
  const popoverOptions = lodash.exports.merge(basePopoverOptions, this.popoverOptions);
30262
30261
  return createVNode("div", {
30263
30262
  "class": wrapperClasses
30264
- }, [createVNode(Popover, mergeProps({
30263
+ }, [createVNode(BkPopover, mergeProps({
30265
30264
  "ref": "popoverRef"
30266
30265
  }, popoverOptions, {
30267
30266
  "onAfterShow": this.afterShow,
@@ -30706,7 +30705,7 @@ var Component$7 = defineComponent({
30706
30705
  },
30707
30706
  components: {
30708
30707
  CascaderPanel,
30709
- BkPopover: Popover
30708
+ BkPopover
30710
30709
  },
30711
30710
  props: {
30712
30711
  modelValue: PropTypes.arrayOf(PropTypes.oneOfType([q(), String, Number])),
@@ -30899,7 +30898,7 @@ var Component$7 = defineComponent({
30899
30898
  "data-placeholder": this.placeholder,
30900
30899
  "onMouseenter": this.setHover,
30901
30900
  "onMouseleave": this.cancelHover
30902
- }, [suffixIcon(), createVNode(Popover, {
30901
+ }, [suffixIcon(), createVNode(BkPopover, {
30903
30902
  "placement": "bottom-start",
30904
30903
  "theme": "light bk-cascader-popover",
30905
30904
  "trigger": "click",
@@ -31073,7 +31072,7 @@ var SliderButton = defineComponent({
31073
31072
  "style": wrapperStyle.value,
31074
31073
  "onClick": (event) => event.stopPropagation(),
31075
31074
  "onMousedown": onButtonDown
31076
- }, [Boolean(tip.value.content) ? createVNode(Popover, {
31075
+ }, [Boolean(tip.value.content) ? createVNode(BkPopover, {
31077
31076
  "content": tip.value.content,
31078
31077
  "theme": "dark",
31079
31078
  "placement": tip.value.placement,
@@ -39069,7 +39068,7 @@ var SearchSelectInput = defineComponent({
39069
39068
  "onFooterClick": this.handleMenuFooterClick
39070
39069
  }, __spreadValues({}, menuSlots))]) : void 0;
39071
39070
  };
39072
- return createVNode(Popover, {
39071
+ return createVNode(BkPopover, {
39073
39072
  "trigger": "manual",
39074
39073
  "theme": "light",
39075
39074
  "placement": "bottom-start",
@@ -39502,7 +39501,7 @@ var components = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProp
39502
39501
  Link: BkLink,
39503
39502
  Loading: BkLoading,
39504
39503
  Modal: BkModal,
39505
- Popover,
39504
+ Popover: BkPopover,
39506
39505
  Popover2: BkPopover2,
39507
39506
  Progress: BkProgress,
39508
39507
  Radio: BkRadio,
@@ -39561,4 +39560,4 @@ var preset = {
39561
39560
  install: createInstall(),
39562
39561
  version: "0.0.1"
39563
39562
  };
39564
- export { createPopoverComponent as $bkPopover, BkAffix as Affix, BkAlert as Alert, BkAnimateNumber as AnimateNumber, BkBacktop as Backtop, BkBadge as Badge, BkBreadcrumb as Breadcrumb, BkButton as Button, BkCard as Card, BkCascader as Cascader, BkCheckbox as Checkbox, BkCodeDiff as CodeDiff, BkCollapse as Collapse, BkColorPicker as ColorPicker, BkContainer as Container, BkDatePicker as DatePicker, BkDialog as Dialog, BkDivider as Divider, BkDropdown as Dropdown, BkException as Exception, BkFixedNavbar as FixedNavbar, BkForm as Form, BkInfoBox as InfoBox, BkInput as Input, BkLink as Link, BkLoading as Loading, BkMenu as Menu, Message, BkModal as Modal, Navigation, Notify, BkOverflowTitle as OverflowTitle, BkPagination as Pagination, Popover, BkPopover2 as Popover2, BkProcess as Process, BkProgress as Progress, BkRadio as Radio, BkRate as Rate, BkResizeLayout as ResizeLayout, BkSearchSelect as SearchSelect, BkSelect as Select, BkSideslider as Sideslider, Slider, BkSteps as Steps, BkSwiper as Swiper, BkSwitcher as Switcher, BkTab as Tab, BkTable as Table, BkTableColumn as TableColumn, BkTag as Tag, TagInput, BkTimeline as TimeLine, BkTimePicker as TimePicker, Transfer, BkTree as Tree, Upload, BkVirtualRender as VirtualRender, ellipsis as bkEllipsis, createInstance as bkEllipsisInstance, tooltips as bkTooltips, ClickOutside as clickoutside, BkContainer as containerProps, preset as default, mousewheel, overflowTitle };
39563
+ export { createPopoverComponent as $bkPopover, BkAffix as Affix, BkAlert as Alert, BkAnimateNumber as AnimateNumber, BkBacktop as Backtop, BkBadge as Badge, BkBreadcrumb as Breadcrumb, BkButton as Button, BkCard as Card, BkCascader as Cascader, BkCheckbox as Checkbox, BkCodeDiff as CodeDiff, BkCollapse as Collapse, BkColorPicker as ColorPicker, BkContainer as Container, BkDatePicker as DatePicker, BkDialog as Dialog, BkDivider as Divider, BkDropdown as Dropdown, BkException as Exception, BkFixedNavbar as FixedNavbar, BkForm as Form, BkInfoBox as InfoBox, BkInput as Input, BkLink as Link, BkLoading as Loading, BkMenu as Menu, Message, BkModal as Modal, Navigation, Notify, BkOverflowTitle as OverflowTitle, BkPagination as Pagination, BkPopover as Popover, BkPopover2 as Popover2, BkProcess as Process, BkProgress as Progress, BkRadio as Radio, BkRate as Rate, BkResizeLayout as ResizeLayout, BkSearchSelect as SearchSelect, BkSelect as Select, BkSideslider as Sideslider, Slider, BkSteps as Steps, BkSwiper as Swiper, BkSwitcher as Switcher, BkTab as Tab, BkTable as Table, BkTableColumn as TableColumn, BkTag as Tag, TagInput, BkTimeline as TimeLine, BkTimePicker as TimePicker, Transfer, BkTree as Tree, Upload, BkVirtualRender as VirtualRender, ellipsis as bkEllipsis, createInstance as bkEllipsisInstance, tooltips as bkTooltips, ClickOutside as clickoutside, BkContainer as containerProps, preset as default, mousewheel, overflowTitle };