bitboss-ui 2.1.7 → 2.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (174) hide show
  1. package/dist/index106.js +7 -7
  2. package/dist/index111.js +1 -1
  3. package/dist/index113.js +1 -1
  4. package/dist/index121.js +10 -10
  5. package/dist/index13.js +1 -1
  6. package/dist/index131.js +4 -4
  7. package/dist/index136.js +1 -1
  8. package/dist/index138.js +1 -1
  9. package/dist/index15.js +8 -8
  10. package/dist/index17.js +3 -3
  11. package/dist/index19.js +8 -8
  12. package/dist/index206.js +2 -2
  13. package/dist/index208.js +2 -2
  14. package/dist/index209.js +66 -5
  15. package/dist/index21.js +16 -16
  16. package/dist/index211.js +13 -5
  17. package/dist/index212.js +177 -5
  18. package/dist/index213.js +3 -5
  19. package/dist/index214.js +2 -5
  20. package/dist/index215.js +2 -5
  21. package/dist/index216.js +18 -3
  22. package/dist/index217.js +12 -2
  23. package/dist/index218.js +51 -8
  24. package/dist/index219.js +15 -250
  25. package/dist/index220.js +12 -52
  26. package/dist/index221.js +17 -44
  27. package/dist/index222.js +29 -5
  28. package/dist/index223.js +12 -59
  29. package/dist/index224.js +16 -13
  30. package/dist/index225.js +5 -85
  31. package/dist/index226.js +6 -0
  32. package/dist/index227.js +105 -28
  33. package/dist/index229.js +99 -50
  34. package/dist/index23.js +15 -15
  35. package/dist/index231.js +113 -12
  36. package/dist/index233.js +224 -30
  37. package/dist/index234.js +4 -2
  38. package/dist/index235.js +11 -2
  39. package/dist/index236.js +20 -2
  40. package/dist/index237.js +197 -7
  41. package/dist/index239.js +34 -4
  42. package/dist/index240.js +2 -66
  43. package/dist/index241.js +15 -0
  44. package/dist/index242.js +2 -13
  45. package/dist/index243.js +2 -5
  46. package/dist/index244.js +2 -2
  47. package/dist/index245.js +7 -2
  48. package/dist/index246.js +7 -11
  49. package/dist/index247.js +5 -20
  50. package/dist/index248.js +5 -113
  51. package/dist/index249.js +7 -0
  52. package/dist/index25.js +3 -3
  53. package/dist/index250.js +5 -10
  54. package/dist/index251.js +5 -3
  55. package/dist/index252.js +5 -4
  56. package/dist/index253.js +5 -197
  57. package/dist/index254.js +10 -0
  58. package/dist/index255.js +250 -3
  59. package/dist/index256.js +52 -2
  60. package/dist/index257.js +43 -12
  61. package/dist/index258.js +5 -106
  62. package/dist/index259.js +62 -0
  63. package/dist/index260.js +81 -95
  64. package/dist/index262.js +2 -177
  65. package/dist/index263.js +3 -18
  66. package/dist/index264.js +5 -12
  67. package/dist/index265.js +10 -6
  68. package/dist/index266.js +3 -228
  69. package/dist/index267.js +9 -3
  70. package/dist/index268.js +3 -6
  71. package/dist/index269.js +6 -16
  72. package/dist/index27.js +1 -1
  73. package/dist/index270.js +15 -8
  74. package/dist/index271.js +9 -23
  75. package/dist/index272.js +23 -9
  76. package/dist/index273.js +1 -1
  77. package/dist/index277.js +1 -1
  78. package/dist/index278.js +1 -1
  79. package/dist/index279.js +1 -1
  80. package/dist/index280.js +3 -280
  81. package/dist/index282.js +7 -16
  82. package/dist/index283.js +4 -2
  83. package/dist/index284.js +3 -16
  84. package/dist/index285.js +3 -2
  85. package/dist/index286.js +3 -19
  86. package/dist/index287.js +2 -2
  87. package/dist/index288.js +27 -14
  88. package/dist/index289.js +17 -2
  89. package/dist/index29.js +34 -34
  90. package/dist/index290.js +7 -19
  91. package/dist/index291.js +11 -2
  92. package/dist/index292.js +4 -27
  93. package/dist/index293.js +2 -2
  94. package/dist/index294.js +3 -2
  95. package/dist/index295.js +280 -2
  96. package/dist/index296.js +2 -2
  97. package/dist/index297.js +16 -2
  98. package/dist/index298.js +2 -28
  99. package/dist/index299.js +16 -22
  100. package/dist/index300.js +4 -0
  101. package/dist/index301.js +19 -7
  102. package/dist/index302.js +2 -7
  103. package/dist/index303.js +14 -10
  104. package/dist/index304.js +2 -3
  105. package/dist/index305.js +19 -17
  106. package/dist/index306.js +2 -6
  107. package/dist/index307.js +27 -2
  108. package/dist/index308.js +2 -4
  109. package/dist/index309.js +2 -4
  110. package/dist/index31.js +2 -2
  111. package/dist/index310.js +2 -3
  112. package/dist/index311.js +4 -0
  113. package/dist/index312.js +2 -125
  114. package/dist/index313.js +22 -2
  115. package/dist/index315.js +6 -3
  116. package/dist/index316.js +3 -5
  117. package/dist/index317.js +5 -3
  118. package/dist/index318.js +125 -3
  119. package/dist/index319.js +2 -5
  120. package/dist/index320.js +5 -2
  121. package/dist/index324.js +2 -7
  122. package/dist/index325.js +32 -18
  123. package/dist/index326.js +28 -8
  124. package/dist/index328.js +128 -7
  125. package/dist/index329.js +367 -56
  126. package/dist/index33.js +8 -8
  127. package/dist/index330.js +47 -58
  128. package/dist/index331.js +58 -2
  129. package/dist/index332.js +57 -128
  130. package/dist/index333.js +220 -361
  131. package/dist/index334.js +7 -6
  132. package/dist/index335.js +5 -32
  133. package/dist/index336.js +8 -28
  134. package/dist/index337.js +9 -0
  135. package/dist/index338.js +17 -45
  136. package/dist/index339.js +6 -227
  137. package/dist/index340.js +1 -1
  138. package/dist/{index314.js → index342.js} +1 -1
  139. package/dist/index343.js +129 -3
  140. package/dist/index344.js +421 -467
  141. package/dist/index345.js +113 -422
  142. package/dist/index346.js +478 -123
  143. package/dist/index35.js +4 -4
  144. package/dist/index37.js +20 -20
  145. package/dist/index39.js +8 -8
  146. package/dist/index41.js +2 -2
  147. package/dist/index43.js +8 -8
  148. package/dist/index45.js +8 -8
  149. package/dist/index47.js +2 -2
  150. package/dist/index49.js +3 -3
  151. package/dist/index53.js +1 -1
  152. package/dist/index55.js +1 -1
  153. package/dist/index57.js +2 -2
  154. package/dist/index61.js +3 -3
  155. package/dist/index67.js +1 -1
  156. package/dist/index79.js +4 -4
  157. package/dist/index81.js +1 -1
  158. package/dist/index83.js +2 -2
  159. package/dist/index85.js +1 -1
  160. package/dist/index87.js +1 -1
  161. package/dist/index90.js +3 -3
  162. package/dist/index92.js +2 -2
  163. package/dist/index94.js +3 -3
  164. package/dist/index96.js +1 -1
  165. package/dist/utilities/functions/isNil.d.ts +1 -1
  166. package/package.json +2 -2
  167. package/dist/index210.js +0 -7
  168. package/dist/index228.js +0 -19
  169. package/dist/index230.js +0 -17
  170. package/dist/index232.js +0 -18
  171. package/dist/index238.js +0 -9
  172. package/dist/index281.js +0 -4
  173. package/dist/index327.js +0 -8
  174. package/dist/index341.js +0 -131
