bitboss-ui 2.1.73 → 2.1.74

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (187) hide show
  1. package/dist/components/BbRows/BbRows.vue.d.ts +3 -3
  2. package/dist/components/BbTable/BbTable.vue.d.ts +30 -6
  3. package/dist/components/BbTable/types.d.ts +46 -28
  4. package/dist/components/BbTable/utils.d.ts +23 -0
  5. package/dist/index.css +1 -1
  6. package/dist/index107.js +9 -9
  7. package/dist/index112.js +1 -1
  8. package/dist/index114.js +1 -1
  9. package/dist/index120.js +1 -1
  10. package/dist/index122.js +326 -304
  11. package/dist/index13.js +2 -2
  12. package/dist/index130.js +1 -1
  13. package/dist/index132.js +5 -5
  14. package/dist/index134.js +1 -1
  15. package/dist/index136.js +2 -2
  16. package/dist/index139.js +1 -1
  17. package/dist/index142.js +1 -1
  18. package/dist/index15.js +5 -5
  19. package/dist/index17.js +3 -3
  20. package/dist/index19.js +8 -8
  21. package/dist/index21.js +14 -14
  22. package/dist/index215.js +2 -2
  23. package/dist/index216.js +2 -2
  24. package/dist/index217.js +1 -1
  25. package/dist/index218.js +1 -1
  26. package/dist/index219.js +9 -34
  27. package/dist/index220.js +13 -9
  28. package/dist/index221.js +13 -2
  29. package/dist/index222.js +127 -4
  30. package/dist/index224.js +4 -3
  31. package/dist/index225.js +22 -85
  32. package/dist/index227.js +2 -29
  33. package/dist/index228.js +2 -17
  34. package/dist/index229.js +4 -51
  35. package/dist/index23.js +11 -11
  36. package/dist/index230.js +19 -14
  37. package/dist/index231.js +201 -3
  38. package/dist/index233.js +34 -16
  39. package/dist/index234.js +8 -12
  40. package/dist/index235.js +2 -13
  41. package/dist/index236.js +8 -13
  42. package/dist/index237.js +3 -4
  43. package/dist/index238.js +28 -19
  44. package/dist/index239.js +16 -201
  45. package/dist/index240.js +19 -0
  46. package/dist/index241.js +49 -125
  47. package/dist/{index232.js → index242.js} +1 -1
  48. package/dist/index243.js +3 -10
  49. package/dist/index244.js +11 -3
  50. package/dist/index245.js +8 -4
  51. package/dist/index246.js +2 -5
  52. package/dist/index247.js +7 -5
  53. package/dist/index248.js +2 -5
  54. package/dist/index249.js +7 -5
  55. package/dist/index25.js +3 -3
  56. package/dist/index250.js +188 -2
  57. package/dist/index251.js +5 -6
  58. package/dist/index252.js +5 -8
  59. package/dist/index253.js +5 -268
  60. package/dist/index254.js +5 -52
  61. package/dist/index255.js +6 -52
  62. package/dist/index256.js +263 -27
  63. package/dist/index257.js +43 -51
  64. package/dist/index258.js +52 -3
  65. package/dist/index259.js +31 -187
  66. package/dist/index260.js +60 -3
  67. package/dist/index261.js +3 -18
  68. package/dist/index262.js +17 -11
  69. package/dist/index263.js +12 -106
  70. package/dist/index264.js +17 -0
  71. package/dist/index265.js +4 -100
  72. package/dist/index266.js +108 -0
  73. package/dist/index268.js +100 -3
  74. package/dist/index27.js +1 -1
  75. package/dist/index270.js +228 -15
  76. package/dist/index271.js +86 -5
  77. package/dist/index273.js +10 -5
  78. package/dist/index274.js +3 -2
  79. package/dist/index275.js +8 -32
  80. package/dist/index276.js +65 -26
  81. package/dist/index277.js +11 -0
  82. package/dist/index278.js +23 -2
  83. package/dist/index279.js +5 -2
  84. package/dist/index280.js +5 -2
  85. package/dist/index281.js +5 -7
  86. package/dist/index282.js +5 -7
  87. package/dist/index283.js +3 -9
  88. package/dist/index284.js +13 -23
  89. package/dist/index285.js +6 -22
  90. package/dist/index286.js +40 -6
  91. package/dist/index287.js +6 -9
  92. package/dist/index288.js +15 -66
  93. package/dist/index289.js +33 -2
  94. package/dist/index29.js +3 -3
  95. package/dist/index290.js +26 -7
  96. package/dist/index292.js +3 -8
  97. package/dist/index293.js +27 -10
  98. package/dist/index294.js +17 -4
  99. package/dist/index295.js +5 -0
  100. package/dist/index296.js +7 -3
  101. package/dist/index297.js +280 -7
  102. package/dist/index298.js +2 -3
  103. package/dist/index299.js +16 -17
  104. package/dist/index300.js +2 -28
  105. package/dist/index301.js +16 -5
  106. package/dist/index302.js +2 -280
  107. package/dist/index303.js +27 -2
  108. package/dist/index304.js +2 -16
  109. package/dist/index305.js +2 -2
  110. package/dist/index306.js +2 -16
  111. package/dist/index307.js +2 -2
  112. package/dist/index308.js +2 -27
  113. package/dist/index309.js +2 -2
  114. package/dist/index31.js +2 -2
  115. package/dist/index310.js +5 -2
  116. package/dist/index311.js +1 -1
  117. package/dist/index312.js +3 -2
  118. package/dist/index313.js +3 -2
  119. package/dist/index314.js +3 -2
  120. package/dist/index315.js +1 -1
  121. package/dist/index316.js +4 -3
  122. package/dist/index317.js +2 -4
  123. package/dist/index318.js +4 -719
  124. package/dist/index319.js +2 -366
  125. package/dist/index321.js +3 -5
  126. package/dist/index322.js +125 -3
  127. package/dist/index323.js +2 -3
  128. package/dist/index324.js +15 -2
  129. package/dist/index325.js +2 -125
  130. package/dist/index326.js +19 -2
  131. package/dist/index327.js +2 -15
  132. package/dist/index328.js +6 -2
  133. package/dist/index329.js +719 -19
  134. package/dist/index33.js +8 -8
  135. package/dist/index330.js +366 -2
  136. package/dist/index331.js +57 -2
  137. package/dist/index332.js +5 -6
  138. package/dist/index333.js +6 -6
  139. package/dist/index334.js +19 -5
  140. package/dist/index335.js +8 -6
  141. package/dist/index336.js +13 -17
  142. package/dist/index337.js +7 -8
  143. package/dist/index338.js +5 -14
  144. package/dist/index339.js +8 -8
  145. package/dist/index340.js +34 -5
  146. package/dist/index341.js +6 -8
  147. package/dist/index342.js +125 -31
  148. package/dist/index343.js +398 -6
  149. package/dist/index344.js +57 -128
  150. package/dist/index345.js +56 -396
  151. package/dist/index346.js +6 -46
  152. package/dist/index347.js +5 -93
  153. package/dist/index348.js +92 -57
  154. package/dist/index349.js +47 -58
  155. package/dist/index35.js +4 -4
  156. package/dist/index350.js +21 -227
  157. package/dist/index352.js +136 -0
  158. package/dist/index353.js +515 -129
  159. package/dist/index354.js +222 -514
  160. package/dist/index37.js +18 -18
  161. package/dist/index39.js +7 -7
  162. package/dist/index41.js +2 -2
  163. package/dist/index43.js +8 -8
  164. package/dist/index45.js +6 -6
  165. package/dist/index49.js +1 -1
  166. package/dist/index53.js +1 -1
  167. package/dist/index55.js +1 -1
  168. package/dist/index57.js +2 -2
  169. package/dist/index61.js +4 -4
  170. package/dist/index67.js +1 -1
  171. package/dist/index80.js +6 -6
  172. package/dist/index82.js +1 -1
  173. package/dist/index84.js +2 -2
  174. package/dist/index86.js +3 -3
  175. package/dist/index88.js +1 -1
  176. package/dist/index91.js +3 -3
  177. package/dist/index93.js +2 -2
  178. package/dist/index95.js +5 -5
  179. package/dist/index97.js +1 -1
  180. package/package.json +2 -2
  181. package/dist/index267.js +0 -231
  182. package/dist/index269.js +0 -8
  183. package/dist/index272.js +0 -7
  184. package/dist/index291.js +0 -7
  185. package/dist/index320.js +0 -59
  186. package/dist/index351.js +0 -24
  187. /package/dist/{index223.js → index226.js} +0 -0
