bitboss-ui 2.1.132 → 2.1.133

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 (201) hide show
  1. package/dist/ai/BbDropdown.md +66 -13
  2. package/dist/ai/BbDropdownButton.md +29 -13
  3. package/dist/components/BbDropdown/types.d.ts +14 -2
  4. package/dist/components/BbDropdownButton/types.d.ts +2 -2
  5. package/dist/index.css +1 -1
  6. package/dist/index109.js +9 -9
  7. package/dist/index110.js +16 -16
  8. package/dist/index118.js +1 -1
  9. package/dist/index124.js +3 -3
  10. package/dist/index126.js +14 -14
  11. package/dist/index134.js +1 -1
  12. package/dist/index136.js +4 -4
  13. package/dist/index138.js +1 -1
  14. package/dist/index14.js +1 -1
  15. package/dist/index142.js +2 -2
  16. package/dist/index146.js +1 -1
  17. package/dist/index148.js +2 -2
  18. package/dist/index150.js +1 -1
  19. package/dist/index151.js +2 -2
  20. package/dist/index16.js +3 -3
  21. package/dist/index18.js +3 -3
  22. package/dist/index20.js +9 -9
  23. package/dist/index22.js +14 -14
  24. package/dist/index224.js +2 -138
  25. package/dist/index225.js +138 -2
  26. package/dist/index226.js +2 -2
  27. package/dist/index227.js +86 -4
  28. package/dist/index229.js +29 -19
  29. package/dist/index230.js +17 -5
  30. package/dist/index231.js +51 -5
  31. package/dist/index232.js +18 -5
  32. package/dist/index233.js +3 -5
  33. package/dist/index234.js +12 -3
  34. package/dist/index235.js +18 -2
  35. package/dist/index236.js +8 -6
  36. package/dist/index237.js +5 -8
  37. package/dist/index238.js +8 -268
  38. package/dist/index239.js +2 -52
  39. package/dist/index24.js +10 -10
  40. package/dist/index240.js +2 -52
  41. package/dist/index241.js +3 -32
  42. package/dist/index242.js +4 -60
  43. package/dist/index243.js +187 -4
  44. package/dist/index244.js +3 -8
  45. package/dist/index245.js +13 -10
  46. package/dist/index246.js +34 -3
  47. package/dist/index247.js +2 -4
  48. package/dist/index248.js +10 -3
  49. package/dist/index249.js +3 -373
  50. package/dist/index250.js +6 -0
  51. package/dist/index251.js +4 -160
  52. package/dist/index252.js +22 -0
  53. package/dist/index253.js +5 -7
  54. package/dist/index254.js +5 -2
  55. package/dist/index255.js +4 -4
  56. package/dist/index256.js +5 -5
  57. package/dist/index257.js +2 -5
  58. package/dist/index258.js +6 -3
  59. package/dist/index259.js +268 -6
  60. package/dist/index26.js +3 -3
  61. package/dist/index260.js +50 -14
  62. package/dist/index261.js +52 -2
  63. package/dist/index262.js +32 -11
  64. package/dist/index263.js +54 -80
  65. package/dist/index264.js +7 -0
  66. package/dist/index265.js +5 -30
  67. package/dist/index266.js +5 -17
  68. package/dist/index267.js +3 -51
  69. package/dist/index268.js +160 -18
  70. package/dist/index270.js +3 -18
  71. package/dist/index271.js +7 -9
  72. package/dist/index272.js +2 -2
  73. package/dist/index273.js +2 -2
  74. package/dist/index274.js +7 -34
  75. package/dist/index275.js +6 -32
  76. package/dist/index276.js +25 -28
  77. package/dist/index277.js +11 -0
  78. package/dist/index278.js +3 -4
  79. package/dist/index279.js +13 -25
  80. package/dist/index28.js +1 -1
  81. package/dist/index280.js +13 -106
  82. package/dist/index281.js +375 -0
  83. package/dist/index283.js +25 -0
  84. package/dist/index284.js +65 -7
  85. package/dist/index285.js +9 -44
  86. package/dist/index286.js +43 -52
  87. package/dist/index287.js +51 -11
  88. package/dist/index288.js +11 -13
  89. package/dist/index289.js +17 -22
  90. package/dist/index290.js +11 -17
  91. package/dist/index291.js +32 -11
  92. package/dist/index292.js +2 -2
  93. package/dist/index294.js +105 -20
  94. package/dist/index296.js +100 -3
  95. package/dist/index298.js +5 -23
  96. package/dist/index299.js +9 -3
  97. package/dist/index30.js +3 -3
  98. package/dist/index300.js +23 -2
  99. package/dist/index301.js +7 -6
  100. package/dist/index302.js +6 -7
  101. package/dist/index303.js +16 -3
  102. package/dist/index304.js +28 -5
  103. package/dist/index306.js +21 -7
  104. package/dist/index307.js +3 -280
  105. package/dist/index308.js +17 -2
  106. package/dist/index309.js +27 -15
  107. package/dist/index310.js +7 -2
  108. package/dist/index311.js +2 -16
  109. package/dist/index312.js +4 -2
  110. package/dist/index313.js +5 -27
  111. package/dist/index314.js +280 -2
  112. package/dist/index315.js +2 -2
  113. package/dist/index316.js +16 -2
  114. package/dist/index317.js +2 -2
  115. package/dist/index318.js +16 -2
  116. package/dist/index319.js +2 -28
  117. package/dist/index32.js +2 -2
  118. package/dist/index320.js +27 -2
  119. package/dist/index321.js +2 -3
  120. package/dist/index322.js +2 -17
  121. package/dist/index323.js +2 -3
  122. package/dist/index324.js +2 -3
  123. package/dist/index325.js +1 -1
  124. package/dist/index326.js +2 -4
  125. package/dist/index327.js +127 -0
  126. package/dist/index328.js +2 -7
  127. package/dist/index329.js +15 -3
  128. package/dist/index330.js +2 -125
  129. package/dist/index331.js +19 -2
  130. package/dist/index332.js +2 -15
  131. package/dist/index333.js +3 -2
  132. package/dist/index334.js +5 -19
  133. package/dist/index335.js +2 -2
  134. package/dist/index336.js +3 -719
  135. package/dist/index337.js +4 -366
  136. package/dist/index338.js +5 -56
  137. package/dist/index339.js +1 -1
  138. package/dist/index34.js +8 -8
  139. package/dist/index340.js +1 -1
  140. package/dist/index343.js +7 -6
  141. package/dist/index344.js +719 -2
  142. package/dist/index345.js +366 -5
  143. package/dist/index346.js +56 -66
  144. package/dist/index347.js +3 -67
  145. package/dist/index348.js +5 -4
  146. package/dist/index349.js +7 -5
  147. package/dist/index350.js +34 -6
  148. package/dist/index351.js +128 -17
  149. package/dist/index352.js +397 -7
  150. package/dist/index353.js +6 -14
  151. package/dist/index354.js +17 -5
  152. package/dist/index355.js +8 -34
  153. package/dist/index356.js +12 -127
  154. package/dist/index357.js +83 -389
  155. package/dist/index358.js +226 -198
  156. package/dist/index359.js +65 -257
  157. package/dist/index36.js +4 -4
  158. package/dist/index360.js +66 -21
  159. package/dist/index361.js +24 -0
  160. package/dist/index364.js +200 -2
  161. package/dist/index365.js +259 -2
  162. package/dist/index366.js +2 -228
  163. package/dist/index367.js +2 -482
  164. package/dist/index368.js +468 -114
  165. package/dist/index369.js +127 -46
  166. package/dist/index370.js +44 -67
  167. package/dist/index371.js +66 -516
  168. package/dist/index372.js +515 -45
  169. package/dist/index373.js +52 -0
  170. package/dist/index38.js +20 -20
  171. package/dist/index40.js +7 -7
  172. package/dist/index42.js +2 -2
  173. package/dist/index44.js +8 -8
  174. package/dist/index46.js +6 -6
  175. package/dist/index50.js +2 -2
  176. package/dist/index54.js +1 -1
  177. package/dist/index56.js +1 -1
  178. package/dist/index58.js +2 -2
  179. package/dist/index60.js +2 -2
  180. package/dist/index62.js +5 -5
  181. package/dist/index68.js +1 -1
  182. package/dist/index74.js +4 -4
  183. package/dist/index82.js +194 -179
  184. package/dist/index84.js +49 -47
  185. package/dist/index86.js +2 -2
  186. package/dist/index88.js +3 -3
  187. package/dist/index90.js +1 -1
  188. package/dist/index93.js +3 -3
  189. package/dist/index95.js +2 -2
  190. package/dist/index97.js +5 -5
  191. package/dist/index99.js +1 -1
  192. package/dist/utilities/functions/normalizeItemGroups.d.ts +13 -0
  193. package/package.json +1 -1
  194. package/dist/index228.js +0 -15
  195. package/dist/index269.js +0 -14
  196. package/dist/index282.js +0 -102
  197. package/dist/index295.js +0 -190
  198. package/dist/index297.js +0 -11
  199. package/dist/index305.js +0 -69
  200. package/dist/index342.js +0 -7
  201. package/dist/index362.js +0 -95
