bitboss-ui 2.1.13 → 2.1.15

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 (167) hide show
  1. package/dist/components/BbDropdown/BbDropdown.vue.d.ts +12 -2
  2. package/dist/components/BbPopover/BbPopover.vue.d.ts +12 -2
  3. package/dist/components/BbTooltip/BbTooltip.vue.d.ts +12 -2
  4. package/dist/components/CommonPopover.vue.d.ts +2 -0
  5. package/dist/index.css +1 -1
  6. package/dist/index106.js +9 -9
  7. package/dist/index111.js +1 -1
  8. package/dist/index113.js +1 -1
  9. package/dist/index121.js +10 -10
  10. package/dist/index13.js +1 -1
  11. package/dist/index131.js +4 -4
  12. package/dist/index15.js +8 -8
  13. package/dist/index17.js +3 -3
  14. package/dist/index19.js +8 -8
  15. package/dist/index209.js +2 -34
  16. package/dist/index21.js +16 -16
  17. package/dist/index210.js +51 -86
  18. package/dist/{index213.js → index211.js} +1 -1
  19. package/dist/index212.js +105 -28
  20. package/dist/index214.js +99 -50
  21. package/dist/index216.js +72 -3
  22. package/dist/index218.js +13 -16
  23. package/dist/index219.js +2 -4
  24. package/dist/index220.js +2 -13
  25. package/dist/index221.js +2 -11
  26. package/dist/index222.js +2 -20
  27. package/dist/index223.js +3 -197
  28. package/dist/index224.js +9 -0
  29. package/dist/index225.js +7 -66
  30. package/dist/index226.js +7 -0
  31. package/dist/index227.js +5 -13
  32. package/dist/index228.js +5 -113
  33. package/dist/index229.js +7 -0
  34. package/dist/index23.js +15 -15
  35. package/dist/index230.js +5 -13
  36. package/dist/index231.js +5 -3
  37. package/dist/index232.js +5 -2
  38. package/dist/index233.js +8 -4
  39. package/dist/index234.js +250 -2
  40. package/dist/index235.js +52 -2
  41. package/dist/index236.js +44 -5
  42. package/dist/index237.js +4 -4
  43. package/dist/index238.js +60 -5
  44. package/dist/index239.js +13 -5
  45. package/dist/index240.js +4 -5
  46. package/dist/index241.js +11 -5
  47. package/dist/index242.js +20 -2
  48. package/dist/index243.js +197 -2
  49. package/dist/index245.js +114 -12
  50. package/dist/index247.js +10 -106
  51. package/dist/index248.js +5 -0
  52. package/dist/index249.js +4 -100
  53. package/dist/index25.js +3 -3
  54. package/dist/index250.js +88 -0
  55. package/dist/index252.js +29 -5
  56. package/dist/index253.js +16 -5
  57. package/dist/index254.js +15 -8
  58. package/dist/index255.js +12 -250
  59. package/dist/index256.js +12 -51
  60. package/dist/index257.js +3 -44
  61. package/dist/index258.js +4 -4
  62. package/dist/index259.js +2 -60
  63. package/dist/index260.js +34 -2
  64. package/dist/index261.js +17 -182
  65. package/dist/index262.js +11 -9
  66. package/dist/index263.js +6 -3
  67. package/dist/index264.js +231 -2
  68. package/dist/index265.js +182 -6
  69. package/dist/index266.js +2 -7
  70. package/dist/index267.js +8 -8
  71. package/dist/index268.js +8 -23
  72. package/dist/index269.js +9 -3
  73. package/dist/index27.js +1 -1
  74. package/dist/index270.js +23 -6
  75. package/dist/index271.js +6 -16
  76. package/dist/index272.js +16 -9
  77. package/dist/index273.js +3 -9
  78. package/dist/index274.js +9 -8
  79. package/dist/index275.js +1 -1
  80. package/dist/index278.js +1 -1
  81. package/dist/index279.js +1 -1
  82. package/dist/index280.js +3 -2
  83. package/dist/index281.js +1 -1
  84. package/dist/index282.js +3 -17
  85. package/dist/index284.js +7 -3
  86. package/dist/index285.js +17 -3
  87. package/dist/index286.js +6 -0
  88. package/dist/index287.js +28 -7
  89. package/dist/index288.js +1 -1
  90. package/dist/index289.js +3 -7
  91. package/dist/index29.js +3 -3
  92. package/dist/index290.js +7 -11
  93. package/dist/index291.js +10 -3
  94. package/dist/index293.js +280 -5
  95. package/dist/index294.js +2 -280
  96. package/dist/index295.js +16 -2
  97. package/dist/index296.js +2 -125
  98. package/dist/index297.js +16 -2
  99. package/dist/index298.js +2 -15
  100. package/dist/index299.js +19 -2
  101. package/dist/index300.js +2 -16
  102. package/dist/index301.js +15 -2
  103. package/dist/index302.js +2 -16
  104. package/dist/index303.js +19 -2
  105. package/dist/index304.js +2 -19
  106. package/dist/index305.js +27 -2
  107. package/dist/index306.js +2 -19
  108. package/dist/index307.js +2 -2
  109. package/dist/index308.js +2 -27
  110. package/dist/index309.js +2 -2
  111. package/dist/index31.js +2 -2
  112. package/dist/index310.js +1 -1
  113. package/dist/index311.js +21 -1
  114. package/dist/index313.js +6 -2
  115. package/dist/index314.js +3 -22
  116. package/dist/index315.js +7 -0
  117. package/dist/index316.js +2 -6
  118. package/dist/index317.js +125 -3
  119. package/dist/index318.js +2 -3
  120. package/dist/index319.js +1 -1
  121. package/dist/index320.js +1 -1
  122. package/dist/index325.js +7 -128
  123. package/dist/index326.js +5 -368
  124. package/dist/index327.js +7 -32
  125. package/dist/index328.js +128 -27
  126. package/dist/index329.js +371 -0
  127. package/dist/index33.js +8 -8
  128. package/dist/index330.js +6 -7
  129. package/dist/index331.js +6 -5
  130. package/dist/index332.js +19 -8
  131. package/dist/index335.js +1 -1
  132. package/dist/index336.js +32 -6
  133. package/dist/index337.js +27 -18
  134. package/dist/index340.js +1 -1
  135. package/dist/{index344.js → index342.js} +1 -1
  136. package/dist/index343.js +127 -3
  137. package/dist/index345.js +3 -127
  138. package/dist/index35.js +4 -4
  139. package/dist/index37.js +204 -198
  140. package/dist/index39.js +7 -7
  141. package/dist/index41.js +2 -2
  142. package/dist/index43.js +8 -8
  143. package/dist/index45.js +8 -8
  144. package/dist/index47.js +2 -2
  145. package/dist/index49.js +3 -3
  146. package/dist/index53.js +1 -1
  147. package/dist/index55.js +1 -1
  148. package/dist/index57.js +2 -2
  149. package/dist/index61.js +3 -3
  150. package/dist/index67.js +1 -1
  151. package/dist/index79.js +4 -4
  152. package/dist/index81.js +1 -1
  153. package/dist/index83.js +2 -2
  154. package/dist/index85.js +1 -1
  155. package/dist/index87.js +1 -1
  156. package/dist/index90.js +3 -3
  157. package/dist/index92.js +2 -2
  158. package/dist/index94.js +3 -3
  159. package/package.json +2 -2
  160. package/dist/index215.js +0 -17
  161. package/dist/index217.js +0 -14
  162. package/dist/index244.js +0 -20
  163. package/dist/index246.js +0 -8
  164. package/dist/index251.js +0 -233
  165. package/dist/index283.js +0 -30
  166. package/dist/index312.js +0 -4
  167. package/dist/index338.js +0 -9
