cleek 2.3.51 → 2.3.52

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.
package/dist/cleek.es.js CHANGED
@@ -17,7 +17,2662 @@ var __spreadValues = (a, b) => {
17
17
  return a;
18
18
  };
19
19
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
- import { defineComponent, ref, computed as computed$2, openBlock, createElementBlock, normalizeClass, unref as unref$1, createElementVNode, renderSlot, createCommentVNode, normalizeStyle, watch, h, createBlock, Teleport, createVNode, createTextVNode, toDisplayString, withCtx, onMounted, nextTick as nextTick$1, onBeforeUnmount, getCurrentInstance, withDirectives, isRef as isRef$1, vModelDynamic, Fragment, renderList, mergeProps, withKeys, withModifiers, pushScopeId, popScopeId, vModelRadio, vModelSelect, vModelCheckbox, vModelText } from "vue";
20
+ var __objRest = (source, exclude) => {
21
+ var target = {};
22
+ for (var prop in source)
23
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
+ target[prop] = source[prop];
25
+ if (source != null && __getOwnPropSymbols)
26
+ for (var prop of __getOwnPropSymbols(source)) {
27
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
+ target[prop] = source[prop];
29
+ }
30
+ return target;
31
+ };
32
+ import { pushScopeId, popScopeId, defineComponent, nextTick as nextTick$1, openBlock, createBlock, withScopeId, resolveComponent, createElementBlock, normalizeClass, normalizeStyle, withKeys, createElementVNode, Fragment, renderSlot, createCommentVNode, mergeProps, withCtx, createVNode, ref, createApp, h, toDisplayString, computed as computed$2, unref as unref$1, watch, Teleport, createTextVNode, onMounted, onBeforeUnmount, getCurrentInstance, withDirectives, isRef as isRef$1, vModelDynamic, renderList, withModifiers, vModelRadio, vModelSelect, vModelCheckbox, vModelText } from "vue";
33
+ function getBasePlacement$2(placement) {
34
+ return placement.split("-")[0];
35
+ }
36
+ function getAlignment(placement) {
37
+ return placement.split("-")[1];
38
+ }
39
+ function getMainAxisFromPlacement$1(placement) {
40
+ return ["top", "bottom"].includes(getBasePlacement$2(placement)) ? "x" : "y";
41
+ }
42
+ function getLengthFromAxis(axis) {
43
+ return axis === "y" ? "height" : "width";
44
+ }
45
+ function computeCoordsFromPlacement(_ref2) {
46
+ let {
47
+ reference: reference2,
48
+ floating,
49
+ placement
50
+ } = _ref2;
51
+ const commonX = reference2.x + reference2.width / 2 - floating.width / 2;
52
+ const commonY = reference2.y + reference2.height / 2 - floating.height / 2;
53
+ let coords;
54
+ switch (getBasePlacement$2(placement)) {
55
+ case "top":
56
+ coords = {
57
+ x: commonX,
58
+ y: reference2.y - floating.height
59
+ };
60
+ break;
61
+ case "bottom":
62
+ coords = {
63
+ x: commonX,
64
+ y: reference2.y + reference2.height
65
+ };
66
+ break;
67
+ case "right":
68
+ coords = {
69
+ x: reference2.x + reference2.width,
70
+ y: commonY
71
+ };
72
+ break;
73
+ case "left":
74
+ coords = {
75
+ x: reference2.x - floating.width,
76
+ y: commonY
77
+ };
78
+ break;
79
+ default:
80
+ coords = {
81
+ x: reference2.x,
82
+ y: reference2.y
83
+ };
84
+ }
85
+ const mainAxis = getMainAxisFromPlacement$1(placement);
86
+ const length = getLengthFromAxis(mainAxis);
87
+ switch (getAlignment(placement)) {
88
+ case "start":
89
+ coords[mainAxis] = coords[mainAxis] - (reference2[length] / 2 - floating[length] / 2);
90
+ break;
91
+ case "end":
92
+ coords[mainAxis] = coords[mainAxis] + (reference2[length] / 2 - floating[length] / 2);
93
+ break;
94
+ }
95
+ return coords;
96
+ }
97
+ const computePosition$1 = async (reference2, floating, config2) => {
98
+ const {
99
+ placement = "bottom",
100
+ strategy = "absolute",
101
+ middleware = [],
102
+ platform: platform2
103
+ } = config2;
104
+ let rects = await platform2.getElementRects({
105
+ reference: reference2,
106
+ floating,
107
+ strategy
108
+ });
109
+ let {
110
+ x,
111
+ y
112
+ } = computeCoordsFromPlacement(__spreadProps(__spreadValues({}, rects), {
113
+ placement
114
+ }));
115
+ let statefulPlacement = placement;
116
+ let middlewareData = {};
117
+ for (let i = 0; i < middleware.length; i++) {
118
+ const {
119
+ name,
120
+ fn: fn2
121
+ } = middleware[i];
122
+ const {
123
+ x: nextX,
124
+ y: nextY,
125
+ data,
126
+ reset
127
+ } = await fn2({
128
+ x,
129
+ y,
130
+ initialPlacement: placement,
131
+ placement: statefulPlacement,
132
+ strategy,
133
+ middlewareData,
134
+ rects,
135
+ platform: platform2,
136
+ elements: {
137
+ reference: reference2,
138
+ floating
139
+ }
140
+ });
141
+ x = nextX != null ? nextX : x;
142
+ y = nextY != null ? nextY : y;
143
+ middlewareData = __spreadProps(__spreadValues({}, middlewareData), {
144
+ [name]: data != null ? data : {}
145
+ });
146
+ if (reset) {
147
+ if (typeof reset === "object") {
148
+ if (reset.placement) {
149
+ statefulPlacement = reset.placement;
150
+ }
151
+ if (reset.rects) {
152
+ rects = reset.rects === true ? await platform2.getElementRects({
153
+ reference: reference2,
154
+ floating,
155
+ strategy
156
+ }) : reset.rects;
157
+ }
158
+ ({
159
+ x,
160
+ y
161
+ } = computeCoordsFromPlacement(__spreadProps(__spreadValues({}, rects), {
162
+ placement: statefulPlacement
163
+ })));
164
+ }
165
+ i = -1;
166
+ continue;
167
+ }
168
+ }
169
+ return {
170
+ x,
171
+ y,
172
+ placement: statefulPlacement,
173
+ strategy,
174
+ middlewareData
175
+ };
176
+ };
177
+ function expandPaddingObject(padding) {
178
+ return __spreadValues({
179
+ top: 0,
180
+ right: 0,
181
+ bottom: 0,
182
+ left: 0
183
+ }, padding);
184
+ }
185
+ function getSideObjectFromPadding(padding) {
186
+ return typeof padding !== "number" ? expandPaddingObject(padding) : {
187
+ top: padding,
188
+ right: padding,
189
+ bottom: padding,
190
+ left: padding
191
+ };
192
+ }
193
+ function rectToClientRect$1(rect) {
194
+ return __spreadProps(__spreadValues({}, rect), {
195
+ top: rect.y,
196
+ left: rect.x,
197
+ right: rect.x + rect.width,
198
+ bottom: rect.y + rect.height
199
+ });
200
+ }
201
+ async function detectOverflow$1(middlewareArguments, options) {
202
+ if (options === void 0) {
203
+ options = {};
204
+ }
205
+ const {
206
+ x,
207
+ y,
208
+ platform: platform2,
209
+ rects,
210
+ elements,
211
+ strategy
212
+ } = middlewareArguments;
213
+ const {
214
+ boundary = "clippingParents",
215
+ rootBoundary = "viewport",
216
+ elementContext = "floating",
217
+ altBoundary = false,
218
+ padding = 0
219
+ } = options;
220
+ const paddingObject = getSideObjectFromPadding(padding);
221
+ const altContext = elementContext === "floating" ? "reference" : "floating";
222
+ const element = elements[altBoundary ? altContext : elementContext];
223
+ const clippingClientRect = await platform2.getClippingClientRect({
224
+ element: await platform2.isElement(element) ? element : element.contextElement || await platform2.getDocumentElement({
225
+ element: elements.floating
226
+ }),
227
+ boundary,
228
+ rootBoundary
229
+ });
230
+ const elementClientRect = rectToClientRect$1(await platform2.convertOffsetParentRelativeRectToViewportRelativeRect({
231
+ rect: elementContext === "floating" ? __spreadProps(__spreadValues({}, rects.floating), {
232
+ x,
233
+ y
234
+ }) : rects.reference,
235
+ offsetParent: await platform2.getOffsetParent({
236
+ element: elements.floating
237
+ }),
238
+ strategy
239
+ }));
240
+ return {
241
+ top: clippingClientRect.top - elementClientRect.top + paddingObject.top,
242
+ bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,
243
+ left: clippingClientRect.left - elementClientRect.left + paddingObject.left,
244
+ right: elementClientRect.right - clippingClientRect.right + paddingObject.right
245
+ };
246
+ }
247
+ const min$2 = Math.min;
248
+ const max$2 = Math.max;
249
+ function within$1(min$12, value, max$12) {
250
+ return max$2(min$12, min$2(value, max$12));
251
+ }
252
+ const arrow$2 = (options) => ({
253
+ name: "arrow",
254
+ options,
255
+ async fn(middlewareArguments) {
256
+ const {
257
+ element,
258
+ padding = 0
259
+ } = options != null ? options : {};
260
+ const {
261
+ x,
262
+ y,
263
+ placement,
264
+ rects,
265
+ platform: platform2
266
+ } = middlewareArguments;
267
+ if (element == null) {
268
+ return {};
269
+ }
270
+ const paddingObject = getSideObjectFromPadding(padding);
271
+ const coords = {
272
+ x,
273
+ y
274
+ };
275
+ const basePlacement = getBasePlacement$2(placement);
276
+ const axis = getMainAxisFromPlacement$1(basePlacement);
277
+ const length = getLengthFromAxis(axis);
278
+ const arrowDimensions = await platform2.getDimensions({
279
+ element
280
+ });
281
+ const minProp = axis === "y" ? "top" : "left";
282
+ const maxProp = axis === "y" ? "bottom" : "right";
283
+ const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];
284
+ const startDiff = coords[axis] - rects.reference[axis];
285
+ const arrowOffsetParent = await platform2.getOffsetParent({
286
+ element
287
+ });
288
+ const clientSize = arrowOffsetParent ? axis === "y" ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;
289
+ const centerToReference = endDiff / 2 - startDiff / 2;
290
+ const min2 = paddingObject[minProp];
291
+ const max2 = clientSize - arrowDimensions[length] - paddingObject[maxProp];
292
+ const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;
293
+ const offset2 = within$1(min2, center, max2);
294
+ return {
295
+ data: {
296
+ [axis]: offset2,
297
+ centerOffset: center - offset2
298
+ }
299
+ };
300
+ }
301
+ });
302
+ const hash$1$1 = {
303
+ left: "right",
304
+ right: "left",
305
+ bottom: "top",
306
+ top: "bottom"
307
+ };
308
+ function getOppositePlacement$1(placement) {
309
+ return placement.replace(/left|right|bottom|top/g, (matched) => hash$1$1[matched]);
310
+ }
311
+ function getAlignmentSides(placement, rects) {
312
+ const isStart = getAlignment(placement) === "start";
313
+ const mainAxis = getMainAxisFromPlacement$1(placement);
314
+ const length = getLengthFromAxis(mainAxis);
315
+ let mainAlignmentSide = mainAxis === "x" ? isStart ? "right" : "left" : isStart ? "bottom" : "top";
316
+ if (rects.reference[length] > rects.floating[length]) {
317
+ mainAlignmentSide = getOppositePlacement$1(mainAlignmentSide);
318
+ }
319
+ return {
320
+ main: mainAlignmentSide,
321
+ cross: getOppositePlacement$1(mainAlignmentSide)
322
+ };
323
+ }
324
+ const hash$2 = {
325
+ start: "end",
326
+ end: "start"
327
+ };
328
+ function getOppositeAlignmentPlacement(placement) {
329
+ return placement.replace(/start|end/g, (matched) => hash$2[matched]);
330
+ }
331
+ const basePlacements$1 = ["top", "right", "bottom", "left"];
332
+ const allPlacements = /* @__PURE__ */ basePlacements$1.reduce((acc, basePlacement) => acc.concat(basePlacement, basePlacement + "-start", basePlacement + "-end"), []);
333
+ function getPlacementList(alignment, autoAlignment, allowedPlacements) {
334
+ const allowedPlacementsSortedByAlignment = alignment ? [...allowedPlacements.filter((placement) => getAlignment(placement) === alignment), ...allowedPlacements.filter((placement) => getAlignment(placement) !== alignment)] : allowedPlacements.filter((placement) => getBasePlacement$2(placement) === placement);
335
+ return allowedPlacementsSortedByAlignment.filter((placement) => {
336
+ if (alignment) {
337
+ return getAlignment(placement) === alignment || (autoAlignment ? getOppositeAlignmentPlacement(placement) !== placement : false);
338
+ }
339
+ return true;
340
+ });
341
+ }
342
+ const autoPlacement = function(options) {
343
+ if (options === void 0) {
344
+ options = {};
345
+ }
346
+ return {
347
+ name: "autoPlacement",
348
+ options,
349
+ async fn(middlewareArguments) {
350
+ var _middlewareData$autoP, _middlewareData$autoP2, _middlewareData$autoP3, _middlewareData$autoP4, _middlewareData$autoP5, _placementsSortedByLe;
351
+ const {
352
+ x,
353
+ y,
354
+ rects,
355
+ middlewareData,
356
+ placement
357
+ } = middlewareArguments;
358
+ const _a = options, {
359
+ alignment = null,
360
+ allowedPlacements = allPlacements,
361
+ autoAlignment = true
362
+ } = _a, detectOverflowOptions = __objRest(_a, [
363
+ "alignment",
364
+ "allowedPlacements",
365
+ "autoAlignment"
366
+ ]);
367
+ if ((_middlewareData$autoP = middlewareData.autoPlacement) != null && _middlewareData$autoP.skip) {
368
+ return {};
369
+ }
370
+ const placements2 = getPlacementList(alignment, autoAlignment, allowedPlacements);
371
+ const overflow = await detectOverflow$1(middlewareArguments, detectOverflowOptions);
372
+ const currentIndex = (_middlewareData$autoP2 = (_middlewareData$autoP3 = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP3.index) != null ? _middlewareData$autoP2 : 0;
373
+ const currentPlacement = placements2[currentIndex];
374
+ const {
375
+ main: main2,
376
+ cross
377
+ } = getAlignmentSides(currentPlacement, rects);
378
+ if (placement !== currentPlacement) {
379
+ return {
380
+ x,
381
+ y,
382
+ reset: {
383
+ placement: placements2[0]
384
+ }
385
+ };
386
+ }
387
+ const currentOverflows = [overflow[getBasePlacement$2(currentPlacement)], overflow[main2], overflow[cross]];
388
+ const allOverflows = [...(_middlewareData$autoP4 = (_middlewareData$autoP5 = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP5.overflows) != null ? _middlewareData$autoP4 : [], {
389
+ placement: currentPlacement,
390
+ overflows: currentOverflows
391
+ }];
392
+ const nextPlacement = placements2[currentIndex + 1];
393
+ if (nextPlacement) {
394
+ return {
395
+ data: {
396
+ index: currentIndex + 1,
397
+ overflows: allOverflows
398
+ },
399
+ reset: {
400
+ placement: nextPlacement
401
+ }
402
+ };
403
+ }
404
+ const placementsSortedByLeastOverflow = allOverflows.slice().sort((a, b) => a.overflows[0] - b.overflows[0]);
405
+ const placementThatFitsOnAllSides = (_placementsSortedByLe = placementsSortedByLeastOverflow.find((_ref2) => {
406
+ let {
407
+ overflows
408
+ } = _ref2;
409
+ return overflows.every((overflow2) => overflow2 <= 0);
410
+ })) == null ? void 0 : _placementsSortedByLe.placement;
411
+ return {
412
+ data: {
413
+ skip: true
414
+ },
415
+ reset: {
416
+ placement: placementThatFitsOnAllSides != null ? placementThatFitsOnAllSides : placementsSortedByLeastOverflow[0].placement
417
+ }
418
+ };
419
+ }
420
+ };
421
+ };
422
+ function getExpandedPlacements(placement) {
423
+ const oppositePlacement = getOppositePlacement$1(placement);
424
+ return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];
425
+ }
426
+ const flip$2 = function(options) {
427
+ if (options === void 0) {
428
+ options = {};
429
+ }
430
+ return {
431
+ name: "flip",
432
+ options,
433
+ async fn(middlewareArguments) {
434
+ var _middlewareData$flip, _middlewareData$flip2;
435
+ const {
436
+ placement,
437
+ middlewareData,
438
+ rects,
439
+ initialPlacement
440
+ } = middlewareArguments;
441
+ if ((_middlewareData$flip = middlewareData.flip) != null && _middlewareData$flip.skip) {
442
+ return {};
443
+ }
444
+ const _a = options, {
445
+ mainAxis: checkMainAxis = true,
446
+ crossAxis: checkCrossAxis = true,
447
+ fallbackPlacements: specifiedFallbackPlacements,
448
+ fallbackStrategy = "bestFit",
449
+ flipAlignment = true
450
+ } = _a, detectOverflowOptions = __objRest(_a, [
451
+ "mainAxis",
452
+ "crossAxis",
453
+ "fallbackPlacements",
454
+ "fallbackStrategy",
455
+ "flipAlignment"
456
+ ]);
457
+ const basePlacement = getBasePlacement$2(placement);
458
+ const isBasePlacement = basePlacement === initialPlacement;
459
+ const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement$1(initialPlacement)] : getExpandedPlacements(initialPlacement));
460
+ const placements2 = [initialPlacement, ...fallbackPlacements];
461
+ const overflow = await detectOverflow$1(middlewareArguments, detectOverflowOptions);
462
+ const overflows = [];
463
+ let overflowsData = ((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.overflows) || [];
464
+ if (checkMainAxis) {
465
+ overflows.push(overflow[basePlacement]);
466
+ }
467
+ if (checkCrossAxis) {
468
+ const {
469
+ main: main2,
470
+ cross
471
+ } = getAlignmentSides(placement, rects);
472
+ overflows.push(overflow[main2], overflow[cross]);
473
+ }
474
+ overflowsData = [...overflowsData, {
475
+ placement,
476
+ overflows
477
+ }];
478
+ if (!overflows.every((side) => side <= 0)) {
479
+ var _middlewareData$flip$, _middlewareData$flip3;
480
+ const nextIndex = ((_middlewareData$flip$ = (_middlewareData$flip3 = middlewareData.flip) == null ? void 0 : _middlewareData$flip3.index) != null ? _middlewareData$flip$ : 0) + 1;
481
+ const nextPlacement = placements2[nextIndex];
482
+ if (nextPlacement) {
483
+ return {
484
+ data: {
485
+ index: nextIndex,
486
+ overflows: overflowsData
487
+ },
488
+ reset: {
489
+ placement: nextPlacement
490
+ }
491
+ };
492
+ }
493
+ let resetPlacement = "bottom";
494
+ switch (fallbackStrategy) {
495
+ case "bestFit": {
496
+ var _overflowsData$slice$;
497
+ const placement2 = (_overflowsData$slice$ = overflowsData.slice().sort((a, b) => a.overflows.filter((overflow2) => overflow2 > 0).reduce((acc, overflow2) => acc + overflow2, 0) - b.overflows.filter((overflow2) => overflow2 > 0).reduce((acc, overflow2) => acc + overflow2, 0))[0]) == null ? void 0 : _overflowsData$slice$.placement;
498
+ if (placement2) {
499
+ resetPlacement = placement2;
500
+ }
501
+ break;
502
+ }
503
+ case "initialPlacement":
504
+ resetPlacement = initialPlacement;
505
+ break;
506
+ }
507
+ return {
508
+ data: {
509
+ skip: true
510
+ },
511
+ reset: {
512
+ placement: resetPlacement
513
+ }
514
+ };
515
+ }
516
+ return {};
517
+ }
518
+ };
519
+ };
520
+ function convertValueToCoords(_ref2) {
521
+ let {
522
+ placement,
523
+ rects,
524
+ value
525
+ } = _ref2;
526
+ const basePlacement = getBasePlacement$2(placement);
527
+ const multiplier = ["left", "top"].includes(basePlacement) ? -1 : 1;
528
+ const rawValue = typeof value === "function" ? value(__spreadProps(__spreadValues({}, rects), {
529
+ placement
530
+ })) : value;
531
+ const {
532
+ mainAxis,
533
+ crossAxis
534
+ } = typeof rawValue === "number" ? {
535
+ mainAxis: rawValue,
536
+ crossAxis: 0
537
+ } : __spreadValues({
538
+ mainAxis: 0,
539
+ crossAxis: 0
540
+ }, rawValue);
541
+ return getMainAxisFromPlacement$1(basePlacement) === "x" ? {
542
+ x: crossAxis,
543
+ y: mainAxis * multiplier
544
+ } : {
545
+ x: mainAxis * multiplier,
546
+ y: crossAxis
547
+ };
548
+ }
549
+ const offset$2 = function(value) {
550
+ if (value === void 0) {
551
+ value = 0;
552
+ }
553
+ return {
554
+ name: "offset",
555
+ options: value,
556
+ fn(middlewareArguments) {
557
+ const {
558
+ x,
559
+ y,
560
+ placement,
561
+ rects
562
+ } = middlewareArguments;
563
+ const diffCoords = convertValueToCoords({
564
+ placement,
565
+ rects,
566
+ value
567
+ });
568
+ return {
569
+ x: x + diffCoords.x,
570
+ y: y + diffCoords.y,
571
+ data: diffCoords
572
+ };
573
+ }
574
+ };
575
+ };
576
+ function getCrossAxis(axis) {
577
+ return axis === "x" ? "y" : "x";
578
+ }
579
+ const shift = function(options) {
580
+ if (options === void 0) {
581
+ options = {};
582
+ }
583
+ return {
584
+ name: "shift",
585
+ options,
586
+ async fn(middlewareArguments) {
587
+ const {
588
+ x,
589
+ y,
590
+ placement
591
+ } = middlewareArguments;
592
+ const _a = options, {
593
+ mainAxis: checkMainAxis = true,
594
+ crossAxis: checkCrossAxis = false,
595
+ limiter = {
596
+ fn: (_ref2) => {
597
+ let {
598
+ x: x2,
599
+ y: y2
600
+ } = _ref2;
601
+ return {
602
+ x: x2,
603
+ y: y2
604
+ };
605
+ }
606
+ }
607
+ } = _a, detectOverflowOptions = __objRest(_a, [
608
+ "mainAxis",
609
+ "crossAxis",
610
+ "limiter"
611
+ ]);
612
+ const coords = {
613
+ x,
614
+ y
615
+ };
616
+ const overflow = await detectOverflow$1(middlewareArguments, detectOverflowOptions);
617
+ const mainAxis = getMainAxisFromPlacement$1(getBasePlacement$2(placement));
618
+ const crossAxis = getCrossAxis(mainAxis);
619
+ let mainAxisCoord = coords[mainAxis];
620
+ let crossAxisCoord = coords[crossAxis];
621
+ if (checkMainAxis) {
622
+ const minSide = mainAxis === "y" ? "top" : "left";
623
+ const maxSide = mainAxis === "y" ? "bottom" : "right";
624
+ const min2 = mainAxisCoord + overflow[minSide];
625
+ const max2 = mainAxisCoord - overflow[maxSide];
626
+ mainAxisCoord = within$1(min2, mainAxisCoord, max2);
627
+ }
628
+ if (checkCrossAxis) {
629
+ const minSide = crossAxis === "y" ? "top" : "left";
630
+ const maxSide = crossAxis === "y" ? "bottom" : "right";
631
+ const min2 = crossAxisCoord + overflow[minSide];
632
+ const max2 = crossAxisCoord - overflow[maxSide];
633
+ crossAxisCoord = within$1(min2, crossAxisCoord, max2);
634
+ }
635
+ const limitedCoords = limiter.fn(__spreadProps(__spreadValues({}, middlewareArguments), {
636
+ [mainAxis]: mainAxisCoord,
637
+ [crossAxis]: crossAxisCoord
638
+ }));
639
+ return __spreadProps(__spreadValues({}, limitedCoords), {
640
+ data: {
641
+ x: limitedCoords.x - x,
642
+ y: limitedCoords.y - y
643
+ }
644
+ });
645
+ }
646
+ };
647
+ };
648
+ const size = function(options) {
649
+ if (options === void 0) {
650
+ options = {};
651
+ }
652
+ return {
653
+ name: "size",
654
+ options,
655
+ async fn(middlewareArguments) {
656
+ var _middlewareData$size;
657
+ const {
658
+ placement,
659
+ rects,
660
+ middlewareData
661
+ } = middlewareArguments;
662
+ const _a = options, {
663
+ apply
664
+ } = _a, detectOverflowOptions = __objRest(_a, [
665
+ "apply"
666
+ ]);
667
+ if ((_middlewareData$size = middlewareData.size) != null && _middlewareData$size.skip) {
668
+ return {};
669
+ }
670
+ const overflow = await detectOverflow$1(middlewareArguments, detectOverflowOptions);
671
+ const basePlacement = getBasePlacement$2(placement);
672
+ const isEnd = getAlignment(placement) === "end";
673
+ let heightSide;
674
+ let widthSide;
675
+ if (basePlacement === "top" || basePlacement === "bottom") {
676
+ heightSide = basePlacement;
677
+ widthSide = isEnd ? "left" : "right";
678
+ } else {
679
+ widthSide = basePlacement;
680
+ heightSide = isEnd ? "top" : "bottom";
681
+ }
682
+ const xMin = max$2(overflow.left, 0);
683
+ const xMax = max$2(overflow.right, 0);
684
+ const yMin = max$2(overflow.top, 0);
685
+ const yMax = max$2(overflow.bottom, 0);
686
+ const dimensions = {
687
+ height: rects.floating.height - (["left", "right"].includes(placement) ? 2 * (yMin !== 0 || yMax !== 0 ? yMin + yMax : max$2(overflow.top, overflow.bottom)) : overflow[heightSide]),
688
+ width: rects.floating.width - (["top", "bottom"].includes(placement) ? 2 * (xMin !== 0 || xMax !== 0 ? xMin + xMax : max$2(overflow.left, overflow.right)) : overflow[widthSide])
689
+ };
690
+ apply == null ? void 0 : apply(__spreadValues(__spreadValues({}, dimensions), rects));
691
+ return {
692
+ data: {
693
+ skip: true
694
+ },
695
+ reset: {
696
+ rects: true
697
+ }
698
+ };
699
+ }
700
+ };
701
+ };
702
+ function isWindow(value) {
703
+ return (value == null ? void 0 : value.toString()) === "[object Window]";
704
+ }
705
+ function getWindow$1(node) {
706
+ if (node == null) {
707
+ return window;
708
+ }
709
+ if (!isWindow(node)) {
710
+ const ownerDocument = node.ownerDocument;
711
+ return ownerDocument ? ownerDocument.defaultView || window : window;
712
+ }
713
+ return node;
714
+ }
715
+ function getComputedStyle$1$1(element) {
716
+ return getWindow$1(element).getComputedStyle(element);
717
+ }
718
+ function getNodeName$1(node) {
719
+ return isWindow(node) ? "" : node ? (node.nodeName || "").toLowerCase() : "";
720
+ }
721
+ function isHTMLElement$1(value) {
722
+ return value instanceof getWindow$1(value).HTMLElement;
723
+ }
724
+ function isElement$2(value) {
725
+ return value instanceof getWindow$1(value).Element;
726
+ }
727
+ function isNode(value) {
728
+ return value instanceof getWindow$1(value).Node;
729
+ }
730
+ function isShadowRoot$1(node) {
731
+ const OwnElement = getWindow$1(node).ShadowRoot;
732
+ return node instanceof OwnElement || node instanceof ShadowRoot;
733
+ }
734
+ function isScrollParent$1(element) {
735
+ const {
736
+ overflow,
737
+ overflowX,
738
+ overflowY
739
+ } = getComputedStyle$1$1(element);
740
+ return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);
741
+ }
742
+ function isTableElement$1(element) {
743
+ return ["table", "td", "th"].includes(getNodeName$1(element));
744
+ }
745
+ function isContainingBlock(element) {
746
+ const isFirefox = navigator.userAgent.toLowerCase().includes("firefox");
747
+ const css2 = getComputedStyle$1$1(element);
748
+ return css2.transform !== "none" || css2.perspective !== "none" || css2.contain === "paint" || ["transform", "perspective"].includes(css2.willChange) || isFirefox && css2.willChange === "filter" || isFirefox && (css2.filter ? css2.filter !== "none" : false);
749
+ }
750
+ const min$1 = Math.min;
751
+ const max$1 = Math.max;
752
+ const round$1 = Math.round;
753
+ function getBoundingClientRect$1(element, includeScale) {
754
+ if (includeScale === void 0) {
755
+ includeScale = false;
756
+ }
757
+ const clientRect = element.getBoundingClientRect();
758
+ let scaleX = 1;
759
+ let scaleY = 1;
760
+ if (includeScale && isHTMLElement$1(element)) {
761
+ scaleX = element.offsetWidth > 0 ? round$1(clientRect.width) / element.offsetWidth || 1 : 1;
762
+ scaleY = element.offsetHeight > 0 ? round$1(clientRect.height) / element.offsetHeight || 1 : 1;
763
+ }
764
+ return {
765
+ width: clientRect.width / scaleX,
766
+ height: clientRect.height / scaleY,
767
+ top: clientRect.top / scaleY,
768
+ right: clientRect.right / scaleX,
769
+ bottom: clientRect.bottom / scaleY,
770
+ left: clientRect.left / scaleX,
771
+ x: clientRect.left / scaleX,
772
+ y: clientRect.top / scaleY
773
+ };
774
+ }
775
+ function getDocumentElement$1(node) {
776
+ return ((isNode(node) ? node.ownerDocument : node.document) || window.document).documentElement;
777
+ }
778
+ function getNodeScroll$1(element) {
779
+ if (isWindow(element)) {
780
+ return {
781
+ scrollLeft: element.pageXOffset,
782
+ scrollTop: element.pageYOffset
783
+ };
784
+ }
785
+ return {
786
+ scrollLeft: element.scrollLeft,
787
+ scrollTop: element.scrollTop
788
+ };
789
+ }
790
+ function getWindowScrollBarX$1(element) {
791
+ return getBoundingClientRect$1(getDocumentElement$1(element)).left + getNodeScroll$1(element).scrollLeft;
792
+ }
793
+ function isScaled(element) {
794
+ const rect = getBoundingClientRect$1(element);
795
+ return round$1(rect.width) !== element.offsetWidth || round$1(rect.height) !== element.offsetHeight;
796
+ }
797
+ function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
798
+ const isOffsetParentAnElement = isHTMLElement$1(offsetParent);
799
+ const documentElement = getDocumentElement$1(offsetParent);
800
+ const rect = getBoundingClientRect$1(element, isOffsetParentAnElement && isScaled(offsetParent));
801
+ let scroll = {
802
+ scrollLeft: 0,
803
+ scrollTop: 0
804
+ };
805
+ const offsets = {
806
+ x: 0,
807
+ y: 0
808
+ };
809
+ if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== "fixed") {
810
+ if (getNodeName$1(offsetParent) !== "body" || isScrollParent$1(documentElement)) {
811
+ scroll = getNodeScroll$1(offsetParent);
812
+ }
813
+ if (isHTMLElement$1(offsetParent)) {
814
+ const offsetRect = getBoundingClientRect$1(offsetParent, true);
815
+ offsets.x = offsetRect.x + offsetParent.clientLeft;
816
+ offsets.y = offsetRect.y + offsetParent.clientTop;
817
+ } else if (documentElement) {
818
+ offsets.x = getWindowScrollBarX$1(documentElement);
819
+ }
820
+ }
821
+ return {
822
+ x: rect.left + scroll.scrollLeft - offsets.x,
823
+ y: rect.top + scroll.scrollTop - offsets.y,
824
+ width: rect.width,
825
+ height: rect.height
826
+ };
827
+ }
828
+ function getParentNode$1(node) {
829
+ if (getNodeName$1(node) === "html") {
830
+ return node;
831
+ }
832
+ return node.assignedSlot || node.parentNode || (isShadowRoot$1(node) ? node.host : null) || getDocumentElement$1(node);
833
+ }
834
+ function getTrueOffsetParent$1(element) {
835
+ if (!isHTMLElement$1(element) || getComputedStyle(element).position === "fixed") {
836
+ return null;
837
+ }
838
+ return element.offsetParent;
839
+ }
840
+ function getContainingBlock$1(element) {
841
+ let currentNode = getParentNode$1(element);
842
+ while (isHTMLElement$1(currentNode) && !["html", "body"].includes(getNodeName$1(currentNode))) {
843
+ if (isContainingBlock(currentNode)) {
844
+ return currentNode;
845
+ } else {
846
+ currentNode = currentNode.parentNode;
847
+ }
848
+ }
849
+ return null;
850
+ }
851
+ function getOffsetParent$1(element) {
852
+ const window2 = getWindow$1(element);
853
+ let offsetParent = getTrueOffsetParent$1(element);
854
+ while (offsetParent && isTableElement$1(offsetParent) && getComputedStyle(offsetParent).position === "static") {
855
+ offsetParent = getTrueOffsetParent$1(offsetParent);
856
+ }
857
+ if (offsetParent && (getNodeName$1(offsetParent) === "html" || getNodeName$1(offsetParent) === "body" && getComputedStyle(offsetParent).position === "static" && !isContainingBlock(offsetParent))) {
858
+ return window2;
859
+ }
860
+ return offsetParent || getContainingBlock$1(element) || window2;
861
+ }
862
+ function getDimensions(element) {
863
+ return {
864
+ width: element.offsetWidth,
865
+ height: element.offsetHeight
866
+ };
867
+ }
868
+ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref2) {
869
+ let {
870
+ rect,
871
+ offsetParent,
872
+ strategy
873
+ } = _ref2;
874
+ const isOffsetParentAnElement = isHTMLElement$1(offsetParent);
875
+ const documentElement = getDocumentElement$1(offsetParent);
876
+ if (offsetParent === documentElement) {
877
+ return rect;
878
+ }
879
+ let scroll = {
880
+ scrollLeft: 0,
881
+ scrollTop: 0
882
+ };
883
+ const offsets = {
884
+ x: 0,
885
+ y: 0
886
+ };
887
+ if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== "fixed") {
888
+ if (getNodeName$1(offsetParent) !== "body" || isScrollParent$1(documentElement)) {
889
+ scroll = getNodeScroll$1(offsetParent);
890
+ }
891
+ if (isHTMLElement$1(offsetParent)) {
892
+ const offsetRect = getBoundingClientRect$1(offsetParent, true);
893
+ offsets.x = offsetRect.x + offsetParent.clientLeft;
894
+ offsets.y = offsetRect.y + offsetParent.clientTop;
895
+ }
896
+ }
897
+ return __spreadProps(__spreadValues({}, rect), {
898
+ x: rect.x - scroll.scrollLeft + offsets.x,
899
+ y: rect.y - scroll.scrollTop + offsets.y
900
+ });
901
+ }
902
+ function getViewportRect$1(element) {
903
+ const win = getWindow$1(element);
904
+ const html = getDocumentElement$1(element);
905
+ const visualViewport = win.visualViewport;
906
+ let width = html.clientWidth;
907
+ let height = html.clientHeight;
908
+ let x = 0;
909
+ let y = 0;
910
+ if (visualViewport) {
911
+ width = visualViewport.width;
912
+ height = visualViewport.height;
913
+ if (Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) < 0.01) {
914
+ x = visualViewport.offsetLeft;
915
+ y = visualViewport.offsetTop;
916
+ }
917
+ }
918
+ return {
919
+ width,
920
+ height,
921
+ x,
922
+ y
923
+ };
924
+ }
925
+ function getDocumentRect$1(element) {
926
+ var _element$ownerDocumen;
927
+ const html = getDocumentElement$1(element);
928
+ const scroll = getNodeScroll$1(element);
929
+ const body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;
930
+ const width = max$1(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);
931
+ const height = max$1(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);
932
+ let x = -scroll.scrollLeft + getWindowScrollBarX$1(element);
933
+ const y = -scroll.scrollTop;
934
+ if (getComputedStyle$1$1(body || html).direction === "rtl") {
935
+ x += max$1(html.clientWidth, body ? body.clientWidth : 0) - width;
936
+ }
937
+ return {
938
+ width,
939
+ height,
940
+ x,
941
+ y
942
+ };
943
+ }
944
+ function getScrollParent$1(node) {
945
+ if (["html", "body", "#document"].includes(getNodeName$1(node))) {
946
+ return node.ownerDocument.body;
947
+ }
948
+ if (isHTMLElement$1(node) && isScrollParent$1(node)) {
949
+ return node;
950
+ }
951
+ return getScrollParent$1(getParentNode$1(node));
952
+ }
953
+ function getScrollParents(node, list) {
954
+ var _node$ownerDocument;
955
+ if (list === void 0) {
956
+ list = [];
957
+ }
958
+ const scrollParent = getScrollParent$1(node);
959
+ const isBody = scrollParent === ((_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.body);
960
+ const win = getWindow$1(scrollParent);
961
+ const target = isBody ? [win].concat(win.visualViewport || [], isScrollParent$1(scrollParent) ? scrollParent : []) : scrollParent;
962
+ const updatedList = list.concat(target);
963
+ return isBody ? updatedList : updatedList.concat(getScrollParents(getParentNode$1(target)));
964
+ }
965
+ function contains$1(parent, child) {
966
+ const rootNode = child.getRootNode == null ? void 0 : child.getRootNode();
967
+ if (parent.contains(child)) {
968
+ return true;
969
+ } else if (rootNode && isShadowRoot$1(rootNode)) {
970
+ let next = child;
971
+ do {
972
+ if (next && parent === next) {
973
+ return true;
974
+ }
975
+ next = next.parentNode || next.host;
976
+ } while (next);
977
+ }
978
+ return false;
979
+ }
980
+ function getInnerBoundingClientRect$1(element) {
981
+ const clientRect = getBoundingClientRect$1(element);
982
+ const top2 = clientRect.top + element.clientTop;
983
+ const left2 = clientRect.left + element.clientLeft;
984
+ return {
985
+ top: top2,
986
+ left: left2,
987
+ x: left2,
988
+ y: top2,
989
+ right: left2 + element.clientWidth,
990
+ bottom: top2 + element.clientHeight,
991
+ width: element.clientWidth,
992
+ height: element.clientHeight
993
+ };
994
+ }
995
+ function getClientRectFromClippingParent(element, clippingParent) {
996
+ if (clippingParent === "viewport") {
997
+ return rectToClientRect$1(getViewportRect$1(element));
998
+ }
999
+ if (isElement$2(clippingParent)) {
1000
+ return getInnerBoundingClientRect$1(clippingParent);
1001
+ }
1002
+ return rectToClientRect$1(getDocumentRect$1(getDocumentElement$1(element)));
1003
+ }
1004
+ function getClippingParents$1(element) {
1005
+ const clippingParents2 = getScrollParents(getParentNode$1(element));
1006
+ const canEscapeClipping = ["absolute", "fixed"].includes(getComputedStyle$1$1(element).position);
1007
+ const clipperElement = canEscapeClipping && isHTMLElement$1(element) ? getOffsetParent$1(element) : element;
1008
+ if (!isElement$2(clipperElement)) {
1009
+ return [];
1010
+ }
1011
+ return clippingParents2.filter((clippingParent) => isElement$2(clippingParent) && contains$1(clippingParent, clipperElement) && getNodeName$1(clippingParent) !== "body");
1012
+ }
1013
+ function getClippingClientRect(_ref2) {
1014
+ let {
1015
+ element,
1016
+ boundary,
1017
+ rootBoundary
1018
+ } = _ref2;
1019
+ const mainClippingParents = boundary === "clippingParents" ? getClippingParents$1(element) : [].concat(boundary);
1020
+ const clippingParents2 = [...mainClippingParents, rootBoundary];
1021
+ const firstClippingParent = clippingParents2[0];
1022
+ const clippingRect = clippingParents2.reduce((accRect, clippingParent) => {
1023
+ const rect = getClientRectFromClippingParent(element, clippingParent);
1024
+ accRect.top = max$1(rect.top, accRect.top);
1025
+ accRect.right = min$1(rect.right, accRect.right);
1026
+ accRect.bottom = min$1(rect.bottom, accRect.bottom);
1027
+ accRect.left = max$1(rect.left, accRect.left);
1028
+ return accRect;
1029
+ }, getClientRectFromClippingParent(element, firstClippingParent));
1030
+ clippingRect.width = clippingRect.right - clippingRect.left;
1031
+ clippingRect.height = clippingRect.bottom - clippingRect.top;
1032
+ clippingRect.x = clippingRect.left;
1033
+ clippingRect.y = clippingRect.top;
1034
+ return clippingRect;
1035
+ }
1036
+ const platform = {
1037
+ getElementRects: (_ref2) => {
1038
+ let {
1039
+ reference: reference2,
1040
+ floating,
1041
+ strategy
1042
+ } = _ref2;
1043
+ return {
1044
+ reference: getRectRelativeToOffsetParent(reference2, getOffsetParent$1(floating), strategy),
1045
+ floating: __spreadProps(__spreadValues({}, getDimensions(floating)), {
1046
+ x: 0,
1047
+ y: 0
1048
+ })
1049
+ };
1050
+ },
1051
+ convertOffsetParentRelativeRectToViewportRelativeRect: (args) => convertOffsetParentRelativeRectToViewportRelativeRect(args),
1052
+ getOffsetParent: (_ref2) => {
1053
+ let {
1054
+ element
1055
+ } = _ref2;
1056
+ return getOffsetParent$1(element);
1057
+ },
1058
+ isElement: (value) => isElement$2(value),
1059
+ getDocumentElement: (_ref3) => {
1060
+ let {
1061
+ element
1062
+ } = _ref3;
1063
+ return getDocumentElement$1(element);
1064
+ },
1065
+ getClippingClientRect: (args) => getClippingClientRect(args),
1066
+ getDimensions: (_ref4) => {
1067
+ let {
1068
+ element
1069
+ } = _ref4;
1070
+ return getDimensions(element);
1071
+ },
1072
+ getClientRects: (_ref5) => {
1073
+ let {
1074
+ element
1075
+ } = _ref5;
1076
+ return element.getClientRects();
1077
+ }
1078
+ };
1079
+ const computePosition = (reference2, floating, options) => computePosition$1(reference2, floating, __spreadValues({
1080
+ platform
1081
+ }, options));
1082
+ var __defProp2 = Object.defineProperty;
1083
+ var __defProps2 = Object.defineProperties;
1084
+ var __getOwnPropDescs2 = Object.getOwnPropertyDescriptors;
1085
+ var __getOwnPropSymbols2 = Object.getOwnPropertySymbols;
1086
+ var __hasOwnProp2 = Object.prototype.hasOwnProperty;
1087
+ var __propIsEnum2 = Object.prototype.propertyIsEnumerable;
1088
+ var __defNormalProp2 = (obj, key, value) => key in obj ? __defProp2(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
1089
+ var __spreadValues2 = (a, b) => {
1090
+ for (var prop in b || (b = {}))
1091
+ if (__hasOwnProp2.call(b, prop))
1092
+ __defNormalProp2(a, prop, b[prop]);
1093
+ if (__getOwnPropSymbols2)
1094
+ for (var prop of __getOwnPropSymbols2(b)) {
1095
+ if (__propIsEnum2.call(b, prop))
1096
+ __defNormalProp2(a, prop, b[prop]);
1097
+ }
1098
+ return a;
1099
+ };
1100
+ var __spreadProps2 = (a, b) => __defProps2(a, __getOwnPropDescs2(b));
1101
+ function assign(to, from) {
1102
+ for (const key in from) {
1103
+ if (Object.prototype.hasOwnProperty.call(from, key)) {
1104
+ if (typeof from[key] === "object" && to[key]) {
1105
+ assign(to[key], from[key]);
1106
+ } else {
1107
+ to[key] = from[key];
1108
+ }
1109
+ }
1110
+ }
1111
+ }
1112
+ const config$2 = {
1113
+ disabled: false,
1114
+ distance: 5,
1115
+ skidding: 0,
1116
+ container: "body",
1117
+ boundary: void 0,
1118
+ instantMove: false,
1119
+ disposeTimeout: 5e3,
1120
+ popperTriggers: [],
1121
+ strategy: "absolute",
1122
+ preventOverflow: true,
1123
+ flip: true,
1124
+ shift: true,
1125
+ overflowPadding: 0,
1126
+ arrowPadding: 0,
1127
+ arrowOverflow: true,
1128
+ themes: {
1129
+ tooltip: {
1130
+ placement: "top",
1131
+ triggers: ["hover", "focus", "touch"],
1132
+ hideTriggers: (events2) => [...events2, "click"],
1133
+ delay: {
1134
+ show: 200,
1135
+ hide: 0
1136
+ },
1137
+ handleResize: false,
1138
+ html: false,
1139
+ loadingContent: "..."
1140
+ },
1141
+ dropdown: {
1142
+ placement: "bottom",
1143
+ triggers: ["click"],
1144
+ delay: 0,
1145
+ handleResize: true,
1146
+ autoHide: true
1147
+ },
1148
+ menu: {
1149
+ $extend: "dropdown",
1150
+ triggers: ["hover", "focus"],
1151
+ popperTriggers: ["hover", "focus"],
1152
+ delay: {
1153
+ show: 0,
1154
+ hide: 400
1155
+ }
1156
+ }
1157
+ }
1158
+ };
1159
+ function getDefaultConfig(theme, key) {
1160
+ let themeConfig = config$2.themes[theme] || {};
1161
+ let value;
1162
+ do {
1163
+ value = themeConfig[key];
1164
+ if (typeof value === "undefined") {
1165
+ if (themeConfig.$extend) {
1166
+ themeConfig = config$2.themes[themeConfig.$extend] || {};
1167
+ } else {
1168
+ themeConfig = null;
1169
+ value = config$2[key];
1170
+ }
1171
+ } else {
1172
+ themeConfig = null;
1173
+ }
1174
+ } while (themeConfig);
1175
+ return value;
1176
+ }
1177
+ function getThemeClasses(theme) {
1178
+ const result = [theme];
1179
+ let themeConfig = config$2.themes[theme] || {};
1180
+ do {
1181
+ if (themeConfig.$extend && !themeConfig.$resetCss) {
1182
+ result.push(themeConfig.$extend);
1183
+ themeConfig = config$2.themes[themeConfig.$extend] || {};
1184
+ } else {
1185
+ themeConfig = null;
1186
+ }
1187
+ } while (themeConfig);
1188
+ return result.map((c) => `v-popper--theme-${c}`);
1189
+ }
1190
+ let supportsPassive = false;
1191
+ if (typeof window !== "undefined") {
1192
+ supportsPassive = false;
1193
+ try {
1194
+ const opts = Object.defineProperty({}, "passive", {
1195
+ get() {
1196
+ supportsPassive = true;
1197
+ }
1198
+ });
1199
+ window.addEventListener("test", null, opts);
1200
+ } catch (e) {
1201
+ }
1202
+ }
1203
+ let isIOS = false;
1204
+ if (typeof window !== "undefined" && typeof navigator !== "undefined") {
1205
+ isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;
1206
+ }
1207
+ const placements$1 = ["auto", "top", "bottom", "left", "right"].reduce((acc, base) => acc.concat([
1208
+ base,
1209
+ `${base}-start`,
1210
+ `${base}-end`
1211
+ ]), []);
1212
+ const SHOW_EVENT_MAP = {
1213
+ hover: "mouseenter",
1214
+ focus: "focus",
1215
+ click: "click",
1216
+ touch: "touchstart"
1217
+ };
1218
+ const HIDE_EVENT_MAP = {
1219
+ hover: "mouseleave",
1220
+ focus: "blur",
1221
+ click: "click",
1222
+ touch: "touchend"
1223
+ };
1224
+ function removeFromArray(array, item) {
1225
+ const index = array.indexOf(item);
1226
+ if (index !== -1) {
1227
+ array.splice(index, 1);
1228
+ }
1229
+ }
1230
+ function nextFrame() {
1231
+ return new Promise((resolve) => requestAnimationFrame(() => {
1232
+ requestAnimationFrame(resolve);
1233
+ }));
1234
+ }
1235
+ const shownPoppers = [];
1236
+ let hidingPopper = null;
1237
+ let Element$1 = function() {
1238
+ };
1239
+ if (typeof window !== "undefined") {
1240
+ Element$1 = window.Element;
1241
+ }
1242
+ function defaultPropFactory(prop) {
1243
+ return function(props) {
1244
+ return getDefaultConfig(props.theme, prop);
1245
+ };
1246
+ }
1247
+ var PrivatePopper = () => defineComponent({
1248
+ name: "VPopper",
1249
+ props: {
1250
+ theme: {
1251
+ type: String,
1252
+ required: true
1253
+ },
1254
+ targetNodes: {
1255
+ type: Function,
1256
+ required: true
1257
+ },
1258
+ referenceNode: {
1259
+ type: Function,
1260
+ required: true
1261
+ },
1262
+ popperNode: {
1263
+ type: Function,
1264
+ required: true
1265
+ },
1266
+ shown: {
1267
+ type: Boolean,
1268
+ default: false
1269
+ },
1270
+ showGroup: {
1271
+ type: String,
1272
+ default: null
1273
+ },
1274
+ ariaId: {
1275
+ default: null
1276
+ },
1277
+ disabled: {
1278
+ type: Boolean,
1279
+ default: defaultPropFactory("disabled")
1280
+ },
1281
+ positioningDisabled: {
1282
+ type: Boolean,
1283
+ default: defaultPropFactory("positioningDisabled")
1284
+ },
1285
+ placement: {
1286
+ type: String,
1287
+ default: defaultPropFactory("placement"),
1288
+ validator: (value) => placements$1.includes(value)
1289
+ },
1290
+ delay: {
1291
+ type: [String, Number, Object],
1292
+ default: defaultPropFactory("delay")
1293
+ },
1294
+ distance: {
1295
+ type: [Number, String],
1296
+ default: defaultPropFactory("distance")
1297
+ },
1298
+ skidding: {
1299
+ type: [Number, String],
1300
+ default: defaultPropFactory("skidding")
1301
+ },
1302
+ triggers: {
1303
+ type: Array,
1304
+ default: defaultPropFactory("triggers")
1305
+ },
1306
+ showTriggers: {
1307
+ type: [Array, Function],
1308
+ default: defaultPropFactory("showTriggers")
1309
+ },
1310
+ hideTriggers: {
1311
+ type: [Array, Function],
1312
+ default: defaultPropFactory("hideTriggers")
1313
+ },
1314
+ popperTriggers: {
1315
+ type: Array,
1316
+ default: defaultPropFactory("popperTriggers")
1317
+ },
1318
+ popperShowTriggers: {
1319
+ type: [Array, Function],
1320
+ default: defaultPropFactory("popperShowTriggers")
1321
+ },
1322
+ popperHideTriggers: {
1323
+ type: [Array, Function],
1324
+ default: defaultPropFactory("popperHideTriggers")
1325
+ },
1326
+ container: {
1327
+ type: [String, Object, Element$1, Boolean],
1328
+ default: defaultPropFactory("container")
1329
+ },
1330
+ boundary: {
1331
+ type: [String, Element$1],
1332
+ default: defaultPropFactory("boundary")
1333
+ },
1334
+ strategy: {
1335
+ type: String,
1336
+ validator: (value) => ["absolute", "fixed"].includes(value),
1337
+ default: defaultPropFactory("strategy")
1338
+ },
1339
+ autoHide: {
1340
+ type: Boolean,
1341
+ default: defaultPropFactory("autoHide")
1342
+ },
1343
+ handleResize: {
1344
+ type: Boolean,
1345
+ default: defaultPropFactory("handleResize")
1346
+ },
1347
+ instantMove: {
1348
+ type: Boolean,
1349
+ default: defaultPropFactory("instantMove")
1350
+ },
1351
+ eagerMount: {
1352
+ type: Boolean,
1353
+ default: defaultPropFactory("eagerMount")
1354
+ },
1355
+ popperClass: {
1356
+ type: [String, Array, Object],
1357
+ default: defaultPropFactory("popperClass")
1358
+ },
1359
+ computeTransformOrigin: {
1360
+ type: Boolean,
1361
+ default: defaultPropFactory("computeTransformOrigin")
1362
+ },
1363
+ autoMinSize: {
1364
+ type: Boolean,
1365
+ default: defaultPropFactory("autoMinSize")
1366
+ },
1367
+ autoMaxSize: {
1368
+ type: Boolean,
1369
+ default: defaultPropFactory("autoMaxSize")
1370
+ },
1371
+ preventOverflow: {
1372
+ type: Boolean,
1373
+ default: defaultPropFactory("preventOverflow")
1374
+ },
1375
+ overflowPadding: {
1376
+ type: [Number, String],
1377
+ default: defaultPropFactory("overflowPadding")
1378
+ },
1379
+ arrowPadding: {
1380
+ type: [Number, String],
1381
+ default: defaultPropFactory("arrowPadding")
1382
+ },
1383
+ arrowOverflow: {
1384
+ type: Boolean,
1385
+ default: defaultPropFactory("arrowOverflow")
1386
+ },
1387
+ flip: {
1388
+ type: Boolean,
1389
+ default: defaultPropFactory("flip")
1390
+ },
1391
+ shift: {
1392
+ type: Boolean,
1393
+ default: defaultPropFactory("shift")
1394
+ },
1395
+ shiftCrossAxis: {
1396
+ type: Boolean,
1397
+ default: defaultPropFactory("shiftCrossAxis")
1398
+ }
1399
+ },
1400
+ emits: [
1401
+ "show",
1402
+ "hide",
1403
+ "update:shown",
1404
+ "apply-show",
1405
+ "apply-hide",
1406
+ "close-group",
1407
+ "close-directive",
1408
+ "auto-hide",
1409
+ "resize",
1410
+ "dispose"
1411
+ ],
1412
+ data() {
1413
+ return {
1414
+ isShown: false,
1415
+ isMounted: false,
1416
+ skipTransition: false,
1417
+ classes: {
1418
+ showFrom: false,
1419
+ showTo: false,
1420
+ hideFrom: false,
1421
+ hideTo: true
1422
+ },
1423
+ result: {
1424
+ x: 0,
1425
+ y: 0,
1426
+ placement: "",
1427
+ strategy: this.strategy,
1428
+ arrow: {
1429
+ x: 0,
1430
+ y: 0,
1431
+ centerOffset: 0
1432
+ },
1433
+ transformOrigin: null
1434
+ }
1435
+ };
1436
+ },
1437
+ computed: {
1438
+ popperId() {
1439
+ return this.ariaId != null ? this.ariaId : this.randomId;
1440
+ },
1441
+ shouldMountContent() {
1442
+ return this.eagerMount || this.isMounted;
1443
+ },
1444
+ slotData() {
1445
+ return {
1446
+ popperId: this.popperId,
1447
+ isShown: this.isShown,
1448
+ shouldMountContent: this.shouldMountContent,
1449
+ skipTransition: this.skipTransition,
1450
+ autoHide: this.autoHide,
1451
+ show: this.show,
1452
+ hide: this.hide,
1453
+ handleResize: this.handleResize,
1454
+ onResize: this.onResize,
1455
+ classes: __spreadProps2(__spreadValues2({}, this.classes), {
1456
+ popperClass: this.popperClass
1457
+ }),
1458
+ result: this.positioningDisabled ? null : this.result
1459
+ };
1460
+ }
1461
+ },
1462
+ watch: __spreadValues2(__spreadValues2({
1463
+ shown: "$_autoShowHide",
1464
+ disabled(value) {
1465
+ if (value) {
1466
+ this.dispose();
1467
+ } else {
1468
+ this.init();
1469
+ }
1470
+ },
1471
+ async container() {
1472
+ if (this.isShown) {
1473
+ this.$_ensureTeleport();
1474
+ await this.$_computePosition();
1475
+ }
1476
+ }
1477
+ }, [
1478
+ "triggers",
1479
+ "positioningDisabled"
1480
+ ].reduce((acc, prop) => {
1481
+ acc[prop] = "$_refreshListeners";
1482
+ return acc;
1483
+ }, {})), [
1484
+ "placement",
1485
+ "distance",
1486
+ "skidding",
1487
+ "boundary",
1488
+ "strategy",
1489
+ "overflowPadding",
1490
+ "arrowPadding",
1491
+ "preventOverflow",
1492
+ "shift",
1493
+ "shiftCrossAxis",
1494
+ "flip"
1495
+ ].reduce((acc, prop) => {
1496
+ acc[prop] = "$_computePosition";
1497
+ return acc;
1498
+ }, {})),
1499
+ created() {
1500
+ this.$_isDisposed = true;
1501
+ this.randomId = `popper_${[Math.random(), Date.now()].map((n) => n.toString(36).substring(2, 10)).join("_")}`;
1502
+ },
1503
+ mounted() {
1504
+ this.init();
1505
+ this.$_detachPopperNode();
1506
+ },
1507
+ activated() {
1508
+ this.$_autoShowHide();
1509
+ },
1510
+ deactivated() {
1511
+ this.hide();
1512
+ },
1513
+ beforeUnmount() {
1514
+ this.dispose();
1515
+ },
1516
+ methods: {
1517
+ show({ event = null, skipDelay = false, force = false } = {}) {
1518
+ if (force || !this.disabled) {
1519
+ this.$_scheduleShow(event, skipDelay);
1520
+ this.$emit("show");
1521
+ this.$_showFrameLocked = true;
1522
+ requestAnimationFrame(() => {
1523
+ this.$_showFrameLocked = false;
1524
+ });
1525
+ }
1526
+ this.$emit("update:shown", true);
1527
+ },
1528
+ hide({ event = null, skipDelay = false } = {}) {
1529
+ this.$_scheduleHide(event, skipDelay);
1530
+ this.$emit("hide");
1531
+ this.$emit("update:shown", false);
1532
+ },
1533
+ init() {
1534
+ if (!this.$_isDisposed)
1535
+ return;
1536
+ this.$_isDisposed = false;
1537
+ this.isMounted = false;
1538
+ this.$_events = [];
1539
+ this.$_preventShow = false;
1540
+ this.$_referenceNode = this.referenceNode();
1541
+ this.$_targetNodes = this.targetNodes().filter((e) => e.nodeType === e.ELEMENT_NODE);
1542
+ this.$_popperNode = this.popperNode();
1543
+ this.$_innerNode = this.$_popperNode.querySelector(".v-popper__inner");
1544
+ this.$_arrowNode = this.$_popperNode.querySelector(".v-popper__arrow-container");
1545
+ this.$_swapTargetAttrs("title", "data-original-title");
1546
+ this.$_detachPopperNode();
1547
+ if (this.triggers.length) {
1548
+ this.$_addEventListeners();
1549
+ }
1550
+ if (this.shown) {
1551
+ this.show();
1552
+ }
1553
+ },
1554
+ dispose() {
1555
+ if (this.$_isDisposed)
1556
+ return;
1557
+ this.$_isDisposed = true;
1558
+ this.$_removeEventListeners();
1559
+ this.hide({ skipDelay: true });
1560
+ this.$_detachPopperNode();
1561
+ this.isMounted = false;
1562
+ this.isShown = false;
1563
+ this.$_swapTargetAttrs("data-original-title", "title");
1564
+ this.$emit("dispose");
1565
+ },
1566
+ async onResize() {
1567
+ if (this.isShown) {
1568
+ await this.$_computePosition();
1569
+ this.$emit("resize");
1570
+ }
1571
+ },
1572
+ async $_computePosition() {
1573
+ var _a;
1574
+ if (this.$_isDisposed || this.positioningDisabled)
1575
+ return;
1576
+ const options2 = {
1577
+ strategy: this.strategy,
1578
+ middleware: []
1579
+ };
1580
+ if (this.distance || this.skidding) {
1581
+ options2.middleware.push(offset$2({
1582
+ mainAxis: this.distance,
1583
+ crossAxis: this.skidding
1584
+ }));
1585
+ }
1586
+ const isPlacementAuto = this.placement.startsWith("auto");
1587
+ if (isPlacementAuto) {
1588
+ options2.middleware.push(autoPlacement({
1589
+ alignment: (_a = this.placement.split("-")[1]) != null ? _a : ""
1590
+ }));
1591
+ } else {
1592
+ options2.placement = this.placement;
1593
+ }
1594
+ if (this.preventOverflow) {
1595
+ if (this.shift) {
1596
+ options2.middleware.push(shift({
1597
+ padding: this.overflowPadding,
1598
+ boundary: this.boundary,
1599
+ crossAxis: this.shiftCrossAxis
1600
+ }));
1601
+ }
1602
+ if (!isPlacementAuto && this.flip) {
1603
+ options2.middleware.push(flip$2({
1604
+ padding: this.overflowPadding,
1605
+ boundary: this.boundary
1606
+ }));
1607
+ }
1608
+ }
1609
+ options2.middleware.push(arrow$2({
1610
+ element: this.$_arrowNode,
1611
+ padding: this.arrowPadding
1612
+ }));
1613
+ if (this.arrowOverflow) {
1614
+ options2.middleware.push({
1615
+ name: "arrowOverflow",
1616
+ fn: ({ placement, rects, middlewareData }) => {
1617
+ let overflow;
1618
+ const { centerOffset } = middlewareData.arrow;
1619
+ if (placement.startsWith("top") || placement.startsWith("bottom")) {
1620
+ overflow = Math.abs(centerOffset) > rects.reference.width / 2;
1621
+ } else {
1622
+ overflow = Math.abs(centerOffset) > rects.reference.height / 2;
1623
+ }
1624
+ return {
1625
+ data: {
1626
+ overflow
1627
+ }
1628
+ };
1629
+ }
1630
+ });
1631
+ }
1632
+ if (this.autoMinSize) {
1633
+ options2.middleware.push({
1634
+ name: "autoMinSize",
1635
+ fn: ({ rects, placement, middlewareData }) => {
1636
+ var _a2;
1637
+ if ((_a2 = middlewareData.autoMinSize) == null ? void 0 : _a2.skip) {
1638
+ return {};
1639
+ }
1640
+ let width;
1641
+ let height;
1642
+ if (placement.startsWith("top") || placement.startsWith("bottom")) {
1643
+ width = rects.reference.width;
1644
+ } else {
1645
+ height = rects.reference.height;
1646
+ }
1647
+ this.$_innerNode.style.minWidth = width != null ? `${width}px` : null;
1648
+ this.$_innerNode.style.minHeight = height != null ? `${height}px` : null;
1649
+ return {
1650
+ data: {
1651
+ skip: true
1652
+ },
1653
+ reset: {
1654
+ rects: true
1655
+ }
1656
+ };
1657
+ }
1658
+ });
1659
+ }
1660
+ if (this.autoMaxSize) {
1661
+ this.$_innerNode.style.maxWidth = null;
1662
+ this.$_innerNode.style.maxHeight = null;
1663
+ options2.middleware.push(size({
1664
+ boundary: this.boundary,
1665
+ padding: this.overflowPadding,
1666
+ apply: ({ width, height }) => {
1667
+ this.$_innerNode.style.maxWidth = width != null ? `${width}px` : null;
1668
+ this.$_innerNode.style.maxHeight = height != null ? `${height}px` : null;
1669
+ }
1670
+ }));
1671
+ }
1672
+ const data = await computePosition(this.$_referenceNode, this.$_popperNode, options2);
1673
+ Object.assign(this.result, {
1674
+ x: data.x,
1675
+ y: data.y,
1676
+ placement: data.placement,
1677
+ strategy: data.strategy,
1678
+ arrow: __spreadValues2(__spreadValues2({}, data.middlewareData.arrow), data.middlewareData.arrowOverflow)
1679
+ });
1680
+ },
1681
+ $_scheduleShow(event = null, skipDelay = false) {
1682
+ this.$_hideInProgress = false;
1683
+ clearTimeout(this.$_scheduleTimer);
1684
+ if (hidingPopper && this.instantMove && hidingPopper.instantMove) {
1685
+ hidingPopper.$_applyHide(true);
1686
+ this.$_applyShow(true);
1687
+ return;
1688
+ }
1689
+ if (skipDelay) {
1690
+ this.$_applyShow();
1691
+ } else {
1692
+ this.$_scheduleTimer = setTimeout(this.$_applyShow.bind(this), this.$_computeDelay("show"));
1693
+ }
1694
+ },
1695
+ $_scheduleHide(event = null, skipDelay = false) {
1696
+ this.$_hideInProgress = true;
1697
+ clearTimeout(this.$_scheduleTimer);
1698
+ if (this.isShown) {
1699
+ hidingPopper = this;
1700
+ }
1701
+ if (skipDelay) {
1702
+ this.$_applyHide();
1703
+ } else {
1704
+ this.$_scheduleTimer = setTimeout(this.$_applyHide.bind(this), this.$_computeDelay("hide"));
1705
+ }
1706
+ },
1707
+ $_computeDelay(type) {
1708
+ const delay = this.delay;
1709
+ return parseInt(delay && delay[type] || delay || 0);
1710
+ },
1711
+ async $_applyShow(skipTransition = false) {
1712
+ clearTimeout(this.$_disposeTimer);
1713
+ clearTimeout(this.$_scheduleTimer);
1714
+ this.skipTransition = skipTransition;
1715
+ if (this.isShown) {
1716
+ return;
1717
+ }
1718
+ this.$_ensureTeleport();
1719
+ await nextFrame();
1720
+ await this.$_computePosition();
1721
+ await this.$_applyShowEffect();
1722
+ },
1723
+ async $_applyShowEffect() {
1724
+ if (this.$_hideInProgress)
1725
+ return;
1726
+ if (this.computeTransformOrigin) {
1727
+ const bounds = this.$_referenceNode.getBoundingClientRect();
1728
+ const popperWrapper = this.$_popperNode.querySelector(".v-popper__wrapper");
1729
+ const parentBounds = popperWrapper.parentNode.getBoundingClientRect();
1730
+ const x = bounds.x + bounds.width / 2 - (parentBounds.left + popperWrapper.offsetLeft);
1731
+ const y = bounds.y + bounds.height / 2 - (parentBounds.top + popperWrapper.offsetTop);
1732
+ this.result.transformOrigin = `${x}px ${y}px`;
1733
+ }
1734
+ this.isShown = true;
1735
+ this.$_applyAttrsToTarget({
1736
+ "aria-describedby": this.popperId,
1737
+ "data-popper-shown": ""
1738
+ });
1739
+ const showGroup = this.showGroup;
1740
+ if (showGroup) {
1741
+ let popover;
1742
+ for (let i = 0; i < shownPoppers.length; i++) {
1743
+ popover = shownPoppers[i];
1744
+ if (popover.showGroup !== showGroup) {
1745
+ popover.hide();
1746
+ popover.$emit("close-group");
1747
+ }
1748
+ }
1749
+ }
1750
+ shownPoppers.push(this);
1751
+ this.$emit("apply-show");
1752
+ this.classes.showFrom = true;
1753
+ this.classes.showTo = false;
1754
+ this.classes.hideFrom = false;
1755
+ this.classes.hideTo = false;
1756
+ await nextFrame();
1757
+ this.classes.showFrom = false;
1758
+ this.classes.showTo = true;
1759
+ },
1760
+ async $_applyHide(skipTransition = false) {
1761
+ clearTimeout(this.$_scheduleTimer);
1762
+ if (!this.isShown) {
1763
+ return;
1764
+ }
1765
+ this.skipTransition = skipTransition;
1766
+ removeFromArray(shownPoppers, this);
1767
+ if (hidingPopper === this) {
1768
+ hidingPopper = null;
1769
+ }
1770
+ this.isShown = false;
1771
+ this.$_applyAttrsToTarget({
1772
+ "aria-describedby": void 0,
1773
+ "data-popper-shown": void 0
1774
+ });
1775
+ clearTimeout(this.$_disposeTimer);
1776
+ const disposeTime = getDefaultConfig(this.theme, "disposeTimeout");
1777
+ if (disposeTime !== null) {
1778
+ this.$_disposeTimer = setTimeout(() => {
1779
+ if (this.$_popperNode) {
1780
+ this.$_detachPopperNode();
1781
+ this.isMounted = false;
1782
+ }
1783
+ }, disposeTime);
1784
+ }
1785
+ this.$emit("apply-hide");
1786
+ this.classes.showFrom = false;
1787
+ this.classes.showTo = false;
1788
+ this.classes.hideFrom = true;
1789
+ this.classes.hideTo = false;
1790
+ await nextFrame();
1791
+ this.classes.hideFrom = false;
1792
+ this.classes.hideTo = true;
1793
+ },
1794
+ $_autoShowHide() {
1795
+ if (this.shown) {
1796
+ this.show();
1797
+ } else {
1798
+ this.hide();
1799
+ }
1800
+ },
1801
+ $_ensureTeleport() {
1802
+ if (this.$_isDisposed)
1803
+ return;
1804
+ let container = this.container;
1805
+ if (typeof container === "string") {
1806
+ container = window.document.querySelector(container);
1807
+ } else if (container === false) {
1808
+ container = this.$_targetNodes[0].parentNode;
1809
+ }
1810
+ if (!container) {
1811
+ throw new Error("No container for popover: " + this.container);
1812
+ }
1813
+ container.appendChild(this.$_popperNode);
1814
+ this.isMounted = true;
1815
+ },
1816
+ $_addEventListeners() {
1817
+ const addListeners2 = (targetNodes, eventType, handler) => {
1818
+ this.$_events.push({ targetNodes, eventType, handler });
1819
+ targetNodes.forEach((node) => node.addEventListener(eventType, handler, supportsPassive ? {
1820
+ passive: true
1821
+ } : void 0));
1822
+ };
1823
+ const addEvents = (targetNodes, eventMap, commonTriggers, customTrigger, handler) => {
1824
+ let triggers = commonTriggers;
1825
+ if (customTrigger != null) {
1826
+ triggers = typeof customTrigger === "function" ? customTrigger(triggers) : customTrigger;
1827
+ }
1828
+ triggers.forEach((trigger) => {
1829
+ const eventType = eventMap[trigger];
1830
+ if (eventType) {
1831
+ addListeners2(targetNodes, eventType, handler);
1832
+ }
1833
+ });
1834
+ };
1835
+ const handleShow = (event) => {
1836
+ if (this.isShown && !this.$_hideInProgress) {
1837
+ return;
1838
+ }
1839
+ event.usedByTooltip = true;
1840
+ !this.$_preventShow && this.show({ event });
1841
+ };
1842
+ addEvents(this.$_targetNodes, SHOW_EVENT_MAP, this.triggers, this.showTriggers, handleShow);
1843
+ addEvents([this.$_popperNode], SHOW_EVENT_MAP, this.popperTriggers, this.popperShowTriggers, handleShow);
1844
+ const handleHide = (event) => {
1845
+ if (event.usedByTooltip) {
1846
+ return;
1847
+ }
1848
+ this.hide({ event });
1849
+ };
1850
+ addEvents(this.$_targetNodes, HIDE_EVENT_MAP, this.triggers, this.hideTriggers, handleHide);
1851
+ addEvents([this.$_popperNode], HIDE_EVENT_MAP, this.popperTriggers, this.popperHideTriggers, handleHide);
1852
+ if (!this.positioningDisabled) {
1853
+ addListeners2([
1854
+ ...getScrollParents(this.$_referenceNode),
1855
+ ...getScrollParents(this.$_popperNode)
1856
+ ], "scroll", () => {
1857
+ this.$_computePosition();
1858
+ });
1859
+ }
1860
+ },
1861
+ $_removeEventListeners() {
1862
+ this.$_events.forEach(({ targetNodes, eventType, handler }) => {
1863
+ targetNodes.forEach((node) => node.removeEventListener(eventType, handler));
1864
+ });
1865
+ this.$_events = [];
1866
+ },
1867
+ $_refreshListeners() {
1868
+ if (!this.$_isDisposed) {
1869
+ this.$_removeEventListeners();
1870
+ this.$_addEventListeners();
1871
+ }
1872
+ },
1873
+ $_handleGlobalClose(event, touch = false) {
1874
+ if (this.$_showFrameLocked)
1875
+ return;
1876
+ this.hide({ event });
1877
+ if (event.closePopover) {
1878
+ this.$emit("close-directive");
1879
+ } else {
1880
+ this.$emit("auto-hide");
1881
+ }
1882
+ if (touch) {
1883
+ this.$_preventShow = true;
1884
+ setTimeout(() => {
1885
+ this.$_preventShow = false;
1886
+ }, 300);
1887
+ }
1888
+ },
1889
+ $_detachPopperNode() {
1890
+ this.$_popperNode.parentNode && this.$_popperNode.parentNode.removeChild(this.$_popperNode);
1891
+ },
1892
+ $_swapTargetAttrs(attrFrom, attrTo) {
1893
+ for (const el of this.$_targetNodes) {
1894
+ const value = el.getAttribute(attrFrom);
1895
+ if (value) {
1896
+ el.removeAttribute(attrFrom);
1897
+ el.setAttribute(attrTo, value);
1898
+ }
1899
+ }
1900
+ },
1901
+ $_applyAttrsToTarget(attrs) {
1902
+ for (const el of this.$_targetNodes) {
1903
+ for (const n in attrs) {
1904
+ const value = attrs[n];
1905
+ if (value == null) {
1906
+ el.removeAttribute(n);
1907
+ } else {
1908
+ el.setAttribute(n, value);
1909
+ }
1910
+ }
1911
+ }
1912
+ }
1913
+ },
1914
+ render() {
1915
+ return this.$slots.default(this.slotData);
1916
+ }
1917
+ });
1918
+ if (typeof document !== "undefined" && typeof window !== "undefined") {
1919
+ if (isIOS) {
1920
+ document.addEventListener("touchstart", handleGlobalMousedown, supportsPassive ? {
1921
+ passive: true,
1922
+ capture: true
1923
+ } : true);
1924
+ document.addEventListener("touchend", handleGlobalTouchend, supportsPassive ? {
1925
+ passive: true,
1926
+ capture: true
1927
+ } : true);
1928
+ } else {
1929
+ window.addEventListener("mousedown", handleGlobalMousedown, true);
1930
+ window.addEventListener("click", handleGlobalClick, true);
1931
+ }
1932
+ window.addEventListener("resize", computePositionAllShownPoppers);
1933
+ }
1934
+ function handleGlobalMousedown(event) {
1935
+ for (let i = 0; i < shownPoppers.length; i++) {
1936
+ const popper2 = shownPoppers[i];
1937
+ const popperContent = popper2.popperNode();
1938
+ popper2.$_mouseDownContains = popperContent.contains(event.target);
1939
+ }
1940
+ }
1941
+ function handleGlobalClick(event) {
1942
+ handleGlobalClose(event);
1943
+ }
1944
+ function handleGlobalTouchend(event) {
1945
+ handleGlobalClose(event, true);
1946
+ }
1947
+ function handleGlobalClose(event, touch = false) {
1948
+ for (let i = 0; i < shownPoppers.length; i++) {
1949
+ const popper2 = shownPoppers[i];
1950
+ const popperContent = popper2.popperNode();
1951
+ const contains2 = popper2.$_mouseDownContains || popperContent.contains(event.target);
1952
+ requestAnimationFrame(() => {
1953
+ if (event.closeAllPopover || event.closePopover && contains2 || popper2.autoHide && !contains2) {
1954
+ popper2.$_handleGlobalClose(event, touch);
1955
+ }
1956
+ });
1957
+ }
1958
+ }
1959
+ function computePositionAllShownPoppers(event) {
1960
+ for (let i = 0; i < shownPoppers.length; i++) {
1961
+ const popper2 = shownPoppers[i];
1962
+ popper2.$_computePosition(event);
1963
+ }
1964
+ }
1965
+ function getInternetExplorerVersion() {
1966
+ var ua = window.navigator.userAgent;
1967
+ var msie = ua.indexOf("MSIE ");
1968
+ if (msie > 0) {
1969
+ return parseInt(ua.substring(msie + 5, ua.indexOf(".", msie)), 10);
1970
+ }
1971
+ var trident = ua.indexOf("Trident/");
1972
+ if (trident > 0) {
1973
+ var rv = ua.indexOf("rv:");
1974
+ return parseInt(ua.substring(rv + 3, ua.indexOf(".", rv)), 10);
1975
+ }
1976
+ var edge = ua.indexOf("Edge/");
1977
+ if (edge > 0) {
1978
+ return parseInt(ua.substring(edge + 5, ua.indexOf(".", edge)), 10);
1979
+ }
1980
+ return -1;
1981
+ }
1982
+ let isIE;
1983
+ function initCompat() {
1984
+ if (!initCompat.init) {
1985
+ initCompat.init = true;
1986
+ isIE = getInternetExplorerVersion() !== -1;
1987
+ }
1988
+ }
1989
+ var script = {
1990
+ name: "ResizeObserver",
1991
+ props: {
1992
+ emitOnMount: {
1993
+ type: Boolean,
1994
+ default: false
1995
+ },
1996
+ ignoreWidth: {
1997
+ type: Boolean,
1998
+ default: false
1999
+ },
2000
+ ignoreHeight: {
2001
+ type: Boolean,
2002
+ default: false
2003
+ }
2004
+ },
2005
+ emits: [
2006
+ "notify"
2007
+ ],
2008
+ mounted() {
2009
+ initCompat();
2010
+ nextTick$1(() => {
2011
+ this._w = this.$el.offsetWidth;
2012
+ this._h = this.$el.offsetHeight;
2013
+ if (this.emitOnMount) {
2014
+ this.emitSize();
2015
+ }
2016
+ });
2017
+ const object = document.createElement("object");
2018
+ this._resizeObject = object;
2019
+ object.setAttribute("aria-hidden", "true");
2020
+ object.setAttribute("tabindex", -1);
2021
+ object.onload = this.addResizeHandlers;
2022
+ object.type = "text/html";
2023
+ if (isIE) {
2024
+ this.$el.appendChild(object);
2025
+ }
2026
+ object.data = "about:blank";
2027
+ if (!isIE) {
2028
+ this.$el.appendChild(object);
2029
+ }
2030
+ },
2031
+ beforeUnmount() {
2032
+ this.removeResizeHandlers();
2033
+ },
2034
+ methods: {
2035
+ compareAndNotify() {
2036
+ if (!this.ignoreWidth && this._w !== this.$el.offsetWidth || !this.ignoreHeight && this._h !== this.$el.offsetHeight) {
2037
+ this._w = this.$el.offsetWidth;
2038
+ this._h = this.$el.offsetHeight;
2039
+ this.emitSize();
2040
+ }
2041
+ },
2042
+ emitSize() {
2043
+ this.$emit("notify", {
2044
+ width: this._w,
2045
+ height: this._h
2046
+ });
2047
+ },
2048
+ addResizeHandlers() {
2049
+ this._resizeObject.contentDocument.defaultView.addEventListener("resize", this.compareAndNotify);
2050
+ this.compareAndNotify();
2051
+ },
2052
+ removeResizeHandlers() {
2053
+ if (this._resizeObject && this._resizeObject.onload) {
2054
+ if (!isIE && this._resizeObject.contentDocument) {
2055
+ this._resizeObject.contentDocument.defaultView.removeEventListener("resize", this.compareAndNotify);
2056
+ }
2057
+ this.$el.removeChild(this._resizeObject);
2058
+ this._resizeObject.onload = null;
2059
+ this._resizeObject = null;
2060
+ }
2061
+ }
2062
+ }
2063
+ };
2064
+ const _withId = /* @__PURE__ */ withScopeId("data-v-b329ee4c");
2065
+ pushScopeId("data-v-b329ee4c");
2066
+ const _hoisted_1$2$1 = {
2067
+ class: "resize-observer",
2068
+ tabindex: "-1"
2069
+ };
2070
+ popScopeId();
2071
+ const render$3 = /* @__PURE__ */ _withId((_ctx, _cache, $props, $setup, $data, $options) => {
2072
+ return openBlock(), createBlock("div", _hoisted_1$2$1);
2073
+ });
2074
+ script.render = render$3;
2075
+ script.__scopeId = "data-v-b329ee4c";
2076
+ script.__file = "src/components/ResizeObserver.vue";
2077
+ var PrivateThemeClass = {
2078
+ computed: {
2079
+ themeClass() {
2080
+ return getThemeClasses(this.theme);
2081
+ }
2082
+ }
2083
+ };
2084
+ var _export_sfc$1 = (sfc, props) => {
2085
+ const target = sfc.__vccOpts || sfc;
2086
+ for (const [key, val] of props) {
2087
+ target[key] = val;
2088
+ }
2089
+ return target;
2090
+ };
2091
+ const _sfc_main$5$1 = defineComponent({
2092
+ name: "VPopperContent",
2093
+ components: {
2094
+ ResizeObserver: script
2095
+ },
2096
+ mixins: [
2097
+ PrivateThemeClass
2098
+ ],
2099
+ props: {
2100
+ popperId: String,
2101
+ theme: String,
2102
+ shown: Boolean,
2103
+ mounted: Boolean,
2104
+ skipTransition: Boolean,
2105
+ autoHide: Boolean,
2106
+ handleResize: Boolean,
2107
+ classes: Object,
2108
+ result: Object
2109
+ },
2110
+ emits: [
2111
+ "hide",
2112
+ "resize"
2113
+ ],
2114
+ methods: {
2115
+ toPx(value) {
2116
+ if (value != null && !isNaN(value)) {
2117
+ return `${value}px`;
2118
+ }
2119
+ return null;
2120
+ }
2121
+ }
2122
+ });
2123
+ const _hoisted_1$1$1 = ["id", "aria-hidden", "tabindex", "data-popper-placement"];
2124
+ const _hoisted_2$1$1 = {
2125
+ ref: "inner",
2126
+ class: "v-popper__inner"
2127
+ };
2128
+ const _hoisted_3$7 = /* @__PURE__ */ createElementVNode("div", { class: "v-popper__arrow-outer" }, null, -1);
2129
+ const _hoisted_4$5 = /* @__PURE__ */ createElementVNode("div", { class: "v-popper__arrow-inner" }, null, -1);
2130
+ const _hoisted_5$2 = [
2131
+ _hoisted_3$7,
2132
+ _hoisted_4$5
2133
+ ];
2134
+ function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
2135
+ const _component_ResizeObserver = resolveComponent("ResizeObserver");
2136
+ return openBlock(), createElementBlock("div", {
2137
+ id: _ctx.popperId,
2138
+ ref: "popover",
2139
+ class: normalizeClass(["v-popper__popper", [
2140
+ _ctx.themeClass,
2141
+ _ctx.classes.popperClass,
2142
+ {
2143
+ "v-popper__popper--shown": _ctx.shown,
2144
+ "v-popper__popper--hidden": !_ctx.shown,
2145
+ "v-popper__popper--show-from": _ctx.classes.showFrom,
2146
+ "v-popper__popper--show-to": _ctx.classes.showTo,
2147
+ "v-popper__popper--hide-from": _ctx.classes.hideFrom,
2148
+ "v-popper__popper--hide-to": _ctx.classes.hideTo,
2149
+ "v-popper__popper--skip-transition": _ctx.skipTransition,
2150
+ "v-popper__popper--arrow-overflow": _ctx.result && _ctx.result.arrow.overflow,
2151
+ "v-popper__popper--no-positioning": !_ctx.result
2152
+ }
2153
+ ]]),
2154
+ style: normalizeStyle(_ctx.result ? {
2155
+ position: _ctx.result.strategy,
2156
+ transform: `translate3d(${Math.round(_ctx.result.x)}px,${Math.round(_ctx.result.y)}px,0)`
2157
+ } : void 0),
2158
+ "aria-hidden": _ctx.shown ? "false" : "true",
2159
+ tabindex: _ctx.autoHide ? 0 : void 0,
2160
+ "data-popper-placement": _ctx.result ? _ctx.result.placement : void 0,
2161
+ onKeyup: _cache[2] || (_cache[2] = withKeys(($event) => _ctx.autoHide && _ctx.$emit("hide"), ["esc"]))
2162
+ }, [
2163
+ createElementVNode("div", {
2164
+ class: "v-popper__backdrop",
2165
+ onClick: _cache[0] || (_cache[0] = ($event) => _ctx.autoHide && _ctx.$emit("hide"))
2166
+ }),
2167
+ createElementVNode("div", {
2168
+ class: "v-popper__wrapper",
2169
+ style: normalizeStyle(_ctx.result ? {
2170
+ transformOrigin: _ctx.result.transformOrigin
2171
+ } : void 0)
2172
+ }, [
2173
+ createElementVNode("div", _hoisted_2$1$1, [
2174
+ _ctx.mounted ? (openBlock(), createElementBlock(Fragment, { key: 0 }, [
2175
+ createElementVNode("div", null, [
2176
+ renderSlot(_ctx.$slots, "default")
2177
+ ]),
2178
+ _ctx.handleResize ? (openBlock(), createBlock(_component_ResizeObserver, {
2179
+ key: 0,
2180
+ onNotify: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("resize", $event))
2181
+ })) : createCommentVNode("", true)
2182
+ ], 64)) : createCommentVNode("", true)
2183
+ ], 512),
2184
+ createElementVNode("div", {
2185
+ ref: "arrow",
2186
+ class: "v-popper__arrow-container",
2187
+ style: normalizeStyle(_ctx.result ? {
2188
+ left: _ctx.toPx(_ctx.result.arrow.x),
2189
+ top: _ctx.toPx(_ctx.result.arrow.y)
2190
+ } : void 0)
2191
+ }, _hoisted_5$2, 4)
2192
+ ], 4)
2193
+ ], 46, _hoisted_1$1$1);
2194
+ }
2195
+ var PrivatePopperContent = /* @__PURE__ */ _export_sfc$1(_sfc_main$5$1, [["render", _sfc_render$2]]);
2196
+ var PrivatePopperMethods = {
2197
+ methods: {
2198
+ show(...args) {
2199
+ return this.$refs.popper.show(...args);
2200
+ },
2201
+ hide(...args) {
2202
+ return this.$refs.popper.hide(...args);
2203
+ },
2204
+ dispose(...args) {
2205
+ return this.$refs.popper.dispose(...args);
2206
+ },
2207
+ onResize(...args) {
2208
+ return this.$refs.popper.onResize(...args);
2209
+ }
2210
+ }
2211
+ };
2212
+ const _sfc_main$4$1 = defineComponent({
2213
+ name: "VPopperWrapper",
2214
+ components: {
2215
+ Popper: PrivatePopper(),
2216
+ PopperContent: PrivatePopperContent
2217
+ },
2218
+ mixins: [
2219
+ PrivatePopperMethods,
2220
+ PrivateThemeClass
2221
+ ],
2222
+ inheritAttrs: false,
2223
+ props: {
2224
+ theme: {
2225
+ type: String,
2226
+ default: null
2227
+ }
2228
+ },
2229
+ computed: {
2230
+ finalTheme() {
2231
+ var _a;
2232
+ return (_a = this.theme) != null ? _a : this.$options.vPopperTheme;
2233
+ },
2234
+ popperAttrs() {
2235
+ const result = __spreadValues2({}, this.$attrs);
2236
+ delete result.class;
2237
+ delete result.style;
2238
+ return result;
2239
+ }
2240
+ },
2241
+ methods: {
2242
+ getTargetNodes() {
2243
+ return Array.from(this.$refs.reference.children).filter((node) => node !== this.$refs.popperContent.$el);
2244
+ }
2245
+ }
2246
+ });
2247
+ function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) {
2248
+ const _component_PopperContent = resolveComponent("PopperContent");
2249
+ const _component_Popper = resolveComponent("Popper");
2250
+ return openBlock(), createBlock(_component_Popper, mergeProps({ ref: "popper" }, _ctx.popperAttrs, {
2251
+ theme: _ctx.finalTheme,
2252
+ "target-nodes": _ctx.getTargetNodes,
2253
+ "reference-node": () => _ctx.$refs.reference,
2254
+ "popper-node": () => _ctx.$refs.popperContent.$el
2255
+ }), {
2256
+ default: withCtx(({
2257
+ popperId,
2258
+ isShown,
2259
+ shouldMountContent,
2260
+ skipTransition,
2261
+ autoHide,
2262
+ show,
2263
+ hide: hide2,
2264
+ handleResize,
2265
+ onResize,
2266
+ classes,
2267
+ result
2268
+ }) => [
2269
+ createElementVNode("div", {
2270
+ ref: "reference",
2271
+ class: normalizeClass(["v-popper", [
2272
+ _ctx.$attrs.class,
2273
+ _ctx.themeClass,
2274
+ {
2275
+ "v-popper--shown": isShown
2276
+ }
2277
+ ]]),
2278
+ style: normalizeStyle(_ctx.$attrs.style)
2279
+ }, [
2280
+ renderSlot(_ctx.$slots, "default", {
2281
+ shown: isShown,
2282
+ show,
2283
+ hide: hide2
2284
+ }),
2285
+ createVNode(_component_PopperContent, {
2286
+ ref: "popperContent",
2287
+ "popper-id": popperId,
2288
+ theme: _ctx.finalTheme,
2289
+ shown: isShown,
2290
+ mounted: shouldMountContent,
2291
+ "skip-transition": skipTransition,
2292
+ "auto-hide": autoHide,
2293
+ "handle-resize": handleResize,
2294
+ classes,
2295
+ result,
2296
+ onHide: hide2,
2297
+ onResize
2298
+ }, {
2299
+ default: withCtx(() => [
2300
+ renderSlot(_ctx.$slots, "popper", {
2301
+ shown: isShown,
2302
+ hide: hide2
2303
+ })
2304
+ ]),
2305
+ _: 2
2306
+ }, 1032, ["popper-id", "theme", "shown", "mounted", "skip-transition", "auto-hide", "handle-resize", "classes", "result", "onHide", "onResize"])
2307
+ ], 6)
2308
+ ]),
2309
+ _: 3
2310
+ }, 16, ["theme", "target-nodes", "reference-node", "popper-node"]);
2311
+ }
2312
+ var PrivatePopperWrapper = /* @__PURE__ */ _export_sfc$1(_sfc_main$4$1, [["render", _sfc_render$1]]);
2313
+ const _sfc_main$3$1 = defineComponent(__spreadProps2(__spreadValues2({}, PrivatePopperWrapper), {
2314
+ name: "VDropdown",
2315
+ vPopperTheme: "dropdown"
2316
+ }));
2317
+ const _sfc_main$2$1 = defineComponent(__spreadProps2(__spreadValues2({}, PrivatePopperWrapper), {
2318
+ name: "VMenu",
2319
+ vPopperTheme: "menu"
2320
+ }));
2321
+ const _sfc_main$1$1 = defineComponent(__spreadProps2(__spreadValues2({}, PrivatePopperWrapper), {
2322
+ name: "VTooltip",
2323
+ vPopperTheme: "tooltip"
2324
+ }));
2325
+ const _sfc_main$q = defineComponent({
2326
+ name: "VTooltipDirective",
2327
+ components: {
2328
+ Popper: PrivatePopper(),
2329
+ PopperContent: PrivatePopperContent
2330
+ },
2331
+ mixins: [
2332
+ PrivatePopperMethods
2333
+ ],
2334
+ inheritAttrs: false,
2335
+ props: {
2336
+ theme: {
2337
+ type: String,
2338
+ default: "tooltip"
2339
+ },
2340
+ html: {
2341
+ type: Boolean,
2342
+ default: (props) => getDefaultConfig(props.theme, "html")
2343
+ },
2344
+ content: {
2345
+ type: [String, Number, Function],
2346
+ default: null
2347
+ },
2348
+ loadingContent: {
2349
+ type: String,
2350
+ default: (props) => getDefaultConfig(props.theme, "loadingContent")
2351
+ }
2352
+ },
2353
+ data() {
2354
+ return {
2355
+ asyncContent: null
2356
+ };
2357
+ },
2358
+ computed: {
2359
+ isContentAsync() {
2360
+ return typeof this.content === "function";
2361
+ },
2362
+ loading() {
2363
+ return this.isContentAsync && this.asyncContent == null;
2364
+ },
2365
+ finalContent() {
2366
+ if (this.isContentAsync) {
2367
+ return this.loading ? this.loadingContent : this.asyncContent;
2368
+ }
2369
+ return this.content;
2370
+ }
2371
+ },
2372
+ watch: {
2373
+ content: {
2374
+ handler() {
2375
+ this.fetchContent(true);
2376
+ },
2377
+ immediate: true
2378
+ },
2379
+ async finalContent() {
2380
+ await this.$nextTick();
2381
+ this.$refs.popper.onResize();
2382
+ }
2383
+ },
2384
+ created() {
2385
+ this.$_fetchId = 0;
2386
+ },
2387
+ methods: {
2388
+ fetchContent(force) {
2389
+ if (typeof this.content === "function" && this.$_isShown && (force || !this.$_loading && this.asyncContent == null)) {
2390
+ this.asyncContent = null;
2391
+ this.$_loading = true;
2392
+ const fetchId = ++this.$_fetchId;
2393
+ const result = this.content(this);
2394
+ if (result.then) {
2395
+ result.then((res) => this.onResult(fetchId, res));
2396
+ } else {
2397
+ this.onResult(fetchId, result);
2398
+ }
2399
+ }
2400
+ },
2401
+ onResult(fetchId, result) {
2402
+ if (fetchId !== this.$_fetchId)
2403
+ return;
2404
+ this.$_loading = false;
2405
+ this.asyncContent = result;
2406
+ },
2407
+ onShow() {
2408
+ this.$_isShown = true;
2409
+ this.fetchContent();
2410
+ },
2411
+ onHide() {
2412
+ this.$_isShown = false;
2413
+ }
2414
+ }
2415
+ });
2416
+ const _hoisted_1$l = ["innerHTML"];
2417
+ const _hoisted_2$a = ["textContent"];
2418
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
2419
+ const _component_PopperContent = resolveComponent("PopperContent");
2420
+ const _component_Popper = resolveComponent("Popper");
2421
+ return openBlock(), createBlock(_component_Popper, mergeProps({ ref: "popper" }, _ctx.$attrs, {
2422
+ theme: _ctx.theme,
2423
+ "popper-node": () => _ctx.$refs.popperContent.$el,
2424
+ onApplyShow: _ctx.onShow,
2425
+ onApplyHide: _ctx.onHide
2426
+ }), {
2427
+ default: withCtx(({
2428
+ popperId,
2429
+ isShown,
2430
+ shouldMountContent,
2431
+ skipTransition,
2432
+ autoHide,
2433
+ hide: hide2,
2434
+ handleResize,
2435
+ onResize,
2436
+ classes,
2437
+ result
2438
+ }) => [
2439
+ createVNode(_component_PopperContent, {
2440
+ ref: "popperContent",
2441
+ class: normalizeClass({
2442
+ "v-popper--tooltip-loading": _ctx.loading
2443
+ }),
2444
+ "popper-id": popperId,
2445
+ theme: _ctx.theme,
2446
+ shown: isShown,
2447
+ mounted: shouldMountContent,
2448
+ "skip-transition": skipTransition,
2449
+ "auto-hide": autoHide,
2450
+ "handle-resize": handleResize,
2451
+ classes,
2452
+ result,
2453
+ onHide: hide2,
2454
+ onResize
2455
+ }, {
2456
+ default: withCtx(() => [
2457
+ _ctx.html ? (openBlock(), createElementBlock("div", {
2458
+ key: 0,
2459
+ innerHTML: _ctx.finalContent
2460
+ }, null, 8, _hoisted_1$l)) : (openBlock(), createElementBlock("div", {
2461
+ key: 1,
2462
+ textContent: toDisplayString(_ctx.finalContent)
2463
+ }, null, 8, _hoisted_2$a))
2464
+ ]),
2465
+ _: 2
2466
+ }, 1032, ["class", "popper-id", "theme", "shown", "mounted", "skip-transition", "auto-hide", "handle-resize", "classes", "result", "onHide", "onResize"])
2467
+ ]),
2468
+ _: 1
2469
+ }, 16, ["theme", "popper-node", "onApplyShow", "onApplyHide"]);
2470
+ }
2471
+ var PrivateTooltipDirective = /* @__PURE__ */ _export_sfc$1(_sfc_main$q, [["render", _sfc_render]]);
2472
+ const TARGET_CLASS = "v-popper--has-tooltip";
2473
+ function getPlacement(options2, modifiers) {
2474
+ let result = options2.placement;
2475
+ if (!result && modifiers) {
2476
+ for (const pos of placements$1) {
2477
+ if (modifiers[pos]) {
2478
+ result = pos;
2479
+ }
2480
+ }
2481
+ }
2482
+ if (!result) {
2483
+ result = getDefaultConfig(options2.theme || "tooltip", "placement");
2484
+ }
2485
+ return result;
2486
+ }
2487
+ function getOptions(el, value, modifiers) {
2488
+ let options2;
2489
+ const type = typeof value;
2490
+ if (type === "string") {
2491
+ options2 = { content: value };
2492
+ } else if (value && type === "object") {
2493
+ options2 = value;
2494
+ } else {
2495
+ options2 = { content: false };
2496
+ }
2497
+ options2.placement = getPlacement(options2, modifiers);
2498
+ options2.targetNodes = () => [el];
2499
+ options2.referenceNode = () => el;
2500
+ return options2;
2501
+ }
2502
+ let directiveApp;
2503
+ let directives;
2504
+ let uid = 0;
2505
+ function ensureDirectiveApp() {
2506
+ if (directiveApp)
2507
+ return;
2508
+ directives = ref([]);
2509
+ directiveApp = createApp({
2510
+ name: "VTooltipDirectiveApp",
2511
+ setup() {
2512
+ return {
2513
+ directives
2514
+ };
2515
+ },
2516
+ render() {
2517
+ return this.directives.map((directive) => {
2518
+ return h(PrivateTooltipDirective, __spreadProps2(__spreadValues2({}, directive.options), {
2519
+ shown: directive.shown.value || directive.options.shown,
2520
+ key: directive.id
2521
+ }));
2522
+ });
2523
+ },
2524
+ devtools: {
2525
+ hide: true
2526
+ }
2527
+ });
2528
+ const mountTarget = document.createElement("div");
2529
+ document.body.appendChild(mountTarget);
2530
+ directiveApp.mount(mountTarget);
2531
+ }
2532
+ function createTooltip(el, value, modifiers) {
2533
+ ensureDirectiveApp();
2534
+ const options2 = ref(getOptions(el, value, modifiers));
2535
+ const shown = ref(false);
2536
+ const item = {
2537
+ id: uid++,
2538
+ options: options2,
2539
+ shown
2540
+ };
2541
+ directives.value.push(item);
2542
+ if (el.classList) {
2543
+ el.classList.add(TARGET_CLASS);
2544
+ }
2545
+ const result = el.$_popper = {
2546
+ options: options2,
2547
+ item,
2548
+ show() {
2549
+ shown.value = true;
2550
+ },
2551
+ hide() {
2552
+ shown.value = false;
2553
+ }
2554
+ };
2555
+ return result;
2556
+ }
2557
+ function destroyTooltip(el) {
2558
+ if (el.$_popper) {
2559
+ const index = directives.value.indexOf(el.$_popper.item);
2560
+ if (index !== -1)
2561
+ directives.value.splice(index, 1);
2562
+ delete el.$_popper;
2563
+ delete el.$_popperOldShown;
2564
+ delete el.$_popperMountTarget;
2565
+ }
2566
+ if (el.classList) {
2567
+ el.classList.remove(TARGET_CLASS);
2568
+ }
2569
+ }
2570
+ function bind(el, { value, oldValue, modifiers }) {
2571
+ const options2 = getOptions(el, value, modifiers);
2572
+ if (!options2.content || getDefaultConfig(options2.theme || "tooltip", "disabled")) {
2573
+ destroyTooltip(el);
2574
+ } else {
2575
+ let directive;
2576
+ if (el.$_popper) {
2577
+ directive = el.$_popper;
2578
+ directive.options.value = options2;
2579
+ } else {
2580
+ directive = createTooltip(el, value, modifiers);
2581
+ }
2582
+ if (typeof value.shown !== "undefined" && value.shown !== el.$_popperOldShown) {
2583
+ el.$_popperOldShown = value.shown;
2584
+ value.shown ? directive.show() : directive.hide();
2585
+ }
2586
+ }
2587
+ }
2588
+ var PrivateVTooltip = {
2589
+ beforeMount: bind,
2590
+ updated: bind,
2591
+ beforeUnmount(el) {
2592
+ destroyTooltip(el);
2593
+ }
2594
+ };
2595
+ function addListeners(el) {
2596
+ el.addEventListener("click", onClick);
2597
+ el.addEventListener("touchstart", onTouchStart, supportsPassive ? {
2598
+ passive: true
2599
+ } : false);
2600
+ }
2601
+ function removeListeners(el) {
2602
+ el.removeEventListener("click", onClick);
2603
+ el.removeEventListener("touchstart", onTouchStart);
2604
+ el.removeEventListener("touchend", onTouchEnd);
2605
+ el.removeEventListener("touchcancel", onTouchCancel);
2606
+ }
2607
+ function onClick(event) {
2608
+ const el = event.currentTarget;
2609
+ event.closePopover = !el.$_vclosepopover_touch;
2610
+ event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all;
2611
+ }
2612
+ function onTouchStart(event) {
2613
+ if (event.changedTouches.length === 1) {
2614
+ const el = event.currentTarget;
2615
+ el.$_vclosepopover_touch = true;
2616
+ const touch = event.changedTouches[0];
2617
+ el.$_vclosepopover_touchPoint = touch;
2618
+ el.addEventListener("touchend", onTouchEnd);
2619
+ el.addEventListener("touchcancel", onTouchCancel);
2620
+ }
2621
+ }
2622
+ function onTouchEnd(event) {
2623
+ const el = event.currentTarget;
2624
+ el.$_vclosepopover_touch = false;
2625
+ if (event.changedTouches.length === 1) {
2626
+ const touch = event.changedTouches[0];
2627
+ const firstTouch = el.$_vclosepopover_touchPoint;
2628
+ event.closePopover = Math.abs(touch.screenY - firstTouch.screenY) < 20 && Math.abs(touch.screenX - firstTouch.screenX) < 20;
2629
+ event.closeAllPopover = el.$_closePopoverModifiers && !!el.$_closePopoverModifiers.all;
2630
+ }
2631
+ }
2632
+ function onTouchCancel(event) {
2633
+ const el = event.currentTarget;
2634
+ el.$_vclosepopover_touch = false;
2635
+ }
2636
+ var PrivateVClosePopper = {
2637
+ beforeMount(el, { value, modifiers }) {
2638
+ el.$_closePopoverModifiers = modifiers;
2639
+ if (typeof value === "undefined" || value) {
2640
+ addListeners(el);
2641
+ }
2642
+ },
2643
+ updated(el, { value, oldValue, modifiers }) {
2644
+ el.$_closePopoverModifiers = modifiers;
2645
+ if (value !== oldValue) {
2646
+ if (typeof value === "undefined" || value) {
2647
+ addListeners(el);
2648
+ } else {
2649
+ removeListeners(el);
2650
+ }
2651
+ }
2652
+ },
2653
+ beforeUnmount(el) {
2654
+ removeListeners(el);
2655
+ }
2656
+ };
2657
+ function install$1(app, options2 = {}) {
2658
+ if (app.$_vTooltipInstalled)
2659
+ return;
2660
+ app.$_vTooltipInstalled = true;
2661
+ assign(config$2, options2);
2662
+ app.directive("tooltip", PrivateVTooltip);
2663
+ app.directive("close-popper", PrivateVClosePopper);
2664
+ app.component("v-tooltip", _sfc_main$1$1);
2665
+ app.component("VTooltip", _sfc_main$1$1);
2666
+ app.component("v-dropdown", _sfc_main$3$1);
2667
+ app.component("VDropdown", _sfc_main$3$1);
2668
+ app.component("v-menu", _sfc_main$2$1);
2669
+ app.component("VMenu", _sfc_main$2$1);
2670
+ }
2671
+ const plugin = {
2672
+ version: "2.0.0-beta.6",
2673
+ install: install$1,
2674
+ options: config$2
2675
+ };
21
2676
  var defaultCleekOptions = {
22
2677
  colors: {
23
2678
  primary: "#559933",
@@ -488,9 +3143,9 @@ function insertCss(css2) {
488
3143
  }
489
3144
  var idPool = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
490
3145
  function nextUniqueId() {
491
- var size = 12;
3146
+ var size2 = 12;
492
3147
  var id = "";
493
- while (size-- > 0) {
3148
+ while (size2-- > 0) {
494
3149
  id += idPool[Math.random() * 62 | 0];
495
3150
  }
496
3151
  return id;
@@ -694,10 +3349,10 @@ function toHex(unicode) {
694
3349
  return decoded.length === 1 ? decoded[0].toString(16) : null;
695
3350
  }
696
3351
  function codePointAt(string, index) {
697
- var size = string.length;
3352
+ var size2 = string.length;
698
3353
  var first = string.charCodeAt(index);
699
3354
  var second;
700
- if (first >= 55296 && first <= 56319 && size > index + 1) {
3355
+ if (first >= 55296 && first <= 56319 && size2 > index + 1) {
701
3356
  second = string.charCodeAt(index + 1);
702
3357
  if (second >= 56320 && second <= 57343) {
703
3358
  return (first - 55296) * 1024 + second - 56320 + 65536;
@@ -970,8 +3625,8 @@ function registerPlugins(nextPlugins, _ref2) {
970
3625
  delete providers[k];
971
3626
  }
972
3627
  });
973
- _plugins.forEach(function(plugin) {
974
- var mixout8 = plugin.mixout ? plugin.mixout() : {};
3628
+ _plugins.forEach(function(plugin2) {
3629
+ var mixout8 = plugin2.mixout ? plugin2.mixout() : {};
975
3630
  Object.keys(mixout8).forEach(function(tk) {
976
3631
  if (typeof mixout8[tk] === "function") {
977
3632
  obj[tk] = mixout8[tk];
@@ -985,8 +3640,8 @@ function registerPlugins(nextPlugins, _ref2) {
985
3640
  });
986
3641
  }
987
3642
  });
988
- if (plugin.hooks) {
989
- var hooks8 = plugin.hooks();
3643
+ if (plugin2.hooks) {
3644
+ var hooks8 = plugin2.hooks();
990
3645
  Object.keys(hooks8).forEach(function(hook) {
991
3646
  if (!_hooks[hook]) {
992
3647
  _hooks[hook] = [];
@@ -994,8 +3649,8 @@ function registerPlugins(nextPlugins, _ref2) {
994
3649
  _hooks[hook].push(hooks8[hook]);
995
3650
  });
996
3651
  }
997
- if (plugin.provides) {
998
- plugin.provides(providers);
3652
+ if (plugin2.provides) {
3653
+ plugin2.provides(providers);
999
3654
  }
1000
3655
  });
1001
3656
  return obj;
@@ -16436,14 +19091,14 @@ const _sfc_main$n = /* @__PURE__ */ defineComponent({
16436
19091
  }
16437
19092
  return list;
16438
19093
  });
16439
- function onClick(event) {
19094
+ function onClick2(event) {
16440
19095
  emits("click", event);
16441
19096
  }
16442
19097
  return (_ctx, _cache) => {
16443
19098
  return openBlock(), createElementBlock("div", {
16444
19099
  class: normalizeClass(["ck-icon", unref$1(computedClass)]),
16445
19100
  style: normalizeStyle(unref$1(computedStyle)),
16446
- onClick: _cache[0] || (_cache[0] = ($event) => onClick($event))
19101
+ onClick: _cache[0] || (_cache[0] = ($event) => onClick2($event))
16447
19102
  }, [
16448
19103
  unref$1(computediconPack) === "font-awesome" ? (openBlock(), createBlock(unref$1(FontAwesomeIcon), {
16449
19104
  key: 0,
@@ -16795,7 +19450,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
16795
19450
  list.push({ width: props.width });
16796
19451
  return list;
16797
19452
  });
16798
- function onClick(event) {
19453
+ function onClick2(event) {
16799
19454
  emits("click", event);
16800
19455
  }
16801
19456
  onMounted(() => {
@@ -16810,7 +19465,7 @@ const _sfc_main$h = /* @__PURE__ */ defineComponent({
16810
19465
  "aria-label": __props.title,
16811
19466
  disabled: __props.disabled,
16812
19467
  style: normalizeStyle(unref$1(computedStyle)),
16813
- onClick: _cache[0] || (_cache[0] = ($event) => onClick($event))
19468
+ onClick: _cache[0] || (_cache[0] = ($event) => onClick2($event))
16814
19469
  }, [
16815
19470
  __props.icon ? (openBlock(), createBlock(ckIcon, {
16816
19471
  key: 0,
@@ -16907,7 +19562,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
16907
19562
  return props.align;
16908
19563
  return "left";
16909
19564
  });
16910
- const onClick = (event) => {
19565
+ const onClick2 = (event) => {
16911
19566
  if (props.autoSelect)
16912
19567
  event.target.select();
16913
19568
  emits("click", event);
@@ -16992,7 +19647,7 @@ const _sfc_main$f = /* @__PURE__ */ defineComponent({
16992
19647
  disabled: __props.disabled,
16993
19648
  onChange: _cache[1] || (_cache[1] = ($event) => onChange2($event)),
16994
19649
  onInput: _cache[2] || (_cache[2] = ($event) => onInput($event)),
16995
- onClick: _cache[3] || (_cache[3] = ($event) => onClick($event))
19650
+ onClick: _cache[3] || (_cache[3] = ($event) => onClick2($event))
16996
19651
  }, null, 42, _hoisted_1$e), [
16997
19652
  [vModelDynamic, unref$1(value)]
16998
19653
  ]),
@@ -18386,8 +21041,8 @@ const qmStr = {
18386
21041
  }
18387
21042
  return result;
18388
21043
  },
18389
- padZeros(num, size = 2) {
18390
- return `000000000${num}`.substr(-size);
21044
+ padZeros(num, size2 = 2) {
21045
+ return `000000000${num}`.substr(-size2);
18391
21046
  },
18392
21047
  removeDiacritics(str) {
18393
21048
  return str.normalize("NFD").replace(/([^n\u0300-\u036f]|n(?!\u0303(?![\u0300-\u036f])))[\u0300-\u036f]+/gi, "$1").normalize();
@@ -19127,7 +21782,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
19127
21782
  return props.modelValue === null;
19128
21783
  }
19129
21784
  });
19130
- function onClick(event) {
21785
+ function onClick2(event) {
19131
21786
  emits("click", event);
19132
21787
  }
19133
21788
  function onChange2(event) {
@@ -19175,7 +21830,7 @@ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
19175
21830
  "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => isRef$1(value) ? value.value = $event : null),
19176
21831
  class: normalizeClass(unref$1(computedClassSelect)),
19177
21832
  disabled: __props.disabled,
19178
- onClick: _cache[2] || (_cache[2] = ($event) => onClick($event)),
21833
+ onClick: _cache[2] || (_cache[2] = ($event) => onClick2($event)),
19179
21834
  onChange: _cache[3] || (_cache[3] = ($event) => onChange2($event))
19180
21835
  }, [
19181
21836
  (openBlock(true), createElementBlock(Fragment, null, renderList(unref$1(filteredOptions), (option) => {
@@ -19228,10 +21883,10 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
19228
21883
  list.push("is-squared");
19229
21884
  if (props.outlined)
19230
21885
  list.push("is-outlined");
19231
- let size = "s";
21886
+ let size2 = "s";
19232
21887
  if (props.size === "xs" || props.size === "m" || props.size === "l")
19233
- size = props.size;
19234
- list.push(`ck-switch--size-${size}`);
21888
+ size2 = props.size;
21889
+ list.push(`ck-switch--size-${size2}`);
19235
21890
  return list;
19236
21891
  });
19237
21892
  const computedAttributes = computed$2(() => {
@@ -19618,8 +22273,8 @@ function getTrueOffsetParent(element) {
19618
22273
  }
19619
22274
  function getContainingBlock(element) {
19620
22275
  var isFirefox = navigator.userAgent.toLowerCase().indexOf("firefox") !== -1;
19621
- var isIE = navigator.userAgent.indexOf("Trident") !== -1;
19622
- if (isIE && isHTMLElement(element)) {
22276
+ var isIE2 = navigator.userAgent.indexOf("Trident") !== -1;
22277
+ if (isIE2 && isHTMLElement(element)) {
19623
22278
  var elementCss = getComputedStyle$1(element);
19624
22279
  if (elementCss.position === "fixed") {
19625
22280
  return null;
@@ -19650,8 +22305,8 @@ function getOffsetParent(element) {
19650
22305
  function getMainAxisFromPlacement(placement) {
19651
22306
  return ["top", "bottom"].indexOf(placement) >= 0 ? "x" : "y";
19652
22307
  }
19653
- function within(min$1, value, max$1) {
19654
- return max(min$1, min(value, max$1));
22308
+ function within(min$12, value, max$12) {
22309
+ return max(min$12, min(value, max$12));
19655
22310
  }
19656
22311
  function withinMaxClamp(min2, value, max2) {
19657
22312
  var v = within(min2, value, max2);
@@ -20132,14 +22787,14 @@ function computeAutoPlacement(state, options) {
20132
22787
  }
20133
22788
  var _options = options, placement = _options.placement, boundary = _options.boundary, rootBoundary = _options.rootBoundary, padding = _options.padding, flipVariations = _options.flipVariations, _options$allowedAutoP = _options.allowedAutoPlacements, allowedAutoPlacements = _options$allowedAutoP === void 0 ? placements : _options$allowedAutoP;
20134
22789
  var variation = getVariation(placement);
20135
- var placements$1 = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function(placement2) {
22790
+ var placements$12 = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function(placement2) {
20136
22791
  return getVariation(placement2) === variation;
20137
22792
  }) : basePlacements;
20138
- var allowedPlacements = placements$1.filter(function(placement2) {
22793
+ var allowedPlacements = placements$12.filter(function(placement2) {
20139
22794
  return allowedAutoPlacements.indexOf(placement2) >= 0;
20140
22795
  });
20141
22796
  if (allowedPlacements.length === 0) {
20142
- allowedPlacements = placements$1;
22797
+ allowedPlacements = placements$12;
20143
22798
  }
20144
22799
  var overflows = allowedPlacements.reduce(function(acc, placement2) {
20145
22800
  acc[placement2] = detectOverflow(state, {
@@ -20407,8 +23062,8 @@ function preventOverflow(_ref2) {
20407
23062
  var altSide = mainAxis === "y" ? bottom : right;
20408
23063
  var len = mainAxis === "y" ? "height" : "width";
20409
23064
  var offset2 = popperOffsets2[mainAxis];
20410
- var min$1 = offset2 + overflow[mainSide];
20411
- var max$1 = offset2 - overflow[altSide];
23065
+ var min$12 = offset2 + overflow[mainSide];
23066
+ var max$12 = offset2 - overflow[altSide];
20412
23067
  var additive = tether ? -popperRect[len] / 2 : 0;
20413
23068
  var minLen = variation === start ? referenceRect[len] : popperRect[len];
20414
23069
  var maxLen = variation === start ? -popperRect[len] : -referenceRect[len];
@@ -20428,7 +23083,7 @@ function preventOverflow(_ref2) {
20428
23083
  var offsetModifierValue = (_offsetModifierState$ = offsetModifierState == null ? void 0 : offsetModifierState[mainAxis]) != null ? _offsetModifierState$ : 0;
20429
23084
  var tetherMin = offset2 + minOffset - offsetModifierValue - clientOffset;
20430
23085
  var tetherMax = offset2 + maxOffset - offsetModifierValue;
20431
- var preventedOffset = within(tether ? min(min$1, tetherMin) : min$1, offset2, tether ? max(max$1, tetherMax) : max$1);
23086
+ var preventedOffset = within(tether ? min(min$12, tetherMin) : min$12, offset2, tether ? max(max$12, tetherMax) : max$12);
20432
23087
  popperOffsets2[mainAxis] = preventedOffset;
20433
23088
  data[mainAxis] = preventedOffset - offset2;
20434
23089
  }
@@ -20973,8 +23628,8 @@ var setDefaultProps = function setDefaultProps2(partialProps) {
20973
23628
  };
20974
23629
  function getExtendedPassedProps(passedProps) {
20975
23630
  var plugins2 = passedProps.plugins || [];
20976
- var pluginProps2 = plugins2.reduce(function(acc, plugin) {
20977
- var name = plugin.name, defaultValue = plugin.defaultValue;
23631
+ var pluginProps2 = plugins2.reduce(function(acc, plugin2) {
23632
+ var name = plugin2.name, defaultValue = plugin2.defaultValue;
20978
23633
  if (name) {
20979
23634
  var _name;
20980
23635
  acc[name] = passedProps[name] !== void 0 ? passedProps[name] : (_name = defaultProps[name]) != null ? _name : defaultValue;
@@ -21176,11 +23831,11 @@ function createTippy(reference2, passedProps) {
21176
23831
  instance.popper = popper2;
21177
23832
  reference2._tippy = instance;
21178
23833
  popper2._tippy = instance;
21179
- var pluginsHooks = plugins2.map(function(plugin) {
21180
- return plugin.fn(instance);
23834
+ var pluginsHooks = plugins2.map(function(plugin2) {
23835
+ return plugin2.fn(instance);
21181
23836
  });
21182
23837
  var hasAriaExpanded = reference2.hasAttribute("aria-expanded");
21183
- addListeners();
23838
+ addListeners2();
21184
23839
  handleAriaExpandedAttribute();
21185
23840
  handleStyles();
21186
23841
  invokeHook("onCreate", [instance]);
@@ -21324,21 +23979,21 @@ function createTippy(reference2, passedProps) {
21324
23979
  function onTouchMove() {
21325
23980
  didTouchMove = true;
21326
23981
  }
21327
- function onTouchStart() {
23982
+ function onTouchStart2() {
21328
23983
  didTouchMove = false;
21329
23984
  }
21330
23985
  function addDocumentPress() {
21331
23986
  var doc = getDocument();
21332
23987
  doc.addEventListener("mousedown", onDocumentPress, true);
21333
23988
  doc.addEventListener("touchend", onDocumentPress, TOUCH_OPTIONS);
21334
- doc.addEventListener("touchstart", onTouchStart, TOUCH_OPTIONS);
23989
+ doc.addEventListener("touchstart", onTouchStart2, TOUCH_OPTIONS);
21335
23990
  doc.addEventListener("touchmove", onTouchMove, TOUCH_OPTIONS);
21336
23991
  }
21337
23992
  function removeDocumentPress() {
21338
23993
  var doc = getDocument();
21339
23994
  doc.removeEventListener("mousedown", onDocumentPress, true);
21340
23995
  doc.removeEventListener("touchend", onDocumentPress, TOUCH_OPTIONS);
21341
- doc.removeEventListener("touchstart", onTouchStart, TOUCH_OPTIONS);
23996
+ doc.removeEventListener("touchstart", onTouchStart2, TOUCH_OPTIONS);
21342
23997
  doc.removeEventListener("touchmove", onTouchMove, TOUCH_OPTIONS);
21343
23998
  }
21344
23999
  function onTransitionedOut(duration, callback) {
@@ -21381,7 +24036,7 @@ function createTippy(reference2, passedProps) {
21381
24036
  });
21382
24037
  });
21383
24038
  }
21384
- function addListeners() {
24039
+ function addListeners2() {
21385
24040
  if (getIsCustomTouchBehavior()) {
21386
24041
  on("touchstart", onTrigger2, {
21387
24042
  passive: true
@@ -21408,7 +24063,7 @@ function createTippy(reference2, passedProps) {
21408
24063
  }
21409
24064
  });
21410
24065
  }
21411
- function removeListeners() {
24066
+ function removeListeners2() {
21412
24067
  listeners.forEach(function(_ref2) {
21413
24068
  var node = _ref2.node, eventType = _ref2.eventType, handler = _ref2.handler, options = _ref2.options;
21414
24069
  node.removeEventListener(eventType, handler, options);
@@ -21646,13 +24301,13 @@ function createTippy(reference2, passedProps) {
21646
24301
  return;
21647
24302
  }
21648
24303
  invokeHook("onBeforeUpdate", [instance, partialProps]);
21649
- removeListeners();
24304
+ removeListeners2();
21650
24305
  var prevProps = instance.props;
21651
24306
  var nextProps = evaluateProps(reference2, Object.assign({}, prevProps, removeUndefinedProps(partialProps), {
21652
24307
  ignoreAttributes: true
21653
24308
  }));
21654
24309
  instance.props = nextProps;
21655
- addListeners();
24310
+ addListeners2();
21656
24311
  if (prevProps.interactiveDebounce !== nextProps.interactiveDebounce) {
21657
24312
  cleanupInteractiveMouseListeners();
21658
24313
  debouncedOnMouseMove = debounce(onMouseMove, nextProps.interactiveDebounce);
@@ -21808,7 +24463,7 @@ function createTippy(reference2, passedProps) {
21808
24463
  }
21809
24464
  instance.clearDelayTimeouts();
21810
24465
  instance.unmount();
21811
- removeListeners();
24466
+ removeListeners2();
21812
24467
  delete reference2._tippy;
21813
24468
  instance.state.isDestroyed = true;
21814
24469
  invokeHook("onDestroy", [instance]);
@@ -22067,6 +24722,7 @@ function getCleekOptions(userOptions) {
22067
24722
  }
22068
24723
  const install = function installCleek(app, options) {
22069
24724
  app.config.globalProperties.$cleekOptions = getCleekOptions(options);
24725
+ app.use(plugin);
22070
24726
  Object.entries(components).forEach(([componentName, component]) => {
22071
24727
  app.component(componentName, component);
22072
24728
  });