bitboss-ui 2.1.86 → 2.1.88

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 (187) hide show
  1. package/dist/components/BaseSelect/BaseSelect.vue.d.ts +8 -0
  2. package/dist/components/BbSelect/BbSelect.vue.d.ts +6 -0
  3. package/dist/components/ListBox.vue.d.ts +1 -0
  4. package/dist/index.css +1 -1
  5. package/dist/index107.js +9 -9
  6. package/dist/index108.js +5 -3
  7. package/dist/index112.js +33 -24
  8. package/dist/index114.js +1 -1
  9. package/dist/index120.js +1 -1
  10. package/dist/index122.js +13 -13
  11. package/dist/index13.js +2 -2
  12. package/dist/index130.js +1 -1
  13. package/dist/index132.js +5 -5
  14. package/dist/index134.js +1 -1
  15. package/dist/index136.js +2 -2
  16. package/dist/index139.js +1 -1
  17. package/dist/index142.js +1 -1
  18. package/dist/index15.js +5 -5
  19. package/dist/index17.js +3 -3
  20. package/dist/index19.js +8 -8
  21. package/dist/index21.js +14 -14
  22. package/dist/index215.js +2 -2
  23. package/dist/index216.js +2 -2
  24. package/dist/index217.js +1 -1
  25. package/dist/index218.js +1 -1
  26. package/dist/index219.js +32 -3
  27. package/dist/index220.js +27 -12
  28. package/dist/index222.js +4 -201
  29. package/dist/index223.js +15 -0
  30. package/dist/index224.js +18 -133
  31. package/dist/index225.js +203 -0
  32. package/dist/index227.js +133 -26
  33. package/dist/index229.js +5 -2
  34. package/dist/index23.js +11 -11
  35. package/dist/index230.js +5 -2
  36. package/dist/index231.js +5 -3
  37. package/dist/index232.js +5 -3
  38. package/dist/index233.js +5 -7
  39. package/dist/index234.js +5 -2
  40. package/dist/index235.js +2 -86
  41. package/dist/{index249.js → index236.js} +1 -1
  42. package/dist/index237.js +3 -29
  43. package/dist/index238.js +2 -17
  44. package/dist/index239.js +16 -49
  45. package/dist/index240.js +11 -14
  46. package/dist/index241.js +51 -3
  47. package/dist/index242.js +14 -11
  48. package/dist/index243.js +11 -15
  49. package/dist/index244.js +17 -2
  50. package/dist/index245.js +27 -186
  51. package/dist/index246.js +16 -3
  52. package/dist/index247.js +4 -34
  53. package/dist/index248.js +106 -9
  54. package/dist/index25.js +3 -3
  55. package/dist/index250.js +100 -2
  56. package/dist/index252.js +229 -12
  57. package/dist/index253.js +13 -4
  58. package/dist/index254.js +30 -102
  59. package/dist/index255.js +11 -0
  60. package/dist/index256.js +2 -100
  61. package/dist/index257.js +190 -0
  62. package/dist/index258.js +3 -227
  63. package/dist/index259.js +5 -13
  64. package/dist/index260.js +6 -5
  65. package/dist/index261.js +8 -5
  66. package/dist/index262.js +268 -5
  67. package/dist/index263.js +52 -5
  68. package/dist/index264.js +52 -5
  69. package/dist/index265.js +32 -5
  70. package/dist/index266.js +59 -12
  71. package/dist/index267.js +13 -2
  72. package/dist/index268.js +9 -6
  73. package/dist/index269.js +3 -7
  74. package/dist/index27.js +1 -1
  75. package/dist/index270.js +4 -3
  76. package/dist/index271.js +3 -5
  77. package/dist/index272.js +2 -6
  78. package/dist/index273.js +84 -6
  79. package/dist/index275.js +2 -52
  80. package/dist/index276.js +7 -50
  81. package/dist/index277.js +52 -31
  82. package/dist/index278.js +21 -58
  83. package/dist/index279.js +8 -9
  84. package/dist/index280.js +23 -3
  85. package/dist/index281.js +6 -4
  86. package/dist/index282.js +15 -66
  87. package/dist/index283.js +9 -6
  88. package/dist/index284.js +2 -16
  89. package/dist/index285.js +7 -9
  90. package/dist/index286.js +7 -53
  91. package/dist/index287.js +66 -8
  92. package/dist/index288.js +11 -23
  93. package/dist/index289.js +5 -23
  94. package/dist/index29.js +3 -3
  95. package/dist/index290.js +3 -9
  96. package/dist/index291.js +3 -5
  97. package/dist/index292.js +7 -8
  98. package/dist/index293.js +3 -11
  99. package/dist/index294.js +10 -0
  100. package/dist/index295.js +7 -3
  101. package/dist/index296.js +3 -3
  102. package/dist/index298.js +3 -7
  103. package/dist/index299.js +280 -5
  104. package/dist/index300.js +2 -3
  105. package/dist/index301.js +124 -16
  106. package/dist/index302.js +2 -28
  107. package/dist/index303.js +15 -2
  108. package/dist/index304.js +2 -3
  109. package/dist/index305.js +16 -3
  110. package/dist/index306.js +2 -2
  111. package/dist/index307.js +16 -4
  112. package/dist/index308.js +2 -5
  113. package/dist/index309.js +17 -278
  114. package/dist/index31.js +2 -2
  115. package/dist/index310.js +2 -2
  116. package/dist/index311.js +2 -125
  117. package/dist/index312.js +4 -2
  118. package/dist/index313.js +3 -15
  119. package/dist/index314.js +3 -2
  120. package/dist/index315.js +2 -16
  121. package/dist/index316.js +28 -2
  122. package/dist/index317.js +17 -16
  123. package/dist/index318.js +27 -2
  124. package/dist/index319.js +2 -19
  125. package/dist/index320.js +2 -2
  126. package/dist/index321.js +1 -1
  127. package/dist/index322.js +2 -719
  128. package/dist/index323.js +2 -366
  129. package/dist/index324.js +2 -57
  130. package/dist/index325.js +3 -27
  131. package/dist/index326.js +719 -2
  132. package/dist/index327.js +366 -2
  133. package/dist/index328.js +57 -2
  134. package/dist/index329.js +1 -1
  135. package/dist/index33.js +8 -8
  136. package/dist/index330.js +4 -2
  137. package/dist/index331.js +5 -2
  138. package/dist/index332.js +7 -3
  139. package/dist/index333.js +5 -5
  140. package/dist/index334.js +7 -34
  141. package/dist/index335.js +35 -6
  142. package/dist/index336.js +6 -129
  143. package/dist/index337.js +113 -382
  144. package/dist/index338.js +397 -7
  145. package/dist/index339.js +5 -6
  146. package/dist/index340.js +57 -7
  147. package/dist/index341.js +57 -227
  148. package/dist/index342.js +6 -58
  149. package/dist/index343.js +133 -57
  150. package/dist/index344.js +6 -46
  151. package/dist/index345.js +19 -5
  152. package/dist/index346.js +8 -6
  153. package/dist/index347.js +13 -17
  154. package/dist/index348.js +5 -9
  155. package/dist/index349.js +46 -14
  156. package/dist/index35.js +4 -4
  157. package/dist/index351.js +21 -92
  158. package/dist/index353.js +518 -20
  159. package/dist/index354.js +95 -0
  160. package/dist/index355.js +222 -514
  161. package/dist/index37.js +59 -57
  162. package/dist/index39.js +7 -7
  163. package/dist/index41.js +2 -2
  164. package/dist/index43.js +8 -8
  165. package/dist/index45.js +6 -6
  166. package/dist/index49.js +2 -2
  167. package/dist/index53.js +1 -1
  168. package/dist/index55.js +1 -1
  169. package/dist/index57.js +2 -2
  170. package/dist/index61.js +5 -5
  171. package/dist/index67.js +1 -1
  172. package/dist/index80.js +6 -6
  173. package/dist/index82.js +1 -1
  174. package/dist/index84.js +2 -2
  175. package/dist/index86.js +3 -3
  176. package/dist/index88.js +1 -1
  177. package/dist/index91.js +3 -3
  178. package/dist/index93.js +2 -2
  179. package/dist/index95.js +5 -5
  180. package/dist/index97.js +1 -1
  181. package/package.json +1 -1
  182. package/dist/index221.js +0 -22
  183. package/dist/index226.js +0 -35
  184. package/dist/index251.js +0 -20
  185. package/dist/index274.js +0 -270
  186. package/dist/index297.js +0 -5
  187. package/dist/index352.js +0 -136
