bitboss-ui 0.2.55 → 0.2.57

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 (148) hide show
  1. package/dist/index101.js +2 -2
  2. package/dist/index103.js +2 -2
  3. package/dist/index109.js +1 -1
  4. package/dist/index11.js +2 -2
  5. package/dist/index111.js +4 -4
  6. package/dist/index113.js +1 -1
  7. package/dist/index116.js +1 -1
  8. package/dist/index117.js +1 -1
  9. package/dist/index118.js +1 -1
  10. package/dist/index119.js +1 -1
  11. package/dist/index125.js +1 -1
  12. package/dist/index126.js +1 -1
  13. package/dist/index127.js +1 -1
  14. package/dist/index131.js +2 -2
  15. package/dist/index15.js +8 -8
  16. package/dist/index17.js +9 -9
  17. package/dist/index19.js +3 -3
  18. package/dist/index197.js +346 -213
  19. package/dist/index197.js.map +1 -1
  20. package/dist/index198.js +134 -10
  21. package/dist/index198.js.map +1 -1
  22. package/dist/index199.js +5 -2
  23. package/dist/index199.js.map +1 -1
  24. package/dist/index200.js +19 -4
  25. package/dist/index200.js.map +1 -1
  26. package/dist/index201.js +2 -368
  27. package/dist/index201.js.map +1 -1
  28. package/dist/index202.js +2 -134
  29. package/dist/index202.js.map +1 -1
  30. package/dist/index203.js +174 -5
  31. package/dist/index203.js.map +1 -1
  32. package/dist/index204.js +23 -19
  33. package/dist/index204.js.map +1 -1
  34. package/dist/index205.js +373 -2
  35. package/dist/index205.js.map +1 -1
  36. package/dist/index206.js +2 -2
  37. package/dist/index206.js.map +1 -1
  38. package/dist/index207.js +4 -174
  39. package/dist/index207.js.map +1 -1
  40. package/dist/index208.js +3 -23
  41. package/dist/index208.js.map +1 -1
  42. package/dist/index209.js +3 -373
  43. package/dist/index209.js.map +1 -1
  44. package/dist/index21.js +2 -2
  45. package/dist/index210.js +3 -3
  46. package/dist/index210.js.map +1 -1
  47. package/dist/index211.js +35 -3
  48. package/dist/index211.js.map +1 -1
  49. package/dist/index212.js +6 -2
  50. package/dist/index212.js.map +1 -1
  51. package/dist/index213.js +2 -16
  52. package/dist/index213.js.map +1 -1
  53. package/dist/index214.js +10 -16
  54. package/dist/index214.js.map +1 -1
  55. package/dist/index215.js +13 -17
  56. package/dist/index215.js.map +1 -1
  57. package/dist/index216.js +13 -26
  58. package/dist/index216.js.map +1 -1
  59. package/dist/index217.js +20 -8
  60. package/dist/index217.js.map +1 -1
  61. package/dist/index218.js +29 -3
  62. package/dist/index218.js.map +1 -1
  63. package/dist/index219.js +8 -35
  64. package/dist/index219.js.map +1 -1
  65. package/dist/index220.js +2 -6
  66. package/dist/index220.js.map +1 -1
  67. package/dist/index221.js +235 -2
  68. package/dist/index221.js.map +1 -1
  69. package/dist/index222.js +6 -9
  70. package/dist/index222.js.map +1 -1
  71. package/dist/index223.js +16 -120
  72. package/dist/index223.js.map +1 -1
  73. package/dist/index224.js +9 -6
  74. package/dist/index224.js.map +1 -1
  75. package/dist/index225.js +120 -16
  76. package/dist/index225.js.map +1 -1
  77. package/dist/index226.js +1 -1
  78. package/dist/index227.js +6 -2
  79. package/dist/index227.js.map +1 -1
  80. package/dist/index228.js +2 -160
  81. package/dist/index228.js.map +1 -1
  82. package/dist/index229.js +297 -1
  83. package/dist/index229.js.map +1 -1
  84. package/dist/index230.js +2 -69
  85. package/dist/index230.js.map +1 -1
  86. package/dist/index231.js +2 -5
  87. package/dist/index231.js.map +1 -1
  88. package/dist/index232.js +116 -3
  89. package/dist/index232.js.map +1 -1
  90. package/dist/index233.js +105 -5
  91. package/dist/index233.js.map +1 -1
  92. package/dist/index234.js +4 -2
  93. package/dist/index234.js.map +1 -1
  94. package/dist/index235.js +223 -294
  95. package/dist/index235.js.map +1 -1
  96. package/dist/index236.js +258 -2
  97. package/dist/index236.js.map +1 -1
  98. package/dist/index237.js +2 -2
  99. package/dist/index237.js.map +1 -1
  100. package/dist/index238.js +428 -110
  101. package/dist/index238.js.map +1 -1
  102. package/dist/index239.js +88 -105
  103. package/dist/index239.js.map +1 -1
  104. package/dist/index240.js +200 -224
  105. package/dist/index240.js.map +1 -1
  106. package/dist/index241.js +2 -258
  107. package/dist/index241.js.map +1 -1
  108. package/dist/index242.js +2 -2
  109. package/dist/index243.js +2 -15
  110. package/dist/index243.js.map +1 -1
  111. package/dist/index245.js +69 -2
  112. package/dist/index245.js.map +1 -1
  113. package/dist/index246.js +5 -2
  114. package/dist/index246.js.map +1 -1
  115. package/dist/index247.js +15 -2
  116. package/dist/index247.js.map +1 -1
  117. package/dist/index248.js +151 -426
  118. package/dist/index248.js.map +1 -1
  119. package/dist/index249.js +1 -91
  120. package/dist/index249.js.map +1 -1
  121. package/dist/index25.js +2 -2
  122. package/dist/index250.js +4 -200
  123. package/dist/index250.js.map +1 -1
  124. package/dist/index251.js +4 -4
  125. package/dist/index251.js.map +1 -1
  126. package/dist/index252.js +61 -4
  127. package/dist/index252.js.map +1 -1
  128. package/dist/index253.js +2 -61
  129. package/dist/index253.js.map +1 -1
  130. package/dist/index254.js +2 -3
  131. package/dist/index254.js.map +1 -1
  132. package/dist/index255.js +3 -2
  133. package/dist/index255.js.map +1 -1
  134. package/dist/index29.js +3 -3
  135. package/dist/index31.js +5 -5
  136. package/dist/index33.js +1 -1
  137. package/dist/index35.js +2 -2
  138. package/dist/index47.js +1 -1
  139. package/dist/index49.js +1 -1
  140. package/dist/index65.js +5 -5
  141. package/dist/index69.js +2 -2
  142. package/dist/index72.js +1 -1
  143. package/dist/index75.js +1 -1
  144. package/dist/index79.js +4 -4
  145. package/dist/index8.js +54 -54
  146. package/dist/index8.js.map +1 -1
  147. package/dist/style.css +1 -1
  148. package/package.json +1 -1
