bitboss-ui 2.0.109 → 2.0.110

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 (151) hide show
  1. package/dist/components/BaseDatePickerInput/BaseDatePickerInput.vue.d.ts +1 -1
  2. package/dist/index100.js +6 -6
  3. package/dist/index111.js +10 -10
  4. package/dist/index119.js +2 -2
  5. package/dist/index121.js +6 -6
  6. package/dist/index123.js +1 -1
  7. package/dist/index125.js +1 -1
  8. package/dist/index127.js +1 -1
  9. package/dist/index128.js +1 -1
  10. package/dist/index129.js +1 -1
  11. package/dist/index13.js +2 -2
  12. package/dist/index131.js +1 -1
  13. package/dist/index132.js +2 -2
  14. package/dist/index133.js +2 -2
  15. package/dist/index15.js +5 -5
  16. package/dist/index17.js +3 -3
  17. package/dist/index19.js +8 -8
  18. package/dist/index205.js +115 -2
  19. package/dist/index206.js +2 -115
  20. package/dist/index207.js +3 -8
  21. package/dist/index208.js +41 -3
  22. package/dist/index209.js +6 -2
  23. package/dist/index21.js +16 -16
  24. package/dist/index210.js +7 -4
  25. package/dist/index211.js +8 -2
  26. package/dist/index212.js +11 -49
  27. package/dist/index213.js +15 -0
  28. package/dist/index214.js +3 -13
  29. package/dist/index215.js +3 -20
  30. package/dist/index216.js +2 -4
  31. package/dist/index217.js +4 -13
  32. package/dist/index218.js +2 -126
  33. package/dist/index219.js +126 -5
  34. package/dist/index220.js +5 -125
  35. package/dist/index221.js +122 -13
  36. package/dist/index222.js +10 -10
  37. package/dist/index223.js +15 -18
  38. package/dist/index224.js +16 -12
  39. package/dist/index225.js +15 -2
  40. package/dist/index226.js +2 -2
  41. package/dist/index227.js +2 -41
  42. package/dist/index228.js +20 -6
  43. package/dist/index229.js +49 -11
  44. package/dist/index23.js +19 -19
  45. package/dist/index231.js +13 -369
  46. package/dist/index232.js +5 -86
  47. package/dist/index233.js +371 -0
  48. package/dist/index234.js +4 -25
  49. package/dist/index235.js +86 -17
  50. package/dist/index237.js +22 -12
  51. package/dist/index238.js +16 -11
  52. package/dist/index239.js +45 -13
  53. package/dist/index240.js +15 -3
  54. package/dist/index241.js +12 -3
  55. package/dist/index242.js +16 -7
  56. package/dist/index243.js +106 -19
  57. package/dist/index245.js +95 -245
  58. package/dist/index247.js +19 -44
  59. package/dist/index248.js +27 -5
  60. package/dist/index249.js +243 -53
  61. package/dist/index25.js +7 -7
  62. package/dist/index250.js +52 -2
  63. package/dist/index251.js +42 -16
  64. package/dist/index252.js +4 -105
  65. package/dist/index253.js +62 -0
  66. package/dist/index254.js +2 -100
  67. package/dist/index255.js +20 -0
  68. package/dist/index261.js +8 -27
  69. package/dist/index262.js +23 -9
  70. package/dist/index263.js +90 -23
  71. package/dist/index265.js +8 -0
  72. package/dist/index266.js +16 -6
  73. package/dist/index267.js +9 -16
  74. package/dist/index268.js +430 -3
  75. package/dist/index269.js +2 -9
  76. package/dist/index27.js +1 -1
  77. package/dist/index270.js +89 -3
  78. package/dist/index271.js +9 -0
  79. package/dist/index272.js +11 -7
  80. package/dist/index273.js +222 -174
  81. package/dist/index274.js +28 -7
  82. package/dist/index275.js +4 -11
  83. package/dist/index285.js +168 -423
  84. package/dist/index286.js +3 -2
  85. package/dist/index288.js +9 -0
  86. package/dist/index289.js +22 -3
  87. package/dist/index29.js +3 -3
  88. package/dist/index291.js +1 -1
  89. package/dist/index293.js +200 -224
  90. package/dist/index294.js +436 -2
  91. package/dist/index295.js +127 -2
  92. package/dist/index296.js +3 -2
  93. package/dist/index297.js +17 -2
  94. package/dist/index298.js +3 -2
  95. package/dist/index299.js +3 -2
  96. package/dist/index300.js +2 -22
  97. package/dist/index301.js +4 -0
  98. package/dist/index302.js +2 -89
  99. package/dist/index303.js +2 -200
  100. package/dist/index304.js +2 -436
  101. package/dist/index305.js +2 -127
  102. package/dist/index306.js +22 -3
  103. package/dist/index308.js +3 -3
  104. package/dist/index309.js +67 -5
  105. package/dist/index31.js +2 -2
  106. package/dist/index310.js +2 -67
  107. package/dist/index311.js +5 -2
  108. package/dist/index312.js +3 -5
  109. package/dist/index313.js +3 -8
  110. package/dist/index314.js +3 -3
  111. package/dist/index315.js +57 -3
  112. package/dist/index316.js +5 -3
  113. package/dist/index317.js +8 -3
  114. package/dist/index318.js +52 -57
  115. package/dist/index319.js +52 -32
  116. package/dist/index320.js +4 -53
  117. package/dist/index321.js +32 -52
  118. package/dist/index322.js +6 -46
  119. package/dist/index323.js +46 -6
  120. package/dist/index326.js +1 -1
  121. package/dist/index33.js +8 -8
  122. package/dist/index35.js +4 -4
  123. package/dist/index37.js +20 -20
  124. package/dist/index39.js +3 -3
  125. package/dist/index41.js +2 -2
  126. package/dist/index43.js +8 -8
  127. package/dist/index45.js +7 -7
  128. package/dist/index47.js +2 -2
  129. package/dist/index49.js +2 -2
  130. package/dist/index53.js +1 -1
  131. package/dist/index55.js +1 -1
  132. package/dist/index57.js +1 -1
  133. package/dist/index61.js +1 -1
  134. package/dist/index75.js +3 -3
  135. package/dist/index77.js +1 -1
  136. package/dist/index79.js +2 -2
  137. package/dist/index81.js +1 -1
  138. package/dist/index84.js +4 -4
  139. package/dist/index86.js +2 -2
  140. package/dist/index88.js +5 -5
  141. package/dist/index90.js +1 -1
  142. package/dist/style.css +1 -1
  143. package/package.json +1 -1
  144. package/dist/index230.js +0 -7
  145. package/dist/index236.js +0 -50
  146. package/dist/index244.js +0 -29
  147. package/dist/index246.js +0 -54
  148. package/dist/index264.js +0 -92
  149. package/dist/index287.js +0 -24
  150. package/dist/index290.js +0 -19
  151. package/dist/index307.js +0 -5
