bitboss-ui 2.0.101 → 2.0.103

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 (172) hide show
  1. package/dist/components/BaseSelect/BaseSelect.vue.d.ts +10 -16
  2. package/dist/components/BaseSwitchGroup/BaseSwitchGroup.vue.d.ts +109 -7
  3. package/dist/components/BbSelect/BbSelect.vue.d.ts +2 -16
  4. package/dist/composables/useBaseOptions.d.ts +31 -0
  5. package/dist/composables/useCoherence.d.ts +20 -0
  6. package/dist/composables/useHashedWatcher.d.ts +2 -0
  7. package/dist/composables/useIndexById.d.ts +11 -0
  8. package/dist/composables/useItemsGetter.d.ts +12 -0
  9. package/dist/composables/usePrefill.d.ts +12 -0
  10. package/dist/index100.js +88 -60
  11. package/dist/index101.js +10 -13
  12. package/dist/index111.js +154 -126
  13. package/dist/index119.js +1 -1
  14. package/dist/index121.js +4 -4
  15. package/dist/index123.js +1 -1
  16. package/dist/index127.js +1 -1
  17. package/dist/index128.js +1 -1
  18. package/dist/index129.js +1 -1
  19. package/dist/index13.js +54 -45
  20. package/dist/index131.js +1 -1
  21. package/dist/index132.js +69 -65
  22. package/dist/index133.js +2 -2
  23. package/dist/index15.js +4 -4
  24. package/dist/index17.js +3 -3
  25. package/dist/index19.js +126 -82
  26. package/dist/index205.js +52 -80
  27. package/dist/index207.js +13 -5
  28. package/dist/index208.js +19 -124
  29. package/dist/index209.js +4 -19
  30. package/dist/index21.js +14 -14
  31. package/dist/index210.js +124 -14
  32. package/dist/index211.js +5 -16
  33. package/dist/index212.js +125 -2
  34. package/dist/index213.js +19 -2
  35. package/dist/index214.js +15 -40
  36. package/dist/index215.js +15 -19
  37. package/dist/index216.js +2 -6
  38. package/dist/index217.js +2 -53
  39. package/dist/index218.js +43 -0
  40. package/dist/index219.js +6 -13
  41. package/dist/index220.js +2 -2
  42. package/dist/index222.js +3 -3
  43. package/dist/index223.js +2 -4
  44. package/dist/index224.js +4 -3
  45. package/dist/index225.js +2 -8
  46. package/dist/index226.js +3 -2
  47. package/dist/index227.js +7 -4
  48. package/dist/index228.js +8 -2
  49. package/dist/index229.js +3 -2
  50. package/dist/index23.js +13 -13
  51. package/dist/index230.js +84 -19
  52. package/dist/index232.js +8 -3
  53. package/dist/index233.js +23 -248
  54. package/dist/index234.js +17 -52
  55. package/dist/index235.js +47 -43
  56. package/dist/index236.js +15 -5
  57. package/dist/index237.js +12 -60
  58. package/dist/index238.js +16 -3
  59. package/dist/index239.js +19 -7
  60. package/dist/index240.js +25 -166
  61. package/dist/index241.js +243 -77
  62. package/dist/index242.js +54 -0
  63. package/dist/index243.js +43 -7
  64. package/dist/index244.js +5 -2
  65. package/dist/index245.js +59 -17
  66. package/dist/index246.js +2 -106
  67. package/dist/index247.js +117 -0
  68. package/dist/index248.js +3 -100
  69. package/dist/index249.js +4 -0
  70. package/dist/index25.js +5 -5
  71. package/dist/index250.js +18 -2
  72. package/dist/index251.js +106 -2
  73. package/dist/index253.js +100 -3
  74. package/dist/index255.js +12 -23
  75. package/dist/index256.js +2 -89
  76. package/dist/index257.js +4 -0
  77. package/dist/index258.js +10 -6
  78. package/dist/index259.js +3 -16
  79. package/dist/index260.js +6 -3
  80. package/dist/index261.js +18 -0
  81. package/dist/index262.js +8 -6
  82. package/dist/index263.js +23 -176
  83. package/dist/index264.js +89 -9
  84. package/dist/index266.js +3 -281
  85. package/dist/index268.js +7 -2
  86. package/dist/index269.js +176 -2
  87. package/dist/index27.js +1 -1
  88. package/dist/index270.js +281 -2
  89. package/dist/index271.js +6 -2
  90. package/dist/index272.js +2 -2
  91. package/dist/index273.js +2 -126
  92. package/dist/index274.js +2 -431
  93. package/dist/index275.js +2 -22
  94. package/dist/index276.js +4 -0
  95. package/dist/index277.js +126 -2
  96. package/dist/index278.js +430 -3
  97. package/dist/index279.js +20 -7
  98. package/dist/index281.js +2 -2
  99. package/dist/index282.js +4 -2
  100. package/dist/index283.js +28 -2
  101. package/dist/index284.js +200 -2
  102. package/dist/index285.js +436 -2
  103. package/dist/index286.js +127 -2
  104. package/dist/index287.js +85 -24
  105. package/dist/index288.js +9 -22
  106. package/dist/{index302.js → index289.js} +1 -1
  107. package/dist/index29.js +3 -3
  108. package/dist/index290.js +6 -435
  109. package/dist/index291.js +10 -126
  110. package/dist/index292.js +14 -197
  111. package/dist/index293.js +9 -89
  112. package/dist/index294.js +8 -3
  113. package/dist/index295.js +2 -12
  114. package/dist/index296.js +2 -9
  115. package/dist/index297.js +2 -17
  116. package/dist/index298.js +2 -4
  117. package/dist/index299.js +2 -7
  118. package/dist/index300.js +2 -11
  119. package/dist/index301.js +22 -3
  120. package/dist/index303.js +224 -213
  121. package/dist/index304.js +3 -5
  122. package/dist/index305.js +3 -2
  123. package/dist/index306.js +206 -59
  124. package/dist/index307.js +2 -3
  125. package/dist/index308.js +5 -3
  126. package/dist/index309.js +66 -3
  127. package/dist/index31.js +2 -2
  128. package/dist/index310.js +3 -58
  129. package/dist/index311.js +3 -5
  130. package/dist/index312.js +57 -7
  131. package/dist/index313.js +1 -1
  132. package/dist/index314.js +4 -3
  133. package/dist/index315.js +7 -6
  134. package/dist/index316.js +3 -7
  135. package/dist/index317.js +3 -18
  136. package/dist/index320.js +6 -46
  137. package/dist/index321.js +19 -2
  138. package/dist/index322.js +9 -0
  139. package/dist/index323.js +47 -480
  140. package/dist/index324.js +2 -424
  141. package/dist/index326.js +480 -2
  142. package/dist/index327.js +426 -0
  143. package/dist/index329.js +4 -0
  144. package/dist/index33.js +102 -61
  145. package/dist/index35.js +3 -3
  146. package/dist/index37.js +284 -244
  147. package/dist/index39.js +5 -5
  148. package/dist/index41.js +2 -2
  149. package/dist/index43.js +129 -84
  150. package/dist/index45.js +122 -120
  151. package/dist/index47.js +2 -2
  152. package/dist/index49.js +2 -2
  153. package/dist/index55.js +1 -1
  154. package/dist/index57.js +2 -2
  155. package/dist/index61.js +13 -9
  156. package/dist/index75.js +3 -3
  157. package/dist/index79.js +2 -2
  158. package/dist/index81.js +1 -1
  159. package/dist/index84.js +2 -2
  160. package/dist/index86.js +1 -1
  161. package/dist/index88.js +4 -4
  162. package/dist/index90.js +1 -1
  163. package/package.json +1 -1
  164. package/dist/composables/useOptions.d.ts +0 -43
  165. package/dist/index206.js +0 -128
  166. package/dist/index231.js +0 -29
  167. package/dist/index252.js +0 -12
  168. package/dist/index254.js +0 -11
  169. package/dist/index265.js +0 -226
  170. package/dist/index267.js +0 -8
  171. package/dist/index280.js +0 -10
  172. /package/dist/{index325.js → index328.js} +0 -0
