bitboss-ui 2.0.31 → 2.0.33

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 (141) hide show
  1. package/dist/index104.js +65 -69
  2. package/dist/index106.js +5 -5
  3. package/dist/index114.js +1 -1
  4. package/dist/index116.js +5 -5
  5. package/dist/index118.js +1 -1
  6. package/dist/index122.js +1 -1
  7. package/dist/index123.js +1 -1
  8. package/dist/index124.js +1 -1
  9. package/dist/index126.js +1 -1
  10. package/dist/index128.js +81 -77
  11. package/dist/index129.js +1 -1
  12. package/dist/index13.js +1 -1
  13. package/dist/index15.js +3 -3
  14. package/dist/index17.js +2 -2
  15. package/dist/index19.js +14 -14
  16. package/dist/index198.js +2 -81
  17. package/dist/index199.js +116 -2
  18. package/dist/index200.js +8 -2
  19. package/dist/index201.js +5 -4
  20. package/dist/index202.js +16 -2
  21. package/dist/index203.js +16 -8
  22. package/dist/index204.js +19 -3
  23. package/dist/index205.js +19 -3
  24. package/dist/index206.js +26 -34
  25. package/dist/index207.js +3 -6
  26. package/dist/index208.js +2 -7
  27. package/dist/index209.js +245 -277
  28. package/dist/index21.js +15 -15
  29. package/dist/index210.js +51 -15
  30. package/dist/index211.js +44 -16
  31. package/dist/index212.js +5 -19
  32. package/dist/index213.js +49 -19
  33. package/dist/index214.js +124 -25
  34. package/dist/index215.js +123 -3
  35. package/dist/index216.js +2 -2
  36. package/dist/index217.js +34 -248
  37. package/dist/index218.js +171 -49
  38. package/dist/index219.js +5 -43
  39. package/dist/index220.js +42 -4
  40. package/dist/index222.js +13 -126
  41. package/dist/index223.js +5 -123
  42. package/dist/index224.js +369 -2
  43. package/dist/index225.js +3 -174
  44. package/dist/index226.js +3 -43
  45. package/dist/index227.js +9 -0
  46. package/dist/index228.js +158 -13
  47. package/dist/index229.js +84 -5
  48. package/dist/index23.js +5 -5
  49. package/dist/index231.js +2 -158
  50. package/dist/index232.js +4 -84
  51. package/dist/index233.js +4 -0
  52. package/dist/index234.js +1 -1
  53. package/dist/index236.js +1 -1
  54. package/dist/index238.js +1 -1
  55. package/dist/index243.js +281 -3
  56. package/dist/index244.js +6 -9
  57. package/dist/index245.js +2 -23
  58. package/dist/index246.js +2 -6
  59. package/dist/index247.js +2 -16
  60. package/dist/index248.js +2 -9
  61. package/dist/index249.js +2 -4
  62. package/dist/index25.js +1 -1
  63. package/dist/index250.js +2 -224
  64. package/dist/index251.js +2 -431
  65. package/dist/index252.js +2 -89
  66. package/dist/index253.js +2 -2
  67. package/dist/index254.js +2 -9
  68. package/dist/index255.js +27 -5
  69. package/dist/index256.js +22 -2
  70. package/dist/index258.js +7 -2
  71. package/dist/index259.js +2 -2
  72. package/dist/index260.js +126 -2
  73. package/dist/index261.js +431 -2
  74. package/dist/index262.js +3 -2
  75. package/dist/index264.js +21 -1
  76. package/dist/index266.js +222 -26
  77. package/dist/index267.js +199 -21
  78. package/dist/index268.js +438 -0
  79. package/dist/index269.js +126 -6
  80. package/dist/index27.js +3 -3
  81. package/dist/index270.js +3 -200
  82. package/dist/index271.js +8 -65
  83. package/dist/index272.js +23 -5
  84. package/dist/index273.js +9 -2
  85. package/dist/index274.js +6 -126
  86. package/dist/index275.js +16 -3
  87. package/dist/index276.js +91 -0
  88. package/dist/index277.js +3 -22
  89. package/dist/index278.js +14 -0
  90. package/dist/index279.js +9 -3
  91. package/dist/index280.js +9 -12
  92. package/dist/index281.js +16 -8
  93. package/dist/index282.js +4 -17
  94. package/dist/index283.js +3 -436
  95. package/dist/index284.js +3 -127
  96. package/dist/index285.js +211 -3
  97. package/dist/index286.js +15 -3
  98. package/dist/index287.js +2 -211
  99. package/dist/index288.js +7 -79
  100. package/dist/index29.js +2 -2
  101. package/dist/index290.js +19 -4
  102. package/dist/index291.js +66 -4
  103. package/dist/index292.js +5 -59
  104. package/dist/index293.js +34 -14
  105. package/dist/index294.js +79 -2
  106. package/dist/index296.js +4 -19
  107. package/dist/index297.js +4 -11
  108. package/dist/index298.js +58 -6
  109. package/dist/index299.js +2 -2
  110. package/dist/index300.js +10 -34
  111. package/dist/index301.js +2 -480
  112. package/dist/index302.js +482 -0
  113. package/dist/index304.js +416 -42
  114. package/dist/index305.js +47 -2
  115. package/dist/index31.js +2 -2
  116. package/dist/index33.js +3 -3
  117. package/dist/index35.js +9 -9
  118. package/dist/index37.js +3 -3
  119. package/dist/index39.js +2 -2
  120. package/dist/index41.js +2 -2
  121. package/dist/index43.js +4 -4
  122. package/dist/index45.js +2 -2
  123. package/dist/index47.js +2 -2
  124. package/dist/index53.js +1 -1
  125. package/dist/index55.js +1 -1
  126. package/dist/index71.js +3 -3
  127. package/dist/index75.js +2 -2
  128. package/dist/index77.js +1 -1
  129. package/dist/index80.js +2 -2
  130. package/dist/index82.js +1 -1
  131. package/dist/index84.js +3 -3
  132. package/dist/index86.js +1 -1
  133. package/dist/style.css +1 -1
  134. package/package.json +1 -1
  135. package/dist/index221.js +0 -51
  136. package/dist/index230.js +0 -371
  137. package/dist/index263.js +0 -4
  138. package/dist/index265.js +0 -4
  139. package/dist/index303.js +0 -423
  140. /package/dist/{index295.js → index289.js} +0 -0
  141. /package/dist/{index257.js → index306.js} +0 -0