package/dist/index17.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { defineComponent as E, ref as m, computed as n, watch as _, createElementBlock as p, openBlock as h, normalizeProps as i, guardReactiveProps as f, createCommentVNode as I, createElementVNode as l, mergeProps as k, renderSlot as F } from "vue";
2
- import { isCssColor as y } from "./index232.js";
3
- import { when as N } from "./index233.js";
4
- import { booleanishToBoolean as S } from "./index234.js";
2
+ import { isCssColor as y } from "./index221.js";
3
+ import { when as N } from "./index249.js";
4
+ import { booleanishToBoolean as S } from "./index266.js";
5
5
  const A = {
6
6
  "aria-hidden": "true",
7
7
  class: "bb-base-checkbox-container"
package/dist/index19.js CHANGED
@@ -1,15 +1,15 @@
1
1
  import { defineComponent as j, ref as k, toRef as d, createBlock as z, openBlock as G, unref as B, withCtx as s, renderSlot as l, normalizeProps as b, guardReactiveProps as v, createVNode as R, mergeProps as T } from "vue";
2
2
  import W from "./index17.js";
3
3
  /* empty css */
4
- import K from "./index210.js";
4
+ import K from "./index250.js";
5
5
  /* empty css */
6
- import { useItemsGetter as N } from "./index212.js";
7
- import { useIndexById as w } from "./index213.js";
8
- import { useBaseOptions as U } from "./index214.js";
9
- import { useCoherence as q } from "./index215.js";
10
- import { hash as J } from "./index216.js";
11
- import { useHashedWatcher as C } from "./index217.js";
12
- import { usePrefill as Q } from "./index218.js";
6
+ import { useItemsGetter as N } from "./index252.js";
7
+ import { useIndexById as w } from "./index211.js";
8
+ import { useBaseOptions as U } from "./index210.js";
9
+ import { useCoherence as q } from "./index254.js";
10
+ import { hash as J } from "./index223.js";
11
+ import { useHashedWatcher as C } from "./index255.js";
12
+ import { usePrefill as Q } from "./index253.js";
13
13
  const de = /* @__PURE__ */ j({
14
14
  __name: "BaseCheckboxGroup",
15
15
  props: {
package/dist/index209.js CHANGED
@@ -1,36 +1,4 @@
1
- import { defineComponent as p, getCurrentInstance as a, resolveComponent as u, createBlock as f, openBlock as k, resolveDynamicComponent as g, unref as d, withCtx as b, renderSlot as x } from "vue";
2
- import { _config as e } from "./index4.js";
3
- import { useLogger as l } from "./index254.js";
4
- const $ = /* @__PURE__ */ p({
5
- __name: "RouterComponent",
6
- setup(y) {
7
- var o, i, r, s;
8
- const m = !!((i = (o = a()) == null ? void 0 : o.proxy) != null && i.$inertia), c = !!((s = (r = a()) == null ? void 0 : r.proxy) != null && s.$nuxt);
9
- let t;
10
- if (m) {
11
- if (t = u(e.inertiaLinkName), typeof t == "string") {
12
- const { warn: n } = l();
13
- n(
14
- `Inertia link component "${e.inertiaLinkName}" could not be resolved. Ensure you app registers a link component with the name "${e.inertiaLinkName}" or set bitboss-ui config key "inertiaLinkName" to the correct value globally. Please visit ${e.documentationURL}/getting-started to resolve setup issues in bitboss-ui.`
15
- );
16
- }
17
- } else if (c) {
18
- if (t = u(e.nuxtLinkName), typeof t == "string") {
19
- const { warn: n } = l();
20
- n(
21
- `Nuxt link component "${e.nuxtLinkName}" could not be resolved. Ensure you app registers a link component with the name "${e.nuxtLinkName}" or set bitboss-ui config key "nuxtLinkName" to the correct value globally. Please visit ${e.documentationURL}/getting-started to resolve setup issues in bitboss-ui.`
22
- );
23
- }
24
- } else
25
- t = "router-link";
26
- return (n, L) => (k(), f(g(d(t)), null, {
27
- default: b(() => [
28
- x(n.$slots, "default")
29
- ]),
30
- _: 3
31
- }));
32
- }
33
- });
1
+ const e = (t) => t[t.length - 1];
34
2
  export {
35
- $ as default
3
+ e as last
36
4
  };
package/dist/index21.js CHANGED
@@ -5,22 +5,22 @@ import { _config as C } from "./index4.js";
5
5
  import { useId as F } from "./index8.js";
6
6
  import f from "./index13.js";
7
7
  /* empty css */
8
- import s from "./index236.js";
9
- import G from "./index239.js";
10
- import J from "./index240.js";
11
- import K from "./index241.js";
12
- import Q from "./index238.js";
13
- import X from "./index252.js";
14
- import ee from "./index253.js";
15
- import { hash as M } from "./index216.js";
16
- import { last as ae } from "./index243.js";
17
- import { useLogger as te } from "./index254.js";
18
- import oe from "./index255.js";
19
- import le from "./index256.js";
20
- import re from "./index257.js";
21
- import B from "./index258.js";
22
- import se from "./index259.js";
23
- import { useLocale as de } from "./index220.js";
8
+ import s from "./index226.js";
9
+ import G from "./index227.js";
10
+ import J from "./index228.js";
11
+ import K from "./index229.js";
12
+ import Q from "./index230.js";
13
+ import X from "./index231.js";
14
+ import ee from "./index232.js";
15
+ import { hash as M } from "./index223.js";
16
+ import { last as ae } from "./index209.js";
17
+ import { useLogger as te } from "./index233.js";
18
+ import oe from "./index234.js";
19
+ import le from "./index235.js";
20
+ import re from "./index236.js";
21
+ import B from "./index237.js";
22
+ import se from "./index238.js";
23
+ import { useLocale as de } from "./index239.js";
24
24
  const ie = { class: "bb-base-date-picker" }, ne = { class: "bb-base-date-picker__body" }, ue = { class: "bb-base-date-picker__controls" }, me = { class: "sr-only" }, pe = { class: "sr-only" }, ce = { class: "sr-only" }, fe = {
25
25
  style: { transform: "rotate(180deg)" },
26
26
  viewBox: "0 0 24 24",
package/dist/index210.js CHANGED
@@ -1,88 +1,53 @@
1
- import { defineComponent as h, createElementBlock as n, openBlock as s, normalizeClass as r, createElementVNode as l, renderSlot as t, createCommentVNode as p, createTextVNode as o, toDisplayString as d, 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__ */ h({
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: i } = g();
22
- return (a, T) => (s(), n("span", {
23
- ref: "container",
24
- class: r(["bb-cr-container", {
25
- "bb-cr-container--errors": a.hasErrors,
26
- "bb-cr-container--horizontal": a.direction === "horizontal",
27
- "bb-cr-container--vertical": a.direction === "vertical"
28
- }])
29
- }, [
30
- l("span", k, [
31
- t(a.$slots, "prepend"),
32
- !a.options.length && a.loading ? (s(), n("span", y, [
33
- t(a.$slots, "loading", {}, () => [
34
- o(d(a.loadingText || b(i)("common.loadingText")), 1)
35
- ])
36
- ])) : a.options.length ? p("", !0) : (s(), n("span", $, [
37
- t(a.$slots, "no-data", {}, () => [
38
- o(d(a.noDataText || b(i)("common.noDataText")), 1)
39
- ])
40
- ])),
41
- (s(!0), n(m, null, u(a.options, (e, c) => (s(), n(m, {
42
- key: (e == null ? void 0 : e.valueHash) || c
43
- }, [
44
- t(a.$slots, "option:prepend", {
45
- id: e.valueHash,
46
- checked: !!e.selected,
47
- disabled: !!e.disabled,
48
- item: e.item,
49
- text: e.text
50
- }),
51
- l("label", {
52
- class: r(["bb-cr-container-option", { "bb-base-radio-selected": e.selected }])
53
- }, [
54
- t(a.$slots, "input", {
55
- index: c,
56
- option: e
57
- }),
58
- l("span", {
59
- class: r({
60
- "bb-cr-container-option__text": !0,
61
- "sr-only": a.hideLabel
62
- })
63
- }, [
64
- t(a.$slots, "label", {
65
- checked: !!e.selected,
66
- item: e.item,
67
- text: e.text
68
- }, () => [
69
- o(d(e.text), 1)
70
- ])
71
- ], 2)
72
- ], 2),
73
- t(a.$slots, "option:append", {
74
- id: e.valueHash,
75
- checked: !!e.selected,
76
- disabled: !!e.disabled,
77
- item: e.item,
78
- text: e.text
79
- })
80
- ], 64))), 128)),
81
- t(a.$slots, "append")
82
- ])
83
- ], 2));
84
- }
85
- });
1
+ import { computed as l, unref as o } from "vue";
2
+ import { useItemText as x } from "./index285.js";
3
+ import { useItemValue as w } from "./index267.js";
4
+ import { hash as y } from "./index223.js";
5
+ import { useLogger as D } from "./index233.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
+ };
86
51
  export {
87
- C as default
52
+ q as useBaseOptions
88
53
  };
@@ -1,5 +1,5 @@
1
1
  import { computed as i, unref as m } from "vue";
2
- import { hash as s } from "./index216.js";
2
+ import { hash as s } from "./index223.js";
3
3
  const p = ({ items: a, key: r }) => {
4
4
  const n = i(() => {
5
5
  const t = {}, c = new Array().concat(m(a));
package/dist/index212.js CHANGED
@@ -1,31 +1,108 @@
1
- import { ref as a, computed as s, unref as v } from "vue";
2
- import { useDebounceFn as f } from "./index206.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);
1
+ import { defineComponent as y, ref as F, computed as H, watch as N, createElementBlock as L, openBlock as p, Fragment as S, renderList as V, createBlock as A, withModifiers as O, normalizeClass as P, withCtx as $, createTextVNode as z, toDisplayString as D } from "vue";
2
+ import { hash as d } from "./index223.js";
3
+ import { isNil as l } from "./index222.js";
4
+ import E from "./index67.js";
5
+ /* empty css */
6
+ const K = /* @__PURE__ */ y({
7
+ __name: "ChipsBox",
8
+ props: {
9
+ options: {}
10
+ },
11
+ emits: ["option:unselected"],
12
+ setup(f, { expose: v, emit: h }) {
13
+ const t = f, u = h, n = F(null), i = H(() => t.options.some((e) => !e.disabled)), a = (e = 1) => {
14
+ const s = l(n.value) ? -1 : n.value;
15
+ let o = (s + e) % t.options.length;
16
+ for (; t.options[o].disabled && o !== s; )
17
+ o = a(e + 1);
18
+ return o;
19
+ }, x = () => {
20
+ if (!i.value) return;
21
+ const e = a();
22
+ n.value = e;
23
+ }, c = (e = 1) => {
24
+ const s = l(n.value) ? 0 : n.value;
25
+ let o = (s - e + t.options.length) % t.options.length;
26
+ for (; t.options[o].disabled && o !== s; )
27
+ o = c(e + 1);
28
+ return o;
29
+ }, m = async () => {
30
+ if (!i.value) return;
31
+ const e = c();
32
+ n.value = e;
33
+ }, w = () => {
34
+ if (!i.value) return;
35
+ let e = 0;
36
+ for (; t.options[e].disabled; )
37
+ e++;
38
+ n.value = e;
39
+ }, b = () => {
40
+ if (!i.value) return;
41
+ let e = t.options.length - 1;
42
+ for (; t.options[e].disabled && e !== 0; )
43
+ e--;
44
+ n.value = e;
45
+ }, I = () => {
46
+ if (!i.value) return;
47
+ let e = 0;
48
+ for (; !t.options[e].selected && t.options.length !== e; )
49
+ e++;
50
+ n.value = e;
51
+ }, g = () => {
52
+ if (!i.value) return;
53
+ let e = t.options.length - 1;
54
+ for (; t.options[e].selected && e !== 0; )
55
+ e--;
56
+ n.value = e;
57
+ }, _ = (e) => {
58
+ if (!i.value) return;
59
+ const s = t.options.findIndex(
60
+ (o) => o.valueHash === e
61
+ );
62
+ s >= 0 && (n.value = s);
63
+ }, r = () => {
64
+ n.value = null;
65
+ }, k = () => {
66
+ if (l(n.value)) return;
67
+ const e = t.options[n.value];
68
+ e.selected && u("option:unselected", e);
69
+ }, C = () => l(n.value) ? void 0 : t.options[n.value];
70
+ return N(
71
+ () => t.options,
72
+ (e, s) => {
73
+ d(e) !== d(s) && r();
74
+ },
75
+ {
76
+ flush: "post"
18
77
  }
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
- };
78
+ ), v({
79
+ focusNext: x,
80
+ focusPrevious: m,
81
+ focusFirst: w,
82
+ focusFirstSelected: I,
83
+ focusLast: b,
84
+ focusLastSelected: g,
85
+ blur: r,
86
+ confirmOption: k,
87
+ focusByHash: _,
88
+ getHighlighted: C
89
+ }), (e, s) => (p(!0), L(S, null, V(e.options, (o, B) => (p(), A(E, {
90
+ key: o.valueHash,
91
+ class: P({
92
+ "bb-chipsbox-item": !0,
93
+ "bb-chipsbox-item--focused": B === n.value
94
+ }),
95
+ clearable: !0,
96
+ text: o.text,
97
+ "onClick:clear": O((M) => u("option:unselected", o), ["stop"])
98
+ }, {
99
+ default: $(() => [
100
+ z(D(o.text), 1)
101
+ ]),
102
+ _: 2
103
+ }, 1032, ["class", "text", "onClick:clear"]))), 128));
104
+ }
105
+ });
29
106
  export {
30
- p as useItemsGetter
107
+ K as default
31
108
  };
package/dist/index214.js CHANGED
@@ -1,53 +1,102 @@
1
- import { computed as l, unref as o } from "vue";
2
- import { useItemText as x } from "./index282.js";
3
- import { useItemValue as w } from "./index273.js";
4
- import { hash as y } from "./index216.js";
5
- import { useLogger as D } from "./index254.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));
1
+ import { defineComponent as F, ref as H, computed as L, watch as N, createElementBlock as d, openBlock as v, Fragment as S, renderList as A, withModifiers as O, normalizeClass as P, toDisplayString as V } from "vue";
2
+ import { hash as f } from "./index223.js";
3
+ import { isNil as i } from "./index222.js";
4
+ const z = ["text", "onClick:clear"], j = /* @__PURE__ */ F({
5
+ __name: "CommaBox",
6
+ props: {
7
+ options: {}
8
+ },
9
+ emits: ["option:unselected"],
10
+ setup(m, { expose: h, emit: x }) {
11
+ const t = m, a = x, n = H(null), l = L(() => t.options.some((e) => !e.disabled)), u = (e = 1) => {
12
+ const s = i(n.value) ? -1 : n.value;
13
+ let o = (s + e) % t.options.length;
14
+ for (; t.options[o].disabled && o !== s; )
15
+ o = u(e + 1);
16
+ return o;
17
+ }, b = () => {
18
+ if (!l.value) return;
19
+ const e = u();
20
+ n.value = e;
21
+ }, c = (e = 1) => {
22
+ const s = i(n.value) ? 0 : n.value;
23
+ let o = (s - e + t.options.length) % t.options.length;
24
+ for (; t.options[o].disabled && o !== s; )
25
+ o = c(e + 1);
26
+ return o;
27
+ }, w = async () => {
28
+ if (!l.value) return;
29
+ const e = c();
30
+ n.value = e;
31
+ }, I = () => {
32
+ if (!l.value) return;
33
+ let e = 0;
34
+ for (; t.options[e].disabled; )
35
+ e++;
36
+ n.value = e;
37
+ }, g = () => {
38
+ if (!l.value) return;
39
+ let e = t.options.length - 1;
40
+ for (; t.options[e].disabled && e !== 0; )
41
+ e--;
42
+ n.value = e;
43
+ }, k = () => {
44
+ if (!l.value) return;
45
+ let e = 0;
46
+ for (; !t.options[e].selected && t.options.length !== e; )
47
+ e++;
48
+ n.value = e;
49
+ }, _ = () => {
50
+ if (!l.value) return;
51
+ let e = t.options.length - 1;
52
+ for (; t.options[e].selected && e !== 0; )
53
+ e--;
54
+ n.value = e;
55
+ }, C = (e) => {
56
+ if (!l.value) return;
57
+ const s = t.options.findIndex(
58
+ (o) => o.valueHash === e
59
+ );
60
+ s >= 0 && (n.value = s);
61
+ }, r = () => {
62
+ n.value = null;
63
+ }, y = () => {
64
+ if (i(n.value)) return;
65
+ const e = t.options[n.value];
66
+ e.selected && a("option:unselected", e);
67
+ }, B = () => i(n.value) ? void 0 : t.options[n.value];
68
+ return N(
69
+ () => t.options,
70
+ (e, s) => {
71
+ f(e) !== f(s) && r();
72
+ },
73
+ {
74
+ flush: "post"
45
75
  }
46
- return e;
47
- }),
48
- createOption: f
49
- };
50
- };
76
+ ), h({
77
+ focusNext: b,
78
+ focusPrevious: w,
79
+ focusFirst: I,
80
+ focusFirstSelected: k,
81
+ focusLast: g,
82
+ focusLastSelected: _,
83
+ blur: r,
84
+ confirmOption: y,
85
+ focusByHash: C,
86
+ getHighlighted: B
87
+ }), (e, s) => (v(!0), d(S, null, A(e.options, (o, p) => (v(), d("span", {
88
+ key: o.valueHash,
89
+ class: P({
90
+ "bb-commabox-item": !0,
91
+ "bb-commabox-item--focused": p === n.value,
92
+ "bb-commabox-item--has-comma": p !== e.options.length - 1
93
+ }),
94
+ clearable: !0,
95
+ text: o.text,
96
+ "onClick:clear": O((D) => a("option:unselected", o), ["stop"])
97
+ }, V(o.text), 43, z))), 128));
98
+ }
99
+ });
51
100
  export {
52
- q as useBaseOptions
101
+ j as default
53
102
  };
package/dist/index216.js CHANGED
@@ -1,5 +1,74 @@
1
- import { hash as o } from "./index283.js";
2
- const t = (r, h = "bb") => `${h}${o(r)}`;
1
+ import { defineComponent as y, ref as C, createElementBlock as v, openBlock as i, withModifiers as B, normalizeClass as h, unref as n, renderSlot as o, createBlock as s, createCommentVNode as l, createVNode as p, createElementVNode as m } from "vue";
2
+ /* empty css */
3
+ /* empty css */
4
+ import u from "./index85.js";
5
+ /* empty css */
6
+ import I from "./index113.js";
7
+ /* empty css */
8
+ import E from "./index336.js";
9
+ import N from "./index337.js";
10
+ /* empty css */
11
+ import { noop as d } from "./index248.js";
12
+ const V = { class: "bb-common-input-inner-container__prefix" }, w = { class: "bb-common-input-inner-container__suffix" }, G = /* @__PURE__ */ y({
13
+ __name: "CommonInputInnerContainer",
14
+ props: {
15
+ "append:icon": {},
16
+ clearable: { type: Boolean },
17
+ "prepend:icon": {},
18
+ preventFocus: { type: Boolean }
19
+ },
20
+ emits: ["click:clear"],
21
+ setup(f, { emit: b }) {
22
+ const t = f, _ = b, r = C(), a = () => {
23
+ var e;
24
+ !r.value || t.preventFocus || (e = r.value.querySelector("input")) == null || e.focus();
25
+ }, $ = () => {
26
+ _("click:clear"), a();
27
+ };
28
+ return (e, c) => (i(), v("span", {
29
+ ref_key: "container",
30
+ ref: r,
31
+ class: h(["bb-common-input-inner-container", {
32
+ "bb-common-input-inner-container--clearable": t.clearable
33
+ }]),
34
+ onClick: a,
35
+ onPointerdown: c[0] || (c[0] = B(
36
+ //@ts-ignore
37
+ (...k) => n(d) && n(d)(...k),
38
+ ["prevent"]
39
+ ))
40
+ }, [
41
+ o(e.$slots, "prepend", {}, () => [
42
+ m("span", V, [
43
+ o(e.$slots, "prefix")
44
+ ])
45
+ ]),
46
+ e.$props["prepend:icon"] ? (i(), s(n(u), {
47
+ key: 0,
48
+ class: "bb-common-input-inner-container__prepend-icon",
49
+ type: e.$props["prepend:icon"]
50
+ }, null, 8, ["type"])) : l("", !0),
51
+ o(e.$slots, "default"),
52
+ p(N, {
53
+ "aria-hidden": !e.clearable,
54
+ tabindex: e.clearable ? 0 : -1,
55
+ onClick: $
56
+ }, null, 8, ["aria-hidden", "tabindex"]),
57
+ e.$props["append:icon"] ? (i(), s(n(u), {
58
+ key: 1,
59
+ class: "bb-common-input-inner-container__append-icon",
60
+ type: e.$props["append:icon"]
61
+ }, null, 8, ["type"])) : l("", !0),
62
+ p(E),
63
+ p(n(I)),
64
+ o(e.$slots, "append", {}, () => [
65
+ m("span", w, [
66
+ o(e.$slots, "suffix")
67
+ ])
68
+ ])
69
+ ], 34));
70
+ }
71
+ });
3
72
  export {
4
- t as hash
73
+ G as default
5
74
  };