@boobooking/dashboard-ui-components 0.12.0 → 0.13.0

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.
package/dist/index.js CHANGED
@@ -1,11 +1,11 @@
1
- import { Fragment as e, Transition as t, createBlock as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, createTextVNode as o, createVNode as s, mergeProps as c, normalizeClass as l, openBlock as u, renderList as d, renderSlot as f, resolveComponent as p, toDisplayString as m, useId as h, vModelText as g, vShow as _, withCtx as v, withDirectives as y, withKeys as ee, withModifiers as b } from "vue";
2
- import te from "imask";
1
+ import { Fragment as e, Transition as t, createBlock as n, createCommentVNode as r, createElementBlock as i, createElementVNode as a, createTextVNode as o, createVNode as s, effectScope as c, mergeProps as l, normalizeClass as u, openBlock as d, renderList as f, renderSlot as p, resolveComponent as m, shallowReactive as h, toDisplayString as g, useId as _, vModelText as v, vShow as y, watch as ee, withCtx as b, withDirectives as x, withKeys as te, withModifiers as S } from "vue";
2
+ import ne from "imask";
3
3
  //#region src/i18n.js
4
- var x = ["ru", "en"];
5
- function S(e) {
6
- return x.includes(e);
4
+ var C = ["ru", "en"];
5
+ function w(e) {
6
+ return C.includes(e);
7
7
  }
8
- var ne = {
8
+ var re = {
9
9
  ru: {
10
10
  cancel: "Отмена",
11
11
  download: "Скачать",
@@ -102,26 +102,152 @@ var ne = {
102
102
  back: "Back",
103
103
  close: "Close"
104
104
  }
105
- }, C = Symbol("dashboardUi"), re = Object.freeze({
105
+ };
106
+ //#endregion
107
+ //#region src/windows.js
108
+ function T(e, t) {
109
+ if (e == null || e === "") return null;
110
+ let n = new URL(String(e), t);
111
+ return n.pathname + n.search;
112
+ }
113
+ function ie(e) {
114
+ return e === null ? null : e.split("?")[0];
115
+ }
116
+ function ae() {
117
+ return {
118
+ windows: [],
119
+ cards: /* @__PURE__ */ new Map(),
120
+ shown: null,
121
+ transition: {
122
+ number: 0,
123
+ fromAddress: null,
124
+ fromWindow: null,
125
+ assigned: /* @__PURE__ */ new Map()
126
+ },
127
+ nextId: 1
128
+ };
129
+ }
130
+ function E(e, t) {
131
+ return e.windows.includes(t);
132
+ }
133
+ function oe(e) {
134
+ return e.returnAddress ?? e.fallbackAddress;
135
+ }
136
+ function se(e) {
137
+ let t = null;
138
+ for (let n of e.cards.values()) t = n.window;
139
+ return t;
140
+ }
141
+ function D(e, t) {
142
+ let n = t;
143
+ for (; n !== null && !E(e, n);) n = n.parent;
144
+ return n;
145
+ }
146
+ function ce(e, t) {
147
+ return e.transition = {
148
+ number: e.transition.number + 1,
149
+ fromAddress: e.shown,
150
+ fromWindow: se(e),
151
+ assigned: /* @__PURE__ */ new Map()
152
+ }, e.shown = t, e.transition.number;
153
+ }
154
+ function le(e, t, n) {
155
+ let r = e.transition, i = r.assigned.get(t);
156
+ if (i !== void 0 && E(e, i)) return i;
157
+ let a = r.fromWindow, o = r.fromAddress;
158
+ a !== null && !E(e, a) && (a = D(e, a), o = null), a !== null && oe(a) === e.shown && (e.windows.splice(e.windows.indexOf(a)), a = a.parent === null ? null : D(e, a.parent), o = null);
159
+ for (let n = a; n !== null; n = n.parent) if (n.key === t && E(e, n)) return e.windows.splice(e.windows.indexOf(n) + 1), n;
160
+ a === null ? e.windows = [] : e.windows.splice(e.windows.indexOf(a) + 1);
161
+ let s = {
162
+ id: e.nextId,
163
+ key: t,
164
+ parent: a,
165
+ returnAddress: o,
166
+ fallbackAddress: n
167
+ };
168
+ return e.nextId += 1, e.windows.push(s), s;
169
+ }
170
+ function O(e, t, n, r) {
171
+ let i = le(e, n, r);
172
+ return i.fallbackAddress = r, e.transition.assigned.set(n, i), e.cards.delete(t), e.cards.set(t, {
173
+ key: n,
174
+ window: i,
175
+ processed: e.transition.number
176
+ }), i;
177
+ }
178
+ function ue(e, t, n, r) {
179
+ let i = e.cards.get(t);
180
+ return i === void 0 ? {
181
+ window: O(e, t, n, r),
182
+ rejected: !1,
183
+ key: n
184
+ } : i.key === n ? (i.processed = e.transition.number, {
185
+ window: i.window,
186
+ rejected: !1,
187
+ key: n
188
+ }) : i.processed === e.transition.number ? {
189
+ window: i.window,
190
+ rejected: !0,
191
+ key: i.key
192
+ } : (e.cards.delete(t), {
193
+ window: O(e, t, n, r),
194
+ rejected: !1,
195
+ key: n
196
+ });
197
+ }
198
+ function de(e, t) {
199
+ e.cards.delete(t);
200
+ }
201
+ function fe(e, t, n) {
202
+ let r = e.cards.get(t);
203
+ r !== void 0 && (r.window.fallbackAddress = n);
204
+ }
205
+ //#endregion
206
+ //#region src/plugin.js
207
+ var k = Symbol("dashboardUi"), pe = Object.freeze({
106
208
  lang: "ru",
107
- navigate: null
108
- }), w = { uiSettings: {
109
- from: C,
110
- default: () => re
111
- } }, ie = { install(e, t) {
209
+ navigate: null,
210
+ windows: null
211
+ }), A = { uiSettings: {
212
+ from: k,
213
+ default: () => pe
214
+ } };
215
+ function me(e, t) {
216
+ let n = ae(), r = h({
217
+ number: 0,
218
+ address: null
219
+ }), i = c(!0);
220
+ return i.run(() => {
221
+ ee(t, (e) => {
222
+ let t = T(e, window.location.origin);
223
+ t !== null && t !== r.address && (r.number = ce(n, t), r.address = t);
224
+ }, {
225
+ flush: "sync",
226
+ immediate: !0
227
+ });
228
+ }), e.onUnmount(() => i.stop()), {
229
+ state: n,
230
+ page: r
231
+ };
232
+ }
233
+ var he = { install(e, t) {
112
234
  let n = t ?? {}, r = Object.hasOwn(n, "lang") ? n.lang : "ru";
113
- if (!S(r)) throw Error(`dashboardUi: неизвестный lang «${r}», допустимы: ${x.join(", ")}`);
235
+ if (!w(r)) throw Error(`dashboardUi: неизвестный lang «${r}», допустимы: ${C.join(", ")}`);
114
236
  let i = Object.hasOwn(n, "navigate"), a = i ? n.navigate : null;
115
237
  if (i && typeof a != "function") throw Error("dashboardUi: navigate должен быть функцией (href) => …");
116
- e.provide(C, Object.freeze({
238
+ let o = Object.hasOwn(n, "currentUrl"), s = o ? n.currentUrl : null;
239
+ if (o && typeof s != "function") throw Error("dashboardUi: currentUrl должен быть функцией () => адрес страницы");
240
+ let c = s !== null && typeof window < "u" ? me(e, s) : null;
241
+ e.provide(k, Object.freeze({
117
242
  lang: r,
118
- navigate: a
243
+ navigate: a,
244
+ windows: c
119
245
  }));
120
- } }, T = (e, t) => {
246
+ } }, j = (e, t) => {
121
247
  let n = e.__vccOpts || e;
122
248
  for (let [e, r] of t) n[e] = r;
123
249
  return n;
124
- }, ae = {
250
+ }, ge = {
125
251
  props: {
126
252
  isOpen: {
127
253
  type: Boolean,
@@ -148,21 +274,21 @@ var ne = {
148
274
  document.removeEventListener("keydown", this.handleEscape);
149
275
  }
150
276
  };
151
- function E(e, t, n, r, a, o) {
152
- return y((u(), i("button", {
277
+ function _e(e, t, n, r, a, o) {
278
+ return x((d(), i("button", {
153
279
  tabindex: "-1",
154
- onClick: t[0] ||= b((...e) => o.closeOverlay && o.closeOverlay(...e), ["prevent"]),
155
- class: l(["bb:fixed bb:inset-0 bb:w-full bb:h-full bb:cursor-default bb:flex bb:items-start", {
280
+ onClick: t[0] ||= S((...e) => o.closeOverlay && o.closeOverlay(...e), ["prevent"]),
281
+ class: u(["bb:fixed bb:inset-0 bb:w-full bb:h-full bb:cursor-default bb:flex bb:items-start", {
156
282
  "bb:z-20": n.isOpen,
157
283
  "bb:bg-transparent": n.isTransparent,
158
284
  "bb:bg-gray-900 bb:opacity-75": !n.isTransparent
159
285
  }])
160
- }, null, 2)), [[_, n.isOpen]]);
286
+ }, null, 2)), [[y, n.isOpen]]);
161
287
  }
162
288
  //#endregion
163
289
  //#region src/components/Popup.vue
164
- var oe = {
165
- components: { Overlay: /* @__PURE__ */ T(ae, [["render", E]]) },
290
+ var ve = {
291
+ components: { Overlay: /* @__PURE__ */ j(ge, [["render", _e]]) },
166
292
  inheritAttrs: !1,
167
293
  emits: ["update:modelValue"],
168
294
  props: {
@@ -195,12 +321,12 @@ var oe = {
195
321
  return this.align === "right";
196
322
  }
197
323
  }
198
- }, se = { class: "bb-dashboard-ui bb:relative" };
199
- function ce(e, n, r, o, l, d) {
200
- let m = p("overlay");
201
- return u(), i("div", se, [s(m, {
202
- "is-open": l.overlayIsOpen,
203
- "onUpdate:isOpen": n[0] ||= (e) => l.overlayIsOpen = e
324
+ }, ye = { class: "bb-dashboard-ui bb:relative" };
325
+ function be(e, n, r, o, c, u) {
326
+ let f = m("overlay");
327
+ return d(), i("div", ye, [s(f, {
328
+ "is-open": c.overlayIsOpen,
329
+ "onUpdate:isOpen": n[0] ||= (e) => c.overlayIsOpen = e
204
330
  }, null, 8, ["is-open"]), s(t, {
205
331
  "enter-active-class": "bb:transition bb:ease-out bb:duration-100",
206
332
  "enter-from-class": "bb:opacity-0 bb:scale-95",
@@ -209,14 +335,14 @@ function ce(e, n, r, o, l, d) {
209
335
  "leave-from-class": "bb:opacity-100 bb:scale-100",
210
336
  "leave-to-class": "bb:opacity-0 bb:scale-95"
211
337
  }, {
212
- default: v(() => [y(a("div", c(e.$attrs, { class: ["bb:absolute bb:z-20", {
213
- "bb:left-0": d.alignLeft,
214
- "bb:right-0": d.alignRight
215
- }] }), [f(e.$slots, "default")], 16), [[_, r.modelValue]])]),
338
+ default: b(() => [x(a("div", l(e.$attrs, { class: ["bb:absolute bb:z-20", {
339
+ "bb:left-0": u.alignLeft,
340
+ "bb:right-0": u.alignRight
341
+ }] }), [p(e.$slots, "default")], 16), [[y, r.modelValue]])]),
216
342
  _: 3
217
343
  })]);
218
344
  }
219
- var D = /*#__PURE__*/ T(oe, [["render", ce]]), le = {
345
+ var M = /*#__PURE__*/ j(ve, [["render", be]]), xe = {
220
346
  props: {
221
347
  withPulse: {
222
348
  type: Boolean,
@@ -237,8 +363,8 @@ var D = /*#__PURE__*/ T(oe, [["render", ce]]), le = {
237
363
  }
238
364
  }
239
365
  };
240
- function ue(e, t, n, r, o, s) {
241
- return u(), i("div", { class: l(["bb-dashboard-ui bb:flex bb:h-full bb:items-center bb:leading-none bb:text-4xl", {
366
+ function Se(e, t, n, r, o, s) {
367
+ return d(), i("div", { class: u(["bb-dashboard-ui bb:flex bb:h-full bb:items-center bb:leading-none bb:text-4xl", {
242
368
  "bb:text-red-500": s.isRed,
243
369
  "bb:text-green-500": s.isGreen,
244
370
  "bb:animate-pulse": n.withPulse
@@ -251,13 +377,13 @@ function ue(e, t, n, r, o, s) {
251
377
  r: "45"
252
378
  })], -1)]], 2);
253
379
  }
254
- var O = /*#__PURE__*/ T(le, [["render", ue]]), de = {}, fe = {
380
+ var N = /*#__PURE__*/ j(xe, [["render", Se]]), Ce = {}, we = {
255
381
  type: "button",
256
382
  tabindex: "-1",
257
383
  class: "bb:absolute bb:right-0 bb:top-0 bb:flex bb:items-center bb:justify-center bb:bg-transparent bb:cursor-pointer bb:text-gray-300 bb:hover:text-gray-400 bb:focus:outline-hidden"
258
384
  };
259
- function pe(e, t, n, r, o, s) {
260
- return u(), i("button", fe, [...t[0] ||= [a("svg", {
385
+ function Te(e, t, n, r, o, s) {
386
+ return d(), i("button", we, [...t[0] ||= [a("svg", {
261
387
  class: "bb:w-6 bb:h-6 bb:stroke-current",
262
388
  fill: "none",
263
389
  viewBox: "0 0 24 24"
@@ -268,13 +394,13 @@ function pe(e, t, n, r, o, s) {
268
394
  d: "M6 18L18 6M6 6l12 12"
269
395
  })], -1)]]);
270
396
  }
271
- var k = /*#__PURE__*/ T(de, [["render", pe]]);
397
+ var P = /*#__PURE__*/ j(Ce, [["render", Te]]);
272
398
  //#endregion
273
399
  //#region src/date.js
274
- function A(e) {
400
+ function F(e) {
275
401
  return `${String(e.getDate()).padStart(2, "0")}.${String(e.getMonth() + 1).padStart(2, "0")}.${String(e.getFullYear()).padStart(4, "0")}`;
276
402
  }
277
- function j(e) {
403
+ function I(e) {
278
404
  let t = /^(\d{1,2})\.(\d{1,2})\.(\d{4})$/.exec(e);
279
405
  if (t === null) return null;
280
406
  let [, n, r, i] = t.map(Number), a = /* @__PURE__ */ new Date(0);
@@ -282,27 +408,27 @@ function j(e) {
282
408
  }
283
409
  //#endregion
284
410
  //#region src/lang.js
285
- var M = {
286
- inject: w,
411
+ var L = {
412
+ inject: A,
287
413
  props: { lang: {
288
414
  type: String,
289
415
  default: null,
290
- validator: (e) => e === null || S(e)
416
+ validator: (e) => e === null || w(e)
291
417
  } },
292
418
  computed: {
293
419
  resolvedLang() {
294
- return S(this.lang) ? this.lang : this.uiSettings.lang;
420
+ return w(this.lang) ? this.lang : this.uiSettings.lang;
295
421
  },
296
422
  texts() {
297
- return ne[this.resolvedLang];
423
+ return re[this.resolvedLang];
298
424
  }
299
425
  }
300
- }, me = {
426
+ }, Ee = {
301
427
  components: {
302
- Popup: D,
303
- Eraser: k
428
+ Popup: M,
429
+ Eraser: P
304
430
  },
305
- mixins: [M],
431
+ mixins: [L],
306
432
  emits: ["update:modelValue", "changed"],
307
433
  props: {
308
434
  modelValue: {
@@ -329,8 +455,8 @@ var M = {
329
455
  keyboardInput: !1,
330
456
  bound: !1,
331
457
  firstDay: 1,
332
- parse: (e) => j(e),
333
- toString: (e) => A(e),
458
+ parse: (e) => I(e),
459
+ toString: (e) => F(e),
334
460
  i18n: {
335
461
  previousMonth: this.texts.previousMonth,
336
462
  nextMonth: this.texts.nextMonth,
@@ -339,7 +465,7 @@ var M = {
339
465
  weekdaysShort: this.texts.weekdaysShort
340
466
  },
341
467
  onSelect: (e) => {
342
- this.popupIsOpen = !1, this.$emit("update:modelValue", A(e)), this.$emit("changed");
468
+ this.popupIsOpen = !1, this.$emit("update:modelValue", F(e)), this.$emit("changed");
343
469
  }
344
470
  }));
345
471
  },
@@ -359,7 +485,7 @@ var M = {
359
485
  methods: {
360
486
  syncPicker(e) {
361
487
  if (this.picker === null) return;
362
- let t = j(e);
488
+ let t = I(e);
363
489
  if (t === null) {
364
490
  this.picker.clear();
365
491
  return;
@@ -378,42 +504,42 @@ var M = {
378
504
  return !this.withEraser || this.popupIsOpen ? !1 : this.hasValue;
379
505
  }
380
506
  }
381
- }, he = { class: "bb-dashboard-ui bb:flex bb:flex-col" }, N = { class: "bb:relative bb:flex bb:h-full bb:cursor-pointer bb:leading-none" }, P = { class: "bb:min-w-24 bb:w-full bb:h-full" }, F = [
507
+ }, De = { class: "bb-dashboard-ui bb:flex bb:flex-col" }, Oe = { class: "bb:relative bb:flex bb:h-full bb:cursor-pointer bb:leading-none" }, ke = { class: "bb:min-w-24 bb:w-full bb:h-full" }, Ae = [
382
508
  "disabled",
383
509
  "value",
384
510
  "placeholder"
385
- ], I = {
511
+ ], je = {
386
512
  ref: "container",
387
513
  class: "bb:flex bb:mt-1 bb:bg-white bb:border bb:border-gray-200 bb:rounded-md bb:shadow-lg"
388
514
  };
389
- function L(e, t, o, c, d, f) {
390
- let m = p("eraser"), h = p("popup");
391
- return u(), i("div", he, [a("div", N, [a("button", {
515
+ function Me(e, t, o, c, l, f) {
516
+ let p = m("eraser"), h = m("popup");
517
+ return d(), i("div", De, [a("div", Oe, [a("button", {
392
518
  ref: "trigger",
393
519
  type: "button",
394
- class: l(["bb:flex bb:w-full bb:items-center bb:focus:outline-hidden", { "bb:z-20": d.popupIsOpen }]),
395
- onClick: t[0] ||= (e) => d.popupIsOpen = !d.popupIsOpen
396
- }, [a("label", P, [a("input", {
397
- disabled: d.popupIsOpen,
520
+ class: u(["bb:flex bb:w-full bb:items-center bb:focus:outline-hidden", { "bb:z-20": l.popupIsOpen }]),
521
+ onClick: t[0] ||= (e) => l.popupIsOpen = !l.popupIsOpen
522
+ }, [a("label", ke, [a("input", {
523
+ disabled: l.popupIsOpen,
398
524
  ref: "field",
399
525
  type: "text",
400
- value: d.dayValue,
526
+ value: l.dayValue,
401
527
  placeholder: o.placeholderText,
402
528
  class: "bb:w-full bb:h-full bb:py-2 bb:pr-3 bb:leading-none bb:border bb:border-transparent bb:whitespace-nowrap bb:bg-transparent bb:placeholder:text-sm bb:placeholder-gray-300 bb:cursor-pointer bb:focus:outline-hidden"
403
- }, null, 8, F)])], 2), f.needsEraser ? (u(), n(m, {
529
+ }, null, 8, Ae)])], 2), f.needsEraser ? (d(), n(p, {
404
530
  key: 0,
405
531
  onClick: f.clearPicker,
406
532
  class: "bb:z-10 bb:h-full bb:pr-2"
407
533
  }, null, 8, ["onClick"])) : r("", !0)]), s(h, {
408
- modelValue: d.popupIsOpen,
409
- "onUpdate:modelValue": t[1] ||= (e) => d.popupIsOpen = e
534
+ modelValue: l.popupIsOpen,
535
+ "onUpdate:modelValue": t[1] ||= (e) => l.popupIsOpen = e
410
536
  }, {
411
- default: v(() => [a("div", I, null, 512)]),
537
+ default: b(() => [a("div", je, null, 512)]),
412
538
  _: 1
413
539
  }, 8, ["modelValue"])]);
414
540
  }
415
- var R = /*#__PURE__*/ T(me, [["render", L]]), ge = {
416
- components: { Dot: O },
541
+ var R = /*#__PURE__*/ j(Ee, [["render", Me]]), Ne = {
542
+ components: { Dot: N },
417
543
  props: {
418
544
  text: {
419
545
  type: String,
@@ -428,29 +554,29 @@ var R = /*#__PURE__*/ T(me, [["render", L]]), ge = {
428
554
  default: !1
429
555
  }
430
556
  }
431
- }, _e = { class: "bb:flex bb:h-6 bb:px-3 bb:bg-white bb:items-center bb:justify-between" }, ve = ["textContent"];
432
- function ye(e, t, n, r, o, c) {
433
- let l = p("dot");
434
- return u(), i("div", _e, [
557
+ }, Pe = { class: "bb:flex bb:h-6 bb:px-3 bb:bg-white bb:items-center bb:justify-between" }, Fe = ["textContent"];
558
+ function Ie(e, t, n, r, o, c) {
559
+ let l = m("dot");
560
+ return d(), i("div", Pe, [
435
561
  a("div", {
436
562
  class: "bb:flex bb:flex-1 bb:h-full bb:items-center bb:text-xs bb:text-gray-500 bb:whitespace-nowrap bb:truncate bb:leading-tight bb:select-none",
437
- textContent: m(n.text)
438
- }, null, 8, ve),
439
- y(s(l, {
563
+ textContent: g(n.text)
564
+ }, null, 8, Fe),
565
+ x(s(l, {
440
566
  color: "red",
441
567
  "with-pulse": !0,
442
568
  class: "bb:ml-3"
443
- }, null, 512), [[_, n.isLoading]]),
444
- y(s(l, {
569
+ }, null, 512), [[y, n.isLoading]]),
570
+ x(s(l, {
445
571
  color: "red",
446
572
  class: "bb:ml-3"
447
- }, null, 512), [[_, n.isRequired]])
573
+ }, null, 512), [[y, n.isRequired]])
448
574
  ]);
449
575
  }
450
- var z = /*#__PURE__*/ T(ge, [["render", ye]]), be = 10;
451
- function xe(e) {
576
+ var z = /*#__PURE__*/ j(Ne, [["render", Ie]]), Le = 10;
577
+ function Re(e) {
452
578
  let t = e.replace(/\D/g, "");
453
- return (t.startsWith("7") || t.startsWith("8")) && t[1] === "9" && (t = t.slice(1)), t.slice(0, be);
579
+ return (t.startsWith("7") || t.startsWith("8")) && t[1] === "9" && (t = t.slice(1)), t.slice(0, Le);
454
580
  }
455
581
  function B(e) {
456
582
  return e === "" ? "" : `7${e}`;
@@ -461,10 +587,10 @@ function V(e) {
461
587
  }
462
588
  //#endregion
463
589
  //#region src/components/RussianMobileFilter.vue
464
- var Se = 400, Ce = 3, we = {
590
+ var ze = 400, Be = 3, Ve = {
465
591
  components: {
466
592
  ElementHeader: z,
467
- Eraser: k
593
+ Eraser: P
468
594
  },
469
595
  emits: ["update:modelValue", "changed"],
470
596
  props: {
@@ -492,7 +618,7 @@ var Se = 400, Ce = 3, we = {
492
618
  this.mask = null, this.debounceTimer = null, this.isWritingProgrammatically = !1, this.lastCommitted = V(this.modelValue), this.isUnmounted = !1;
493
619
  },
494
620
  mounted() {
495
- this.mask = te(this.$refs.input, {
621
+ this.mask = ne(this.$refs.input, {
496
622
  mask: "+7 (000) 000 00 00",
497
623
  lazy: !0,
498
624
  prepare: (e, t) => t.unmaskedValue === "" && (e === "7" || e === "8") ? "" : e
@@ -534,7 +660,7 @@ var Se = 400, Ce = 3, we = {
534
660
  this.isUnmounted || (this.setLazy(!0), this.digits === "" && this.writeToMask(""), this.commit());
535
661
  },
536
662
  onPaste(e) {
537
- this.applyUserDigits(xe(e.clipboardData?.getData("text") ?? "")), this.scheduleCommit();
663
+ this.applyUserDigits(Re(e.clipboardData?.getData("text") ?? "")), this.scheduleCommit();
538
664
  },
539
665
  clear() {
540
666
  this.applyUserDigits(""), this.commit();
@@ -544,16 +670,16 @@ var Se = 400, Ce = 3, we = {
544
670
  this.commit();
545
671
  return;
546
672
  }
547
- this.digits.length < Ce || (this.debounceTimer = setTimeout(() => this.commit(), Se));
673
+ this.digits.length < Be || (this.debounceTimer = setTimeout(() => this.commit(), ze));
548
674
  },
549
675
  commit() {
550
676
  clearTimeout(this.debounceTimer), this.digits !== this.lastCommitted && (this.lastCommitted = this.digits, this.$emit("changed"));
551
677
  }
552
678
  }
553
- }, Te = { class: "bb-dashboard-ui bb:flex bb:flex-none" }, Ee = { class: "bb:flex bb:w-full bb:flex-col bb:border bb:border-white bb:bg-white" }, De = { class: "bb:relative bb:flex bb:h-full bb:w-full" }, Oe = { class: "bb:flex bb:w-full bb:h-full bb:items-center bb:justify-center" };
554
- function ke(e, t, n, r, o, c) {
555
- let l = p("element-header"), d = p("eraser");
556
- return u(), i("div", Te, [a("div", Ee, [s(l, {
679
+ }, He = { class: "bb-dashboard-ui bb:flex bb:flex-none" }, Ue = { class: "bb:flex bb:w-full bb:flex-col bb:border bb:border-white bb:bg-white" }, We = { class: "bb:relative bb:flex bb:h-full bb:w-full" }, Ge = { class: "bb:flex bb:w-full bb:h-full bb:items-center bb:justify-center" };
680
+ function Ke(e, t, n, r, o, c) {
681
+ let l = m("element-header"), u = m("eraser");
682
+ return d(), i("div", He, [a("div", Ue, [s(l, {
557
683
  text: n.header,
558
684
  "is-required": n.isRequired,
559
685
  "is-loading": n.isLoading
@@ -561,7 +687,7 @@ function ke(e, t, n, r, o, c) {
561
687
  "text",
562
688
  "is-required",
563
689
  "is-loading"
564
- ]), a("div", De, [a("label", Oe, [a("input", {
690
+ ]), a("div", We, [a("label", Ge, [a("input", {
565
691
  ref: "input",
566
692
  type: "tel",
567
693
  inputmode: "tel",
@@ -569,18 +695,18 @@ function ke(e, t, n, r, o, c) {
569
695
  class: "bb:flex bb:w-phone bb:h-full bb:px-3 bb:py-2 bb:cursor-pointer bb:truncate bb:focus:outline-hidden bb:border-none",
570
696
  onFocus: t[0] ||= (...e) => c.onFocus && c.onFocus(...e),
571
697
  onBlur: t[1] ||= (...e) => c.onBlur && c.onBlur(...e),
572
- onKeydown: t[2] ||= ee((...e) => c.commit && c.commit(...e), ["enter"]),
573
- onPaste: t[3] ||= b((...e) => c.onPaste && c.onPaste(...e), ["prevent"])
574
- }, null, 544), y(s(d, {
575
- onMousedown: t[4] ||= b(() => {}, ["prevent"]),
698
+ onKeydown: t[2] ||= te((...e) => c.commit && c.commit(...e), ["enter"]),
699
+ onPaste: t[3] ||= S((...e) => c.onPaste && c.onPaste(...e), ["prevent"])
700
+ }, null, 544), x(s(u, {
701
+ onMousedown: t[4] ||= S(() => {}, ["prevent"]),
576
702
  onClick: c.clear,
577
703
  class: "bb:pr-2 bb:h-full"
578
- }, null, 8, ["onClick"]), [[_, o.digits.length > 0]])])])])]);
704
+ }, null, 8, ["onClick"]), [[y, o.digits.length > 0]])])])])]);
579
705
  }
580
- var Ae = /*#__PURE__*/ T(we, [["render", ke]]), je = {
706
+ var qe = /*#__PURE__*/ j(Ve, [["render", Ke]]), Je = {
581
707
  components: {
582
708
  ElementHeader: z,
583
- Eraser: k
709
+ Eraser: P
584
710
  },
585
711
  emits: ["update:modelValue", "changed"],
586
712
  props: {
@@ -618,10 +744,10 @@ var Ae = /*#__PURE__*/ T(we, [["render", ke]]), je = {
618
744
  this.$emit("update:modelValue", this.search), this.$emit("changed");
619
745
  }
620
746
  }
621
- }, Me = { class: "bb-dashboard-ui bb:flex bb:flex-none" }, Ne = { class: "bb:flex bb:w-full bb:flex-col bb:border bb:border-white bb:bg-white" }, Pe = { class: "bb:relative bb:flex bb:h-full bb:w-full" }, Fe = { class: "bb:flex bb:w-full bb:h-full bb:items-center bb:justify-center" };
622
- function Ie(e, t, n, r, o, c) {
623
- let l = p("element-header"), d = p("eraser");
624
- return u(), i("div", Me, [a("div", Ne, [s(l, {
747
+ }, Ye = { class: "bb-dashboard-ui bb:flex bb:flex-none" }, Xe = { class: "bb:flex bb:w-full bb:flex-col bb:border bb:border-white bb:bg-white" }, Ze = { class: "bb:relative bb:flex bb:h-full bb:w-full" }, Qe = { class: "bb:flex bb:w-full bb:h-full bb:items-center bb:justify-center" };
748
+ function $e(e, t, n, r, o, c) {
749
+ let l = m("element-header"), u = m("eraser");
750
+ return d(), i("div", Ye, [a("div", Xe, [s(l, {
625
751
  text: n.header,
626
752
  "is-required": n.isRequired,
627
753
  "is-loading": n.isLoading
@@ -629,26 +755,26 @@ function Ie(e, t, n, r, o, c) {
629
755
  "text",
630
756
  "is-required",
631
757
  "is-loading"
632
- ]), a("div", Pe, [a("label", Fe, [y(a("input", {
758
+ ]), a("div", Ze, [a("label", Qe, [x(a("input", {
633
759
  class: "bb:flex bb:w-full bb:h-full bb:px-3 bb:py-2 bb:cursor-pointer bb:truncate bb:focus:outline-hidden bb:border-none",
634
760
  "onUpdate:modelValue": t[0] ||= (e) => o.search = e,
635
761
  onInput: t[1] ||= (...e) => c.startSearch && c.startSearch(...e)
636
762
  }, null, 544), [[
637
- g,
763
+ v,
638
764
  o.search,
639
765
  void 0,
640
766
  { trim: !0 }
641
- ]]), y(s(d, {
767
+ ]]), x(s(u, {
642
768
  onClick: c.clearInput,
643
769
  class: "bb:pr-2 bb:h-full"
644
- }, null, 8, ["onClick"]), [[_, c.inputNeedsEraser]])])])])]);
770
+ }, null, 8, ["onClick"]), [[y, c.inputNeedsEraser]])])])])]);
645
771
  }
646
- var Le = /*#__PURE__*/ T(je, [["render", Ie]]), Re = {
772
+ var et = /*#__PURE__*/ j(Je, [["render", $e]]), tt = {
647
773
  components: {
648
774
  ElementHeader: z,
649
775
  PickDay: R
650
776
  },
651
- mixins: [M],
777
+ mixins: [L],
652
778
  emits: [
653
779
  "update:dateFrom",
654
780
  "update:dateTo",
@@ -696,10 +822,10 @@ var Le = /*#__PURE__*/ T(je, [["render", Ie]]), Re = {
696
822
  this.$emit("update:dateTo", e), this.dateTo !== e && this.$emit("changed");
697
823
  }
698
824
  }
699
- }, ze = { class: "bb-dashboard-ui bb:flex" }, Be = { class: "bb:flex bb:border bb:border-white" }, Ve = { class: "bb:flex bb:flex-col bb:min-w-72 bb:w-72 bb:bg-white bb:h-full" }, He = { class: "bb:flex bb:h-full bb:divide-x bb:divide-gray-200" };
700
- function Ue(e, t, n, r, o, c) {
701
- let l = p("element-header"), d = p("pick-day");
702
- return u(), i("div", ze, [a("div", Be, [a("div", Ve, [s(l, {
825
+ }, nt = { class: "bb-dashboard-ui bb:flex" }, rt = { class: "bb:flex bb:border bb:border-white" }, it = { class: "bb:flex bb:flex-col bb:min-w-72 bb:w-72 bb:bg-white bb:h-full" }, at = { class: "bb:flex bb:h-full bb:divide-x bb:divide-gray-200" };
826
+ function ot(e, t, n, r, o, c) {
827
+ let l = m("element-header"), u = m("pick-day");
828
+ return d(), i("div", nt, [a("div", rt, [a("div", it, [s(l, {
703
829
  text: n.header,
704
830
  "is-required": n.isRequired,
705
831
  "is-loading": n.isLoading
@@ -707,7 +833,7 @@ function Ue(e, t, n, r, o, c) {
707
833
  "text",
708
834
  "is-required",
709
835
  "is-loading"
710
- ]), a("div", He, [s(d, {
836
+ ]), a("div", at, [s(u, {
711
837
  modelValue: o.userDateFrom,
712
838
  "onUpdate:modelValue": t[0] ||= (e) => o.userDateFrom = e,
713
839
  class: "bb:flex-1 bb:min-w-36 bb:pl-3",
@@ -717,7 +843,7 @@ function Ue(e, t, n, r, o, c) {
717
843
  "modelValue",
718
844
  "placeholder-text",
719
845
  "lang"
720
- ]), s(d, {
846
+ ]), s(u, {
721
847
  modelValue: o.userDateTo,
722
848
  "onUpdate:modelValue": t[1] ||= (e) => o.userDateTo = e,
723
849
  class: "bb:flex-1 bb:min-w-36 bb:pl-3",
@@ -729,10 +855,10 @@ function Ue(e, t, n, r, o, c) {
729
855
  "lang"
730
856
  ])])])])]);
731
857
  }
732
- var We = /*#__PURE__*/ T(Re, [["render", Ue]]), Ge = {
858
+ var st = /*#__PURE__*/ j(tt, [["render", ot]]), ct = {
733
859
  components: {
734
- Popup: D,
735
- Eraser: k
860
+ Popup: M,
861
+ Eraser: P
736
862
  },
737
863
  emits: ["update:isOpen", "erased"],
738
864
  props: {
@@ -763,29 +889,29 @@ var We = /*#__PURE__*/ T(Re, [["render", Ue]]), Ge = {
763
889
  computed: { needsEraser() {
764
890
  return !this.isOpen && this.hasValue;
765
891
  } }
766
- }, Ke = { class: "bb:flex bb:flex-col bb:grow bb:bg-white" }, qe = { class: "bb:relative bb:flex bb:w-full bb:h-full" }, Je = ["textContent"];
767
- function Ye(e, t, o, c, d, h) {
768
- let g = p("eraser"), _ = p("popup");
769
- return u(), i("div", Ke, [a("div", qe, [a("button", {
892
+ }, lt = { class: "bb:flex bb:flex-col bb:grow bb:bg-white" }, ut = { class: "bb:relative bb:flex bb:w-full bb:h-full" }, dt = ["textContent"];
893
+ function ft(e, t, o, c, l, f) {
894
+ let h = m("eraser"), _ = m("popup");
895
+ return d(), i("div", lt, [a("div", ut, [a("button", {
770
896
  type: "button",
771
- class: l(["bb:flex bb:w-full bb:h-full bb:items-center bb:focus:outline-hidden bb:cursor-pointer", { "bb:z-20": o.isOpen }]),
772
- onClick: t[0] ||= b((t) => e.$emit("update:isOpen", !o.isOpen), ["prevent"])
897
+ class: u(["bb:flex bb:w-full bb:h-full bb:items-center bb:focus:outline-hidden bb:cursor-pointer", { "bb:z-20": o.isOpen }]),
898
+ onClick: t[0] ||= S((t) => e.$emit("update:isOpen", !o.isOpen), ["prevent"])
773
899
  }, [a("span", {
774
900
  class: "bb:flex bb:w-full bb:h-full bb:pl-3 bb:pr-12 bb:py-2 bb:items-center bb:whitespace-nowrap bb:leading-none",
775
- textContent: m(o.title)
776
- }, null, 8, Je)], 2), h.needsEraser ? (u(), n(g, {
901
+ textContent: g(o.title)
902
+ }, null, 8, dt)], 2), f.needsEraser ? (d(), n(h, {
777
903
  key: 0,
778
904
  onClick: t[1] ||= (t) => e.$emit("erased"),
779
905
  class: "bb:pr-2 bb:h-full"
780
906
  })) : r("", !0)]), s(_, {
781
- modelValue: d.popupIsOpen,
782
- "onUpdate:modelValue": t[2] ||= (e) => d.popupIsOpen = e
907
+ modelValue: l.popupIsOpen,
908
+ "onUpdate:modelValue": t[2] ||= (e) => l.popupIsOpen = e
783
909
  }, {
784
- default: v(() => [f(e.$slots, "default")]),
910
+ default: b(() => [p(e.$slots, "default")]),
785
911
  _: 3
786
912
  }, 8, ["modelValue"])]);
787
913
  }
788
- var Xe = /*#__PURE__*/ T(Ge, [["render", Ye]]), Ze = {
914
+ var pt = /*#__PURE__*/ j(ct, [["render", ft]]), mt = {
789
915
  props: {
790
916
  isChecked: {
791
917
  type: Boolean,
@@ -797,31 +923,31 @@ var Xe = /*#__PURE__*/ T(Ge, [["render", Ye]]), Ze = {
797
923
  methods: { toggle() {
798
924
  this.$emit("clicked");
799
925
  } }
800
- }, Qe = { class: "bb:flex bb:w-9 bb:h-9 bb:items-center bb:justify-center" }, $e = {
926
+ }, ht = { class: "bb:flex bb:w-9 bb:h-9 bb:items-center bb:justify-center" }, gt = {
801
927
  class: "bb:w-5 bb:h-5 bb:fill-current bb:text-green-300",
802
928
  viewBox: "0 0 20 20"
803
- }, et = ["textContent"];
804
- function tt(e, t, n, r, o, s) {
805
- return u(), i("button", {
929
+ }, _t = ["textContent"];
930
+ function vt(e, t, n, r, o, s) {
931
+ return d(), i("button", {
806
932
  type: "button",
807
- onClick: t[0] ||= b((...e) => s.toggle && s.toggle(...e), ["prevent"]),
933
+ onClick: t[0] ||= S((...e) => s.toggle && s.toggle(...e), ["prevent"]),
808
934
  class: "bb:flex bb:w-full bb:bg-white bb:hover:bg-indigo-100 bb:cursor-pointer bb:focus:outline-hidden bb:focus:ring-3 bb:focus:z-10 bb:focus:ring-blue-500/50"
809
- }, [a("span", Qe, [y((u(), i("svg", $e, [...t[1] ||= [a("path", {
935
+ }, [a("span", ht, [x((d(), i("svg", gt, [...t[1] ||= [a("path", {
810
936
  d: "M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z",
811
937
  "clip-rule": "evenodd",
812
938
  "fill-rule": "evenodd"
813
- }, null, -1)]], 512)), [[_, n.isChecked]])]), a("span", {
939
+ }, null, -1)]], 512)), [[y, n.isChecked]])]), a("span", {
814
940
  class: "bb:flex bb:h-9 bb:justify-center bb:items-center bb:pr-6 bb:whitespace-nowrap bb:select-none",
815
- textContent: m(n.name)
816
- }, null, 8, et)]);
941
+ textContent: g(n.name)
942
+ }, null, 8, _t)]);
817
943
  }
818
944
  //#endregion
819
945
  //#region src/components/SelectSingle.vue
820
- var nt = {
946
+ var yt = {
821
947
  components: {
822
948
  ElementHeader: z,
823
- DropdownButton: Xe,
824
- ListElement: /* @__PURE__ */ T(Ze, [["render", tt]])
949
+ DropdownButton: pt,
950
+ ListElement: /* @__PURE__ */ j(mt, [["render", vt]])
825
951
  },
826
952
  emits: ["update:modelValue", "changed"],
827
953
  props: {
@@ -874,10 +1000,10 @@ var nt = {
874
1000
  this.$emit("update:modelValue", null), this.$emit("changed");
875
1001
  }
876
1002
  }
877
- }, rt = { class: "bb-dashboard-ui bb:flex bb:flex-none" }, it = { class: "bb:flex bb:w-full bb:flex-col bb:border bb:border-white bb:bg-white" }, at = { class: "bb:flex bb:flex-col bb:py-1 bb:mt-1 bb:bg-white bb:border bb:border-gray-200 bb:rounded-md bb:shadow-lg bb:divide-y bb:divide-gray-200 bb:divide-dashed" };
878
- function ot(t, o, c, l, f, m) {
879
- let h = p("element-header"), g = p("list-element"), _ = p("dropdown-button");
880
- return u(), i("div", rt, [a("div", it, [s(h, {
1003
+ }, bt = { class: "bb-dashboard-ui bb:flex bb:flex-none" }, xt = { class: "bb:flex bb:w-full bb:flex-col bb:border bb:border-white bb:bg-white" }, St = { class: "bb:flex bb:flex-col bb:py-1 bb:mt-1 bb:bg-white bb:border bb:border-gray-200 bb:rounded-md bb:shadow-lg bb:divide-y bb:divide-gray-200 bb:divide-dashed" };
1004
+ function Ct(t, o, c, l, u, p) {
1005
+ let h = m("element-header"), g = m("list-element"), _ = m("dropdown-button");
1006
+ return d(), i("div", bt, [a("div", xt, [s(h, {
881
1007
  text: c.header,
882
1008
  "is-required": c.isRequired,
883
1009
  "is-loading": c.isLoading
@@ -885,19 +1011,19 @@ function ot(t, o, c, l, f, m) {
885
1011
  "text",
886
1012
  "is-required",
887
1013
  "is-loading"
888
- ]), m.hasItems ? (u(), n(_, {
1014
+ ]), p.hasItems ? (d(), n(_, {
889
1015
  key: 0,
890
- title: m.activeItemName,
891
- "is-open": f.isOpen,
892
- "onUpdate:isOpen": o[0] ||= (e) => f.isOpen = e,
893
- "has-value": m.hasValue,
894
- onErased: m.clear
1016
+ title: p.activeItemName,
1017
+ "is-open": u.isOpen,
1018
+ "onUpdate:isOpen": o[0] ||= (e) => u.isOpen = e,
1019
+ "has-value": p.hasValue,
1020
+ onErased: p.clear
895
1021
  }, {
896
- default: v(() => [a("div", at, [(u(!0), i(e, null, d(m.itemList, (e) => (u(), n(g, {
1022
+ default: b(() => [a("div", St, [(d(!0), i(e, null, f(p.itemList, (e) => (d(), n(g, {
897
1023
  name: e.name,
898
1024
  key: e.id,
899
1025
  "is-checked": e.id === c.modelValue,
900
- onClicked: (t) => m.itemClicked(e)
1026
+ onClicked: (t) => p.itemClicked(e)
901
1027
  }, null, 8, [
902
1028
  "name",
903
1029
  "is-checked",
@@ -911,7 +1037,7 @@ function ot(t, o, c, l, f, m) {
911
1037
  "onErased"
912
1038
  ])) : r("", !0)])]);
913
1039
  }
914
- var st = /*#__PURE__*/ T(nt, [["render", ot]]), ct = {
1040
+ var wt = /*#__PURE__*/ j(yt, [["render", Ct]]), Tt = {
915
1041
  props: {
916
1042
  text: {
917
1043
  type: String,
@@ -950,10 +1076,10 @@ var st = /*#__PURE__*/ T(nt, [["render", ot]]), ct = {
950
1076
  return this.color === "yellow";
951
1077
  }
952
1078
  }
953
- }, lt = ["textContent"];
954
- function ut(e, t, n, r, a, o) {
955
- return u(), i("span", {
956
- class: l(["bb-dashboard-ui bb:inline-flex bb:items-center bb:px-3 bb:py-2 bb:rounded-full bb:text-xs bb:font-medium bb:leading-none bb:select-none bb:whitespace-nowrap", {
1079
+ }, Et = ["textContent"];
1080
+ function Dt(e, t, n, r, a, o) {
1081
+ return d(), i("span", {
1082
+ class: u(["bb-dashboard-ui bb:inline-flex bb:items-center bb:px-3 bb:py-2 bb:rounded-full bb:text-xs bb:font-medium bb:leading-none bb:select-none bb:whitespace-nowrap", {
957
1083
  "bb:bg-green-50 bb:text-gray-700": o.isGreen,
958
1084
  "bb:bg-indigo-100 bb:text-gray-700": o.isIndigo,
959
1085
  "bb:bg-gray-200 bb:text-gray-700": o.isGray,
@@ -961,10 +1087,10 @@ function ut(e, t, n, r, a, o) {
961
1087
  "bb:bg-red-100 bb:text-red-800": o.isRed,
962
1088
  "bb:bg-yellow-100 bb:text-yellow-800": o.isYellow
963
1089
  }]),
964
- textContent: m(n.text)
965
- }, null, 10, lt);
1090
+ textContent: g(n.text)
1091
+ }, null, 10, Et);
966
1092
  }
967
- var H = /*#__PURE__*/ T(ct, [["render", ut]]), dt = {
1093
+ var H = /*#__PURE__*/ j(Tt, [["render", Dt]]), Ot = {
968
1094
  props: {
969
1095
  messages: {
970
1096
  type: [Object, Array],
@@ -984,32 +1110,32 @@ var H = /*#__PURE__*/ T(ct, [["render", ut]]), dt = {
984
1110
  return this.type === "dangerous";
985
1111
  }
986
1112
  }
987
- }, ft = { class: "bb:flex" }, pt = { class: "bb:shrink-0" }, mt = { class: "bb:ml-3" }, ht = ["textContent"];
988
- function gt(t, n, o, s, c, f) {
989
- return f.hasErrors ? (u(), i("div", {
1113
+ }, kt = { class: "bb:flex" }, At = { class: "bb:shrink-0" }, jt = { class: "bb:ml-3" }, Mt = ["textContent"];
1114
+ function Nt(t, n, o, s, c, l) {
1115
+ return l.hasErrors ? (d(), i("div", {
990
1116
  key: 0,
991
- class: l(["bb-dashboard-ui bb:border-l-4 bb:p-4", f.isDangerous ? "bb:bg-red-50 bb:border-red-400" : "bb:bg-yellow-50 bb:border-yellow-400"])
992
- }, [a("div", ft, [a("div", pt, [(u(), i("svg", {
993
- class: l(["bb:h-5 bb:w-5", f.isDangerous ? "bb:text-red-400" : "bb:text-yellow-400"]),
1117
+ class: u(["bb-dashboard-ui bb:border-l-4 bb:p-4", l.isDangerous ? "bb:bg-red-50 bb:border-red-400" : "bb:bg-yellow-50 bb:border-yellow-400"])
1118
+ }, [a("div", kt, [a("div", At, [(d(), i("svg", {
1119
+ class: u(["bb:h-5 bb:w-5", l.isDangerous ? "bb:text-red-400" : "bb:text-yellow-400"]),
994
1120
  viewBox: "0 0 20 20",
995
1121
  fill: "currentColor"
996
1122
  }, [...n[0] ||= [a("path", {
997
1123
  "fill-rule": "evenodd",
998
1124
  d: "M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z",
999
1125
  "clip-rule": "evenodd"
1000
- }, null, -1)]], 2))]), a("div", mt, [(u(!0), i(e, null, d(o.messages, (e, t) => (u(), i("p", {
1001
- class: l(["bb:text-sm bb:leading-5", f.isDangerous ? "bb:text-red-700" : "bb:text-yellow-700"]),
1126
+ }, null, -1)]], 2))]), a("div", jt, [(d(!0), i(e, null, f(o.messages, (e, t) => (d(), i("p", {
1127
+ class: u(["bb:text-sm bb:leading-5", l.isDangerous ? "bb:text-red-700" : "bb:text-yellow-700"]),
1002
1128
  key: t,
1003
- textContent: m(e)
1004
- }, null, 10, ht))), 128))])])], 2)) : r("", !0);
1129
+ textContent: g(e)
1130
+ }, null, 10, Mt))), 128))])])], 2)) : r("", !0);
1005
1131
  }
1006
- var _t = /*#__PURE__*/ T(dt, [["render", gt]]), vt = { emits: ["clicked"] };
1007
- function yt(e, t, n, r, o, s) {
1008
- return u(), i("button", {
1132
+ var Pt = /*#__PURE__*/ j(Ot, [["render", Nt]]), Ft = { emits: ["clicked"] };
1133
+ function It(e, t, n, r, o, s) {
1134
+ return d(), i("button", {
1009
1135
  type: "button",
1010
1136
  tabindex: "-1",
1011
1137
  class: "bb-dashboard-ui bb:flex bb:items-center bb:justify-center bb:bg-transparent bb:cursor-pointer bb:text-gray-400 bb:focus:outline-hidden bb:hover:text-gray-600",
1012
- onClick: t[0] ||= b((t) => e.$emit("clicked"), ["prevent"])
1138
+ onClick: t[0] ||= S((t) => e.$emit("clicked"), ["prevent"])
1013
1139
  }, [...t[1] ||= [a("svg", {
1014
1140
  class: "bb:w-full bb:h-full bb:stroke-current",
1015
1141
  fill: "none",
@@ -1021,15 +1147,15 @@ function yt(e, t, n, r, o, s) {
1021
1147
  d: "M6 18L18 6M6 6l12 12"
1022
1148
  })], -1)]]);
1023
1149
  }
1024
- var U = /*#__PURE__*/ T(vt, [["render", yt]]), bt = {}, xt = {
1150
+ var U = /*#__PURE__*/ j(Ft, [["render", It]]), Lt = {}, Rt = {
1025
1151
  class: "bb:w-4 bb:h-4",
1026
1152
  fill: "none",
1027
1153
  stroke: "currentColor",
1028
1154
  viewBox: "0 0 24 24",
1029
1155
  xmlns: "http://www.w3.org/2000/svg"
1030
1156
  };
1031
- function St(e, t, n, r, o, s) {
1032
- return u(), i("svg", xt, [...t[0] ||= [a("path", {
1157
+ function zt(e, t, n, r, o, s) {
1158
+ return d(), i("svg", Rt, [...t[0] ||= [a("path", {
1033
1159
  "stroke-linecap": "round",
1034
1160
  "stroke-linejoin": "round",
1035
1161
  "stroke-width": "2",
@@ -1038,9 +1164,9 @@ function St(e, t, n, r, o, s) {
1038
1164
  }
1039
1165
  //#endregion
1040
1166
  //#region src/components/DownloadLink.vue
1041
- var Ct = {
1042
- components: { "download-icon": /* @__PURE__ */ T(bt, [["render", St]]) },
1043
- mixins: [M],
1167
+ var Bt = {
1168
+ components: { "download-icon": /* @__PURE__ */ j(Lt, [["render", zt]]) },
1169
+ mixins: [L],
1044
1170
  props: {
1045
1171
  url: {
1046
1172
  type: String,
@@ -1054,16 +1180,16 @@ var Ct = {
1054
1180
  computed: { label() {
1055
1181
  return this.title ?? this.texts.download;
1056
1182
  } }
1057
- }, wt = ["href", "title"], Tt = { class: "bb:ml-1" };
1058
- function Et(e, t, n, r, o, c) {
1059
- let l = p("download-icon");
1060
- return u(), i("a", {
1183
+ }, Vt = ["href", "title"], Ht = { class: "bb:ml-1" };
1184
+ function Ut(e, t, n, r, o, c) {
1185
+ let l = m("download-icon");
1186
+ return d(), i("a", {
1061
1187
  href: n.url,
1062
1188
  title: c.label,
1063
1189
  class: "bb-dashboard-ui bb:inline-flex bb:items-center bb:px-3 bb:py-1.5 bb:rounded-full bb:text-xs bb:font-medium bb:leading-none bb:select-none bb:bg-purple-100 bb:text-purple-800 bb:hover:text-purple-600"
1064
- }, [s(l), a("span", Tt, m(c.label), 1)], 8, wt);
1190
+ }, [s(l), a("span", Ht, g(c.label), 1)], 8, Vt);
1065
1191
  }
1066
- var Dt = /*#__PURE__*/ T(Ct, [["render", Et]]), Ot = { props: {
1192
+ var Wt = /*#__PURE__*/ j(Bt, [["render", Ut]]), Gt = { props: {
1067
1193
  isOpen: {
1068
1194
  type: Boolean,
1069
1195
  default: !1
@@ -1072,9 +1198,9 @@ var Dt = /*#__PURE__*/ T(Ct, [["render", Et]]), Ot = { props: {
1072
1198
  type: String,
1073
1199
  required: !0
1074
1200
  }
1075
- } }, kt = { class: "bb:flex bb:items-end bb:justify-center bb:min-h-screen bb:pt-4 bb:px-4 bb:pb-20 bb:text-center bb:sm:block bb:sm:p-0" }, At = { class: "bb:fixed bb:inset-0 bb:transition-opacity" }, jt = ["aria-labelledby"];
1076
- function Mt(e, n, r, o, c, d) {
1077
- return u(), i("div", { class: l(["bb-dashboard-ui bb:fixed bb:inset-0 bb:overflow-y-auto bb:z-20", { "bb:pointer-events-none": !r.isOpen }]) }, [a("div", kt, [
1201
+ } }, Kt = { class: "bb:flex bb:items-end bb:justify-center bb:min-h-screen bb:pt-4 bb:px-4 bb:pb-20 bb:text-center bb:sm:block bb:sm:p-0" }, qt = { class: "bb:fixed bb:inset-0 bb:transition-opacity" }, Jt = ["aria-labelledby"];
1202
+ function Yt(e, n, r, o, c, l) {
1203
+ return d(), i("div", { class: u(["bb-dashboard-ui bb:fixed bb:inset-0 bb:overflow-y-auto bb:z-20", { "bb:pointer-events-none": !r.isOpen }]) }, [a("div", Kt, [
1078
1204
  s(t, {
1079
1205
  "enter-active-class": "bb:ease-out bb:duration-300",
1080
1206
  "enter-from-class": "bb:opacity-0",
@@ -1083,7 +1209,7 @@ function Mt(e, n, r, o, c, d) {
1083
1209
  "leave-from-class": "bb:opacity-100",
1084
1210
  "leave-to-class": "bb:opacity-0"
1085
1211
  }, {
1086
- default: v(() => [y(a("div", At, [...n[0] ||= [a("div", { class: "bb:absolute bb:inset-0 bb:bg-gray-500 bb:opacity-75" }, null, -1)]], 512), [[_, r.isOpen]])]),
1212
+ default: b(() => [x(a("div", qt, [...n[0] ||= [a("div", { class: "bb:absolute bb:inset-0 bb:bg-gray-500 bb:opacity-75" }, null, -1)]], 512), [[y, r.isOpen]])]),
1087
1213
  _: 1
1088
1214
  }),
1089
1215
  n[1] ||= a("span", { class: "bb:hidden bb:sm:inline-block bb:sm:align-middle bb:sm:h-screen" }, null, -1),
@@ -1095,17 +1221,17 @@ function Mt(e, n, r, o, c, d) {
1095
1221
  "leave-from-class": "bb:opacity-100 bb:translate-y-0 bb:sm:scale-100",
1096
1222
  "leave-to-class": "bb:opacity-0 bb:translate-y-4 bb:sm:translate-y-0 bb:sm:scale-95"
1097
1223
  }, {
1098
- default: v(() => [y(a("div", {
1224
+ default: b(() => [x(a("div", {
1099
1225
  class: "bb:relative bb:inline-block bb:align-bottom bb:bg-white bb:rounded-lg bb:text-left bb:overflow-visible bb:shadow-xl bb:transition-all bb:sm:my-8 bb:sm:align-middle bb:sm:max-w-lg bb:sm:w-full",
1100
1226
  role: "dialog",
1101
1227
  "aria-modal": "true",
1102
1228
  "aria-labelledby": r.headingId
1103
- }, [f(e.$slots, "default")], 8, jt), [[_, r.isOpen]])]),
1229
+ }, [p(e.$slots, "default")], 8, Jt), [[y, r.isOpen]])]),
1104
1230
  _: 3
1105
1231
  })
1106
1232
  ])], 2);
1107
1233
  }
1108
- var Nt = /*#__PURE__*/ T(Ot, [["render", Mt]]), Pt = {}, Ft = {
1234
+ var Xt = /*#__PURE__*/ j(Gt, [["render", Yt]]), Zt = {}, Qt = {
1109
1235
  class: "bb:h-7 bb:w-7 bb:text-red-600",
1110
1236
  xmlns: "http://www.w3.org/2000/svg",
1111
1237
  fill: "none",
@@ -1113,35 +1239,35 @@ var Nt = /*#__PURE__*/ T(Ot, [["render", Mt]]), Pt = {}, Ft = {
1113
1239
  stroke: "currentColor",
1114
1240
  "aria-hidden": "true"
1115
1241
  };
1116
- function It(e, t, n, r, o, s) {
1117
- return u(), i("svg", Ft, [...t[0] ||= [a("path", {
1242
+ function $t(e, t, n, r, o, s) {
1243
+ return d(), i("svg", Qt, [...t[0] ||= [a("path", {
1118
1244
  "stroke-linecap": "round",
1119
1245
  "stroke-linejoin": "round",
1120
1246
  "stroke-width": "2",
1121
1247
  d: "M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"
1122
1248
  }, null, -1)]]);
1123
1249
  }
1124
- var W = /*#__PURE__*/ T(Pt, [["render", It]]), Lt = {}, Rt = {
1250
+ var W = /*#__PURE__*/ j(Zt, [["render", $t]]), en = {}, tn = {
1125
1251
  class: "bb:h-7 bb:w-7 bb:text-yellow-400",
1126
1252
  xmlns: "http://www.w3.org/2000/svg",
1127
1253
  viewBox: "0 0 20 20",
1128
1254
  fill: "currentColor",
1129
1255
  "aria-hidden": "true"
1130
1256
  };
1131
- function zt(e, t, n, r, o, s) {
1132
- return u(), i("svg", Rt, [...t[0] ||= [a("path", {
1257
+ function nn(e, t, n, r, o, s) {
1258
+ return d(), i("svg", tn, [...t[0] ||= [a("path", {
1133
1259
  "fill-rule": "evenodd",
1134
1260
  d: "M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z",
1135
1261
  "clip-rule": "evenodd"
1136
1262
  }, null, -1)]]);
1137
1263
  }
1138
- var G = /*#__PURE__*/ T(Lt, [["render", zt]]), Bt = {
1264
+ var G = /*#__PURE__*/ j(en, [["render", nn]]), rn = {
1139
1265
  components: {
1140
- Modal: Nt,
1266
+ Modal: Xt,
1141
1267
  Dangerous: W,
1142
1268
  Warning: G
1143
1269
  },
1144
- mixins: [M],
1270
+ mixins: [L],
1145
1271
  emits: ["actionConfirmed", "actionCanceled"],
1146
1272
  props: {
1147
1273
  isOpen: {
@@ -1171,7 +1297,7 @@ var G = /*#__PURE__*/ T(Lt, [["render", zt]]), Bt = {
1171
1297
  }
1172
1298
  },
1173
1299
  setup() {
1174
- return { headingId: h() };
1300
+ return { headingId: _() };
1175
1301
  },
1176
1302
  computed: {
1177
1303
  isDangerous() {
@@ -1181,42 +1307,42 @@ var G = /*#__PURE__*/ T(Lt, [["render", zt]]), Bt = {
1181
1307
  return this.type === "warning";
1182
1308
  }
1183
1309
  }
1184
- }, Vt = { class: "bb:flex bb:bg-white bb:rounded-t-lg bb:px-4 bb:pt-5 bb:pb-4 bb:sm:p-6 bb:sm:pb-4" }, Ht = { class: "bb:sm:flex bb:sm:items-start" }, Ut = { class: "bb:mt-3 bb:text-center bb:sm:mt-0 bb:sm:ml-4 bb:sm:text-left" }, Wt = ["id"], Gt = { class: "bb:mt-2" }, Kt = { class: "bb:text-sm bb:text-gray-500" }, qt = { class: "bb:bg-gray-50 bb:rounded-b-lg bb:px-4 bb:py-3 bb:sm:px-6 bb:sm:flex bb:sm:flex-row-reverse" };
1185
- function Jt(e, t, i, o, s, c) {
1186
- let d = p("warning"), f = p("dangerous"), h = p("modal");
1187
- return u(), n(h, {
1310
+ }, an = { class: "bb:flex bb:bg-white bb:rounded-t-lg bb:px-4 bb:pt-5 bb:pb-4 bb:sm:p-6 bb:sm:pb-4" }, on = { class: "bb:sm:flex bb:sm:items-start" }, sn = { class: "bb:mt-3 bb:text-center bb:sm:mt-0 bb:sm:ml-4 bb:sm:text-left" }, cn = ["id"], ln = { class: "bb:mt-2" }, un = { class: "bb:text-sm bb:text-gray-500" }, dn = { class: "bb:bg-gray-50 bb:rounded-b-lg bb:px-4 bb:py-3 bb:sm:px-6 bb:sm:flex bb:sm:flex-row-reverse" };
1311
+ function fn(e, t, i, o, s, c) {
1312
+ let l = m("warning"), f = m("dangerous"), p = m("modal");
1313
+ return d(), n(p, {
1188
1314
  "is-open": i.isOpen,
1189
1315
  "heading-id": o.headingId
1190
1316
  }, {
1191
- default: v(() => [a("div", Vt, [a("div", Ht, [a("div", { class: l(["bb:mx-auto bb:shrink-0 bb:flex bb:items-center bb:justify-center bb:h-12 bb:w-12 bb:rounded-full bb:sm:mx-0 bb:sm:h-10 bb:sm:w-10", {
1317
+ default: b(() => [a("div", an, [a("div", on, [a("div", { class: u(["bb:mx-auto bb:shrink-0 bb:flex bb:items-center bb:justify-center bb:h-12 bb:w-12 bb:rounded-full bb:sm:mx-0 bb:sm:h-10 bb:sm:w-10", {
1192
1318
  "bb:bg-red-100": c.isDangerous,
1193
1319
  "bb:bg-yellow-100": c.isWarning
1194
- }]) }, [c.isWarning ? (u(), n(d, { key: 0 })) : r("", !0), c.isDangerous ? (u(), n(f, { key: 1 })) : r("", !0)], 2), a("div", Ut, [a("h3", {
1320
+ }]) }, [c.isWarning ? (d(), n(l, { key: 0 })) : r("", !0), c.isDangerous ? (d(), n(f, { key: 1 })) : r("", !0)], 2), a("div", sn, [a("h3", {
1195
1321
  class: "bb:text-lg bb:leading-6 bb:font-medium bb:text-gray-900",
1196
1322
  id: o.headingId
1197
- }, m(i.confirmationHeading), 9, Wt), a("div", Gt, [a("p", Kt, m(i.confirmationText), 1)])])])]), a("div", qt, [a("button", {
1323
+ }, g(i.confirmationHeading), 9, cn), a("div", ln, [a("p", un, g(i.confirmationText), 1)])])])]), a("div", dn, [a("button", {
1198
1324
  type: "button",
1199
- class: l(["bb:w-full bb:inline-flex bb:justify-center bb:rounded-md bb:border bb:border-transparent bb:shadow-xs bb:px-4 bb:py-2 bb:text-base bb:font-medium bb:text-white bb:focus:outline-hidden bb:focus:ring-2 bb:focus:ring-offset-2 bb:sm:ml-3 bb:sm:w-auto bb:sm:text-sm", {
1325
+ class: u(["bb:w-full bb:inline-flex bb:justify-center bb:rounded-md bb:border bb:border-transparent bb:shadow-xs bb:px-4 bb:py-2 bb:text-base bb:font-medium bb:text-white bb:focus:outline-hidden bb:focus:ring-2 bb:focus:ring-offset-2 bb:sm:ml-3 bb:sm:w-auto bb:sm:text-sm", {
1200
1326
  "bb:bg-red-600 bb:hover:bg-red-700 bb:focus:ring-red-500": c.isDangerous,
1201
1327
  "bb:bg-yellow-400 bb:hover:bg-yellow-500 bb:focus:ring-yellow-300": c.isWarning
1202
1328
  }]),
1203
- onClick: t[0] ||= b((t) => e.$emit("actionConfirmed"), ["prevent"])
1204
- }, m(i.actionButtonText), 3), a("button", {
1329
+ onClick: t[0] ||= S((t) => e.$emit("actionConfirmed"), ["prevent"])
1330
+ }, g(i.actionButtonText), 3), a("button", {
1205
1331
  type: "button",
1206
1332
  class: "bb:mt-3 bb:w-full bb:inline-flex bb:justify-center bb:rounded-md bb:border bb:border-gray-300 bb:shadow-xs bb:px-4 bb:py-2 bb:bg-white bb:text-base bb:font-medium bb:text-gray-700 bb:hover:bg-gray-50 bb:focus:outline-hidden bb:focus:ring-2 bb:focus:ring-offset-2 bb:focus:ring-indigo-500 bb:sm:mt-0 bb:sm:ml-3 bb:sm:w-auto bb:sm:text-sm",
1207
- onClick: t[1] ||= b((t) => e.$emit("actionCanceled"), ["prevent"])
1208
- }, m(i.cancelButtonText ?? e.texts.cancel), 1)])]),
1333
+ onClick: t[1] ||= S((t) => e.$emit("actionCanceled"), ["prevent"])
1334
+ }, g(i.cancelButtonText ?? e.texts.cancel), 1)])]),
1209
1335
  _: 1
1210
1336
  }, 8, ["is-open", "heading-id"]);
1211
1337
  }
1212
- var Yt = /*#__PURE__*/ T(Bt, [["render", Jt]]), K = 4, q = 8;
1338
+ var pn = /*#__PURE__*/ j(rn, [["render", fn]]), K = 4, q = 8;
1213
1339
  function J(e) {
1214
1340
  return typeof e?.showPopover == "function";
1215
1341
  }
1216
1342
  function Y(e) {
1217
1343
  return J(e) && e.matches(":popover-open");
1218
1344
  }
1219
- function Xt(e, t, { maxWidth: n = null } = {}) {
1345
+ function mn(e, t, { maxWidth: n = null } = {}) {
1220
1346
  let r = e.getBoundingClientRect(), i = document.documentElement.clientWidth, a = document.documentElement.clientHeight, o = Math.max(q, i - r.right), s = Math.max(0, i - o - q), c = Math.max(0, a - r.bottom - K - q), l = Math.max(0, r.top - K - q), u = c >= l;
1221
1347
  Object.assign(t.style, {
1222
1348
  top: u ? `${r.bottom + K}px` : "auto",
@@ -1226,7 +1352,7 @@ function Xt(e, t, { maxWidth: n = null } = {}) {
1226
1352
  maxHeight: `${u ? c : l}px`
1227
1353
  }), n !== null && (t.style.maxWidth = `${Math.min(n, s)}px`);
1228
1354
  }
1229
- function Zt(e, t) {
1355
+ function hn(e, t) {
1230
1356
  let n = (n) => {
1231
1357
  e.contains(n.target) || t();
1232
1358
  };
@@ -1239,8 +1365,8 @@ function Zt(e, t) {
1239
1365
  }
1240
1366
  //#endregion
1241
1367
  //#region src/components/DropdownButtonWithAction.vue
1242
- var Qt = 224, $t = {
1243
- mixins: [M],
1368
+ var gn = 224, _n = {
1369
+ mixins: [L],
1244
1370
  emits: ["update:modelValue"],
1245
1371
  props: { modelValue: {
1246
1372
  type: Boolean,
@@ -1248,8 +1374,8 @@ var Qt = 224, $t = {
1248
1374
  } },
1249
1375
  setup() {
1250
1376
  return {
1251
- menuButtonId: h(),
1252
- menuId: h()
1377
+ menuButtonId: _(),
1378
+ menuId: _()
1253
1379
  };
1254
1380
  },
1255
1381
  data() {
@@ -1277,12 +1403,12 @@ var Qt = 224, $t = {
1277
1403
  Y(e) && e.hidePopover();
1278
1404
  },
1279
1405
  onBeforeToggle(e) {
1280
- e.newState === "open" && Xt(this.$refs.arrow, this.$refs.menu, { maxWidth: Qt });
1406
+ e.newState === "open" && mn(this.$refs.arrow, this.$refs.menu, { maxWidth: gn });
1281
1407
  },
1282
1408
  onToggle(e) {
1283
1409
  this.stopListening();
1284
1410
  let t = this.$refs.menu;
1285
- Y(t) && (this.stopClosing = Zt(t, this.close));
1411
+ Y(t) && (this.stopClosing = hn(t, this.close));
1286
1412
  let n = e.newState === "open";
1287
1413
  n !== this.menuIsOpen && (this.menuIsOpen = n, this.$emit("update:modelValue", n));
1288
1414
  },
@@ -1290,21 +1416,21 @@ var Qt = 224, $t = {
1290
1416
  this.stopClosing !== null && (this.stopClosing(), this.stopClosing = null);
1291
1417
  }
1292
1418
  }
1293
- }, en = { class: "bb-dashboard-ui bb:relative bb:inline-flex bb:shadow-xs bb:rounded-md" }, tn = {
1419
+ }, vn = { class: "bb-dashboard-ui bb:relative bb:inline-flex bb:shadow-xs bb:rounded-md" }, yn = {
1294
1420
  key: 0,
1295
1421
  class: "bb:-ml-px bb:relative bb:block"
1296
- }, nn = ["id", "popovertarget"], rn = { class: "bb:sr-only" }, an = ["id", "aria-labelledby"];
1297
- function on(e, t, n, o, s, c) {
1298
- return u(), i("span", en, [a("button", {
1422
+ }, bn = ["id", "popovertarget"], xn = { class: "bb:sr-only" }, Sn = ["id", "aria-labelledby"];
1423
+ function Cn(e, t, n, o, s, c) {
1424
+ return d(), i("span", vn, [a("button", {
1299
1425
  type: "button",
1300
- class: l(["bb:relative bb:inline-flex bb:items-center bb:rounded-l-md bb:border bb:border-gray-300 bb:bg-white bb:hover:bg-gray-50 bb:focus:outline-hidden", { "bb:rounded-r-md": !e.$slots.actions }])
1301
- }, [f(e.$slots, "button")], 2), e.$slots.actions ? (u(), i("span", tn, [a("button", {
1426
+ class: u(["bb:relative bb:inline-flex bb:items-center bb:rounded-l-md bb:border bb:border-gray-300 bb:bg-white bb:hover:bg-gray-50 bb:focus:outline-hidden", { "bb:rounded-r-md": !e.$slots.actions }])
1427
+ }, [p(e.$slots, "button")], 2), e.$slots.actions ? (d(), i("span", yn, [a("button", {
1302
1428
  ref: "arrow",
1303
1429
  id: o.menuButtonId,
1304
1430
  type: "button",
1305
1431
  popovertarget: o.menuId,
1306
1432
  class: "bb:relative bb:inline-flex bb:items-center bb:px-2 bb:py-2 bb:rounded-r-md bb:border bb:border-gray-300 bb:bg-white bb:text-sm bb:font-medium bb:text-gray-500 bb:hover:bg-gray-50 bb:focus:z-10 bb:focus:outline-hidden bb:focus:ring-1 bb:focus:ring-indigo-500 bb:focus:border-indigo-500"
1307
- }, [a("span", rn, m(e.texts.openMenu), 1), t[3] ||= a("svg", {
1433
+ }, [a("span", xn, g(e.texts.openMenu), 1), t[3] ||= a("svg", {
1308
1434
  class: "bb:h-5 bb:w-5",
1309
1435
  xmlns: "http://www.w3.org/2000/svg",
1310
1436
  viewBox: "0 0 20 20",
@@ -1314,7 +1440,7 @@ function on(e, t, n, o, s, c) {
1314
1440
  "fill-rule": "evenodd",
1315
1441
  d: "M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z",
1316
1442
  "clip-rule": "evenodd"
1317
- })], -1)], 8, nn), a("div", {
1443
+ })], -1)], 8, bn), a("div", {
1318
1444
  ref: "menu",
1319
1445
  id: o.menuId,
1320
1446
  popover: "auto",
@@ -1325,46 +1451,46 @@ function on(e, t, n, o, s, c) {
1325
1451
  onBeforetoggle: t[0] ||= (...e) => c.onBeforeToggle && c.onBeforeToggle(...e),
1326
1452
  onToggle: t[1] ||= (...e) => c.onToggle && c.onToggle(...e),
1327
1453
  onClick: t[2] ||= (...e) => c.close && c.close(...e)
1328
- }, [f(e.$slots, "actions")], 40, an)])) : r("", !0)]);
1454
+ }, [p(e.$slots, "actions")], 40, Sn)])) : r("", !0)]);
1329
1455
  }
1330
- var sn = /*#__PURE__*/ T($t, [["render", on]]), cn = {}, ln = {
1456
+ var wn = /*#__PURE__*/ j(_n, [["render", Cn]]), Tn = {}, En = {
1331
1457
  xmlns: "http://www.w3.org/2000/svg",
1332
1458
  viewBox: "0 0 20 20",
1333
1459
  fill: "currentColor",
1334
1460
  "aria-hidden": "true"
1335
1461
  };
1336
- function un(e, t, n, r, o, s) {
1337
- return u(), i("svg", ln, [...t[0] ||= [a("path", {
1462
+ function Dn(e, t, n, r, o, s) {
1463
+ return d(), i("svg", En, [...t[0] ||= [a("path", {
1338
1464
  "fill-rule": "evenodd",
1339
1465
  "clip-rule": "evenodd",
1340
1466
  d: "M7.707 14.707a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 1.414L5.414 9H17a1 1 0 110 2H5.414l2.293 2.293a1 1 0 010 1.414z"
1341
1467
  }, null, -1)]]);
1342
1468
  }
1343
- var dn = /*#__PURE__*/ T(cn, [["render", un]]), fn = {}, pn = {
1469
+ var On = /*#__PURE__*/ j(Tn, [["render", Dn]]), kn = {}, An = {
1344
1470
  xmlns: "http://www.w3.org/2000/svg",
1345
1471
  viewBox: "0 0 20 20",
1346
1472
  fill: "currentColor",
1347
1473
  "aria-hidden": "true"
1348
1474
  };
1349
- function mn(e, t, n, r, o, s) {
1350
- return u(), i("svg", pn, [...t[0] ||= [a("path", {
1475
+ function jn(e, t, n, r, o, s) {
1476
+ return d(), i("svg", An, [...t[0] ||= [a("path", {
1351
1477
  "fill-rule": "evenodd",
1352
1478
  "clip-rule": "evenodd",
1353
1479
  d: "M12.293 5.293a1 1 0 011.414 0l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414-1.414L14.586 11H3a1 1 0 110-2h11.586l-2.293-2.293a1 1 0 010-1.414z"
1354
1480
  }, null, -1)]]);
1355
1481
  }
1356
- var hn = /*#__PURE__*/ T(fn, [["render", mn]]);
1482
+ var Mn = /*#__PURE__*/ j(kn, [["render", jn]]);
1357
1483
  //#endregion
1358
1484
  //#region src/navigation.js
1359
- function gn(e) {
1485
+ function Nn(e) {
1360
1486
  let t = e.currentTarget?.target ?? "";
1361
1487
  return !(e.defaultPrevented || e.target?.isContentEditable === !0 || e.altKey || e.ctrlKey || e.metaKey || e.shiftKey || t !== "" && t !== "_self" || e.button !== 0);
1362
1488
  }
1363
1489
  var X = {
1364
- inject: w,
1490
+ inject: A,
1365
1491
  methods: { followLink(e, t) {
1366
1492
  let n = this.uiSettings.navigate;
1367
- n !== null && gn(e) && (e.preventDefault(), n(t));
1493
+ n !== null && Nn(e) && (e.preventDefault(), n(t));
1368
1494
  } }
1369
1495
  };
1370
1496
  //#endregion
@@ -1372,12 +1498,12 @@ var X = {
1372
1498
  function Z(e) {
1373
1499
  return typeof e == "string" && e !== "" ? e : null;
1374
1500
  }
1375
- var _n = {
1501
+ var Pn = {
1376
1502
  components: {
1377
- ArrowNarrowLeft: dn,
1378
- ArrowNarrowRight: hn
1503
+ ArrowNarrowLeft: On,
1504
+ ArrowNarrowRight: Mn
1379
1505
  },
1380
- mixins: [M, X],
1506
+ mixins: [L, X],
1381
1507
  props: {
1382
1508
  links: {
1383
1509
  type: Object,
@@ -1411,43 +1537,43 @@ var _n = {
1411
1537
  return Z(this.links?.next);
1412
1538
  }
1413
1539
  }
1414
- }, vn = {
1540
+ }, Fn = {
1415
1541
  key: 0,
1416
1542
  class: "bb-dashboard-ui bb:px-4 bb:flex bb:items-center bb:justify-between bb:sm:px-0"
1417
- }, yn = { class: "bb:-mt-px bb:w-0 bb:flex-1 bb:flex" }, bn = ["href"], xn = {
1543
+ }, In = { class: "bb:-mt-px bb:w-0 bb:flex-1 bb:flex" }, Ln = ["href"], Rn = {
1418
1544
  key: 0,
1419
1545
  class: "bb:hidden bb:md:-mt-px bb:md:flex bb:text-gray-400 bb:text-sm bb:leading-5"
1420
- }, Sn = { class: "bb:font-medium bb:text-gray-900 bb:mx-1" }, Cn = { class: "bb:font-medium bb:text-gray-900 bb:mx-1" }, wn = { class: "bb:-mt-px bb:w-0 bb:flex-1 bb:flex bb:justify-end" }, Tn = ["href"];
1421
- function En(e, t, n, c, l, d) {
1422
- let f = p("arrow-narrow-left"), h = p("arrow-narrow-right");
1423
- return d.hasResults ? (u(), i("nav", vn, [
1424
- a("div", yn, [d.previousPageUrl === null ? r("", !0) : (u(), i("a", {
1546
+ }, zn = { class: "bb:font-medium bb:text-gray-900 bb:mx-1" }, Bn = { class: "bb:font-medium bb:text-gray-900 bb:mx-1" }, Vn = { class: "bb:-mt-px bb:w-0 bb:flex-1 bb:flex bb:justify-end" }, Hn = ["href"];
1547
+ function Un(e, t, n, c, l, u) {
1548
+ let f = m("arrow-narrow-left"), p = m("arrow-narrow-right");
1549
+ return u.hasResults ? (d(), i("nav", Fn, [
1550
+ a("div", In, [u.previousPageUrl === null ? r("", !0) : (d(), i("a", {
1425
1551
  key: 0,
1426
- href: d.previousPageUrl,
1552
+ href: u.previousPageUrl,
1427
1553
  class: "bb:border-t-2 bb:border-transparent bb:pt-4 bb:pr-1 bb:inline-flex bb:items-center bb:text-sm bb:font-medium bb:text-gray-500 bb:hover:text-gray-700 bb:hover:border-indigo-700",
1428
- onClick: t[0] ||= (t) => e.followLink(t, d.previousPageUrl)
1429
- }, [s(f, { class: "bb:mr-3 bb:h-5 bb:w-5 bb:text-gray-400" }), o(" " + m(e.texts.previousPage), 1)], 8, bn))]),
1430
- d.hasRange ? (u(), i("div", xn, [
1431
- o(m(e.texts.resultsBefore) + " ", 1),
1432
- a("span", Sn, m(d.from) + " - " + m(d.to), 1),
1433
- o(" " + m(e.texts.resultsOf) + " ", 1),
1434
- a("span", Cn, m(d.total), 1),
1435
- o(" " + m(e.texts.resultsAfter), 1)
1554
+ onClick: t[0] ||= (t) => e.followLink(t, u.previousPageUrl)
1555
+ }, [s(f, { class: "bb:mr-3 bb:h-5 bb:w-5 bb:text-gray-400" }), o(" " + g(e.texts.previousPage), 1)], 8, Ln))]),
1556
+ u.hasRange ? (d(), i("div", Rn, [
1557
+ o(g(e.texts.resultsBefore) + " ", 1),
1558
+ a("span", zn, g(u.from) + " - " + g(u.to), 1),
1559
+ o(" " + g(e.texts.resultsOf) + " ", 1),
1560
+ a("span", Bn, g(u.total), 1),
1561
+ o(" " + g(e.texts.resultsAfter), 1)
1436
1562
  ])) : r("", !0),
1437
- a("div", wn, [d.nextPageUrl === null ? r("", !0) : (u(), i("a", {
1563
+ a("div", Vn, [u.nextPageUrl === null ? r("", !0) : (d(), i("a", {
1438
1564
  key: 0,
1439
- href: d.nextPageUrl,
1565
+ href: u.nextPageUrl,
1440
1566
  class: "bb:border-t-2 bb:border-transparent bb:pt-4 bb:pl-1 bb:inline-flex bb:items-center bb:text-sm bb:font-medium bb:text-gray-500 bb:hover:text-gray-700 bb:hover:border-indigo-700",
1441
- onClick: t[1] ||= (t) => e.followLink(t, d.nextPageUrl)
1442
- }, [o(m(e.texts.nextPage) + " ", 1), s(h, { class: "bb:ml-3 bb:h-5 bb:w-5 bb:text-gray-400" })], 8, Tn))])
1567
+ onClick: t[1] ||= (t) => e.followLink(t, u.nextPageUrl)
1568
+ }, [o(g(e.texts.nextPage) + " ", 1), s(p, { class: "bb:ml-3 bb:h-5 bb:w-5 bb:text-gray-400" })], 8, Hn))])
1443
1569
  ])) : r("", !0);
1444
1570
  }
1445
- var Dn = /*#__PURE__*/ T(_n, [["render", En]]), On = [
1571
+ var Wn = /*#__PURE__*/ j(Pn, [["render", Un]]), Gn = [
1446
1572
  "left",
1447
1573
  "center",
1448
1574
  "right"
1449
- ], kn = ["red", "green"];
1450
- function An(e) {
1575
+ ], Kn = ["red", "green"];
1576
+ function qn(e) {
1451
1577
  if (typeof e != "object" || !e || typeof e.key != "string" || e.key === "") return null;
1452
1578
  let t = e.key;
1453
1579
  return {
@@ -1456,7 +1582,7 @@ function An(e) {
1456
1582
  value: typeof e.value == "function" ? e.value : (e) => e?.[t],
1457
1583
  secondary: typeof e.secondary == "function" ? e.secondary : null,
1458
1584
  muted: e.muted === !0,
1459
- align: On.includes(e.align) ? e.align : "left",
1585
+ align: Gn.includes(e.align) ? e.align : "left",
1460
1586
  wrap: e.wrap === !0,
1461
1587
  narrow: e.narrow === !0,
1462
1588
  visible: e.visible !== !1
@@ -1465,12 +1591,12 @@ function An(e) {
1465
1591
  function Q(e) {
1466
1592
  return typeof e == "string" && e !== "" ? e : null;
1467
1593
  }
1468
- var jn = {
1594
+ var Jn = {
1469
1595
  components: {
1470
- Pagination: Dn,
1596
+ Pagination: Wn,
1471
1597
  SmallBadge: H
1472
1598
  },
1473
- mixins: [M],
1599
+ mixins: [L],
1474
1600
  props: {
1475
1601
  rows: {
1476
1602
  type: Array,
@@ -1515,7 +1641,7 @@ var jn = {
1515
1641
  return Array.isArray(this.rows) ? this.rows : [];
1516
1642
  },
1517
1643
  visibleColumns() {
1518
- return (Array.isArray(this.columns) ? this.columns : []).map(An).filter((e) => e !== null && e.visible);
1644
+ return (Array.isArray(this.columns) ? this.columns : []).map(qn).filter((e) => e !== null && e.visible);
1519
1645
  },
1520
1646
  isCard() {
1521
1647
  return this.variant === "card";
@@ -1554,47 +1680,47 @@ var jn = {
1554
1680
  colorOf(e) {
1555
1681
  if (typeof this.rowColor != "function") return null;
1556
1682
  let t = this.rowColor(e);
1557
- return kn.includes(t) ? t : null;
1683
+ return Kn.includes(t) ? t : null;
1558
1684
  },
1559
1685
  textOf(e, t) {
1560
1686
  let n = e(t);
1561
1687
  return n == null ? "" : String(n);
1562
1688
  }
1563
1689
  }
1564
- }, Mn = { class: "bb:min-w-full bb:divide-y bb:divide-gray-200 bb:border-collapse" }, Nn = { class: "bb:bg-gray-50" }, Pn = ["textContent"], Fn = { class: "bb:divide-y bb:divide-gray-200" }, In = ["textContent"], Ln = ["textContent"];
1565
- function Rn(t, o, s, c, h, g) {
1566
- let _ = p("small-badge"), v = p("pagination");
1567
- return u(), i("div", null, [
1568
- g.hasBadgeRow() ? (u(), i("div", {
1690
+ }, Yn = { class: "bb:min-w-full bb:divide-y bb:divide-gray-200 bb:border-collapse" }, Xn = { class: "bb:bg-gray-50" }, Zn = ["textContent"], Qn = { class: "bb:divide-y bb:divide-gray-200" }, $n = ["textContent"], er = ["textContent"];
1691
+ function tr(t, o, s, c, l, h) {
1692
+ let _ = m("small-badge"), v = m("pagination");
1693
+ return d(), i("div", null, [
1694
+ h.hasBadgeRow() ? (d(), i("div", {
1569
1695
  key: 0,
1570
- class: l(["bb:flex bb:justify-center bb:items-center bb:space-x-2", g.isCard ? "" : "bb:my-4"])
1571
- }, [g.badgeText === null ? r("", !0) : (u(), n(_, {
1696
+ class: u(["bb:flex bb:justify-center bb:items-center bb:space-x-2", h.isCard ? "" : "bb:my-4"])
1697
+ }, [h.badgeText === null ? r("", !0) : (d(), n(_, {
1572
1698
  key: 0,
1573
- text: g.badgeText,
1699
+ text: h.badgeText,
1574
1700
  color: "indigo"
1575
- }, null, 8, ["text"])), g.hasRecords ? f(t.$slots, "results-actions", {}, void 0, void 0, 1) : r("", !0)], 2)) : r("", !0),
1576
- g.normalizedRows.length > 0 ? (u(), i("div", {
1701
+ }, null, 8, ["text"])), h.hasRecords ? p(t.$slots, "results-actions", {}, void 0, void 0, 1) : r("", !0)], 2)) : r("", !0),
1702
+ h.normalizedRows.length > 0 ? (d(), i("div", {
1577
1703
  key: 1,
1578
- class: l(g.isCard && g.hasBadgeRow() ? "bb:mt-4" : "")
1579
- }, [a("div", { class: l(["bb:overflow-x-auto", g.isCard ? "bb:border-t bb:border-gray-200" : "bb:shadow-sm bb:border-b bb:border-gray-200 bb:sm:rounded-lg"]) }, [a("table", Mn, [a("thead", null, [a("tr", Nn, [(u(!0), i(e, null, d(g.visibleColumns, (e) => (u(), i("th", {
1704
+ class: u(h.isCard && h.hasBadgeRow() ? "bb:mt-4" : "")
1705
+ }, [a("div", { class: u(["bb:overflow-x-auto", h.isCard ? "bb:border-t bb:border-gray-200" : "bb:shadow-sm bb:border-b bb:border-gray-200 bb:sm:rounded-lg"]) }, [a("table", Yn, [a("thead", null, [a("tr", Xn, [(d(!0), i(e, null, f(h.visibleColumns, (e) => (d(), i("th", {
1580
1706
  key: e.key,
1581
1707
  scope: "col",
1582
- class: l(["bb:px-6 bb:py-3 bb:text-xs bb:leading-4 bb:font-medium bb:text-gray-500 bb:uppercase bb:tracking-wider bb:whitespace-nowrap", [{
1708
+ class: u(["bb:px-6 bb:py-3 bb:text-xs bb:leading-4 bb:font-medium bb:text-gray-500 bb:uppercase bb:tracking-wider bb:whitespace-nowrap", [{
1583
1709
  "bb:text-left": e.align === "left",
1584
1710
  "bb:text-center": e.align === "center",
1585
1711
  "bb:text-right": e.align === "right"
1586
1712
  }, { "bb:w-px": e.narrow }]]),
1587
- textContent: m(e.label)
1588
- }, null, 10, Pn))), 128))])]), a("tbody", Fn, [(u(!0), i(e, null, d(g.normalizedRows, (n, o) => (u(), i("tr", {
1589
- key: g.keyOf(n, o),
1590
- class: l({
1591
- "bb:bg-white bb:even:bg-gray-50": g.colorOf(n) === null,
1592
- "bb:bg-red-50": g.colorOf(n) === "red",
1593
- "bb:bg-green-50": g.colorOf(n) === "green"
1713
+ textContent: g(e.label)
1714
+ }, null, 10, Zn))), 128))])]), a("tbody", Qn, [(d(!0), i(e, null, f(h.normalizedRows, (n, o) => (d(), i("tr", {
1715
+ key: h.keyOf(n, o),
1716
+ class: u({
1717
+ "bb:bg-white bb:even:bg-gray-50": h.colorOf(n) === null,
1718
+ "bb:bg-red-50": h.colorOf(n) === "red",
1719
+ "bb:bg-green-50": h.colorOf(n) === "green"
1594
1720
  })
1595
- }, [(u(!0), i(e, null, d(g.visibleColumns, (e) => (u(), i("td", {
1721
+ }, [(d(!0), i(e, null, f(h.visibleColumns, (e) => (d(), i("td", {
1596
1722
  key: e.key,
1597
- class: l(["bb:px-6 bb:py-4 bb:align-top bb:relative bb:text-sm bb:leading-5", [
1723
+ class: u(["bb:px-6 bb:py-4 bb:align-top bb:relative bb:text-sm bb:leading-5", [
1598
1724
  { "bb:whitespace-nowrap": !e.wrap },
1599
1725
  {
1600
1726
  "bb:text-left": e.align === "left",
@@ -1603,23 +1729,23 @@ function Rn(t, o, s, c, h, g) {
1603
1729
  },
1604
1730
  { "bb:w-px": e.narrow }
1605
1731
  ]])
1606
- }, [f(t.$slots, `cell-${e.key}`, {
1732
+ }, [p(t.$slots, `cell-${e.key}`, {
1607
1733
  row: n,
1608
1734
  index: o
1609
1735
  }, () => [a("div", {
1610
- class: l(["bb:font-medium", e.muted ? "bb:text-gray-400" : "bb:text-gray-900"]),
1611
- textContent: m(g.textOf(e.value, n))
1612
- }, null, 10, In), e.secondary !== null && g.textOf(e.secondary, n) !== "" ? (u(), i("div", {
1736
+ class: u(["bb:font-medium", e.muted ? "bb:text-gray-400" : "bb:text-gray-900"]),
1737
+ textContent: g(h.textOf(e.value, n))
1738
+ }, null, 10, $n), e.secondary !== null && h.textOf(e.secondary, n) !== "" ? (d(), i("div", {
1613
1739
  key: 0,
1614
1740
  class: "bb:text-gray-400",
1615
- textContent: m(g.textOf(e.secondary, n))
1616
- }, null, 8, Ln)) : r("", !0)])], 2))), 128))], 2))), 128))])])], 2)], 2)) : r("", !0),
1617
- g.hasMeta ? (u(), n(v, {
1741
+ textContent: g(h.textOf(e.secondary, n))
1742
+ }, null, 8, er)) : r("", !0)])], 2))), 128))], 2))), 128))])])], 2)], 2)) : r("", !0),
1743
+ h.hasMeta ? (d(), n(v, {
1618
1744
  key: 2,
1619
1745
  meta: s.meta,
1620
1746
  links: s.links ?? {},
1621
1747
  lang: t.lang,
1622
- class: l(g.isCard ? "bb:mt-4" : "bb:mt-6")
1748
+ class: u(h.isCard ? "bb:mt-4" : "bb:mt-6")
1623
1749
  }, null, 8, [
1624
1750
  "meta",
1625
1751
  "links",
@@ -1628,7 +1754,7 @@ function Rn(t, o, s, c, h, g) {
1628
1754
  ])) : r("", !0)
1629
1755
  ]);
1630
1756
  }
1631
- var zn = /*#__PURE__*/ T(jn, [["render", Rn]]), Bn = {
1757
+ var nr = /*#__PURE__*/ j(Jn, [["render", tr]]), rr = {
1632
1758
  mixins: [X],
1633
1759
  props: {
1634
1760
  url: {
@@ -1644,39 +1770,124 @@ var zn = /*#__PURE__*/ T(jn, [["render", Rn]]), Bn = {
1644
1770
  default: !1
1645
1771
  }
1646
1772
  }
1647
- }, Vn = ["href", "textContent"];
1648
- function Hn(e, t, n, r, a, o) {
1649
- return u(), i("a", {
1773
+ }, ir = ["href", "textContent"];
1774
+ function ar(e, t, n, r, a, o) {
1775
+ return d(), i("a", {
1650
1776
  href: n.url,
1651
- class: l([n.isActive ? "bb:border-indigo-400 bb:text-gray-600 bb:focus:border-indigo-700" : "bb:border-transparent bb:text-gray-500 bb:hover:text-gray-600 bb:hover:border-gray-300 bb:focus:text-gray-700 bb:focus:border-gray-300", "bb-dashboard-ui bb:inline-flex bb:items-center bb:px-1 bb:pt-1 bb:border-b-2 bb:text-sm bb:font-medium bb:leading-5 bb:focus:outline-hidden bb:transition bb:duration-150 bb:ease-in-out"]),
1777
+ class: u([n.isActive ? "bb:border-indigo-400 bb:text-gray-600 bb:focus:border-indigo-700" : "bb:border-transparent bb:text-gray-500 bb:hover:text-gray-600 bb:hover:border-gray-300 bb:focus:text-gray-700 bb:focus:border-gray-300", "bb-dashboard-ui bb:inline-flex bb:items-center bb:px-1 bb:pt-1 bb:border-b-2 bb:text-sm bb:font-medium bb:leading-5 bb:focus:outline-hidden bb:transition bb:duration-150 bb:ease-in-out"]),
1652
1778
  onClick: t[0] ||= (t) => e.followLink(t, n.url),
1653
- textContent: m(n.name)
1654
- }, null, 10, Vn);
1779
+ textContent: g(n.name)
1780
+ }, null, 10, ir);
1655
1781
  }
1656
- var Un = /*#__PURE__*/ T(Bn, [["render", Hn]]), Wn = {
1782
+ var or = /*#__PURE__*/ j(rr, [["render", ar]]), $ = [
1783
+ "xl",
1784
+ "4xl",
1785
+ "7xl"
1786
+ ], sr = {
1657
1787
  components: { Closer: U },
1658
- mixins: [M],
1788
+ mixins: [L],
1789
+ inheritAttrs: !1,
1790
+ props: {
1791
+ width: {
1792
+ type: String,
1793
+ default: "xl",
1794
+ validator: (e) => $.includes(e)
1795
+ },
1796
+ fallbackUrl: {
1797
+ type: String,
1798
+ default: null
1799
+ },
1800
+ windowKey: {
1801
+ type: String,
1802
+ default: null
1803
+ }
1804
+ },
1659
1805
  data() {
1660
- return { canGoBack: !1 };
1806
+ return { returnAddress: null };
1661
1807
  },
1808
+ computed: {
1809
+ resolvedWidth() {
1810
+ return $.includes(this.width) ? this.width : "xl";
1811
+ },
1812
+ windows() {
1813
+ return this.uiSettings.windows;
1814
+ },
1815
+ resolvedKey() {
1816
+ return this.windowKey !== null && this.windowKey !== "" ? this.windowKey : this.windows === null ? null : ie(this.windows.page.address);
1817
+ },
1818
+ target() {
1819
+ return this.returnAddress === null ? this.fallbackUrl === null || this.fallbackUrl === "" ? null : this.fallbackUrl : this.returnAddress;
1820
+ },
1821
+ canClose() {
1822
+ return this.target !== null;
1823
+ }
1824
+ },
1825
+ watch: { fallbackUrl() {
1826
+ this.windows !== null && fe(this.windows.state, this, this.fallbackAddress());
1827
+ } },
1662
1828
  mounted() {
1663
- this.canGoBack = window.history.length > 1;
1829
+ this.windows !== null && (this.returnAddress = O(this.windows.state, this, this.resolvedKey, this.fallbackAddress()).returnAddress, this.$watch(() => [this.windows.page.number, this.resolvedKey], () => this.syncWindow(), { flush: "post" }));
1664
1830
  },
1665
- methods: { goBack() {
1666
- window.history.back();
1667
- } }
1831
+ beforeUnmount() {
1832
+ this.windows !== null && de(this.windows.state, this);
1833
+ },
1834
+ methods: {
1835
+ fallbackAddress() {
1836
+ return T(this.fallbackUrl, window.location.origin);
1837
+ },
1838
+ forwardedAttrs() {
1839
+ return Object.fromEntries(Object.entries(this.$attrs).filter(([e]) => e.startsWith("data-") || e.startsWith("aria-")));
1840
+ },
1841
+ syncWindow() {
1842
+ let e = ue(this.windows.state, this, this.resolvedKey, this.fallbackAddress());
1843
+ e.rejected && console.warn(`PageCard: ключ окна сменился на «${this.resolvedKey}» без смены страницы — карточка остаётся в окне «${e.key}»`), this.returnAddress = e.window.returnAddress;
1844
+ },
1845
+ close() {
1846
+ let e = this.target;
1847
+ if (e === null) return;
1848
+ let t = this.uiSettings.navigate;
1849
+ if (t === null) {
1850
+ window.location.assign(e);
1851
+ return;
1852
+ }
1853
+ t(e);
1854
+ }
1855
+ }
1668
1856
  };
1669
- function Gn(e, t, a, o, s, c) {
1670
- let d = p("closer");
1671
- return u(), i("div", { class: l(["bb:box-border bb:relative bb:my-6 bb:mx-auto bb:bg-white bb:shadow-xl bb:sm:max-w-xl bb:sm:rounded-lg", s.canGoBack ? "bb:[--bb-closer-space:3.5rem] bb:md:[--bb-closer-space:0px]" : "bb:[--bb-closer-space:0px]"]) }, [f(e.$slots, "default"), s.canGoBack ? (u(), n(d, {
1857
+ function cr(e, t, a, o, s, c) {
1858
+ let f = m("closer");
1859
+ return d(), i("div", l({
1860
+ class: ["bb:box-border bb:relative bb:my-6 bb:mx-auto bb:bg-white bb:shadow-xl bb:sm:rounded-lg", [
1861
+ {
1862
+ "bb:sm:max-w-xl": c.resolvedWidth === "xl",
1863
+ "bb:sm:max-w-4xl": c.resolvedWidth === "4xl",
1864
+ "bb:sm:max-w-7xl": c.resolvedWidth === "7xl"
1865
+ },
1866
+ c.canClose ? {
1867
+ "bb:[--bb-closer-space:3.5rem] bb:md:[--bb-closer-space:0px]": c.resolvedWidth === "xl",
1868
+ "bb:[--bb-closer-space:3.5rem] bb:lg:[--bb-closer-space:0px]": c.resolvedWidth === "4xl",
1869
+ "bb:[--bb-closer-space:3.5rem] bb:2xl:[--bb-closer-space:0px]": c.resolvedWidth === "7xl"
1870
+ } : "bb:[--bb-closer-space:0px]",
1871
+ e.$attrs.class
1872
+ ]],
1873
+ style: e.$attrs.style
1874
+ }, { ...c.forwardedAttrs() }), [p(e.$slots, "default", { close: c.close }), c.canClose ? (d(), n(f, {
1672
1875
  key: 0,
1673
- class: "bb:absolute bb:top-0 bb:right-0 bb:mt-4 bb:mr-4 bb:w-8 bb:h-8 bb:sm:mt-6 bb:md:right-auto bb:md:left-full bb:md:mr-0 bb:md:ml-4 bb:rounded-md bb:focus-visible:ring-2 bb:focus-visible:ring-indigo-500",
1876
+ class: u(["bb:absolute bb:top-0 bb:right-0 bb:mt-4 bb:mr-4 bb:w-8 bb:h-8 bb:sm:mt-6 bb:rounded-md bb:focus-visible:ring-2 bb:focus-visible:ring-indigo-500", {
1877
+ "bb:md:right-auto bb:md:left-full bb:md:mr-0 bb:md:ml-4": c.resolvedWidth === "xl",
1878
+ "bb:lg:right-auto bb:lg:left-full bb:lg:mr-0 bb:lg:ml-4": c.resolvedWidth === "4xl",
1879
+ "bb:2xl:right-auto bb:2xl:left-full bb:2xl:mr-0 bb:2xl:ml-4": c.resolvedWidth === "7xl"
1880
+ }]),
1674
1881
  tabindex: "0",
1675
1882
  "aria-label": e.texts.back,
1676
- onClicked: c.goBack
1677
- }, null, 8, ["aria-label", "onClicked"])) : r("", !0)], 2);
1883
+ onClicked: c.close
1884
+ }, null, 8, [
1885
+ "class",
1886
+ "aria-label",
1887
+ "onClicked"
1888
+ ])) : r("", !0)], 16);
1678
1889
  }
1679
- var Kn = /*#__PURE__*/ T(Wn, [["render", Gn]]), qn = {}, $ = {
1890
+ var lr = /*#__PURE__*/ j(sr, [["render", cr]]), ur = {}, dr = {
1680
1891
  class: "bb:h-7 bb:w-7 bb:text-green-600",
1681
1892
  xmlns: "http://www.w3.org/2000/svg",
1682
1893
  fill: "none",
@@ -1685,22 +1896,22 @@ var Kn = /*#__PURE__*/ T(Wn, [["render", Gn]]), qn = {}, $ = {
1685
1896
  stroke: "currentColor",
1686
1897
  "aria-hidden": "true"
1687
1898
  };
1688
- function Jn(e, t, n, r, o, s) {
1689
- return u(), i("svg", $, [...t[0] ||= [a("path", {
1899
+ function fr(e, t, n, r, o, s) {
1900
+ return d(), i("svg", dr, [...t[0] ||= [a("path", {
1690
1901
  "stroke-linecap": "round",
1691
1902
  "stroke-linejoin": "round",
1692
1903
  d: "M9 12.75 11.25 15 15 9.75M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"
1693
1904
  }, null, -1)]]);
1694
1905
  }
1695
- var Yn = /*#__PURE__*/ T(qn, [["render", Jn]]), Xn = {}, Zn = {
1906
+ var pr = /*#__PURE__*/ j(ur, [["render", fr]]), mr = {}, hr = {
1696
1907
  class: "bb:h-5 bb:w-5",
1697
1908
  xmlns: "http://www.w3.org/2000/svg",
1698
1909
  viewBox: "0 0 20 20",
1699
1910
  fill: "currentColor",
1700
1911
  "aria-hidden": "true"
1701
1912
  };
1702
- function Qn(e, t, n, r, o, s) {
1703
- return u(), i("svg", Zn, [...t[0] ||= [a("path", {
1913
+ function gr(e, t, n, r, o, s) {
1914
+ return d(), i("svg", hr, [...t[0] ||= [a("path", {
1704
1915
  "fill-rule": "evenodd",
1705
1916
  d: "M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z",
1706
1917
  "clip-rule": "evenodd"
@@ -1708,14 +1919,14 @@ function Qn(e, t, n, r, o, s) {
1708
1919
  }
1709
1920
  //#endregion
1710
1921
  //#region src/components/NotificationMessage.vue
1711
- var $n = {
1922
+ var _r = {
1712
1923
  components: {
1713
- Check: Yn,
1714
- Close: /* @__PURE__ */ T(Xn, [["render", Qn]]),
1924
+ Check: pr,
1925
+ Close: /* @__PURE__ */ j(mr, [["render", gr]]),
1715
1926
  Dangerous: W,
1716
1927
  Warning: G
1717
1928
  },
1718
- mixins: [M],
1929
+ mixins: [L],
1719
1930
  emits: ["update:modelValue"],
1720
1931
  props: {
1721
1932
  modelValue: {
@@ -1753,37 +1964,37 @@ var $n = {
1753
1964
  return this.type === "confirmation";
1754
1965
  }
1755
1966
  }
1756
- }, er = ["role"], tr = { class: "bb:p-4" }, nr = { class: "bb:flex bb:items-start" }, rr = { class: "bb:shrink-0" }, ir = { class: "bb:ml-3 bb:w-0 bb:flex-1 bb:pt-0.5" }, ar = { class: "bb:text-sm bb:font-medium bb:text-gray-900" }, or = { class: "bb:mt-1 bb:text-sm bb:text-gray-500" }, sr = { class: "bb:ml-4 bb:shrink-0 bb:flex" }, cr = { class: "bb:sr-only" };
1757
- function lr(e, t, o, c, d, f) {
1758
- let h = p("warning"), g = p("dangerous"), _ = p("check"), v = p("close");
1759
- return u(), i("div", {
1967
+ }, vr = ["role"], yr = { class: "bb:p-4" }, br = { class: "bb:flex bb:items-start" }, xr = { class: "bb:shrink-0" }, Sr = { class: "bb:ml-3 bb:w-0 bb:flex-1 bb:pt-0.5" }, Cr = { class: "bb:text-sm bb:font-medium bb:text-gray-900" }, wr = { class: "bb:mt-1 bb:text-sm bb:text-gray-500" }, Tr = { class: "bb:ml-4 bb:shrink-0 bb:flex" }, Er = { class: "bb:sr-only" };
1968
+ function Dr(e, t, o, c, l, f) {
1969
+ let p = m("warning"), h = m("dangerous"), _ = m("check"), v = m("close");
1970
+ return d(), i("div", {
1760
1971
  class: "bb-dashboard-ui bb:fixed bb:inset-0 bb:flex bb:items-end bb:justify-center bb:px-4 bb:py-6 bb:pointer-events-none bb:sm:p-6 bb:sm:items-start bb:sm:justify-end",
1761
1972
  role: f.isDangerous ? "alert" : "status"
1762
- }, [f.hasMessage ? (u(), i("div", {
1973
+ }, [f.hasMessage ? (d(), i("div", {
1763
1974
  key: 0,
1764
- class: l(["bb:max-w-sm bb:w-full bb:shadow-lg bb:rounded-lg bb:pointer-events-auto bb:ring-1 bb:ring-black/5 bb:overflow-hidden", {
1975
+ class: u(["bb:max-w-sm bb:w-full bb:shadow-lg bb:rounded-lg bb:pointer-events-auto bb:ring-1 bb:ring-black/5 bb:overflow-hidden", {
1765
1976
  "bb:bg-red-50": f.isDangerous,
1766
1977
  "bb:bg-yellow-50": f.isWarning,
1767
1978
  "bb:bg-gray-50": f.isConfirmation
1768
1979
  }])
1769
- }, [a("div", tr, [a("div", nr, [
1770
- a("div", rr, [
1771
- f.isWarning ? (u(), n(h, { key: 0 })) : r("", !0),
1772
- f.isDangerous ? (u(), n(g, { key: 1 })) : r("", !0),
1773
- f.isConfirmation ? (u(), n(_, { key: 2 })) : r("", !0)
1980
+ }, [a("div", yr, [a("div", br, [
1981
+ a("div", xr, [
1982
+ f.isWarning ? (d(), n(p, { key: 0 })) : r("", !0),
1983
+ f.isDangerous ? (d(), n(h, { key: 1 })) : r("", !0),
1984
+ f.isConfirmation ? (d(), n(_, { key: 2 })) : r("", !0)
1774
1985
  ]),
1775
- a("div", ir, [a("p", ar, m(o.notificationHeading), 1), a("p", or, m(f.text), 1)]),
1776
- a("div", sr, [a("button", {
1986
+ a("div", Sr, [a("p", Cr, g(o.notificationHeading), 1), a("p", wr, g(f.text), 1)]),
1987
+ a("div", Tr, [a("button", {
1777
1988
  type: "button",
1778
- class: l(["bb:rounded-md bb:inline-flex bb:text-gray-400 bb:hover:text-gray-500 bb:focus:outline-hidden bb:focus:ring-2 bb:focus:ring-offset-2 bb:focus:ring-indigo-500", {
1989
+ class: u(["bb:rounded-md bb:inline-flex bb:text-gray-400 bb:hover:text-gray-500 bb:focus:outline-hidden bb:focus:ring-2 bb:focus:ring-offset-2 bb:focus:ring-indigo-500", {
1779
1990
  "bb:bg-red-50": f.isDangerous,
1780
1991
  "bb:bg-yellow-50": f.isWarning,
1781
1992
  "bb:bg-gray-50": f.isConfirmation
1782
1993
  }]),
1783
- onClick: t[0] ||= b((t) => e.$emit("update:modelValue", ""), ["prevent"])
1784
- }, [a("span", cr, m(e.texts.close), 1), s(v)], 2)])
1785
- ])])], 2)) : r("", !0)], 8, er);
1994
+ onClick: t[0] ||= S((t) => e.$emit("update:modelValue", ""), ["prevent"])
1995
+ }, [a("span", Er, g(e.texts.close), 1), s(v)], 2)])
1996
+ ])])], 2)) : r("", !0)], 8, vr);
1786
1997
  }
1787
- var ur = /*#__PURE__*/ T($n, [["render", lr]]);
1998
+ var Or = /*#__PURE__*/ j(_r, [["render", Dr]]);
1788
1999
  //#endregion
1789
- export { U as Closer, Yt as ConfirmationModal, zn as DataTable, O as Dot, Dt as DownloadLink, sn as DropdownButtonWithAction, _t as ErrorMessages, Un as NavigationMenuElement, ur as NotificationMessage, Kn as PageCard, R as PickDay, D as Popup, Ae as RussianMobileFilter, Le as Search, We as SelectDateInterval, st as SelectSingle, H as SmallBadge, ie as dashboardUi };
2000
+ export { U as Closer, pn as ConfirmationModal, nr as DataTable, N as Dot, Wt as DownloadLink, wn as DropdownButtonWithAction, Pt as ErrorMessages, or as NavigationMenuElement, Or as NotificationMessage, lr as PageCard, R as PickDay, M as Popup, qe as RussianMobileFilter, et as Search, st as SelectDateInterval, wt as SelectSingle, H as SmallBadge, he as dashboardUi };