package/dist/index227.js CHANGED
@@ -1,6 +1,88 @@
1
- function e(t) {
2
- return /^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{8})$/.test(t);
3
- }
1
+ import { defineComponent as p, createElementBlock as n, openBlock as s, normalizeClass as r, createElementVNode as o, renderSlot as t, createCommentVNode as h, createTextVNode as l, toDisplayString as i, unref as b, Fragment as m, renderList as u } from "vue";
2
+ import { useLocale as g } from "./index245.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__ */ p({
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: d } = g();
22
+ return (e, T) => (s(), n("span", {
23
+ ref: "container",
24
+ class: r(["bb-cr-container", {
25
+ "bb-cr-container--errors": e.hasErrors,
26
+ "bb-cr-container--horizontal": e.direction === "horizontal",
27
+ "bb-cr-container--vertical": e.direction === "vertical"
28
+ }])
29
+ }, [
30
+ o("span", k, [
31
+ t(e.$slots, "prepend"),
32
+ !e.options.length && e.loading ? (s(), n("span", y, [
33
+ t(e.$slots, "loading", {}, () => [
34
+ l(i(e.loadingText || b(d)("common.loadingText")), 1)
35
+ ])
36
+ ])) : e.options.length ? h("", !0) : (s(), n("span", $, [
37
+ t(e.$slots, "no-data", {}, () => [
38
+ l(i(e.noDataText || b(d)("common.noDataText")), 1)
39
+ ])
40
+ ])),
41
+ (s(!0), n(m, null, u(e.options, (a, c) => (s(), n(m, {
42
+ key: a?.valueHash || c
43
+ }, [
44
+ t(e.$slots, "option:prepend", {
45
+ id: a.valueHash,
46
+ checked: !!a.selected,
47
+ disabled: !!a.disabled,
48
+ item: a.item,
49
+ text: a.text
50
+ }),
51
+ o("label", {
52
+ class: r(["bb-cr-container-option", { "bb-base-radio-selected": a.selected }])
53
+ }, [
54
+ t(e.$slots, "input", {
55
+ index: c,
56
+ option: a
57
+ }),
58
+ o("span", {
59
+ class: r({
60
+ "bb-cr-container-option__text": !0,
61
+ "sr-only": e.hideLabel
62
+ })
63
+ }, [
64
+ t(e.$slots, "label", {
65
+ checked: !!a.selected,
66
+ item: a.item,
67
+ text: a.text
68
+ }, () => [
69
+ l(i(a.text), 1)
70
+ ])
71
+ ], 2)
72
+ ], 2),
73
+ t(e.$slots, "option:append", {
74
+ id: a.valueHash,
75
+ checked: !!a.selected,
76
+ disabled: !!a.disabled,
77
+ item: a.item,
78
+ text: a.text
79
+ })
80
+ ], 64))), 128)),
81
+ t(e.$slots, "append")
82
+ ])
83
+ ], 2));
84
+ }
85
+ });
4
86
  export {
5
- e as isHex
87
+ C as default
6
88
  };
