bitboss-ui 2.1.115 → 2.1.117

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 (196) hide show
  1. package/dist/ai/BbBadge.md +107 -48
  2. package/dist/ai/BbTab.md +7 -7
  3. package/dist/components/BbBadge/types.d.ts +4 -0
  4. package/dist/index.css +1 -1
  5. package/dist/index109.js +8 -8
  6. package/dist/index110.js +17 -17
  7. package/dist/index118.js +1 -1
  8. package/dist/index124.js +72 -74
  9. package/dist/index126.js +12 -12
  10. package/dist/index134.js +1 -1
  11. package/dist/index136.js +5 -5
  12. package/dist/index138.js +1 -1
  13. package/dist/index140.js +2 -2
  14. package/dist/index144.js +1 -1
  15. package/dist/index146.js +2 -2
  16. package/dist/index16.js +3 -3
  17. package/dist/index18.js +3 -3
  18. package/dist/index20.js +8 -8
  19. package/dist/index22.js +14 -14
  20. package/dist/index221.js +2 -138
  21. package/dist/index222.js +138 -2
  22. package/dist/index224.js +1 -1
  23. package/dist/index225.js +1 -1
  24. package/dist/index226.js +1 -1
  25. package/dist/index227.js +7 -5
  26. package/dist/index228.js +2 -5
  27. package/dist/index229.js +5 -5
  28. package/dist/index230.js +5 -5
  29. package/dist/index231.js +5 -3
  30. package/dist/index232.js +5 -2
  31. package/dist/index233.js +3 -6
  32. package/dist/index234.js +2 -8
  33. package/dist/index235.js +6 -268
  34. package/dist/index236.js +6 -50
  35. package/dist/index237.js +260 -44
  36. package/dist/index238.js +45 -25
  37. package/dist/index239.js +40 -48
  38. package/dist/index24.js +10 -10
  39. package/dist/index240.js +31 -12
  40. package/dist/index241.js +59 -187
  41. package/dist/index242.js +13 -3
  42. package/dist/index243.js +5 -2
  43. package/dist/index244.js +5 -2
  44. package/dist/index245.js +5 -2
  45. package/dist/index246.js +3 -13
  46. package/dist/index247.js +135 -13
  47. package/dist/index249.js +9 -17
  48. package/dist/index250.js +2 -106
  49. package/dist/index251.js +6 -0
  50. package/dist/index252.js +2 -100
  51. package/dist/index253.js +4 -0
  52. package/dist/index254.js +13 -3
  53. package/dist/index255.js +13 -2
  54. package/dist/index256.js +18 -4
  55. package/dist/index257.js +11 -19
  56. package/dist/index258.js +51 -6
  57. package/dist/index259.js +18 -16
  58. package/dist/index26.js +3 -3
  59. package/dist/index260.js +12 -86
  60. package/dist/index261.js +19 -0
  61. package/dist/index262.js +1 -1
  62. package/dist/index263.js +16 -16
  63. package/dist/index264.js +106 -12
  64. package/dist/index266.js +100 -2
  65. package/dist/index268.js +107 -7
  66. package/dist/index269.js +11 -3
  67. package/dist/index270.js +86 -4
  68. package/dist/index272.js +3 -5
  69. package/dist/index273.js +4 -5
  70. package/dist/index274.js +18 -133
  71. package/dist/index275.js +34 -0
  72. package/dist/index277.js +27 -8
  73. package/dist/index279.js +9 -4
  74. package/dist/index28.js +1 -1
  75. package/dist/index280.js +18 -20
  76. package/dist/index281.js +3 -373
  77. package/dist/index282.js +55 -0
  78. package/dist/index283.js +4 -33
  79. package/dist/index284.js +23 -3
  80. package/dist/index285.js +6 -25
  81. package/dist/index286.js +16 -3
  82. package/dist/index287.js +9 -17
  83. package/dist/index288.js +2 -11
  84. package/dist/index289.js +368 -102
  85. package/dist/index291.js +3 -67
  86. package/dist/index292.js +5 -32
  87. package/dist/index293.js +11 -0
  88. package/dist/index294.js +23 -6
  89. package/dist/index295.js +6 -10
  90. package/dist/index296.js +25 -3
  91. package/dist/index297.js +65 -7
  92. package/dist/index298.js +186 -51
  93. package/dist/index299.js +3 -5
  94. package/dist/index30.js +3 -3
  95. package/dist/index300.js +2 -21
  96. package/dist/index301.js +7 -28
  97. package/dist/index302.js +9 -0
  98. package/dist/index303.js +2 -7
  99. package/dist/index304.js +7 -2
  100. package/dist/index305.js +4 -280
  101. package/dist/index306.js +280 -2
  102. package/dist/index307.js +2 -16
  103. package/dist/index308.js +16 -2
  104. package/dist/index309.js +2 -16
  105. package/dist/index310.js +16 -2
  106. package/dist/index311.js +2 -27
  107. package/dist/index312.js +27 -2
  108. package/dist/index313.js +2 -2
  109. package/dist/index314.js +1 -1
  110. package/dist/index315.js +1 -1
  111. package/dist/index317.js +2 -28
  112. package/dist/index318.js +28 -2
  113. package/dist/index319.js +2 -7
  114. package/dist/index32.js +2 -2
  115. package/dist/index320.js +3 -719
  116. package/dist/index321.js +3 -366
  117. package/dist/index322.js +3 -57
  118. package/dist/index323.js +3 -4
  119. package/dist/index324.js +1 -1
  120. package/dist/index325.js +2 -17
  121. package/dist/index326.js +17 -3
  122. package/dist/index327.js +125 -3
  123. package/dist/index328.js +2 -3
  124. package/dist/index329.js +15 -3
  125. package/dist/index330.js +2 -125
  126. package/dist/index331.js +19 -2
  127. package/dist/index332.js +2 -15
  128. package/dist/index333.js +3 -2
  129. package/dist/index334.js +5 -19
  130. package/dist/index335.js +4 -2
  131. package/dist/index336.js +6 -5
  132. package/dist/index337.js +3 -5
  133. package/dist/index338.js +5 -2
  134. package/dist/index339.js +719 -4
  135. package/dist/index34.js +7 -7
  136. package/dist/index340.js +366 -2
  137. package/dist/index341.js +57 -3
  138. package/dist/index342.js +2 -3
  139. package/dist/index343.js +34 -5
  140. package/dist/index344.js +128 -6
  141. package/dist/index345.js +395 -16
  142. package/dist/index346.js +200 -9
  143. package/dist/index347.js +258 -14
  144. package/dist/index348.js +7 -5
  145. package/dist/index349.js +5 -7
  146. package/dist/index350.js +7 -67
  147. package/dist/index351.js +18 -66
  148. package/dist/index352.js +8 -34
  149. package/dist/index353.js +12 -126
  150. package/dist/index354.js +65 -396
  151. package/dist/index355.js +66 -92
  152. package/dist/index356.js +21 -227
  153. package/dist/index358.js +9 -0
  154. package/dist/index359.js +228 -7
  155. package/dist/index36.js +4 -4
  156. package/dist/index360.js +2 -200
  157. package/dist/index361.js +2 -259
  158. package/dist/index363.js +93 -2
  159. package/dist/index364.js +441 -2
  160. package/dist/index365.js +114 -427
  161. package/dist/index366.js +46 -127
  162. package/dist/index367.js +67 -44
  163. package/dist/index368.js +516 -66
  164. package/dist/index369.js +45 -515
  165. package/dist/index38.js +20 -20
  166. package/dist/index40.js +7 -7
  167. package/dist/index42.js +2 -2
  168. package/dist/index44.js +7 -7
  169. package/dist/index46.js +6 -6
  170. package/dist/index50.js +2 -2
  171. package/dist/index54.js +1 -1
  172. package/dist/index56.js +1 -1
  173. package/dist/index58.js +25 -20
  174. package/dist/index60.js +2 -2
  175. package/dist/index62.js +5 -5
  176. package/dist/index68.js +1 -1
  177. package/dist/index74.js +4 -4
  178. package/dist/index82.js +6 -6
  179. package/dist/index84.js +1 -1
  180. package/dist/index86.js +2 -2
  181. package/dist/index88.js +3 -3
  182. package/dist/index90.js +1 -1
  183. package/dist/index93.js +3 -3
  184. package/dist/index95.js +2 -2
  185. package/dist/index97.js +5 -5
  186. package/dist/index99.js +1 -1
  187. package/package.json +2 -2
  188. package/dist/index248.js +0 -53
  189. package/dist/index265.js +0 -20
  190. package/dist/index267.js +0 -9
  191. package/dist/index271.js +0 -7
  192. package/dist/index276.js +0 -11
  193. package/dist/index278.js +0 -25
  194. package/dist/index290.js +0 -13
  195. package/dist/index357.js +0 -24
  196. package/dist/index370.js +0 -52
