bitboss-ui 2.0.92 → 2.0.94

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 (254) hide show
  1. package/dist/components/BaseDatePickerInput/BaseDatePickerInput.vue.d.ts +1 -1
  2. package/dist/components/BaseDialog/BaseDialog.vue.d.ts +2 -2
  3. package/dist/components/BbDropdown/BbDropdown.vue.d.ts +1 -1
  4. package/dist/components/BbOffCanvas/BbOffCanvas.vue.d.ts +2 -2
  5. package/dist/components/BbRows/BbRows.vue.d.ts +105 -0
  6. package/dist/components/BbTable/BbTable.vue.d.ts +2 -2
  7. package/dist/components/BbTable/types.d.ts +10 -8
  8. package/dist/index.d.ts +1 -0
  9. package/dist/index.js +35 -33
  10. package/dist/index100.js +97 -172
  11. package/dist/index101.js +179 -0
  12. package/dist/{index108.js → index109.js} +5 -5
  13. package/dist/index11.js +1 -1
  14. package/dist/{index110.js → index111.js} +35 -35
  15. package/dist/{index118.js → index119.js} +2 -2
  16. package/dist/index12.js +6 -6
  17. package/dist/{index120.js → index121.js} +6 -6
  18. package/dist/{index122.js → index123.js} +1 -1
  19. package/dist/index125.js +35 -39
  20. package/dist/index126.js +39 -46
  21. package/dist/index127.js +46 -42
  22. package/dist/index128.js +43 -31
  23. package/dist/index129.js +35 -2
  24. package/dist/index13.js +1 -1
  25. package/dist/index130.js +2 -21
  26. package/dist/index131.js +21 -2
  27. package/dist/index132.js +2 -340
  28. package/dist/index133.js +337 -22
  29. package/dist/index134.js +25 -2
  30. package/dist/index135.js +2 -5
  31. package/dist/index136.js +5 -9
  32. package/dist/index137.js +8 -5
  33. package/dist/index138.js +6 -3
  34. package/dist/index139.js +1 -1
  35. package/dist/index140.js +1 -1
  36. package/dist/index141.js +1 -1
  37. package/dist/index142.js +1 -1
  38. package/dist/index143.js +1 -1
  39. package/dist/index144.js +1 -1
  40. package/dist/index145.js +1 -1
  41. package/dist/index146.js +1 -1
  42. package/dist/index147.js +1 -1
  43. package/dist/index148.js +1 -1
  44. package/dist/index149.js +1 -1
  45. package/dist/index15.js +4 -4
  46. package/dist/index150.js +1 -1
  47. package/dist/index151.js +1 -1
  48. package/dist/index152.js +1 -1
  49. package/dist/index153.js +1 -1
  50. package/dist/index154.js +1 -1
  51. package/dist/index155.js +1 -1
  52. package/dist/index156.js +1 -1
  53. package/dist/index157.js +1 -1
  54. package/dist/index158.js +1 -1
  55. package/dist/index159.js +1 -1
  56. package/dist/index160.js +1 -1
  57. package/dist/index161.js +1 -1
  58. package/dist/index162.js +1 -1
  59. package/dist/index163.js +1 -1
  60. package/dist/index164.js +1 -1
  61. package/dist/index165.js +2 -2
  62. package/dist/{index195.js → index168.js} +1 -1
  63. package/dist/index17.js +3 -3
  64. package/dist/index170.js +1 -1
  65. package/dist/index171.js +1 -1
  66. package/dist/index172.js +1 -1
  67. package/dist/index173.js +1 -1
  68. package/dist/index174.js +1 -1
  69. package/dist/index175.js +1 -1
  70. package/dist/index176.js +2 -2
  71. package/dist/index177.js +5 -0
  72. package/dist/index179.js +2 -3
  73. package/dist/index180.js +1 -1
  74. package/dist/index181.js +1 -1
  75. package/dist/index182.js +1 -1
  76. package/dist/index183.js +1 -1
  77. package/dist/index184.js +1 -1
  78. package/dist/index185.js +1 -1
  79. package/dist/index186.js +1 -1
  80. package/dist/index187.js +1 -1
  81. package/dist/index188.js +2 -2
  82. package/dist/index189.js +2 -3
  83. package/dist/index19.js +2 -2
  84. package/dist/index190.js +1 -1
  85. package/dist/index191.js +5 -0
  86. package/dist/index194.js +1 -1
  87. package/dist/index196.js +1 -1
  88. package/dist/index197.js +1 -1
  89. package/dist/index198.js +1 -1
  90. package/dist/index199.js +1 -1
  91. package/dist/index200.js +1 -1
  92. package/dist/index201.js +1 -1
  93. package/dist/index202.js +1 -1
  94. package/dist/index203.js +1 -1
  95. package/dist/index204.js +3 -81
  96. package/dist/index205.js +3 -2
  97. package/dist/index206.js +80 -52
  98. package/dist/index207.js +4 -0
  99. package/dist/index208.js +126 -13
  100. package/dist/index209.js +5 -20
  101. package/dist/index21.js +14 -14
  102. package/dist/index210.js +125 -4
  103. package/dist/index211.js +17 -124
  104. package/dist/index212.js +16 -5
  105. package/dist/index213.js +13 -122
  106. package/dist/index214.js +2 -19
  107. package/dist/index215.js +2 -16
  108. package/dist/index216.js +40 -15
  109. package/dist/index217.js +20 -2
  110. package/dist/index218.js +6 -2
  111. package/dist/index219.js +53 -41
  112. package/dist/index221.js +12 -4
  113. package/dist/index222.js +5 -12
  114. package/dist/index223.js +12 -369
  115. package/dist/index224.js +367 -17
  116. package/dist/index225.js +3 -27
  117. package/dist/index226.js +4 -3
  118. package/dist/index227.js +19 -8
  119. package/dist/index228.js +25 -247
  120. package/dist/index229.js +3 -52
  121. package/dist/index23.js +18 -18
  122. package/dist/index230.js +6 -42
  123. package/dist/index231.js +249 -5
  124. package/dist/index232.js +43 -51
  125. package/dist/index233.js +43 -163
  126. package/dist/index234.js +5 -84
  127. package/dist/index235.js +62 -0
  128. package/dist/index236.js +164 -3
  129. package/dist/index237.js +84 -7
  130. package/dist/index239.js +2 -4
  131. package/dist/index240.js +4 -2
  132. package/dist/index241.js +2 -3
  133. package/dist/index242.js +3 -2
  134. package/dist/index243.js +7 -2
  135. package/dist/index244.js +2 -18
  136. package/dist/index245.js +17 -105
  137. package/dist/index246.js +108 -0
  138. package/dist/{index247.js → index248.js} +2 -2
  139. package/dist/index25.js +109 -106
  140. package/dist/index250.js +2 -3
  141. package/dist/index251.js +10 -6
  142. package/dist/index252.js +3 -16
  143. package/dist/index253.js +224 -9
  144. package/dist/index254.js +281 -23
  145. package/dist/index255.js +6 -89
  146. package/dist/index256.js +4 -0
  147. package/dist/index257.js +2 -3
  148. package/dist/index259.js +2 -7
  149. package/dist/index260.js +2 -176
  150. package/dist/index261.js +125 -280
  151. package/dist/index262.js +430 -5
  152. package/dist/index263.js +176 -2
  153. package/dist/index264.js +3 -2
  154. package/dist/index266.js +7 -2
  155. package/dist/index267.js +22 -2
  156. package/dist/index269.js +1 -1
  157. package/dist/index27.js +4 -4
  158. package/dist/index270.js +5 -1
  159. package/dist/index271.js +16 -2
  160. package/dist/index272.js +9 -2
  161. package/dist/index273.js +23 -28
  162. package/dist/index274.js +83 -16
  163. package/dist/index276.js +9 -2
  164. package/dist/index277.js +2 -126
  165. package/dist/index278.js +2 -431
  166. package/dist/index279.js +1 -21
  167. package/dist/index280.js +4 -0
  168. package/dist/index281.js +1 -1
  169. package/dist/index282.js +2 -9
  170. package/dist/index283.js +28 -3
  171. package/dist/index284.js +22 -12
  172. package/dist/index286.js +436 -9
  173. package/dist/index287.js +126 -16
  174. package/dist/index288.js +200 -4
  175. package/dist/index289.js +3 -200
  176. package/dist/index29.js +3 -3
  177. package/dist/index290.js +11 -435
  178. package/dist/index291.js +7 -125
  179. package/dist/index292.js +9 -4
  180. package/dist/index293.js +17 -224
  181. package/dist/index294.js +3 -88
  182. package/dist/index295.js +8 -3
  183. package/dist/index296.js +4 -3
  184. package/dist/index297.js +88 -210
  185. package/dist/index298.js +3 -2
  186. package/dist/index299.js +3 -3
  187. package/dist/index300.js +211 -3
  188. package/dist/index301.js +64 -56
  189. package/dist/index302.js +2 -3
  190. package/dist/index303.js +5 -7
  191. package/dist/index304.js +4 -18
  192. package/dist/index305.js +7 -6
  193. package/dist/index306.js +3 -66
  194. package/dist/index307.js +3 -5
  195. package/dist/index308.js +57 -32
  196. package/dist/index309.js +3 -4
  197. package/dist/index31.js +2 -2
  198. package/dist/index310.js +3 -8
  199. package/dist/index311.js +6 -3
  200. package/dist/index312.js +18 -10
  201. package/dist/index313.js +32 -46
  202. package/dist/index314.js +7 -2
  203. package/dist/index315.js +13 -0
  204. package/dist/index316.js +47 -480
  205. package/dist/index317.js +2 -424
  206. package/dist/index319.js +480 -2
  207. package/dist/index320.js +426 -0
  208. package/dist/index33.js +2 -2
  209. package/dist/index35.js +4 -4
  210. package/dist/index37.js +18 -18
  211. package/dist/index39.js +7 -7
  212. package/dist/index41.js +2 -2
  213. package/dist/index43.js +2 -2
  214. package/dist/index45.js +8 -8
  215. package/dist/index47.js +3 -3
  216. package/dist/index49.js +2 -2
  217. package/dist/index51.js +1 -1
  218. package/dist/index53.js +2 -2
  219. package/dist/index55.js +2 -2
  220. package/dist/index57.js +2 -2
  221. package/dist/index6.js +1 -1
  222. package/dist/index61.js +4 -4
  223. package/dist/index69.js +1 -1
  224. package/dist/index7.js +2 -2
  225. package/dist/index73.js +3 -3
  226. package/dist/index75.js +6 -6
  227. package/dist/index77.js +2 -2
  228. package/dist/index79.js +3 -3
  229. package/dist/index81.js +1 -1
  230. package/dist/index84.js +75 -72
  231. package/dist/index86.js +1 -1
  232. package/dist/index88.js +5 -5
  233. package/dist/index9.js +1 -1
  234. package/dist/index90.js +2 -2
  235. package/dist/style.css +1 -1
  236. package/dist/utilities/functions/indexBy.d.ts +1 -1
  237. package/package.json +2 -2
  238. package/dist/index124.js +0 -42
  239. package/dist/index169.js +0 -5
  240. package/dist/index178.js +0 -4
  241. package/dist/index220.js +0 -8
  242. package/dist/index238.js +0 -4
  243. package/dist/index249.js +0 -12
  244. package/dist/index285.js +0 -11
  245. /package/dist/{index102.js → index103.js} +0 -0
  246. /package/dist/{index104.js → index105.js} +0 -0
  247. /package/dist/{index106.js → index107.js} +0 -0
  248. /package/dist/{index112.js → index113.js} +0 -0
  249. /package/dist/{index114.js → index115.js} +0 -0
  250. /package/dist/{index116.js → index117.js} +0 -0
  251. /package/dist/{index167.js → index166.js} +0 -0
  252. /package/dist/{index265.js → index258.js} +0 -0
  253. /package/dist/{index318.js → index321.js} +0 -0
  254. /package/dist/{index268.js → index322.js} +0 -0