package/dist/index253.js CHANGED
@@ -1,64 +1,5 @@
1
- var o = function(a, e, s, t) {
2
- if (s === "a" && !t)
3
- throw new TypeError("Private accessor was defined without a getter");
4
- if (typeof e == "function" ? a !== e || !t : !e.has(a))
5
- throw new TypeError("Cannot read private member from an object whose class did not declare it");
6
- return s === "m" ? t : s === "a" ? t.call(a) : t ? t.value : e.get(a);
7
- }, r, l, i;
8
- class d {
9
- constructor(...e) {
10
- r.set(this, /* @__PURE__ */ new Map()), l.set(this, /* @__PURE__ */ new Map()), i.set(this, /* @__PURE__ */ new Map());
11
- for (const s of e)
12
- this.define(s);
13
- }
14
- define(e, s = !1) {
15
- for (let [t, f] of Object.entries(e)) {
16
- t = t.toLowerCase(), f = f.map((n) => n.toLowerCase()), o(this, i, "f").has(t) || o(this, i, "f").set(t, /* @__PURE__ */ new Set());
17
- const h = o(this, i, "f").get(t);
18
- let u = !0;
19
- for (let n of f) {
20
- const w = n.startsWith("*");
21
- if (n = w ? n.slice(1) : n, h == null || h.add(n), u && o(this, l, "f").set(t, n), u = !1, w)
22
- continue;
23
- const c = o(this, r, "f").get(n);
24
- if (c && c != t && !s)
25
- throw new Error(`"${t} -> ${n}" conflicts with "${c} -> ${n}". Pass \`force=true\` to override this definition.`);
26
- o(this, r, "f").set(n, t);
27
- }
28
- }
29
- return this;
30
- }
31
- getType(e) {
32
- if (typeof e != "string")
33
- return null;
34
- const s = e.replace(/^.*[/\\]/, "").toLowerCase(), t = s.replace(/^.*\./, "").toLowerCase(), f = s.length < e.length;
35
- return !(t.length < s.length - 1) && f ? null : o(this, r, "f").get(t) ?? null;
36
- }
37
- getExtension(e) {
38
- var s;
39
- return typeof e != "string" ? null : (e = (s = e == null ? void 0 : e.split) == null ? void 0 : s.call(e, ";")[0], (e && o(this, l, "f").get(e.trim().toLowerCase())) ?? null);
40
- }
41
- getAllExtensions(e) {
42
- return typeof e != "string" ? null : o(this, i, "f").get(e.toLowerCase()) ?? null;
43
- }
44
- _freeze() {
45
- this.define = () => {
46
- throw new Error("define() not allowed for built-in Mime objects. See https://github.com/broofa/mime/blob/main/README.md#custom-mime-instances");
47
- }, Object.freeze(this);
48
- for (const e of o(this, i, "f").values())
49
- Object.freeze(e);
50
- return this;
51
- }
52
- _getTestState() {
53
- return {
54
- types: o(this, r, "f"),
55
- extensions: o(this, l, "f")
56
- };
57
- }
58
- }
59
- r = /* @__PURE__ */ new WeakMap(), l = /* @__PURE__ */ new WeakMap(), i = /* @__PURE__ */ new WeakMap();
60
- const g = d;
1
+ import e from "./index221.js";
61
2
  export {
62
- g as default
3
+ e as default
63
4
  };
64
5
  //# sourceMappingURL=index253.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index253.js","sources":["../node_modules/mime/dist/src/Mime.js"],"sourcesContent":["var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n};\nvar _Mime_extensionToType, _Mime_typeToExtension, _Mime_typeToExtensions;\nclass Mime {\n constructor(...args) {\n _Mime_extensionToType.set(this, new Map());\n _Mime_typeToExtension.set(this, new Map());\n _Mime_typeToExtensions.set(this, new Map());\n for (const arg of args) {\n this.define(arg);\n }\n }\n define(typeMap, force = false) {\n for (let [type, extensions] of Object.entries(typeMap)) {\n type = type.toLowerCase();\n extensions = extensions.map((ext) => ext.toLowerCase());\n if (!__classPrivateFieldGet(this, _Mime_typeToExtensions, \"f\").has(type)) {\n __classPrivateFieldGet(this, _Mime_typeToExtensions, \"f\").set(type, new Set());\n }\n const allExtensions = __classPrivateFieldGet(this, _Mime_typeToExtensions, \"f\").get(type);\n let first = true;\n for (let extension of extensions) {\n const starred = extension.startsWith('*');\n extension = starred ? extension.slice(1) : extension;\n allExtensions?.add(extension);\n if (first) {\n __classPrivateFieldGet(this, _Mime_typeToExtension, \"f\").set(type, extension);\n }\n first = false;\n if (starred)\n continue;\n const currentType = __classPrivateFieldGet(this, _Mime_extensionToType, \"f\").get(extension);\n if (currentType && currentType != type && !force) {\n throw new Error(`\"${type} -> ${extension}\" conflicts with \"${currentType} -> ${extension}\". Pass \\`force=true\\` to override this definition.`);\n }\n __classPrivateFieldGet(this, _Mime_extensionToType, \"f\").set(extension, type);\n }\n }\n return this;\n }\n getType(path) {\n if (typeof path !== 'string')\n return null;\n const last = path.replace(/^.*[/\\\\]/, '').toLowerCase();\n const ext = last.replace(/^.*\\./, '').toLowerCase();\n const hasPath = last.length < path.length;\n const hasDot = ext.length < last.length - 1;\n if (!hasDot && hasPath)\n return null;\n return __classPrivateFieldGet(this, _Mime_extensionToType, \"f\").get(ext) ?? null;\n }\n getExtension(type) {\n if (typeof type !== 'string')\n return null;\n type = type?.split?.(';')[0];\n return ((type && __classPrivateFieldGet(this, _Mime_typeToExtension, \"f\").get(type.trim().toLowerCase())) ?? null);\n }\n getAllExtensions(type) {\n if (typeof type !== 'string')\n return null;\n return __classPrivateFieldGet(this, _Mime_typeToExtensions, \"f\").get(type.toLowerCase()) ?? null;\n }\n _freeze() {\n this.define = () => {\n throw new Error('define() not allowed for built-in Mime objects. See https://github.com/broofa/mime/blob/main/README.md#custom-mime-instances');\n };\n Object.freeze(this);\n for (const extensions of __classPrivateFieldGet(this, _Mime_typeToExtensions, \"f\").values()) {\n Object.freeze(extensions);\n }\n return this;\n }\n _getTestState() {\n return {\n types: __classPrivateFieldGet(this, _Mime_extensionToType, \"f\"),\n extensions: __classPrivateFieldGet(this, _Mime_typeToExtension, \"f\"),\n };\n }\n}\n_Mime_extensionToType = new WeakMap(), _Mime_typeToExtension = new WeakMap(), _Mime_typeToExtensions = new WeakMap();\nexport default Mime;\n//# sourceMappingURL=Mime.js.map"],"names":["__classPrivateFieldGet","receiver","state","kind","f","_Mime_extensionToType","_Mime_typeToExtension","_Mime_typeToExtensions","Mime","args","arg","typeMap","force","type","extensions","ext","allExtensions","first","extension","starred","currentType","path","last","hasPath","_a","Mime$1"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index253.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
package/dist/index254.js CHANGED
@@ -1,6 +1,5 @@
1
- import o from "./index228.js";
2
- import "./index229.js";
1
+ import f from "./index245.js";
3
2
  export {
4
- o as default
3
+ f as default
5
4
  };
6
5
  //# sourceMappingURL=index254.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index254.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