package/dist/index249.js CHANGED
@@ -1,62 +1,252 @@
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 "./index323.js";
3
- import M from "./index13.js";
4
- /* empty css */
5
- const n = 10, l = 3, V = /* @__PURE__ */ g({
6
- __name: "BaseDatePickerYearSelector",
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 "./index324.js";
3
+ import { identity as T } from "./index226.js";
4
+ import { isNotNil as me } from "./index134.js";
5
+ import { last as ge } from "./index227.js";
6
+ import { sort as E } from "./index325.js";
7
+ import b from "./index220.js";
8
+ import he from "./index252.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",
7
11
  props: {
8
12
  cursor: {},
9
- disabled: { type: Boolean }
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 }
10
24
  },
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));
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");
26
77
  };
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"
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
+ ]
37
180
  }, [
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));
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"
189
+ }, [
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"
200
+ }, [
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));
58
248
  }
59
249
  });
60
250
  export {
61
- V as default
251
+ Ce as default
62
252
  };
package/dist/index25.js CHANGED
@@ -1,14 +1,14 @@
1
1
  import { defineComponent as ne, ref as o, computed as u, getCurrentInstance as re, nextTick as N, useAttrs as ue, onMounted as de, onBeforeUnmount as G, watch as ce, openBlock as _, createBlock as ve, withCtx as fe, createElementVNode as a, mergeProps as P, createElementBlock as $, renderSlot as d, createTextVNode as be, toDisplayString as K, createCommentVNode as z } from "vue";
2
- import { throttle as pe } from "./index241.js";
3
- import { useFocusTrap as me } from "./index227.js";
2
+ import { throttle as pe } from "./index207.js";
3
+ import { useFocusTrap as me } from "./index208.js";
4
4
  import { useId as U } from "./index8.js";
5
5
  import { wait as H } from "./index130.js";
6
- import { waitFor as ge } from "./index228.js";
7
- import { useModalsState as C } from "./index242.js";
8
- import { useLogger as ye } from "./index207.js";
6
+ import { waitFor as ge } from "./index209.js";
7
+ import { useModalsState as C } from "./index210.js";
8
+ import { useLogger as ye } from "./index211.js";
9
9
  import { useMobile as he } from "./index9.js";