package/dist/index231.js CHANGED
@@ -1,7 +1,251 @@
1
- import o from "./index274.js";
2
- /* empty css */
3
- import t from "./index259.js";
4
- const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-8c6b13bd"]]);
1
+ import { defineComponent as de, ref as A, computed as _, watch as le, openBlock as c, createElementBlock as u, normalizeClass as k, withKeys as f, withModifiers as p, createVNode as ce, withCtx as ue, createElementVNode as M, Fragment as O, renderList as S, toDisplayString as C, renderSlot as L, nextTick as fe } from "vue";
2
+ import { chunk as pe } from "./index311.js";
3
+ import { identity as be } from "./index214.js";
4
+ import { isNotNil as me } from "./index135.js";
5
+ import { last as ge } from "./index215.js";
6
+ import { sort as T } from "./index312.js";
7
+ import b from "./index209.js";
8
+ import he from "./index234.js";
9
+ const ye = ["onKeydown"], _e = { class: "bb-base-date-picker__header-container" }, ke = ["abbr"], Oe = ["id", "disabled", "tabindex"], Ce = /* @__PURE__ */ de({
10
+ __name: "BaseDatePickerInputDaySelector",
11
+ props: {
12
+ cursor: {},
13
+ current: { type: Boolean },
14
+ disabled: { type: Boolean },
15
+ firstDayOfWeek: {},
16
+ modelValue: {},
17
+ max: {},
18
+ min: {},
19
+ selectable: { type: Function },
20
+ range: { type: Boolean },
21
+ multiple: { type: Boolean },
22
+ readonly: { type: Boolean }
23
+ },
24
+ emits: ["update:modelValue", "update:cursor"],
25
+ setup(E, { emit: N }) {
26
+ const a = E, s = N, g = A(null), x = b().startOf("day"), m = _(() => {
27
+ let e = 1 / 0, r = -1 / 0, o = {};
28
+ return a.modelValue && [].concat(a.modelValue).filter(be).map((i) => b(i).startOf("day")).map((i) => i.valueOf()).forEach((i, h) => {
29
+ i < e && (e = i), i > r && (r = i), o[i] = h;
30
+ }), {
31
+ min: e,
32
+ max: r,
33
+ index: (t) => o[t.valueOf()],
34
+ selected: (t) => me(o[t.valueOf()]),
35
+ isFirstOfRange: (t) => t.valueOf() === e,
36
+ isLastOfRange: (t) => t.valueOf() === r,
37
+ isBetween: (t) => t.valueOf() > e && t.valueOf() < r
38
+ };
39
+ }), R = _(() => new Array(7).fill("").map((e, r) => b().day((r + a.firstDayOfWeek) % 7)).map((e) => ({
40
+ accessibleLabel: e.format("dddd"),
41
+ label: e.format("dd").slice(0, 1).toUpperCase(),
42
+ id: e.toISOString(),
43
+ original: e
44
+ }))), v = _(() => {
45
+ const e = a.cursor.year().toString(), r = a.cursor.month().toString();
46
+ let t = a.cursor.clone().startOf("month").clone().startOf("week"), h = a.cursor.clone().endOf("month").clone().endOf("week"), Y = b(a.cursor).startOf("day"), D = [];
47
+ for (let n = t; n.isBefore(h); n = n.add(1, "day"))
48
+ D.push(n.clone());
49
+ const Z = D.map((n) => {
50
+ const y = n.toISOString(), ee = n.week().toString();
51
+ let te = m.value.selected(n);
52
+ const B = a.range && m.value.isFirstOfRange(n), I = a.range && m.value.isLastOfRange(n), re = a.range && !B && !I && m.value.isBetween(n), ae = n.month().toString() === r && n.year().toString() === e, oe = n.isSame(x), ne = n.isSame(Y), se = d(n), ie = n.get("D").toString();
53
+ return {
54
+ buttonId: "date_" + y,
55
+ current: ne,
56
+ disabled: se,
57
+ first: B,
58
+ highlighted: ae,
59
+ id: y,
60
+ label: ie,
61
+ last: I,
62
+ middle: re,
63
+ original: n,
64
+ selected: te,
65
+ slotName: y,
66
+ today: oe,
67
+ week: ee
68
+ };
69
+ });
70
+ return pe(Z, 7);
71
+ }), d = (e) => {
72
+ let r = !0;
73
+ 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;
74
+ }, w = A("left"), K = (e, r) => {
75
+ e && r && (w.value = e.isBefore(r) ? "left" : "right");
76
+ };
77
+ le(
78
+ () => a.cursor,
79
+ (e, r) => {
80
+ K(e, r);
81
+ }
82
+ );
83
+ const V = (e) => s("update:cursor", e), l = async () => {
84
+ if (!g.value) return;
85
+ await fe();
86
+ const e = ge([
87
+ ...g.value.querySelectorAll(
88
+ ".bb-base-date-picker__date--current button"
89
+ )
90
+ ]);
91
+ e instanceof HTMLElement && e.focus();
92
+ }, F = (e) => {
93
+ if (!a.readonly && e.target instanceof HTMLButtonElement) {
94
+ const [, r] = e.target.id.split("_"), o = b(r);
95
+ if (a.cursor.month() !== o.month()) {
96
+ V(o);
97
+ return;
98
+ }
99
+ const t = v.value.flat().find((i) => i.id === r);
100
+ if (t.disabled) return;
101
+ V(o), H(t);
102
+ }
103
+ }, H = (e) => {
104
+ a.range ? P(e) : a.multiple ? U(e) : W(e);
105
+ }, P = (e) => {
106
+ if (!Array.isArray(a.modelValue)) return;
107
+ const r = e.original.toISOString();
108
+ if (a.modelValue.length !== 1) s("update:modelValue", [r]);
109
+ else {
110
+ const o = T([a.modelValue[0], e.original.toISOString()]);
111
+ s("update:modelValue", o);
112
+ }
113
+ }, U = (e) => {
114
+ if (Array.isArray(a.modelValue))
115
+ if (e.selected) {
116
+ const r = e.original.toISOString(), o = a.modelValue.filter((t) => t !== r);
117
+ s("update:modelValue", o);
118
+ } else {
119
+ const r = T([...a.modelValue, e.original.toISOString()]);
120
+ s("update:modelValue", r);
121
+ }
122
+ }, W = (e) => {
123
+ e.selected ? s("update:modelValue", null) : s("update:modelValue", e.original.toISOString());
124
+ }, $ = () => {
125
+ const e = a.cursor.clone().add(1, "day");
126
+ d(e) || (s("update:cursor", e), l());
127
+ }, j = () => {
128
+ const e = a.cursor.clone().subtract(1, "day");
129
+ d(e) || (s("update:cursor", e), l());
130
+ }, q = () => {
131
+ const e = a.cursor.clone().subtract(1, "week");
132
+ d(e) || (s("update:cursor", e), l());
133
+ }, z = () => {
134
+ const e = a.cursor.clone().add(1, "week");
135
+ d(e) || (s("update:cursor", e), l());
136
+ }, G = () => {
137
+ const e = a.cursor.clone().endOf("week");
138
+ d(e) || (s("update:cursor", e), l());
139
+ }, J = () => {
140
+ const e = a.cursor.clone().startOf("week");
141
+ d(e) || (s("update:cursor", e), l());
142
+ }, Q = (e) => {
143
+ if (e.shiftKey) {
144
+ const r = a.cursor.clone().subtract(1, "year");
145
+ if (d(r)) return;
146
+ s("update:cursor", r);
147
+ } else {
148
+ const r = a.cursor.clone().subtract(1, "month");
149
+ if (d(r)) return;
150
+ s("update:cursor", r);
151
+ }
152
+ l();
153
+ }, X = (e) => {
154
+ if (e.shiftKey) {
155
+ const r = a.cursor.clone().add(1, "year");
156
+ if (d(r)) return;
157
+ s("update:cursor", r);
158
+ } else {
159
+ const r = a.cursor.clone().add(1, "month");
160
+ if (d(r)) return;
161
+ s("update:cursor", r);
162
+ }
163
+ l();
164
+ };
165
+ return (e, r) => (c(), u("div", {
166
+ ref_key: "calendar",
167
+ ref: g,
168
+ class: k(["bb-base-date-picker__days-selector", { "bb-base-date-picker__days-selector--hidden": !e.current }]),
169
+ onKeydown: [
170
+ f(p(z, ["prevent"]), ["down"]),
171
+ f(p(G, ["prevent"]), ["end"]),
172
+ f(p(J, ["prevent"]), ["home"]),
173
+ f(p(j, ["prevent"]), ["left"]),
174
+ f(p(X, ["prevent"]), ["page-down"]),
175
+ f(p(Q, ["prevent"]), ["page-up"]),
176
+ f(p($, ["prevent"]), ["right"]),
177
+ f(p(q, ["prevent"]), ["up"])
178
+ ]
179
+ }, [
180
+ ce(he, {
181
+ direction: w.value,
182
+ gap: 30
183
+ }, {
184
+ default: ue(() => [
185
+ (c(), u("div", {
186
+ key: e.cursor.month().toString(),
187
+ class: "bb-base-date-picker__month"
188
+ }, [
189
+ M("div", _e, [
190
+ (c(!0), u(O, null, S(R.value, (o) => (c(), u("div", {
191
+ key: o.id,
192
+ abbr: o.accessibleLabel,
193
+ class: "bb-base-date-picker__header-cell"
194
+ }, C(o.label), 9, ke))), 128))
195
+ ]),
196
+ (c(!0), u(O, null, S(v.value, (o) => (c(), u("div", {
197
+ key: o[0].id,
198
+ class: "bb-base-date-picker__week"
199
+ }, [
200
+ (c(!0), u(O, null, S(o, (t) => (c(), u("div", {
201
+ key: t.id,
202
+ class: k({
203
+ "bb-base-date-picker__date--current": t.current,
204
+ "bb-base-date-picker__date--disabled": e.disabled || t.disabled,
205
+ "bb-base-date-picker__date--first": t.first,
206
+ "bb-base-date-picker__date--highlighted": t.highlighted,
207
+ "bb-base-date-picker__date--last": t.last,
208
+ "bb-base-date-picker__date--middle": t.middle,
209
+ "bb-base-date-picker__date--selected": t.selected,
210
+ "bb-base-date-picker__date--today": t.today,
211
+ "bb-base-date-picker__date": !0
212
+ })
213
+ }, [
214
+ M("button", {
215
+ id: t.buttonId,
216
+ class: k("bb-base-date-picker__date-button"),
217
+ disabled: e.disabled || t.disabled,
218
+ tabindex: Number(t.current) - 1,
219
+ type: "button",
220
+ onClick: F
221
+ }, C(t.label), 9, Oe),
222
+ L(e.$slots, "day", {
223
+ first: t.first,
224
+ highlighted: t.highlighted,
225
+ item: t.original,
226
+ label: t.label,
227
+ last: t.last,
228
+ middle: t.middle,
229
+ selected: t.selected
230
+ }),
231
+ L(e.$slots, t.slotName, {
232
+ first: t.first,
233
+ highlighted: t.highlighted,
234
+ item: t.original,
235
+ label: t.label,
236
+ last: t.last,
237
+ middle: t.middle,
238
+ selected: t.selected
239
+ })
240
+ ], 2))), 128))
241
+ ]))), 128))
242
+ ]))
243
+ ]),
244
+ _: 3
245
+ }, 8, ["direction"])
246
+ ], 42, ye));
247
+ }
248
+ });
5
249
  export {
6
- m as default
250
+ Ce as default
7
251
  };
