bitboss-ui 2.0.45 → 2.0.46

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 (146) hide show
  1. package/dist/index108.js +1 -1
  2. package/dist/index110.js +5 -5
  3. package/dist/index118.js +1 -1
  4. package/dist/index120.js +5 -5
  5. package/dist/index122.js +1 -1
  6. package/dist/index126.js +1 -1
  7. package/dist/index127.js +1 -1
  8. package/dist/index128.js +1 -1
  9. package/dist/index13.js +1 -1
  10. package/dist/index130.js +1 -1
  11. package/dist/index132.js +2 -2
  12. package/dist/index133.js +2 -2
  13. package/dist/index15.js +4 -4
  14. package/dist/index17.js +3 -3
  15. package/dist/index19.js +2 -2
  16. package/dist/index204.js +2 -116
  17. package/dist/index205.js +3 -2
  18. package/dist/index206.js +40 -280
  19. package/dist/index207.js +6 -16
  20. package/dist/index208.js +7 -16
  21. package/dist/index209.js +8 -19
  22. package/dist/index21.js +14 -14
  23. package/dist/index210.js +52 -18
  24. package/dist/index212.js +13 -3
  25. package/dist/index213.js +20 -2
  26. package/dist/index214.js +4 -8
  27. package/dist/index215.js +154 -245
  28. package/dist/index216.js +77 -45
  29. package/dist/index218.js +116 -5
  30. package/dist/index219.js +2 -49
  31. package/dist/index220.js +4 -3
  32. package/dist/index221.js +2 -41
  33. package/dist/index222.js +126 -6
  34. package/dist/index223.js +281 -7
  35. package/dist/index224.js +125 -2
  36. package/dist/index225.js +19 -4
  37. package/dist/index226.js +16 -2
  38. package/dist/index227.js +14 -124
  39. package/dist/index228.js +2 -125
  40. package/dist/index229.js +2 -2
  41. package/dist/index23.js +15 -15
  42. package/dist/index230.js +5 -20
  43. package/dist/index231.js +368 -52
  44. package/dist/index232.js +5 -0
  45. package/dist/index233.js +19 -13
  46. package/dist/index234.js +27 -5
  47. package/dist/index235.js +3 -369
  48. package/dist/index236.js +249 -4
  49. package/dist/index237.js +50 -156
  50. package/dist/index238.js +38 -78
  51. package/dist/index239.js +7 -0
  52. package/dist/index240.js +49 -3
  53. package/dist/index241.js +2 -2
  54. package/dist/index242.js +2 -18
  55. package/dist/index243.js +17 -105
  56. package/dist/index244.js +108 -0
  57. package/dist/{index245.js → index246.js} +1 -1
  58. package/dist/index25.js +5 -5
  59. package/dist/index250.js +431 -6
  60. package/dist/index251.js +89 -16
  61. package/dist/index252.js +6 -3
  62. package/dist/index253.js +15 -8
  63. package/dist/index254.js +3 -23
  64. package/dist/index256.js +7 -6
  65. package/dist/index257.js +176 -2
  66. package/dist/index258.js +3 -2
  67. package/dist/index259.js +9 -2
  68. package/dist/index260.js +23 -2
  69. package/dist/index261.js +9 -2
  70. package/dist/index262.js +3 -2
  71. package/dist/index263.js +12 -2
  72. package/dist/index264.js +9 -2
  73. package/dist/index265.js +9 -2
  74. package/dist/index266.js +17 -2
  75. package/dist/index267.js +197 -25
  76. package/dist/index268.js +4 -22
  77. package/dist/index269.js +8 -0
  78. package/dist/index27.js +1 -1
  79. package/dist/index270.js +2 -7
  80. package/dist/index271.js +2 -431
  81. package/dist/index272.js +2 -89
  82. package/dist/index273.js +2 -4
  83. package/dist/index274.js +2 -200
  84. package/dist/index275.js +126 -2
  85. package/dist/index276.js +20 -7
  86. package/dist/index278.js +218 -120
  87. package/dist/index279.js +2 -176
  88. package/dist/index280.js +2 -3
  89. package/dist/index281.js +4 -0
  90. package/dist/index282.js +1 -21
  91. package/dist/index283.js +4 -0
  92. package/dist/index284.js +2 -3
  93. package/dist/index285.js +28 -12
  94. package/dist/index286.js +21 -8
  95. package/dist/index288.js +2 -66
  96. package/dist/index29.js +3 -3
  97. package/dist/index291.js +66 -5
  98. package/dist/index292.js +5 -224
  99. package/dist/index293.js +1 -1
  100. package/dist/index294.js +1 -1
  101. package/dist/index295.js +1 -1
  102. package/dist/index296.js +5 -4
  103. package/dist/index297.js +8 -4
  104. package/dist/index298.js +3 -58
  105. package/dist/index299.js +4 -79
  106. package/dist/index300.js +6 -0
  107. package/dist/index301.js +58 -4
  108. package/dist/index302.js +79 -8
  109. package/dist/index304.js +34 -6
  110. package/dist/index305.js +10 -18
  111. package/dist/index306.js +2 -4
  112. package/dist/index307.js +6 -34
  113. package/dist/index308.js +18 -10
  114. package/dist/index309.js +7 -2
  115. package/dist/index31.js +2 -2
  116. package/dist/index311.js +2 -2
  117. package/dist/index313.js +1 -1
  118. package/dist/index314.js +2 -47
  119. package/dist/index315.js +47 -2
  120. package/dist/index33.js +2 -2
  121. package/dist/index35.js +3 -3
  122. package/dist/index37.js +13 -13
  123. package/dist/index39.js +4 -4
  124. package/dist/index41.js +2 -2
  125. package/dist/index43.js +2 -2
  126. package/dist/index45.js +8 -8
  127. package/dist/index47.js +2 -2
  128. package/dist/index49.js +2 -2
  129. package/dist/index55.js +1 -1
  130. package/dist/index57.js +1 -1
  131. package/dist/index75.js +3 -3
  132. package/dist/index79.js +2 -2
  133. package/dist/index81.js +1 -1
  134. package/dist/index84.js +2 -2
  135. package/dist/index86.js +1 -1
  136. package/dist/index88.js +3 -3
  137. package/dist/index90.js +1 -1
  138. package/dist/style.css +1 -1
  139. package/package.json +2 -2
  140. package/dist/index211.js +0 -29
  141. package/dist/index217.js +0 -46
  142. package/dist/index247.js +0 -4
  143. package/dist/index255.js +0 -11
  144. package/dist/index277.js +0 -4
  145. package/dist/index287.js +0 -19
  146. package/dist/index303.js +0 -9