package/dist/index217.js CHANGED
@@ -1,251 +1,37 @@
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 "./index295.js";
3
- import { identity as be } from "./index224.js";
4
- import { isNotNil as me } from "./index130.js";
5
- import { last as ge } from "./index216.js";
6
- import { sort as T } from "./index296.js";
7
- import b from "./index209.js";
8
- import he from "./index220.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;
1
+ import { unrefElement as m } from "./index128.js";
2
+ import { ref as u, watch as l } from "vue";
3
+ import { createFocusTrap as d } from "./index261.js";
4
+ import { tryOnScopeDispose as D } from "./index199.js";
5
+ function O(i, a = {}) {
6
+ let e;
7
+ const { immediate: f, ...n } = a, c = u(!1), s = u(!1), o = (t) => e && e.activate(t), r = (t) => e && e.deactivate(t), v = () => {
8
+ e && (e.pause(), s.value = !0);
9
+ }, p = () => {
10
+ e && (e.unpause(), s.value = !1);
11
+ };
12
+ return l(
13
+ () => m(i),
14
+ (t) => {
15
+ t && (e = d(t, {
16
+ ...n,
17
+ onActivate() {
18
+ c.value = !0, a.onActivate && a.onActivate();
19
+ },
20
+ onDeactivate() {
21
+ c.value = !1, a.onDeactivate && a.onDeactivate();
98
22
  }
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
- });
23
+ }), f && o());
24
+ },
25
+ { flush: "post" }
26
+ ), D(() => r()), {
27
+ hasFocus: c,
28
+ isPaused: s,
29
+ activate: o,
30
+ deactivate: r,
31
+ pause: v,
32
+ unpause: p
33
+ };
34
+ }
249
35
  export {
250
- Ce as default
36
+ O as useFocusTrap
251
37
  };