package/dist/index122.js CHANGED
@@ -1,40 +1,58 @@
1
- import { defineComponent as ue, ref as K, computed as y, toRef as O, watch as N, reactive as pe, createBlock as Q, openBlock as n, resolveDynamicComponent as me, normalizeClass as p, unref as h, withCtx as fe, createElementBlock as d, createCommentVNode as C, createElementVNode as o, toDisplayString as m, renderSlot as f, Fragment as A, renderList as B, createVNode as X, createTextVNode as ye, mergeProps as he } from "vue";
2
- import { add as ve } from "./index289.js";
3
- import { clamp as ke } from "./index216.js";
4
- import { isNil as T } from "./index280.js";
5
- import { useId as _e } from "./index8.js";
6
- import { useItemValue as ge } from "./index290.js";
7
- import { when as Ce } from "./index222.js";
8
- import Y from "./index17.js";
1
+ import { defineComponent as be, mergeModels as U, ref as ie, computed as c, toRef as D, useModel as re, watch as H, reactive as ce, createBlock as W, openBlock as t, resolveDynamicComponent as ue, normalizeClass as r, withCtx as pe, createElementBlock as s, createCommentVNode as m, createElementVNode as o, toDisplayString as u, renderSlot as p, unref as y, Fragment as f, renderList as g, normalizeStyle as $, createVNode as q, createTextVNode as me, mergeProps as ye } from "vue";
2
+ import { clamp as _e } from "./index215.js";
3
+ import { hash as L } from "./index237.js";
4
+ import { isNil as V } from "./index235.js";
5
+ import { when as ke } from "./index265.js";
6
+ import { useId as ve } from "./index8.js";
7
+ import { useItemValue as he } from "./index234.js";
8
+ import { useItemsGetter as fe } from "./index238.js";
9
+ import { usePrefill as ge } from "./index239.js";
10
+ import { useIndexById as Ce } from "./index240.js";
11
+ import { useBaseOptions as we } from "./index241.js";
12
+ import { useHashedWatcher as Ve } from "./index242.js";
13
+ import { useLocale as Be } from "./index220.js";
14
+ import G from "./index17.js";
9
15
  /* empty css */
10
- import we from "./index31.js";
16
+ import Te from "./index31.js";
11
17
  /* empty css */