10
- import we from "./index229.js";
11
- import { useLocale as ke } from "./index217.js";
10
+ import we from "./index212.js";
11
+ import { useLocale as ke } from "./index213.js";
12
12
  const _e = { class: "bb-base-dialog-close" }, Ce = ["aria-label"], Se = /* @__PURE__ */ ne({
13
13
  __name: "BaseDialog",
14
14
  props: {
package/dist/index250.js CHANGED
@@ -1,4 +1,54 @@
1
- import f from "./index308.js";
1
+ import { defineComponent as p, ref as b, watch as _, computed as m, openBlock as d, createElementBlock as c, normalizeClass as u, createElementVNode as t, createVNode as h, withCtx as f, toDisplayString as o } from "vue";
2
+ import k from "./index252.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) => (d(), c("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
+ (d(), c("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));
50
+ }
51
+ });
2
52
  export {
3
- f as default
53
+ C as default
4
54
  };
package/dist/index251.js CHANGED
@@ -1,20 +1,46 @@
1
- import { isNil as c } from "./index258.js";
2
- const a = (t, r) => {
3
- if (!Object.prototype.hasOwnProperty.call(t, r))
4
- throw new Error(
5
- `Object ${JSON.stringify(t, null, 2)} has no property named "${r.toString()}"`
1
+ import { defineComponent as _, computed as a, openBlock as o, createElementBlock as c, createElementVNode as p, Fragment as b, renderList as h, createBlock as k, normalizeClass as f, withCtx as y, createTextVNode as x, toDisplayString as B } from "vue";
2
+ import C from "./index13.js";
3
+ /* empty css */
4
+ const M = { class: "bb-base-date-picker__button-menu bb-base-date-picker__month-selector" }, v = { class: "content" }, E = /* @__PURE__ */ _({
5
+ __name: "BaseDatePickerMonthSelector",
6
+ props: {
7
+ cursor: {},
8
+ disabled: { type: Boolean }
9
+ },
10
+ emits: ["update:month"],
11
+ setup(l, { emit: d }) {
12
+ const s = l, m = d, i = a(() => s.cursor.month()), u = a(
13
+ () => new Array(12).fill(0).map((r, t) => {
14
+ const n = s.cursor.clone().startOf("year").add(t, "month");
15
+ return {
16
+ text: n.format("MMMM"),
17
+ key: n.unix(),
18
+ selected: n.month() === i.value,
19
+ handler: () => m("update:month", t)
20
+ };
21
+ })
6
22
  );
7
- }, l = (t) => typeof t == "string" ? t.toLocaleLowerCase() : JSON.stringify(t).toLowerCase(), y = (t, r, s) => {
8
- const i = s.toLocaleLowerCase();
9
- for (let e = 0; e < r.length; e++) {
10
- const n = r[e];
11
- a(t, n);
12
- const o = t[n];
13
- if (c(o)) continue;
14
- if (l(o).includes(i)) return !0;
23
+ return (r, t) => (o(), c("div", M, [
24
+ p("div", v, [
25
+ (o(!0), c(b, null, h(u.value, (e) => (o(), k(C, {
26
+ key: e.key,
27
+ class: f({
28
+ content__btn: !0,
29
+ "content__btn--selected": e.selected
30
+ }),
31
+ disabled: r.disabled,
32
+ type: "button",
33
+ onClick: e.handler
34
+ }, {
35
+ default: y(() => [
36
+ x(B(e.text), 1)
37
+ ]),
38
+ _: 2
39
+ }, 1032, ["class", "disabled", "onClick"]))), 128))
40
+ ])
41
+ ]));
15
42
  }
16
- return !1;
17
- };
43
+ });
18
44
  export {
19
- y as matchAnyKey
45
+ E as default
20
46
  };
package/dist/index252.js CHANGED
@@ -1,108 +1,7 @@
1
- import { defineComponent as y, ref as F, computed as H, watch as N, openBlock as p, createElementBlock as L, Fragment as S, renderList as V, createBlock as A, normalizeClass as O, withModifiers as P, withCtx as $, createTextVNode as z, toDisplayString as D } from "vue";
2
- import { hash as d } from "./index208.js";
3
- import { isNil as l } from "./index258.js";
4
- import E from "./index125.js";
1
+ import o from "./index306.js";
5
2
  /* 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"
77
- }
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: O({
92
- "bb-chipsbox-item": !0,
93
- "bb-chipsbox-item--focused": B === n.value
94
- }),
95
- clearable: !0,
96
- text: o.text,
97
- "onClick:clear": P((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
- });
3
+ import t from "./index288.js";
4
+ const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-8c6b13bd"]]);
106
5
  export {
107
- K as default
6
+ m as default
108
7
  };
@@ -0,0 +1,62 @@
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 "./index322.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
+ });
60
+ export {
61
+ V as default
62
+ };