package/dist/index229.js CHANGED
@@ -1,22 +1,32 @@
1
- import { MaskInput as r } from "./index295.js";
2
- const u = /* @__PURE__ */ new WeakMap(), p = (a, n) => {
3
- if (a.arg == null || a.instance == null) return;
4
- const s = "setup" in a.instance.$.type;
5
- a.arg in a.instance ? a.instance[a.arg] = n : s && console.warn("Maska: please expose `%s` using defineExpose", a.arg);
6
- }, k = (a, n) => {
7
- var s;
8
- const t = a instanceof HTMLInputElement ? a : a.querySelector("input");
9
- if (t == null || t?.type === "file") return;
10
- let e = {};
11
- if (n.value != null && (e = typeof n.value == "string" ? { mask: n.value } : { ...n.value }), n.arg != null) {
12
- const l = (o) => {
13
- const i = n.modifiers.unmasked ? o.unmasked : n.modifiers.completed ? o.completed : o.masked;
14
- p(n, i);
15
- };
16
- e.onMaska = e.onMaska == null ? l : Array.isArray(e.onMaska) ? [...e.onMaska, l] : [e.onMaska, l];
17
- }
18
- u.has(t) ? (s = u.get(t)) == null || s.update(e) : u.set(t, new r(t, e));
1
+ import { computed as s, unref as v, ref as c } from "vue";
2
+ import { useDebounceFn as m } from "./index225.js";
3
+ const y = (o) => {
4
+ const e = s(() => v(o.items)), t = c([]), r = c(0);
5
+ let a = 0;
6
+ const u = async (...i) => {
7
+ if (Array.isArray(e.value)) {
8
+ t.value = e.value;
9
+ return;
10
+ }
11
+ if (typeof e.value != "function") return;
12
+ const f = ++a;
13
+ r.value++;
14
+ try {
15
+ const n = await e.value(...i);
16
+ f === a && (t.value = n);
17
+ } catch (n) {
18
+ console.error(n);
19
+ } finally {
20
+ r.value--;
21
+ }
22
+ }, l = m(u, o.debounce || 0);
23
+ return {
24
+ getter: u,
25
+ debouncedGetter: l,
26
+ items: t,
27
+ loading: s(() => r.value > 0)
28
+ };
19
29
  };
20
30
  export {
21
- k as vMaska
31
+ y as useItemsGetter
22
32
  };
package/dist/index230.js CHANGED
@@ -1,7 +1,19 @@
1
- import { getDefaultExportFromCjs as r } from "./index343.js";
2
- import { __require as o } from "./index307.js";
3
- var t = o();
4
- const s = /* @__PURE__ */ r(t);
1
+ import { computed as u, unref as a } from "vue";
2
+ import { hash as d } from "./index233.js";
3
+ const p = ({
4
+ items: m,
5
+ key: e
6
+ }) => {
7
+ const n = (t) => e ? String(t[e]) : d(t), o = u(() => {
8
+ const t = {}, s = Array.from(a(m) ?? []);
9
+ for (let r = 0; r < s.length; r++) {
10
+ const c = s[r];
11
+ t[n(c)] = c;
12
+ }
13
+ return t;
14
+ });
15
+ return { data: o, get: (t) => o.value[n(t)] };
16
+ };
5
17
  export {
6
- s as default
18
+ p as useIndexById
7
19
  };
package/dist/index231.js CHANGED
@@ -1,7 +1,53 @@
1
- import { getDefaultExportFromCjs as r } from "./index343.js";
2
- import { __require as e } from "./index309.js";
3
- var t = e();
4
- const m = /* @__PURE__ */ r(t);
1
+ import { computed as l, unref as o } from "vue";
2
+ import { useItemText as x } from "./index308.js";
3
+ import { useItemValue as w } from "./index285.js";
4
+ import { hash as y } from "./index233.js";
5
+ import { useLogger as D } from "./index236.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));
45
+ }
46
+ return e;
47
+ }),
48
+ createOption: f
49
+ };
50
+ };
5
51
  export {
6
- m as default
52
+ q as useBaseOptions
7
53
  };