package/dist/index225.js CHANGED
@@ -1,88 +1,8 @@
1
- import { defineComponent as h, createElementBlock as n, openBlock as s, normalizeClass as r, createElementVNode as l, renderSlot as t, createCommentVNode as p, createTextVNode as o, toDisplayString as d, unref as b, Fragment as m, renderList as u } from "vue";
2
- import { useLocale as g } from "./index224.js";
3
- const k = { class: "bb-cr-container__container" }, y = {
4
- key: 0,
5
- class: "bb-cr-container__loading-container"
6
- }, $ = {
7
- key: 1,
8
- class: "bb-cr-container__no-data-container"
9
- }, C = /* @__PURE__ */ h({
10
- __name: "OptionsContainer",
11
- props: {
12
- direction: {},
13
- hasErrors: { type: Boolean },
14
- hideLabel: { type: Boolean },
15
- loadingText: {},
16
- loading: { type: Boolean },
17
- noDataText: {},
18
- options: {}
19
- },
20
- setup(f) {
21
- const { t: i } = g();
22
- return (a, T) => (s(), n("span", {
23
- ref: "container",
24
- class: r(["bb-cr-container", {
25
- "bb-cr-container--errors": a.hasErrors,
26
- "bb-cr-container--horizontal": a.direction === "horizontal",
27
- "bb-cr-container--vertical": a.direction === "vertical"
28
- }])
29
- }, [
30
- l("span", k, [
31
- t(a.$slots, "prepend"),
32
- !a.options.length && a.loading ? (s(), n("span", y, [
33
- t(a.$slots, "loading", {}, () => [
34
- o(d(a.loadingText || b(i)("common.loadingText")), 1)
35
- ])
36
- ])) : a.options.length ? p("", !0) : (s(), n("span", $, [
37
- t(a.$slots, "no-data", {}, () => [
38
- o(d(a.noDataText || b(i)("common.noDataText")), 1)
39
- ])
40
- ])),
41
- (s(!0), n(m, null, u(a.options, (e, c) => (s(), n(m, {
42
- key: (e == null ? void 0 : e.valueHash) || c
43
- }, [
44
- t(a.$slots, "option:prepend", {
45
- id: e.valueHash,
46
- checked: !!e.selected,
47
- disabled: !!e.disabled,
48
- item: e.item,
49
- text: e.text
50
- }),
51
- l("label", {
52
- class: r(["bb-cr-container-option", { "bb-base-radio-selected": e.selected }])
53
- }, [
54
- t(a.$slots, "input", {
55
- index: c,
56
- option: e
57
- }),
58
- l("span", {
59
- class: r({
60
- "bb-cr-container-option__text": !0,
61
- "sr-only": a.hideLabel
62
- })
63
- }, [
64
- t(a.$slots, "label", {
65
- checked: !!e.selected,
66
- item: e.item,
67
- text: e.text
68
- }, () => [
69
- o(d(e.text), 1)
70
- ])
71
- ], 2)
72
- ], 2),
73
- t(a.$slots, "option:append", {
74
- id: e.valueHash,
75
- checked: !!e.selected,
76
- disabled: !!e.disabled,
77
- item: e.item,
78
- text: e.text
79
- })
80
- ], 64))), 128)),
81
- t(a.$slots, "append")
82
- ])
83
- ], 2));
84
- }
1
+ const o = (e, t = 50) => new Promise((r) => {
2
+ const n = setInterval(() => {
3
+ e() && (clearInterval(n), r());
4
+ }, t);
85
5
  });
86
6
  export {
87
- C as default
7
+ o as waitFor
88
8
  };
@@ -0,0 +1,6 @@
1
+ import { curry as e } from "./index292.js";
2
+ const t = (n, o, r) => n(r) ? o(r) : r, s = e(t);
3
+ export {
4
+ t as baseWhen,
5
+ s as when
6
+ };
package/dist/index227.js CHANGED
@@ -1,31 +1,108 @@
1
- import { ref as a, computed as s, unref as v } from "vue";
2
- import { useDebounceFn as f } from "./index207.js";
3
- const p = (u) => {
4
- const e = a(0), r = s(() => v(u.items)), t = a([]), n = async (...l) => {
5
- if (Array.isArray(r.value))
6
- t.value = r.value;
7
- else if (typeof r.value == "function") {
8
- const i = ++e.value;
9
- try {
10
- const o = await r.value(...l);
11
- if (i < e.value) {
12
- e.value--;
13
- return;
14
- } else
15
- t.value = o;
16
- } catch (o) {
17
- console.error(o);
1
+ import { defineComponent as y, ref as F, computed as H, watch as N, createElementBlock as L, openBlock as p, Fragment as S, renderList as V, createBlock as A, withModifiers as O, normalizeClass as P, withCtx as $, createTextVNode as z, toDisplayString as D } from "vue";
2
+ import { hash as d } from "./index213.js";
3
+ import { isNil as l } from "./index244.js";
4
+ import E from "./index67.js";
5
+ /* empty css */
6
+ const K = /* @__PURE__ */ y({
7
+ __name: "ChipsBox",
8
+ props: {
9
+ options: {}
10
+ },
11
+ emits: ["option:unselected"],
12
+ setup(f, { expose: v, emit: h }) {
13
+ const t = f, u = h, n = F(null), i = H(() => t.options.some((e) => !e.disabled)), a = (e = 1) => {
14
+ const s = l(n.value) ? -1 : n.value;
15
+ let o = (s + e) % t.options.length;
16
+ for (; t.options[o].disabled && o !== s; )
17
+ o = a(e + 1);
18
+ return o;
19
+ }, x = () => {
20
+ if (!i.value) return;
21
+ const e = a();
22
+ n.value = e;
23
+ }, c = (e = 1) => {
24
+ const s = l(n.value) ? 0 : n.value;
25
+ let o = (s - e + t.options.length) % t.options.length;
26
+ for (; t.options[o].disabled && o !== s; )
27
+ o = c(e + 1);
28
+ return o;
29
+ }, m = async () => {
30
+ if (!i.value) return;
31
+ const e = c();
32
+ n.value = e;
33
+ }, w = () => {
34
+ if (!i.value) return;
35
+ let e = 0;
36
+ for (; t.options[e].disabled; )
37
+ e++;
38
+ n.value = e;
39
+ }, b = () => {
40
+ if (!i.value) return;
41
+ let e = t.options.length - 1;
42
+ for (; t.options[e].disabled && e !== 0; )
43
+ e--;
44
+ n.value = e;
45
+ }, I = () => {
46
+ if (!i.value) return;
47
+ let e = 0;
48
+ for (; !t.options[e].selected && t.options.length !== e; )
49
+ e++;
50
+ n.value = e;
51
+ }, g = () => {
52
+ if (!i.value) return;
53
+ let e = t.options.length - 1;
54
+ for (; t.options[e].selected && e !== 0; )
55
+ e--;
56
+ n.value = e;
57
+ }, _ = (e) => {
58
+ if (!i.value) return;
59
+ const s = t.options.findIndex(
60
+ (o) => o.valueHash === e
61
+ );
62
+ s >= 0 && (n.value = s);
63
+ }, r = () => {
64
+ n.value = null;
65
+ }, k = () => {
66
+ if (l(n.value)) return;
67
+ const e = t.options[n.value];
68
+ e.selected && u("option:unselected", e);
69
+ }, C = () => l(n.value) ? void 0 : t.options[n.value];
70
+ return N(
71
+ () => t.options,
72
+ (e, s) => {
73
+ d(e) !== d(s) && r();
74
+ },
75
+ {
76
+ flush: "post"
18
77
  }
19
- e.value--;
20
- }
21
- }, c = f(n, u.debounce || 0);
22
- return {
23
- getter: n,
24
- debouncedGetter: c,
25
- items: t,
26
- loading: s(() => !!e.value)
27
- };
28
- };
78
+ ), v({
79
+ focusNext: x,
80
+ focusPrevious: m,
81
+ focusFirst: w,
82
+ focusFirstSelected: I,
83
+ focusLast: b,
84
+ focusLastSelected: g,
85
+ blur: r,
86
+ confirmOption: k,
87
+ focusByHash: _,
88
+ getHighlighted: C
89
+ }), (e, s) => (p(!0), L(S, null, V(e.options, (o, B) => (p(), A(E, {
90
+ key: o.valueHash,
91
+ class: P({
92
+ "bb-chipsbox-item": !0,
93
+ "bb-chipsbox-item--focused": B === n.value
94
+ }),
95
+ clearable: !0,
96
+ text: o.text,
97
+ "onClick:clear": O((M) => u("option:unselected", o), ["stop"])
98
+ }, {
99
+ default: $(() => [
100
+ z(D(o.text), 1)
101
+ ]),
102
+ _: 2
103
+ }, 1032, ["class", "text", "onClick:clear"]))), 128));
104
+ }
105
+ });
29
106
  export {
30
- p as useItemsGetter
107
+ K as default
31
108
  };
package/dist/index229.js CHANGED
@@ -1,53 +1,102 @@
1
- import { computed as l, unref as o } from "vue";
2
- import { useItemText as x } from "./index305.js";
3
- import { useItemValue as w } from "./index273.js";
4
- import { hash as y } from "./index216.js";
5
- import { useLogger as D } from "./index218.js";
6
- const { getItemText: O } = x(), { getItemValue: V } = w(), { warn: H } = D(), T = (u, c, m, a, d, r) => r ? !1 : !!(c || u.disabled || a && d >= a), q = ({
7
- items: u,
8
- disabled: c,
9
- selectable: m,
10
- itemText: a,
11
- itemValue: d,
12
- selectedIndexedByHash: r,
13
- max: b = 1 / 0
14
- }) => {
15
- const v = l(() => o(c)), p = l(() => o(u)), h = l(
16
- () => Object.keys(r.value).length
17
- ), g = o(b), f = (e) => {
18
- const n = V(e, o(d)), t = y(n), i = O(e, o(a)), s = r.value[t] !== void 0, I = T(
19
- e,
20
- v.value,
21
- m,
22
- g,
23
- h.value,
24
- s
25
- );
26
- return {
27
- item: e,
28
- text: i,
29
- value: n,
30
- valueHash: t,
31
- selected: s,
32
- disabled: o(I)
33
- };
34
- };
35
- return {
36
- options: l(() => {
37
- const e = [], n = /* @__PURE__ */ new Set();
38
- for (let t = 0; t < p.value.length; t++) {
39
- const i = p.value[t];
40
- i.disabled && H(
41
- "Disabling an item by passing a disabled option to the item itself is deprecated and will be removed in a future version. Use the `disabled` prop or the `selectable` iteratee prop instead."
42
- );
43
- const s = f(i);
44
- n.has(s.valueHash) || (n.add(s.valueHash), e.push(s));
1
+ import { defineComponent as F, ref as H, computed as L, watch as N, createElementBlock as d, openBlock as v, Fragment as S, renderList as A, withModifiers as O, normalizeClass as P, toDisplayString as V } from "vue";
2
+ import { hash as f } from "./index213.js";
3
+ import { isNil as i } from "./index244.js";
4
+ const z = ["text", "onClick:clear"], j = /* @__PURE__ */ F({
5
+ __name: "CommaBox",
6
+ props: {
7
+ options: {}
8
+ },
9
+ emits: ["option:unselected"],
10
+ setup(m, { expose: h, emit: x }) {
11
+ const t = m, a = x, n = H(null), l = L(() => t.options.some((e) => !e.disabled)), u = (e = 1) => {
12
+ const s = i(n.value) ? -1 : n.value;
13
+ let o = (s + e) % t.options.length;
14
+ for (; t.options[o].disabled && o !== s; )
15
+ o = u(e + 1);
16
+ return o;
17
+ }, b = () => {
18
+ if (!l.value) return;
19
+ const e = u();
20
+ n.value = e;
21
+ }, c = (e = 1) => {
22
+ const s = i(n.value) ? 0 : n.value;
23
+ let o = (s - e + t.options.length) % t.options.length;
24
+ for (; t.options[o].disabled && o !== s; )
25
+ o = c(e + 1);
26
+ return o;
27
+ }, w = async () => {
28
+ if (!l.value) return;
29
+ const e = c();
30
+ n.value = e;
31
+ }, I = () => {
32
+ if (!l.value) return;
33
+ let e = 0;
34
+ for (; t.options[e].disabled; )
35
+ e++;
36
+ n.value = e;
37
+ }, g = () => {
38
+ if (!l.value) return;
39
+ let e = t.options.length - 1;
40
+ for (; t.options[e].disabled && e !== 0; )
41
+ e--;
42
+ n.value = e;
43
+ }, k = () => {
44
+ if (!l.value) return;
45
+ let e = 0;
46
+ for (; !t.options[e].selected && t.options.length !== e; )
47
+ e++;
48
+ n.value = e;
49
+ }, _ = () => {
50
+ if (!l.value) return;
51
+ let e = t.options.length - 1;
52
+ for (; t.options[e].selected && e !== 0; )
53
+ e--;
54
+ n.value = e;
55
+ }, C = (e) => {
56
+ if (!l.value) return;
57
+ const s = t.options.findIndex(
58
+ (o) => o.valueHash === e
59
+ );
60
+ s >= 0 && (n.value = s);
61
+ }, r = () => {
62
+ n.value = null;
63
+ }, y = () => {
64
+ if (i(n.value)) return;
65
+ const e = t.options[n.value];
66
+ e.selected && a("option:unselected", e);
67
+ }, B = () => i(n.value) ? void 0 : t.options[n.value];
68
+ return N(
69
+ () => t.options,
70
+ (e, s) => {
71
+ f(e) !== f(s) && r();
72
+ },
73
+ {
74
+ flush: "post"
45
75
  }
46
- return e;
47
- }),
48
- createOption: f
49
- };
50
- };
76
+ ), h({
77
+ focusNext: b,
78
+ focusPrevious: w,
79
+ focusFirst: I,
80
+ focusFirstSelected: k,
81
+ focusLast: g,
82
+ focusLastSelected: _,
83
+ blur: r,
84
+ confirmOption: y,
85
+ focusByHash: C,
86
+ getHighlighted: B
87
+ }), (e, s) => (v(!0), d(S, null, A(e.options, (o, p) => (v(), d("span", {
88
+ key: o.valueHash,
89
+ class: P({
90
+ "bb-commabox-item": !0,
91
+ "bb-commabox-item--focused": p === n.value,
92
+ "bb-commabox-item--has-comma": p !== e.options.length - 1
93
+ }),
94
+ clearable: !0,
95
+ text: o.text,
96
+ "onClick:clear": O((D) => a("option:unselected", o), ["stop"])
97
+ }, V(o.text), 43, z))), 128));
98
+ }
99
+ });
51
100
  export {
52
- q as useBaseOptions
101
+ j as default
53
102
  };
package/dist/index23.js CHANGED
@@ -1,25 +1,25 @@
1
1
  import { defineComponent as K, watchEffect as Q, ref as l, computed as g, watch as D, createBlock as C, openBlock as Y, normalizeClass as w, withCtx as i, createVNode as B, unref as n, createCommentVNode as X, withDirectives as x, createElementVNode as s, mergeProps as S, withModifiers as ee, toDisplayString as E, renderSlot as c } from "vue";
2
2
  import { _config as te } from "./index4.js";
3
- import o from "./index209.js";
4
- import ae from "./index243.js";
5
- import oe from "./index213.js";
6
- import ne from "./index210.js";
7
- import re from "./index211.js";
8
- import le from "./index212.js";
9
- import { identity as ie } from "./index244.js";
10
- import { isEmpty as se } from "./index245.js";
11
- import { last as de } from "./index217.js";
3
+ import o from "./index247.js";
4
+ import ae from "./index264.js";
5
+ import oe from "./index251.js";
6
+ import ne from "./index248.js";
7
+ import re from "./index249.js";
8
+ import le from "./index250.js";
9
+ import { identity as ie } from "./index262.js";
10
+ import { isEmpty as se } from "./index214.js";
11
+ import { last as de } from "./index215.js";
12
12
  import { useId as ue } from "./index8.js";
13
- import { useLocale as pe } from "./index224.js";
13
+ import { useLocale as pe } from "./index223.js";
14
14
  import { useMobile as ce } from "./index9.js";
15
- import { useUntil as me } from "./index246.js";
16
- import { vMaska as fe } from "./index247.js";
15
+ import { useUntil as me } from "./index235.js";
16
+ import { vMaska as fe } from "./index236.js";
17
17
  import be from "./index21.js";
18
18
  /* empty css */
19
- import ke from "./index240.js";
19
+ import ke from "./index209.js";
20
20
  /* empty css */
21
- import ge from "./index242.js";
22
- import ye from "./index248.js";
21
+ import ge from "./index211.js";
22
+ import ye from "./index231.js";
23
23
  /* empty css */
24
24
  const ve = ["inert"], Ve = ["id", "aria-describedby", "autocomplete", "autofocus", "data-maska", "disabled", "inputmode", "name", "placeholder", "readonly", "required", "value"], Me = ["aria-label", "disabled"], he = ["id"], ze = /* @__PURE__ */ K({
25
25
  __name: "BaseDatePickerInput",
package/dist/index231.js CHANGED
@@ -1,14 +1,115 @@
1
- import { hash as e } from "./index216.js";
2
- import { debouncedWatch as s } from "./index207.js";
3
- const n = (o, c, h) => {
4
- s(
5
- o,
6
- (r, t) => {
7
- e(r) !== e(t) && c(r, t);
8
- },
9
- h
10
- );
11
- };
1
+ import { defineComponent as P, mergeModels as D, useModel as V, ref as r, watch as A, onMounted as x, computed as S, createBlock as b, openBlock as v, resolveDynamicComponent as g, normalizeStyle as z, normalizeClass as E, unref as n, withCtx as w, renderSlot as y, createCommentVNode as N, mergeProps as h, createElementVNode as C } from "vue";
2
+ import { wait as F } from "./index135.js";
3
+ import { useFloating as U, arrow as j } from "./index328.js";
4
+ import { flip as q, offset as G, shift as H, hide as I, autoUpdate as J } from "./index329.js";
5
+ const K = { class: "bb-common-popover__bubble" }, W = /* @__PURE__ */ P({
6
+ __name: "CommonPopover",
7
+ props: /* @__PURE__ */ D({
8
+ arrowPadding: {},
9
+ offset: {},
10
+ block: { type: Boolean },
11
+ padding: { default: 0 },
12
+ placement: {},
13
+ transitionDuration: { default: 250 },
14
+ containerAttributes: {},
15
+ dialog: { type: Boolean },
16
+ renderContent: { type: Boolean, default: !0 },
17
+ tag: { default: "span" }
18
+ }, {
19
+ modelValue: { type: Boolean, default: !1 },
20
+ modelModifiers: {}
21
+ }),
22
+ emits: ["update:modelValue"],
23
+ setup(s) {
24
+ const o = s, a = V(s, "modelValue"), i = r(), t = r(), p = r(), { floatingStyles: k, placement: _, middlewareData: l, update: M } = U(
25
+ i,
26
+ t,
27
+ {
28
+ placement: o.placement,
29
+ whileElementsMounted: J,
30
+ middleware: [
31
+ q(),
32
+ G(o.offset),
33
+ H({ padding: o.padding }),
34
+ I(),
35
+ j({
36
+ element: p,
37
+ padding: o.arrowPadding
38
+ })
39
+ ],
40
+ strategy: "fixed"
41
+ }
42
+ ), d = (e) => {
43
+ e ? (M(), o.dialog ? t.value.showModal() : t.value.showPopover()) : F(o.transitionDuration).then(() => {
44
+ t.value && (o.dialog ? t.value.close() : t.value.hidePopover());
45
+ });
46
+ };
47
+ A(a, d, { flush: "post" }), x(() => {
48
+ a.value && d(a.value);
49
+ });
50
+ const $ = S(() => {
51
+ if (l.value.arrow) {
52
+ const { x: e, y: u } = l.value.arrow;
53
+ return {
54
+ style: {
55
+ left: `${e}px`,
56
+ top: `${u}px`
57
+ }
58
+ };
59
+ }
60
+ }), B = () => {
61
+ a.value = !1;
62
+ };
63
+ return (e, u) => (v(), b(g(e.dialog ? "div" : e.tag), {
64
+ ref_key: "wrapper",
65
+ ref: i,
66
+ class: E(["bb-common-popover", {
67
+ "bb-common-popover--open": a.value && !!t.value,
68
+ "bb-common-popover--block": o.block,
69
+ [`bb-common-popover--${n(_)}`]: !0
70
+ }]),
71
+ style: z({
72
+ "--transition-duration": `${o.transitionDuration}ms`
73
+ })
74
+ }, {
75
+ default: w(() => {
76
+ var m, c, f;
77
+ return [
78
+ y(e.$slots, "activator"),
79
+ e.renderContent ? (v(), b(g(e.dialog ? "dialog" : e.tag), h({
80
+ key: 0,
81
+ ref_key: "content",
82
+ ref: t,
83
+ class: ["bb-common-popover__bubble-container", {
84
+ "bb-common-popover__bubble-container--open": a.value && !!t.value
85
+ }],
86
+ popover: "manual",
87
+ style: {
88
+ ...((m = e.containerAttributes) == null ? void 0 : m.style) ?? {},
89
+ ...n(k),
90
+ "--arrow-offset-x": Math.round(((f = (c = n(l)) == null ? void 0 : c.arrow) == null ? void 0 : f.x) ?? 0) + "px",
91
+ "--page-padding": `${e.padding}px`
92
+ },
93
+ tabindex: a.value ? void 0 : -1
94
+ }, e.containerAttributes, { onClose: n(B) }), {
95
+ default: w(() => [
96
+ C("span", h({
97
+ ref_key: "bubblearrow",
98
+ ref: p,
99
+ class: "bb-common-popover__arrow"
100
+ }, $.value), null, 16),
101
+ C("span", K, [
102
+ y(e.$slots, "default")
103
+ ])
104
+ ]),
105
+ _: 3
106
+ }, 16, ["class", "style", "tabindex", "onClose"])) : N("", !0)
107
+ ];
108
+ }),
109
+ _: 3
110
+ }, 8, ["class", "style"]));
111
+ }
112
+ });
12
113
  export {
13
- n as useHashedWatcher
114
+ W as default
14
115
  };