package/dist/index208.js CHANGED
@@ -1,18 +1,9 @@
1
- import { getDefaultExportFromCjs as i, commonjsGlobal as n } from "./index256.js";
2
- import { __module as t } from "./index259.js";
3
- (function(s, a) {
4
- (function(f, o) {
5
- s.exports = o();
6
- })(n, function() {
7
- return function(f, o) {
8
- o.prototype.isSameOrBefore = function(e, r) {
9
- return this.isSame(e, r) || this.isBefore(e, r);
10
- };
11
- };
12
- });
13
- })(t);
14
- var m = t.exports;
15
- const c = /* @__PURE__ */ i(m);
1
+ import { ref as e } from "vue";
2
+ const o = e(0), s = () => {
3
+ o.value++;
4
+ }, a = () => {
5
+ o.value--;
6
+ }, d = () => ({ openedModals: o, modalHasOpened: s, modalHasClosed: a });
16
7
  export {
17
- c as default
8
+ d as useModalsState
18
9
  };
package/dist/index209.js CHANGED
@@ -1,21 +1,10 @@
1
- import { getDefaultExportFromCjs as m, commonjsGlobal as i } from "./index256.js";
2
- import { __module as r } from "./index260.js";
3
- import { d as s } from "./index206.js";
4
- (function(_, u) {
5
- (function(e, t) {
6
- _.exports = t(s);
7
- })(i, function(e) {
8
- function t(o) {
9
- return o && typeof o == "object" && "default" in o ? o : { default: o };
10
- }
11
- var a = t(e), n = { name: "it", weekdays: "domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato".split("_"), weekdaysShort: "dom_lun_mar_mer_gio_ven_sab".split("_"), weekdaysMin: "do_lu_ma_me_gi_ve_sa".split("_"), months: "gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"), weekStart: 1, monthsShort: "gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"), formats: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd D MMMM YYYY HH:mm" }, relativeTime: { future: "tra %s", past: "%s fa", s: "qualche secondo", m: "un minuto", mm: "%d minuti", h: "un' ora", hh: "%d ore", d: "un giorno", dd: "%d giorni", M: "un mese", MM: "%d mesi", y: "un anno", yy: "%d anni" }, ordinal: function(o) {
12
- return o + "º";
13
- } };
14
- return a.default.locale(n, null, !0), n;
15
- });
16
- })(r);
17
- var d = r.exports;
18
- const g = /* @__PURE__ */ m(d);
1
+ const o = "bitboss-ui | ", e = () => ({
2
+ warn: (r) => console.warn(`${o}${r}`),
3
+ error: (r) => console.error(`${o}${r}`),
4
+ throw: (r) => {
5
+ throw new Error(`${o}${r}`);
6
+ }
7
+ });
19
8
  export {
20
- g as default
9
+ e as useLogger
21
10
  };