package/dist/index232.js CHANGED
@@ -1,7 +1,20 @@
1
- import { getDefaultExportFromCjs as r } from "./index343.js";
2
- import { __require as e } from "./index311.js";
3
- var o = e();
4
- const m = /* @__PURE__ */ r(o);
1
+ import { isNil as a } from "./index247.js";
2
+ import { computed as n, unref as h } from "vue";
3
+ const v = ({ modelValue: r, iteratee: c, multiple: t }) => {
4
+ const s = n(
5
+ () => new Array().concat(h(r))
6
+ ), e = n(() => s.value.reduce(
7
+ (o, u) => (c(u) ? o.coherent.push(u) : o.incoherent.push(u), o),
8
+ { coherent: [], incoherent: [] }
9
+ )), i = n(() => t && !h(r).length || !t && a(h(r)) ? !0 : !e.value.incoherent.length), l = n(
10
+ () => t ? e.value.coherent : e.value.coherent[0] ?? null
11
+ );
12
+ return {
13
+ status: e,
14
+ coherent: i,
15
+ coherentValue: l
16
+ };
17
+ };
5
18
  export {
6
- m as default
19
+ v as useCoherence
7
20
  };
package/dist/index233.js CHANGED
@@ -1,7 +1,5 @@
1
- import { getDefaultExportFromCjs as e } from "./index343.js";
2
- import { __require as r } from "./index313.js";
3
- var o = r();
4
- const f = /* @__PURE__ */ e(o);
1
+ import { hash as o } from "./index309.js";
2
+ const t = (r, h = "bb") => `${h}${o(r)}`;
5
3
  export {
6
- f as default
4
+ t as hash
7
5
  };