package/dist/index218.js CHANGED
@@ -1,54 +1,176 @@
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 "./index220.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");
1
+ /*! maska v2.1.11 | (c) Alexander Shabunevich | Released under the MIT license */
2
+ var V = Object.defineProperty, P = (a, t, e) => t in a ? V(a, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : a[t] = e, g = (a, t, e) => (P(a, typeof t != "symbol" ? t + "" : t, e), e);
3
+ const R = {
4
+ "#": { pattern: /[0-9]/ },
5
+ "@": { pattern: /[a-zA-Z]/ },
6
+ "*": { pattern: /[a-zA-Z0-9]/ }
7
+ };
8
+ class b {
9
+ constructor(t = {}) {
10
+ g(this, "opts", {}), g(this, "memo", /* @__PURE__ */ new Map());
11
+ const e = { ...t };
12
+ if (e.tokens != null) {
13
+ e.tokens = e.tokensReplace ? { ...e.tokens } : { ...R, ...e.tokens };
14
+ for (const s of Object.values(e.tokens))
15
+ typeof s.pattern == "string" && (s.pattern = new RegExp(s.pattern));
16
+ } else
17
+ e.tokens = R;
18
+ Array.isArray(e.mask) && (e.mask.length > 1 ? e.mask = [...e.mask].sort((s, n) => s.length - n.length) : e.mask = e.mask[0] ?? ""), e.mask === "" && (e.mask = null), this.opts = e;
19
+ }
20
+ masked(t) {
21
+ return this.process(t, this.findMask(t));
22
+ }
23
+ unmasked(t) {
24
+ return this.process(t, this.findMask(t), !1);
25
+ }
26
+ isEager() {
27
+ return this.opts.eager === !0;
28
+ }
29
+ isReversed() {
30
+ return this.opts.reversed === !0;
31
+ }
32
+ completed(t) {
33
+ const e = this.findMask(t);
34
+ if (this.opts.mask == null || e == null)
35
+ return !1;
36
+ const s = this.process(t, e).length;
37
+ return typeof this.opts.mask == "string" ? s >= this.opts.mask.length : typeof this.opts.mask == "function" ? s >= e.length : this.opts.mask.filter((n) => s >= n.length).length === this.opts.mask.length;
38
+ }
39
+ findMask(t) {
40
+ const e = this.opts.mask;
41
+ if (e == null)
42
+ return null;
43
+ if (typeof e == "string")
44
+ return e;
45
+ if (typeof e == "function")
46
+ return e(t);
47
+ const s = this.process(t, e.slice(-1).pop() ?? "", !1);
48
+ return e.find((n) => this.process(t, n, !1).length >= s.length) ?? "";
49
+ }
50
+ escapeMask(t) {
51
+ const e = [], s = [];
52
+ return t.split("").forEach((n, i) => {
53
+ n === "!" && t[i - 1] !== "!" ? s.push(i - s.length) : e.push(n);
54
+ }), { mask: e.join(""), escaped: s };
55
+ }
56
+ process(t, e, s = !0) {
57
+ if (e == null)
58
+ return t;
59
+ const n = `value=${t},mask=${e},masked=${s ? 1 : 0}`;
60
+ if (this.memo.has(n))
61
+ return this.memo.get(n);
62
+ const { mask: i, escaped: p } = this.escapeMask(e), o = [], k = this.opts.tokens != null ? this.opts.tokens : {}, l = this.isReversed() ? -1 : 1, m = this.isReversed() ? "unshift" : "push", c = this.isReversed() ? 0 : i.length - 1, T = this.isReversed() ? () => r > -1 && u > -1 : () => r < i.length && u < t.length, S = (d) => !this.isReversed() && d <= c || this.isReversed() && d >= c;
63
+ let E, f = -1, r = this.isReversed() ? i.length - 1 : 0, u = this.isReversed() ? t.length - 1 : 0, y = !1;
64
+ for (; T(); ) {
65
+ const d = i.charAt(r), h = k[d], v = (h == null ? void 0 : h.transform) != null ? h.transform(t.charAt(u)) : t.charAt(u);
66
+ if (!p.includes(r) && h != null ? (v.match(h.pattern) != null ? (o[m](v), h.repeated ? (f === -1 ? f = r : r === c && r !== f && (r = f - l), c === f && (r -= l)) : h.multiple && (y = !0, r -= l), r += l) : h.multiple ? y && (r += l, u -= l, y = !1) : v === E ? E = void 0 : h.optional && (r += l, u -= l), u += l) : (s && !this.isEager() && o[m](d), v === d && !this.isEager() ? u += l : E = d, this.isEager() || (r += l)), this.isEager())
67
+ for (; S(r) && (k[i.charAt(r)] == null || p.includes(r)); )
68
+ s ? o[m](i.charAt(r)) : i.charAt(r) === t.charAt(u) && (u += l), r += l;
69
+ }
70
+ return this.memo.set(n, o.join("")), this.memo.get(n);
71
+ }
72
+ }
73
+ const O = (a) => JSON.parse(a.replaceAll("'", '"')), w = (a, t = {}) => {
74
+ const e = { ...t };
75
+ return a.dataset.maska != null && a.dataset.maska !== "" && (e.mask = W(a.dataset.maska)), a.dataset.maskaEager != null && (e.eager = M(a.dataset.maskaEager)), a.dataset.maskaReversed != null && (e.reversed = M(a.dataset.maskaReversed)), a.dataset.maskaTokensReplace != null && (e.tokensReplace = M(a.dataset.maskaTokensReplace)), a.dataset.maskaTokens != null && (e.tokens = j(a.dataset.maskaTokens)), e;
76
+ }, M = (a) => a !== "" ? !!JSON.parse(a) : !0, W = (a) => a.startsWith("[") && a.endsWith("]") ? O(a) : a, j = (a) => {
77
+ if (a.startsWith("{") && a.endsWith("}"))
78
+ return O(a);
79
+ const t = {};
80
+ return a.split("|").forEach((e) => {
81
+ const s = e.split(":");
82
+ t[s[0]] = {
83
+ pattern: new RegExp(s[1]),
84
+ optional: s[2] === "optional",
85
+ multiple: s[2] === "multiple",
86
+ repeated: s[2] === "repeated"
17
87
  };
18
- _(
19
- () => s.cursor,
20
- (e, a) => {
21
- l(e, a);
88
+ }), t;
89
+ };
90
+ class L {
91
+ constructor(t, e = {}) {
92
+ g(this, "items", /* @__PURE__ */ new Map()), g(this, "beforeinputEvent", (s) => {
93
+ const n = s.target, i = this.items.get(n);
94
+ i.isEager() && "inputType" in s && s.inputType.startsWith("delete") && i.unmasked(n.value).length <= 1 && this.setMaskedValue(n, "");
95
+ }), g(this, "inputEvent", (s) => {
96
+ if (s instanceof CustomEvent && s.type === "input" && s.detail != null && typeof s.detail == "object" && "masked" in s.detail)
97
+ return;
98
+ const n = s.target, i = this.items.get(n), p = n.value, o = n.selectionStart, k = n.selectionEnd;
99
+ let l = p;
100
+ if (i.isEager()) {
101
+ const m = i.masked(p), c = i.unmasked(p);
102
+ c === "" && "data" in s && s.data != null ? l = s.data : c !== i.unmasked(m) && (l = c);
22
103
  }
104
+ if (this.setMaskedValue(n, l), "inputType" in s && (s.inputType.startsWith("delete") || o != null && o < p.length))
105
+ try {
106
+ n.setSelectionRange(o, k);
107
+ } catch {
108
+ }
109
+ }), this.options = e, typeof t == "string" ? this.init(
110
+ Array.from(document.querySelectorAll(t)),
111
+ this.getMaskOpts(e)
112
+ ) : this.init(
113
+ "length" in t ? Array.from(t) : [t],
114
+ this.getMaskOpts(e)
23
115
  );
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
- });
116
+ }
117
+ destroy() {
118
+ for (const t of this.items.keys())
119
+ t.removeEventListener("input", this.inputEvent), t.removeEventListener("beforeinput", this.beforeinputEvent);
120
+ this.items.clear();
121
+ }
122
+ needUpdateOptions(t, e) {
123
+ const s = this.items.get(t), n = new b(w(t, this.getMaskOpts(e)));
124
+ return JSON.stringify(s.opts) !== JSON.stringify(n.opts);
125
+ }
126
+ needUpdateValue(t) {
127
+ const e = t.dataset.maskaValue;
128
+ return e == null && t.value !== "" || e != null && e !== t.value;
129
+ }
130
+ getMaskOpts(t) {
131
+ const { onMaska: e, preProcess: s, postProcess: n, ...i } = t;
132
+ return i;
133
+ }
134
+ init(t, e) {
135
+ for (const s of t) {
136
+ const n = new b(w(s, e));
137
+ this.items.set(s, n), s.value !== "" && this.setMaskedValue(s, s.value), s.addEventListener("input", this.inputEvent), s.addEventListener("beforeinput", this.beforeinputEvent);
138
+ }
139
+ }
140
+ setMaskedValue(t, e) {
141
+ const s = this.items.get(t);
142
+ this.options.preProcess != null && (e = this.options.preProcess(e));
143
+ const n = s.masked(e), i = s.unmasked(s.isEager() ? n : e), p = s.completed(e), o = { masked: n, unmasked: i, completed: p };
144
+ e = n, this.options.postProcess != null && (e = this.options.postProcess(e)), t.value = e, t.dataset.maskaValue = e, this.options.onMaska != null && (Array.isArray(this.options.onMaska) ? this.options.onMaska.forEach((k) => k(o)) : this.options.onMaska(o)), t.dispatchEvent(new CustomEvent("maska", { detail: o })), t.dispatchEvent(new CustomEvent("input", { detail: o }));
145
+ }
146
+ }
147
+ const A = /* @__PURE__ */ new WeakMap(), C = (a) => {
148
+ setTimeout(() => {
149
+ var t;
150
+ ((t = A.get(a)) == null ? void 0 : t.needUpdateValue(a)) === !0 && a.dispatchEvent(new CustomEvent("input"));
151
+ });
152
+ }, J = (a, t) => {
153
+ const e = a instanceof HTMLInputElement ? a : a.querySelector("input"), s = { ...t.arg };
154
+ if (e == null || (e == null ? void 0 : e.type) === "file")
155
+ return;
156
+ C(e);
157
+ const n = A.get(e);
158
+ if (n != null) {
159
+ if (!n.needUpdateOptions(e, s))
160
+ return;
161
+ n.destroy();
162
+ }
163
+ if (t.value != null) {
164
+ const i = t.value, p = (o) => {
165
+ i.masked = o.masked, i.unmasked = o.unmasked, i.completed = o.completed;
166
+ };
167
+ s.onMaska = s.onMaska == null ? p : Array.isArray(s.onMaska) ? [...s.onMaska, p] : [s.onMaska, p];
168
+ }
169
+ A.set(e, new L(e, s));
170
+ };
52
171
  export {
53
- C as default
172
+ b as Mask,
173
+ L as MaskInput,
174
+ R as tokens,
175
+ J as vMaska
54
176
  };
package/dist/index219.js CHANGED
@@ -1,46 +1,8 @@
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
- })
22
- );
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
- }
1
+ const o = (e, t = 50) => new Promise((r) => {
2
+ const n = setInterval(() => {
3
+ e() && (clearInterval(n), r());
4
+ }, t);
43
5
  });