package/dist/index21.js CHANGED
@@ -3,20 +3,20 @@ import { defineComponent as $, ref as b, watch as x, openBlock as u, createEleme
3
3
  /* empty css */
4
4
  import p from "./index13.js";
5
5
  /* empty css */
6
- import s from "./index206.js";
7
- import z from "./index207.js";
8
- import U from "./index208.js";
9
- import W from "./index209.js";
10
- import E from "./index210.js";
11
- import T from "./index211.js";
12
- import { hash as V } from "./index212.js";
13
- import { last as j } from "./index213.js";
14
- import { useLogger as H } from "./index214.js";
15
- import P from "./index215.js";
16
- import Z from "./index216.js";
17
- import q from "./index217.js";
18
- import h from "./index218.js";
19
- import F from "./index219.js";
6
+ import s from "./index223.js";
7
+ import z from "./index226.js";
8
+ import U from "./index227.js";
9
+ import W from "./index225.js";
10
+ import E from "./index233.js";
11
+ import T from "./index234.js";
12
+ import { hash as V } from "./index235.js";
13
+ import { last as j } from "./index229.js";
14
+ import { useLogger as H } from "./index209.js";
15
+ import P from "./index236.js";
16
+ import Z from "./index237.js";
17
+ import q from "./index238.js";
18
+ import h from "./index239.js";
19
+ import F from "./index240.js";
20
20
  const G = { class: "bb-base-date-picker" }, I = { class: "bb-base-date-picker__body" }, J = { class: "bb-base-date-picker__controls" }, K = {
21
21
  style: { transform: "rotate(180deg)" },
22
22
  viewBox: "0 0 24 24",
package/dist/index210.js CHANGED
@@ -1,21 +1,55 @@
1
- import { getDefaultExportFromCjs as p, commonjsGlobal as s } from "./index256.js";
2
- import { __module as n } from "./index261.js";
3
- (function(u, l) {
4
- (function(c, e) {
5
- u.exports = e();
6
- })(s, function() {
7
- return function(c, e, r) {
8
- r.updateLocale = function(f, o) {
9
- var t = r.Ls[f];
10
- if (t) return (o ? Object.keys(o) : []).forEach(function(a) {
11
- t[a] = o[a];
12
- }), t;
13
- };
1
+ import { defineComponent as f, ref as d, openBlock as r, createElementBlock as _, renderSlot as e, createElementVNode as t, createBlock as s, unref as p, createCommentVNode as i, createVNode as c } from "vue";
2
+ /* empty css */
3
+ /* empty css */
4
+ import a from "./index126.js";
5
+ /* empty css */
6
+ import $ from "./index128.js";
7
+ /* empty css */
8
+ import b from "./index304.js";
9
+ const y = { class: "bb-common-input-inner-container__prefix" }, k = { class: "bb-common-input-inner-container__suffix" }, S = /* @__PURE__ */ f({
10
+ __name: "CommonInputInnerContainer",
11
+ props: {
12
+ "append:icon": {},
13
+ "prepend:icon": {},
14
+ preventFocus: { type: Boolean }
15
+ },
16
+ setup(m) {
17
+ const u = m, o = d(), l = () => {
18
+ var n;
19
+ !o.value || u.preventFocus || (n = o.value.querySelector("input")) == null || n.focus();
14
20
  };
15
- });
16
- })(n);
17
- var i = n.exports;
18
- const x = /* @__PURE__ */ p(i);
21
+ return (n, C) => (r(), _("span", {
22
+ ref_key: "container",
23
+ ref: o,
24
+ class: "bb-common-input-inner-container",
25
+ onClick: l
26
+ }, [
27
+ e(n.$slots, "prepend", {}, () => [
28
+ t("span", y, [
29
+ e(n.$slots, "prefix")
30
+ ])
31
+ ]),
32
+ n.$props["prepend:icon"] ? (r(), s(p(a), {
33
+ key: 0,
34
+ class: "bb-common-input-inner-container__prepend-icon",
35
+ type: n.$props["prepend:icon"]
36
+ }, null, 8, ["type"])) : i("", !0),
37
+ e(n.$slots, "default"),
38
+ n.$props["append:icon"] ? (r(), s(p(a), {
39
+ key: 1,
40
+ class: "bb-common-input-inner-container__append-icon",
41
+ type: n.$props["append:icon"]
42
+ }, null, 8, ["type"])) : i("", !0),
43
+ c(p($)),
44
+ c(b),
45
+ e(n.$slots, "append", {}, () => [
46
+ t("span", k, [
47
+ e(n.$slots, "suffix")
48
+ ])
49
+ ])
50
+ ], 512));
51
+ }
52
+ });
19
53
  export {
20
- x as default
54
+ S as default
21
55
  };
package/dist/index212.js CHANGED
@@ -1,5 +1,15 @@
1
- import { hash as o } from "./index267.js";
2
- const t = (r, h = "bb") => `${h}${o(r)}`;
1
+ import { openBlock as t, createElementBlock as n, renderSlot as e } from "vue";
2
+ /* empty css */
3
+ import r from "./index256.js";
4
+ const s = {}, c = { class: "bb-common-input-outer-container" };
5
+ function p(o, a) {
6
+ return t(), n("span", c, [
7
+ e(o.$slots, "prepend-outer"),
8
+ e(o.$slots, "default"),
9
+ e(o.$slots, "append-outer")
10
+ ]);
11
+ }
12
+ const i = /* @__PURE__ */ r(s, [["render", p]]);
3
13
  export {
4
- t as hash
14
+ i as default
5
15
  };
package/dist/index213.js CHANGED
@@ -1,4 +1,22 @@
1
- const e = (t) => t[t.length - 1];
1
+ import { MaskInput as r } from "./index257.js";
2
+ const u = /* @__PURE__ */ new WeakMap(), p = (a, n) => {
3
+ if (a.arg == null || a.instance == null) return;
4
+ const s = "setup" in a.instance.$.type;
5
+ a.arg in a.instance ? a.instance[a.arg] = n : s && console.warn("Maska: please expose `%s` using defineExpose", a.arg);
6
+ }, k = (a, n) => {
7
+ var s;
8
+ const t = a instanceof HTMLInputElement ? a : a.querySelector("input");
9
+ if (t == null || (t == null ? void 0 : t.type) === "file") return;
10
+ let e = {};
11
+ if (n.value != null && (e = typeof n.value == "string" ? { mask: n.value } : { ...n.value }), n.arg != null) {
12
+ const l = (o) => {
13
+ const i = n.modifiers.unmasked ? o.unmasked : n.modifiers.completed ? o.completed : o.masked;
14
+ p(n, i);
15
+ };
16
+ e.onMaska = e.onMaska == null ? l : Array.isArray(e.onMaska) ? [...e.onMaska, l] : [e.onMaska, l];
17
+ }
18
+ u.has(t) ? (s = u.get(t)) == null || s.update(e) : u.set(t, new r(t, e));
19
+ };
2
20
  export {
3
- e as last
21
+ k as vMaska
4
22
  };
package/dist/index214.js CHANGED
@@ -1,10 +1,6 @@
1
- const o = "bitboss-ui | ", e = () => ({
2
- warn: (r) => console.warn(`${o}${r}`),
3
- error: (r) => console.error(`${o}${r}`),
4
- throw: (r) => {
5
- throw new Error(`${o}${r}`);
6
- }
7
- });
1
+ function x(e) {
2
+ return /^#([A-Fa-f0-9]{6})$/.test(e);
3
+ }
8
4
  export {
9
- e as useLogger
5
+ x as isHex
10
6
  };
package/dist/index215.js CHANGED
@@ -1,251 +1,160 @@
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 "./index304.js";
3
- import { identity as be } from "./index229.js";
4
- import { isNotNil as me } from "./index134.js";
5
- import { last as ge } from "./index213.js";
6
- import { sort as T } from "./index305.js";
7
- import b from "./index206.js";
8
- import he from "./index218.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");
1
+ import { ref as a, computed as r, onBeforeMount as Y, onBeforeUnmount as Z, watch as H, nextTick as N } from "vue";
2
+ import { last as _ } from "./index229.js";
3
+ import { useArray as Q } from "./index263.js";
4
+ import { uniqBy as $ } from "./index264.js";
5
+ import { useItemValue as ee } from "./index265.js";
6
+ import { useItemText as te } from "./index266.js";
7
+ import { hash as v } from "./index235.js";
8
+ import { isNotNil as q } from "./index134.js";
9
+ import { waitFor as le } from "./index207.js";
10
+ import { isNil as oe } from "./index129.js";
11
+ const he = (l) => {
12
+ const i = a(""), F = a(), u = (e) => {
13
+ F.value = e, l.emit("update:modelValue", e);
14
+ }, d = a([]), {
15
+ array: k,
16
+ add: E,
17
+ remove: P,
18
+ set: y
19
+ } = Q(), {
20
+ array: S,
21
+ add: j,
22
+ remove: J
23
+ } = Q(), { getItemText: L } = te(), { getItemValue: U } = ee(), O = (e) => {
24
+ const t = !!(l.disabled.value || e.disabled), o = L(e, l.itemText), n = U(e, l.itemValue);
25
+ if (n === void 0)
26
+ throw new Error(
27
+ 'The result of extracting "value" from option was undefined. Affected item is ' + JSON.stringify(e) + " please check itemValue property is correct."
28
+ );
29
+ const X = v(n);
30
+ return {
31
+ item: e,
32
+ text: o,
33
+ value: n,
34
+ valueHash: X,
35
+ disabled: t,
36
+ selected: !1
76
37
  };
77
- le(
78
- () => a.cursor,
79
- (e, r) => {
80
- K(e, r);
81
- }
38
+ }, T = (e) => (e.selected = q(b.value[e.valueHash]), e), V = r(() => {
39
+ const e = [].concat(
40
+ d.value.map((t) => T(O(t))),
41
+ S.value.map(T),
42
+ k.value.map(T)
82
43
  );
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);
44
+ return $(e, (t) => t.valueHash);
45
+ }), z = (e) => {
46
+ l.multiple ? (u(l.modelValue.value.concat(e.value)), l.stash && E(e), l.resetQueryOnOptionSelected && s()) : (l.stash && y(e), u(e.value), N(() => s()));
47
+ }, G = async (e) => {
48
+ if (J((t) => t.valueHash !== e.valueHash), P((t) => t.valueHash !== e.valueHash), l.multiple) {
49
+ const t = { ...b.value };
50
+ delete t[e.valueHash], u(Object.values(t));
51
+ } else
52
+ u(null), await N(), s();
53
+ }, b = r(() => {
54
+ const e = {}, t = [].concat(l.modelValue.value);
55
+ for (let o = 0; o < t.length; o++) {
56
+ const n = t[o];
57
+ e[v(n)] = n;
58
+ }
59
+ return e;
60
+ }), g = async ({ prefill: e = !1 }) => {
61
+ let t = [];
62
+ if (Array.isArray(l.items.value))
63
+ t = l.items.value;
64
+ else if (typeof l.items.value == "function") {
65
+ const o = ++c.value;
66
+ try {
67
+ t = await l.items.value(
68
+ i.value,
69
+ e,
70
+ l.modelValue.value
71
+ ), o < c.value && (await le(() => o === c.value), t = d.value);
72
+ } catch (n) {
73
+ console.error(n);
151
74
  }
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();
75
+ c.value--;
76
+ }
77
+ d.value = t;
78
+ }, B = r(() => {
79
+ const e = {};
80
+ for (let t = 0; t < V.value.length; t++) {
81
+ const o = V.value[t], { valueHash: n } = o;
82
+ e[n] = o;
83
+ }
84
+ return {
85
+ get: (t) => e[v(t)]
164
86
  };
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
- });
87
+ }), f = r(() => [].concat(l.modelValue.value).reduce((e, t) => {
88
+ const o = B.value.get(t);
89
+ return o && e.push(o), e;
90
+ }, [])), C = (e) => q(B.value.get(e)), s = () => {
91
+ if (l.multiple) {
92
+ i.value = "";
93
+ return;
94
+ }
95
+ let e;
96
+ f.value && (e = _(f.value)), i.value = (e == null ? void 0 : e.text) || "";
97
+ }, K = () => {
98
+ const e = i.value.trim(), t = O(e);
99
+ j(t), s();
100
+ }, c = a(0), M = r(() => [].concat(l.modelValue.value).reduce(
101
+ (e, t) => (C(t) ? e.coherent.push(t) : e.incoherent.push(t), e),
102
+ { coherent: [], incoherent: [] }
103
+ )), A = r(() => l.multiple && !l.modelValue.value.length || !l.multiple && oe(l.modelValue.value) ? !0 : !M.value.incoherent.length), R = () => {
104
+ l.enforceCoherence && !A.value && (l.multiple ? u(M.value.coherent) : u(null));
105
+ }, p = a(!1), I = a(!1), m = async () => {
106
+ I.value = !0, await g({ prefill: !0 }), R(), s(), p.value = !0, I.value = !1;
107
+ };
108
+ Y(async () => {
109
+ l.prefill && (await m(), l.stash && y(...f.value));
110
+ });
111
+ let h;
112
+ const W = () => {
113
+ h && clearTimeout(h), h = setTimeout(async () => {
114
+ try {
115
+ await g({ prefill: !1 });
116
+ } catch (e) {
117
+ console.error(e);
118
+ }
119
+ }, l.queryDebounceTime);
120
+ };
121
+ Z(() => clearTimeout(h));
122
+ let x;
123
+ H(
124
+ () => l.modelValue.value,
125
+ () => {
126
+ A.value || (x && clearTimeout(x), x = setTimeout(async () => {
127
+ m();
128
+ }, l.modelValueDebounceTime));
129
+ }
130
+ );
131
+ let w;
132
+ const D = async (e, t) => {
133
+ v(t) !== v(e) && p.value && (w && clearTimeout(w), w = setTimeout(async () => {
134
+ await m();
135
+ }, l.depsDebounceTime));
136
+ };
137
+ return H(() => l.items.value, D), H(() => l.dependencies.value, D), {
138
+ addCurrentQueryToManualItems: K,
139
+ alignQueryToState: s,
140
+ getOptions: g,
141
+ hasPrefilled: p,
142
+ innerLoading: c,
143
+ isPrefilling: I,
144
+ manualItems: S,
145
+ options: V,
146
+ prefillItems: m,
147
+ query: i,
148
+ searchByQuery: W,
149
+ selectedOptions: f,
150
+ selectOption: z,
151
+ setStash: y,
152
+ unselectOption: G,
153
+ updateModelValue: u,
154
+ valueIsSelected: C,
155
+ internalItems: d
156
+ };
157
+ };
249
158
  export {
250
- Ce as default
159
+ he as useOptions
251
160
  };