1
+ {"version":3,"file":"index254.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
package/dist/index255.js CHANGED
@@ -1,5 +1,6 @@
1
- import f from "./index230.js";
1
+ import o from "./index248.js";
2
+ import "./index249.js";
2
3
  export {
3
- f as default
4
+ o as default
4
5
  };
5
6
  //# sourceMappingURL=index255.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index255.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
1
+ {"version":3,"file":"index255.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
package/dist/index29.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { defineComponent as C, ref as b, computed as f, openBlock as l, createElementBlock as i, mergeProps as g, createElementVNode as r, Fragment as I, renderList as V, normalizeClass as B, toDisplayString as h, renderSlot as x } from "vue";
2
- import { booleanishToBoolean as M } from "./index221.js";
3
- import { identity as F } from "./index205.js";
4
- import { isCssColor as p } from "./index199.js";
2
+ import { booleanishToBoolean as M } from "./index220.js";
3
+ import { identity as F } from "./index201.js";
4
+ import { isCssColor as p } from "./index206.js";
5
5
  import { isNotNil as T } from "./index124.js";
6
6
  const H = { class: "bb-base-rating__inner-container" }, D = { class: "bb-base-rating__label-text" }, N = ["id", "autofocus", "checked", "disabled", "name", "value"], j = ["height", "width"], A = /* @__PURE__ */ r("path", {
7
7
  d: "m8.243 7.34l-6.38.925l-.113.023a1 1 0 0 0-.44 1.684l4.622 4.499l-1.09 6.355l-.013.11a1 1 0 0 0 1.464.944l5.706-3l5.693 3l.1.046a1 1 0 0 0 1.352-1.1l-1.091-6.355l4.624-4.5l.078-.085a1 1 0 0 0-.633-1.62l-6.38-.926l-2.852-5.78a1 1 0 0 0-1.794 0L8.243 7.34z",
package/dist/index31.js CHANGED
@@ -3,16 +3,16 @@ import ze from "./index115.js";
3
3
  import "./index158.js";
4
4
  import He from "./index119.js";
5
5
  import "./index185.js";
6
- import { autoUpdate as Pe, computePosition as je, flip as Qe, shift as Ue } from "./index201.js";
6
+ import { autoUpdate as Pe, computePosition as je, flip as Qe, shift as Ue } from "./index197.js";
7
7
  import { deepEqual as oe } from "./index123.js";
8
- import { head as We } from "./index212.js";
8
+ import { head as We } from "./index213.js";
9
9
  import { isNotNil as I } from "./index124.js";
10
- import { last as Re } from "./index206.js";
10
+ import { last as Re } from "./index202.js";
11
11
  import { useItemText as Ke } from "./index125.js";
12
12
  import { useItemValue as Ye } from "./index126.js";
13
13
  import { wait as q } from "./index122.js";
14
- import { when as Ze } from "./index200.js";
15
- import { offset as Ge } from "./index209.js";
14
+ import { when as Ze } from "./index207.js";
15
+ import { offset as Ge } from "./index205.js";
16
16
  const Xe = { class: "bb-base-select__input-container" }, el = ["id", "autocomplete", "autofocus", "disabled", "placeholder", "readonly"], ll = {
17
17
  key: 0,
18
18
  class: "bb-base-select__loading-container"
package/dist/index33.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { defineComponent as R, ref as l, onMounted as S, watchEffect as z, computed as y, openBlock as D, createElementBlock as F, mergeProps as h, renderSlot as g, createElementVNode as t, normalizeProps as H, guardReactiveProps as T, normalizeStyle as E, unref as X } from "vue";
2
2
  import { clamp as K } from "./index196.js";
3
- import { isCssColor as w } from "./index199.js";
3
+ import { isCssColor as w } from "./index206.js";
4
4
  import { isNil as O } from "./index120.js";
5
5
  import { transposeValue as L } from "./index121.js";
6
6
  const Y = { class: "bb-base-slider__slider-container" }, j = ["id", "disabled", "name", "readonly", "value"], q = ["aria-readonly", "aria-valuemax", "aria-valuemin", "aria-valuenow", "tabindex"], W = /* @__PURE__ */ R({
package/dist/index35.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { defineComponent as I, ref as b, computed as n, watch as F, openBlock as m, createElementBlock as p, normalizeClass as N, normalizeProps as c, mergeProps as h, createCommentVNode as S, createElementVNode as l, renderSlot as x, guardReactiveProps as f } from "vue";
2
- import { isCssColor as V } from "./index199.js";
3
- import { when as A } from "./index200.js";
2
+ import { isCssColor as V } from "./index206.js";
3
+ import { when as A } from "./index207.js";
4
4
  const J = { class: "bb-base-switch-container" }, M = /* @__PURE__ */ l("span", { class: "bb-base-switch-container__icon-thumb" }, null, -1), O = [
5
5
  M
6
6
  ], H = /* @__PURE__ */ I({
package/dist/index47.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as p, computed as u, ref as d, watch as f, openBlock as a, createElementBlock as l, normalizeProps as b, guardReactiveProps as z, createElementVNode as v, renderSlot as g, createCommentVNode as h } from "vue";
2
- import { isCssColor as _ } from "./index199.js";
2
+ import { isCssColor as _ } from "./index206.js";
3
3
  const k = { class: "bb-avatar__fallback" }, C = ["alt", "sizes", "src", "srcset"], B = /* @__PURE__ */ p({
4
4
  __name: "BbAvatar",
5
5
  props: {
package/dist/index49.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as p, useSlots as d, computed as n, openBlock as m, createElementBlock as u, normalizeClass as g, createElementVNode as s, renderSlot as l, mergeProps as f, createTextVNode as _, toDisplayString as y } from "vue";
2
- import { isCssColor as r } from "./index199.js";
2
+ import { isCssColor as r } from "./index206.js";
3
3
  import { isNil as B } from "./index120.js";
4
4
  const C = { class: "bb-badge__wrapper" }, h = { class: "bb-badge__content-inner" }, S = /* @__PURE__ */ p({
5
5
  __name: "BbBadge",
package/dist/index65.js CHANGED
@@ -1,13 +1,13 @@
1
1
  import { defineComponent as Y, computed as M, ref as v, openBlock as D, createElementBlock as H, mergeProps as S, createElementVNode as h, renderSlot as y, normalizeProps as Z, guardReactiveProps as ee, unref as c, createBlock as te, Teleport as oe, normalizeClass as ne, normalizeStyle as z, Fragment as N, renderList as ae, createVNode as le, withCtx as se, createCommentVNode as ie } from "vue";
2
- import { findRightIndex as I } from "./index222.js";
3
- import { useFloating as re, arrow as ue } from "./index223.js";
2
+ import { findRightIndex as I } from "./index224.js";
3
+ import { useFloating as re, arrow as ue } from "./index225.js";
4
4
  import { useId as de } from "./index7.js";
5
5
  import { wait as U } from "./index122.js";
6
6
  import ce from "./index9.js";
7
7
  import "./index10.js";
8
- import V from "./index208.js";
9
- import { autoUpdate as fe, flip as pe, shift as be } from "./index201.js";
10
- import { offset as me } from "./index209.js";
8
+ import V from "./index204.js";
9
+ import { autoUpdate as fe, flip as pe, shift as be } from "./index197.js";
10
+ import { offset as me } from "./index205.js";
11
11
  const ve = ["id", "aria-labelledby"], we = { class: "bb-dropdown__items-container" }, Me = /* @__PURE__ */ Y({
12
12
  __name: "BbDropdown",
13
13
  props: {
package/dist/index69.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as j, ref as g, watch as x, computed as m, openBlock as V, createBlock as G, resolveDynamicComponent as K, normalizeClass as O, withCtx as M, createElementVNode as c, withModifiers as y, renderSlot as U, normalizeProps as Y, guardReactiveProps as Z, createTextVNode as J, unref as Q, createVNode as W, createElementBlock as F, Fragment as X, renderList as ee, toDisplayString as te } from "vue";
2
- import { findInTree as ae } from "./index225.js";
2
+ import { findInTree as ae } from "./index223.js";
3
3
  import { useId as re } from "./index7.js";
4
4
  import oe from "./index118.js";
5
5
  import "./index183.js";
@@ -57,7 +57,7 @@ const le = ["accept", "autofocus", "disabled", "multiple"], se = {
57
57
  if (r.includes("/"))
58
58
  e.push(r);
59
59
  else {
60
- b || (b = (await import("./index224.js")).default);
60
+ b || (b = (await import("./index222.js")).default);
61
61
  const o = b.getType(r);
62
62
  if (!o)
63
63
  throw new Error(
package/dist/index72.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as h, ref as t, onMounted as m, onBeforeUnmount as p, openBlock as g, createBlock as b, resolveDynamicComponent as w, withCtx as _, renderSlot as I } from "vue";
2
- import { throttle as c } from "./index218.js";
2
+ import { throttle as c } from "./index210.js";
3
3
  const M = /* @__PURE__ */ h({
4
4
  __name: "BbIntersection",
5
5
  props: {
package/dist/index75.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as q, ref as s, useAttrs as G, computed as m, onMounted as J, watch as Q, onBeforeUnmount as X, openBlock as y, createBlock as Y, Teleport as Z, createElementVNode as o, mergeProps as N, createElementBlock as w, renderSlot as l, createTextVNode as ee, toDisplayString as z, createCommentVNode as B, nextTick as te } from "vue";
2
- import { useFocusTrap as oe } from "./index219.js";
2
+ import { useFocusTrap as oe } from "./index211.js";
3
3
  import { useId as L } from "./index7.js";
4
4
  import { wait as O } from "./index122.js";
5
5
  const se = { class: "bb-offcanvas-close" }, ae = { class: "bb-offcanvas-close__content" }, ne = { class: "bb-offcanvas-close__label" }, le = /* @__PURE__ */ o("span", { class: "bb-offcanvas-close__icon" }, [
package/dist/index79.js CHANGED
@@ -1,12 +1,12 @@
1
1
  import { defineComponent as V, ref as a, computed as _, openBlock as p, createElementBlock as h, mergeProps as B, createElementVNode as d, renderSlot as P, normalizeProps as I, guardReactiveProps as R, unref as g, createBlock as D, Teleport as U, normalizeClass as W, normalizeStyle as j, createCommentVNode as y, withCtx as G, nextTick as J } from "vue";
2
- import { useFloating as K, arrow as Q } from "./index223.js";
3
- import { useFocusTrap as X } from "./index219.js";
2
+ import { useFloating as K, arrow as Q } from "./index225.js";
3
+ import { useFocusTrap as X } from "./index211.js";
4
4
  import { useId as Y } from "./index7.js";
5
5
  import { wait as E } from "./index122.js";
6
6
  import Z from "./index9.js";
7
7
  import "./index10.js";
8
- import { autoUpdate as ee, flip as oe, shift as te } from "./index201.js";
9
- import { offset as ae } from "./index209.js";
8
+ import { autoUpdate as ee, flip as oe, shift as te } from "./index197.js";
9
+ import { offset as ae } from "./index205.js";
10
10
  const re = ["id"], ne = {
11
11
  key: 1,
12
12
  class: "bb-popover__bubble"
package/dist/index8.js CHANGED
@@ -1,52 +1,52 @@
1
1
  import { copy as D } from "./index127.js";
2
2
  import { reactive as G, watch as v, toValue as H, computed as g, provide as Q } from "vue";
3
- import { isNotNil as a } from "./index124.js";
3
+ import { isNotNil as l } from "./index124.js";
4
4
  import { mapValues as X } from "./index128.js";
5
5
  import { useRoute as Z } from "./index129.js";
6
6
  import { useRouter as _ } from "./index130.js";
7
7
  import { useStepper as ee } from "./index131.js";
8
8
  const te = Symbol(), x = /((step\/)(?<step>[\s\S]+?)(?=[/?]))|((step\/)(?<step2>[\s\S]+))/, O = (i) => {
9
- var r, u;
9
+ var o, a;
10
10
  const e = i.match(x);
11
- return ((r = e == null ? void 0 : e.groups) == null ? void 0 : r.step) ?? ((u = e == null ? void 0 : e.groups) == null ? void 0 : u.step2) ?? null;
11
+ return ((o = e == null ? void 0 : e.groups) == null ? void 0 : o.step) ?? ((a = e == null ? void 0 : e.groups) == null ? void 0 : a.step2) ?? null;
12
12
  }, le = (i) => {
13
13
  if (!i.name)
14
14
  throw new Error(
15
15
  "You need to provide a unique name for the current wizard instance to be used to save data"
16
16
  );
17
- const e = Z(), r = _(), u = i.useNavigation ?? !0, h = i.navigationMode ?? "query", V = i.persist ?? !0;
18
- if (u && (!e.value || !r))
17
+ const e = Z(), o = _(), a = i.useNavigation ?? !0, h = i.navigationMode ?? "query", V = i.persist ?? !0;
18
+ if (a && (!e.value || !o))
19
19
  throw new Error(
20
20
  "Navigation is enabled but could not retrieve the router instance in useWizard."
21
21
  );
22
- const q = D(i.initialState), l = G(
22
+ const q = D(i.initialState), p = G(
23
23
  V && sessionStorage.getItem(i.name) ? {
24
24
  ...q,
25
25
  ...JSON.parse(sessionStorage.getItem(i.name))
26
26
  } : q
27
27
  );
28
- V && v(l, () => {
29
- sessionStorage.setItem(i.name, JSON.stringify(l));
28
+ V && v(p, () => {
29
+ sessionStorage.setItem(i.name, JSON.stringify(p));
30
30
  });
31
- const w = H(i.steps), o = g(
31
+ const w = H(i.steps), r = g(
32
32
  () => Object.entries(w).reduce(
33
- (t, [s, n]) => (n.condition && !n.condition(l) || (t[s] = { ...n, key: s }), t),
33
+ (t, [s, n]) => (n.condition && !n.condition(p) || (t[s] = { ...n, key: s }), t),
34
34
  {}
35
35
  )
36
36
  ), m = g(
37
37
  () => X(
38
- o.value,
38
+ r.value,
39
39
  (t) => typeof t.isValid == "function" ? {
40
40
  ...t,
41
- isValid: t.isValid(l)
41
+ isValid: t.isValid(p)
42
42
  } : {
43
43
  ...t,
44
44
  isValid: t.isValid ?? !0
45
45
  }
46
46
  )
47
47
  );
48
- let p = null;
49
- if (u && a(e.value)) {
48
+ let c = null;
49
+ if (a && l(e.value)) {
50
50
  let t = null;
51
51
  if (h === "query")
52
52
  e.value.query.step && (t = e.value.query.step);
@@ -54,15 +54,15 @@ const te = Symbol(), x = /((step\/)(?<step>[\s\S]+?)(?=[/?]))|((step\/)(?<step2>
54
54
  const s = O(e.value.fullPath);
55
55
  s && (t = s);
56
56
  }
57
- p = t;
57
+ c = t;
58
58
  }
59
- if (p)
60
- for (const t in o.value) {
61
- if (t === p)
59
+ if (c)
60
+ for (const t in r.value) {
61
+ if (t === c)
62
62
  break;
63
63
  const s = m.value[t];
64
64
  if (!s || !s.isValid) {
65
- p = null;
65
+ c = null;
66
66
  break;
67
67
  }
68
68
  }
@@ -78,21 +78,21 @@ const te = Symbol(), x = /((step\/)(?<step>[\s\S]+?)(?=[/?]))|((step\/)(?<step2>
78
78
  goBackTo: I,
79
79
  isAfter: M,
80
80
  isBefore: U,
81
- isCurrent: B,
82
- isFirst: C,
83
- isLast: E,
84
- isNext: J,
85
- isPrevious: R,
86
- next: W,
87
- previous: $,
81
+ isCurrent: $,
82
+ isFirst: B,
83
+ isLast: C,
84
+ isNext: E,
85
+ isPrevious: J,
86
+ next: R,
87
+ previous: W,
88
88
  stepNames: L
89
89
  } = ee(
90
90
  m,
91
- p || Object.values(o.value)[0].key
92
- ), c = g(() => Object.keys(o.value)[K.value]), T = {
91
+ c || Object.values(r.value)[0].key
92
+ ), u = g(() => Object.keys(r.value)[K.value]), T = {
93
93
  at: z,
94
94
  current: P,
95
- data: l,
95
+ data: p,
96
96
  get: F,
97
97
  goBackTo: I,
98
98
  goTo: d,
@@ -100,25 +100,25 @@ const te = Symbol(), x = /((step\/)(?<step>[\s\S]+?)(?=[/?]))|((step\/)(?<step2>
100
100
  goToPrevious: A,
101
101
  isAfter: M,
102
102
  isBefore: U,
103
- isCurrent: B,
104
- isFirst: C,
105
- isLast: E,
106
- isNext: J,
107
- isPrevious: R,
108
- key: c,
109
- next: W,
110
- previous: $,
103
+ isCurrent: $,
104
+ isFirst: B,
105
+ isLast: C,
106
+ isNext: E,
107
+ isPrevious: J,
108
+ key: u,
109
+ next: R,
110
+ previous: W,
111
111
  stepNames: L,
112
112
  steps: b
113
113
  };
114
- if (Q(te, T), u)
114
+ if (Q(te, T), a)
115
115
  if (h === "query")
116
116
  v(
117
- c,
117
+ u,
118
118
  () => {
119
- a(r) && a(e.value) && r.push({
119
+ l(o) && l(e.value) && o.push({
120
120
  ...e,
121
- query: { ...e.value.query, step: c.value ?? null }
121
+ query: { ...e.value.query, step: u.value ?? null }
122
122
  });
123
123
  },
124
124
  { immediate: !0 }
@@ -130,15 +130,15 @@ const te = Symbol(), x = /((step\/)(?<step>[\s\S]+?)(?=[/?]))|((step\/)(?<step2>
130
130
  (t) => {
131
131
  if (t) {
132
132
  const s = t;
133
- if (s in o.value) {
134
- const n = s, f = Object.keys(o.value);
133
+ if (s in r.value) {
134
+ const n = s, f = Object.keys(r.value);
135
135
  f.slice(
136
136
  0,
137
137
  f.indexOf(n)
138
138
  ).every(
139
- (N) => {
139
+ (k) => {
140
140
  var y;
141
- return (y = m.value[N]) == null ? void 0 : y.isValid;
141
+ return (y = m.value[k]) == null ? void 0 : y.isValid;
142
142
  }
143
143
  ) && d(n);
144
144
  }
@@ -150,16 +150,16 @@ const te = Symbol(), x = /((step\/)(?<step>[\s\S]+?)(?=[/?]))|((step\/)(?<step2>
150
150
  );
151
151
  else {
152
152
  const t = g(() => {
153
- if (a(e.value))
153
+ if (l(e.value))
154
154
  return O(e.value.fullPath);
155
155
  });
156
156
  v(
157
- c,
157
+ u,
158
158
  (s) => {
159
- a(e.value) && a(r) && (e.value.path.includes("step") ? r.push({
159
+ console.log(`key has changed to ${u}`, u), l(e.value) && l(o) && u && (e.value.path.includes("step") ? o.push({
160
160
  query: e.value.query,
161
161
  path: e.value.path.replace(x, `step/${s}`)
162
- }) : r.push({
162
+ }) : o.push({
163
163
  query: e.value.query,
164
164
  // Normalizes paths with / and without
165
165
  path: (e.value.path + `/step/${s}`).replace("//", "/"),
@@ -170,17 +170,17 @@ const te = Symbol(), x = /((step\/)(?<step>[\s\S]+?)(?=[/?]))|((step\/)(?<step2>
170
170
  ), v(
171
171
  () => t.value,
172
172
  (s) => {
173
- if (s && s !== c.value) {
173
+ if (s && s !== u.value) {
174
174
  const n = s;
175
- if (n in o.value) {
176
- const f = n, S = Object.keys(o.value);
175
+ if (n in r.value) {
176
+ const f = n, S = Object.keys(r.value);
177
177
  S.slice(
178
178
  0,
179
179
  S.indexOf(f)
180
180
  ).every(
181
181
  (y) => {
182
- var k;
183
- return (k = o.value[y]) == null ? void 0 : k.isValid;
182
+ var N;
183
+ return (N = r.value[y]) == null ? void 0 : N.isValid;
184
184
  }
185
185
  ) && d(f);
186
186
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index8.js","sources":["../src/composables/useWizard.ts"],"sourcesContent":["import { cloneDeep } from '@/utilities/functions/cloneDeep';\nimport { computed, provide, reactive, watch, toValue } from 'vue';\nimport { isNotNil } from '@/utilities/functions/isNotNil';\nimport { mapValues } from '@/utilities/functions/mapValues';\nimport { useRoute } from './useRoute';\nimport { useRouter } from './useRouter';\nimport { useStepper } from '@vueuse/core';\nimport type { ComputedRef, MaybeRef } from 'vue';\n\nexport const wizardInjectionKey = Symbol();\nexport type Step<U> = {\n\t/**\n\t * Function that accepts a state object and returns a boolean.\n\t * When step are accessed at the end of the pipeline the result\n\t * is provided so you don't have to run the function yourself.\n\t * It determines if the validation has passed for the step.\n\t */\n\tisValid?: (state: U) => boolean | boolean;\n\t/**\n\t * Function that accepts a state object and returns a boolean.\n\t * When step are accessed at the end of the pipeline the result\n\t * is provided so you don't have to run the function yourself.\n\t * Steps that do not pass the condition are removed.\n\t */\n\tcondition?: (state: U) => boolean;\n\t[key: string]: any;\n};\nexport type WizardState<T extends Record<string, any>> = ReturnType<\n\ttypeof useWizard<T>\n>;\n\nconst regexMatchStep =\n\t/((step\\/)(?<step>[\\s\\S]+?)(?=[/?]))|((step\\/)(?<step2>[\\s\\S]+))/;\n/**\n * With a url that follows the rule xyz.com/anything/step/:nameofthestep[/?query]\n * will match the :nameofthestep substring\n */\nconst extractStepFromUrl = (url: string) => {\n\tconst match = url.match(regexMatchStep);\n\treturn match?.groups?.step ?? match?.groups?.step2 ?? null;\n};\nexport const useWizard = <T extends object>(params: {\n\t/**\n\t * The steps definition for the wizard\n\t */\n\tsteps: MaybeRef<Record<string, Step<T>>>;\n\t/**\n\t * Name of the wizard used to persist state\n\t */\n\tname: string;\n\t/**\n\t * Initial set of data to be made available throughout\n\t */\n\tinitialState: T;\n\t/**\n\t * When navogation is enabled, to whether use the query parameters or an entire substring of the URL like xyz/steps/....\n\t * The latter useful with nuxt so you can leverage the automatic import of components based on the URL.\n\t */\n\tnavigationMode?: 'query' | 'route';\n\t/**\n\t * Whether to use navigation at all. When disabled no query or URL is changed.\n\t */\n\tuseNavigation?: boolean;\n\t/**\n\t *\n\t */\n\tpersist?: boolean;\n}) => {\n\tif (!params.name) {\n\t\tthrow new Error(\n\t\t\t'You need to provide a unique name for the current wizard instance to be used to save data'\n\t\t);\n\t}\n\tconst route = useRoute();\n\tconst router = useRouter();\n\n\tconst useNavigation = params.useNavigation ?? true;\n\tconst navigationMode = params.navigationMode ?? 'query';\n\tconst persist = params.persist ?? true;\n\n\tif (useNavigation && (!route.value || !router)) {\n\t\tthrow new Error(\n\t\t\t'Navigation is enabled but could not retrieve the router instance in useWizard.'\n\t\t);\n\t}\n\n\tconst initialStateCopy = cloneDeep(params.initialState);\n\t/**\n\t * Initial state is either read from session storage or the one provided\n\t */\n\tconst innerState = reactive<typeof params.initialState>(\n\t\tpersist && sessionStorage.getItem(params.name)\n\t\t\t? {\n\t\t\t\t\t...initialStateCopy,\n\t\t\t\t\t...JSON.parse(sessionStorage.getItem(params.name)!),\n\t\t\t\t}\n\t\t\t: initialStateCopy\n\t);\n\n\tif (persist) {\n\t\t/**\n\t\t * Every time the state changes save it to sessionStorage\n\t\t */\n\t\twatch(innerState, () => {\n\t\t\tsessionStorage.setItem(params.name, JSON.stringify(innerState));\n\t\t});\n\t}\n\n\t/**\n\t * Steps can be passed as ref so we need to unwrap them\n\t */\n\tconst unwrappedSteps = toValue(params.steps);\n\tconst filteredSteps = computed(() =>\n\t\tObject.entries(unwrappedSteps).reduce(\n\t\t\t(acc: typeof unwrappedSteps, [key, step]) => {\n\t\t\t\tif (step.condition) {\n\t\t\t\t\tif (!step.condition(innerState as T)) {\n\t\t\t\t\t\treturn acc;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tacc[key] = { ...step, key };\n\t\t\t\treturn acc;\n\t\t\t},\n\t\t\t{}\n\t\t)\n\t);\n\n\t/**\n\t * Steps can have a isValid function that receives the current state\n\t * but we don't want to have to call it every single time so we call it once here\n\t */\n\tconst mappedSteps = computed(() =>\n\t\tmapValues(\n\t\t\tfilteredSteps.value,\n\t\t\t(step): Omit<Step<T>, 'isValid'> & { isValid: boolean } => {\n\t\t\t\tif (typeof step.isValid === 'function') {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...step,\n\t\t\t\t\t\tisValid: step.isValid(innerState as T),\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\t...step,\n\t\t\t\t\tisValid: step.isValid ?? true,\n\t\t\t\t};\n\t\t\t}\n\t\t)\n\t);\n\n\t/**\n\t * Get the initial step from the query.\n\t * If it exists check that every step before it is also valid\n\t * so user cannot manually jump by changing the URL\n\t */\n\tlet initialStep = null;\n\tif (useNavigation && isNotNil(route.value)) {\n\t\tlet step: string | null = null;\n\t\tif (navigationMode === 'query') {\n\t\t\tif (route.value.query.step) {\n\t\t\t\tstep = route.value.query.step as string;\n\t\t\t}\n\t\t} else {\n\t\t\tconst stepFromUrl = extractStepFromUrl(route.value.fullPath);\n\t\t\tif (stepFromUrl) {\n\t\t\t\tstep = stepFromUrl;\n\t\t\t}\n\t\t}\n\t\tinitialStep = step;\n\t}\n\n\tif (initialStep) {\n\t\tfor (const stepName in filteredSteps.value) {\n\t\t\tif (stepName === initialStep) break;\n\t\t\tconst current = mappedSteps.value[stepName];\n\t\t\tif (!current || !current.isValid) {\n\t\t\t\tinitialStep = null;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Define the state of the wizard\n\t * A few data come from useStepper\n\t */\n\tconst {\n\t\tsteps,\n\t\tcurrent,\n\t\tgoToNext,\n\t\tgoToPrevious,\n\t\tgoTo,\n\t\tindex,\n\t\tat,\n\t\tget,\n\t\tgoBackTo,\n\t\tisAfter,\n\t\tisBefore,\n\t\tisCurrent,\n\t\tisFirst,\n\t\tisLast,\n\t\tisNext,\n\t\tisPrevious,\n\t\tnext,\n\t\tprevious,\n\t\tstepNames,\n\t} = useStepper(\n\t\tmappedSteps,\n\t\tinitialStep || Object.values(filteredSteps.value)[0].key\n\t);\n\n\tconst key = computed(() => Object.keys(filteredSteps.value)[index.value]);\n\n\t/**\n\t * Complete state object\n\t */\n\tconst state = {\n\t\tat,\n\t\tcurrent: current as ComputedRef<Step<T> & { isValid: boolean }>,\n\t\tdata: innerState,\n\t\tget,\n\t\tgoBackTo,\n\t\tgoTo,\n\t\tgoToNext,\n\t\tgoToPrevious,\n\t\tisAfter,\n\t\tisBefore,\n\t\tisCurrent,\n\t\tisFirst,\n\t\tisLast,\n\t\tisNext,\n\t\tisPrevious,\n\t\tkey,\n\t\tnext,\n\t\tprevious,\n\t\tstepNames,\n\t\tsteps,\n\t};\n\n\tprovide(wizardInjectionKey, state);\n\n\tif (useNavigation) {\n\t\tif (navigationMode === 'query') {\n\t\t\t/**\n\t\t\t * Every time the current step changes update route\n\t\t\t */\n\t\t\twatch(\n\t\t\t\tkey,\n\t\t\t\t() => {\n\t\t\t\t\tif (isNotNil(router) && isNotNil(route.value)) {\n\t\t\t\t\t\trouter.push({\n\t\t\t\t\t\t\t...route,\n\t\t\t\t\t\t\tquery: { ...route.value.query, step: key.value ?? null },\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{ immediate: true }\n\t\t\t);\n\n\t\t\t/**\n\t\t\t * Every time the route changes align the current step to the route\n\t\t\t */\n\t\t\twatch(\n\t\t\t\t() => route.value?.query.step,\n\t\t\t\t(value) => {\n\t\t\t\t\tif (value) {\n\t\t\t\t\t\tconst stepAsString = value as string;\n\t\t\t\t\t\tif (stepAsString in filteredSteps.value) {\n\t\t\t\t\t\t\tconst stepAsKey = stepAsString;\n\t\t\t\t\t\t\tconst stepKeys = Object.keys(filteredSteps.value);\n\t\t\t\t\t\t\tconst stepsPriorToTarget = stepKeys.slice(\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\tstepKeys.indexOf(stepAsKey)\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tconst allValid = stepsPriorToTarget.every(\n\t\t\t\t\t\t\t\t(key) => mappedSteps.value[key]?.isValid\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tif (allValid) {\n\t\t\t\t\t\t\t\tgoTo(stepAsKey);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconst key = Object.keys(steps)[0];\n\t\t\t\t\t\tgoTo(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\t\t} else {\n\t\t\tconst stepFromUrl = computed(() => {\n\t\t\t\tif (isNotNil(route.value)) {\n\t\t\t\t\treturn extractStepFromUrl(route.value.fullPath);\n\t\t\t\t}\n\t\t\t\treturn undefined;\n\t\t\t});\n\n\t\t\t/**\n\t\t\t * Every time the current step changes update route\n\t\t\t */\n\t\t\twatch(\n\t\t\t\tkey,\n\t\t\t\t(value) => {\n\t\t\t\t\tif (isNotNil(route.value) && isNotNil(router)) {\n\t\t\t\t\t\tif (route.value.path.includes('step')) {\n\t\t\t\t\t\t\trouter.push({\n\t\t\t\t\t\t\t\tquery: route.value.query,\n\t\t\t\t\t\t\t\tpath: route.value.path.replace(regexMatchStep, `step/${value}`),\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\trouter.push({\n\t\t\t\t\t\t\t\tquery: route.value.query,\n\t\t\t\t\t\t\t\t// Normalizes paths with / and without\n\t\t\t\t\t\t\t\tpath: (route.value.path + `/step/${value}`).replace('//', '/'),\n\t\t\t\t\t\t\t\treplace: true,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{ immediate: true, flush: 'post' }\n\t\t\t);\n\n\t\t\t/**\n\t\t\t * Every time the route changes align the current step to the route\n\t\t\t */\n\t\t\twatch(\n\t\t\t\t() => stepFromUrl.value,\n\t\t\t\t(value) => {\n\t\t\t\t\tif (value && value !== key.value) {\n\t\t\t\t\t\tconst stepAsString = value as string;\n\t\t\t\t\t\tif (stepAsString in filteredSteps.value) {\n\t\t\t\t\t\t\tconst stepAsKey = stepAsString;\n\t\t\t\t\t\t\tconst stepKeys = Object.keys(filteredSteps.value);\n\t\t\t\t\t\t\tconst stepsPriorToTarget = stepKeys.slice(\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\tstepKeys.indexOf(stepAsKey)\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tconst allValid = stepsPriorToTarget.every(\n\t\t\t\t\t\t\t\t(key) => filteredSteps.value[key]?.isValid\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tif (allValid) {\n\t\t\t\t\t\t\t\tgoTo(stepAsKey);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}\n\n\treturn state;\n};\n"],"names":["wizardInjectionKey","regexMatchStep","extractStepFromUrl","url","match","_a","_b","useWizard","params","route","useRoute","router","useRouter","useNavigation","navigationMode","persist","initialStateCopy","cloneDeep","innerState","reactive","watch","unwrappedSteps","toValue","filteredSteps","computed","acc","key","step","mappedSteps","mapValues","initialStep","isNotNil","stepFromUrl","stepName","current","steps","goToNext","goToPrevious","goTo","index","at","get","goBackTo","isAfter","isBefore","isCurrent","isFirst","isLast","isNext","isPrevious","next","previous","stepNames","useStepper","state","provide","value","stepAsString","stepAsKey","stepKeys"],"mappings":"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"}
1
+ {"version":3,"file":"index8.js","sources":["../src/composables/useWizard.ts"],"sourcesContent":["import { cloneDeep } from '@/utilities/functions/cloneDeep';\nimport { computed, provide, reactive, watch, toValue, onBeforeUnmount } from 'vue';\nimport { isNotNil } from '@/utilities/functions/isNotNil';\nimport { mapValues } from '@/utilities/functions/mapValues';\nimport { useRoute } from './useRoute';\nimport { useRouter } from './useRouter';\nimport { useStepper } from '@vueuse/core';\nimport type { ComputedRef, MaybeRef } from 'vue';\n\nexport const wizardInjectionKey = Symbol();\nexport type Step<U> = {\n\t/**\n\t * Function that accepts a state object and returns a boolean.\n\t * When step are accessed at the end of the pipeline the result\n\t * is provided so you don't have to run the function yourself.\n\t * It determines if the validation has passed for the step.\n\t */\n\tisValid?: (state: U) => boolean | boolean;\n\t/**\n\t * Function that accepts a state object and returns a boolean.\n\t * When step are accessed at the end of the pipeline the result\n\t * is provided so you don't have to run the function yourself.\n\t * Steps that do not pass the condition are removed.\n\t */\n\tcondition?: (state: U) => boolean;\n\t[key: string]: any;\n};\nexport type WizardState<T extends Record<string, any>> = ReturnType<\n\ttypeof useWizard<T>\n>;\n\nconst regexMatchStep =\n\t/((step\\/)(?<step>[\\s\\S]+?)(?=[/?]))|((step\\/)(?<step2>[\\s\\S]+))/;\n/**\n * With a url that follows the rule xyz.com/anything/step/:nameofthestep[/?query]\n * will match the :nameofthestep substring\n */\nconst extractStepFromUrl = (url: string) => {\n\tconst match = url.match(regexMatchStep);\n\treturn match?.groups?.step ?? match?.groups?.step2 ?? null;\n};\nexport const useWizard = <T extends object>(params: {\n\t/**\n\t * The steps definition for the wizard\n\t */\n\tsteps: MaybeRef<Record<string, Step<T>>>;\n\t/**\n\t * Name of the wizard used to persist state\n\t */\n\tname: string;\n\t/**\n\t * Initial set of data to be made available throughout\n\t */\n\tinitialState: T;\n\t/**\n\t * When navogation is enabled, to whether use the query parameters or an entire substring of the URL like xyz/steps/....\n\t * The latter useful with nuxt so you can leverage the automatic import of components based on the URL.\n\t */\n\tnavigationMode?: 'query' | 'route';\n\t/**\n\t * Whether to use navigation at all. When disabled no query or URL is changed.\n\t */\n\tuseNavigation?: boolean;\n\t/**\n\t *\n\t */\n\tpersist?: boolean;\n}) => {\n\tif (!params.name) {\n\t\tthrow new Error(\n\t\t\t'You need to provide a unique name for the current wizard instance to be used to save data'\n\t\t);\n\t}\n\tconst route = useRoute();\n\tconst router = useRouter();\n\n\tconst useNavigation = params.useNavigation ?? true;\n\tconst navigationMode = params.navigationMode ?? 'query';\n\tconst persist = params.persist ?? true;\n\n\tif (useNavigation && (!route.value || !router)) {\n\t\tthrow new Error(\n\t\t\t'Navigation is enabled but could not retrieve the router instance in useWizard.'\n\t\t);\n\t}\n\n\tconst initialStateCopy = cloneDeep(params.initialState);\n\t/**\n\t * Initial state is either read from session storage or the one provided\n\t */\n\tconst innerState = reactive<typeof params.initialState>(\n\t\tpersist && sessionStorage.getItem(params.name)\n\t\t\t? {\n\t\t\t\t\t...initialStateCopy,\n\t\t\t\t\t...JSON.parse(sessionStorage.getItem(params.name)!),\n\t\t\t\t}\n\t\t\t: initialStateCopy\n\t);\n\n\tif (persist) {\n\t\t/**\n\t\t * Every time the state changes save it to sessionStorage\n\t\t */\n\t\twatch(innerState, () => {\n\t\t\tsessionStorage.setItem(params.name, JSON.stringify(innerState));\n\t\t});\n\t}\n\n\t/**\n\t * Steps can be passed as ref so we need to unwrap them\n\t */\n\tconst unwrappedSteps = toValue(params.steps);\n\tconst filteredSteps = computed(() =>\n\t\tObject.entries(unwrappedSteps).reduce(\n\t\t\t(acc: typeof unwrappedSteps, [key, step]) => {\n\t\t\t\tif (step.condition) {\n\t\t\t\t\tif (!step.condition(innerState as T)) {\n\t\t\t\t\t\treturn acc;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tacc[key] = { ...step, key };\n\t\t\t\treturn acc;\n\t\t\t},\n\t\t\t{}\n\t\t)\n\t);\n\n\t/**\n\t * Steps can have a isValid function that receives the current state\n\t * but we don't want to have to call it every single time so we call it once here\n\t */\n\tconst mappedSteps = computed(() =>\n\t\tmapValues(\n\t\t\tfilteredSteps.value,\n\t\t\t(step): Omit<Step<T>, 'isValid'> & { isValid: boolean } => {\n\t\t\t\tif (typeof step.isValid === 'function') {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...step,\n\t\t\t\t\t\tisValid: step.isValid(innerState as T),\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\t...step,\n\t\t\t\t\tisValid: step.isValid ?? true,\n\t\t\t\t};\n\t\t\t}\n\t\t)\n\t);\n\n\t/**\n\t * Get the initial step from the query.\n\t * If it exists check that every step before it is also valid\n\t * so user cannot manually jump by changing the URL\n\t */\n\tlet initialStep = null;\n\tif (useNavigation && isNotNil(route.value)) {\n\t\tlet step: string | null = null;\n\t\tif (navigationMode === 'query') {\n\t\t\tif (route.value.query.step) {\n\t\t\t\tstep = route.value.query.step as string;\n\t\t\t}\n\t\t} else {\n\t\t\tconst stepFromUrl = extractStepFromUrl(route.value.fullPath);\n\t\t\tif (stepFromUrl) {\n\t\t\t\tstep = stepFromUrl;\n\t\t\t}\n\t\t}\n\t\tinitialStep = step;\n\t}\n\n\tif (initialStep) {\n\t\tfor (const stepName in filteredSteps.value) {\n\t\t\tif (stepName === initialStep) break;\n\t\t\tconst current = mappedSteps.value[stepName];\n\t\t\tif (!current || !current.isValid) {\n\t\t\t\tinitialStep = null;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Define the state of the wizard\n\t * A few data come from useStepper\n\t */\n\tconst {\n\t\tsteps,\n\t\tcurrent,\n\t\tgoToNext,\n\t\tgoToPrevious,\n\t\tgoTo,\n\t\tindex,\n\t\tat,\n\t\tget,\n\t\tgoBackTo,\n\t\tisAfter,\n\t\tisBefore,\n\t\tisCurrent,\n\t\tisFirst,\n\t\tisLast,\n\t\tisNext,\n\t\tisPrevious,\n\t\tnext,\n\t\tprevious,\n\t\tstepNames,\n\t} = useStepper(\n\t\tmappedSteps,\n\t\tinitialStep || Object.values(filteredSteps.value)[0].key\n\t);\n\n\tconst key = computed(() => Object.keys(filteredSteps.value)[index.value]);\n\n\t/**\n\t * Complete state object\n\t */\n\tconst state = {\n\t\tat,\n\t\tcurrent: current as ComputedRef<Step<T> & { isValid: boolean }>,\n\t\tdata: innerState,\n\t\tget,\n\t\tgoBackTo,\n\t\tgoTo,\n\t\tgoToNext,\n\t\tgoToPrevious,\n\t\tisAfter,\n\t\tisBefore,\n\t\tisCurrent,\n\t\tisFirst,\n\t\tisLast,\n\t\tisNext,\n\t\tisPrevious,\n\t\tkey,\n\t\tnext,\n\t\tprevious,\n\t\tstepNames,\n\t\tsteps,\n\t};\n\n\tprovide(wizardInjectionKey, state);\n\n\tif (useNavigation) {\n\t\tif (navigationMode === 'query') {\n\t\t\t/**\n\t\t\t * Every time the current step changes update route\n\t\t\t */\n\t\t\twatch(\n\t\t\t\tkey,\n\t\t\t\t() => {\n\t\t\t\t\tif (isNotNil(router) && isNotNil(route.value)) {\n\t\t\t\t\t\trouter.push({\n\t\t\t\t\t\t\t...route,\n\t\t\t\t\t\t\tquery: { ...route.value.query, step: key.value ?? null },\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{ immediate: true }\n\t\t\t);\n\n\t\t\t/**\n\t\t\t * Every time the route changes align the current step to the route\n\t\t\t */\n\t\t\twatch(\n\t\t\t\t() => route.value?.query.step,\n\t\t\t\t(value) => {\n\t\t\t\t\tif (value) {\n\t\t\t\t\t\tconst stepAsString = value as string;\n\t\t\t\t\t\tif (stepAsString in filteredSteps.value) {\n\t\t\t\t\t\t\tconst stepAsKey = stepAsString;\n\t\t\t\t\t\t\tconst stepKeys = Object.keys(filteredSteps.value);\n\t\t\t\t\t\t\tconst stepsPriorToTarget = stepKeys.slice(\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\tstepKeys.indexOf(stepAsKey)\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tconst allValid = stepsPriorToTarget.every(\n\t\t\t\t\t\t\t\t(key) => mappedSteps.value[key]?.isValid\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tif (allValid) {\n\t\t\t\t\t\t\t\tgoTo(stepAsKey);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconst key = Object.keys(steps)[0];\n\t\t\t\t\t\tgoTo(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\t\t} else {\n\t\t\tconst stepFromUrl = computed(() => {\n\t\t\t\tif (isNotNil(route.value)) {\n\t\t\t\t\treturn extractStepFromUrl(route.value.fullPath);\n\t\t\t\t}\n\t\t\t\treturn undefined;\n\t\t\t});\n\n\t\t\t/**\n\t\t\t * Every time the current step changes update route\n\t\t\t */\n\t\t\twatch(\n\t\t\t\tkey,\n\t\t\t\t(value) => {\n\t\t\t\t\t\tconsole.log(`key has changed to ${key}`, key)\n\t\t\t\t\tif (isNotNil(route.value) && isNotNil(router) && key) {\n\t\t\t\t\t\tif (route.value.path.includes('step')) {\n\t\t\t\t\t\t\trouter.push({\n\t\t\t\t\t\t\t\tquery: route.value.query,\n\t\t\t\t\t\t\t\tpath: route.value.path.replace(regexMatchStep, `step/${value}`),\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\trouter.push({\n\t\t\t\t\t\t\t\tquery: route.value.query,\n\t\t\t\t\t\t\t\t// Normalizes paths with / and without\n\t\t\t\t\t\t\t\tpath: (route.value.path + `/step/${value}`).replace('//', '/'),\n\t\t\t\t\t\t\t\treplace: true,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{ immediate: true, flush: 'post' }\n\t\t\t);\n\n\t\t\t/**\n\t\t\t * Every time the route changes align the current step to the route\n\t\t\t */\n\t\t\twatch(\n\t\t\t\t() => stepFromUrl.value,\n\t\t\t\t(value) => {\n\t\t\t\t\tif (value && value !== key.value) {\n\t\t\t\t\t\tconst stepAsString = value as string;\n\t\t\t\t\t\tif (stepAsString in filteredSteps.value) {\n\t\t\t\t\t\t\tconst stepAsKey = stepAsString;\n\t\t\t\t\t\t\tconst stepKeys = Object.keys(filteredSteps.value);\n\t\t\t\t\t\t\tconst stepsPriorToTarget = stepKeys.slice(\n\t\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t\tstepKeys.indexOf(stepAsKey)\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tconst allValid = stepsPriorToTarget.every(\n\t\t\t\t\t\t\t\t(key) => filteredSteps.value[key]?.isValid\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tif (allValid) {\n\t\t\t\t\t\t\t\tgoTo(stepAsKey);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t}\n\n\treturn state;\n};\n"],"names":["wizardInjectionKey","regexMatchStep","extractStepFromUrl","url","match","_a","_b","useWizard","params","route","useRoute","router","useRouter","useNavigation","navigationMode","persist","initialStateCopy","cloneDeep","innerState","reactive","watch","unwrappedSteps","toValue","filteredSteps","computed","acc","key","step","mappedSteps","mapValues","initialStep","isNotNil","stepFromUrl","stepName","current","steps","goToNext","goToPrevious","goTo","index","at","get","goBackTo","isAfter","isBefore","isCurrent","isFirst","isLast","isNext","isPrevious","next","previous","stepNames","useStepper","state","provide","value","stepAsString","stepAsKey","stepKeys"],"mappings":"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"}