package/dist/index232.js CHANGED
@@ -1,62 +1,54 @@
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 "./index305.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 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 "./index234.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",
7
8
  props: {
8
9
  cursor: {},
9
- disabled: { type: Boolean }
10
+ disabled: { type: Boolean },
11
+ hidden: { type: Boolean }
10
12
  },
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));
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");
26
17
  };
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"
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 }])
37
27
  }, [
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
28
+ t("div", y, [
29
+ h(k, {
30
+ direction: r.value,
31
+ duration: 500,
32
+ gap: 30
50
33
  }, {
51
- default: T(() => [
52
- E(w(a.text), 1)
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))
53
40
  ]),
54
- _: 2
55
- }, 1032, ["class", "disabled", "onClick"]))), 128))
56
- ], 32)
57
- ], 512));
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));
58
50
  }
59
51
  });
60
52
  export {
61
- V as default
53
+ C as default
62
54
  };
package/dist/index233.js CHANGED
@@ -1,166 +1,46 @@
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 "./index218.js";
3
- import { useArray as E } from "./index284.js";
4
- import { uniqBy as ne } from "./index285.js";
5
- import { useItemValue as ue } from "./index286.js";
6
- import { useItemText as oe } from "./index287.js";
7
- import { hash as f } from "./index226.js";
8
- import { isNotNil as F } from "./index134.js";
9
- import { waitFor as ie } from "./index220.js";
10
- import { isNil as se } from "./index129.js";
11
- import { pipe as H } from "./index288.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
41
- };
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))
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
+ })
47
22
  );
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
- });
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
- D.value || (p && clearTimeout(p), p = setTimeout(async () => {
133
- v();
134
- }, t.modelValueDebounceTime));
135
- }
136
- );
137
- let S;
138
- const N = async (e, l) => {
139
- f(l) !== f(e) && y.value && (S && clearTimeout(S), S = setTimeout(async () => {
140
- await v();
141
- }, t.depsDebounceTime));
142
- };
143
- return b(() => t.items.value, N), b(() => t.dependencies.value, N), {
144
- addCurrentQueryToManualItems: X,
145
- alignQueryToState: i,
146
- getOptions: I,
147
- hasPrefilled: y,
148
- innerLoading: d,
149
- isPrefilling: w,
150
- manualItems: O,
151
- options: x,
152
- prefillItems: v,
153
- query: r,
154
- searchByQuery: Z,
155
- selectedOptions: c,
156
- selectOption: R,
157
- setStash: h,
158
- unselectOption: W,
159
- updateModelValue: o,
160
- valueIsSelected: M,
161
- internalItems: m
162
- };
163
- };
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
+ ]));
42
+ }
43
+ });
164
44
  export {
165
- xe as useOptions
45
+ E as default
166
46
  };
package/dist/index234.js CHANGED
@@ -1,86 +1,7 @@
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",
10
- props: {
11
- direction: {},
12
- hasErrors: { type: Boolean },
13
- hideLabel: { type: Boolean },
14
- loadingText: {},
15
- loading: { type: Boolean },
16
- noDataText: {},
17
- options: {}
18
- },
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
- }])
27
- }, [
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 }])
51
- }, [
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
- })
61
- }, [
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));
82
- }
83
- });
1
+ import o from "./index284.js";
2
+ /* empty css */
3
+ import t from "./index266.js";
4
+ const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-8c6b13bd"]]);
84
5
  export {
85
- f as default
6
+ m as default
86
7
  };