@boobooking/dashboard-ui-components 0.8.0 → 0.10.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
@@ -51,7 +51,9 @@ var te = {
51
51
  nextPage: "Следующая",
52
52
  resultsBefore: "Показаны результаты",
53
53
  resultsOf: "из",
54
- resultsAfter: ""
54
+ resultsAfter: "",
55
+ back: "Назад",
56
+ close: "Закрыть"
55
57
  },
56
58
  en: {
57
59
  cancel: "Cancel",
@@ -97,7 +99,9 @@ var te = {
97
99
  nextPage: "Next",
98
100
  resultsBefore: "Showing",
99
101
  resultsOf: "of",
100
- resultsAfter: "results"
102
+ resultsAfter: "results",
103
+ back: "Back",
104
+ close: "Close"
101
105
  }
102
106
  }, T = Symbol("dashboardUi"), E = Object.freeze({
103
107
  lang: "ru",
@@ -248,13 +252,13 @@ function ce(e, t, n, r, o, s) {
248
252
  r: "45"
249
253
  })], -1)]], 2);
250
254
  }
251
- var j = /*#__PURE__*/ k(se, [["render", ce]]), M = {}, N = {
255
+ var j = /*#__PURE__*/ k(se, [["render", ce]]), le = {}, ue = {
252
256
  type: "button",
253
257
  tabindex: "-1",
254
258
  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"
255
259
  };
256
- function P(e, t, n, r, o, s) {
257
- return u(), i("button", N, [...t[0] ||= [a("svg", {
260
+ function M(e, t, n, r, o, s) {
261
+ return u(), i("button", ue, [...t[0] ||= [a("svg", {
258
262
  class: "bb:w-6 bb:h-6 bb:stroke-current",
259
263
  fill: "none",
260
264
  viewBox: "0 0 24 24"
@@ -265,13 +269,13 @@ function P(e, t, n, r, o, s) {
265
269
  d: "M6 18L18 6M6 6l12 12"
266
270
  })], -1)]]);
267
271
  }
268
- var F = /*#__PURE__*/ k(M, [["render", P]]);
272
+ var N = /*#__PURE__*/ k(le, [["render", M]]);
269
273
  //#endregion
270
274
  //#region src/date.js
271
- function I(e) {
275
+ function P(e) {
272
276
  return `${String(e.getDate()).padStart(2, "0")}.${String(e.getMonth() + 1).padStart(2, "0")}.${String(e.getFullYear()).padStart(4, "0")}`;
273
277
  }
274
- function L(e) {
278
+ function F(e) {
275
279
  let t = /^(\d{1,2})\.(\d{1,2})\.(\d{4})$/.exec(e);
276
280
  if (t === null) return null;
277
281
  let [, n, r, i] = t.map(Number), a = /* @__PURE__ */ new Date(0);
@@ -279,7 +283,7 @@ function L(e) {
279
283
  }
280
284
  //#endregion
281
285
  //#region src/lang.js
282
- var R = {
286
+ var I = {
283
287
  inject: D,
284
288
  props: { lang: {
285
289
  type: String,
@@ -294,12 +298,12 @@ var R = {
294
298
  return te[this.resolvedLang];
295
299
  }
296
300
  }
297
- }, z = {
301
+ }, L = {
298
302
  components: {
299
303
  Popup: A,
300
- Eraser: F
304
+ Eraser: N
301
305
  },
302
- mixins: [R],
306
+ mixins: [I],
303
307
  emits: ["update:modelValue", "changed"],
304
308
  props: {
305
309
  modelValue: {
@@ -325,8 +329,8 @@ var R = {
325
329
  keyboardInput: !1,
326
330
  bound: !1,
327
331
  firstDay: 1,
328
- parse: (e) => L(e),
329
- toString: (e) => I(e),
332
+ parse: (e) => F(e),
333
+ toString: (e) => P(e),
330
334
  i18n: {
331
335
  previousMonth: this.texts.previousMonth,
332
336
  nextMonth: this.texts.nextMonth,
@@ -335,7 +339,7 @@ var R = {
335
339
  weekdaysShort: this.texts.weekdaysShort
336
340
  },
337
341
  onSelect: (e) => {
338
- this.popupIsOpen = !1, this.$emit("update:modelValue", I(e)), this.$emit("changed");
342
+ this.popupIsOpen = !1, this.$emit("update:modelValue", P(e)), this.$emit("changed");
339
343
  }
340
344
  });
341
345
  },
@@ -354,7 +358,7 @@ var R = {
354
358
  } },
355
359
  methods: {
356
360
  syncPicker(e) {
357
- let t = L(e);
361
+ let t = F(e);
358
362
  if (t === null) {
359
363
  this.picker.clear();
360
364
  return;
@@ -373,29 +377,29 @@ var R = {
373
377
  return !this.withEraser || this.popupIsOpen ? !1 : this.hasValue;
374
378
  }
375
379
  }
376
- }, B = { class: "bb-dashboard-ui bb:flex bb:flex-col" }, V = { class: "bb:relative bb:flex bb:h-full bb:cursor-pointer bb:leading-none" }, H = { class: "bb:min-w-24 bb:w-full bb:h-full" }, U = [
380
+ }, R = { class: "bb-dashboard-ui bb:flex bb:flex-col" }, z = { class: "bb:relative bb:flex bb:h-full bb:cursor-pointer bb:leading-none" }, B = { class: "bb:min-w-24 bb:w-full bb:h-full" }, V = [
377
381
  "disabled",
378
382
  "value",
379
383
  "placeholder"
380
- ], W = {
384
+ ], H = {
381
385
  ref: "container",
382
386
  class: "bb:flex bb:mt-1 bb:bg-white bb:border bb:border-gray-200 bb:rounded-md bb:shadow-lg"
383
387
  };
384
- function G(e, t, o, c, d, f) {
388
+ function U(e, t, o, c, d, f) {
385
389
  let m = p("eraser"), h = p("popup");
386
- return u(), i("div", B, [a("div", V, [a("button", {
390
+ return u(), i("div", R, [a("div", z, [a("button", {
387
391
  ref: "trigger",
388
392
  type: "button",
389
393
  class: l(["bb:flex bb:w-full bb:items-center bb:focus:outline-hidden", { "bb:z-20": d.popupIsOpen }]),
390
394
  onClick: t[0] ||= (e) => d.popupIsOpen = !d.popupIsOpen
391
- }, [a("label", H, [a("input", {
395
+ }, [a("label", B, [a("input", {
392
396
  disabled: d.popupIsOpen,
393
397
  ref: "field",
394
398
  type: "text",
395
399
  value: d.dayValue,
396
400
  placeholder: o.placeholderText,
397
401
  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"
398
- }, null, 8, U)])], 2), f.needsEraser ? (u(), n(m, {
402
+ }, null, 8, V)])], 2), f.needsEraser ? (u(), n(m, {
399
403
  key: 0,
400
404
  onClick: f.clearPicker,
401
405
  class: "bb:z-10 bb:h-full bb:pr-2"
@@ -403,11 +407,11 @@ function G(e, t, o, c, d, f) {
403
407
  modelValue: d.popupIsOpen,
404
408
  "onUpdate:modelValue": t[1] ||= (e) => d.popupIsOpen = e
405
409
  }, {
406
- default: v(() => [a("div", W, null, 512)]),
410
+ default: v(() => [a("div", H, null, 512)]),
407
411
  _: 1
408
412
  }, 8, ["modelValue"])]);
409
413
  }
410
- var K = /*#__PURE__*/ k(z, [["render", G]]), le = {
414
+ var W = /*#__PURE__*/ k(L, [["render", U]]), de = {
411
415
  components: { Dot: j },
412
416
  props: {
413
417
  text: {
@@ -423,14 +427,14 @@ var K = /*#__PURE__*/ k(z, [["render", G]]), le = {
423
427
  default: !1
424
428
  }
425
429
  }
426
- }, ue = { class: "bb:flex bb:h-6 bb:px-3 bb:bg-white bb:items-center bb:justify-between" }, de = ["textContent"];
427
- function fe(e, t, n, r, o, c) {
430
+ }, fe = { class: "bb:flex bb:h-6 bb:px-3 bb:bg-white bb:items-center bb:justify-between" }, pe = ["textContent"];
431
+ function me(e, t, n, r, o, c) {
428
432
  let l = p("dot");
429
- return u(), i("div", ue, [
433
+ return u(), i("div", fe, [
430
434
  a("div", {
431
435
  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",
432
436
  textContent: m(n.text)
433
- }, null, 8, de),
437
+ }, null, 8, pe),
434
438
  y(s(l, {
435
439
  color: "red",
436
440
  "with-pulse": !0,
@@ -442,24 +446,24 @@ function fe(e, t, n, r, o, c) {
442
446
  }, null, 512), [[_, n.isRequired]])
443
447
  ]);
444
448
  }
445
- var q = /*#__PURE__*/ k(le, [["render", fe]]), pe = 10;
446
- function me(e) {
449
+ var G = /*#__PURE__*/ k(de, [["render", me]]), he = 10;
450
+ function ge(e) {
447
451
  let t = e.replace(/\D/g, "");
448
- return (t.startsWith("7") || t.startsWith("8")) && t[1] === "9" && (t = t.slice(1)), t.slice(0, pe);
452
+ return (t.startsWith("7") || t.startsWith("8")) && t[1] === "9" && (t = t.slice(1)), t.slice(0, he);
449
453
  }
450
- function J(e) {
454
+ function K(e) {
451
455
  return e === "" ? "" : `7${e}`;
452
456
  }
453
- function Y(e) {
457
+ function q(e) {
454
458
  let t = e ?? "", n = t.startsWith("+") ? t.slice(1) : t;
455
459
  return n.startsWith("7") ? n.slice(1) : n;
456
460
  }
457
461
  //#endregion
458
462
  //#region src/components/RussianMobileFilter.vue
459
- var he = 400, ge = 3, _e = {
463
+ var _e = 400, ve = 3, ye = {
460
464
  components: {
461
- ElementHeader: q,
462
- Eraser: F
465
+ ElementHeader: G,
466
+ Eraser: N
463
467
  },
464
468
  emits: ["update:modelValue", "changed"],
465
469
  props: {
@@ -481,10 +485,10 @@ var he = 400, ge = 3, _e = {
481
485
  }
482
486
  },
483
487
  data() {
484
- return { digits: Y(this.modelValue) };
488
+ return { digits: q(this.modelValue) };
485
489
  },
486
490
  created() {
487
- this.mask = null, this.debounceTimer = null, this.isWritingProgrammatically = !1, this.lastCommitted = Y(this.modelValue);
491
+ this.mask = null, this.debounceTimer = null, this.isWritingProgrammatically = !1, this.lastCommitted = q(this.modelValue);
488
492
  },
489
493
  mounted() {
490
494
  this.mask = ee(this.$refs.input, {
@@ -492,21 +496,21 @@ var he = 400, ge = 3, _e = {
492
496
  lazy: !0,
493
497
  prepare: (e, t) => t.unmaskedValue === "" && (e === "7" || e === "8") ? "" : e
494
498
  }), this.mask.on("accept", () => {
495
- this.isWritingProgrammatically || (this.digits = this.mask.unmaskedValue, this.$emit("update:modelValue", J(this.digits)), this.scheduleCommit());
499
+ this.isWritingProgrammatically || (this.digits = this.mask.unmaskedValue, this.$emit("update:modelValue", K(this.digits)), this.scheduleCommit());
496
500
  }), this.syncFromModelValue(this.modelValue);
497
501
  },
498
502
  beforeUnmount() {
499
503
  clearTimeout(this.debounceTimer), this.mask?.destroy();
500
504
  },
501
505
  watch: { modelValue(e) {
502
- e !== J(this.digits) && this.syncFromModelValue(e);
506
+ e !== K(this.digits) && this.syncFromModelValue(e);
503
507
  } },
504
508
  methods: {
505
509
  syncFromModelValue(e) {
506
- this.writeToMask(Y(e)), this.digits = this.mask.unmaskedValue, this.lastCommitted = this.digits;
510
+ this.writeToMask(q(e)), this.digits = this.mask.unmaskedValue, this.lastCommitted = this.digits;
507
511
  },
508
512
  applyUserDigits(e) {
509
- this.writeToMask(e), this.digits = this.mask.unmaskedValue, this.$emit("update:modelValue", J(this.digits));
513
+ this.writeToMask(e), this.digits = this.mask.unmaskedValue, this.$emit("update:modelValue", K(this.digits));
510
514
  },
511
515
  writeToMask(e) {
512
516
  if (this.isWritingProgrammatically = !0, e === "") this.mask.value = "";
@@ -529,7 +533,7 @@ var he = 400, ge = 3, _e = {
529
533
  this.setLazy(!0), this.digits === "" && this.writeToMask(""), this.commit();
530
534
  },
531
535
  onPaste(e) {
532
- this.applyUserDigits(me(e.clipboardData?.getData("text") ?? "")), this.scheduleCommit();
536
+ this.applyUserDigits(ge(e.clipboardData?.getData("text") ?? "")), this.scheduleCommit();
533
537
  },
534
538
  clear() {
535
539
  this.applyUserDigits(""), this.commit();
@@ -539,16 +543,16 @@ var he = 400, ge = 3, _e = {
539
543
  this.commit();
540
544
  return;
541
545
  }
542
- this.digits.length < ge || (this.debounceTimer = setTimeout(() => this.commit(), he));
546
+ this.digits.length < ve || (this.debounceTimer = setTimeout(() => this.commit(), _e));
543
547
  },
544
548
  commit() {
545
549
  clearTimeout(this.debounceTimer), this.digits !== this.lastCommitted && (this.lastCommitted = this.digits, this.$emit("changed"));
546
550
  }
547
551
  }
548
- }, ve = { class: "bb-dashboard-ui bb:flex bb:flex-none" }, ye = { class: "bb:flex bb:w-full bb:flex-col bb:border bb:border-white bb:bg-white" }, be = { class: "bb:relative bb:flex bb:h-full bb:w-full" }, xe = { class: "bb:flex bb:w-full bb:h-full bb:items-center bb:justify-center" };
549
- function Se(e, t, n, r, o, c) {
552
+ }, be = { 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" }, Se = { class: "bb:relative bb:flex bb:h-full bb:w-full" }, Ce = { class: "bb:flex bb:w-full bb:h-full bb:items-center bb:justify-center" };
553
+ function we(e, t, n, r, o, c) {
550
554
  let l = p("element-header"), d = p("eraser");
551
- return u(), i("div", ve, [a("div", ye, [s(l, {
555
+ return u(), i("div", be, [a("div", xe, [s(l, {
552
556
  text: n.header,
553
557
  "is-required": n.isRequired,
554
558
  "is-loading": n.isLoading
@@ -556,7 +560,7 @@ function Se(e, t, n, r, o, c) {
556
560
  "text",
557
561
  "is-required",
558
562
  "is-loading"
559
- ]), a("div", be, [a("label", xe, [a("input", {
563
+ ]), a("div", Se, [a("label", Ce, [a("input", {
560
564
  ref: "input",
561
565
  type: "tel",
562
566
  inputmode: "tel",
@@ -572,10 +576,10 @@ function Se(e, t, n, r, o, c) {
572
576
  class: "bb:pr-2 bb:h-full"
573
577
  }, null, 8, ["onClick"]), [[_, o.digits.length > 0]])])])])]);
574
578
  }
575
- var Ce = /*#__PURE__*/ k(_e, [["render", Se]]), we = {
579
+ var Te = /*#__PURE__*/ k(ye, [["render", we]]), Ee = {
576
580
  components: {
577
- ElementHeader: q,
578
- Eraser: F
581
+ ElementHeader: G,
582
+ Eraser: N
579
583
  },
580
584
  emits: ["update:modelValue", "changed"],
581
585
  props: {
@@ -613,10 +617,10 @@ var Ce = /*#__PURE__*/ k(_e, [["render", Se]]), we = {
613
617
  this.$emit("update:modelValue", this.search), this.$emit("changed");
614
618
  }
615
619
  }
616
- }, 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" };
617
- function ke(e, t, n, r, o, c) {
620
+ }, De = { class: "bb-dashboard-ui bb:flex bb:flex-none" }, Oe = { class: "bb:flex bb:w-full bb:flex-col bb:border bb:border-white bb:bg-white" }, ke = { class: "bb:relative bb:flex bb:h-full bb:w-full" }, Ae = { class: "bb:flex bb:w-full bb:h-full bb:items-center bb:justify-center" };
621
+ function je(e, t, n, r, o, c) {
618
622
  let l = p("element-header"), d = p("eraser");
619
- return u(), i("div", Te, [a("div", Ee, [s(l, {
623
+ return u(), i("div", De, [a("div", Oe, [s(l, {
620
624
  text: n.header,
621
625
  "is-required": n.isRequired,
622
626
  "is-loading": n.isLoading
@@ -624,7 +628,7 @@ function ke(e, t, n, r, o, c) {
624
628
  "text",
625
629
  "is-required",
626
630
  "is-loading"
627
- ]), a("div", De, [a("label", Oe, [y(a("input", {
631
+ ]), a("div", ke, [a("label", Ae, [y(a("input", {
628
632
  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",
629
633
  "onUpdate:modelValue": t[0] ||= (e) => o.search = e,
630
634
  onInput: t[1] ||= (...e) => c.startSearch && c.startSearch(...e)
@@ -638,12 +642,12 @@ function ke(e, t, n, r, o, c) {
638
642
  class: "bb:pr-2 bb:h-full"
639
643
  }, null, 8, ["onClick"]), [[_, c.inputNeedsEraser]])])])])]);
640
644
  }
641
- var Ae = /*#__PURE__*/ k(we, [["render", ke]]), je = {
645
+ var Me = /*#__PURE__*/ k(Ee, [["render", je]]), Ne = {
642
646
  components: {
643
- ElementHeader: q,
644
- PickDay: K
647
+ ElementHeader: G,
648
+ PickDay: W
645
649
  },
646
- mixins: [R],
650
+ mixins: [I],
647
651
  emits: [
648
652
  "update:dateFrom",
649
653
  "update:dateTo",
@@ -691,10 +695,10 @@ var Ae = /*#__PURE__*/ k(we, [["render", ke]]), je = {
691
695
  this.$emit("update:dateTo", e), this.dateTo !== e && this.$emit("changed");
692
696
  }
693
697
  }
694
- }, Me = { class: "bb-dashboard-ui bb:flex" }, Ne = { class: "bb:flex bb:border bb:border-white" }, Pe = { class: "bb:flex bb:flex-col bb:min-w-72 bb:w-72 bb:bg-white bb:h-full" }, Fe = { class: "bb:flex bb:h-full bb:divide-x bb:divide-gray-200" };
695
- function Ie(e, t, n, r, o, c) {
698
+ }, Pe = { class: "bb-dashboard-ui bb:flex" }, Fe = { class: "bb:flex bb:border bb:border-white" }, Ie = { class: "bb:flex bb:flex-col bb:min-w-72 bb:w-72 bb:bg-white bb:h-full" }, Le = { class: "bb:flex bb:h-full bb:divide-x bb:divide-gray-200" };
699
+ function Re(e, t, n, r, o, c) {
696
700
  let l = p("element-header"), d = p("pick-day");
697
- return u(), i("div", Me, [a("div", Ne, [a("div", Pe, [s(l, {
701
+ return u(), i("div", Pe, [a("div", Fe, [a("div", Ie, [s(l, {
698
702
  text: n.header,
699
703
  "is-required": n.isRequired,
700
704
  "is-loading": n.isLoading
@@ -702,7 +706,7 @@ function Ie(e, t, n, r, o, c) {
702
706
  "text",
703
707
  "is-required",
704
708
  "is-loading"
705
- ]), a("div", Fe, [s(d, {
709
+ ]), a("div", Le, [s(d, {
706
710
  modelValue: o.userDateFrom,
707
711
  "onUpdate:modelValue": t[0] ||= (e) => o.userDateFrom = e,
708
712
  class: "bb:flex-1 bb:min-w-36 bb:pl-3",
@@ -724,10 +728,10 @@ function Ie(e, t, n, r, o, c) {
724
728
  "lang"
725
729
  ])])])])]);
726
730
  }
727
- var Le = /*#__PURE__*/ k(je, [["render", Ie]]), Re = {
731
+ var ze = /*#__PURE__*/ k(Ne, [["render", Re]]), Be = {
728
732
  components: {
729
733
  Popup: A,
730
- Eraser: F
734
+ Eraser: N
731
735
  },
732
736
  emits: ["update:isOpen", "erased"],
733
737
  props: {
@@ -758,17 +762,17 @@ var Le = /*#__PURE__*/ k(je, [["render", Ie]]), Re = {
758
762
  computed: { needsEraser() {
759
763
  return !this.isOpen && this.hasValue;
760
764
  } }
761
- }, ze = { class: "bb:flex bb:flex-col bb:grow bb:bg-white" }, Be = { class: "bb:relative bb:flex bb:w-full bb:h-full" }, Ve = ["textContent"];
762
- function He(e, t, o, c, d, h) {
765
+ }, Ve = { class: "bb:flex bb:flex-col bb:grow bb:bg-white" }, He = { class: "bb:relative bb:flex bb:w-full bb:h-full" }, Ue = ["textContent"];
766
+ function We(e, t, o, c, d, h) {
763
767
  let g = p("eraser"), _ = p("popup");
764
- return u(), i("div", ze, [a("div", Be, [a("button", {
768
+ return u(), i("div", Ve, [a("div", He, [a("button", {
765
769
  type: "button",
766
770
  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 }]),
767
771
  onClick: t[0] ||= x((t) => e.$emit("update:isOpen", !o.isOpen), ["prevent"])
768
772
  }, [a("span", {
769
773
  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",
770
774
  textContent: m(o.title)
771
- }, null, 8, Ve)], 2), h.needsEraser ? (u(), n(g, {
775
+ }, null, 8, Ue)], 2), h.needsEraser ? (u(), n(g, {
772
776
  key: 0,
773
777
  onClick: t[1] ||= (t) => e.$emit("erased"),
774
778
  class: "bb:pr-2 bb:h-full"
@@ -780,7 +784,7 @@ function He(e, t, o, c, d, h) {
780
784
  _: 3
781
785
  }, 8, ["modelValue"])]);
782
786
  }
783
- var Ue = /*#__PURE__*/ k(Re, [["render", He]]), We = {
787
+ var Ge = /*#__PURE__*/ k(Be, [["render", We]]), Ke = {
784
788
  props: {
785
789
  isChecked: {
786
790
  type: Boolean,
@@ -792,31 +796,31 @@ var Ue = /*#__PURE__*/ k(Re, [["render", He]]), We = {
792
796
  methods: { toggle() {
793
797
  this.$emit("clicked");
794
798
  } }
795
- }, Ge = { class: "bb:flex bb:w-9 bb:h-9 bb:items-center bb:justify-center" }, Ke = {
799
+ }, qe = { class: "bb:flex bb:w-9 bb:h-9 bb:items-center bb:justify-center" }, Je = {
796
800
  class: "bb:w-5 bb:h-5 bb:fill-current bb:text-green-300",
797
801
  viewBox: "0 0 20 20"
798
- }, qe = ["textContent"];
799
- function Je(e, t, n, r, o, s) {
802
+ }, Ye = ["textContent"];
803
+ function Xe(e, t, n, r, o, s) {
800
804
  return u(), i("button", {
801
805
  type: "button",
802
806
  onClick: t[0] ||= x((...e) => s.toggle && s.toggle(...e), ["prevent"]),
803
807
  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"
804
- }, [a("span", Ge, [y((u(), i("svg", Ke, [...t[1] ||= [a("path", {
808
+ }, [a("span", qe, [y((u(), i("svg", Je, [...t[1] ||= [a("path", {
805
809
  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",
806
810
  "clip-rule": "evenodd",
807
811
  "fill-rule": "evenodd"
808
812
  }, null, -1)]], 512)), [[_, n.isChecked]])]), a("span", {
809
813
  class: "bb:flex bb:h-9 bb:justify-center bb:items-center bb:pr-6 bb:whitespace-nowrap bb:select-none",
810
814
  textContent: m(n.name)
811
- }, null, 8, qe)]);
815
+ }, null, 8, Ye)]);
812
816
  }
813
817
  //#endregion
814
818
  //#region src/components/SelectSingle.vue
815
- var Ye = {
819
+ var Ze = {
816
820
  components: {
817
- ElementHeader: q,
818
- DropdownButton: Ue,
819
- ListElement: /* @__PURE__ */ k(We, [["render", Je]])
821
+ ElementHeader: G,
822
+ DropdownButton: Ge,
823
+ ListElement: /* @__PURE__ */ k(Ke, [["render", Xe]])
820
824
  },
821
825
  emits: ["update:modelValue", "changed"],
822
826
  props: {
@@ -869,10 +873,10 @@ var Ye = {
869
873
  this.$emit("update:modelValue", null), this.$emit("changed");
870
874
  }
871
875
  }
872
- }, Xe = { class: "bb-dashboard-ui bb:flex bb:flex-none" }, Ze = { class: "bb:flex bb:w-full bb:flex-col bb:border bb:border-white bb:bg-white" }, Qe = { 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" };
873
- function $e(t, o, c, l, f, m) {
876
+ }, Qe = { class: "bb-dashboard-ui bb:flex bb:flex-none" }, $e = { class: "bb:flex bb:w-full bb:flex-col bb:border bb:border-white bb:bg-white" }, et = { 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" };
877
+ function tt(t, o, c, l, f, m) {
874
878
  let h = p("element-header"), g = p("list-element"), _ = p("dropdown-button");
875
- return u(), i("div", Xe, [a("div", Ze, [s(h, {
879
+ return u(), i("div", Qe, [a("div", $e, [s(h, {
876
880
  text: c.header,
877
881
  "is-required": c.isRequired,
878
882
  "is-loading": c.isLoading
@@ -888,7 +892,7 @@ function $e(t, o, c, l, f, m) {
888
892
  "has-value": m.hasValue,
889
893
  onErased: m.clear
890
894
  }, {
891
- default: v(() => [a("div", Qe, [(u(!0), i(e, null, d(m.itemList, (e) => (u(), n(g, {
895
+ default: v(() => [a("div", et, [(u(!0), i(e, null, d(m.itemList, (e) => (u(), n(g, {
892
896
  name: e.name,
893
897
  key: e.id,
894
898
  "is-checked": e.id === c.modelValue,
@@ -906,7 +910,7 @@ function $e(t, o, c, l, f, m) {
906
910
  "onErased"
907
911
  ])) : r("", !0)])]);
908
912
  }
909
- var et = /*#__PURE__*/ k(Ye, [["render", $e]]), tt = {
913
+ var nt = /*#__PURE__*/ k(Ze, [["render", tt]]), rt = {
910
914
  props: {
911
915
  text: {
912
916
  type: String,
@@ -945,8 +949,8 @@ var et = /*#__PURE__*/ k(Ye, [["render", $e]]), tt = {
945
949
  return this.color === "yellow";
946
950
  }
947
951
  }
948
- }, nt = ["textContent"];
949
- function rt(e, t, n, r, a, o) {
952
+ }, it = ["textContent"];
953
+ function at(e, t, n, r, a, o) {
950
954
  return u(), i("span", {
951
955
  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", {
952
956
  "bb:bg-green-50 bb:text-gray-700": o.isGreen,
@@ -957,9 +961,9 @@ function rt(e, t, n, r, a, o) {
957
961
  "bb:bg-yellow-100 bb:text-yellow-800": o.isYellow
958
962
  }]),
959
963
  textContent: m(n.text)
960
- }, null, 10, nt);
964
+ }, null, 10, it);
961
965
  }
962
- var it = /*#__PURE__*/ k(tt, [["render", rt]]), at = {
966
+ var ot = /*#__PURE__*/ k(rt, [["render", at]]), st = {
963
967
  props: {
964
968
  messages: {
965
969
  type: [Object, Array],
@@ -979,12 +983,12 @@ var it = /*#__PURE__*/ k(tt, [["render", rt]]), at = {
979
983
  return this.type === "dangerous";
980
984
  }
981
985
  }
982
- }, ot = { class: "bb:flex" }, st = { class: "bb:shrink-0" }, ct = { class: "bb:ml-3" }, lt = ["textContent"];
983
- function ut(t, n, o, s, c, f) {
986
+ }, ct = { class: "bb:flex" }, lt = { class: "bb:shrink-0" }, ut = { class: "bb:ml-3" }, dt = ["textContent"];
987
+ function ft(t, n, o, s, c, f) {
984
988
  return f.hasErrors ? (u(), i("div", {
985
989
  key: 0,
986
990
  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"])
987
- }, [a("div", ot, [a("div", st, [(u(), i("svg", {
991
+ }, [a("div", ct, [a("div", lt, [(u(), i("svg", {
988
992
  class: l(["bb:h-5 bb:w-5", f.isDangerous ? "bb:text-red-400" : "bb:text-yellow-400"]),
989
993
  viewBox: "0 0 20 20",
990
994
  fill: "currentColor"
@@ -992,14 +996,14 @@ function ut(t, n, o, s, c, f) {
992
996
  "fill-rule": "evenodd",
993
997
  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",
994
998
  "clip-rule": "evenodd"
995
- }, null, -1)]], 2))]), a("div", ct, [(u(!0), i(e, null, d(o.messages, (e, t) => (u(), i("p", {
999
+ }, null, -1)]], 2))]), a("div", ut, [(u(!0), i(e, null, d(o.messages, (e, t) => (u(), i("p", {
996
1000
  class: l(["bb:text-sm bb:leading-5", f.isDangerous ? "bb:text-red-700" : "bb:text-yellow-700"]),
997
1001
  key: t,
998
1002
  textContent: m(e)
999
- }, null, 10, lt))), 128))])])], 2)) : r("", !0);
1003
+ }, null, 10, dt))), 128))])])], 2)) : r("", !0);
1000
1004
  }
1001
- var dt = /*#__PURE__*/ k(at, [["render", ut]]), ft = { emits: ["clicked"] };
1002
- function pt(e, t, n, r, o, s) {
1005
+ var pt = /*#__PURE__*/ k(st, [["render", ft]]), mt = { emits: ["clicked"] };
1006
+ function ht(e, t, n, r, o, s) {
1003
1007
  return u(), i("button", {
1004
1008
  type: "button",
1005
1009
  tabindex: "-1",
@@ -1016,15 +1020,15 @@ function pt(e, t, n, r, o, s) {
1016
1020
  d: "M6 18L18 6M6 6l12 12"
1017
1021
  })], -1)]]);
1018
1022
  }
1019
- var mt = /*#__PURE__*/ k(ft, [["render", pt]]), ht = {}, gt = {
1023
+ var J = /*#__PURE__*/ k(mt, [["render", ht]]), gt = {}, _t = {
1020
1024
  class: "bb:w-4 bb:h-4",
1021
1025
  fill: "none",
1022
1026
  stroke: "currentColor",
1023
1027
  viewBox: "0 0 24 24",
1024
1028
  xmlns: "http://www.w3.org/2000/svg"
1025
1029
  };
1026
- function _t(e, t, n, r, o, s) {
1027
- return u(), i("svg", gt, [...t[0] ||= [a("path", {
1030
+ function vt(e, t, n, r, o, s) {
1031
+ return u(), i("svg", _t, [...t[0] ||= [a("path", {
1028
1032
  "stroke-linecap": "round",
1029
1033
  "stroke-linejoin": "round",
1030
1034
  "stroke-width": "2",
@@ -1033,9 +1037,9 @@ function _t(e, t, n, r, o, s) {
1033
1037
  }
1034
1038
  //#endregion
1035
1039
  //#region src/components/DownloadLink.vue
1036
- var vt = {
1037
- components: { "download-icon": /* @__PURE__ */ k(ht, [["render", _t]]) },
1038
- mixins: [R],
1040
+ var yt = {
1041
+ components: { "download-icon": /* @__PURE__ */ k(gt, [["render", vt]]) },
1042
+ mixins: [I],
1039
1043
  props: {
1040
1044
  url: {
1041
1045
  type: String,
@@ -1049,16 +1053,16 @@ var vt = {
1049
1053
  computed: { label() {
1050
1054
  return this.title ?? this.texts.download;
1051
1055
  } }
1052
- }, yt = ["href", "title"], bt = { class: "bb:ml-1" };
1053
- function xt(e, t, n, r, o, c) {
1056
+ }, bt = ["href", "title"], xt = { class: "bb:ml-1" };
1057
+ function St(e, t, n, r, o, c) {
1054
1058
  let l = p("download-icon");
1055
1059
  return u(), i("a", {
1056
1060
  href: n.url,
1057
1061
  title: c.label,
1058
1062
  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"
1059
- }, [s(l), a("span", bt, m(c.label), 1)], 8, yt);
1063
+ }, [s(l), a("span", xt, m(c.label), 1)], 8, bt);
1060
1064
  }
1061
- var St = /*#__PURE__*/ k(vt, [["render", xt]]), Ct = { props: {
1065
+ var Ct = /*#__PURE__*/ k(yt, [["render", St]]), wt = { props: {
1062
1066
  isOpen: {
1063
1067
  type: Boolean,
1064
1068
  default: !1
@@ -1067,9 +1071,9 @@ var St = /*#__PURE__*/ k(vt, [["render", xt]]), Ct = { props: {
1067
1071
  type: String,
1068
1072
  required: !0
1069
1073
  }
1070
- } }, wt = { 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" }, Tt = { class: "bb:fixed bb:inset-0 bb:transition-opacity" }, Et = ["aria-labelledby"];
1071
- function Dt(e, n, r, o, c, d) {
1072
- 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", wt, [
1074
+ } }, Tt = { 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" }, Et = { class: "bb:fixed bb:inset-0 bb:transition-opacity" }, Dt = ["aria-labelledby"];
1075
+ function Ot(e, n, r, o, c, d) {
1076
+ 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", Tt, [
1073
1077
  s(t, {
1074
1078
  "enter-active-class": "bb:ease-out bb:duration-300",
1075
1079
  "enter-from-class": "bb:opacity-0",
@@ -1078,7 +1082,7 @@ function Dt(e, n, r, o, c, d) {
1078
1082
  "leave-from-class": "bb:opacity-100",
1079
1083
  "leave-to-class": "bb:opacity-0"
1080
1084
  }, {
1081
- default: v(() => [y(a("div", Tt, [...n[0] ||= [a("div", { class: "bb:absolute bb:inset-0 bb:bg-gray-500 bb:opacity-75" }, null, -1)]], 512), [[_, r.isOpen]])]),
1085
+ default: v(() => [y(a("div", Et, [...n[0] ||= [a("div", { class: "bb:absolute bb:inset-0 bb:bg-gray-500 bb:opacity-75" }, null, -1)]], 512), [[_, r.isOpen]])]),
1082
1086
  _: 1
1083
1087
  }),
1084
1088
  n[1] ||= a("span", { class: "bb:hidden bb:sm:inline-block bb:sm:align-middle bb:sm:h-screen" }, null, -1),
@@ -1095,12 +1099,12 @@ function Dt(e, n, r, o, c, d) {
1095
1099
  role: "dialog",
1096
1100
  "aria-modal": "true",
1097
1101
  "aria-labelledby": r.headingId
1098
- }, [f(e.$slots, "default")], 8, Et), [[_, r.isOpen]])]),
1102
+ }, [f(e.$slots, "default")], 8, Dt), [[_, r.isOpen]])]),
1099
1103
  _: 3
1100
1104
  })
1101
1105
  ])], 2);
1102
1106
  }
1103
- var X = /*#__PURE__*/ k(Ct, [["render", Dt]]), Ot = {}, kt = {
1107
+ var kt = /*#__PURE__*/ k(wt, [["render", Ot]]), At = {}, jt = {
1104
1108
  class: "bb:h-7 bb:w-7 bb:text-red-600",
1105
1109
  xmlns: "http://www.w3.org/2000/svg",
1106
1110
  fill: "none",
@@ -1108,37 +1112,35 @@ var X = /*#__PURE__*/ k(Ct, [["render", Dt]]), Ot = {}, kt = {
1108
1112
  stroke: "currentColor",
1109
1113
  "aria-hidden": "true"
1110
1114
  };
1111
- function At(e, t, n, r, o, s) {
1112
- return u(), i("svg", kt, [...t[0] ||= [a("path", {
1115
+ function Mt(e, t, n, r, o, s) {
1116
+ return u(), i("svg", jt, [...t[0] ||= [a("path", {
1113
1117
  "stroke-linecap": "round",
1114
1118
  "stroke-linejoin": "round",
1115
1119
  "stroke-width": "2",
1116
1120
  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"
1117
1121
  }, null, -1)]]);
1118
1122
  }
1119
- var jt = /*#__PURE__*/ k(Ot, [["render", At]]), Mt = {}, Nt = {
1123
+ var Y = /*#__PURE__*/ k(At, [["render", Mt]]), Nt = {}, Pt = {
1120
1124
  class: "bb:h-7 bb:w-7 bb:text-yellow-400",
1121
1125
  xmlns: "http://www.w3.org/2000/svg",
1122
1126
  viewBox: "0 0 20 20",
1123
1127
  fill: "currentColor",
1124
1128
  "aria-hidden": "true"
1125
1129
  };
1126
- function Pt(e, t, n, r, o, s) {
1127
- return u(), i("svg", Nt, [...t[0] ||= [a("path", {
1130
+ function Ft(e, t, n, r, o, s) {
1131
+ return u(), i("svg", Pt, [...t[0] ||= [a("path", {
1128
1132
  "fill-rule": "evenodd",
1129
1133
  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",
1130
1134
  "clip-rule": "evenodd"
1131
1135
  }, null, -1)]]);
1132
1136
  }
1133
- //#endregion
1134
- //#region src/components/ConfirmationModal.vue
1135
- var Ft = {
1137
+ var X = /*#__PURE__*/ k(Nt, [["render", Ft]]), It = {
1136
1138
  components: {
1137
- Modal: X,
1138
- Dangerous: jt,
1139
- Warning: /* @__PURE__ */ k(Mt, [["render", Pt]])
1139
+ Modal: kt,
1140
+ Dangerous: Y,
1141
+ Warning: X
1140
1142
  },
1141
- mixins: [R],
1143
+ mixins: [I],
1142
1144
  emits: ["actionConfirmed", "actionCanceled"],
1143
1145
  props: {
1144
1146
  isOpen: {
@@ -1178,20 +1180,20 @@ var Ft = {
1178
1180
  return this.type === "warning";
1179
1181
  }
1180
1182
  }
1181
- }, It = { 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" }, Lt = { class: "bb:sm:flex bb:sm:items-start" }, Rt = { class: "bb:mt-3 bb:text-center bb:sm:mt-0 bb:sm:ml-4 bb:sm:text-left" }, zt = ["id"], Bt = { class: "bb:mt-2" }, Vt = { class: "bb:text-sm bb:text-gray-500" }, Ht = { 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" };
1182
- function Ut(e, t, i, o, s, c) {
1183
+ }, Lt = { 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" }, Rt = { class: "bb:sm:flex bb:sm:items-start" }, zt = { class: "bb:mt-3 bb:text-center bb:sm:mt-0 bb:sm:ml-4 bb:sm:text-left" }, Bt = ["id"], Vt = { class: "bb:mt-2" }, Ht = { class: "bb:text-sm bb:text-gray-500" }, Ut = { 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" };
1184
+ function Wt(e, t, i, o, s, c) {
1183
1185
  let d = p("warning"), f = p("dangerous"), h = p("modal");
1184
1186
  return u(), n(h, {
1185
1187
  "is-open": i.isOpen,
1186
1188
  "heading-id": o.headingId
1187
1189
  }, {
1188
- default: v(() => [a("div", It, [a("div", Lt, [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", {
1190
+ default: v(() => [a("div", Lt, [a("div", Rt, [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", {
1189
1191
  "bb:bg-red-100": c.isDangerous,
1190
1192
  "bb:bg-yellow-100": c.isWarning
1191
- }]) }, [c.isWarning ? (u(), n(d, { key: 0 })) : r("", !0), c.isDangerous ? (u(), n(f, { key: 1 })) : r("", !0)], 2), a("div", Rt, [a("h3", {
1193
+ }]) }, [c.isWarning ? (u(), n(d, { key: 0 })) : r("", !0), c.isDangerous ? (u(), n(f, { key: 1 })) : r("", !0)], 2), a("div", zt, [a("h3", {
1192
1194
  class: "bb:text-lg bb:leading-6 bb:font-medium bb:text-gray-900",
1193
1195
  id: o.headingId
1194
- }, m(i.confirmationHeading), 9, zt), a("div", Bt, [a("p", Vt, m(i.confirmationText), 1)])])])]), a("div", Ht, [a("button", {
1196
+ }, m(i.confirmationHeading), 9, Bt), a("div", Vt, [a("p", Ht, m(i.confirmationText), 1)])])])]), a("div", Ut, [a("button", {
1195
1197
  type: "button",
1196
1198
  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", {
1197
1199
  "bb:bg-red-600 bb:hover:bg-red-700 bb:focus:ring-red-500": c.isDangerous,
@@ -1206,9 +1208,9 @@ function Ut(e, t, i, o, s, c) {
1206
1208
  _: 1
1207
1209
  }, 8, ["is-open", "heading-id"]);
1208
1210
  }
1209
- var Wt = /*#__PURE__*/ k(Ft, [["render", Ut]]), Gt = {
1211
+ var Gt = /*#__PURE__*/ k(It, [["render", Wt]]), Kt = {
1210
1212
  components: { Popup: A },
1211
- mixins: [R],
1213
+ mixins: [I],
1212
1214
  emits: ["update:modelValue"],
1213
1215
  props: { modelValue: {
1214
1216
  type: Boolean,
@@ -1226,21 +1228,21 @@ var Wt = /*#__PURE__*/ k(Ft, [["render", Ut]]), Gt = {
1226
1228
  methods: { setOpen(e) {
1227
1229
  e !== this.popupIsOpen && (this.popupIsOpen = e, this.$emit("update:modelValue", e));
1228
1230
  } }
1229
- }, Kt = { class: "bb-dashboard-ui bb:relative bb:inline-flex bb:shadow-xs bb:rounded-md" }, qt = {
1231
+ }, qt = { class: "bb-dashboard-ui bb:relative bb:inline-flex bb:shadow-xs bb:rounded-md" }, Jt = {
1230
1232
  key: 0,
1231
1233
  class: "bb:-ml-px bb:relative bb:block"
1232
- }, Jt = ["id"], Yt = { class: "bb:sr-only" }, Xt = ["aria-labelledby"];
1233
- function Zt(e, t, n, o, c, d) {
1234
+ }, Yt = ["id"], Xt = { class: "bb:sr-only" }, Zt = ["aria-labelledby"];
1235
+ function Qt(e, t, n, o, c, d) {
1234
1236
  let h = p("popup");
1235
- return u(), i("span", Kt, [a("button", {
1237
+ return u(), i("span", qt, [a("button", {
1236
1238
  type: "button",
1237
1239
  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 }])
1238
- }, [f(e.$slots, "button")], 2), e.$slots.actions ? (u(), i("span", qt, [a("button", {
1240
+ }, [f(e.$slots, "button")], 2), e.$slots.actions ? (u(), i("span", Jt, [a("button", {
1239
1241
  onClick: t[0] ||= x((e) => d.setOpen(!c.popupIsOpen), ["prevent"]),
1240
1242
  id: o.menuButtonId,
1241
1243
  type: "button",
1242
1244
  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"
1243
- }, [a("span", Yt, m(e.texts.openMenu), 1), t[1] ||= a("svg", {
1245
+ }, [a("span", Xt, m(e.texts.openMenu), 1), t[1] ||= a("svg", {
1244
1246
  class: "bb:h-5 bb:w-5",
1245
1247
  xmlns: "http://www.w3.org/2000/svg",
1246
1248
  viewBox: "0 0 20 20",
@@ -1250,7 +1252,7 @@ function Zt(e, t, n, o, c, d) {
1250
1252
  "fill-rule": "evenodd",
1251
1253
  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",
1252
1254
  "clip-rule": "evenodd"
1253
- })], -1)], 8, Jt), s(h, {
1255
+ })], -1)], 8, Yt), s(h, {
1254
1256
  class: "bb:origin-top-right bb:right-0",
1255
1257
  "model-value": c.popupIsOpen,
1256
1258
  align: "right",
@@ -1261,40 +1263,40 @@ function Zt(e, t, n, o, c, d) {
1261
1263
  role: "menu",
1262
1264
  "aria-orientation": "vertical",
1263
1265
  "aria-labelledby": o.menuButtonId
1264
- }, [f(e.$slots, "actions")], 8, Xt)]),
1266
+ }, [f(e.$slots, "actions")], 8, Zt)]),
1265
1267
  _: 3
1266
1268
  }, 8, ["model-value", "onUpdate:modelValue"])])) : r("", !0)]);
1267
1269
  }
1268
- var Qt = /*#__PURE__*/ k(Gt, [["render", Zt]]), $t = {}, en = {
1270
+ var $t = /*#__PURE__*/ k(Kt, [["render", Qt]]), en = {}, tn = {
1269
1271
  xmlns: "http://www.w3.org/2000/svg",
1270
1272
  viewBox: "0 0 20 20",
1271
1273
  fill: "currentColor",
1272
1274
  "aria-hidden": "true"
1273
1275
  };
1274
- function tn(e, t, n, r, o, s) {
1275
- return u(), i("svg", en, [...t[0] ||= [a("path", {
1276
+ function nn(e, t, n, r, o, s) {
1277
+ return u(), i("svg", tn, [...t[0] ||= [a("path", {
1276
1278
  "fill-rule": "evenodd",
1277
1279
  "clip-rule": "evenodd",
1278
1280
  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"
1279
1281
  }, null, -1)]]);
1280
1282
  }
1281
- var nn = /*#__PURE__*/ k($t, [["render", tn]]), rn = {}, an = {
1283
+ var rn = /*#__PURE__*/ k(en, [["render", nn]]), an = {}, on = {
1282
1284
  xmlns: "http://www.w3.org/2000/svg",
1283
1285
  viewBox: "0 0 20 20",
1284
1286
  fill: "currentColor",
1285
1287
  "aria-hidden": "true"
1286
1288
  };
1287
- function on(e, t, n, r, o, s) {
1288
- return u(), i("svg", an, [...t[0] ||= [a("path", {
1289
+ function sn(e, t, n, r, o, s) {
1290
+ return u(), i("svg", on, [...t[0] ||= [a("path", {
1289
1291
  "fill-rule": "evenodd",
1290
1292
  "clip-rule": "evenodd",
1291
1293
  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"
1292
1294
  }, null, -1)]]);
1293
1295
  }
1294
- var sn = /*#__PURE__*/ k(rn, [["render", on]]);
1296
+ var cn = /*#__PURE__*/ k(an, [["render", sn]]);
1295
1297
  //#endregion
1296
1298
  //#region src/navigation.js
1297
- function cn(e) {
1299
+ function ln(e) {
1298
1300
  let t = e.currentTarget?.target ?? "";
1299
1301
  return !(e.defaultPrevented || e.target?.isContentEditable === !0 || e.altKey || e.ctrlKey || e.metaKey || e.shiftKey || t !== "" && t !== "_self" || e.button !== 0);
1300
1302
  }
@@ -1302,7 +1304,7 @@ var Z = {
1302
1304
  inject: D,
1303
1305
  methods: { followLink(e, t) {
1304
1306
  let n = this.uiSettings.navigate;
1305
- n !== null && cn(e) && (e.preventDefault(), n(t));
1307
+ n !== null && ln(e) && (e.preventDefault(), n(t));
1306
1308
  } }
1307
1309
  };
1308
1310
  //#endregion
@@ -1310,12 +1312,12 @@ var Z = {
1310
1312
  function Q(e) {
1311
1313
  return typeof e == "string" && e !== "" ? e : null;
1312
1314
  }
1313
- var $ = {
1315
+ var un = {
1314
1316
  components: {
1315
- ArrowNarrowLeft: nn,
1316
- ArrowNarrowRight: sn
1317
+ ArrowNarrowLeft: rn,
1318
+ ArrowNarrowRight: cn
1317
1319
  },
1318
- mixins: [R, Z],
1320
+ mixins: [I, Z],
1319
1321
  props: {
1320
1322
  links: {
1321
1323
  type: Object,
@@ -1349,38 +1351,38 @@ var $ = {
1349
1351
  return Q(this.links?.next);
1350
1352
  }
1351
1353
  }
1352
- }, ln = {
1354
+ }, dn = {
1353
1355
  key: 0,
1354
1356
  class: "bb-dashboard-ui bb:px-4 bb:flex bb:items-center bb:justify-between bb:sm:px-0"
1355
- }, un = { class: "bb:-mt-px bb:w-0 bb:flex-1 bb:flex" }, dn = ["href"], fn = {
1357
+ }, fn = { class: "bb:-mt-px bb:w-0 bb:flex-1 bb:flex" }, pn = ["href"], mn = {
1356
1358
  key: 0,
1357
1359
  class: "bb:hidden bb:md:-mt-px bb:md:flex bb:text-gray-400 bb:text-sm bb:leading-5"
1358
- }, pn = { class: "bb:font-medium bb:text-gray-900 bb:mx-1" }, mn = { class: "bb:font-medium bb:text-gray-900 bb:mx-1" }, hn = { class: "bb:-mt-px bb:w-0 bb:flex-1 bb:flex bb:justify-end" }, gn = ["href"];
1359
- function _n(e, t, n, c, l, d) {
1360
+ }, hn = { class: "bb:font-medium bb:text-gray-900 bb:mx-1" }, gn = { class: "bb:font-medium bb:text-gray-900 bb:mx-1" }, _n = { class: "bb:-mt-px bb:w-0 bb:flex-1 bb:flex bb:justify-end" }, vn = ["href"];
1361
+ function yn(e, t, n, c, l, d) {
1360
1362
  let f = p("arrow-narrow-left"), h = p("arrow-narrow-right");
1361
- return d.hasResults ? (u(), i("nav", ln, [
1362
- a("div", un, [d.previousPageUrl === null ? r("", !0) : (u(), i("a", {
1363
+ return d.hasResults ? (u(), i("nav", dn, [
1364
+ a("div", fn, [d.previousPageUrl === null ? r("", !0) : (u(), i("a", {
1363
1365
  key: 0,
1364
1366
  href: d.previousPageUrl,
1365
1367
  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",
1366
1368
  onClick: t[0] ||= (t) => e.followLink(t, d.previousPageUrl)
1367
- }, [s(f, { class: "bb:mr-3 bb:h-5 bb:w-5 bb:text-gray-400" }), o(" " + m(e.texts.previousPage), 1)], 8, dn))]),
1368
- d.hasRange ? (u(), i("div", fn, [
1369
+ }, [s(f, { class: "bb:mr-3 bb:h-5 bb:w-5 bb:text-gray-400" }), o(" " + m(e.texts.previousPage), 1)], 8, pn))]),
1370
+ d.hasRange ? (u(), i("div", mn, [
1369
1371
  o(m(e.texts.resultsBefore) + " ", 1),
1370
- a("span", pn, m(d.from) + " - " + m(d.to), 1),
1372
+ a("span", hn, m(d.from) + " - " + m(d.to), 1),
1371
1373
  o(" " + m(e.texts.resultsOf) + " ", 1),
1372
- a("span", mn, m(d.total), 1),
1374
+ a("span", gn, m(d.total), 1),
1373
1375
  o(" " + m(e.texts.resultsAfter), 1)
1374
1376
  ])) : r("", !0),
1375
- a("div", hn, [d.nextPageUrl === null ? r("", !0) : (u(), i("a", {
1377
+ a("div", _n, [d.nextPageUrl === null ? r("", !0) : (u(), i("a", {
1376
1378
  key: 0,
1377
1379
  href: d.nextPageUrl,
1378
1380
  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",
1379
1381
  onClick: t[1] ||= (t) => e.followLink(t, d.nextPageUrl)
1380
- }, [o(m(e.texts.nextPage) + " ", 1), s(h, { class: "bb:ml-3 bb:h-5 bb:w-5 bb:text-gray-400" })], 8, gn))])
1382
+ }, [o(m(e.texts.nextPage) + " ", 1), s(h, { class: "bb:ml-3 bb:h-5 bb:w-5 bb:text-gray-400" })], 8, vn))])
1381
1383
  ])) : r("", !0);
1382
1384
  }
1383
- var vn = /*#__PURE__*/ k($, [["render", _n]]), yn = {
1385
+ var bn = /*#__PURE__*/ k(un, [["render", yn]]), xn = {
1384
1386
  mixins: [Z],
1385
1387
  props: {
1386
1388
  url: {
@@ -1396,15 +1398,143 @@ var vn = /*#__PURE__*/ k($, [["render", _n]]), yn = {
1396
1398
  default: !1
1397
1399
  }
1398
1400
  }
1399
- }, bn = ["href", "textContent"];
1400
- function xn(e, t, n, r, a, o) {
1401
+ }, Sn = ["href", "textContent"];
1402
+ function Cn(e, t, n, r, a, o) {
1401
1403
  return u(), i("a", {
1402
1404
  href: n.url,
1403
1405
  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"]),
1404
1406
  onClick: t[0] ||= (t) => e.followLink(t, n.url),
1405
1407
  textContent: m(n.name)
1406
- }, null, 10, bn);
1408
+ }, null, 10, Sn);
1409
+ }
1410
+ var wn = /*#__PURE__*/ k(xn, [["render", Cn]]), Tn = {
1411
+ components: { Closer: J },
1412
+ mixins: [I],
1413
+ data() {
1414
+ return { canGoBack: window.history.length > 1 };
1415
+ },
1416
+ methods: { goBack() {
1417
+ window.history.back();
1418
+ } }
1419
+ };
1420
+ function En(e, t, a, o, s, c) {
1421
+ let d = p("closer");
1422
+ 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, {
1423
+ key: 0,
1424
+ 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",
1425
+ tabindex: "0",
1426
+ "aria-label": e.texts.back,
1427
+ onClicked: c.goBack
1428
+ }, null, 8, ["aria-label", "onClicked"])) : r("", !0)], 2);
1429
+ }
1430
+ var $ = /*#__PURE__*/ k(Tn, [["render", En]]), Dn = {}, On = {
1431
+ class: "bb:h-7 bb:w-7 bb:text-green-600",
1432
+ xmlns: "http://www.w3.org/2000/svg",
1433
+ fill: "none",
1434
+ viewBox: "0 0 24 24",
1435
+ "stroke-width": "1.5",
1436
+ stroke: "currentColor",
1437
+ "aria-hidden": "true"
1438
+ };
1439
+ function kn(e, t, n, r, o, s) {
1440
+ return u(), i("svg", On, [...t[0] ||= [a("path", {
1441
+ "stroke-linecap": "round",
1442
+ "stroke-linejoin": "round",
1443
+ d: "M9 12.75 11.25 15 15 9.75M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"
1444
+ }, null, -1)]]);
1445
+ }
1446
+ var An = /*#__PURE__*/ k(Dn, [["render", kn]]), jn = {}, Mn = {
1447
+ class: "bb:h-5 bb:w-5",
1448
+ xmlns: "http://www.w3.org/2000/svg",
1449
+ viewBox: "0 0 20 20",
1450
+ fill: "currentColor",
1451
+ "aria-hidden": "true"
1452
+ };
1453
+ function Nn(e, t, n, r, o, s) {
1454
+ return u(), i("svg", Mn, [...t[0] ||= [a("path", {
1455
+ "fill-rule": "evenodd",
1456
+ 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",
1457
+ "clip-rule": "evenodd"
1458
+ }, null, -1)]]);
1459
+ }
1460
+ //#endregion
1461
+ //#region src/components/NotificationMessage.vue
1462
+ var Pn = {
1463
+ components: {
1464
+ Check: An,
1465
+ Close: /* @__PURE__ */ k(jn, [["render", Nn]]),
1466
+ Dangerous: Y,
1467
+ Warning: X
1468
+ },
1469
+ mixins: [I],
1470
+ emits: ["update:modelValue"],
1471
+ props: {
1472
+ modelValue: {
1473
+ type: String,
1474
+ default: ""
1475
+ },
1476
+ type: {
1477
+ type: String,
1478
+ default: "warning",
1479
+ validator: (e) => [
1480
+ "confirmation",
1481
+ "warning",
1482
+ "dangerous"
1483
+ ].indexOf(e) !== -1
1484
+ },
1485
+ notificationHeading: {
1486
+ type: String,
1487
+ default: ""
1488
+ }
1489
+ },
1490
+ computed: {
1491
+ text() {
1492
+ return this.modelValue ?? "";
1493
+ },
1494
+ hasMessage() {
1495
+ return this.text.length > 0;
1496
+ },
1497
+ isDangerous() {
1498
+ return this.type === "dangerous";
1499
+ },
1500
+ isWarning() {
1501
+ return this.type === "warning";
1502
+ },
1503
+ isConfirmation() {
1504
+ return this.type === "confirmation";
1505
+ }
1506
+ }
1507
+ }, Fn = ["role"], In = { class: "bb:p-4" }, Ln = { class: "bb:flex bb:items-start" }, Rn = { class: "bb:shrink-0" }, zn = { class: "bb:ml-3 bb:w-0 bb:flex-1 bb:pt-0.5" }, Bn = { class: "bb:text-sm bb:font-medium bb:text-gray-900" }, Vn = { class: "bb:mt-1 bb:text-sm bb:text-gray-500" }, Hn = { class: "bb:ml-4 bb:shrink-0 bb:flex" }, Un = { class: "bb:sr-only" };
1508
+ function Wn(e, t, o, c, d, f) {
1509
+ let h = p("warning"), g = p("dangerous"), _ = p("check"), v = p("close");
1510
+ return u(), i("div", {
1511
+ 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",
1512
+ role: f.isDangerous ? "alert" : "status"
1513
+ }, [f.hasMessage ? (u(), i("div", {
1514
+ key: 0,
1515
+ 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", {
1516
+ "bb:bg-red-50": f.isDangerous,
1517
+ "bb:bg-yellow-50": f.isWarning,
1518
+ "bb:bg-gray-50": f.isConfirmation
1519
+ }])
1520
+ }, [a("div", In, [a("div", Ln, [
1521
+ a("div", Rn, [
1522
+ f.isWarning ? (u(), n(h, { key: 0 })) : r("", !0),
1523
+ f.isDangerous ? (u(), n(g, { key: 1 })) : r("", !0),
1524
+ f.isConfirmation ? (u(), n(_, { key: 2 })) : r("", !0)
1525
+ ]),
1526
+ a("div", zn, [a("p", Bn, m(o.notificationHeading), 1), a("p", Vn, m(f.text), 1)]),
1527
+ a("div", Hn, [a("button", {
1528
+ type: "button",
1529
+ 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", {
1530
+ "bb:bg-red-50": f.isDangerous,
1531
+ "bb:bg-yellow-50": f.isWarning,
1532
+ "bb:bg-gray-50": f.isConfirmation
1533
+ }]),
1534
+ onClick: t[0] ||= x((t) => e.$emit("update:modelValue", ""), ["prevent"])
1535
+ }, [a("span", Un, m(e.texts.close), 1), s(v)], 2)])
1536
+ ])])], 2)) : r("", !0)], 8, Fn);
1407
1537
  }
1408
- var Sn = /*#__PURE__*/ k(yn, [["render", xn]]);
1538
+ var Gn = /*#__PURE__*/ k(Pn, [["render", Wn]]);
1409
1539
  //#endregion
1410
- export { mt as Closer, Wt as ConfirmationModal, j as Dot, St as DownloadLink, Qt as DropdownButtonWithAction, dt as ErrorMessages, X as Modal, Sn as NavigationMenuElement, vn as Pagination, K as PickDay, A as Popup, Ce as RussianMobileFilter, Ae as Search, Le as SelectDateInterval, et as SelectSingle, it as SmallBadge, O as dashboardUi };
1540
+ export { J as Closer, Gt as ConfirmationModal, j as Dot, Ct as DownloadLink, $t as DropdownButtonWithAction, pt as ErrorMessages, wn as NavigationMenuElement, Gn as NotificationMessage, $ as PageCard, bn as Pagination, W as PickDay, A as Popup, Te as RussianMobileFilter, Me as Search, ze as SelectDateInterval, nt as SelectSingle, ot as SmallBadge, O as dashboardUi };