package/dist/index234.js CHANGED
@@ -1,5 +1,14 @@
1
- import { hash as o } from "./index319.js";
2
- const t = (r, h = "bb") => `${h}${o(r)}`;
1
+ import { hash as e } from "./index233.js";
2
+ import { debouncedWatch as s } from "./index225.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
+ };
3
12
  export {
4
- t as hash
13
+ n as useHashedWatcher
5
14
  };
package/dist/index235.js CHANGED
@@ -1,4 +1,20 @@
1
- const e = (t) => t[t.length - 1];
1
+ import { isNotNil as v } from "./index152.js";
2
+ import { computed as t, toValue as h, ref as u, onServerPrefetch as m, onBeforeMount as p } from "vue";
3
+ const g = ({
4
+ fn: i,
5
+ trigger: n = !1,
6
+ multiple: s,
7
+ currentValue: r
8
+ }) => {
9
+ const f = t(() => s ? !!r?.length : v(r)), o = t(
10
+ () => !!h(n) || f.value
11
+ ), l = u(!1), e = u(!1), c = t(() => o.value || e.value), a = async () => {
12
+ l.value || e.value || (l.value = !0, await i(!0), l.value = !1, e.value = !0);
13
+ };
14
+ return o.value && (m(a), p(async () => {
15
+ e.value || await a();
16
+ })), { isPrefilling: l, hasPrefilled: e, canLoad: c, prefill: a };
17
+ };
2
18
  export {
3
- e as last
19
+ g as usePrefill
4
20
  };
package/dist/index236.js CHANGED
@@ -1,8 +1,10 @@
1
- function e(t, r) {
2
- if (!/\d{4}-\d{2}-\d{2}/.test(t))
3
- throw new Error(`${r} must be in the format YYYY-MM-DD`);
4
- return t;
5
- }
1
+ const o = "bitboss-ui | ", e = () => ({
2
+ warn: (r) => console.warn(`${o}${r}`),
3
+ error: (r) => console.error(`${o}${r}`),
4
+ throw: (r) => {
5
+ throw new Error(`${o}${r}`);
6
+ }
7
+ });
6
8
  export {
7
- e as validateDateFormat
9
+ e as useLogger
8
10
  };
package/dist/index237.js CHANGED
@@ -1,10 +1,7 @@
1
- const o = "bitboss-ui | ", e = () => ({
2
- warn: (r) => console.warn(`${o}${r}`),
3
- error: (r) => console.error(`${o}${r}`),
4
- throw: (r) => {
5
- throw new Error(`${o}${r}`);
6
- }
7
- });
1
+ import { getType as t } from "./index337.js";
2
+ function o(r) {
3
+ return t(r) === "Array";
4
+ }
8
5
  export {
9
- e as useLogger
6
+ o as isArray
10
7
  };