package/dist/index237.js CHANGED
@@ -1,62 +1,14 @@
1
- import { defineComponent as g, ref as i, computed as d, onMounted as h, openBlock as u, createElementBlock as m, createElementVNode as y, Fragment as x, renderList as B, createBlock as C, normalizeClass as S, withCtx as T, createTextVNode as E, toDisplayString as w } from "vue";
2
- import { range as H } from "./index315.js";
3
- import M from "./index13.js";
4
- /* empty css */
5
- const n = 10, l = 3, V = /* @__PURE__ */ g({
6
- __name: "BaseDatePickerYearSelector",
7
- props: {
8
- cursor: {},
9
- disabled: { type: Boolean }
10
- },
11
- emits: ["update:year"],
12
- setup(p, { emit: _ }) {
13
- const f = p, b = _, o = i(), r = d(() => f.cursor.year()), c = i(r.value - n * l), s = i(r.value + n * l), v = d(
14
- () => H(c.value, s.value).map((e) => ({
15
- text: e,
16
- key: e,
17
- selected: e === r.value,
18
- handler: () => b("update:year", e)
19
- }))
20
- ), k = (e) => {
21
- const t = e.target;
22
- t.scrollTop <= 100 ? c.value = Math.max(
23
- c.value - n * l,
24
- r.value - 200
25
- ) : t.scrollHeight - t.scrollTop === t.clientHeight && (s.value = Math.min(s.value + n * l, 2101));
26
- };
27
- return h(() => {
28
- if (!o.value) return;
29
- const e = o.value.querySelector(
30
- ".content__btn--selected"
31
- );
32
- e && (e.parentElement.scrollTop = e.offsetTop - e.parentElement.clientHeight / 2 + 16);
33
- }), (e, t) => (u(), m("div", {
34
- ref_key: "container",
35
- ref: o,
36
- class: "bb-base-date-picker__button-menu bb-base-date-picker__year-selector scrollbar-border"
37
- }, [
38
- y("div", {
39
- class: "content",
40
- onScrollPassive: k
41
- }, [
42
- (u(!0), m(x, null, B(v.value, (a) => (u(), C(M, {
43
- key: a.key,
44
- class: S({
45
- content__btn: !0,
46
- "content__btn--selected": a.selected
47
- }),
48
- disabled: e.disabled,
49
- onClick: a.handler
50
- }, {
51
- default: T(() => [
52
- E(w(a.text), 1)
53
- ]),
54
- _: 2
55
- }, 1032, ["class", "disabled", "onClick"]))), 128))
56
- ], 32)
57
- ], 512));
58
- }
59
- });
1
+ import { hash as e } from "./index229.js";
2
+ import { debouncedWatch as s } from "./index247.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
+ };
60
12
  export {
61
- V as default
13
+ n as useHashedWatcher
62
14
  };