12
- import { hash as E } from "./index231.js";
13
- import { useItemsGetter as Ie } from "./index227.js";
14
- import { usePrefill as Ve } from "./index233.js";
15
- import { useIndexById as Ae } from "./index228.js";
16
- import { useBaseOptions as Be } from "./index229.js";
17
- import { useHashedWatcher as Te } from "./index232.js";
18
- import { useLocale as $e } from "./index235.js";
19
- const xe = {
18
+ import { columnKeyToSlotName as $e, mergeHeaderClasses as Ie, applyFixedTableColumns as Ae, mergeCellClasses as Ne } from "./index286.js";
19
+ import { useLogger as De } from "./index245.js";
20
+ const He = {
20
21
  key: 0,
21
22
  class: "sr-only"
22
- }, Le = ["aria-rowindex"], Ne = { class: "bb-table-header__content" }, De = { class: "bb-table-check__label-text sr-only" }, Se = {
23
+ }, Le = ["aria-rowindex"], xe = { class: "bb-table-header__content" }, Se = { class: "bb-table-check__label-text sr-only" }, Re = {
23
24
  key: 1,
24
25
  class: "bb-table-radio__label-text sr-only"
25
- }, He = ["aria-sort"], Re = { class: "bb-table-header__content" }, Pe = { class: "bb-table-header__content sr-only" }, Oe = ["aria-rowindex"], Ee = ["colspan"], je = { class: "bb-table-loading__text sr-only" }, qe = {
26
- class: "bb-table-skeleton__container",
27
- role: "status"
28
- }, ze = ["aria-rowindex"], Fe = ["colspan"], Me = { class: "bb-table-no-data__text" }, Ue = ["aria-rowindex", "onClick", "onContextmenu", "onDblclick"], We = { class: "bb-table-check__label-text sr-only" }, Ge = { class: "bb-table-radio__label-text sr-only" }, ul = /* @__PURE__ */ ue({
26
+ }, Oe = ["aria-sort"], Pe = { class: "bb-table-header__content" }, Me = { class: "bb-table-header__content sr-only" }, ze = ["aria-rowindex"], Ee = {
27
+ key: 0,
28
+ class: "bb-table-skeleton__cell bb-table-skeleton__cell--select"
29
+ }, Fe = {
30
+ key: 0,
31
+ class: "bb-table-skeleton__cell-content"
32
+ }, je = {
33
+ key: 1,
34
+ class: "bb-table-skeleton__avatar"
35
+ }, Ke = {
36
+ key: 2,
37
+ class: "bb-table-skeleton__avatar-text"
38
+ }, Ue = { class: "bb-table-skeleton__cell-content" }, We = {
39
+ key: 3,
40
+ class: "bb-table-skeleton__image"
41
+ }, qe = {
42
+ key: 4,
43
+ class: "bb-table-skeleton__badge"
44
+ }, Ge = {
45
+ key: 1,
46
+ class: "bb-table-skeleton__cell bb-table-skeleton__cell--actions"
47
+ }, Je = ["aria-rowindex"], Qe = ["colspan"], Xe = { class: "bb-table-loading__text sr-only" }, Ye = ["aria-rowindex"], Ze = ["colspan"], el = { class: "bb-table-no-data__text" }, ll = ["aria-rowindex", "onClick", "onContextmenu", "onDblclick"], al = { class: "bb-table-check__label-text sr-only" }, tl = { class: "bb-table-radio__label-text sr-only" }, wl = /* @__PURE__ */ be({
29
48
  __name: "BbTable",
30
- props: {
49
+ props: /* @__PURE__ */ U({
31
50
  accessibleLabel: {},
32
51
  actions: { type: Boolean },
33
52
  actionsText: { default: "Azioni" },
34
53
  align: { default: "left" },
35
54
  allowSelectAll: { type: Boolean, default: !0 },
36
55
  caption: {},
37
- columns: { default: () => [] },
38
56
  compact: { type: Boolean },
39
57
  dependencies: { default: () => [] },
40
58
  depsDebounceTime: { default: 0 },
@@ -63,422 +81,426 @@ const xe = {
63
81
  tdClass: {},
64
82
  thClass: {},
65
83
  totalItems: {},
66
- unselectedItems: { default: () => [] }
67
- },
68
- emits: ["click:row", "contextmenu:row", "dblclick:row", "update:modelValue", "update:selectAll", "update:unselectedItems", "item:selected", "item:unselected"],
69
- setup(Z, { emit: ee }) {
70
- const { getItemValue: le } = ge(), j = _e().id.value, l = Z, i = ee, { t: w } = $e(), $ = K(), te = (e) => [w("table.select").value].concat(e.map((a) => a.content)).join(" "), ae = y(() => l.selectable ? "fieldset" : "div"), q = y(() => l.loading || se.value), I = y(
71
- () => !T(l.page) && !T(l.perPage) && !T(l.totalItems)
72
- ), z = y(() => [!!l.selectable, !!l.actions].reduce(
73
- (e, a) => e + +!!a,
74
- l.columns.length
75
- )), F = y(
76
- () => l.columns.reduce(
77
- (e, a) => {
78
- const t = a.key.split(/\W+/g).join("_").toLowerCase();
79
- return e[a.key] = t, e;
80
- },
81
- {}
84
+ unselectedItems: { default: () => [] },
85
+ columns: { default: () => [] }
86
+ }, {
87
+ selectAll: { type: Boolean, required: !0 },
88
+ selectAllModifiers: {}
89
+ }),
90
+ emits: /* @__PURE__ */ U(["click:row", "contextmenu:row", "dblclick:row", "update:modelValue", "update:selectAll", "update:unselectedItems", "item:selected", "item:unselected"], ["update:selectAll"]),
91
+ setup(x, { emit: J }) {
92
+ const { getItemValue: Q } = he(), S = ve().id.value, l = x, i = J;
93
+ l.multiple && !Array.isArray(l.modelValue) && De().throw(
94
+ "BbTable is set for multiple selection but modelValue is not an array."
95
+ );
96
+ const { t: C } = Be(), R = ie(), X = (e) => [C("table.select").value, ...e.map((n) => n.content)].join(" "), Y = c(() => l.selectable ? "fieldset" : "div"), I = c(() => l.loading || ee.value), h = c(
97
+ () => !V(l.page) && !V(l.perPage) && !V(l.totalItems)
98
+ ), Z = c(() => ({
99
+ "bb-table": !0,
100
+ [`bb-table--align-${l.align}`]: !0,
101
+ "bb-table--compact": l.compact,
102
+ "bb-table--fixed": l.fixed,
103
+ "bb-table--fixed-header": l.fixedHeaders,
104
+ "bb-table--loading": I.value,
105
+ "bb-table--empty": !B.value.length,
106
+ "bb-table--selectable": !!l.selectable
107
+ })), O = c(
108
+ () => l.columns.length + +!!l.selectable + +!!l.actions
109
+ ), P = c(
110
+ () => Object.fromEntries(
111
+ l.columns.map((e) => [e.key, $e(e.key)])
82
112
  )
83
113
  ), {
84
114
  getter: M,
85
- items: D,
86
- loading: se
87
- } = Ie({
88
- items: O(l, "items")
89
- }), { hasPrefilled: oe } = Ve({
115
+ items: A,
116
+ loading: ee
117
+ } = fe({
118
+ items: D(l, "items")
119
+ }), { hasPrefilled: le } = ge({
90
120
  onStart: !0,
91
121
  currentValue: l.modelValue,
92
122
  multiple: l.multiple,
93
123
  fn: async ({ prefill: e }) => {
94
124
  await M(e, l.modelValue);
95
125
  }
96
- }), { data: U } = Ae({
97
- items: O(l, "modelValue")
98
- }), { options: x } = Be({
99
- disabled: O(l, "disabled"),
100
- items: D,
126
+ }), { data: z } = Ce({
127
+ items: D(l, "modelValue")
128
+ }), { options: B } = we({
129
+ disabled: D(l, "disabled"),
130
+ items: A,
101
131
  itemText: void 0,
102
132
  itemValue: l.itemValue,
103
133
  max: l.max,
104
134
  selectable: !0,
105
- selectedIndexedByHash: U
106
- }), ne = async (e) => {
135
+ selectedIndexedByHash: z
136
+ }), ae = async (e) => {
107
137
  l.multiple ? i("update:modelValue", l.modelValue.concat(e.value)) : i("update:modelValue", e.value);
108
- }, de = async (e) => {
138
+ }, te = async (e) => {
109
139
  if (l.multiple) {
110
- const a = { ...U.value };
111
- delete a[e.valueHash], i("update:modelValue", Object.values(a));
140
+ const n = { ...z.value };
141
+ delete n[e.valueHash], i("update:modelValue", Object.values(n));
112
142
  } else
113
143
  i("update:modelValue", null);
114
144
  };
115
- Te(
145
+ Ve(
116
146
  () => [l.dependencies, l.items],
117
147
  async () => {
118
- oe.value && await M(!1, l.modelValue);
148
+ le.value && await M(!1, l.modelValue);
119
149
  },
120
150
  {
121
151
  debounce: l.depsDebounceTime
122
152
  }
123
153
  );
124
- const ce = y(
125
- () => l.columns.map(
126
- (e) => {
127
- const a = e.align || "left", { label: t, key: u } = e, r = `header:${F.value[e.key]}`;
128
- let c = [`bb-table-header--${a}`];
129
- l.thClass && (c = c.concat(l.thClass)), e.thClass && (c = c.concat(e.thClass));
130
- const v = e.sorted ? e.sorted === "asc" ? "ascending" : "descending" : void 0;
131
- return {
132
- align: a,
133
- key: u,
134
- label: t,
135
- slotName: r,
136
- classes: c,
137
- sortDirection: v
138
- };
139
- }
140
- )
141
- ), W = y(() => x.value.map(
142
- (e, a) => {
143
- let t = !l.selectable;
144
- typeof l.selectable == "function" && (t = !l.selectable(e.item)), t = t || !!e.disabled;
145
- const u = I.value ? a + (l.page - 1) * l.perPage + 2 : void 0, r = l.columns.map(
146
- (s) => {
147
- const H = F.value[s.key], L = s.align || "left", { label: R, key: P } = s;
148
- let b = le(e.item, s.key);
149
- s.formatter && // By default the formatter runs anyway
150
- (!T(b) || s.formatOnNull !== !1) && (b = s.formatter(b, s.key, e.item)), s.placeholder && T(b) && (b = s.placeholder);
151
- let k = [`bb-table-data__cell--${L}`];
152
- if (l.tdClass)
153
- if (typeof l.tdClass == "function") {
154
- let V = l.tdClass(b, s.key, e.item);
155
- V && (k = k.concat(V));
156
- } else k = k.concat(l.tdClass);
157
- if (s.tdClass)
158
- if (typeof s.tdClass == "function") {
159
- let V = s.tdClass(b, s.key, e.item);
160
- V && (k = k.concat(V));
161
- } else k = k.concat(s.tdClass);
162
- return {
163
- align: L,
164
- classes: k,
165
- content: b,
166
- key: P,
167
- label: R,
168
- slotName: H
169
- };
170
- }
154
+ const se = (e, n) => {
155
+ const a = P.value[e.key], d = e.align ?? "left";
156
+ let b = Q(n.item, e.key);
157
+ return e.formatter && (!V(b) || e.formatOnNull !== !1) && (b = e.formatter(b, e.key, n.item)), e.placeholder && V(b) && (b = e.placeholder), {
158
+ align: d,
159
+ classes: Ne(
160
+ [`bb-table-data__cell--${d}`],
161
+ l.tdClass,
162
+ e.tdClass,
163
+ b,
164
+ e.key,
165
+ n.item
166
+ ),
167
+ content: b,
168
+ key: e.key,
169
+ label: e.label,
170
+ slotName: a
171
+ };
172
+ }, oe = c(
173
+ () => l.columns.map((e) => {
174
+ const n = e.align ?? "left", a = `header:${P.value[e.key]}`, d = e.sorted ? e.sorted === "asc" ? "ascending" : "descending" : void 0;
175
+ return {
176
+ align: n,
177
+ key: e.key,
178
+ label: e.label,
179
+ slotName: a,
180
+ classes: Ie(
181
+ [`bb-table-header--${n}`],
182
+ l.thClass,
183
+ e.thClass
184
+ ),
185
+ sortDirection: d
186
+ };
187
+ })
188
+ ), E = c(
189
+ () => B.value.map((e, n) => {
190
+ const a = !l.selectable || typeof l.selectable == "function" && !l.selectable(e.item) || !!e.disabled, d = h.value ? n + (l.page - 1) * l.perPage + 2 : void 0, b = l.columns.map(
191
+ (v) => se(v, e)
171
192
  );
172
193
  return {
173
- accessibleLabel: te(r),
174
- cols: r,
175
- onRowClick: (s) => i("click:row", s, e, !!e.selected),
176
- onRowContextMenu: (s) => i("contextmenu:row", s, e, !!e.selected),
177
- onRowDblClick: (s) => i("dblclick:row", s, e, !!e.selected),
194
+ accessibleLabel: X(b),
195
+ cols: b,
196
+ onRowClick: (v) => i("click:row", v, e, !!e.selected),
197
+ onRowContextMenu: (v) => i("contextmenu:row", v, e, !!e.selected),
198
+ onRowDblClick: (v) => i("dblclick:row", v, e, !!e.selected),
178
199
  item: e.item,
179
200
  text: e.text,
180
- rowIndex: u,
201
+ rowIndex: d,
181
202
  valueHash: e.valueHash,
182
203
  value: e.value,
183
204
  selected: e.selected,
184
- disabled: t
205
+ disabled: a
185
206
  };
186
- }
187
- )), _ = K(l.selectAll);
188
- N(
189
- () => l.selectAll,
190
- () => {
191
- _.value = l.selectAll;
192
- }
193
- ), N(_, () => {
194
- g.clear(), i("update:unselectedItems", []), i("update:modelValue", []);
207
+ })
208
+ ), _ = re(x, "selectAll");
209
+ H(_, () => {
210
+ k.clear(), i("update:unselectedItems", []), i("update:modelValue", []);
195
211
  });
196
- const G = y(() => l.modelValue?.length && !l.selectAll ? !0 : !!(_.value && g.size)), g = pe(/* @__PURE__ */ new Set());
197
- N(
212
+ const F = c(() => !!(l.multiple && l.modelValue.length > 0 && !l.selectAll || _.value && k.size > 0)), k = ce(/* @__PURE__ */ new Set());
213
+ H(
198
214
  () => l.unselectedItems,
199
215
  () => {
200
- g.clear(), l.unselectedItems.forEach((e) => {
201
- g.add(E(e));
216
+ k.clear(), l.unselectedItems.forEach((e) => {
217
+ k.add(L(e));
202
218
  });
203
219
  }
204
220
  );
205
- const J = (e) => {
206
- S(e) ? (de(e), i("item:unselected", e.value), g.add(e.valueHash), i("update:unselectedItems", [...l.unselectedItems, e.value])) : (_.value || ne(e), i("item:selected", e.value), g.delete(e.valueHash), i(
221
+ const j = (e) => {
222
+ if (N(e)) {
223
+ te(e), i("item:unselected", e.value), k.add(e.valueHash), i("update:unselectedItems", [...l.unselectedItems, e.value]);
224
+ return;
225
+ }
226
+ _.value || ae(e), i("item:selected", e.value), k.delete(e.valueHash), i(
207
227
  "update:unselectedItems",
208
- l.unselectedItems.filter((a) => E(a) !== E(e.value))
209
- ));
210
- }, S = (e) => g.has(e.valueHash) ? !1 : e.selected || _.value, ie = Ce(
228
+ l.unselectedItems.filter((n) => L(n) !== L(e.value))
229
+ );
230
+ }, N = (e) => k.has(e.valueHash) ? !1 : e.selected || _.value, ne = ke(
211
231
  (e) => typeof e != "string",
212
232
  JSON.stringify
213
- ), re = y(() => [].concat(l.modelValue).map((e) => {
214
- const a = ie(e);
215
- return {
233
+ ), de = c(
234
+ () => [].concat(l.modelValue ?? []).map((e) => ({
216
235
  disabled: l.disabled,
217
236
  name: l.name,
218
237
  type: "hidden",
219
- value: a
220
- };
221
- })), be = y(() => ke(x.value.length, 4, 10));
222
- return N(
223
- () => W.value,
238
+ value: ne(e)
239
+ }))
240
+ ), T = [70, 45, 85, 55], K = c(
241
+ () => _e(B.value.length || l.columns.length || 1, 4, 10)
242
+ );
243
+ return H(
244
+ () => [E.value, l.fixedColumns],
224
245
  () => {
225
- if (l.fixedColumns.length && l.items && $.value) {
226
- const e = Array.from(
227
- $.value.querySelectorAll("thead th")
228
- ), a = l.fixedColumns.reduce(
229
- (r, c) => {
230
- const v = typeof c == "number" ? c : c.index, s = typeof c == "number" ? "left" : c.position, H = e[v].getBoundingClientRect(), L = Math.floor(H.width), R = r.filter((b) => b.position === s).map((b) => b.width).reduce(ve, 0), P = {
231
- index: v,
232
- position: s,
233
- width: L,
234
- offset: R
235
- };
236
- return r.push(P), r;
237
- },
238
- []
239
- );
240
- Array.from($.value?.querySelectorAll("tr")).map(
241
- (r) => Array.from(
242
- r.querySelectorAll(
243
- a.map((c) => `:scope > :nth-child(${c.index + 1})`).join(", ")
244
- )
245
- )
246
- ).forEach((r) => {
247
- r.forEach((c, v) => {
248
- c.style.position = "sticky", a[v].position === "left" ? c.style.left = `${a[v].offset}px` : c.style.right = `${a[v].offset}px`;
249
- });
250
- });
251
- }
246
+ const e = R.value;
247
+ e && l.fixedColumns?.length && Ae(e, l.fixedColumns);
252
248
  },
253
- {
254
- flush: "post"
255
- }
256
- ), (e, a) => (n(), Q(me(ae.value), {
257
- ref_key: "container",
258
- ref: $,
259
- "aria-rowcount": I.value ? e.totalItems : void 0,
260
- class: p({
261
- "bb-table": !0,
262
- [`bb-table--align-${e.align}`]: !0,
263
- "bb-table--compact": e.compact,
264
- "bb-table--fixed": e.fixed,
265
- "bb-table--fixed-header": e.fixedHeaders,
266
- "bb-table--loading": q.value,
267
- "bb-table--empty": !h(x).length,
268
- "bb-table--selectable": e.selectable
269
- })
249
+ { flush: "post" }
250
+ ), (e, n) => (t(), W(ue(Y.value), {
251
+ ref_key: "containerRef",
252
+ ref: R,
253
+ "aria-busy": I.value,
254
+ "aria-rowcount": h.value ? l.totalItems : void 0,
255
+ class: r(Z.value),
256
+ inert: e.disabled
270
257
  }, {
271
- default: fe(() => [
272
- e.selectable ? (n(), d("legend", xe, m(e.legend), 1)) : C("", !0),
258
+ default: pe(() => [
259
+ e.selectable ? (t(), s("legend", He, u(e.legend), 1)) : m("", !0),
273
260
  o("table", null, [
274
- e.caption ? (n(), d("caption", {
261
+ e.caption ? (t(), s("caption", {
275
262
  key: 0,
276
- class: p({
263
+ class: r({
277
264
  "bb-table-caption": !0,
278
265
  "sr-only": !e.displayCaption
279
266
  })
280
- }, m(e.caption), 3)) : C("", !0),
267
+ }, u(e.caption), 3)) : m("", !0),
281
268
  o("thead", null, [
282
- f(e.$slots, "thead", {}, () => [
269
+ p(e.$slots, "thead", {}, () => [
283
270
  o("tr", {
284
- "aria-rowindex": I.value ? 1 : void 0,
271
+ "aria-rowindex": h.value ? 1 : void 0,
285
272
  class: "bb-table-header-row"
286
273
  }, [
287
- e.selectable ? (n(), d("th", {
274
+ e.selectable ? (t(), s("th", {
288
275
  key: 0,
289
- class: p(["bb-table-header bb-table-header--select", e.thClass]),
276
+ class: r(["bb-table-header bb-table-header--select", e.thClass]),
290
277
  scope: "col"
291
278
  }, [
292
- f(e.$slots, "header:select", {
279
+ p(e.$slots, "header:select", {
293
280
  multiple: e.multiple,
294
281
  selectAll: !!_.value,
295
- text: e.selectText || h(w)("table.selectText").value
282
+ text: e.selectText || y(C)("table.selectText").value
296
283
  }, () => [
297
- o("span", Ne, [
298
- e.allowSelectAll && e.multiple ? (n(), d("label", {
284
+ o("span", xe, [
285
+ e.allowSelectAll && e.multiple ? (t(), s("label", {
299
286
  key: 0,
300
- class: p(["bb-table-check__label", {
287
+ class: r(["bb-table-check__label", {
301
288
  "bb-table-check__label--disabled": e.disabled
302
289
  }])
303
290
  }, [
304
- (n(), Q(Y, {
305
- key: G.value.toString(),
291
+ (t(), W(G, {
292
+ key: F.value.toString(),
306
293
  modelValue: _.value,
307
- "onUpdate:modelValue": [
308
- a[0] || (a[0] = (t) => _.value = t),
309
- a[1] || (a[1] = (t) => i("update:selectAll", t))
310
- ],
294
+ "onUpdate:modelValue": n[0] || (n[0] = (a) => _.value = a),
311
295
  class: "bb-table-check",
312
296
  disabled: e.disabled,
313
- indeterminate: G.value,
297
+ indeterminate: F.value,
314
298
  name: `select_all_${e.name || ""}`,
315
299
  readonly: e.readonly
316
300
  }, null, 8, ["modelValue", "disabled", "indeterminate", "name", "readonly"])),
317
- o("span", De, m(e.selectAllLabel || h(w)("table.selectAllLabel").value), 1)
318
- ], 2)) : e.multiple ? C("", !0) : (n(), d("span", Se, m(e.selectText || h(w)("table.selectText").value), 1))
301
+ o("span", Se, u(e.selectAllLabel || y(C)("table.selectAllLabel").value), 1)
302
+ ], 2)) : e.multiple ? m("", !0) : (t(), s("span", Re, u(e.selectText || y(C)("table.selectText").value), 1))
319
303
  ])
320
304
  ])
321
- ], 2)) : C("", !0),
322
- (n(!0), d(A, null, B(ce.value, (t) => (n(), d("th", {
323
- key: t.key,
324
- "aria-sort": t.sortDirection,
325
- class: p(["bb-table-header", t.classes]),
305
+ ], 2)) : m("", !0),
306
+ (t(!0), s(f, null, g(oe.value, (a) => (t(), s("th", {
307
+ key: a.key,
308
+ "aria-sort": a.sortDirection,
309
+ class: r(["bb-table-header", a.classes]),
326
310
  scope: "col"
327
311
  }, [
328
- f(e.$slots, t.slotName, {
329
- classes: t.classes,
330
- items: h(D),
331
- label: t.label
312
+ p(e.$slots, a.slotName, {
313
+ classes: a.classes,
314
+ items: y(A),
315
+ label: a.label
332
316
  }, () => [
333
- o("span", Re, m(t.label), 1)
317
+ o("span", Pe, u(a.label), 1)
334
318
  ])
335
- ], 10, He))), 128)),
336
- e.actions ? (n(), d("th", {
319
+ ], 10, Oe))), 128)),
320
+ e.actions ? (t(), s("th", {
337
321
  key: 1,
338
- class: p(["bb-table-header bb-table-header--actions", e.thClass]),
322
+ class: r(["bb-table-header bb-table-header--actions", e.thClass]),
339
323
  scope: "col"
340
324
  }, [
341
- f(e.$slots, "header:actions", { text: e.actionsText }, () => [
342
- o("span", Pe, m(e.actionsText), 1)
325
+ p(e.$slots, "header:actions", { text: e.actionsText }, () => [
326
+ o("span", Me, u(e.actionsText), 1)
343
327
  ])
344
- ], 2)) : C("", !0)
328
+ ], 2)) : m("", !0)
345
329
  ], 8, Le)
346
330
  ])
347
331
  ]),
348
332
  o("tbody", null, [
349
- q.value ? f(e.$slots, "loading", {
333
+ I.value ? p(e.$slots, "loading", {
350
334
  key: 0,
351
- items: h(D)
335
+ items: y(A)
352
336
  }, () => [
337
+ (t(!0), s(f, null, g(K.value, (a, d) => (t(), s("tr", {
338
+ key: d,
339
+ "aria-rowindex": h.value ? d + 2 : void 0,
340
+ class: "bb-table-skeleton__row"
341
+ }, [
342
+ e.selectable ? (t(), s("td", Ee, n[1] || (n[1] = [
343
+ o("div", { class: "bb-table-skeleton__placeholder" }, null, -1)
344
+ ]))) : m("", !0),
345
+ (t(!0), s(f, null, g(l.columns, (b, w) => (t(), s("td", {
346
+ key: b.key,
347
+ class: r([
348
+ "bb-table-skeleton__cell",
349
+ `bb-table-skeleton__cell--${b.skeleton ?? "text"}`
350
+ ])
351
+ }, [
352
+ !b.skeleton || b.skeleton === "text" ? (t(), s("div", Fe, [
353
+ o("div", {
354
+ class: "bb-table-skeleton__line",
355
+ style: $({
356
+ width: `${T[(d + w) % 4]}%`
357
+ })
358
+ }, null, 4),
359
+ o("div", {
360
+ class: "bb-table-skeleton__line",
361
+ style: $({
362
+ width: `${T[(d + w + 2) % 4]}%`
363
+ })
364
+ }, null, 4)
365
+ ])) : b.skeleton === "avatar" ? (t(), s("div", je)) : b.skeleton === "avatar-text" ? (t(), s("div", Ke, [
366
+ n[2] || (n[2] = o("div", { class: "bb-table-skeleton__avatar" }, null, -1)),
367
+ o("div", Ue, [
368
+ o("div", {
369
+ class: "bb-table-skeleton__line",
370
+ style: $({
371
+ width: `${T[(d + w) % 4]}%`
372
+ })
373
+ }, null, 4),
374
+ o("div", {
375
+ class: "bb-table-skeleton__line",
376
+ style: $({
377
+ width: `${T[(d + w + 2) % 4]}%`
378
+ })
379
+ }, null, 4)
380
+ ])
381
+ ])) : b.skeleton === "image" ? (t(), s("div", We)) : b.skeleton === "badge" ? (t(), s("div", qe)) : m("", !0)
382
+ ], 2))), 128)),
383
+ e.actions ? (t(), s("td", Ge, n[3] || (n[3] = [
384
+ o("div", { class: "bb-table-skeleton__placeholder" }, null, -1)
385
+ ]))) : m("", !0)
386
+ ], 8, ze))), 128)),
353
387
  o("tr", {
354
- "aria-rowindex": I.value ? 2 : void 0,
355
- class: "bb-table-loading__row"
388
+ "aria-rowindex": h.value ? K.value + 2 : void 0,
389
+ class: "bb-table-loading__row bb-table-loading__row--sr-only"
356
390
  }, [
357
391
  o("td", {
392
+ colspan: O.value,
358
393
  class: "bb-table-loading__cell",
359
- colspan: z.value
394
+ "aria-live": "polite",
395
+ role: "status"
360
396
  }, [
361
- o("span", je, m(e.loadingText), 1),
362
- o("div", qe, [
363
- (n(!0), d(A, null, B(be.value, (t) => (n(), d("div", {
364
- key: t,
365
- class: "bb-table-skeleton-item"
366
- }, a[2] || (a[2] = [
367
- o("div", { class: "bb-table-skeleton-item__avatar-container" }, [
368
- o("div", { class: "bb-table-skeleton-item__avatar" })
369
- ], -1),
370
- o("div", { class: "bb-table-skeleton-item__text" }, [
371
- o("div", { class: "bb-table-skeleton-item__line" }),
372
- o("div", { class: "bb-table-skeleton-item__line" })
373
- ], -1)
374
- ])))), 128))
375
- ])
376
- ], 8, Ee)
377
- ], 8, Oe)
378
- ]) : h(x).length ? f(e.$slots, "tbody", { key: 2 }, () => [
379
- (n(!0), d(A, null, B(W.value, (t) => (n(), d("tr", {
380
- key: t.valueHash,
381
- "aria-rowindex": t.rowIndex,
397
+ o("span", Xe, u(e.loadingText), 1)
398
+ ], 8, Qe)
399
+ ], 8, Je)
400
+ ]) : y(B).length ? p(e.$slots, "tbody", { key: 2 }, () => [
401
+ (t(!0), s(f, null, g(E.value, (a) => (t(), s("tr", {
402
+ key: a.valueHash,
403
+ "aria-rowindex": a.rowIndex,
382
404
  class: "bb-table-data__row",
383
- onClick: t.onRowClick,
384
- onContextmenu: t.onRowContextMenu,
385
- onDblclick: t.onRowDblClick
405
+ onClick: a.onRowClick,
406
+ onContextmenu: a.onRowContextMenu,
407
+ onDblclick: a.onRowDblClick
386
408
  }, [
387
- e.selectable ? (n(), d("td", {
409
+ e.selectable ? (t(), s("td", {
388
410
  key: 0,
389
- class: p(["bb-table-data__cell bb-table-data__cell--select", e.tdClass])
411
+ class: r(["bb-table-data__cell bb-table-data__cell--select", e.tdClass])
390
412
  }, [
391
- f(e.$slots, "select", {
392
- checked: S(t),
393
- disabled: !!t.disabled,
394
- inputName: h(j),
395
- item: t.item,
413
+ p(e.$slots, "select", {
414
+ checked: N(a),
415
+ disabled: !!a.disabled,
416
+ inputName: y(S),
417
+ item: a.item,
396
418
  readonly: !!e.readonly,
397
- value: t.value
419
+ value: a.value
398
420
  }, () => [
399
- e.multiple ? (n(), d("label", {
421
+ e.multiple ? (t(), s("label", {
400
422
  key: 0,
401
- class: p(["bb-table-check__label", {
402
- "bb-table-check__label--disabled": t.disabled
423
+ class: r(["bb-table-check__label", {
424
+ "bb-table-check__label--disabled": a.disabled
403
425
  }])
404
426
  }, [
405
- X(Y, {
406
- checked: S(t),
427
+ q(G, {
428
+ checked: N(a),
407
429
  class: "bb-table-check",
408
- disabled: t.disabled,
430
+ disabled: a.disabled,
409
431
  readonly: e.readonly,
410
- onChange: () => J(t)
432
+ onChange: () => j(a)
411
433
  }, null, 8, ["checked", "disabled", "readonly", "onChange"]),
412
- o("span", We, m(t.accessibleLabel), 1)
413
- ], 2)) : (n(), d("label", {
434
+ o("span", al, u(a.accessibleLabel), 1)
435
+ ], 2)) : (t(), s("label", {
414
436
  key: 1,
415
- class: p(["bb-table-radio__label", {
416
- "bb-table-radio__label--disabled": t.disabled
437
+ class: r(["bb-table-radio__label", {
438
+ "bb-table-radio__label--disabled": a.disabled
417
439
  }])
418
440
  }, [
419
- X(we, {
420
- checked: t.selected,
441
+ q(Te, {
442
+ checked: a.selected,
421
443
  class: "bb-table-radio",
422
- disabled: t.disabled,
423
- name: h(j),
444
+ disabled: a.disabled,
445
+ name: y(S),
424
446
  readonly: e.readonly,
425
- value: t.value,
426
- onChange: () => J(t)
447
+ value: a.value,
448
+ onChange: () => j(a)
427
449
  }, null, 8, ["checked", "disabled", "name", "readonly", "value", "onChange"]),
428
- o("span", Ge, m(t.accessibleLabel), 1)
450
+ o("span", tl, u(a.accessibleLabel), 1)
429
451
  ], 2))
430
452
  ])
431
- ], 2)) : C("", !0),
432
- (n(!0), d(A, null, B(t.cols, (u) => (n(), d("td", {
433
- key: u.key,
434
- class: p(["bb-table-data__cell", u.classes])
453
+ ], 2)) : m("", !0),
454
+ (t(!0), s(f, null, g(a.cols, (d) => (t(), s("td", {
455
+ key: d.key,
456
+ class: r(["bb-table-data__cell", d.classes])
435
457
  }, [
436
- f(e.$slots, u.slotName, {
437
- classes: u.classes,
438
- content: u.content,
439
- item: t.item,
440
- value: t.value
458
+ p(e.$slots, d.slotName, {
459
+ classes: d.classes,
460
+ content: d.content,
461
+ item: a.item,
462
+ value: a.value
441
463
  }, () => [
442
- ye(m(u.content), 1)
464
+ me(u(d.content), 1)
443
465
  ])
444
466
  ], 2))), 128)),
445
- e.actions ? (n(), d("td", {
467
+ e.actions ? (t(), s("td", {
446
468
  key: 1,
447
- class: p(["bb-table__cell bb-table__cell--actions", e.tdClass])
469
+ class: r(["bb-table__cell bb-table__cell--actions", e.tdClass])
448
470
  }, [
449
- f(e.$slots, "actions", {
450
- item: t.item,
451
- value: t.value
471
+ p(e.$slots, "actions", {
472
+ item: a.item,
473
+ value: a.value
452
474
  })
453
- ], 2)) : C("", !0)
454
- ], 40, Ue))), 128))
455
- ]) : f(e.$slots, "no-data", { key: 1 }, () => [
475
+ ], 2)) : m("", !0)
476
+ ], 40, ll))), 128))
477
+ ]) : p(e.$slots, "no-data", { key: 1 }, () => [
456
478
  o("tr", {
457
- "aria-rowindex": I.value ? 2 : void 0,
479
+ "aria-rowindex": h.value ? 2 : void 0,
458
480
  class: "bb-table-no-data__row"
459
481
  }, [
460
482
  o("td", {
461
483
  class: "bb-table-no-data__cell",
462
- colspan: z.value
484
+ colspan: O.value
463
485
  }, [
464
- o("span", Me, m(e.noDataText || h(w)("table.noDataText").value), 1)
465
- ], 8, Fe)
466
- ], 8, ze)
486
+ o("span", el, u(e.noDataText || y(C)("table.noDataText").value), 1)
487
+ ], 8, Ze)
488
+ ], 8, Ye)
467
489
  ])
468
490
  ]),
469
491
  o("tfoot", null, [
470
- f(e.$slots, "tfoot")
492
+ p(e.$slots, "tfoot")
471
493
  ])
472
494
  ]),
473
- (n(!0), d(A, null, B(re.value, (t) => (n(), d("input", he({
474
- key: t.value,
495
+ (t(!0), s(f, null, g(de.value, (a) => (t(), s("input", ye({
496
+ key: a.value,
475
497
  ref_for: !0
476
- }, t), null, 16))), 128))
498
+ }, a), null, 16))), 128))
477
499
  ]),
478
500
  _: 3
479
- }, 8, ["aria-rowcount", "class"]));
501
+ }, 8, ["aria-busy", "aria-rowcount", "class", "inert"]));
480
502
  }
481
503
  });
482
504
  export {
483
- ul as default
505
+ wl as default
484
506
  };