package/dist/index238.js CHANGED
@@ -1,270 +1,10 @@
1
- import { defineComponent as pe, ref as T, computed as v, watch as be, createElementBlock as c, openBlock as u, withKeys as f, normalizeClass as O, withModifiers as m, createVNode as ge, withCtx as he, createElementVNode as E, Fragment as w, renderList as S, toDisplayString as x, renderSlot as C, nextTick as ye } from "vue";
2
- import { chunk as _e } from "./index350.js";
3
- import { identity as L } from "./index273.js";
4
- import { isNotNil as ke } from "./index152.js";
5
- import { last as ve } from "./index235.js";
6
- import { sort as N } from "./index351.js";
7
- import { validateDateFormat as R } from "./index236.js";
8
- import { toInnerValue as Oe, toOuterValue as p } from "./index352.js";
9
- import { isDateDisabled as we } from "./index353.js";
10
- import g from "./index230.js";
11
- import Se from "./index349.js";
12
- const Ve = ["onKeydown"], De = { class: "bb-base-date-picker__header-container" }, Me = ["abbr"], Be = ["id", "aria-current", "aria-label", "aria-selected", "disabled", "tabindex"], Pe = /* @__PURE__ */ pe({
13
- __name: "BaseDatePickerInputDaySelector",
14
- props: {
15
- cursor: {},
16
- current: { type: Boolean },
17
- disabled: { type: Boolean },
18
- firstDayOfWeek: {},
19
- id: {},
20
- floating: { type: Boolean },
21
- modelValue: {},
22
- max: {},
23
- min: {},
24
- selectable: { type: Function },
25
- range: { type: Boolean },
26
- multiple: { type: Boolean },
27
- readonly: { type: Boolean }
28
- },
29
- emits: ["update:modelValue", "update:cursor"],
30
- setup(F, { emit: K }) {
31
- const a = F, n = K, h = T(null), H = g().startOf("day");
32
- a.min && R(a.min, "Min"), a.max && R(a.max, "Max");
33
- const P = v(() => {
34
- let e = 1 / 0, r = -1 / 0, s = {};
35
- return a.modelValue && [].concat(a.modelValue).filter(L).map((i) => Oe(i, a.floating)).map((i) => i.valueOf()).forEach((i, y) => {
36
- i < e && (e = i), i > r && (r = i), s[i] = y;
37
- }), {
38
- min: e,
39
- max: r,
40
- index: (t) => s[t.valueOf()],
41
- selected: (t) => ke(s[t.valueOf()]),
42
- isFirstOfRange: (t) => t.valueOf() === e,
43
- isLastOfRange: (t) => t.valueOf() === r,
44
- isBetween: (t) => t.valueOf() > e && t.valueOf() < r
45
- };
46
- }), Y = v(() => new Array(7).fill("").map((e, r) => g().day((r + a.firstDayOfWeek) % 7)).map((e) => ({
47
- accessibleLabel: e.format("dddd"),
48
- label: e.format("dd").slice(0, 1).toUpperCase(),
49
- id: e.toISOString(),
50
- original: e
51
- }))), V = v(() => {
52
- const e = a.cursor.year().toString(), r = a.cursor.month().toString(), t = a.cursor.clone().startOf("month").clone().startOf("week"), y = a.cursor.clone().endOf("month").clone().endOf("week"), re = g(a.cursor).startOf("day"), b = P.value, _ = a.range, oe = a.id, B = [];
53
- for (let o = t; o.isBefore(y); o = o.add(1, "day"))
54
- B.push(o.clone());
55
- const ne = B.map((o) => {
56
- const k = o.toISOString(), se = o.week().toString(), ie = b.selected(o), A = _ && b.isFirstOfRange(o), I = _ && b.isLastOfRange(o), de = _ && !A && !I && b.isBetween(o), le = o.month().toString() === r && o.year().toString() === e, ce = o.isSame(H), ue = o.isSame(re), fe = d(o), me = o.get("D").toString();
57
- return {
58
- buttonId: [oe, k].filter(L).join("_"),
59
- current: ue,
60
- disabled: fe,
61
- first: A,
62
- highlighted: le,
63
- id: k,
64
- label: me,
65
- last: I,
66
- middle: de,
67
- original: o,
68
- selected: ie,
69
- slotName: k,
70
- today: ce,
71
- week: se
72
- };
73
- });
74
- return _e(ne, 7);
75
- }), d = (e) => we(e, {
76
- min: a.min,
77
- max: a.max,
78
- selectable: a.selectable,
79
- floating: a.floating
80
- }), D = T("left"), $ = (e, r) => {
81
- e && r && (D.value = e.isBefore(r) ? "left" : "right");
82
- };
83
- be(
84
- () => a.cursor,
85
- (e, r) => {
86
- $(e, r);
87
- }
88
- );
89
- const M = (e) => n("update:cursor", e), l = async () => {
90
- if (!h.value) return;
91
- await ye();
92
- const e = ve([
93
- ...h.value.querySelectorAll(
94
- ".bb-base-date-picker__date--current button"
95
- )
96
- ]);
97
- e instanceof HTMLElement && e.focus();
98
- }, U = (e) => {
99
- if (!a.readonly && e.target instanceof HTMLButtonElement) {
100
- const [, r] = e.target.id.split("_"), s = g(r);
101
- if (a.cursor.month() !== s.month()) {
102
- M(s);
103
- return;
104
- }
105
- const t = V.value.flat().find((i) => i.id === r);
106
- if (!t || t.disabled) return;
107
- M(s), j(t);
108
- }
109
- }, j = (e) => {
110
- a.range ? W(e) : a.multiple ? q(e) : z(e);
111
- }, W = (e) => {
112
- if (Array.isArray(a.modelValue))
113
- if (a.modelValue.length !== 1) {
114
- const r = [p(e.original, a.floating)];
115
- n("update:modelValue", r);
116
- } else {
117
- const r = N([
118
- a.modelValue[0],
119
- p(e.original, a.floating)
120
- ]);
121
- n("update:modelValue", r);
122
- }
123
- }, q = (e) => {
124
- if (Array.isArray(a.modelValue))
125
- if (e.selected) {
126
- const r = p(e.original, a.floating), s = a.modelValue.filter((t) => t !== r);
127
- n("update:modelValue", s);
128
- } else {
129
- const r = N([
130
- ...a.modelValue,
131
- p(e.original, a.floating)
132
- ]);
133
- n("update:modelValue", r);
134
- }
135
- }, z = (e) => {
136
- e.selected ? n("update:modelValue", null) : n("update:modelValue", p(e.original, a.floating));
137
- }, G = () => {
138
- const e = a.cursor.clone().add(1, "day");
139
- d(e) || (n("update:cursor", e), l());
140
- }, J = () => {
141
- const e = a.cursor.clone().subtract(1, "day");
142
- d(e) || (n("update:cursor", e), l());
143
- }, Q = () => {
144
- const e = a.cursor.clone().subtract(1, "week");
145
- d(e) || (n("update:cursor", e), l());
146
- }, X = () => {
147
- const e = a.cursor.clone().add(1, "week");
148
- d(e) || (n("update:cursor", e), l());
149
- }, Z = () => {
150
- const e = a.cursor.clone().endOf("week");
151
- d(e) || (n("update:cursor", e), l());
152
- }, ee = () => {
153
- const e = a.cursor.clone().startOf("week");
154
- d(e) || (n("update:cursor", e), l());
155
- }, te = (e) => {
156
- if (e.shiftKey) {
157
- const r = a.cursor.clone().subtract(1, "year");
158
- if (d(r)) return;
159
- n("update:cursor", r);
160
- } else {
161
- const r = a.cursor.clone().subtract(1, "month");
162
- if (d(r)) return;
163
- n("update:cursor", r);
164
- }
165
- l();
166
- }, ae = (e) => {
167
- if (e.shiftKey) {
168
- const r = a.cursor.clone().add(1, "year");
169
- if (d(r)) return;
170
- n("update:cursor", r);
171
- } else {
172
- const r = a.cursor.clone().add(1, "month");
173
- if (d(r)) return;
174
- n("update:cursor", r);
175
- }
176
- l();
177
- };
178
- return (e, r) => (u(), c("div", {
179
- ref_key: "calendar",
180
- ref: h,
181
- "aria-label": "Calendar dates",
182
- class: O(["bb-base-date-picker__days-selector", { "bb-base-date-picker__days-selector--hidden": !e.current }]),
183
- role: "grid",
184
- onKeydown: [
185
- f(m(X, ["prevent"]), ["down"]),
186
- f(m(Z, ["prevent"]), ["end"]),
187
- f(m(ee, ["prevent"]), ["home"]),
188
- f(m(J, ["prevent"]), ["left"]),
189
- f(m(ae, ["prevent"]), ["page-down"]),
190
- f(m(te, ["prevent"]), ["page-up"]),
191
- f(m(G, ["prevent"]), ["right"]),
192
- f(m(Q, ["prevent"]), ["up"])
193
- ]
194
- }, [
195
- ge(Se, {
196
- direction: D.value,
197
- gap: 30
198
- }, {
199
- default: he(() => [
200
- (u(), c("div", {
201
- key: e.cursor.month().toString(),
202
- class: "bb-base-date-picker__month"
203
- }, [
204
- E("div", De, [
205
- (u(!0), c(w, null, S(Y.value, (s) => (u(), c("div", {
206
- key: s.id,
207
- abbr: s.accessibleLabel,
208
- class: "bb-base-date-picker__header-cell"
209
- }, x(s.label), 9, Me))), 128))
210
- ]),
211
- (u(!0), c(w, null, S(V.value, (s) => (u(), c("div", {
212
- key: s[0].id,
213
- class: "bb-base-date-picker__week"
214
- }, [
215
- (u(!0), c(w, null, S(s, (t) => (u(), c("div", {
216
- key: t.id,
217
- class: O({
218
- "bb-base-date-picker__date--current": t.current,
219
- "bb-base-date-picker__date--disabled": e.disabled || t.disabled,
220
- "bb-base-date-picker__date--first": t.first,
221
- "bb-base-date-picker__date--highlighted": t.highlighted,
222
- "bb-base-date-picker__date--last": t.last,
223
- "bb-base-date-picker__date--middle": t.middle,
224
- "bb-base-date-picker__date--selected": t.selected,
225
- "bb-base-date-picker__date--today": t.today,
226
- "bb-base-date-picker__date": !0
227
- })
228
- }, [
229
- E("button", {
230
- id: t.buttonId,
231
- "aria-current": t.today ? "date" : void 0,
232
- "aria-label": `${t.original.format("dddd, MMMM D, YYYY")}${t.selected ? ", selected" : ""}`,
233
- "aria-selected": t.selected,
234
- class: O("bb-base-date-picker__date-button"),
235
- disabled: e.disabled || t.disabled,
236
- tabindex: Number(t.current) - 1,
237
- type: "button",
238
- role: "gridcell",
239
- onClick: U
240
- }, x(t.label), 9, Be),
241
- C(e.$slots, "day", {
242
- first: t.first,
243
- highlighted: t.highlighted,
244
- item: t.original,
245
- label: t.label,
246
- last: t.last,
247
- middle: t.middle,
248
- selected: t.selected
249
- }),
250
- C(e.$slots, t.slotName, {
251
- first: t.first,
252
- highlighted: t.highlighted,
253
- item: t.original,
254
- label: t.label,
255
- last: t.last,
256
- middle: t.middle,
257
- selected: t.selected
258
- })
259
- ], 2))), 128))
260
- ]))), 128))
261
- ]))
262
- ]),
263
- _: 3
264
- }, 8, ["direction"])
265
- ], 42, Ve));
266
- }
267
- });
1
+ import { getType as o } from "./index337.js";
2
+ function c(e) {
3
+ if (o(e) !== "Object")
4
+ return !1;
5
+ const t = Object.getPrototypeOf(e);
6
+ return !!t && t.constructor === Object && t === Object.prototype;
7
+ }
268
8
  export {
269
- Pe as default
9
+ c as isPlainObject
270
10
  };