package/dist/index238.js CHANGED
@@ -1,5 +1,18 @@
1
- import t from "./index293.js";
2
- const r = t;
1
+ import { isNotNil as n } from "./index134.js";
2
+ import { ref as t, onServerPrefetch as u, onBeforeMount as c } from "vue";
3
+ const h = ({
4
+ fn: i,
5
+ onStart: s,
6
+ multiple: f,
7
+ currentValue: o
8
+ }) => {
9
+ const a = s || !f && n(o) || f && !!o.length, e = t(!1), l = t(!1), r = async () => {
10
+ e.value = !0, await i({ prefill: !0 }), e.value = !1, l.value = !0;
11
+ };
12
+ return a && (u(r), c(async () => {
13
+ l.value || await r();
14
+ })), { isPrefilling: e, hasPrefilled: l, prefill: r };
15
+ };
3
16
  export {
4
- r as throttle
17
+ h as usePrefill
5
18
  };
package/dist/index239.js CHANGED
@@ -1,9 +1,21 @@
1
- import { ref as e } from "vue";
2
- const o = e(0), s = () => {
3
- o.value++;
4
- }, a = () => {
5
- o.value--;
6
- }, d = () => ({ openedModals: o, modalHasOpened: s, modalHasClosed: a });
1
+ import { getDefaultExportFromCjs as p, commonjsGlobal as s } from "./index271.js";
2
+ import { __module as n } from "./index295.js";
3
+ (function(u, l) {
4
+ (function(c, e) {
5
+ u.exports = e();
6
+ })(s, function() {
7
+ return function(c, e, r) {
8
+ r.updateLocale = function(f, o) {
9
+ var t = r.Ls[f];
10
+ if (t) return (o ? Object.keys(o) : []).forEach(function(a) {
11
+ t[a] = o[a];
12
+ }), t;
13
+ };
14
+ };
15
+ });
16
+ })(n);
17
+ var i = n.exports;
18
+ const x = /* @__PURE__ */ p(i);
7
19
  export {
8
- d as useModalsState
20
+ x as default
9
21
  };