44
6
  export {
45
- E as default
7
+ o as waitFor
46
8
  };
package/dist/index220.js CHANGED
@@ -1,7 +1,45 @@
1
- import o from "./index267.js";
1
+ import { defineComponent as m, openBlock as o, createElementBlock as a, renderSlot as e, createElementVNode as r, createBlock as t, unref as p, createCommentVNode as i, createVNode as s } from "vue";
2
+ /* empty css */
3
+ /* empty css */
4
+ import c from "./index122.js";
2
5
  /* empty css */
3
- import t from "./index269.js";
4
- const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-8c6b13bd"]]);
6
+ import l from "./index124.js";
7
+ /* empty css */
8
+ import d from "./index293.js";
9
+ const u = { class: "bb-common-input-inner-container" }, f = { class: "bb-common-input-inner-container__prefix" }, _ = { class: "bb-common-input-inner-container__suffix" }, V = /* @__PURE__ */ m({
10
+ __name: "CommonInputInnerContainer",
11
+ props: {
12
+ "append:icon": {},
13
+ "prepend:icon": {}
14
+ },
15
+ setup($) {
16
+ return (n, b) => (o(), a("span", u, [
17
+ e(n.$slots, "prepend", {}, () => [
18
+ r("span", f, [
19
+ e(n.$slots, "prefix")
20
+ ])
21
+ ]),
22
+ n.$props["prepend:icon"] ? (o(), t(p(c), {
23
+ key: 0,
24
+ class: "bb-common-input-inner-container__prepend-icon",
25
+ type: n.$props["prepend:icon"]
26
+ }, null, 8, ["type"])) : i("", !0),
27
+ e(n.$slots, "default"),
28
+ n.$props["append:icon"] ? (o(), t(p(c), {
29
+ key: 1,
30
+ class: "bb-common-input-inner-container__append-icon",
31
+ type: n.$props["append:icon"]
32
+ }, null, 8, ["type"])) : i("", !0),
33
+ s(p(l)),
34
+ s(d),
35
+ e(n.$slots, "append", {}, () => [
36
+ r("span", _, [
37
+ e(n.$slots, "suffix")
38
+ ])
39
+ ])
40
+ ]));
41
+ }
42
+ });
5
43
  export {
6
- m as default
44
+ V as default
7
45
  };