package/dist/index235.js CHANGED
@@ -1,88 +1,4 @@
1
- import { defineComponent as p, createElementBlock as n, openBlock as s, normalizeClass as r, createElementVNode as o, renderSlot as t, createCommentVNode as h, createTextVNode as l, toDisplayString as i, unref as b, Fragment as m, renderList as u } from "vue";
2
- import { useLocale as g } from "./index220.js";
3
- const k = { class: "bb-cr-container__container" }, y = {
4
- key: 0,
5
- class: "bb-cr-container__loading-container"
6
- }, $ = {
7
- key: 1,
8
- class: "bb-cr-container__no-data-container"
9
- }, C = /* @__PURE__ */ p({
10
- __name: "OptionsContainer",
11
- props: {
12
- direction: {},
13
- hasErrors: { type: Boolean },
14
- hideLabel: { type: Boolean },
15
- loadingText: {},
16
- loading: { type: Boolean },
17
- noDataText: {},
18
- options: {}
19
- },
20
- setup(f) {
21
- const { t: d } = g();
22
- return (e, T) => (s(), n("span", {
23
- ref: "container",
24
- class: r(["bb-cr-container", {
25
- "bb-cr-container--errors": e.hasErrors,
26
- "bb-cr-container--horizontal": e.direction === "horizontal",
27
- "bb-cr-container--vertical": e.direction === "vertical"
28
- }])
29
- }, [
30
- o("span", k, [
31
- t(e.$slots, "prepend"),
32
- !e.options.length && e.loading ? (s(), n("span", y, [
33
- t(e.$slots, "loading", {}, () => [
34
- l(i(e.loadingText || b(d)("common.loadingText")), 1)
35
- ])
36
- ])) : e.options.length ? h("", !0) : (s(), n("span", $, [
37
- t(e.$slots, "no-data", {}, () => [
38
- l(i(e.noDataText || b(d)("common.noDataText")), 1)
39
- ])
40
- ])),
41
- (s(!0), n(m, null, u(e.options, (a, c) => (s(), n(m, {
42
- key: a?.valueHash || c
43
- }, [
44
- t(e.$slots, "option:prepend", {
45
- id: a.valueHash,
46
- checked: !!a.selected,
47
- disabled: !!a.disabled,
48
- item: a.item,
49
- text: a.text
50
- }),
51
- o("label", {
52
- class: r(["bb-cr-container-option", { "bb-base-radio-selected": a.selected }])
53
- }, [
54
- t(e.$slots, "input", {
55
- index: c,
56
- option: a
57
- }),
58
- o("span", {
59
- class: r({
60
- "bb-cr-container-option__text": !0,
61
- "sr-only": e.hideLabel
62
- })
63
- }, [
64
- t(e.$slots, "label", {
65
- checked: !!a.selected,
66
- item: a.item,
67
- text: a.text
68
- }, () => [
69
- l(i(a.text), 1)
70
- ])
71
- ], 2)
72
- ], 2),
73
- t(e.$slots, "option:append", {
74
- id: a.valueHash,
75
- checked: !!a.selected,
76
- disabled: !!a.disabled,
77
- item: a.item,
78
- text: a.text
79
- })
80
- ], 64))), 128)),
81
- t(e.$slots, "append")
82
- ])
83
- ], 2));
84
- }
85
- });
1
+ const e = (t) => t;
86
2
  export {
87
- C as default
3
+ e as identity
88
4
  };