package/dist/index240.js CHANGED
@@ -1,170 +1,29 @@
1
- import { ref as s, computed as a, onServerPrefetch as $, onBeforeMount as ee, onBeforeUnmount as te, watch as b, nextTick as Q } from "vue";
2
- import { last as le } from "./index213.js";
3
- import { useArray as E } from "./index295.js";
4
- import { uniqBy as ne } from "./index296.js";
5
- import { useItemValue as ue } from "./index279.js";
6
- import { useItemText as oe } from "./index297.js";
7
- import { hash as f } from "./index232.js";
8
- import { isNotNil as F } from "./index134.js";
9
- import { waitFor as ie } from "./index216.js";
10
- import { isNil as se } from "./index251.js";
11
- import { pipe as H } from "./index298.js";
12
- const xe = (t) => {
13
- const r = s(""), P = s(), o = (e) => {
14
- P.value = e, t.emit("update:modelValue", e);
15
- }, m = s([]), {
16
- array: k,
17
- add: j,
18
- remove: J,
19
- set: h
20
- } = E(), {
21
- array: O,
22
- add: L,
23
- remove: U
24
- } = E(), { getItemText: z } = oe(), { getItemValue: G } = ue();
25
- if (t.max && t.max < 1)
26
- throw new Error("Invalid value for `max` property");
27
- const B = (e) => {
28
- const l = !!(t.disabled.value || e.disabled), n = z(e, t.itemText), u = G(e, t.itemValue);
29
- if (u === void 0)
30
- throw new Error(
31
- 'The result of extracting "value" from option was undefined. Affected item is ' + JSON.stringify(e) + " please check itemValue property is correct."
32
- );
33
- const _ = f(u);
34
- return {
35
- item: e,
36
- text: n,
37
- value: u,
38
- valueHash: _,
39
- disabled: l,
40
- selected: !1
1
+ import { getDefaultExportFromCjs as c, commonjsGlobal as k } from "./index271.js";
2
+ import { __module as n } from "./index296.js";
3
+ (function(f, p) {
4
+ (function(r, e) {
5
+ f.exports = e();
6
+ })(k, function() {
7
+ var r = "week", e = "year";
8
+ return function(w, u, a) {
9
+ var o = u.prototype;
10
+ o.week = function(t) {
11
+ if (t === void 0 && (t = null), t !== null) return this.add(7 * (t - this.week()), "day");
12
+ var s = this.$locale().yearStart || 1;
13
+ if (this.month() === 11 && this.date() > 25) {
14
+ var l = a(this).startOf(e).add(1, e).date(s), d = a(this).endOf(r);
15
+ if (l.isBefore(d)) return 1;
16
+ }
17
+ var h = a(this).startOf(e).date(s).startOf(r).subtract(1, "millisecond"), i = this.diff(h, r, !0);
18
+ return i < 0 ? a(this).startOf("week").week() : Math.ceil(i);
19
+ }, o.weeks = function(t) {
20
+ return t === void 0 && (t = null), this.week(t);
21
+ };
41
22
  };
42
- }, V = (e) => (e.selected = F(q.value[e.valueHash]), e), K = t.max || 1 / 0, g = (e) => (e.disabled = e.disabled || t.multiple && t.modelValue.value.length >= K && !e.selected, e), x = a(() => {
43
- const e = [].concat(
44
- m.value.map(H(B, V, g)),
45
- O.value.map(H(V, g)),
46
- k.value.map(H(V, g))
47
- );
48
- return ne(e, (n) => n.valueHash);
49
- }), R = (e) => {
50
- t.multiple ? (o(t.modelValue.value.concat(e.value)), t.stash && j(e), t.resetQueryOnOptionSelected && i()) : (t.stash && h(e), o(e.value), Q(() => i()));
51
- }, W = async (e) => {
52
- if (U((l) => l.valueHash !== e.valueHash), J((l) => l.valueHash !== e.valueHash), t.multiple) {
53
- const l = { ...q.value };
54
- delete l[e.valueHash], o(Object.values(l));
55
- } else
56
- o(null), await Q(), i();
57
- }, q = a(() => {
58
- const e = {}, l = [].concat(t.modelValue.value);
59
- for (let n = 0; n < l.length; n++) {
60
- const u = l[n];
61
- e[f(u)] = u;
62
- }
63
- return e;
64
- }), I = async ({ prefill: e = !1 }) => {
65
- let l = [];
66
- if (Array.isArray(t.items.value))
67
- l = t.items.value;
68
- else if (typeof t.items.value == "function") {
69
- const n = ++d.value;
70
- try {
71
- l = await t.items.value(
72
- r.value,
73
- e,
74
- t.modelValue.value
75
- ), n < d.value && (await ie(() => n === d.value), l = m.value);
76
- } catch (u) {
77
- console.error(u);
78
- }
79
- d.value--;
80
- }
81
- m.value = l;
82
- }, C = a(() => {
83
- const e = {};
84
- for (let l = 0; l < x.value.length; l++) {
85
- const n = x.value[l], { valueHash: u } = n;
86
- e[u] = n;
87
- }
88
- return {
89
- get: (l) => e[f(l)]
90
- };
91
- }), c = a(() => [].concat(t.modelValue.value).reduce((e, l) => {
92
- const n = C.value.get(l);
93
- return n && e.push(n), e;
94
- }, [])), M = (e) => F(C.value.get(e)), i = () => {
95
- if (t.multiple) {
96
- r.value = "";
97
- return;
98
- }
99
- let e;
100
- c.value && (e = le(c.value)), r.value = (e == null ? void 0 : e.text) || "";
101
- }, X = () => {
102
- const e = r.value.trim(), l = B(e);
103
- L(l), i();
104
- }, d = s(0), A = a(() => [].concat(t.modelValue.value).reduce(
105
- (e, l) => (M(l) ? e.coherent.push(l) : e.incoherent.push(l), e),
106
- { coherent: [], incoherent: [] }
107
- )), D = a(() => t.multiple && !t.modelValue.value.length || !t.multiple && se(t.modelValue.value) ? !0 : !A.value.incoherent.length), Y = () => {
108
- t.enforceCoherence && !D.value && (t.multiple ? o(A.value.coherent) : o(null));
109
- }, y = s(!1), w = s(!1), v = async () => {
110
- w.value = !0, await I({ prefill: !0 }), Y(), i(), y.value = !0, w.value = !1;
111
- };
112
- $(async () => {
113
- t.prefill && (await v(), t.stash && h(...c.value));
114
- }), ee(async () => {
115
- t.prefill && !y.value && (await v(), t.stash && h(...c.value));
116
23
  });
117
- let T;
118
- const Z = () => {
119
- T && clearTimeout(T), T = setTimeout(async () => {
120
- try {
121
- await I({ prefill: !1 });
122
- } catch (e) {
123
- console.error(e);
124
- }
125
- }, t.queryDebounceTime);
126
- };
127
- te(() => clearTimeout(T));
128
- let p;
129
- b(
130
- () => t.modelValue.value,
131
- () => {
132
- if (D.value) {
133
- i();
134
- return;
135
- }
136
- p && clearTimeout(p), p = setTimeout(async () => {
137
- v();
138
- }, t.modelValueDebounceTime);
139
- }
140
- );
141
- let S;
142
- const N = async (e, l) => {
143
- f(l) !== f(e) && y.value && (S && clearTimeout(S), S = setTimeout(async () => {
144
- await v();
145
- }, t.depsDebounceTime));
146
- };
147
- return b(() => t.items.value, N), b(() => t.dependencies.value, N), {
148
- addCurrentQueryToManualItems: X,
149
- alignQueryToState: i,
150
- getOptions: I,
151
- hasPrefilled: y,
152
- innerLoading: d,
153
- isPrefilling: w,
154
- manualItems: O,
155
- options: x,
156
- prefillItems: v,
157
- query: r,
158
- searchByQuery: Z,
159
- selectedOptions: c,
160
- selectOption: R,
161
- setStash: h,
162
- unselectOption: W,
163
- updateModelValue: o,
164
- valueIsSelected: M,
165
- internalItems: m
166
- };
167
- };
24
+ })(n);
25
+ var m = n.exports;
26
+ const x = /* @__PURE__ */ c(m);
168
27
  export {
169
- xe as useOptions
28
+ x as default
170
29
  };
package/dist/index241.js CHANGED
@@ -1,86 +1,252 @@
1
- import { defineComponent as b, openBlock as t, createElementBlock as n, normalizeClass as r, createElementVNode as l, renderSlot as s, createTextVNode as o, toDisplayString as d, createCommentVNode as h, Fragment as c, renderList as m } from "vue";
2
- const p = { class: "bb-cr-container__container" }, u = {
3
- key: 0,
4
- class: "bb-cr-container__loading-container"
5
- }, g = {
6
- key: 1,
7
- class: "bb-cr-container__no-data-container"
8
- }, f = /* @__PURE__ */ b({
9
- __name: "OptionsContainer",
1
+ import { defineComponent as le, ref as A, computed as _, watch as ce, openBlock as c, createElementBlock as u, normalizeClass as k, withKeys as f, withModifiers as p, createVNode as ue, withCtx as fe, createElementVNode as M, Fragment as O, renderList as S, toDisplayString as C, renderSlot as L, nextTick as pe } from "vue";
2
+ import { chunk as be } from "./index320.js";
3
+ import { identity as T } from "./index216.js";
4
+ import { isNotNil as me } from "./index134.js";
5
+ import { last as ge } from "./index217.js";
6
+ import { sort as E } from "./index321.js";
7
+ import b from "./index211.js";
8
+ import he from "./index244.js";
9
+ const ye = ["onKeydown"], _e = { class: "bb-base-date-picker__header-container" }, ke = ["abbr"], Oe = ["id", "disabled", "tabindex"], Ce = /* @__PURE__ */ le({
10
+ __name: "BaseDatePickerInputDaySelector",
10
11
  props: {
11
- direction: {},
12
- hasErrors: { type: Boolean },
13
- hideLabel: { type: Boolean },
14
- loadingText: {},
15
- loading: { type: Boolean },
16
- noDataText: {},
17
- options: {}
12
+ cursor: {},
13
+ current: { type: Boolean },
14
+ disabled: { type: Boolean },
15
+ firstDayOfWeek: {},
16
+ id: {},
17
+ modelValue: {},
18
+ max: {},
19
+ min: {},
20
+ selectable: { type: Function },
21
+ range: { type: Boolean },
22
+ multiple: { type: Boolean },
23
+ readonly: { type: Boolean }
18
24
  },
19
- setup(k) {
20
- return (a, y) => (t(), n("span", {
21
- ref: "container",
22
- class: r(["bb-cr-container", {
23
- "bb-cr-container--errors": a.hasErrors,
24
- "bb-cr-container--horizontal": a.direction === "horizontal",
25
- "bb-cr-container--vertical": a.direction === "vertical"
26
- }])
25
+ emits: ["update:modelValue", "update:cursor"],
26
+ setup(N, { emit: x }) {
27
+ const a = N, s = x, g = A(null), R = b().startOf("day"), m = _(() => {
28
+ let e = 1 / 0, r = -1 / 0, o = {};
29
+ return a.modelValue && [].concat(a.modelValue).filter(T).map((i) => b(i).startOf("day")).map((i) => i.valueOf()).forEach((i, h) => {
30
+ i < e && (e = i), i > r && (r = i), o[i] = h;
31
+ }), {
32
+ min: e,
33
+ max: r,
34
+ index: (t) => o[t.valueOf()],
35
+ selected: (t) => me(o[t.valueOf()]),
36
+ isFirstOfRange: (t) => t.valueOf() === e,
37
+ isLastOfRange: (t) => t.valueOf() === r,
38
+ isBetween: (t) => t.valueOf() > e && t.valueOf() < r
39
+ };
40
+ }), K = _(() => new Array(7).fill("").map((e, r) => b().day((r + a.firstDayOfWeek) % 7)).map((e) => ({
41
+ accessibleLabel: e.format("dddd"),
42
+ label: e.format("dd").slice(0, 1).toUpperCase(),
43
+ id: e.toISOString(),
44
+ original: e
45
+ }))), v = _(() => {
46
+ const e = a.cursor.year().toString(), r = a.cursor.month().toString();
47
+ let t = a.cursor.clone().startOf("month").clone().startOf("week"), h = a.cursor.clone().endOf("month").clone().endOf("week"), Z = b(a.cursor).startOf("day"), D = [];
48
+ for (let n = t; n.isBefore(h); n = n.add(1, "day"))
49
+ D.push(n.clone());
50
+ const ee = D.map((n) => {
51
+ const y = n.toISOString(), te = n.week().toString();
52
+ let re = m.value.selected(n);
53
+ const B = a.range && m.value.isFirstOfRange(n), I = a.range && m.value.isLastOfRange(n), ae = a.range && !B && !I && m.value.isBetween(n), oe = n.month().toString() === r && n.year().toString() === e, ne = n.isSame(R), se = n.isSame(Z), ie = d(n), de = n.get("D").toString();
54
+ return {
55
+ buttonId: [a.id, y].filter(T).join("_"),
56
+ current: se,
57
+ disabled: ie,
58
+ first: B,
59
+ highlighted: oe,
60
+ id: y,
61
+ label: de,
62
+ last: I,
63
+ middle: ae,
64
+ original: n,
65
+ selected: re,
66
+ slotName: y,
67
+ today: ne,
68
+ week: te
69
+ };
70
+ });
71
+ return be(ee, 7);
72
+ }), d = (e) => {
73
+ let r = !0;
74
+ return a.min && r && (r = e.isSameOrAfter(b(a.min).startOf("day"))), a.max && r && (r = e.isSameOrBefore(b(a.max).startOf("day"))), typeof a.selectable == "function" && r && (r = a.selectable(e.toDate())), !r;
75
+ }, w = A("left"), F = (e, r) => {
76
+ e && r && (w.value = e.isBefore(r) ? "left" : "right");
77
+ };
78
+ ce(
79
+ () => a.cursor,
80
+ (e, r) => {
81
+ F(e, r);
82
+ }
83
+ );
84
+ const V = (e) => s("update:cursor", e), l = async () => {
85
+ if (!g.value) return;
86
+ await pe();
87
+ const e = ge([
88
+ ...g.value.querySelectorAll(
89
+ ".bb-base-date-picker__date--current button"
90
+ )
91
+ ]);
92
+ e instanceof HTMLElement && e.focus();
93
+ }, H = (e) => {
94
+ if (!a.readonly && e.target instanceof HTMLButtonElement) {
95
+ const [, r] = e.target.id.split("_"), o = b(r);
96
+ if (a.cursor.month() !== o.month()) {
97
+ V(o);
98
+ return;
99
+ }
100
+ const t = v.value.flat().find((i) => i.id === r);
101
+ if (t.disabled) return;
102
+ V(o), P(t);
103
+ }
104
+ }, P = (e) => {
105
+ a.range ? U(e) : a.multiple ? j(e) : W(e);
106
+ }, U = (e) => {
107
+ if (!Array.isArray(a.modelValue)) return;
108
+ const r = e.original.toISOString();
109
+ if (a.modelValue.length !== 1) s("update:modelValue", [r]);
110
+ else {
111
+ const o = E([a.modelValue[0], e.original.toISOString()]);
112
+ s("update:modelValue", o);
113
+ }
114
+ }, j = (e) => {
115
+ if (Array.isArray(a.modelValue))
116
+ if (e.selected) {
117
+ const r = e.original.toISOString(), o = a.modelValue.filter((t) => t !== r);
118
+ s("update:modelValue", o);
119
+ } else {
120
+ const r = E([...a.modelValue, e.original.toISOString()]);
121
+ s("update:modelValue", r);
122
+ }
123
+ }, W = (e) => {
124
+ e.selected ? s("update:modelValue", null) : s("update:modelValue", e.original.toISOString());
125
+ }, $ = () => {
126
+ const e = a.cursor.clone().add(1, "day");
127
+ d(e) || (s("update:cursor", e), l());
128
+ }, q = () => {
129
+ const e = a.cursor.clone().subtract(1, "day");
130
+ d(e) || (s("update:cursor", e), l());
131
+ }, z = () => {
132
+ const e = a.cursor.clone().subtract(1, "week");
133
+ d(e) || (s("update:cursor", e), l());
134
+ }, G = () => {
135
+ const e = a.cursor.clone().add(1, "week");
136
+ d(e) || (s("update:cursor", e), l());
137
+ }, J = () => {
138
+ const e = a.cursor.clone().endOf("week");
139
+ d(e) || (s("update:cursor", e), l());
140
+ }, Q = () => {
141
+ const e = a.cursor.clone().startOf("week");
142
+ d(e) || (s("update:cursor", e), l());
143
+ }, X = (e) => {
144
+ if (e.shiftKey) {
145
+ const r = a.cursor.clone().subtract(1, "year");
146
+ if (d(r)) return;
147
+ s("update:cursor", r);
148
+ } else {
149
+ const r = a.cursor.clone().subtract(1, "month");
150
+ if (d(r)) return;
151
+ s("update:cursor", r);
152
+ }
153
+ l();
154
+ }, Y = (e) => {
155
+ if (e.shiftKey) {
156
+ const r = a.cursor.clone().add(1, "year");
157
+ if (d(r)) return;
158
+ s("update:cursor", r);
159
+ } else {
160
+ const r = a.cursor.clone().add(1, "month");
161
+ if (d(r)) return;
162
+ s("update:cursor", r);
163
+ }
164
+ l();
165
+ };
166
+ return (e, r) => (c(), u("div", {
167
+ ref_key: "calendar",
168
+ ref: g,
169
+ class: k(["bb-base-date-picker__days-selector", { "bb-base-date-picker__days-selector--hidden": !e.current }]),
170
+ onKeydown: [
171
+ f(p(G, ["prevent"]), ["down"]),
172
+ f(p(J, ["prevent"]), ["end"]),
173
+ f(p(Q, ["prevent"]), ["home"]),
174
+ f(p(q, ["prevent"]), ["left"]),
175
+ f(p(Y, ["prevent"]), ["page-down"]),
176
+ f(p(X, ["prevent"]), ["page-up"]),
177
+ f(p($, ["prevent"]), ["right"]),
178
+ f(p(z, ["prevent"]), ["up"])
179
+ ]
27
180
  }, [
28
- l("span", p, [
29
- s(a.$slots, "prepend"),
30
- !a.options.length && a.loading ? (t(), n("span", u, [
31
- s(a.$slots, "loading", {}, () => [
32
- o(d(a.loadingText), 1)
33
- ])
34
- ])) : a.options.length ? h("", !0) : (t(), n("span", g, [
35
- s(a.$slots, "no-data", {}, () => [
36
- o(d(a.noDataText), 1)
37
- ])
38
- ])),
39
- (t(!0), n(c, null, m(a.options, (e, i) => (t(), n(c, {
40
- key: (e == null ? void 0 : e.valueHash) || i
41
- }, [
42
- s(a.$slots, "option:prepend", {
43
- id: e.valueHash,
44
- checked: !!e.selected,
45
- disabled: !!e.disabled,
46
- item: e.item,
47
- text: e.text
48
- }),
49
- l("label", {
50
- class: r(["bb-cr-container-option", { "bb-base-radio-selected": e.selected }])
181
+ ue(he, {
182
+ direction: w.value,
183
+ gap: 30
184
+ }, {
185
+ default: fe(() => [
186
+ (c(), u("div", {
187
+ key: e.cursor.month().toString(),
188
+ class: "bb-base-date-picker__month"
51
189
  }, [
52
- s(a.$slots, "input", {
53
- index: i,
54
- option: e
55
- }),
56
- l("span", {
57
- class: r({
58
- "bb-cr-container-option__text": !0,
59
- "sr-only": a.hideLabel
60
- })
190
+ M("div", _e, [
191
+ (c(!0), u(O, null, S(K.value, (o) => (c(), u("div", {
192
+ key: o.id,
193
+ abbr: o.accessibleLabel,
194
+ class: "bb-base-date-picker__header-cell"
195
+ }, C(o.label), 9, ke))), 128))
196
+ ]),
197
+ (c(!0), u(O, null, S(v.value, (o) => (c(), u("div", {
198
+ key: o[0].id,
199
+ class: "bb-base-date-picker__week"
61
200
  }, [
62
- s(a.$slots, "label", {
63
- checked: !!e.selected,
64
- item: e.item,
65
- text: e.text
66
- }, () => [
67
- o(d(e.text), 1)
68
- ])
69
- ], 2)
70
- ], 2),
71
- s(a.$slots, "option:append", {
72
- id: e.valueHash,
73
- checked: !!e.selected,
74
- disabled: !!e.disabled,
75
- item: e.item,
76
- text: e.text
77
- })
78
- ], 64))), 128)),
79
- s(a.$slots, "append")
80
- ])
81
- ], 2));
201
+ (c(!0), u(O, null, S(o, (t) => (c(), u("div", {
202
+ key: t.id,
203
+ class: k({
204
+ "bb-base-date-picker__date--current": t.current,
205
+ "bb-base-date-picker__date--disabled": e.disabled || t.disabled,
206
+ "bb-base-date-picker__date--first": t.first,
207
+ "bb-base-date-picker__date--highlighted": t.highlighted,
208
+ "bb-base-date-picker__date--last": t.last,
209
+ "bb-base-date-picker__date--middle": t.middle,
210
+ "bb-base-date-picker__date--selected": t.selected,
211
+ "bb-base-date-picker__date--today": t.today,
212
+ "bb-base-date-picker__date": !0
213
+ })
214
+ }, [
215
+ M("button", {
216
+ id: t.buttonId,
217
+ class: k("bb-base-date-picker__date-button"),
218
+ disabled: e.disabled || t.disabled,
219
+ tabindex: Number(t.current) - 1,
220
+ type: "button",
221
+ onClick: H
222
+ }, C(t.label), 9, Oe),
223
+ L(e.$slots, "day", {
224
+ first: t.first,
225
+ highlighted: t.highlighted,
226
+ item: t.original,
227
+ label: t.label,
228
+ last: t.last,
229
+ middle: t.middle,
230
+ selected: t.selected
231
+ }),
232
+ L(e.$slots, t.slotName, {
233
+ first: t.first,
234
+ highlighted: t.highlighted,
235
+ item: t.original,
236
+ label: t.label,
237
+ last: t.last,
238
+ middle: t.middle,
239
+ selected: t.selected
240
+ })
241
+ ], 2))), 128))
242
+ ]))), 128))
243
+ ]))
244
+ ]),
245
+ _: 3
246
+ }, 8, ["direction"])
247
+ ], 42, ye));
82
248
  }
83
249
  });
84
250
  export {
85
- f as default
251
+ Ce as default
86
252
  };