package/dist/index236.js CHANGED
@@ -1,54 +1,10 @@
1
- import { defineComponent as p, ref as b, watch as _, computed as m, createElementBlock as d, openBlock as c, normalizeClass as u, createElementVNode as t, createVNode as h, withCtx as f, toDisplayString as o } from "vue";
2
- import k from "./index348.js";
3
- const y = { class: "bb-base-date-picker__year-container" }, v = {
4
- "aria-live": "polite",
5
- class: "bb-base-date-picker__selected-day-label"
6
- }, B = { class: "bb-base-date-picker__weekday" }, D = { class: "bb-base-date-picker__monthday" }, M = { class: "bb-base-date-picker__month-button" }, C = /* @__PURE__ */ p({
7
- __name: "BaseDatePickerHeader",
8
- props: {
9
- cursor: {},
10
- disabled: { type: Boolean },
11
- hidden: { type: Boolean }
12
- },
13
- emits: ["mode:year", "mode:month"],
14
- setup(n) {
15
- const s = n, r = b("top"), l = (e, a) => {
16
- e && a && (r.value = e.isBefore(a) ? "top" : "bottom");
17
- };
18
- _(
19
- () => s.cursor,
20
- (e, a) => {
21
- l(e, a);
22
- }
23
- );
24
- const i = m(() => s.cursor.format("YYYY"));
25
- return (e, a) => (c(), d("div", {
26
- class: u(["bb-base-date-picker__header", { "bb-base-date-picker__header--hidden": e.hidden }])
27
- }, [
28
- t("div", y, [
29
- h(k, {
30
- direction: r.value,
31
- duration: 500,
32
- gap: 30
33
- }, {
34
- default: f(() => [
35
- (c(), d("span", {
36
- key: i.value,
37
- "aria-live": "polite",
38
- class: "bb-base-date-picker__year-button"
39
- }, o(i.value), 1))
40
- ]),
41
- _: 1
42
- }, 8, ["direction"])
43
- ]),
44
- t("div", v, [
45
- t("span", B, o(e.cursor.format("ddd")) + ", ", 1),
46
- t("span", D, o(e.cursor.format("DD")), 1),
47
- t("span", M, o(e.cursor.format("MMMM")), 1)
48
- ])
49
- ], 2));
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}`);
50
6
  }
51
7
  });
52
8
  export {
53
- C as default
9
+ e as useLogger
54
10
  };
package/dist/index237.js CHANGED
@@ -1,54 +1,270 @@
1
- import { defineComponent as b, computed as c, createElementBlock as l, openBlock as a, createElementVNode as h, Fragment as p, renderList as k, createBlock as f, normalizeClass as y, withCtx as M, createTextVNode as x, toDisplayString as B } from "vue";
2
- import C from "./index14.js";
3
- /* empty css */
4
- const v = {
5
- "aria-label": "Month selector",
6
- class: "bb-base-date-picker__button-menu bb-base-date-picker__month-selector",
7
- role: "listbox"
8
- }, g = { class: "content" }, N = /* @__PURE__ */ b({
9
- __name: "BaseDatePickerMonthSelector",
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 "./index253.js";
4
+ import { isNotNil as ke } from "./index150.js";
5
+ import { last as ve } from "./index234.js";
6
+ import { sort as N } from "./index351.js";
7
+ import { validateDateFormat as R } from "./index235.js";
8
+ import { toInnerValue as Oe, toOuterValue as p } from "./index352.js";
9
+ import { isDateDisabled as we } from "./index353.js";
10
+ import g from "./index229.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",
10
14
  props: {
11
15
  cursor: {},
12
- disabled: { type: Boolean }
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 }
13
28
  },
14
- emits: ["update:month"],
15
- setup(d, { emit: i }) {
16
- const o = d, m = i, u = c(() => o.cursor.month()), _ = c(() => {
17
- const t = o.cursor.clone().startOf("year"), n = u.value;
18
- return Array.from({ length: 12 }, (e, r) => {
19
- const s = t.add(r, "month");
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();
20
57
  return {
21
- text: s.format("MMMM"),
22
- key: s.unix(),
23
- selected: r === n,
24
- handler: () => m("update:month", r)
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
25
72
  };
26
73
  });
27
- });
28
- return (t, n) => (a(), l("div", v, [
29
- h("div", g, [
30
- (a(!0), l(p, null, k(_.value, (e) => (a(), f(C, {
31
- key: e.key,
32
- "aria-label": e.text,
33
- "aria-selected": e.selected,
34
- class: y({
35
- content__btn: !0,
36
- "content__btn--selected": e.selected
37
- }),
38
- disabled: t.disabled,
39
- role: "option",
40
- type: "button",
41
- onClick: e.handler
42
- }, {
43
- default: M(() => [
44
- x(B(e.text), 1)
45
- ]),
46
- _: 2
47
- }, 1032, ["aria-label", "aria-selected", "class", "disabled", "onClick"]))), 128))
48
- ])
49
- ]));
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));
50
266
  }
51
267
  });
52
268
  export {
53
- N as default
269
+ Pe as default
54
270
  };
package/dist/index238.js CHANGED
@@ -1,34 +1,54 @@
1
- import { defineComponent as c, createBlock as l, openBlock as m, Transition as u, withCtx as f, renderSlot as d } from "vue";
2
- const y = /* @__PURE__ */ c({
3
- __name: "ScaleFade",
1
+ import { defineComponent as p, ref as b, watch as _, computed as m, createElementBlock as d, openBlock as c, normalizeClass as u, createElementVNode as t, createVNode as h, withCtx as f, toDisplayString as o } from "vue";
2
+ import k from "./index349.js";
3
+ const y = { class: "bb-base-date-picker__year-container" }, v = {
4
+ "aria-live": "polite",
5
+ class: "bb-base-date-picker__selected-day-label"
6
+ }, B = { class: "bb-base-date-picker__weekday" }, D = { class: "bb-base-date-picker__monthday" }, M = { class: "bb-base-date-picker__month-button" }, C = /* @__PURE__ */ p({
7
+ __name: "BaseDatePickerHeader",
4
8
  props: {
5
- duration: { default: 200 },
6
- scaleFrom: { default: 0.97 }
9
+ cursor: {},
10
+ disabled: { type: Boolean },
11
+ hidden: { type: Boolean }
7
12
  },
13
+ emits: ["mode:year", "mode:month"],
8
14
  setup(n) {
9
- const t = n, a = (s) => {
10
- const e = s;
11
- e.style.opacity = "0", e.style.transform = `scale(${t.scaleFrom})`, e.style.transformOrigin = "center top";
12
- }, r = (s, e) => {
13
- const o = s;
14
- o.style.transition = `opacity ${t.duration}ms ease-out, transform ${t.duration}ms cubic-bezier(0.34, 1.56, 0.64, 1)`, o.offsetHeight, o.style.opacity = "1", o.style.transform = "scale(1)", setTimeout(e, t.duration);
15
- }, i = (s, e) => {
16
- const o = s;
17
- o.style.transition = `opacity ${t.duration}ms ease-in, transform ${t.duration}ms ease-in`, o.style.opacity = "0", o.style.transform = `scale(${t.scaleFrom})`, setTimeout(e, t.duration);
15
+ const s = n, r = b("top"), l = (e, a) => {
16
+ e && a && (r.value = e.isBefore(a) ? "top" : "bottom");
18
17
  };
19
- return (s, e) => (m(), l(u, {
20
- css: !1,
21
- onBeforeEnter: a,
22
- onEnter: r,
23
- onLeave: i
24
- }, {
25
- default: f(() => [
26
- d(s.$slots, "default")
18
+ _(
19
+ () => s.cursor,
20
+ (e, a) => {
21
+ l(e, a);
22
+ }
23
+ );
24
+ const i = m(() => s.cursor.format("YYYY"));
25
+ return (e, a) => (c(), d("div", {
26
+ class: u(["bb-base-date-picker__header", { "bb-base-date-picker__header--hidden": e.hidden }])
27
+ }, [
28
+ t("div", y, [
29
+ h(k, {
30
+ direction: r.value,
31
+ duration: 500,
32
+ gap: 30
33
+ }, {
34
+ default: f(() => [
35
+ (c(), d("span", {
36
+ key: i.value,
37
+ "aria-live": "polite",
38
+ class: "bb-base-date-picker__year-button"
39
+ }, o(i.value), 1))
40
+ ]),
41
+ _: 1
42
+ }, 8, ["direction"])
27
43
  ]),
28
- _: 3
29
- }));
44
+ t("div", v, [
45
+ t("span", B, o(e.cursor.format("ddd")) + ", ", 1),
46
+ t("span", D, o(e.cursor.format("DD")), 1),
47
+ t("span", M, o(e.cursor.format("MMMM")), 1)
48
+ ])
49
+ ], 2));
30
50
  }
31
51
  });
32
52
  export {
33
- y as default
53
+ C as default
34
54
  };
package/dist/index239.js CHANGED
@@ -1,62 +1,54 @@
1
- import { defineComponent as g, ref as i, computed as d, onMounted as h, createElementBlock as m, openBlock as u, 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 "./index349.js";
3
- import M from "./index14.js";
1
+ import { defineComponent as b, computed as c, createElementBlock as l, openBlock as a, createElementVNode as h, Fragment as p, renderList as k, createBlock as f, normalizeClass as y, withCtx as M, createTextVNode as x, toDisplayString as B } from "vue";
2
+ import C from "./index14.js";
4
3
  /* empty css */
5
- const n = 10, l = 3, V = /* @__PURE__ */ g({
6
- __name: "BaseDatePickerYearSelector",
4
+ const v = {
5
+ "aria-label": "Month selector",
6
+ class: "bb-base-date-picker__button-menu bb-base-date-picker__month-selector",
7
+ role: "listbox"
8
+ }, g = { class: "content" }, N = /* @__PURE__ */ b({
9
+ __name: "BaseDatePickerMonthSelector",
7
10
  props: {
8
11
  cursor: {},
9
12
  disabled: { type: Boolean }
10
13
  },
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({
14
+ emits: ["update:month"],
15
+ setup(d, { emit: i }) {
16
+ const o = d, m = i, u = c(() => o.cursor.month()), _ = c(() => {
17
+ const t = o.cursor.clone().startOf("year"), n = u.value;
18
+ return Array.from({ length: 12 }, (e, r) => {
19
+ const s = t.add(r, "month");
20
+ return {
21
+ text: s.format("MMMM"),
22
+ key: s.unix(),
23
+ selected: r === n,
24
+ handler: () => m("update:month", r)
25
+ };
26
+ });
27
+ });
28
+ return (t, n) => (a(), l("div", v, [
29
+ h("div", g, [
30
+ (a(!0), l(p, null, k(_.value, (e) => (a(), f(C, {
31
+ key: e.key,
32
+ "aria-label": e.text,
33
+ "aria-selected": e.selected,
34
+ class: y({
45
35
  content__btn: !0,
46
- "content__btn--selected": a.selected
36
+ "content__btn--selected": e.selected
47
37
  }),
48
- disabled: e.disabled,
49
- onClick: a.handler
38
+ disabled: t.disabled,
39
+ role: "option",
40
+ type: "button",
41
+ onClick: e.handler
50
42
  }, {
51
- default: T(() => [
52
- E(w(a.text), 1)
43
+ default: M(() => [
44
+ x(B(e.text), 1)
53
45
  ]),
54
46
  _: 2
55
- }, 1032, ["class", "disabled", "onClick"]))), 128))
56
- ], 32)
57
- ], 512));
47
+ }, 1032, ["aria-label", "aria-selected", "class", "disabled", "onClick"]))), 128))
48
+ ])
49
+ ]));
58
50
  }
59
51
  });
60
52
  export {
61
- V as default
53
+ N as default
62
54
  };
package/dist/index24.js CHANGED
@@ -1,15 +1,15 @@
1
1
  import { defineComponent as Ke, watchEffect as Ue, ref as F, computed as _, watch as pe, onBeforeUnmount as Ge, createBlock as Je, openBlock as E, normalizeClass as x, withCtx as $, createElementVNode as V, createVNode as X, unref as O, createElementBlock as R, createCommentVNode as ee, toDisplayString as q, Fragment as ge, renderList as Ze, withModifiers as Qe, renderSlot as B, mergeProps as Xe } from "vue";
2
2
  import { _config as be } from "./index4.js";
3
- import b from "./index227.js";
4
- import et from "./index271.js";
5
- import ve from "./index272.js";
6
- import tt from "./index228.js";
7
- import at from "./index229.js";
8
- import nt from "./index273.js";
9
- import { isEmpty as rt } from "./index254.js";
3
+ import b from "./index229.js";
4
+ import et from "./index243.js";
5
+ import ve from "./index244.js";
6
+ import tt from "./index230.js";
7
+ import at from "./index231.js";
8
+ import nt from "./index245.js";
9
+ import { isEmpty as rt } from "./index246.js";
10
10
  import { useId as ot } from "./index8.js";
11
- import { useLocale as it } from "./index240.js";
12
- import { useLogger as lt } from "./index234.js";
11
+ import { useLocale as it } from "./index242.js";
12
+ import { useLogger as lt } from "./index236.js";
13
13
  import { useMobile as st } from "./index9.js";
14
14
  import ut from "./index22.js";
15
15
  /* empty css */
@@ -17,7 +17,7 @@ import dt from "./index140.js";
17
17
  /* empty css */
18
18
  import ct from "./index142.js";
19
19
  /* empty css */
20
- import ft from "./index274.js";
20
+ import ft from "./index247.js";
21
21
  /* empty css */
22
22
  const mt = { class: "bb-base-date-picker-input__inner-wrapper" }, pt = ["id", "aria-invalid", "aria-label", "autocomplete", "autofocus", "disabled", "inputmode", "maxlength", "name", "readonly", "required", "tabindex", "value", "onBlur", "onFocus", "onInput", "onKeydown", "onPaste"], gt = ["onClick"], bt = ["aria-label", "aria-expanded", "disabled"], vt = ["inert"], D = "YYYY-MM-DD", Rt = /* @__PURE__ */ Ke({
23
23
  __name: "BaseDatePickerInput",
package/dist/index240.js CHANGED
@@ -1,15 +1,34 @@
1
- import { locales as t } from "./index319.js";
2
- import { _config as m } from "./index4.js";
3
- import { get as c } from "./index290.js";
4
- import { readonly as l, computed as n } from "vue";
5
- const p = (o, ...r) => l(
6
- n(() => c(t[m.locale], o).replace(
7
- /\{(\d+)\}/g,
8
- (a, e) => r[e]
9
- ))
10
- ), d = () => ({
11
- t: p
1
+ import { defineComponent as c, createBlock as l, openBlock as m, Transition as u, withCtx as f, renderSlot as d } from "vue";
2
+ const y = /* @__PURE__ */ c({
3
+ __name: "ScaleFade",
4
+ props: {
5
+ duration: { default: 200 },
6
+ scaleFrom: { default: 0.97 }
7
+ },
8
+ setup(n) {
9
+ const t = n, a = (s) => {
10
+ const e = s;
11
+ e.style.opacity = "0", e.style.transform = `scale(${t.scaleFrom})`, e.style.transformOrigin = "center top";
12
+ }, r = (s, e) => {
13
+ const o = s;
14
+ o.style.transition = `opacity ${t.duration}ms ease-out, transform ${t.duration}ms cubic-bezier(0.34, 1.56, 0.64, 1)`, o.offsetHeight, o.style.opacity = "1", o.style.transform = "scale(1)", setTimeout(e, t.duration);
15
+ }, i = (s, e) => {
16
+ const o = s;
17
+ o.style.transition = `opacity ${t.duration}ms ease-in, transform ${t.duration}ms ease-in`, o.style.opacity = "0", o.style.transform = `scale(${t.scaleFrom})`, setTimeout(e, t.duration);
18
+ };
19
+ return (s, e) => (m(), l(u, {
20
+ css: !1,
21
+ onBeforeEnter: a,
22
+ onEnter: r,
23
+ onLeave: i
24
+ }, {
25
+ default: f(() => [
26
+ d(s.$slots, "default")
27
+ ]),
28
+ _: 3
29
+ }));
30
+ }
12
31
  });
13
32
  export {
14
- d as useLocale
33
+ y as default
15
34
  };