@@ -1,4 +1,4 @@
1
- import { isNil as r } from "./index234.js";
1
+ import { isNil as r } from "./index275.js";
2
2
  const e = (t) => r(t) ? !0 : Array.isArray(t) || typeof t == "string" ? t.length === 0 : t instanceof Map || t instanceof Set ? t.size === 0 : typeof t == "number" ? Number.isNaN(t) : typeof t == "boolean" || typeof t == "function" ? !1 : typeof t == "object" ? "length" in t && typeof t.length == "number" ? t.length === 0 : Object.keys(t).length === 0 : !1;
3
3
  export {
4
4
  e as isEmpty
package/dist/index237.js CHANGED
@@ -1,31 +1,5 @@
1
- import { ref as a, computed as s, unref as v } from "vue";
2
- import { useDebounceFn as f } from "./index214.js";
3
- const p = (u) => {
4
- const e = a(0), r = s(() => v(u.items)), t = a([]), n = async (...l) => {
5
- if (Array.isArray(r.value))
6
- t.value = r.value;
7
- else if (typeof r.value == "function") {
8
- const i = ++e.value;
9
- try {
10
- const o = await r.value(...l);
11
- if (i < e.value) {
12
- e.value--;
13
- return;
14
- } else
15
- t.value = o;
16
- } catch (o) {
17
- console.error(o);
18
- }
19
- e.value--;
20
- }
21
- }, c = f(n, u.debounce || 0);
22
- return {
23
- getter: n,
24
- debouncedGetter: c,
25
- items: t,
26
- loading: s(() => !!e.value)
27
- };
28
- };
1
+ import { hash as o } from "./index316.js";
2
+ const t = (r, h = "bb") => `${h}${o(r)}`;
29
3
  export {
30
- p as useItemsGetter
4
+ t as hash
31
5
  };
package/dist/index238.js CHANGED
@@ -1,19 +1,4 @@
1
- import { computed as u, unref as a } from "vue";
2
- import { hash as d } from "./index241.js";
3
- const p = ({
4
- items: m,
5
- key: e
6
- }) => {
7
- const n = (t) => e ? String(t[e]) : d(t), o = u(() => {
8
- const t = {}, s = Array.from(a(m) ?? []);
9
- for (let r = 0; r < s.length; r++) {
10
- const c = s[r];
11
- t[n(c)] = c;
12
- }
13
- return t;
14
- });
15
- return { data: o, get: (t) => o.value[n(t)] };
16
- };
1
+ const e = (t) => t[t.length - 1];
17
2
  export {
18
- p as useIndexById
3
+ e as last
19
4
  };
package/dist/index239.js CHANGED
@@ -1,53 +1,20 @@
1
- import { computed as l, unref as o } from "vue";
2
- import { useItemText as x } from "./index301.js";
3
- import { useItemValue as w } from "./index285.js";
4
- import { hash as y } from "./index241.js";
5
- import { useLogger as D } from "./index273.js";
6
- const { getItemText: O } = x(), { getItemValue: V } = w(), { warn: H } = D(), T = (u, c, m, a, d, r) => r ? !1 : !!(c || u.disabled || a && d >= a), q = ({
7
- items: u,
8
- disabled: c,
9
- selectable: m,
10
- itemText: a,
11
- itemValue: d,
12
- selectedIndexedByHash: r,
13
- max: b = 1 / 0
14
- }) => {
15
- const v = l(() => o(c)), p = l(() => o(u)), h = l(
16
- () => Object.keys(r.value).length
17
- ), g = o(b), f = (e) => {
18
- const n = V(e, o(d)), t = y(n), i = O(e, o(a)), s = r.value[t] !== void 0, I = T(
19
- e,
20
- v.value,
21
- m,
22
- g,
23
- h.value,
24
- s
1
+ import { isNil as c } from "./index275.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()}"`
25
6
  );
26
- return {
27
- item: e,
28
- text: i,
29
- value: n,
30
- valueHash: t,
31
- selected: s,
32
- disabled: o(I)
33
- };
34
- };
35
- return {
36
- options: l(() => {
37
- const e = [], n = /* @__PURE__ */ new Set();
38
- for (let t = 0; t < p.value.length; t++) {
39
- const i = p.value[t];
40
- i.disabled && H(
41
- "Disabling an item by passing a disabled option to the item itself is deprecated and will be removed in a future version. Use the `disabled` prop or the `selectable` iteratee prop instead."
42
- );
43
- const s = f(i);
44
- n.has(s.valueHash) || (n.add(s.valueHash), e.push(s));
45
- }
46
- return e;
47
- }),
48
- createOption: f
49
- };
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;
15
+ }
16
+ return !1;
50
17
  };
51
18
  export {
52
- q as useBaseOptions
19
+ y as matchAnyKey
53
20
  };
package/dist/index240.js CHANGED
@@ -1,17 +1,14 @@
1
- import { isNil as f } from "./index234.js";
2
- import { computed as t, unref as o } from "vue";
3
- const a = ({ modelValue: e, iteratee: h, multiple: u }) => {
4
- const i = t(
5
- () => new Array().concat(o(e))
6
- ), s = t(() => i.value.reduce(
7
- (r, n) => (h(n) ? r.coherent.push(n) : r.incoherent.push(n), r),
8
- { coherent: [], incoherent: [] }
9
- )), c = t(() => u && !o(e).length || !u && f(o(e)) ? !0 : !s.value.incoherent.length);
10
- return {
11
- status: s,
12
- coherent: c
13
- };
1
+ import { ref as t } from "vue";
2
+ const n = () => {
3
+ const e = t([]);
4
+ return { array: e, set: (...r) => {
5
+ e.value = r;
6
+ }, add: (...r) => {
7
+ e.value.push(...r);
8
+ }, remove: (r) => {
9
+ e.value = e.value.filter(r);
10
+ } };
14
11
  };
15
12
  export {
16
- a as useCoherence
13
+ n as useArray
17
14
  };
package/dist/index241.js CHANGED
@@ -1,5 +1,53 @@
1
- import { hash as o } from "./index302.js";
2
- const t = (r, h = "bb") => `${h}${o(r)}`;
1
+ import { computed as l, unref as o } from "vue";
2
+ import { useItemText as x } from "./index317.js";
3
+ import { useItemValue as w } from "./index276.js";
4
+ import { hash as y } from "./index237.js";
5
+ import { useLogger as D } from "./index261.js";
6
+ const { getItemText: O } = x(), { getItemValue: V } = w(), { warn: H } = D(), T = (u, c, m, a, d, r) => r ? !1 : !!(c || u.disabled || a && d >= a), q = ({
7
+ items: u,
8
+ disabled: c,
9
+ selectable: m,
10
+ itemText: a,
11
+ itemValue: d,
12
+ selectedIndexedByHash: r,
13
+ max: b = 1 / 0
14
+ }) => {
15
+ const v = l(() => o(c)), p = l(() => o(u)), h = l(
16
+ () => Object.keys(r.value).length
17
+ ), g = o(b), f = (e) => {
18
+ const n = V(e, o(d)), t = y(n), i = O(e, o(a)), s = r.value[t] !== void 0, I = T(
19
+ e,
20
+ v.value,
21
+ m,
22
+ g,
23
+ h.value,
24
+ s
25
+ );
26
+ return {
27
+ item: e,
28
+ text: i,
29
+ value: n,
30
+ valueHash: t,
31
+ selected: s,
32
+ disabled: o(I)
33
+ };
34
+ };
35
+ return {
36
+ options: l(() => {
37
+ const e = [], n = /* @__PURE__ */ new Set();
38
+ for (let t = 0; t < p.value.length; t++) {
39
+ const i = p.value[t];
40
+ i.disabled && H(
41
+ "Disabling an item by passing a disabled option to the item itself is deprecated and will be removed in a future version. Use the `disabled` prop or the `selectable` iteratee prop instead."
42
+ );
43
+ const s = f(i);
44
+ n.has(s.valueHash) || (n.add(s.valueHash), e.push(s));
45
+ }
46
+ return e;
47
+ }),
48
+ createOption: f
49
+ };
50
+ };
3
51
  export {
4
- t as hash
52
+ q as useBaseOptions
5
53
  };
package/dist/index242.js CHANGED
@@ -1,14 +1,17 @@
1
- import { hash as e } from "./index241.js";
2
- import { debouncedWatch as s } from "./index214.js";
3
- const n = (o, c, h) => {
4
- s(
5
- o,
6
- (r, t) => {
7
- e(r) !== e(t) && c(r, t);
8
- },
9
- h
10
- );
1
+ import { isNil as f } from "./index275.js";
2
+ import { computed as t, unref as o } from "vue";
3
+ const a = ({ modelValue: e, iteratee: h, multiple: u }) => {
4
+ const i = t(
5
+ () => new Array().concat(o(e))
6
+ ), s = t(() => i.value.reduce(
7
+ (r, n) => (h(n) ? r.coherent.push(n) : r.incoherent.push(n), r),
8
+ { coherent: [], incoherent: [] }
9
+ )), c = t(() => u && !o(e).length || !u && f(o(e)) ? !0 : !s.value.incoherent.length);
10
+ return {
11
+ status: s,
12
+ coherent: c
13
+ };
11
14
  };
12
15
  export {
13
- n as useHashedWatcher
16
+ a as useCoherence
14
17
  };
package/dist/index243.js CHANGED
@@ -1,18 +1,14 @@
1
- import { isNotNil as n } from "./index144.js";
2
- import { ref as t, onServerPrefetch as u, onBeforeMount as c } from "vue";
3
- const h = ({
4
- fn: i,
5
- onStart: s,
6
- multiple: f,
7
- currentValue: o
8
- }) => {
9
- const a = s || !f && n(o) || f && !!o.length, e = t(!1), l = t(!1), r = async () => {
10
- e.value = !0, await i({ prefill: !0 }), e.value = !1, l.value = !0;
11
- };
12
- return a && (u(r), c(async () => {
13
- l.value || await r();
14
- })), { isPrefilling: e, hasPrefilled: l, prefill: r };
1
+ import { hash as e } from "./index237.js";
2
+ import { debouncedWatch as s } from "./index214.js";
3
+ const n = (o, c, h) => {
4
+ s(
5
+ o,
6
+ (r, t) => {
7
+ e(r) !== e(t) && c(r, t);
8
+ },
9
+ h
10
+ );
15
11
  };
16
12
  export {
17
- h as usePrefill
13
+ n as useHashedWatcher
18
14
  };
package/dist/index244.js CHANGED
@@ -1,4 +1,19 @@
1
- const e = (t) => t;
1
+ import { computed as u, unref as a } from "vue";
2
+ import { hash as d } from "./index237.js";
3
+ const p = ({
4
+ items: m,
5
+ key: e
6
+ }) => {
7
+ const n = (t) => e ? String(t[e]) : d(t), o = u(() => {
8
+ const t = {}, s = Array.from(a(m) ?? []);
9
+ for (let r = 0; r < s.length; r++) {
10
+ const c = s[r];
11
+ t[n(c)] = c;
12
+ }
13
+ return t;
14
+ });
15
+ return { data: o, get: (t) => o.value[n(t)] };
16
+ };
2
17
  export {
3
- e as identity
18
+ p as useIndexById
4
19
  };
package/dist/index245.js CHANGED
@@ -1,190 +1,31 @@
1
- var C = Object.defineProperty, x = (a, e, t) => e in a ? C(a, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : a[e] = t, y = (a, e, t) => x(a, typeof e != "symbol" ? e + "" : e, t);
2
- const M = {
3
- "#": { pattern: /[0-9]/ },
4
- "@": { pattern: /[a-zA-Z]/ },
5
- "*": { pattern: /[a-zA-Z0-9]/ }
6
- }, w = (a, e, t) => a.replaceAll(e, "").replace(t, ".").replace("..", ".").replace(/[^.\d]/g, ""), N = (a, e, t) => {
7
- var s;
8
- return new Intl.NumberFormat(((s = t.number) == null ? void 0 : s.locale) ?? "en", {
9
- minimumFractionDigits: a,
10
- maximumFractionDigits: e,
11
- roundingMode: "trunc"
12
- });
13
- }, P = (a, e = !0, t) => {
14
- var s, r, n, l;
15
- const u = ((s = t.number) == null ? void 0 : s.unsigned) !== !0 && a.startsWith("-") ? "-" : "", p = ((r = t.number) == null ? void 0 : r.fraction) ?? 0;
16
- let o = N(0, p, t);
17
- const k = o.formatToParts(1000.12), m = ((n = k.find((i) => i.type === "group")) == null ? void 0 : n.value) ?? " ", f = ((l = k.find((i) => i.type === "decimal")) == null ? void 0 : l.value) ?? ".", c = w(a, m, f);
18
- if (Number.isNaN(parseFloat(c))) return u;
19
- const v = c.split(".");
20
- if (v[1] != null && v[1].length >= 1) {
21
- const i = v[1].length <= p ? v[1].length : p;
22
- o = N(i, p, t);
23
- }
24
- let d = o.format(parseFloat(c));
25
- return e ? p > 0 && c.endsWith(".") && !c.slice(0, -1).includes(".") && (d += f) : d = w(d, m, f), u + d;
26
- }, I = (a) => JSON.parse(a.replaceAll("'", '"')), T = (a, e = {}) => {
27
- const t = { ...e };
28
- a.dataset.maska != null && a.dataset.maska !== "" && (t.mask = F(a.dataset.maska)), a.dataset.maskaEager != null && (t.eager = E(a.dataset.maskaEager)), a.dataset.maskaReversed != null && (t.reversed = E(a.dataset.maskaReversed)), a.dataset.maskaTokensReplace != null && (t.tokensReplace = E(a.dataset.maskaTokensReplace)), a.dataset.maskaTokens != null && (t.tokens = O(a.dataset.maskaTokens));
29
- const s = {};
30
- return a.dataset.maskaNumberLocale != null && (s.locale = a.dataset.maskaNumberLocale), a.dataset.maskaNumberFraction != null && (s.fraction = parseInt(a.dataset.maskaNumberFraction)), a.dataset.maskaNumberUnsigned != null && (s.unsigned = E(a.dataset.maskaNumberUnsigned)), (a.dataset.maskaNumber != null || Object.values(s).length > 0) && (t.number = s), t;
31
- }, E = (a) => a !== "" ? !!JSON.parse(a) : !0, F = (a) => a.startsWith("[") && a.endsWith("]") ? I(a) : a, O = (a) => {
32
- if (a.startsWith("{") && a.endsWith("}"))
33
- return I(a);
34
- const e = {};
35
- return a.split("|").forEach((t) => {
36
- const s = t.split(":");
37
- e[s[0]] = {
38
- pattern: S() ? new RegExp(s[1], "u") : new RegExp(s[1]),
39
- optional: s[2] === "optional",
40
- multiple: s[2] === "multiple",
41
- repeated: s[2] === "repeated"
42
- };
43
- }), e;
44
- }, S = () => {
45
- try {
46
- return new RegExp("\\p{L}", "u"), !0;
47
- } catch {
48
- return !1;
49
- }
50
- };
51
- class W {
52
- constructor(e = {}) {
53
- y(this, "opts", {}), y(this, "memo", /* @__PURE__ */ new Map());
54
- const t = { ...e };
55
- if (t.tokens != null) {
56
- t.tokens = t.tokensReplace ? { ...t.tokens } : { ...M, ...t.tokens };
57
- for (const s of Object.values(t.tokens))
58
- typeof s.pattern == "string" && (s.pattern = S() ? new RegExp(s.pattern, "u") : new RegExp(s.pattern));
59
- } else
60
- t.tokens = M;
61
- Array.isArray(t.mask) && (t.mask.length > 1 ? t.mask = [...t.mask].sort((s, r) => s.length - r.length) : t.mask = t.mask[0] ?? ""), t.mask === "" && (t.mask = null), this.opts = t;
62
- }
63
- masked(e) {
64
- return this.process(String(e), this.findMask(String(e)));
65
- }
66
- unmasked(e) {
67
- return this.process(String(e), this.findMask(String(e)), !1);
68
- }
69
- isEager() {
70
- return this.opts.eager === !0;
71
- }
72
- isReversed() {
73
- return this.opts.reversed === !0;
74
- }
75
- completed(e) {
76
- const t = this.findMask(String(e));
77
- if (this.opts.mask == null || t == null) return !1;
78
- const s = this.process(String(e), t).length;
79
- return typeof this.opts.mask == "string" ? s >= this.opts.mask.length : s >= t.length;
80
- }
81
- findMask(e) {
82
- const t = this.opts.mask;
83
- if (t == null)
84
- return null;
85
- if (typeof t == "string")
86
- return t;
87
- if (typeof t == "function")
88
- return t(e);
89
- const s = this.process(e, t.slice(-1).pop() ?? "", !1);
90
- return t.find((r) => this.process(e, r, !1).length >= s.length) ?? "";
91
- }
92
- escapeMask(e) {
93
- const t = [], s = [];
94
- return e.split("").forEach((r, n) => {
95
- r === "!" && e[n - 1] !== "!" ? s.push(n - s.length) : t.push(r);
96
- }), { mask: t.join(""), escaped: s };
97
- }
98
- process(e, t, s = !0) {
99
- if (this.opts.number != null) return P(e, s, this.opts);
100
- if (t == null) return e;
101
- const r = `v=${e},mr=${t},m=${s ? 1 : 0}`;
102
- if (this.memo.has(r)) return this.memo.get(r);
103
- const { mask: n, escaped: l } = this.escapeMask(t), u = [], p = this.opts.tokens != null ? this.opts.tokens : {}, o = this.isReversed() ? -1 : 1, k = this.isReversed() ? "unshift" : "push", m = this.isReversed() ? 0 : n.length - 1, f = this.isReversed() ? () => i > -1 && h > -1 : () => i < n.length && h < e.length, c = (b) => !this.isReversed() && b <= m || this.isReversed() && b >= m;
104
- let v, d = -1, i = this.isReversed() ? n.length - 1 : 0, h = this.isReversed() ? e.length - 1 : 0, R = !1;
105
- for (; f(); ) {
106
- const b = n.charAt(i), g = p[b], A = g?.transform != null ? g.transform(e.charAt(h)) : e.charAt(h);
107
- if (!l.includes(i) && g != null ? (A.match(g.pattern) != null ? (u[k](A), g.repeated ? (d === -1 ? d = i : i === m && i !== d && (i = d - o), m === d && (i -= o)) : g.multiple && (R = !0, i -= o), i += o) : g.multiple ? R && (i += o, h -= o, R = !1) : A === v ? v = void 0 : g.optional && (i += o, h -= o), h += o) : (s && !this.isEager() && u[k](b), A === b && !this.isEager() ? h += o : v = b, this.isEager() || (i += o)), this.isEager())
108
- for (; c(i) && (p[n.charAt(i)] == null || l.includes(i)); ) {
109
- if (s) {
110
- if (u[k](n.charAt(i)), e.charAt(h) === n.charAt(i)) {
111
- i += o, h += o;
112
- continue;
113
- }
114
- } else n.charAt(i) === e.charAt(h) && (h += o);
115
- i += o;
116
- }
117
- }
118
- return this.memo.set(r, u.join("")), this.memo.get(r);
119
- }
120
- }
121
- class V {
122
- constructor(e, t = {}) {
123
- y(this, "items", /* @__PURE__ */ new Map()), y(this, "eventAbortController"), y(this, "onInput", (s) => {
124
- if (s instanceof CustomEvent && s.type === "input" && !s.isTrusted && !s.bubbles)
125
- return;
126
- const r = s.target, n = this.items.get(r);
127
- if (n === void 0) return;
128
- const l = "inputType" in s && s.inputType.startsWith("delete"), u = n.isEager(), p = l && u && n.unmasked(r.value) === "" ? "" : r.value;
129
- this.fixCursor(r, l, () => this.setValue(r, p));
130
- }), this.options = t, this.eventAbortController = new AbortController(), this.init(this.getInputs(e));
131
- }
132
- update(e = {}) {
133
- this.options = { ...e }, this.init(Array.from(this.items.keys()));
134
- }
135
- updateValue(e) {
136
- var t;
137
- e.value !== "" && e.value !== ((t = this.processInput(e)) == null ? void 0 : t.masked) && this.setValue(e, e.value);
138
- }
139
- destroy() {
140
- this.eventAbortController.abort(), this.items.clear();
141
- }
142
- init(e) {
143
- const t = this.getOptions(this.options);
144
- for (const s of e) {
145
- if (!this.items.has(s)) {
146
- const { signal: n } = this.eventAbortController;
147
- s.addEventListener("input", this.onInput, { capture: !0, signal: n });
1
+ import { ref as a, computed as s, unref as v } from "vue";
2
+ import { useDebounceFn as f } from "./index214.js";
3
+ const p = (u) => {
4
+ const e = a(0), r = s(() => v(u.items)), t = a([]), n = async (...l) => {
5
+ if (Array.isArray(r.value))
6
+ t.value = r.value;
7
+ else if (typeof r.value == "function") {
8
+ const i = ++e.value;
9
+ try {
10
+ const o = await r.value(...l);
11
+ if (i < e.value) {
12
+ e.value--;
13
+ return;
14
+ } else
15
+ t.value = o;
16
+ } catch (o) {
17
+ console.error(o);
148
18
  }
149
- const r = new W(T(s, t));
150
- this.items.set(s, r), queueMicrotask(() => this.updateValue(s)), s.selectionStart === null && r.isEager() && console.warn("Maska: input of `%s` type is not supported", s.type);
19
+ e.value--;
151
20
  }
152
- }
153
- getInputs(e) {
154
- return typeof e == "string" ? Array.from(document.querySelectorAll(e)) : "length" in e ? Array.from(e) : [e];
155
- }
156
- getOptions(e) {
157
- const { onMaska: t, preProcess: s, postProcess: r, ...n } = e;
158
- return n;
159
- }
160
- fixCursor(e, t, s) {
161
- var r, n;
162
- const l = e.selectionStart, u = e.value;
163
- if (s(), l === null || l === u.length && !t) return;
164
- const p = e.value, o = u.slice(0, l), k = p.slice(0, l), m = (r = this.processInput(e, o)) == null ? void 0 : r.unmasked, f = (n = this.processInput(e, k)) == null ? void 0 : n.unmasked;
165
- if (m === void 0 || f === void 0) return;
166
- let c = l;
167
- o !== k && (c += t ? p.length - u.length : m.length - f.length), e.setSelectionRange(c, c);
168
- }
169
- setValue(e, t) {
170
- const s = this.processInput(e, t);
171
- s !== void 0 && (e.value = s.masked, this.options.onMaska != null && (Array.isArray(this.options.onMaska) ? this.options.onMaska.forEach((r) => r(s)) : this.options.onMaska(s)), e.dispatchEvent(new CustomEvent("maska", { detail: s })), e.dispatchEvent(new CustomEvent("input", { detail: s.masked })));
172
- }
173
- processInput(e, t) {
174
- const s = this.items.get(e);
175
- if (s === void 0) return;
176
- let r = t ?? e.value;
177
- this.options.preProcess != null && (r = this.options.preProcess(r));
178
- let n = s.masked(r);
179
- return this.options.postProcess != null && (n = this.options.postProcess(n)), {
180
- masked: n,
181
- unmasked: s.unmasked(r),
182
- completed: s.completed(r)
183
- };
184
- }
185
- }
21
+ }, c = f(n, u.debounce || 0);
22
+ return {
23
+ getter: n,
24
+ debouncedGetter: c,
25
+ items: t,
26
+ loading: s(() => !!e.value)
27
+ };
28
+ };
186
29
  export {
187
- W as Mask,
188
- V as MaskInput,
189
- M as tokens
30
+ p as useItemsGetter
190
31
  };
package/dist/index246.js CHANGED
@@ -1,5 +1,18 @@
1
- import { isEmpty as o } from "./index249.js";
2
- const m = (t) => !o(t);
1
+ import { isNotNil as n } from "./index144.js";
2
+ import { ref as t, onServerPrefetch as u, onBeforeMount as c } from "vue";
3
+ const h = ({
4
+ fn: i,
5
+ onStart: s,
6
+ multiple: f,
7
+ currentValue: o
8
+ }) => {
9
+ const a = s || !f && n(o) || f && !!o.length, e = t(!1), l = t(!1), r = async () => {
10
+ e.value = !0, await i({ prefill: !0 }), e.value = !1, l.value = !0;
11
+ };
12
+ return a && (u(r), c(async () => {
13
+ l.value || await r();
14
+ })), { isPrefilling: e, hasPrefilled: l, prefill: r };
15
+ };
3
16
  export {
4
- m as isNotEmpty
17
+ h as usePrefill
5
18
  };