@unizap/uniui 1.0.31 → 1.0.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/dist/uniui.js +1673 -1674
  2. package/dist/uniui.umd.cjs +56 -56
  3. package/package.json +1 -1
package/dist/uniui.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import * as R from "react";
2
- import je, { useRef as se, useState as K, useEffect as ce, useMemo as Te, useReducer as Ur, useCallback as oe, forwardRef as Ye, useImperativeHandle as tr, Fragment as Yr, memo as Zr, useLayoutEffect as Kr } from "react";
2
+ import je, { useRef as se, useState as K, useEffect as ce, useMemo as Te, useReducer as Ur, useCallback as oe, forwardRef as Ye, useImperativeHandle as er, Fragment as Yr, memo as Zr, useLayoutEffect as Kr } from "react";
3
3
  import { createPortal as Ze } from "react-dom";
4
- function nr(e) {
4
+ function tr(e) {
5
5
  return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
6
6
  }
7
7
  var et = { exports: {} }, He = {};
@@ -14,10 +14,10 @@ var et = { exports: {} }, He = {};
14
14
  * This source code is licensed under the MIT license found in the
15
15
  * LICENSE file in the root directory of this source tree.
16
16
  */
17
- var xn;
17
+ var vn;
18
18
  function Xr() {
19
- if (xn) return He;
20
- xn = 1;
19
+ if (vn) return He;
20
+ vn = 1;
21
21
  var e = Symbol.for("react.transitional.element"), n = Symbol.for("react.fragment");
22
22
  function t(r, o, a) {
23
23
  var i = null;
@@ -46,9 +46,9 @@ var Be = {};
46
46
  * This source code is licensed under the MIT license found in the
47
47
  * LICENSE file in the root directory of this source tree.
48
48
  */
49
- var hn;
49
+ var xn;
50
50
  function Jr() {
51
- return hn || (hn = 1, process.env.NODE_ENV !== "production" && function() {
51
+ return xn || (xn = 1, process.env.NODE_ENV !== "production" && function() {
52
52
  function e(x) {
53
53
  if (x == null) return null;
54
54
  if (typeof x == "function")
@@ -279,9 +279,9 @@ React keys must be passed directly to JSX without using spread:
279
279
  };
280
280
  }()), Be;
281
281
  }
282
- var wn;
282
+ var hn;
283
283
  function Qr() {
284
- return wn || (wn = 1, process.env.NODE_ENV === "production" ? et.exports = Xr() : et.exports = Jr()), et.exports;
284
+ return hn || (hn = 1, process.env.NODE_ENV === "production" ? et.exports = Xr() : et.exports = Jr()), et.exports;
285
285
  }
286
286
  var s = Qr();
287
287
  const ve = {
@@ -797,10 +797,10 @@ var tt = { exports: {} }, nt = { exports: {} }, ne = {};
797
797
  * This source code is licensed under the MIT license found in the
798
798
  * LICENSE file in the root directory of this source tree.
799
799
  */
800
- var bn;
800
+ var wn;
801
801
  function eo() {
802
- if (bn) return ne;
803
- bn = 1;
802
+ if (wn) return ne;
803
+ wn = 1;
804
804
  var e = typeof Symbol == "function" && Symbol.for, n = e ? Symbol.for("react.element") : 60103, t = e ? Symbol.for("react.portal") : 60106, r = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, l = e ? Symbol.for("react.context") : 60110, c = e ? Symbol.for("react.async_mode") : 60111, u = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, g = e ? Symbol.for("react.suspense") : 60113, p = e ? Symbol.for("react.suspense_list") : 60120, f = e ? Symbol.for("react.memo") : 60115, v = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, w = e ? Symbol.for("react.fundamental") : 60117, h = e ? Symbol.for("react.responder") : 60118, k = e ? Symbol.for("react.scope") : 60119;
805
805
  function b(y) {
806
806
  if (typeof y == "object" && y !== null) {
@@ -872,9 +872,9 @@ var re = {};
872
872
  * This source code is licensed under the MIT license found in the
873
873
  * LICENSE file in the root directory of this source tree.
874
874
  */
875
- var yn;
875
+ var bn;
876
876
  function to() {
877
- return yn || (yn = 1, process.env.NODE_ENV !== "production" && function() {
877
+ return bn || (bn = 1, process.env.NODE_ENV !== "production" && function() {
878
878
  var e = typeof Symbol == "function" && Symbol.for, n = e ? Symbol.for("react.element") : 60103, t = e ? Symbol.for("react.portal") : 60106, r = e ? Symbol.for("react.fragment") : 60107, o = e ? Symbol.for("react.strict_mode") : 60108, a = e ? Symbol.for("react.profiler") : 60114, i = e ? Symbol.for("react.provider") : 60109, l = e ? Symbol.for("react.context") : 60110, c = e ? Symbol.for("react.async_mode") : 60111, u = e ? Symbol.for("react.concurrent_mode") : 60111, d = e ? Symbol.for("react.forward_ref") : 60112, g = e ? Symbol.for("react.suspense") : 60113, p = e ? Symbol.for("react.suspense_list") : 60120, f = e ? Symbol.for("react.memo") : 60115, v = e ? Symbol.for("react.lazy") : 60116, m = e ? Symbol.for("react.block") : 60121, w = e ? Symbol.for("react.fundamental") : 60117, h = e ? Symbol.for("react.responder") : 60118, k = e ? Symbol.for("react.scope") : 60119;
879
879
  function b(j) {
880
880
  return typeof j == "string" || typeof j == "function" || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.
@@ -955,19 +955,19 @@ function to() {
955
955
  re.AsyncMode = y, re.ConcurrentMode = O, re.ContextConsumer = D, re.ContextProvider = V, re.Element = F, re.ForwardRef = Z, re.Fragment = ae, re.Lazy = ue, re.Memo = Q, re.Portal = H, re.Profiler = Y, re.StrictMode = T, re.Suspense = te, re.isAsyncMode = X, re.isConcurrentMode = x, re.isContextConsumer = C, re.isContextProvider = M, re.isElement = L, re.isForwardRef = N, re.isFragment = I, re.isLazy = z, re.isMemo = E, re.isPortal = P, re.isProfiler = B, re.isStrictMode = q, re.isSuspense = S, re.isValidElementType = b, re.typeOf = $;
956
956
  }()), re;
957
957
  }
958
- var Cn;
959
- function rr() {
960
- return Cn || (Cn = 1, process.env.NODE_ENV === "production" ? nt.exports = eo() : nt.exports = to()), nt.exports;
958
+ var yn;
959
+ function nr() {
960
+ return yn || (yn = 1, process.env.NODE_ENV === "production" ? nt.exports = eo() : nt.exports = to()), nt.exports;
961
961
  }
962
962
  /*
963
963
  object-assign
964
964
  (c) Sindre Sorhus
965
965
  @license MIT
966
966
  */
967
- var $t, Sn;
967
+ var $t, Cn;
968
968
  function no() {
969
- if (Sn) return $t;
970
- Sn = 1;
969
+ if (Cn) return $t;
970
+ Cn = 1;
971
971
  var e = Object.getOwnPropertySymbols, n = Object.prototype.hasOwnProperty, t = Object.prototype.propertyIsEnumerable;
972
972
  function r(a) {
973
973
  if (a == null)
@@ -1010,25 +1010,25 @@ function no() {
1010
1010
  return c;
1011
1011
  }, $t;
1012
1012
  }
1013
- var _t, jn;
1013
+ var _t, Sn;
1014
1014
  function rn() {
1015
- if (jn) return _t;
1016
- jn = 1;
1015
+ if (Sn) return _t;
1016
+ Sn = 1;
1017
1017
  var e = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
1018
1018
  return _t = e, _t;
1019
1019
  }
1020
- var Et, Rn;
1021
- function or() {
1022
- return Rn || (Rn = 1, Et = Function.call.bind(Object.prototype.hasOwnProperty)), Et;
1020
+ var Et, jn;
1021
+ function rr() {
1022
+ return jn || (jn = 1, Et = Function.call.bind(Object.prototype.hasOwnProperty)), Et;
1023
1023
  }
1024
- var Pt, kn;
1024
+ var Pt, Rn;
1025
1025
  function ro() {
1026
- if (kn) return Pt;
1027
- kn = 1;
1026
+ if (Rn) return Pt;
1027
+ Rn = 1;
1028
1028
  var e = function() {
1029
1029
  };
1030
1030
  if (process.env.NODE_ENV !== "production") {
1031
- var n = /* @__PURE__ */ rn(), t = {}, r = /* @__PURE__ */ or();
1031
+ var n = /* @__PURE__ */ rn(), t = {}, r = /* @__PURE__ */ rr();
1032
1032
  e = function(a) {
1033
1033
  var i = "Warning: " + a;
1034
1034
  typeof console < "u" && console.error(i);
@@ -1070,11 +1070,11 @@ function ro() {
1070
1070
  process.env.NODE_ENV !== "production" && (t = {});
1071
1071
  }, Pt = o, Pt;
1072
1072
  }
1073
- var Lt, $n;
1073
+ var Lt, kn;
1074
1074
  function oo() {
1075
- if ($n) return Lt;
1076
- $n = 1;
1077
- var e = rr(), n = no(), t = /* @__PURE__ */ rn(), r = /* @__PURE__ */ or(), o = /* @__PURE__ */ ro(), a = function() {
1075
+ if (kn) return Lt;
1076
+ kn = 1;
1077
+ var e = nr(), n = no(), t = /* @__PURE__ */ rn(), r = /* @__PURE__ */ rr(), o = /* @__PURE__ */ ro(), a = function() {
1078
1078
  };
1079
1079
  process.env.NODE_ENV !== "production" && (a = function(l) {
1080
1080
  var c = "Warning: " + l;
@@ -1391,10 +1391,10 @@ Valid keys: ` + JSON.stringify(Object.keys(x), null, " ")
1391
1391
  return f.checkPropTypes = o, f.resetWarningCache = o.resetWarningCache, f.PropTypes = f, f;
1392
1392
  }, Lt;
1393
1393
  }
1394
- var Mt, _n;
1394
+ var Mt, $n;
1395
1395
  function ao() {
1396
- if (_n) return Mt;
1397
- _n = 1;
1396
+ if ($n) return Mt;
1397
+ $n = 1;
1398
1398
  var e = /* @__PURE__ */ rn();
1399
1399
  function n() {
1400
1400
  }
@@ -1439,18 +1439,18 @@ function ao() {
1439
1439
  return a.PropTypes = a, a;
1440
1440
  }, Mt;
1441
1441
  }
1442
- var En;
1442
+ var _n;
1443
1443
  function io() {
1444
- if (En) return tt.exports;
1445
- if (En = 1, process.env.NODE_ENV !== "production") {
1446
- var e = rr(), n = !0;
1444
+ if (_n) return tt.exports;
1445
+ if (_n = 1, process.env.NODE_ENV !== "production") {
1446
+ var e = nr(), n = !0;
1447
1447
  tt.exports = /* @__PURE__ */ oo()(e.isElement, n);
1448
1448
  } else
1449
1449
  tt.exports = /* @__PURE__ */ ao()();
1450
1450
  return tt.exports;
1451
1451
  }
1452
1452
  var lo = /* @__PURE__ */ io();
1453
- const ie = /* @__PURE__ */ nr(lo);
1453
+ const ie = /* @__PURE__ */ tr(lo);
1454
1454
  function Ne(e, n, t, r) {
1455
1455
  function o(a) {
1456
1456
  return a instanceof t ? a : new t(function(i) {
@@ -2683,7 +2683,7 @@ const so = /* @__PURE__ */ new Map([
2683
2683
  ]);
2684
2684
  function Oe(e, n, t) {
2685
2685
  const r = co(e), { webkitRelativePath: o } = e, a = typeof n == "string" ? n : typeof o == "string" && o.length > 0 ? o : `./${e.name}`;
2686
- return typeof r.path != "string" && Pn(r, "path", a), Pn(r, "relativePath", a), r;
2686
+ return typeof r.path != "string" && En(r, "path", a), En(r, "relativePath", a), r;
2687
2687
  }
2688
2688
  function co(e) {
2689
2689
  const { name: n } = e;
@@ -2698,7 +2698,7 @@ function co(e) {
2698
2698
  }
2699
2699
  return e;
2700
2700
  }
2701
- function Pn(e, n, t) {
2701
+ function En(e, n, t) {
2702
2702
  Object.defineProperty(e, n, {
2703
2703
  value: t,
2704
2704
  writable: !1,
@@ -2742,12 +2742,12 @@ function xo(e, n) {
2742
2742
  if (n !== "drop")
2743
2743
  return t;
2744
2744
  const r = yield Promise.all(t.map(ho));
2745
- return Ln(ar(r));
2745
+ return Pn(or(r));
2746
2746
  }
2747
- return Ln(Wt(e.files).map((t) => Oe(t)));
2747
+ return Pn(Wt(e.files).map((t) => Oe(t)));
2748
2748
  });
2749
2749
  }
2750
- function Ln(e) {
2750
+ function Pn(e) {
2751
2751
  return e.filter((n) => uo.indexOf(n.name) === -1);
2752
2752
  }
2753
2753
  function Wt(e) {
@@ -2762,17 +2762,17 @@ function Wt(e) {
2762
2762
  }
2763
2763
  function ho(e) {
2764
2764
  if (typeof e.webkitGetAsEntry != "function")
2765
- return Mn(e);
2765
+ return Ln(e);
2766
2766
  const n = e.webkitGetAsEntry();
2767
- return n && n.isDirectory ? ir(n) : Mn(e, n);
2767
+ return n && n.isDirectory ? ar(n) : Ln(e, n);
2768
2768
  }
2769
- function ar(e) {
2769
+ function or(e) {
2770
2770
  return e.reduce((n, t) => [
2771
2771
  ...n,
2772
- ...Array.isArray(t) ? ar(t) : [t]
2772
+ ...Array.isArray(t) ? or(t) : [t]
2773
2773
  ], []);
2774
2774
  }
2775
- function Mn(e, n) {
2775
+ function Ln(e, n) {
2776
2776
  return Ne(this, void 0, void 0, function* () {
2777
2777
  var t;
2778
2778
  if (globalThis.isSecureContext && typeof e.getAsFileSystemHandle == "function") {
@@ -2792,10 +2792,10 @@ function Mn(e, n) {
2792
2792
  }
2793
2793
  function wo(e) {
2794
2794
  return Ne(this, void 0, void 0, function* () {
2795
- return e.isDirectory ? ir(e) : bo(e);
2795
+ return e.isDirectory ? ar(e) : bo(e);
2796
2796
  });
2797
2797
  }
2798
- function ir(e) {
2798
+ function ar(e) {
2799
2799
  const n = e.createReader();
2800
2800
  return new Promise((t, r) => {
2801
2801
  const o = [];
@@ -2830,9 +2830,9 @@ function bo(e) {
2830
2830
  });
2831
2831
  });
2832
2832
  }
2833
- var rt = {}, Fn;
2833
+ var rt = {}, Mn;
2834
2834
  function yo() {
2835
- return Fn || (Fn = 1, rt.__esModule = !0, rt.default = function(e, n) {
2835
+ return Mn || (Mn = 1, rt.__esModule = !0, rt.default = function(e, n) {
2836
2836
  if (e && n) {
2837
2837
  var t = Array.isArray(n) ? n : n.split(",");
2838
2838
  if (t.length === 0)
@@ -2847,9 +2847,9 @@ function yo() {
2847
2847
  }), rt;
2848
2848
  }
2849
2849
  var Co = yo();
2850
- const Ft = /* @__PURE__ */ nr(Co);
2851
- function An(e) {
2852
- return Ro(e) || jo(e) || sr(e) || So();
2850
+ const Ft = /* @__PURE__ */ tr(Co);
2851
+ function Fn(e) {
2852
+ return Ro(e) || jo(e) || lr(e) || So();
2853
2853
  }
2854
2854
  function So() {
2855
2855
  throw new TypeError(`Invalid attempt to spread non-iterable instance.
@@ -2861,7 +2861,7 @@ function jo(e) {
2861
2861
  function Ro(e) {
2862
2862
  if (Array.isArray(e)) return Ut(e);
2863
2863
  }
2864
- function Nn(e, n) {
2864
+ function An(e, n) {
2865
2865
  var t = Object.keys(e);
2866
2866
  if (Object.getOwnPropertySymbols) {
2867
2867
  var r = Object.getOwnPropertySymbols(e);
@@ -2871,28 +2871,28 @@ function Nn(e, n) {
2871
2871
  }
2872
2872
  return t;
2873
2873
  }
2874
- function Dn(e) {
2874
+ function Nn(e) {
2875
2875
  for (var n = 1; n < arguments.length; n++) {
2876
2876
  var t = arguments[n] != null ? arguments[n] : {};
2877
- n % 2 ? Nn(Object(t), !0).forEach(function(r) {
2878
- lr(e, r, t[r]);
2879
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : Nn(Object(t)).forEach(function(r) {
2877
+ n % 2 ? An(Object(t), !0).forEach(function(r) {
2878
+ ir(e, r, t[r]);
2879
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : An(Object(t)).forEach(function(r) {
2880
2880
  Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
2881
2881
  });
2882
2882
  }
2883
2883
  return e;
2884
2884
  }
2885
- function lr(e, n, t) {
2885
+ function ir(e, n, t) {
2886
2886
  return n in e ? Object.defineProperty(e, n, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[n] = t, e;
2887
2887
  }
2888
2888
  function Ue(e, n) {
2889
- return _o(e) || $o(e, n) || sr(e, n) || ko();
2889
+ return _o(e) || $o(e, n) || lr(e, n) || ko();
2890
2890
  }
2891
2891
  function ko() {
2892
2892
  throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2893
2893
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
2894
2894
  }
2895
- function sr(e, n) {
2895
+ function lr(e, n) {
2896
2896
  if (e) {
2897
2897
  if (typeof e == "string") return Ut(e, n);
2898
2898
  var t = Object.prototype.toString.call(e).slice(8, -1);
@@ -2934,12 +2934,12 @@ var Eo = typeof Ft == "function" ? Ft : Ft.default, Po = "file-invalid-type", Lo
2934
2934
  code: Po,
2935
2935
  message: "File type must be ".concat(r)
2936
2936
  };
2937
- }, zn = function(n) {
2937
+ }, Dn = function(n) {
2938
2938
  return {
2939
2939
  code: Lo,
2940
2940
  message: "File is larger than ".concat(n, " ").concat(n === 1 ? "byte" : "bytes")
2941
2941
  };
2942
- }, Tn = function(n) {
2942
+ }, zn = function(n) {
2943
2943
  return {
2944
2944
  code: Mo,
2945
2945
  message: "File is smaller than ".concat(n, " ").concat(n === 1 ? "byte" : "bytes")
@@ -2948,18 +2948,18 @@ var Eo = typeof Ft == "function" ? Ft : Ft.default, Po = "file-invalid-type", Lo
2948
2948
  code: Fo,
2949
2949
  message: "Too many files"
2950
2950
  };
2951
- function cr(e, n) {
2951
+ function sr(e, n) {
2952
2952
  var t = e.type === "application/x-moz-file" || Eo(e, n);
2953
2953
  return [t, t ? null : Ao(n)];
2954
2954
  }
2955
- function ur(e, n, t) {
2955
+ function cr(e, n, t) {
2956
2956
  if (Ae(e.size))
2957
2957
  if (Ae(n) && Ae(t)) {
2958
- if (e.size > t) return [!1, zn(t)];
2959
- if (e.size < n) return [!1, Tn(n)];
2958
+ if (e.size > t) return [!1, Dn(t)];
2959
+ if (e.size < n) return [!1, zn(n)];
2960
2960
  } else {
2961
- if (Ae(n) && e.size < n) return [!1, Tn(n)];
2962
- if (Ae(t) && e.size > t) return [!1, zn(t)];
2961
+ if (Ae(n) && e.size < n) return [!1, zn(n)];
2962
+ if (Ae(t) && e.size > t) return [!1, Dn(t)];
2963
2963
  }
2964
2964
  return [!0, null];
2965
2965
  }
@@ -2969,7 +2969,7 @@ function Ae(e) {
2969
2969
  function Do(e) {
2970
2970
  var n = e.files, t = e.accept, r = e.minSize, o = e.maxSize, a = e.multiple, i = e.maxFiles, l = e.validator;
2971
2971
  return !a && n.length > 1 || a && i >= 1 && n.length > i ? !1 : n.every(function(c) {
2972
- var u = cr(c, t), d = Ue(u, 1), g = d[0], p = ur(c, r, o), f = Ue(p, 1), v = f[0], m = l ? l(c) : null;
2972
+ var u = sr(c, t), d = Ue(u, 1), g = d[0], p = cr(c, r, o), f = Ue(p, 1), v = f[0], m = l ? l(c) : null;
2973
2973
  return g && v && !m;
2974
2974
  });
2975
2975
  }
@@ -2981,7 +2981,7 @@ function ot(e) {
2981
2981
  return n === "Files" || n === "application/x-moz-file";
2982
2982
  }) : !!e.target && !!e.target.files;
2983
2983
  }
2984
- function On(e) {
2984
+ function Tn(e) {
2985
2985
  e.preventDefault();
2986
2986
  }
2987
2987
  function zo(e) {
@@ -3012,10 +3012,10 @@ function Vo(e) {
3012
3012
  if (Ae(e)) {
3013
3013
  var n = Object.entries(e).filter(function(t) {
3014
3014
  var r = Ue(t, 2), o = r[0], a = r[1], i = !0;
3015
- return dr(o) || (console.warn('Skipped "'.concat(o, '" because it is not a valid MIME type. Check https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types for a list of valid MIME types.')), i = !1), (!Array.isArray(a) || !a.every(pr)) && (console.warn('Skipped "'.concat(o, '" because an invalid file extension was provided.')), i = !1), i;
3015
+ return ur(o) || (console.warn('Skipped "'.concat(o, '" because it is not a valid MIME type. Check https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types for a list of valid MIME types.')), i = !1), (!Array.isArray(a) || !a.every(dr)) && (console.warn('Skipped "'.concat(o, '" because an invalid file extension was provided.')), i = !1), i;
3016
3016
  }).reduce(function(t, r) {
3017
3017
  var o = Ue(r, 2), a = o[0], i = o[1];
3018
- return Dn(Dn({}, t), {}, lr({}, a, i));
3018
+ return Nn(Nn({}, t), {}, ir({}, a, i));
3019
3019
  }, {});
3020
3020
  return [{
3021
3021
  // description is required due to https://crbug.com/1264708
@@ -3029,9 +3029,9 @@ function Ho(e) {
3029
3029
  if (Ae(e))
3030
3030
  return Object.entries(e).reduce(function(n, t) {
3031
3031
  var r = Ue(t, 2), o = r[0], a = r[1];
3032
- return [].concat(An(n), [o], An(a));
3032
+ return [].concat(Fn(n), [o], Fn(a));
3033
3033
  }, []).filter(function(n) {
3034
- return dr(n) || pr(n);
3034
+ return ur(n) || dr(n);
3035
3035
  }).join(",");
3036
3036
  }
3037
3037
  function Bo(e) {
@@ -3040,15 +3040,15 @@ function Bo(e) {
3040
3040
  function qo(e) {
3041
3041
  return e instanceof DOMException && (e.name === "SecurityError" || e.code === e.SECURITY_ERR);
3042
3042
  }
3043
- function dr(e) {
3043
+ function ur(e) {
3044
3044
  return e === "audio/*" || e === "video/*" || e === "image/*" || e === "text/*" || e === "application/*" || /\w+\/[-+.\w]+/g.test(e);
3045
3045
  }
3046
- function pr(e) {
3046
+ function dr(e) {
3047
3047
  return /^.*\.[\w]+$/.test(e);
3048
3048
  }
3049
3049
  var Go = ["children"], Wo = ["open"], Uo = ["refKey", "role", "onKeyDown", "onFocus", "onBlur", "onClick", "onDragEnter", "onDragOver", "onDragLeave", "onDrop"], Yo = ["refKey", "onChange", "onClick"];
3050
3050
  function Zo(e) {
3051
- return Jo(e) || Xo(e) || fr(e) || Ko();
3051
+ return Jo(e) || Xo(e) || pr(e) || Ko();
3052
3052
  }
3053
3053
  function Ko() {
3054
3054
  throw new TypeError(`Invalid attempt to spread non-iterable instance.
@@ -3061,13 +3061,13 @@ function Jo(e) {
3061
3061
  if (Array.isArray(e)) return Yt(e);
3062
3062
  }
3063
3063
  function At(e, n) {
3064
- return ta(e) || ea(e, n) || fr(e, n) || Qo();
3064
+ return ta(e) || ea(e, n) || pr(e, n) || Qo();
3065
3065
  }
3066
3066
  function Qo() {
3067
3067
  throw new TypeError(`Invalid attempt to destructure non-iterable instance.
3068
3068
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
3069
3069
  }
3070
- function fr(e, n) {
3070
+ function pr(e, n) {
3071
3071
  if (e) {
3072
3072
  if (typeof e == "string") return Yt(e, n);
3073
3073
  var t = Object.prototype.toString.call(e).slice(8, -1);
@@ -3103,7 +3103,7 @@ function ea(e, n) {
3103
3103
  function ta(e) {
3104
3104
  if (Array.isArray(e)) return e;
3105
3105
  }
3106
- function In(e, n) {
3106
+ function On(e, n) {
3107
3107
  var t = Object.keys(e);
3108
3108
  if (Object.getOwnPropertySymbols) {
3109
3109
  var r = Object.getOwnPropertySymbols(e);
@@ -3116,9 +3116,9 @@ function In(e, n) {
3116
3116
  function le(e) {
3117
3117
  for (var n = 1; n < arguments.length; n++) {
3118
3118
  var t = arguments[n] != null ? arguments[n] : {};
3119
- n % 2 ? In(Object(t), !0).forEach(function(r) {
3119
+ n % 2 ? On(Object(t), !0).forEach(function(r) {
3120
3120
  Zt(e, r, t[r]);
3121
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : In(Object(t)).forEach(function(r) {
3121
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : On(Object(t)).forEach(function(r) {
3122
3122
  Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
3123
3123
  });
3124
3124
  }
@@ -3145,8 +3145,8 @@ function na(e, n) {
3145
3145
  return t;
3146
3146
  }
3147
3147
  var on = /* @__PURE__ */ Ye(function(e, n) {
3148
- var t = e.children, r = mt(e, Go), o = gr(r), a = o.open, i = mt(o, Wo);
3149
- return tr(n, function() {
3148
+ var t = e.children, r = mt(e, Go), o = mr(r), a = o.open, i = mt(o, Wo);
3149
+ return er(n, function() {
3150
3150
  return {
3151
3151
  open: a
3152
3152
  };
@@ -3155,7 +3155,7 @@ var on = /* @__PURE__ */ Ye(function(e, n) {
3155
3155
  })));
3156
3156
  });
3157
3157
  on.displayName = "Dropzone";
3158
- var mr = {
3158
+ var fr = {
3159
3159
  disabled: !1,
3160
3160
  getFilesFromEvent: po,
3161
3161
  maxSize: 1 / 0,
@@ -3171,7 +3171,7 @@ var mr = {
3171
3171
  useFsAccessApi: !1,
3172
3172
  autoFocus: !1
3173
3173
  };
3174
- on.defaultProps = mr;
3174
+ on.defaultProps = fr;
3175
3175
  on.propTypes = {
3176
3176
  /**
3177
3177
  * Render function that exposes the dropzone state and prop getter fns
@@ -3349,15 +3349,15 @@ var Kt = {
3349
3349
  acceptedFiles: [],
3350
3350
  fileRejections: []
3351
3351
  };
3352
- function gr() {
3353
- var e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, n = le(le({}, mr), e), t = n.accept, r = n.disabled, o = n.getFilesFromEvent, a = n.maxSize, i = n.minSize, l = n.multiple, c = n.maxFiles, u = n.onDragEnter, d = n.onDragLeave, g = n.onDragOver, p = n.onDrop, f = n.onDropAccepted, v = n.onDropRejected, m = n.onFileDialogCancel, w = n.onFileDialogOpen, h = n.useFsAccessApi, k = n.autoFocus, b = n.preventDropOnDocument, $ = n.noClick, y = n.noKeyboard, O = n.noDrag, D = n.noDragEventsBubbling, V = n.onError, F = n.validator, Z = Te(function() {
3352
+ function mr() {
3353
+ var e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, n = le(le({}, fr), e), t = n.accept, r = n.disabled, o = n.getFilesFromEvent, a = n.maxSize, i = n.minSize, l = n.multiple, c = n.maxFiles, u = n.onDragEnter, d = n.onDragLeave, g = n.onDragOver, p = n.onDrop, f = n.onDropAccepted, v = n.onDropRejected, m = n.onFileDialogCancel, w = n.onFileDialogOpen, h = n.useFsAccessApi, k = n.autoFocus, b = n.preventDropOnDocument, $ = n.noClick, y = n.noKeyboard, O = n.noDrag, D = n.noDragEventsBubbling, V = n.onError, F = n.validator, Z = Te(function() {
3354
3354
  return Ho(t);
3355
3355
  }, [t]), ae = Te(function() {
3356
3356
  return Vo(t);
3357
3357
  }, [t]), ue = Te(function() {
3358
- return typeof w == "function" ? w : Vn;
3358
+ return typeof w == "function" ? w : In;
3359
3359
  }, [w]), Q = Te(function() {
3360
- return typeof m == "function" ? m : Vn;
3360
+ return typeof m == "function" ? m : In;
3361
3361
  }, [m]), H = se(null), Y = se(null), T = Ur(ra, Kt), te = At(T, 2), pe = te[0], X = te[1], x = pe.isFocused, C = pe.isFileDialogActive, M = se(typeof window < "u" && window.isSecureContext && h && Io()), L = function() {
3362
3362
  !M.current && C && setTimeout(function() {
3363
3363
  if (Y.current) {
@@ -3377,8 +3377,8 @@ function gr() {
3377
3377
  H.current && H.current.contains(G.target) || (G.preventDefault(), N.current = []);
3378
3378
  };
3379
3379
  ce(function() {
3380
- return b && (document.addEventListener("dragover", On, !1), document.addEventListener("drop", I, !1)), function() {
3381
- b && (document.removeEventListener("dragover", On), document.removeEventListener("drop", I));
3380
+ return b && (document.addEventListener("dragover", Tn, !1), document.addEventListener("drop", I, !1)), function() {
3381
+ b && (document.removeEventListener("dragover", Tn), document.removeEventListener("drop", I));
3382
3382
  };
3383
3383
  }, [H, b]), ce(function() {
3384
3384
  return !r && k && H.current && H.current.focus(), function() {
@@ -3431,7 +3431,7 @@ function gr() {
3431
3431
  }, [H, d, D]), q = oe(function(A, G) {
3432
3432
  var me = [], ge = [];
3433
3433
  A.forEach(function(be) {
3434
- var Ve = cr(be, Z), ze = At(Ve, 2), bt = ze[0], yt = ze[1], Ct = ur(be, i, a), Qe = At(Ct, 2), St = Qe[0], jt = Qe[1], Rt = F ? F(be) : null;
3434
+ var Ve = sr(be, Z), ze = At(Ve, 2), bt = ze[0], yt = ze[1], Ct = cr(be, i, a), Qe = At(Ct, 2), St = Qe[0], jt = Qe[1], Rt = F ? F(be) : null;
3435
3435
  if (bt && St && !Rt)
3436
3436
  me.push(be);
3437
3437
  else {
@@ -3596,7 +3596,7 @@ function ra(e, n) {
3596
3596
  return e;
3597
3597
  }
3598
3598
  }
3599
- function Vn() {
3599
+ function In() {
3600
3600
  }
3601
3601
  const Tl = ({
3602
3602
  onFilesAccepted: e,
@@ -3663,7 +3663,7 @@ const Tl = ({
3663
3663
  ]
3664
3664
  ), V = (Q) => {
3665
3665
  $((H) => H.filter((Y, T) => T !== Q)), k(b);
3666
- }, { getRootProps: F, getInputProps: Z, isDragActive: ae, isDragReject: ue } = gr({
3666
+ }, { getRootProps: F, getInputProps: Z, isDragActive: ae, isDragReject: ue } = mr({
3667
3667
  onDrop: D,
3668
3668
  accept: t,
3669
3669
  multiple: r,
@@ -3862,7 +3862,7 @@ const ca = {
3862
3862
  }, ua = {
3863
3863
  filled: "bg-color-gray-100 border-color-gray-200",
3864
3864
  outlined: "border-color-gray-200 bg-color-transparent"
3865
- }, vr = Ye(
3865
+ }, gr = Ye(
3866
3866
  ({
3867
3867
  placeholder: e,
3868
3868
  value: n,
@@ -3905,11 +3905,11 @@ const ca = {
3905
3905
  ] });
3906
3906
  }
3907
3907
  );
3908
- vr.displayName = "TextInput";
3908
+ gr.displayName = "TextInput";
3909
3909
  const da = Ye((e, n) => {
3910
3910
  const [t, r] = K(!1);
3911
3911
  return /* @__PURE__ */ s.jsx(
3912
- vr,
3912
+ gr,
3913
3913
  {
3914
3914
  ...e,
3915
3915
  ref: n,
@@ -3928,7 +3928,7 @@ const da = Ye((e, n) => {
3928
3928
  );
3929
3929
  });
3930
3930
  da.displayName = "PasswordInput";
3931
- const xr = ({
3931
+ const vr = ({
3932
3932
  src: e,
3933
3933
  alt: n,
3934
3934
  size: t = "medium",
@@ -4005,7 +4005,7 @@ const xr = ({
4005
4005
  small: "text-xs px-2 py-1 gap-1",
4006
4006
  medium: "text-sm px-3 py-[0.35rem] gap-2",
4007
4007
  large: "text-base px-4 py-2 gap-2"
4008
- }, Hn = {
4008
+ }, Vn = {
4009
4009
  small: "!w-4 !h-4 text-xs",
4010
4010
  medium: "!w-5 !h-5 text-sm",
4011
4011
  large: "!w-6 !h-6 text-base"
@@ -4025,14 +4025,14 @@ const xr = ({
4025
4025
  }) => {
4026
4026
  var h, k;
4027
4027
  const p = (h = ve[n]) == null ? void 0 : h.filled, f = (k = ve[n]) == null ? void 0 : k.outline, v = pa[r], m = `inline-flex items-center rounded-full font-medium leading-none ${t === "outlined" ? `border ${f}` : p} ${v} ${a ? "cursor-pointer transition hover:opacity-80" : ""}`.trim(), w = /* @__PURE__ */ s.jsxs(s.Fragment, { children: [
4028
- d && /* @__PURE__ */ s.jsx(xr, { ...typeof d == "object" ? d : {}, className: `-ml-1 mr-1 ${Hn[r]}` }),
4028
+ d && /* @__PURE__ */ s.jsx(vr, { ...typeof d == "object" ? d : {}, className: `-ml-1 mr-1 ${Vn[r]}` }),
4029
4029
  g && /* @__PURE__ */ s.jsx("span", { className: "mr-1 -ml-1", children: g }),
4030
4030
  /* @__PURE__ */ s.jsx("span", { children: e }),
4031
4031
  i && /* @__PURE__ */ s.jsx(
4032
4032
  Re,
4033
4033
  {
4034
4034
  type: "button",
4035
- className: `ml-1 -mr-1 ${Hn[r]}`,
4035
+ className: `ml-1 -mr-1 ${Vn[r]}`,
4036
4036
  tabIndex: -1,
4037
4037
  onClick: (b) => {
4038
4038
  b.stopPropagation(), i(b);
@@ -4067,7 +4067,7 @@ const xr = ({
4067
4067
  number: r = "1234567890",
4068
4068
  className: o = ""
4069
4069
  }) => /* @__PURE__ */ s.jsxs("div", { className: o || "flex items-center gap-2 w-fit bg-color-transparent rounded-md p-1", children: [
4070
- /* @__PURE__ */ s.jsx(xr, { size: e, src: n, alt: `${t}'s profile` }),
4070
+ /* @__PURE__ */ s.jsx(vr, { size: e, src: n, alt: `${t}'s profile` }),
4071
4071
  /* @__PURE__ */ s.jsxs("div", { className: "flex flex-col", children: [
4072
4072
  /* @__PURE__ */ s.jsx("span", { className: "text-sm font-medium text-color-gray-800", children: t }),
4073
4073
  /* @__PURE__ */ s.jsx("span", { className: "text-xs text-color-gray-600", children: r })
@@ -4231,7 +4231,7 @@ function va(e, n, t, r) {
4231
4231
  return g;
4232
4232
  }
4233
4233
  const he = "debugHeaders";
4234
- function Bn(e, n, t) {
4234
+ function Hn(e, n, t) {
4235
4235
  var r;
4236
4236
  let a = {
4237
4237
  id: (r = t.id) != null ? r : n.id,
@@ -4312,7 +4312,7 @@ function at(e, n, t, r) {
4312
4312
  if (k && w.column.parent ? b = w.column.parent : (b = w.column, $ = !0), h && (h == null ? void 0 : h.column) === b)
4313
4313
  h.subHeaders.push(w);
4314
4314
  else {
4315
- const y = Bn(t, b, {
4315
+ const y = Hn(t, b, {
4316
4316
  id: [r, f, b.id, w == null ? void 0 : w.id].filter(Boolean).join("_"),
4317
4317
  isPlaceholder: $,
4318
4318
  placeholderId: $ ? `${m.filter((O) => O.column === b).length}` : void 0,
@@ -4323,7 +4323,7 @@ function at(e, n, t, r) {
4323
4323
  }
4324
4324
  v.headers.push(w), w.headerGroup = v;
4325
4325
  }), c.push(v), f > 0 && u(m, f - 1);
4326
- }, d = n.map((p, f) => Bn(t, p, {
4326
+ }, d = n.map((p, f) => Hn(t, p, {
4327
4327
  depth: i,
4328
4328
  index: f
4329
4329
  }));
@@ -4399,41 +4399,41 @@ const ha = (e, n, t, r, o, a, i) => {
4399
4399
  return e._getFacetedMinMaxValues();
4400
4400
  };
4401
4401
  }
4402
- }, hr = (e, n, t) => {
4402
+ }, xr = (e, n, t) => {
4403
4403
  var r, o;
4404
4404
  const a = t == null || (r = t.toString()) == null ? void 0 : r.toLowerCase();
4405
4405
  return !!(!((o = e.getValue(n)) == null || (o = o.toString()) == null || (o = o.toLowerCase()) == null) && o.includes(a));
4406
4406
  };
4407
- hr.autoRemove = (e) => Ce(e);
4408
- const wr = (e, n, t) => {
4407
+ xr.autoRemove = (e) => Ce(e);
4408
+ const hr = (e, n, t) => {
4409
4409
  var r;
4410
4410
  return !!(!((r = e.getValue(n)) == null || (r = r.toString()) == null) && r.includes(t));
4411
4411
  };
4412
- wr.autoRemove = (e) => Ce(e);
4413
- const br = (e, n, t) => {
4412
+ hr.autoRemove = (e) => Ce(e);
4413
+ const wr = (e, n, t) => {
4414
4414
  var r;
4415
4415
  return ((r = e.getValue(n)) == null || (r = r.toString()) == null ? void 0 : r.toLowerCase()) === (t == null ? void 0 : t.toLowerCase());
4416
4416
  };
4417
- br.autoRemove = (e) => Ce(e);
4418
- const yr = (e, n, t) => {
4417
+ wr.autoRemove = (e) => Ce(e);
4418
+ const br = (e, n, t) => {
4419
4419
  var r;
4420
4420
  return (r = e.getValue(n)) == null ? void 0 : r.includes(t);
4421
4421
  };
4422
- yr.autoRemove = (e) => Ce(e);
4423
- const Cr = (e, n, t) => !t.some((r) => {
4422
+ br.autoRemove = (e) => Ce(e);
4423
+ const yr = (e, n, t) => !t.some((r) => {
4424
4424
  var o;
4425
4425
  return !((o = e.getValue(n)) != null && o.includes(r));
4426
4426
  });
4427
- Cr.autoRemove = (e) => Ce(e) || !(e != null && e.length);
4428
- const Sr = (e, n, t) => t.some((r) => {
4427
+ yr.autoRemove = (e) => Ce(e) || !(e != null && e.length);
4428
+ const Cr = (e, n, t) => t.some((r) => {
4429
4429
  var o;
4430
4430
  return (o = e.getValue(n)) == null ? void 0 : o.includes(r);
4431
4431
  });
4432
- Sr.autoRemove = (e) => Ce(e) || !(e != null && e.length);
4433
- const jr = (e, n, t) => e.getValue(n) === t;
4432
+ Cr.autoRemove = (e) => Ce(e) || !(e != null && e.length);
4433
+ const Sr = (e, n, t) => e.getValue(n) === t;
4434
+ Sr.autoRemove = (e) => Ce(e);
4435
+ const jr = (e, n, t) => e.getValue(n) == t;
4434
4436
  jr.autoRemove = (e) => Ce(e);
4435
- const Rr = (e, n, t) => e.getValue(n) == t;
4436
- Rr.autoRemove = (e) => Ce(e);
4437
4437
  const an = (e, n, t) => {
4438
4438
  let [r, o] = t;
4439
4439
  const a = e.getValue(n);
@@ -4449,14 +4449,14 @@ an.resolveFilterValue = (e) => {
4449
4449
  };
4450
4450
  an.autoRemove = (e) => Ce(e) || Ce(e[0]) && Ce(e[1]);
4451
4451
  const ke = {
4452
- includesString: hr,
4453
- includesStringSensitive: wr,
4454
- equalsString: br,
4455
- arrIncludes: yr,
4456
- arrIncludesAll: Cr,
4457
- arrIncludesSome: Sr,
4458
- equals: jr,
4459
- weakEquals: Rr,
4452
+ includesString: xr,
4453
+ includesStringSensitive: hr,
4454
+ equalsString: wr,
4455
+ arrIncludes: br,
4456
+ arrIncludesAll: yr,
4457
+ arrIncludesSome: Cr,
4458
+ equals: Sr,
4459
+ weakEquals: jr,
4460
4460
  inNumberRange: an
4461
4461
  };
4462
4462
  function Ce(e) {
@@ -4497,7 +4497,7 @@ const ba = {
4497
4497
  }, e.setFilterValue = (t) => {
4498
4498
  n.setColumnFilters((r) => {
4499
4499
  const o = e.getFilterFn(), a = r == null ? void 0 : r.find((d) => d.id === e.id), i = Le(t, a ? a.value : void 0);
4500
- if (qn(o, i, e)) {
4500
+ if (Bn(o, i, e)) {
4501
4501
  var l;
4502
4502
  return (l = r == null ? void 0 : r.filter((d) => d.id !== e.id)) != null ? l : [];
4503
4503
  }
@@ -4524,7 +4524,7 @@ const ba = {
4524
4524
  const l = t.find((c) => c.id === i.id);
4525
4525
  if (l) {
4526
4526
  const c = l.getFilterFn();
4527
- if (qn(c, i.value, l))
4527
+ if (Bn(c, i.value, l))
4528
4528
  return !1;
4529
4529
  }
4530
4530
  return !0;
@@ -4537,7 +4537,7 @@ const ba = {
4537
4537
  }, e.getPreFilteredRowModel = () => e.getCoreRowModel(), e.getFilteredRowModel = () => (!e._getFilteredRowModel && e.options.getFilteredRowModel && (e._getFilteredRowModel = e.options.getFilteredRowModel(e)), e.options.manualFiltering || !e._getFilteredRowModel ? e.getPreFilteredRowModel() : e._getFilteredRowModel());
4538
4538
  }
4539
4539
  };
4540
- function qn(e, n, t) {
4540
+ function Bn(e, n, t) {
4541
4541
  return (e && e.autoRemove ? e.autoRemove(n, t) : !1) || typeof n > "u" || typeof n == "string" && !n;
4542
4542
  }
4543
4543
  const ya = (e, n, t) => t.reduce((r, o) => {
@@ -5453,7 +5453,7 @@ function en(e, n, t) {
5453
5453
  }
5454
5454
  }), o ? "all" : a ? "some" : !1;
5455
5455
  }
5456
- const tn = /([0-9]+)/gm, Ba = (e, n, t) => kr(Me(e.getValue(t)).toLowerCase(), Me(n.getValue(t)).toLowerCase()), qa = (e, n, t) => kr(Me(e.getValue(t)), Me(n.getValue(t))), Ga = (e, n, t) => sn(Me(e.getValue(t)).toLowerCase(), Me(n.getValue(t)).toLowerCase()), Wa = (e, n, t) => sn(Me(e.getValue(t)), Me(n.getValue(t))), Ua = (e, n, t) => {
5456
+ const tn = /([0-9]+)/gm, Ba = (e, n, t) => Rr(Me(e.getValue(t)).toLowerCase(), Me(n.getValue(t)).toLowerCase()), qa = (e, n, t) => Rr(Me(e.getValue(t)), Me(n.getValue(t))), Ga = (e, n, t) => sn(Me(e.getValue(t)).toLowerCase(), Me(n.getValue(t)).toLowerCase()), Wa = (e, n, t) => sn(Me(e.getValue(t)), Me(n.getValue(t))), Ua = (e, n, t) => {
5457
5457
  const r = e.getValue(t), o = n.getValue(t);
5458
5458
  return r > o ? 1 : r < o ? -1 : 0;
5459
5459
  }, Ya = (e, n, t) => sn(e.getValue(t), n.getValue(t));
@@ -5463,7 +5463,7 @@ function sn(e, n) {
5463
5463
  function Me(e) {
5464
5464
  return typeof e == "number" ? isNaN(e) || e === 1 / 0 || e === -1 / 0 ? "" : String(e) : typeof e == "string" ? e : "";
5465
5465
  }
5466
- function kr(e, n) {
5466
+ function Rr(e, n) {
5467
5467
  const t = e.split(tn).filter(Boolean), r = n.split(tn).filter(Boolean);
5468
5468
  for (; t.length && r.length; ) {
5469
5469
  const o = t.shift(), a = r.shift(), i = parseInt(o, 10), l = parseInt(a, 10), c = [i, l].sort();
@@ -6044,7 +6044,7 @@ const ei = {
6044
6044
  }
6045
6045
  ),
6046
6046
  n && /* @__PURE__ */ s.jsx("span", { className: "text-xs text-color-red-500", children: n })
6047
- ] }), Gn = {
6047
+ ] }), qn = {
6048
6048
  small: { track: "h-1", thumb: "w-3 h-3" },
6049
6049
  medium: { track: "h-2", thumb: "w-4 h-4" },
6050
6050
  large: { track: "h-3", thumb: "w-5 h-5" }
@@ -6096,7 +6096,7 @@ const Ul = Zr(function({
6096
6096
  range: m = !1,
6097
6097
  minDistance: w = 0
6098
6098
  }) {
6099
- const h = n !== void 0, [k, b] = K(() => t !== void 0 ? t : m ? [a, i] : a), $ = h ? n : k, y = Array.isArray($) ? $[0] : $, [O, D] = Array.isArray($) ? $ : [$, $], V = qt[c] || qt.blue, F = Gn[u] ?? Gn.medium, Z = oe(
6099
+ const h = n !== void 0, [k, b] = K(() => t !== void 0 ? t : m ? [a, i] : a), $ = h ? n : k, y = Array.isArray($) ? $[0] : $, [O, D] = Array.isArray($) ? $ : [$, $], V = qt[c] || qt.blue, F = qn[u] ?? qn.medium, Z = oe(
6100
6100
  (_) => (_ - a) / (i - a) * 100,
6101
6101
  [a, i]
6102
6102
  ), ae = Z(y), ue = Z(O), Q = Z(D), H = oe((_) => Math.max(a, Math.min(i, _)), [a, i]), Y = oe((_) => Math.round(_ / l) * l, [l]), T = oi(r), te = oe(
@@ -6549,7 +6549,7 @@ const Ul = Zr(function({
6549
6549
  )
6550
6550
  }
6551
6551
  );
6552
- }, Wn = /* @__PURE__ */ s.jsx("svg", { className: "w-5 h-5 fill-color-yellow-500", fill: "currentColor", viewBox: "0 0 20 20", children: /* @__PURE__ */ s.jsx("path", { d: "M10 15l-5.878 3.09 1.122-6.545L.488 6.91l6.561-.955L10 0l2.951 5.955 6.561.955-4.756 4.635 1.122 6.545z" }) }), Un = /* @__PURE__ */ s.jsx("svg", { className: "w-5 h-5 fill-color-gray-300", fill: "none", stroke: "currentColor", viewBox: "0 0 20 20", children: /* @__PURE__ */ s.jsx("path", { d: "M10 15l-5.878 3.09 1.122-6.545L.488 6.91l6.561-.955L10 0l2.951 5.955 6.561.955-4.756 4.635 1.122 6.545z" }) }), st = {
6552
+ }, Gn = /* @__PURE__ */ s.jsx("svg", { className: "w-5 h-5 fill-color-yellow-500", fill: "currentColor", viewBox: "0 0 20 20", children: /* @__PURE__ */ s.jsx("path", { d: "M10 15l-5.878 3.09 1.122-6.545L.488 6.91l6.561-.955L10 0l2.951 5.955 6.561.955-4.756 4.635 1.122 6.545z" }) }), Wn = /* @__PURE__ */ s.jsx("svg", { className: "w-5 h-5 fill-color-gray-300", fill: "none", stroke: "currentColor", viewBox: "0 0 20 20", children: /* @__PURE__ */ s.jsx("path", { d: "M10 15l-5.878 3.09 1.122-6.545L.488 6.91l6.561-.955L10 0l2.951 5.955 6.561.955-4.756 4.635 1.122 6.545z" }) }), st = {
6553
6553
  small: "w-4 h-4",
6554
6554
  medium: "w-6 h-6",
6555
6555
  large: "w-8 h-8"
@@ -6581,7 +6581,7 @@ const Ul = Zr(function({
6581
6581
  V = Math.min(a, Math.max(o, Math.round(V / o) * o)), v(V);
6582
6582
  }, h = () => v(null), k = [];
6583
6583
  for (let b = 1; b <= a; b++) {
6584
- let $ = (f !== null ? f : e) >= b, y = !$ && (f !== null ? f : e) > b - 1, O = $ ? l || je.cloneElement(Wn, { className: `fill-color-yellow-500 ${st[i]}` }) : c || je.cloneElement(Un, { className: `stroke-color-gray-300 ${st[i]}` });
6584
+ let $ = (f !== null ? f : e) >= b, y = !$ && (f !== null ? f : e) > b - 1, O = $ ? l || je.cloneElement(Gn, { className: `fill-color-yellow-500 ${st[i]}` }) : c || je.cloneElement(Wn, { className: `stroke-color-gray-300 ${st[i]}` });
6585
6585
  if (y) {
6586
6586
  const D = ((f !== null ? f : e) - (b - 1)) * 100;
6587
6587
  O = /* @__PURE__ */ s.jsxs("span", { className: "relative block", children: [
@@ -6590,12 +6590,12 @@ const Ul = Zr(function({
6590
6590
  {
6591
6591
  className: "absolute top-0 left-0 overflow-hidden",
6592
6592
  style: { width: `${D}%` },
6593
- children: l || je.cloneElement(Wn, {
6593
+ children: l || je.cloneElement(Gn, {
6594
6594
  className: `fill-color-yellow-500 ${st[i]}`
6595
6595
  })
6596
6596
  }
6597
6597
  ),
6598
- c || je.cloneElement(Un, {
6598
+ c || je.cloneElement(Wn, {
6599
6599
  className: `stroke-color-gray-300 ${st[i]}`
6600
6600
  })
6601
6601
  ] });
@@ -6959,17 +6959,17 @@ const Ul = Zr(function({
6959
6959
  })
6960
6960
  }
6961
6961
  );
6962
- }, Yn = {
6962
+ }, Un = {
6963
6963
  small: "p-2",
6964
6964
  medium: "p-4",
6965
6965
  large: "p-6",
6966
6966
  none: "p-0"
6967
- }, Zn = {
6967
+ }, Yn = {
6968
6968
  default: "shadow-xs",
6969
6969
  small: "shadow-sm",
6970
6970
  medium: "shadow-md",
6971
6971
  large: "shadow-lg"
6972
- }, Kn = {
6972
+ }, Zn = {
6973
6973
  small: "rounded-md",
6974
6974
  medium: "rounded-xl",
6975
6975
  large: "rounded-2xl"
@@ -6994,9 +6994,9 @@ const Ul = Zr(function({
6994
6994
  "bg-white",
6995
6995
  "overflow-hidden",
6996
6996
  "w-full",
6997
- Yn[t] || Yn.medium,
6998
- Zn[r] || Zn.small,
6999
- Kn[o] || Kn.medium,
6997
+ Un[t] || Un.medium,
6998
+ Yn[r] || Yn.small,
6999
+ Zn[o] || Zn.medium,
7000
7000
  d ? "hover:shadow-xl transition-shadow duration-300 cursor-pointer" : "",
7001
7001
  g ? "border border-color-gray-200" : "",
7002
7002
  u
@@ -7213,7 +7213,7 @@ const si = {
7213
7213
  const [g, p] = K(e || !1), [f, v] = K(!1), [m, w] = K(!1);
7214
7214
  ce(() => {
7215
7215
  e !== void 0 && p(e);
7216
- }, [e]), tr(d, () => ({
7216
+ }, [e]), er(d, () => ({
7217
7217
  open: () => p(!0),
7218
7218
  close: () => {
7219
7219
  w(!1), setTimeout(() => p(!1), 300);
@@ -7571,1605 +7571,1604 @@ const di = ({
7571
7571
  }
7572
7572
  )
7573
7573
  ] });
7574
- };
7575
- /**
7576
- * react-router v7.7.1
7577
- *
7578
- * Copyright (c) Remix Software Inc.
7579
- *
7580
- * This source code is licensed under the MIT license found in the
7581
- * LICENSE.md file in the root directory of this source tree.
7582
- *
7583
- * @license MIT
7584
- */
7585
- function xe(e, n) {
7586
- if (e === !1 || e === null || typeof e > "u")
7587
- throw new Error(n);
7588
- }
7589
- function _e(e, n) {
7590
- if (!e) {
7591
- typeof console < "u" && console.warn(n);
7592
- try {
7593
- throw new Error(n);
7594
- } catch {
7595
- }
7596
- }
7597
- }
7598
- function nn({
7599
- pathname: e = "/",
7600
- search: n = "",
7601
- hash: t = ""
7602
- }) {
7603
- return n && n !== "?" && (e += n.charAt(0) === "?" ? n : "?" + n), t && t !== "#" && (e += t.charAt(0) === "#" ? t : "#" + t), e;
7604
- }
7605
- function cn(e) {
7606
- let n = {};
7607
- if (e) {
7608
- let t = e.indexOf("#");
7609
- t >= 0 && (n.hash = e.substring(t), e = e.substring(0, t));
7610
- let r = e.indexOf("?");
7611
- r >= 0 && (n.search = e.substring(r), e = e.substring(0, r)), e && (n.pathname = e);
7612
- }
7613
- return n;
7614
- }
7615
- function $r(e, n, t = "/") {
7616
- return gi(e, n, t, !1);
7617
- }
7618
- function gi(e, n, t, r) {
7619
- let o = typeof n == "string" ? cn(n) : n, a = Fe(o.pathname || "/", t);
7620
- if (a == null)
7621
- return null;
7622
- let i = _r(e);
7623
- vi(i);
7624
- let l = null;
7625
- for (let c = 0; l == null && c < i.length; ++c) {
7626
- let u = $i(a);
7627
- l = Ri(
7628
- i[c],
7629
- u,
7630
- r
7631
- );
7632
- }
7633
- return l;
7634
- }
7635
- function _r(e, n = [], t = [], r = "") {
7636
- let o = (a, i, l) => {
7637
- let c = {
7638
- relativePath: l === void 0 ? a.path || "" : l,
7639
- caseSensitive: a.caseSensitive === !0,
7640
- childrenIndex: i,
7641
- route: a
7642
- };
7643
- c.relativePath.startsWith("/") && (xe(
7644
- c.relativePath.startsWith(r),
7645
- `Absolute route path "${c.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`
7646
- ), c.relativePath = c.relativePath.slice(r.length));
7647
- let u = $e([r, c.relativePath]), d = t.concat(c);
7648
- a.children && a.children.length > 0 && (xe(
7649
- // Our types know better, but runtime JS may not!
7650
- // @ts-expect-error
7651
- a.index !== !0,
7652
- `Index routes must not have child routes. Please remove all child routes from route path "${u}".`
7653
- ), _r(a.children, n, d, u)), !(a.path == null && !a.index) && n.push({
7654
- path: u,
7655
- score: Si(u, a.index),
7656
- routesMeta: d
7657
- });
7658
- };
7659
- return e.forEach((a, i) => {
7660
- var l;
7661
- if (a.path === "" || !((l = a.path) != null && l.includes("?")))
7662
- o(a, i);
7663
- else
7664
- for (let c of Er(a.path))
7665
- o(a, i, c);
7666
- }), n;
7667
- }
7668
- function Er(e) {
7669
- let n = e.split("/");
7670
- if (n.length === 0) return [];
7671
- let [t, ...r] = n, o = t.endsWith("?"), a = t.replace(/\?$/, "");
7672
- if (r.length === 0)
7673
- return o ? [a, ""] : [a];
7674
- let i = Er(r.join("/")), l = [];
7675
- return l.push(
7676
- ...i.map(
7677
- (c) => c === "" ? a : [a, c].join("/")
7678
- )
7679
- ), o && l.push(...i), l.map(
7680
- (c) => e.startsWith("/") && c === "" ? "/" : c
7681
- );
7682
- }
7683
- function vi(e) {
7684
- e.sort(
7685
- (n, t) => n.score !== t.score ? t.score - n.score : ji(
7686
- n.routesMeta.map((r) => r.childrenIndex),
7687
- t.routesMeta.map((r) => r.childrenIndex)
7688
- )
7689
- );
7690
- }
7691
- var xi = /^:[\w-]+$/, hi = 3, wi = 2, bi = 1, yi = 10, Ci = -2, Xn = (e) => e === "*";
7692
- function Si(e, n) {
7693
- let t = e.split("/"), r = t.length;
7694
- return t.some(Xn) && (r += Ci), n && (r += wi), t.filter((o) => !Xn(o)).reduce(
7695
- (o, a) => o + (xi.test(a) ? hi : a === "" ? bi : yi),
7696
- r
7697
- );
7698
- }
7699
- function ji(e, n) {
7700
- return e.length === n.length && e.slice(0, -1).every((r, o) => r === n[o]) ? (
7701
- // If two routes are siblings, we should try to match the earlier sibling
7702
- // first. This allows people to have fine-grained control over the matching
7703
- // behavior by simply putting routes with identical paths in the order they
7704
- // want them tried.
7705
- e[e.length - 1] - n[n.length - 1]
7706
- ) : (
7707
- // Otherwise, it doesn't really make sense to rank non-siblings by index,
7708
- // so they sort equally.
7709
- 0
7710
- );
7711
- }
7712
- function Ri(e, n, t = !1) {
7713
- let { routesMeta: r } = e, o = {}, a = "/", i = [];
7714
- for (let l = 0; l < r.length; ++l) {
7715
- let c = r[l], u = l === r.length - 1, d = a === "/" ? n : n.slice(a.length) || "/", g = gt(
7716
- { path: c.relativePath, caseSensitive: c.caseSensitive, end: u },
7717
- d
7718
- ), p = c.route;
7719
- if (!g && u && t && !r[r.length - 1].route.index && (g = gt(
7574
+ }, cs = ({
7575
+ variant: e = "fixed",
7576
+ activeTab: n,
7577
+ navItems: t,
7578
+ onTabChange: r,
7579
+ className: o = "",
7580
+ activeClass: a = "",
7581
+ buttonClass: i = ""
7582
+ }) => {
7583
+ let l = "flex justify-around items-center bg-color-white shadow-sm text-color-gray-600 py-2 px-4";
7584
+ return e === "fixed" ? l += " fixed bottom-0 left-0 right-0" : e === "floating" ? l += " fixed bottom-4 left-4 right-4 rounded-full" : e === "static" && (l += " static"), /* @__PURE__ */ s.jsx("nav", { className: `${l} ${o}`, children: t.map((c) => {
7585
+ const u = c.label === n;
7586
+ return /* @__PURE__ */ s.jsxs(
7587
+ "a",
7720
7588
  {
7721
- path: c.relativePath,
7722
- caseSensitive: c.caseSensitive,
7723
- end: !1
7724
- },
7725
- d
7726
- )), !g)
7727
- return null;
7728
- Object.assign(o, g.params), i.push({
7729
- // TODO: Can this as be avoided?
7730
- params: o,
7731
- pathname: $e([a, g.pathname]),
7732
- pathnameBase: Li(
7733
- $e([a, g.pathnameBase])
7734
- ),
7735
- route: p
7736
- }), g.pathnameBase !== "/" && (a = $e([a, g.pathnameBase]));
7737
- }
7738
- return i;
7739
- }
7740
- function gt(e, n) {
7741
- typeof e == "string" && (e = { path: e, caseSensitive: !1, end: !0 });
7742
- let [t, r] = ki(
7743
- e.path,
7744
- e.caseSensitive,
7745
- e.end
7746
- ), o = n.match(t);
7747
- if (!o) return null;
7748
- let a = o[0], i = a.replace(/(.)\/+$/, "$1"), l = o.slice(1);
7749
- return {
7750
- params: r.reduce(
7751
- (u, { paramName: d, isOptional: g }, p) => {
7752
- if (d === "*") {
7753
- let v = l[p] || "";
7754
- i = a.slice(0, a.length - v.length).replace(/(.)\/+$/, "$1");
7755
- }
7756
- const f = l[p];
7757
- return g && !f ? u[d] = void 0 : u[d] = (f || "").replace(/%2F/g, "/"), u;
7589
+ href: c.path,
7590
+ onClick: () => r(c.label),
7591
+ className: `flex flex-col items-center text-sm cursor-pointer text-color-gray-500 no-underline ${i}`,
7592
+ children: [
7593
+ /* @__PURE__ */ s.jsx("span", { className: `text-xl ${u ? `text-color-blue-500 ${a}` : ""}`, children: c.icon }),
7594
+ /* @__PURE__ */ s.jsx("span", { className: `text-xs font-medium mt-1 ${u ? `text-color-blue-500 ${a}` : ""}`, children: c.label })
7595
+ ]
7758
7596
  },
7759
- {}
7760
- ),
7761
- pathname: a,
7762
- pathnameBase: i,
7763
- pattern: e
7764
- };
7765
- }
7766
- function ki(e, n = !1, t = !0) {
7767
- _e(
7768
- e === "*" || !e.endsWith("*") || e.endsWith("/*"),
7769
- `Route path "${e}" will be treated as if it were "${e.replace(/\*$/, "/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/, "/*")}".`
7770
- );
7771
- let r = [], o = "^" + e.replace(/\/*\*?$/, "").replace(/^\/*/, "/").replace(/[\\.*+^${}|()[\]]/g, "\\$&").replace(
7772
- /\/:([\w-]+)(\?)?/g,
7773
- (i, l, c) => (r.push({ paramName: l, isOptional: c != null }), c ? "/?([^\\/]+)?" : "/([^\\/]+)")
7774
- );
7775
- return e.endsWith("*") ? (r.push({ paramName: "*" }), o += e === "*" || e === "/*" ? "(.*)$" : "(?:\\/(.+)|\\/*)$") : t ? o += "\\/*$" : e !== "" && e !== "/" && (o += "(?:(?=\\/|$))"), [new RegExp(o, n ? void 0 : "i"), r];
7776
- }
7777
- function $i(e) {
7778
- try {
7779
- return e.split("/").map((n) => decodeURIComponent(n).replace(/\//g, "%2F")).join("/");
7780
- } catch (n) {
7781
- return _e(
7782
- !1,
7783
- `The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${n}).`
7784
- ), e;
7785
- }
7786
- }
7787
- function Fe(e, n) {
7788
- if (n === "/") return e;
7789
- if (!e.toLowerCase().startsWith(n.toLowerCase()))
7790
- return null;
7791
- let t = n.endsWith("/") ? n.length - 1 : n.length, r = e.charAt(t);
7792
- return r && r !== "/" ? null : e.slice(t) || "/";
7793
- }
7794
- function _i(e, n = "/") {
7795
- let {
7796
- pathname: t,
7797
- search: r = "",
7798
- hash: o = ""
7799
- } = typeof e == "string" ? cn(e) : e;
7800
- return {
7801
- pathname: t ? t.startsWith("/") ? t : Ei(t, n) : n,
7802
- search: Mi(r),
7803
- hash: Fi(o)
7597
+ c.label
7598
+ );
7599
+ }) });
7600
+ }, us = ({ items: e, separator: n = "/", className: t = "" }) => /* @__PURE__ */ s.jsx("nav", { className: `text-sm text-color-gray-600 ${t}`, "aria-label": "Breadcrumb", children: /* @__PURE__ */ s.jsx("ol", { className: "flex items-center space-x-1", children: e.map((r, o) => /* @__PURE__ */ s.jsxs("li", { className: "flex items-center", children: [
7601
+ r.href ? /* @__PURE__ */ s.jsx(
7602
+ "a",
7603
+ {
7604
+ href: r.href,
7605
+ className: "text-color-gray-800 hover:underline font-medium",
7606
+ children: r.label
7607
+ }
7608
+ ) : /* @__PURE__ */ s.jsx("span", { className: "text-color-gray-500 font-medium", children: r.label }),
7609
+ o < e.length - 1 && /* @__PURE__ */ s.jsx("span", { className: "mx-2 text-color-gray-400", children: n })
7610
+ ] }, o)) }) }), Kn = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], gi = ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"], ds = ({
7611
+ mode: e = "single",
7612
+ type: n = "inline",
7613
+ showTime: t = !1,
7614
+ onlyTime: r = !1,
7615
+ className: o,
7616
+ onChange: a,
7617
+ placeholder: i = "Select date",
7618
+ icon: l = /* @__PURE__ */ s.jsx("svg", { className: "text-color-gray-500 size-5", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ s.jsx("path", { d: "M7 3V1H9V3H15V1H17V3H21C21.5523 3 22 3.44772 22 4V9H20V5H17V7H15V5H9V7H7V5H4V19H10V21H3C2.44772 21 2 20.5523 2 20V4C2 3.44772 2.44772 3 3 3H7ZM17 12C14.7909 12 13 13.7909 13 16C13 18.2091 14.7909 20 17 20C19.2091 20 21 18.2091 21 16C21 13.7909 19.2091 12 17 12ZM11 16C11 12.6863 13.6863 10 17 10C20.3137 10 23 12.6863 23 16C23 19.3137 20.3137 22 17 22C13.6863 22 11 19.3137 11 16ZM16 13V16.4142L18.2929 18.7071L19.7071 17.2929L18 15.5858V13H16Z" }) }),
7619
+ disableBefore: c,
7620
+ disableAfter: u,
7621
+ selectedDate: d
7622
+ }) => {
7623
+ const [g, p] = K(!1), [f, v] = K(null), [m, w] = K(/* @__PURE__ */ new Date()), [h, k] = K(
7624
+ d ? new Date(d) : null
7625
+ ), [b, $] = K(null), [y, O] = K(null), [D, V] = K(null), [F, Z] = K({ hour: 12, minute: 0, ampm: "AM" }), ae = se(null), [ue, Q] = K(
7626
+ d ? new Date(d) : null
7627
+ ), [H, Y] = K(null), [T, te] = K(null);
7628
+ ce(() => {
7629
+ k(d ? new Date(d) : null), Q(d ? new Date(d) : null);
7630
+ }, [d]);
7631
+ const pe = (S) => {
7632
+ S.stopPropagation(), v(S.currentTarget), p(!0);
7633
+ }, X = () => {
7634
+ p(!1);
7635
+ }, x = (S) => !!(c && S.getTime() < c || u && S.getTime() > u), C = (S) => {
7636
+ n === "inline" && ae.current && !ae.current.contains(S.target) && (e === "single" ? h || k(null) : e === "range" && (!b || !y) && ($(null), O(null)), p(!1));
7804
7637
  };
7805
- }
7806
- function Ei(e, n) {
7807
- let t = n.replace(/\/+$/, "").split("/");
7808
- return e.split("/").forEach((o) => {
7809
- o === ".." ? t.length > 1 && t.pop() : o !== "." && t.push(o);
7810
- }), t.length > 1 ? t.join("/") : "/";
7811
- }
7812
- function Ht(e, n, t, r) {
7813
- return `Cannot include a '${e}' character in a manually specified \`to.${n}\` field [${JSON.stringify(
7814
- r
7815
- )}]. Please separate it out to the \`to.${t}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`;
7816
- }
7817
- function Pi(e) {
7818
- return e.filter(
7819
- (n, t) => t === 0 || n.route.path && n.route.path.length > 0
7820
- );
7821
- }
7822
- function Pr(e) {
7823
- let n = Pi(e);
7824
- return n.map(
7825
- (t, r) => r === n.length - 1 ? t.pathname : t.pathnameBase
7826
- );
7827
- }
7828
- function Lr(e, n, t, r = !1) {
7829
- let o;
7830
- typeof e == "string" ? o = cn(e) : (o = { ...e }, xe(
7831
- !o.pathname || !o.pathname.includes("?"),
7832
- Ht("?", "pathname", "search", o)
7833
- ), xe(
7834
- !o.pathname || !o.pathname.includes("#"),
7835
- Ht("#", "pathname", "hash", o)
7836
- ), xe(
7837
- !o.search || !o.search.includes("#"),
7838
- Ht("#", "search", "hash", o)
7839
- ));
7840
- let a = e === "" || o.pathname === "", i = a ? "/" : o.pathname, l;
7841
- if (i == null)
7842
- l = t;
7843
- else {
7844
- let g = n.length - 1;
7845
- if (!r && i.startsWith("..")) {
7846
- let p = i.split("/");
7847
- for (; p[0] === ".."; )
7848
- p.shift(), g -= 1;
7849
- o.pathname = p.join("/");
7638
+ ce(() => (g ? document.addEventListener("mousedown", C) : document.removeEventListener("mousedown", C), () => {
7639
+ document.removeEventListener("mousedown", C);
7640
+ }), [g]);
7641
+ const M = (S) => {
7642
+ !S || x(S) || (e === "single" ? k(S) : e === "range" && (!b || b && y ? ($(S), O(null)) : S >= b ? O(S) : $(S)));
7643
+ }, L = (S) => {
7644
+ if (!S || x(S)) {
7645
+ V(null);
7646
+ return;
7850
7647
  }
7851
- l = g >= 0 ? n[g] : "/";
7852
- }
7853
- let c = _i(o, l), u = i && i !== "/" && i.endsWith("/"), d = (a || i === ".") && t.endsWith("/");
7854
- return !c.pathname.endsWith("/") && (u || d) && (c.pathname += "/"), c;
7855
- }
7856
- var $e = (e) => e.join("/").replace(/\/\/+/g, "/"), Li = (e) => e.replace(/\/+$/, "").replace(/^\/*/, "/"), Mi = (e) => !e || e === "?" ? "" : e.startsWith("?") ? e : "?" + e, Fi = (e) => !e || e === "#" ? "" : e.startsWith("#") ? e : "#" + e;
7857
- function Ai(e) {
7858
- return e != null && typeof e.status == "number" && typeof e.statusText == "string" && typeof e.internal == "boolean" && "data" in e;
7859
- }
7860
- var Mr = [
7861
- "POST",
7862
- "PUT",
7863
- "PATCH",
7864
- "DELETE"
7865
- ];
7866
- new Set(
7867
- Mr
7868
- );
7869
- var Ni = [
7870
- "GET",
7871
- ...Mr
7872
- ];
7873
- new Set(Ni);
7874
- var Ie = R.createContext(null);
7875
- Ie.displayName = "DataRouter";
7876
- var xt = R.createContext(null);
7877
- xt.displayName = "DataRouterState";
7878
- R.createContext(!1);
7879
- var Fr = R.createContext({
7880
- isTransitioning: !1
7881
- });
7882
- Fr.displayName = "ViewTransition";
7883
- var Di = R.createContext(
7884
- /* @__PURE__ */ new Map()
7885
- );
7886
- Di.displayName = "Fetchers";
7887
- var zi = R.createContext(null);
7888
- zi.displayName = "Await";
7889
- var Ee = R.createContext(
7890
- null
7891
- );
7892
- Ee.displayName = "Navigation";
7893
- var un = R.createContext(
7894
- null
7895
- );
7896
- un.displayName = "Location";
7897
- var Pe = R.createContext({
7898
- outlet: null,
7899
- matches: [],
7900
- isDataRoute: !1
7901
- });
7902
- Pe.displayName = "Route";
7903
- var dn = R.createContext(null);
7904
- dn.displayName = "RouteError";
7905
- function Ti(e, { relative: n } = {}) {
7906
- xe(
7907
- ht(),
7908
- // TODO: This error is probably because they somehow have 2 versions of the
7909
- // router loaded. We can help them understand how to avoid that.
7910
- "useHref() may be used only in the context of a <Router> component."
7911
- );
7912
- let { basename: t, navigator: r } = R.useContext(Ee), { hash: o, pathname: a, search: i } = Ke(e, { relative: n }), l = a;
7913
- return t !== "/" && (l = a === "/" ? t : $e([t, a])), r.createHref({ pathname: l, search: i, hash: o });
7914
- }
7915
- function ht() {
7916
- return R.useContext(un) != null;
7917
- }
7918
- function De() {
7919
- return xe(
7920
- ht(),
7921
- // TODO: This error is probably because they somehow have 2 versions of the
7922
- // router loaded. We can help them understand how to avoid that.
7923
- "useLocation() may be used only in the context of a <Router> component."
7924
- ), R.useContext(un).location;
7925
- }
7926
- var Ar = "You should call navigate() in a React.useEffect(), not when your component is first rendered.";
7927
- function Nr(e) {
7928
- R.useContext(Ee).static || R.useLayoutEffect(e);
7929
- }
7930
- function Oi() {
7931
- let { isDataRoute: e } = R.useContext(Pe);
7932
- return e ? Ji() : Ii();
7933
- }
7934
- function Ii() {
7935
- xe(
7936
- ht(),
7937
- // TODO: This error is probably because they somehow have 2 versions of the
7938
- // router loaded. We can help them understand how to avoid that.
7939
- "useNavigate() may be used only in the context of a <Router> component."
7940
- );
7941
- let e = R.useContext(Ie), { basename: n, navigator: t } = R.useContext(Ee), { matches: r } = R.useContext(Pe), { pathname: o } = De(), a = JSON.stringify(Pr(r)), i = R.useRef(!1);
7942
- return Nr(() => {
7943
- i.current = !0;
7944
- }), R.useCallback(
7945
- (c, u = {}) => {
7946
- if (_e(i.current, Ar), !i.current) return;
7947
- if (typeof c == "number") {
7948
- t.go(c);
7949
- return;
7648
+ e === "range" && b && !y && V(S);
7649
+ }, N = () => {
7650
+ V(null);
7651
+ }, I = () => {
7652
+ if (p(!1), e === "single") {
7653
+ const S = r ? /* @__PURE__ */ new Date() : h, j = S ? new Date(
7654
+ S.getFullYear(),
7655
+ S.getMonth(),
7656
+ S.getDate(),
7657
+ F.ampm === "PM" && F.hour !== 12 ? F.hour + 12 : F.ampm === "AM" && F.hour === 12 ? 0 : F.hour,
7658
+ F.minute
7659
+ ) : null;
7660
+ Q(j), a == null || a(j ? j.getTime() : null);
7661
+ } else e === "range" && (Y(b), te(y), a == null || a({
7662
+ startDate: b ? b.getTime() : null,
7663
+ endDate: y ? y.getTime() : null
7664
+ }));
7665
+ }, z = () => {
7666
+ const S = new Date(m.getFullYear(), m.getMonth(), 1), j = new Date(m.getFullYear(), m.getMonth() + 1, 0), _ = [], J = S.getDay();
7667
+ for (let ee = 0; ee < J; ee++)
7668
+ _.push(null);
7669
+ for (let ee = 1; ee <= j.getDate(); ee++)
7670
+ _.push(new Date(m.getFullYear(), m.getMonth(), ee));
7671
+ return _;
7672
+ }, E = (S) => {
7673
+ if (!S) return !1;
7674
+ if (e === "single")
7675
+ return (h == null ? void 0 : h.toDateString()) === S.toDateString();
7676
+ if (e === "range") {
7677
+ if (b && !y && D) {
7678
+ const j = b < D ? b : D, _ = b < D ? D : b;
7679
+ return S >= j && S <= _;
7680
+ }
7681
+ return b && y && S >= b && S <= y;
7682
+ }
7683
+ return !1;
7684
+ }, P = (S, j) => {
7685
+ if (!S)
7686
+ return e === "range" ? j === "end" ? "End Date" : "Start Date" : r ? `${String(F.hour).padStart(2, "0")}:${String(F.minute).padStart(2, "0")} ${F.ampm}` : i;
7687
+ if (r)
7688
+ return `${String(F.hour).padStart(2, "0")}:${String(F.minute).padStart(2, "0")} ${F.ampm}`;
7689
+ const _ = S.getDate().toString().padStart(2, "0"), J = Kn[S.getMonth()], ee = S.getFullYear(), de = t ? ` ${String(F.hour).padStart(2, "0")}:${String(F.minute).padStart(2, "0")} ${F.ampm}` : "";
7690
+ return `${_} ${J} ${ee}${de}`;
7691
+ }, B = /* @__PURE__ */ s.jsxs("div", { className: "flex items-center justify-between w-full border border-color-gray-300 rounded-md p-2", children: [
7692
+ /* @__PURE__ */ s.jsx(
7693
+ "select",
7694
+ {
7695
+ value: F.hour,
7696
+ onChange: (S) => Z({ ...F, hour: parseInt(S.target.value) }),
7697
+ className: "w-16 border-0 text-center bg-color-transparent outline-0",
7698
+ children: Array.from({ length: 12 }, (S, j) => j + 1).map((S) => /* @__PURE__ */ s.jsx("option", { value: S, children: S.toString().padStart(2, "0") }, S))
7950
7699
  }
7951
- let d = Lr(
7952
- c,
7953
- JSON.parse(a),
7954
- o,
7955
- u.relative === "path"
7956
- );
7957
- e == null && n !== "/" && (d.pathname = d.pathname === "/" ? n : $e([n, d.pathname])), (u.replace ? t.replace : t.push)(
7958
- d,
7959
- u.state,
7960
- u
7961
- );
7962
- },
7963
- [
7964
- n,
7965
- t,
7966
- a,
7967
- o,
7968
- e
7969
- ]
7970
- );
7971
- }
7972
- R.createContext(null);
7973
- function Ke(e, { relative: n } = {}) {
7974
- let { matches: t } = R.useContext(Pe), { pathname: r } = De(), o = JSON.stringify(Pr(t));
7975
- return R.useMemo(
7976
- () => Lr(
7977
- e,
7978
- JSON.parse(o),
7979
- r,
7980
- n === "path"
7981
- ),
7982
- [e, o, r, n]
7983
- );
7984
- }
7985
- function Vi(e, n, t, r) {
7986
- xe(
7987
- ht(),
7988
- // TODO: This error is probably because they somehow have 2 versions of the
7989
- // router loaded. We can help them understand how to avoid that.
7990
- "useRoutes() may be used only in the context of a <Router> component."
7991
- );
7992
- let { navigator: o } = R.useContext(Ee), { matches: a } = R.useContext(Pe), i = a[a.length - 1], l = i ? i.params : {}, c = i ? i.pathname : "/", u = i ? i.pathnameBase : "/", d = i && i.route;
7993
- {
7994
- let h = d && d.path || "";
7995
- Dr(
7996
- c,
7997
- !d || h.endsWith("*") || h.endsWith("*?"),
7998
- `You rendered descendant <Routes> (or called \`useRoutes()\`) at "${c}" (under <Route path="${h}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
7999
-
8000
- Please change the parent <Route path="${h}"> to <Route path="${h === "/" ? "*" : `${h}/*`}">.`
8001
- );
8002
- }
8003
- let g = De(), p;
8004
- p = g;
8005
- let f = p.pathname || "/", v = f;
8006
- if (u !== "/") {
8007
- let h = u.replace(/^\//, "").split("/");
8008
- v = "/" + f.replace(/^\//, "").split("/").slice(h.length).join("/");
8009
- }
8010
- let m = $r(e, { pathname: v });
8011
- return _e(
8012
- d || m != null,
8013
- `No routes matched location "${p.pathname}${p.search}${p.hash}" `
8014
- ), _e(
8015
- m == null || m[m.length - 1].route.element !== void 0 || m[m.length - 1].route.Component !== void 0 || m[m.length - 1].route.lazy !== void 0,
8016
- `Matched leaf route at location "${p.pathname}${p.search}${p.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`
8017
- ), Wi(
8018
- m && m.map(
8019
- (h) => Object.assign({}, h, {
8020
- params: Object.assign({}, l, h.params),
8021
- pathname: $e([
8022
- u,
8023
- // Re-encode pathnames that were decoded inside matchRoutes
8024
- o.encodeLocation ? o.encodeLocation(h.pathname).pathname : h.pathname
8025
- ]),
8026
- pathnameBase: h.pathnameBase === "/" ? u : $e([
8027
- u,
8028
- // Re-encode pathnames that were decoded inside matchRoutes
8029
- o.encodeLocation ? o.encodeLocation(h.pathnameBase).pathname : h.pathnameBase
8030
- ])
8031
- })
8032
7700
  ),
8033
- a,
8034
- t,
8035
- r
8036
- );
8037
- }
8038
- function Hi() {
8039
- let e = Xi(), n = Ai(e) ? `${e.status} ${e.statusText}` : e instanceof Error ? e.message : JSON.stringify(e), t = e instanceof Error ? e.stack : null, r = "rgba(200,200,200, 0.5)", o = { padding: "0.5rem", backgroundColor: r }, a = { padding: "2px 4px", backgroundColor: r }, i = null;
8040
- return console.error(
8041
- "Error handled by React Router default ErrorBoundary:",
8042
- e
8043
- ), i = /* @__PURE__ */ R.createElement(R.Fragment, null, /* @__PURE__ */ R.createElement("p", null, "💿 Hey developer 👋"), /* @__PURE__ */ R.createElement("p", null, "You can provide a way better UX than this when your app throws errors by providing your own ", /* @__PURE__ */ R.createElement("code", { style: a }, "ErrorBoundary"), " or", " ", /* @__PURE__ */ R.createElement("code", { style: a }, "errorElement"), " prop on your route.")), /* @__PURE__ */ R.createElement(R.Fragment, null, /* @__PURE__ */ R.createElement("h2", null, "Unexpected Application Error!"), /* @__PURE__ */ R.createElement("h3", { style: { fontStyle: "italic" } }, n), t ? /* @__PURE__ */ R.createElement("pre", { style: o }, t) : null, i);
8044
- }
8045
- var Bi = /* @__PURE__ */ R.createElement(Hi, null), qi = class extends R.Component {
8046
- constructor(e) {
8047
- super(e), this.state = {
8048
- location: e.location,
8049
- revalidation: e.revalidation,
8050
- error: e.error
8051
- };
8052
- }
8053
- static getDerivedStateFromError(e) {
8054
- return { error: e };
8055
- }
8056
- static getDerivedStateFromProps(e, n) {
8057
- return n.location !== e.location || n.revalidation !== "idle" && e.revalidation === "idle" ? {
8058
- error: e.error,
8059
- location: e.location,
8060
- revalidation: e.revalidation
8061
- } : {
8062
- error: e.error !== void 0 ? e.error : n.error,
8063
- location: n.location,
8064
- revalidation: e.revalidation || n.revalidation
8065
- };
8066
- }
8067
- componentDidCatch(e, n) {
8068
- console.error(
8069
- "React Router caught the following error during render",
8070
- e,
8071
- n
8072
- );
8073
- }
8074
- render() {
8075
- return this.state.error !== void 0 ? /* @__PURE__ */ R.createElement(Pe.Provider, { value: this.props.routeContext }, /* @__PURE__ */ R.createElement(
8076
- dn.Provider,
7701
+ /* @__PURE__ */ s.jsx(
7702
+ "select",
8077
7703
  {
8078
- value: this.state.error,
8079
- children: this.props.component
7704
+ value: F.minute,
7705
+ onChange: (S) => Z({ ...F, minute: parseInt(S.target.value) }),
7706
+ className: "w-16 border-0 text-center bg-color-transparent outline-0 border-l border-color-gray-300",
7707
+ children: Array.from({ length: 60 }, (S, j) => j).map((S) => /* @__PURE__ */ s.jsx("option", { value: S, children: S.toString().padStart(2, "0") }, S))
8080
7708
  }
8081
- )) : this.props.children;
8082
- }
8083
- };
8084
- function Gi({ routeContext: e, match: n, children: t }) {
8085
- let r = R.useContext(Ie);
8086
- return r && r.static && r.staticContext && (n.route.errorElement || n.route.ErrorBoundary) && (r.staticContext._deepestRenderedBoundaryId = n.route.id), /* @__PURE__ */ R.createElement(Pe.Provider, { value: e }, t);
8087
- }
8088
- function Wi(e, n = [], t = null, r = null) {
8089
- if (e == null) {
8090
- if (!t)
8091
- return null;
8092
- if (t.errors)
8093
- e = t.matches;
8094
- else if (n.length === 0 && !t.initialized && t.matches.length > 0)
8095
- e = t.matches;
8096
- else
8097
- return null;
8098
- }
8099
- let o = e, a = t == null ? void 0 : t.errors;
8100
- if (a != null) {
8101
- let c = o.findIndex(
8102
- (u) => u.route.id && (a == null ? void 0 : a[u.route.id]) !== void 0
8103
- );
8104
- xe(
8105
- c >= 0,
8106
- `Could not find a matching route for errors on route IDs: ${Object.keys(
8107
- a
8108
- ).join(",")}`
8109
- ), o = o.slice(
8110
- 0,
8111
- Math.min(o.length, c + 1)
8112
- );
8113
- }
8114
- let i = !1, l = -1;
8115
- if (t)
8116
- for (let c = 0; c < o.length; c++) {
8117
- let u = o[c];
8118
- if ((u.route.HydrateFallback || u.route.hydrateFallbackElement) && (l = c), u.route.id) {
8119
- let { loaderData: d, errors: g } = t, p = u.route.loader && !d.hasOwnProperty(u.route.id) && (!g || g[u.route.id] === void 0);
8120
- if (u.route.lazy || p) {
8121
- i = !0, l >= 0 ? o = o.slice(0, l + 1) : o = [o[0]];
8122
- break;
8123
- }
7709
+ ),
7710
+ /* @__PURE__ */ s.jsxs(
7711
+ "select",
7712
+ {
7713
+ value: F.ampm,
7714
+ onChange: (S) => Z({ ...F, ampm: S.target.value }),
7715
+ className: "w-16 border-0 text-center bg-color-transparent outline-0 border-l border-color-gray-300",
7716
+ children: [
7717
+ /* @__PURE__ */ s.jsx("option", { value: "AM", children: "AM" }),
7718
+ /* @__PURE__ */ s.jsx("option", { value: "PM", children: "PM" })
7719
+ ]
8124
7720
  }
8125
- }
8126
- return o.reduceRight(
8127
- (c, u, d) => {
8128
- let g, p = !1, f = null, v = null;
8129
- t && (g = a && u.route.id ? a[u.route.id] : void 0, f = u.route.errorElement || Bi, i && (l < 0 && d === 0 ? (Dr(
8130
- "route-fallback",
8131
- !1,
8132
- "No `HydrateFallback` element provided to render during initial hydration"
8133
- ), p = !0, v = null) : l === d && (p = !0, v = u.route.hydrateFallbackElement || null)));
8134
- let m = n.concat(o.slice(0, d + 1)), w = () => {
8135
- let h;
8136
- return g ? h = f : p ? h = v : u.route.Component ? h = /* @__PURE__ */ R.createElement(u.route.Component, null) : u.route.element ? h = u.route.element : h = c, /* @__PURE__ */ R.createElement(
8137
- Gi,
7721
+ )
7722
+ ] }), q = /* @__PURE__ */ s.jsxs(
7723
+ "div",
7724
+ {
7725
+ ref: ae,
7726
+ className: `${n === "dialog" ? "relative w-full" : "absolute z-50 mt-2 w-72 rounded-lg border border-color-gray-200 bg-color-white shadow-xl p-4"}`,
7727
+ style: n === "dialog" ? void 0 : {
7728
+ position: "absolute",
7729
+ left: f == null ? void 0 : f.getBoundingClientRect().left,
7730
+ top: f ? f.getBoundingClientRect().bottom + window.scrollY : 0
7731
+ },
7732
+ children: [
7733
+ !r && /* @__PURE__ */ s.jsxs(s.Fragment, { children: [
7734
+ /* @__PURE__ */ s.jsxs("div", { className: "flex items-center justify-between mb-3", children: [
7735
+ /* @__PURE__ */ s.jsx(
7736
+ Re,
7737
+ {
7738
+ variant: "transparent",
7739
+ size: "small",
7740
+ color: "gray",
7741
+ roundedFull: !0,
7742
+ onClick: () => w(new Date(m.getFullYear(), m.getMonth() - 1, 1)),
7743
+ icon: /* @__PURE__ */ s.jsx("svg", { className: "size-5", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ s.jsx("path", { d: "M10.8284 12.0007L15.7782 16.9504L14.364 18.3646L8 12.0007L14.364 5.63672L15.7782 7.05093L10.8284 12.0007Z" }) })
7744
+ }
7745
+ ),
7746
+ /* @__PURE__ */ s.jsxs("div", { className: "flex items-center gap-4", children: [
7747
+ /* @__PURE__ */ s.jsx(
7748
+ "select",
7749
+ {
7750
+ className: "text-sm outline-none",
7751
+ value: m.getMonth(),
7752
+ onChange: (S) => w(new Date(m.getFullYear(), parseInt(S.target.value), 1)),
7753
+ children: Kn.map((S, j) => /* @__PURE__ */ s.jsx("option", { value: j, children: S }, S))
7754
+ }
7755
+ ),
7756
+ /* @__PURE__ */ s.jsx(
7757
+ "select",
7758
+ {
7759
+ className: "text-sm outline-none",
7760
+ value: m.getFullYear(),
7761
+ onChange: (S) => w(new Date(parseInt(S.target.value), m.getMonth(), 1)),
7762
+ children: Array.from({ length: 150 }, (S, j) => (/* @__PURE__ */ new Date()).getFullYear() - 100 + j).map((S) => /* @__PURE__ */ s.jsx("option", { value: S, children: S }, S))
7763
+ }
7764
+ )
7765
+ ] }),
7766
+ /* @__PURE__ */ s.jsx(
7767
+ Re,
7768
+ {
7769
+ variant: "transparent",
7770
+ size: "small",
7771
+ color: "gray",
7772
+ roundedFull: !0,
7773
+ onClick: () => w(new Date(m.getFullYear(), m.getMonth() + 1, 1)),
7774
+ icon: /* @__PURE__ */ s.jsx("svg", { className: "size-5", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ s.jsx("path", { d: "M13.1717 12.0007L8.22192 7.05093L9.63614 5.63672L16.0001 12.0007L9.63614 18.3646L8.22192 16.9504L13.1717 12.0007Z" }) })
7775
+ }
7776
+ )
7777
+ ] }),
7778
+ /* @__PURE__ */ s.jsxs("div", { className: "grid grid-columns-7 gap-1 text-center text-sm mb-2", children: [
7779
+ gi.map((S) => /* @__PURE__ */ s.jsx("div", { className: "font-semibold", children: S }, S)),
7780
+ z().map((S, j) => /* @__PURE__ */ s.jsx(
7781
+ "div",
7782
+ {
7783
+ className: `size-8 flex justify-center items-center text-sm rounded-full transition-all
7784
+ ${S ? "hover:bg-color-blue-100 cursor-pointer" : ""}
7785
+ ${S && E(S) ? "bg-color-blue-500 hover:bg-color-blue-500 text-color-white" : ""}
7786
+ ${S && x(S) ? "bg-color-gray-100 text-color-gray-400 !cursor-not-allowed hover:bg-color-gray-100" : ""}`,
7787
+ onClick: () => S && M(S),
7788
+ onMouseEnter: () => S && L(S),
7789
+ onMouseLeave: N,
7790
+ children: S ? S.getDate() : ""
7791
+ },
7792
+ j
7793
+ ))
7794
+ ] })
7795
+ ] }),
7796
+ (t || r) && B,
7797
+ /* @__PURE__ */ s.jsx("div", { className: "mt-4 flex justify-end", children: /* @__PURE__ */ s.jsx(
7798
+ Gt,
8138
7799
  {
8139
- match: u,
8140
- routeContext: {
8141
- outlet: c,
8142
- matches: m,
8143
- isDataRoute: t != null
8144
- },
8145
- children: h
7800
+ fullWidth: !0,
7801
+ onClick: I,
7802
+ disabled: e === "range" && !y && !r,
7803
+ className: `${e === "range" && !y && !r ? "bg-color-gray-400 cursor-not-allowed" : ""}`,
7804
+ children: "Confirm"
8146
7805
  }
8147
- );
8148
- };
8149
- return t && (u.route.ErrorBoundary || u.route.errorElement || d === 0) ? /* @__PURE__ */ R.createElement(
8150
- qi,
8151
- {
8152
- location: t.location,
8153
- revalidation: t.revalidation,
8154
- component: f,
8155
- error: g,
8156
- children: w(),
8157
- routeContext: { outlet: null, matches: m, isDataRoute: !0 }
8158
- }
8159
- ) : w();
8160
- },
8161
- null
8162
- );
8163
- }
8164
- function pn(e) {
8165
- return `${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`;
8166
- }
8167
- function Ui(e) {
8168
- let n = R.useContext(Ie);
8169
- return xe(n, pn(e)), n;
8170
- }
8171
- function Yi(e) {
8172
- let n = R.useContext(xt);
8173
- return xe(n, pn(e)), n;
8174
- }
8175
- function Zi(e) {
8176
- let n = R.useContext(Pe);
8177
- return xe(n, pn(e)), n;
8178
- }
8179
- function fn(e) {
8180
- let n = Zi(e), t = n.matches[n.matches.length - 1];
8181
- return xe(
8182
- t.route.id,
8183
- `${e} can only be used on routes that contain a unique "id"`
8184
- ), t.route.id;
8185
- }
8186
- function Ki() {
8187
- return fn(
8188
- "useRouteId"
8189
- /* UseRouteId */
8190
- );
8191
- }
8192
- function Xi() {
8193
- var r;
8194
- let e = R.useContext(dn), n = Yi(
8195
- "useRouteError"
8196
- /* UseRouteError */
8197
- ), t = fn(
8198
- "useRouteError"
8199
- /* UseRouteError */
8200
- );
8201
- return e !== void 0 ? e : (r = n.errors) == null ? void 0 : r[t];
8202
- }
8203
- function Ji() {
8204
- let { router: e } = Ui(
8205
- "useNavigate"
8206
- /* UseNavigateStable */
8207
- ), n = fn(
8208
- "useNavigate"
8209
- /* UseNavigateStable */
8210
- ), t = R.useRef(!1);
8211
- return Nr(() => {
8212
- t.current = !0;
8213
- }), R.useCallback(
8214
- async (o, a = {}) => {
8215
- _e(t.current, Ar), t.current && (typeof o == "number" ? e.navigate(o) : await e.navigate(o, { fromRouteId: n, ...a }));
8216
- },
8217
- [e, n]
7806
+ ) })
7807
+ ]
7808
+ }
8218
7809
  );
8219
- }
8220
- var Jn = {};
8221
- function Dr(e, n, t) {
8222
- !n && !Jn[e] && (Jn[e] = !0, _e(!1, t));
8223
- }
8224
- R.memo(Qi);
8225
- function Qi({
8226
- routes: e,
8227
- future: n,
8228
- state: t
8229
- }) {
8230
- return Vi(e, void 0, t, n);
8231
- }
8232
- var ut = "get", dt = "application/x-www-form-urlencoded";
8233
- function wt(e) {
8234
- return e != null && typeof e.tagName == "string";
8235
- }
8236
- function el(e) {
8237
- return wt(e) && e.tagName.toLowerCase() === "button";
8238
- }
8239
- function tl(e) {
8240
- return wt(e) && e.tagName.toLowerCase() === "form";
8241
- }
8242
- function nl(e) {
8243
- return wt(e) && e.tagName.toLowerCase() === "input";
8244
- }
8245
- function rl(e) {
8246
- return !!(e.metaKey || e.altKey || e.ctrlKey || e.shiftKey);
8247
- }
8248
- function ol(e, n) {
8249
- return e.button === 0 && // Ignore everything but left clicks
8250
- (!n || n === "_self") && // Let browser handle "target=_blank" etc.
8251
- !rl(e);
8252
- }
8253
- var ct = null;
8254
- function al() {
8255
- if (ct === null)
8256
- try {
8257
- new FormData(
8258
- document.createElement("form"),
8259
- // @ts-expect-error if FormData supports the submitter parameter, this will throw
8260
- 0
8261
- ), ct = !1;
8262
- } catch {
8263
- ct = !0;
7810
+ return /* @__PURE__ */ s.jsxs("div", { className: "relative", children: [
7811
+ /* @__PURE__ */ s.jsxs(
7812
+ Gt,
7813
+ {
7814
+ onClick: pe,
7815
+ fullWidth: !0,
7816
+ color: "gray",
7817
+ variant: "outlined",
7818
+ className: `!justify-between gap-2 ${o || ""}`,
7819
+ children: [
7820
+ e === "single" ? ue ? P(ue) : i : (
7821
+ // Display rangeStart immediately if set, even if rangeEnd is null
7822
+ b || H || T ? /* @__PURE__ */ s.jsxs(s.Fragment, { children: [
7823
+ P(b || H, "start"),
7824
+ " -",
7825
+ " ",
7826
+ P(y || T, "end")
7827
+ ] }) : i
7828
+ ),
7829
+ l
7830
+ ]
7831
+ }
7832
+ ),
7833
+ n === "inline" ? /* @__PURE__ */ s.jsx(s.Fragment, { children: g && Ze(q, document.body) }) : /* @__PURE__ */ s.jsx(ci, { open: g, title: r ? "Select Time" : i, onClose: X, children: /* @__PURE__ */ s.jsx("div", { className: "w-72", children: q }) })
7834
+ ] });
7835
+ }, ps = ({
7836
+ tabs: e,
7837
+ activeKey: n,
7838
+ onChange: t,
7839
+ className: r = "",
7840
+ tabsClass: o = "",
7841
+ tabItemClass: a = "",
7842
+ tabContentClass: i = "",
7843
+ variant: l = "horizontal"
7844
+ }) => {
7845
+ const c = e.find((d) => d.key === n), u = l === "vertical";
7846
+ return /* @__PURE__ */ s.jsxs(
7847
+ "div",
7848
+ {
7849
+ className: `w-full flex ${u ? "flex-row" : "flex-col"} ${r}`,
7850
+ children: [
7851
+ /* @__PURE__ */ s.jsx(
7852
+ "div",
7853
+ {
7854
+ className: `${u ? "flex flex-col min-w-[160px] border-r border-color-gray-200" : "flex space-x-6 border-b border-color-gray-200"} ${o}`,
7855
+ children: e.map((d) => {
7856
+ const g = n === d.key;
7857
+ return /* @__PURE__ */ s.jsxs(
7858
+ "button",
7859
+ {
7860
+ onClick: () => t(d.key),
7861
+ className: `relative flex ${u ? "flex-row items-center px-4 py-3" : "flex-col items-center py-4"}
7862
+ text-sm font-medium transition-color duration-200 bg-color-transparent
7863
+ ${g ? "text-color-blue-500" : "text-color-gray-600 hover:text-color-blue-500 cursor-pointer"}
7864
+ ${a}`,
7865
+ children: [
7866
+ /* @__PURE__ */ s.jsxs("div", { className: `flex items-center ${u ? "space-x-3" : "space-x-2"}`, children: [
7867
+ d.icon && /* @__PURE__ */ s.jsx("span", { children: d.icon }),
7868
+ /* @__PURE__ */ s.jsx("span", { children: d.label })
7869
+ ] }),
7870
+ g && (u ? /* @__PURE__ */ s.jsx("div", { className: "absolute right-0 top-3 bottom-3 w-1 bg-color-blue-500 rounded-full" }) : /* @__PURE__ */ s.jsx("div", { className: "absolute bottom-0 left-0 right-0 h-1 bg-color-blue-500 rounded-full" }))
7871
+ ]
7872
+ },
7873
+ d.key
7874
+ );
7875
+ })
7876
+ }
7877
+ ),
7878
+ /* @__PURE__ */ s.jsx("div", { className: `mt-4 ${u ? "ml-6 mt-0" : ""} ${i}`, children: c == null ? void 0 : c.content })
7879
+ ]
8264
7880
  }
8265
- return ct;
8266
- }
8267
- var il = /* @__PURE__ */ new Set([
8268
- "application/x-www-form-urlencoded",
8269
- "multipart/form-data",
8270
- "text/plain"
8271
- ]);
8272
- function Bt(e) {
8273
- return e != null && !il.has(e) ? (_e(
8274
- !1,
8275
- `"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${dt}"`
8276
- ), null) : e;
8277
- }
8278
- function ll(e, n) {
8279
- let t, r, o, a, i;
8280
- if (tl(e)) {
8281
- let l = e.getAttribute("action");
8282
- r = l ? Fe(l, n) : null, t = e.getAttribute("method") || ut, o = Bt(e.getAttribute("enctype")) || dt, a = new FormData(e);
8283
- } else if (el(e) || nl(e) && (e.type === "submit" || e.type === "image")) {
8284
- let l = e.form;
8285
- if (l == null)
8286
- throw new Error(
8287
- 'Cannot submit a <button> or <input type="submit"> without a <form>'
8288
- );
8289
- let c = e.getAttribute("formaction") || l.getAttribute("action");
8290
- if (r = c ? Fe(c, n) : null, t = e.getAttribute("formmethod") || l.getAttribute("method") || ut, o = Bt(e.getAttribute("formenctype")) || Bt(l.getAttribute("enctype")) || dt, a = new FormData(l, e), !al()) {
8291
- let { name: u, type: d, value: g } = e;
8292
- if (d === "image") {
8293
- let p = u ? `${u}.` : "";
8294
- a.append(`${p}x`, "0"), a.append(`${p}y`, "0");
8295
- } else u && a.append(u, g);
7881
+ );
7882
+ }, fs = ({
7883
+ stats: e = [],
7884
+ className: n = ""
7885
+ }) => /* @__PURE__ */ s.jsx(ii, { className: `w-full ${n}`, children: /* @__PURE__ */ s.jsx("div", { className: "grid grid-columns-1 sm:grid-columns-1 md:grid-columns-2 lg:grid-columns-4 gap-4 justify-items-center", children: e.map((t, r) => /* @__PURE__ */ s.jsxs(
7886
+ "div",
7887
+ {
7888
+ className: `flex items-center justify-center gap-4 lg:not-last:border-r md:not-last:border-r md:nth-2:border-r-0 md:not-last:border-b-0 not-last:border-b border-color-gray-200
7889
+ md:p-2 not-last:pb-4 w-full h-full ${t.className}`,
7890
+ children: [
7891
+ /* @__PURE__ */ s.jsx("div", { className: `p-2 ${t.accentColor} ${t.accentBackground} flex-shrink-0 flex items-center justify-center p-4 text-md rounded-lg`, children: t.icon }),
7892
+ /* @__PURE__ */ s.jsxs("div", { className: "flex flex-col justify-center gap-1 w-full ", children: [
7893
+ /* @__PURE__ */ s.jsx(
7894
+ "div",
7895
+ {
7896
+ className: "text-sm",
7897
+ children: t.name
7898
+ }
7899
+ ),
7900
+ /* @__PURE__ */ s.jsx("div", { className: `text-xl ${t.accentColor} font-semibold`, children: t.value })
7901
+ ] })
7902
+ ]
7903
+ },
7904
+ r
7905
+ )) }) });
7906
+ /**
7907
+ * react-router v7.7.1
7908
+ *
7909
+ * Copyright (c) Remix Software Inc.
7910
+ *
7911
+ * This source code is licensed under the MIT license found in the
7912
+ * LICENSE.md file in the root directory of this source tree.
7913
+ *
7914
+ * @license MIT
7915
+ */
7916
+ function xe(e, n) {
7917
+ if (e === !1 || e === null || typeof e > "u")
7918
+ throw new Error(n);
7919
+ }
7920
+ function _e(e, n) {
7921
+ if (!e) {
7922
+ typeof console < "u" && console.warn(n);
7923
+ try {
7924
+ throw new Error(n);
7925
+ } catch {
8296
7926
  }
8297
- } else {
8298
- if (wt(e))
8299
- throw new Error(
8300
- 'Cannot submit element that is not <form>, <button>, or <input type="submit|image">'
8301
- );
8302
- t = ut, r = null, o = dt, i = e;
8303
7927
  }
8304
- return a && o === "text/plain" && (i = a, a = void 0), { action: r, method: t.toLowerCase(), encType: o, formData: a, body: i };
8305
7928
  }
8306
- Object.getOwnPropertyNames(Object.prototype).sort().join("\0");
8307
- function mn(e, n) {
8308
- if (e === !1 || e === null || typeof e > "u")
8309
- throw new Error(n);
7929
+ function nn({
7930
+ pathname: e = "/",
7931
+ search: n = "",
7932
+ hash: t = ""
7933
+ }) {
7934
+ return n && n !== "?" && (e += n.charAt(0) === "?" ? n : "?" + n), t && t !== "#" && (e += t.charAt(0) === "#" ? t : "#" + t), e;
8310
7935
  }
8311
- function sl(e, n, t) {
8312
- let r = typeof e == "string" ? new URL(
8313
- e,
8314
- // This can be called during the SSR flow via PrefetchPageLinksImpl so
8315
- // don't assume window is available
8316
- typeof window > "u" ? "server://singlefetch/" : window.location.origin
8317
- ) : e;
8318
- return r.pathname === "/" ? r.pathname = `_root.${t}` : n && Fe(r.pathname, n) === "/" ? r.pathname = `${n.replace(/\/$/, "")}/_root.${t}` : r.pathname = `${r.pathname.replace(/\/$/, "")}.${t}`, r;
7936
+ function cn(e) {
7937
+ let n = {};
7938
+ if (e) {
7939
+ let t = e.indexOf("#");
7940
+ t >= 0 && (n.hash = e.substring(t), e = e.substring(0, t));
7941
+ let r = e.indexOf("?");
7942
+ r >= 0 && (n.search = e.substring(r), e = e.substring(0, r)), e && (n.pathname = e);
7943
+ }
7944
+ return n;
8319
7945
  }
8320
- async function cl(e, n) {
8321
- if (e.id in n)
8322
- return n[e.id];
8323
- try {
8324
- let t = await import(
8325
- /* @vite-ignore */
8326
- /* webpackIgnore: true */
8327
- e.module
7946
+ function kr(e, n, t = "/") {
7947
+ return vi(e, n, t, !1);
7948
+ }
7949
+ function vi(e, n, t, r) {
7950
+ let o = typeof n == "string" ? cn(n) : n, a = Fe(o.pathname || "/", t);
7951
+ if (a == null)
7952
+ return null;
7953
+ let i = $r(e);
7954
+ xi(i);
7955
+ let l = null;
7956
+ for (let c = 0; l == null && c < i.length; ++c) {
7957
+ let u = _i(a);
7958
+ l = ki(
7959
+ i[c],
7960
+ u,
7961
+ r
8328
7962
  );
8329
- return n[e.id] = t, t;
8330
- } catch (t) {
8331
- return console.error(
8332
- `Error loading route module \`${e.module}\`, reloading page...`
8333
- ), console.error(t), window.__reactRouterContext && window.__reactRouterContext.isSpaMode, window.location.reload(), new Promise(() => {
8334
- });
8335
7963
  }
7964
+ return l;
8336
7965
  }
8337
- function ul(e) {
8338
- return e == null ? !1 : e.href == null ? e.rel === "preload" && typeof e.imageSrcSet == "string" && typeof e.imageSizes == "string" : typeof e.rel == "string" && typeof e.href == "string";
7966
+ function $r(e, n = [], t = [], r = "") {
7967
+ let o = (a, i, l) => {
7968
+ let c = {
7969
+ relativePath: l === void 0 ? a.path || "" : l,
7970
+ caseSensitive: a.caseSensitive === !0,
7971
+ childrenIndex: i,
7972
+ route: a
7973
+ };
7974
+ c.relativePath.startsWith("/") && (xe(
7975
+ c.relativePath.startsWith(r),
7976
+ `Absolute route path "${c.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`
7977
+ ), c.relativePath = c.relativePath.slice(r.length));
7978
+ let u = $e([r, c.relativePath]), d = t.concat(c);
7979
+ a.children && a.children.length > 0 && (xe(
7980
+ // Our types know better, but runtime JS may not!
7981
+ // @ts-expect-error
7982
+ a.index !== !0,
7983
+ `Index routes must not have child routes. Please remove all child routes from route path "${u}".`
7984
+ ), $r(a.children, n, d, u)), !(a.path == null && !a.index) && n.push({
7985
+ path: u,
7986
+ score: ji(u, a.index),
7987
+ routesMeta: d
7988
+ });
7989
+ };
7990
+ return e.forEach((a, i) => {
7991
+ var l;
7992
+ if (a.path === "" || !((l = a.path) != null && l.includes("?")))
7993
+ o(a, i);
7994
+ else
7995
+ for (let c of _r(a.path))
7996
+ o(a, i, c);
7997
+ }), n;
8339
7998
  }
8340
- async function dl(e, n, t) {
8341
- let r = await Promise.all(
8342
- e.map(async (o) => {
8343
- let a = n.routes[o.route.id];
8344
- if (a) {
8345
- let i = await cl(a, t);
8346
- return i.links ? i.links() : [];
8347
- }
8348
- return [];
8349
- })
7999
+ function _r(e) {
8000
+ let n = e.split("/");
8001
+ if (n.length === 0) return [];
8002
+ let [t, ...r] = n, o = t.endsWith("?"), a = t.replace(/\?$/, "");
8003
+ if (r.length === 0)
8004
+ return o ? [a, ""] : [a];
8005
+ let i = _r(r.join("/")), l = [];
8006
+ return l.push(
8007
+ ...i.map(
8008
+ (c) => c === "" ? a : [a, c].join("/")
8009
+ )
8010
+ ), o && l.push(...i), l.map(
8011
+ (c) => e.startsWith("/") && c === "" ? "/" : c
8350
8012
  );
8351
- return gl(
8352
- r.flat(1).filter(ul).filter((o) => o.rel === "stylesheet" || o.rel === "preload").map(
8353
- (o) => o.rel === "stylesheet" ? { ...o, rel: "prefetch", as: "style" } : { ...o, rel: "prefetch" }
8013
+ }
8014
+ function xi(e) {
8015
+ e.sort(
8016
+ (n, t) => n.score !== t.score ? t.score - n.score : Ri(
8017
+ n.routesMeta.map((r) => r.childrenIndex),
8018
+ t.routesMeta.map((r) => r.childrenIndex)
8354
8019
  )
8355
8020
  );
8356
8021
  }
8357
- function Qn(e, n, t, r, o, a) {
8358
- let i = (c, u) => t[u] ? c.route.id !== t[u].route.id : !0, l = (c, u) => {
8359
- var d;
8360
- return (
8361
- // param change, /users/123 -> /users/456
8362
- t[u].pathname !== c.pathname || // splat param changed, which is not present in match.path
8363
- // e.g. /files/images/avatar.jpg -> files/finances.xls
8364
- ((d = t[u].route.path) == null ? void 0 : d.endsWith("*")) && t[u].params["*"] !== c.params["*"]
8365
- );
8022
+ var hi = /^:[\w-]+$/, wi = 3, bi = 2, yi = 1, Ci = 10, Si = -2, Xn = (e) => e === "*";
8023
+ function ji(e, n) {
8024
+ let t = e.split("/"), r = t.length;
8025
+ return t.some(Xn) && (r += Si), n && (r += bi), t.filter((o) => !Xn(o)).reduce(
8026
+ (o, a) => o + (hi.test(a) ? wi : a === "" ? yi : Ci),
8027
+ r
8028
+ );
8029
+ }
8030
+ function Ri(e, n) {
8031
+ return e.length === n.length && e.slice(0, -1).every((r, o) => r === n[o]) ? (
8032
+ // If two routes are siblings, we should try to match the earlier sibling
8033
+ // first. This allows people to have fine-grained control over the matching
8034
+ // behavior by simply putting routes with identical paths in the order they
8035
+ // want them tried.
8036
+ e[e.length - 1] - n[n.length - 1]
8037
+ ) : (
8038
+ // Otherwise, it doesn't really make sense to rank non-siblings by index,
8039
+ // so they sort equally.
8040
+ 0
8041
+ );
8042
+ }
8043
+ function ki(e, n, t = !1) {
8044
+ let { routesMeta: r } = e, o = {}, a = "/", i = [];
8045
+ for (let l = 0; l < r.length; ++l) {
8046
+ let c = r[l], u = l === r.length - 1, d = a === "/" ? n : n.slice(a.length) || "/", g = gt(
8047
+ { path: c.relativePath, caseSensitive: c.caseSensitive, end: u },
8048
+ d
8049
+ ), p = c.route;
8050
+ if (!g && u && t && !r[r.length - 1].route.index && (g = gt(
8051
+ {
8052
+ path: c.relativePath,
8053
+ caseSensitive: c.caseSensitive,
8054
+ end: !1
8055
+ },
8056
+ d
8057
+ )), !g)
8058
+ return null;
8059
+ Object.assign(o, g.params), i.push({
8060
+ // TODO: Can this as be avoided?
8061
+ params: o,
8062
+ pathname: $e([a, g.pathname]),
8063
+ pathnameBase: Mi(
8064
+ $e([a, g.pathnameBase])
8065
+ ),
8066
+ route: p
8067
+ }), g.pathnameBase !== "/" && (a = $e([a, g.pathnameBase]));
8068
+ }
8069
+ return i;
8070
+ }
8071
+ function gt(e, n) {
8072
+ typeof e == "string" && (e = { path: e, caseSensitive: !1, end: !0 });
8073
+ let [t, r] = $i(
8074
+ e.path,
8075
+ e.caseSensitive,
8076
+ e.end
8077
+ ), o = n.match(t);
8078
+ if (!o) return null;
8079
+ let a = o[0], i = a.replace(/(.)\/+$/, "$1"), l = o.slice(1);
8080
+ return {
8081
+ params: r.reduce(
8082
+ (u, { paramName: d, isOptional: g }, p) => {
8083
+ if (d === "*") {
8084
+ let v = l[p] || "";
8085
+ i = a.slice(0, a.length - v.length).replace(/(.)\/+$/, "$1");
8086
+ }
8087
+ const f = l[p];
8088
+ return g && !f ? u[d] = void 0 : u[d] = (f || "").replace(/%2F/g, "/"), u;
8089
+ },
8090
+ {}
8091
+ ),
8092
+ pathname: a,
8093
+ pathnameBase: i,
8094
+ pattern: e
8366
8095
  };
8367
- return a === "assets" ? n.filter(
8368
- (c, u) => i(c, u) || l(c, u)
8369
- ) : a === "data" ? n.filter((c, u) => {
8370
- var g;
8371
- let d = r.routes[c.route.id];
8372
- if (!d || !d.hasLoader)
8373
- return !1;
8374
- if (i(c, u) || l(c, u))
8375
- return !0;
8376
- if (c.route.shouldRevalidate) {
8377
- let p = c.route.shouldRevalidate({
8378
- currentUrl: new URL(
8379
- o.pathname + o.search + o.hash,
8380
- window.origin
8381
- ),
8382
- currentParams: ((g = t[0]) == null ? void 0 : g.params) || {},
8383
- nextUrl: new URL(e, window.origin),
8384
- nextParams: c.params,
8385
- defaultShouldRevalidate: !0
8386
- });
8387
- if (typeof p == "boolean")
8388
- return p;
8389
- }
8390
- return !0;
8391
- }) : [];
8392
8096
  }
8393
- function pl(e, n, { includeHydrateFallback: t } = {}) {
8394
- return fl(
8395
- e.map((r) => {
8396
- let o = n.routes[r.route.id];
8397
- if (!o) return [];
8398
- let a = [o.module];
8399
- return o.clientActionModule && (a = a.concat(o.clientActionModule)), o.clientLoaderModule && (a = a.concat(o.clientLoaderModule)), t && o.hydrateFallbackModule && (a = a.concat(o.hydrateFallbackModule)), o.imports && (a = a.concat(o.imports)), a;
8400
- }).flat(1)
8097
+ function $i(e, n = !1, t = !0) {
8098
+ _e(
8099
+ e === "*" || !e.endsWith("*") || e.endsWith("/*"),
8100
+ `Route path "${e}" will be treated as if it were "${e.replace(/\*$/, "/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/, "/*")}".`
8101
+ );
8102
+ let r = [], o = "^" + e.replace(/\/*\*?$/, "").replace(/^\/*/, "/").replace(/[\\.*+^${}|()[\]]/g, "\\$&").replace(
8103
+ /\/:([\w-]+)(\?)?/g,
8104
+ (i, l, c) => (r.push({ paramName: l, isOptional: c != null }), c ? "/?([^\\/]+)?" : "/([^\\/]+)")
8401
8105
  );
8106
+ return e.endsWith("*") ? (r.push({ paramName: "*" }), o += e === "*" || e === "/*" ? "(.*)$" : "(?:\\/(.+)|\\/*)$") : t ? o += "\\/*$" : e !== "" && e !== "/" && (o += "(?:(?=\\/|$))"), [new RegExp(o, n ? void 0 : "i"), r];
8402
8107
  }
8403
- function fl(e) {
8404
- return [...new Set(e)];
8108
+ function _i(e) {
8109
+ try {
8110
+ return e.split("/").map((n) => decodeURIComponent(n).replace(/\//g, "%2F")).join("/");
8111
+ } catch (n) {
8112
+ return _e(
8113
+ !1,
8114
+ `The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${n}).`
8115
+ ), e;
8116
+ }
8405
8117
  }
8406
- function ml(e) {
8407
- let n = {}, t = Object.keys(e).sort();
8408
- for (let r of t)
8409
- n[r] = e[r];
8410
- return n;
8118
+ function Fe(e, n) {
8119
+ if (n === "/") return e;
8120
+ if (!e.toLowerCase().startsWith(n.toLowerCase()))
8121
+ return null;
8122
+ let t = n.endsWith("/") ? n.length - 1 : n.length, r = e.charAt(t);
8123
+ return r && r !== "/" ? null : e.slice(t) || "/";
8124
+ }
8125
+ function Ei(e, n = "/") {
8126
+ let {
8127
+ pathname: t,
8128
+ search: r = "",
8129
+ hash: o = ""
8130
+ } = typeof e == "string" ? cn(e) : e;
8131
+ return {
8132
+ pathname: t ? t.startsWith("/") ? t : Pi(t, n) : n,
8133
+ search: Fi(r),
8134
+ hash: Ai(o)
8135
+ };
8411
8136
  }
8412
- function gl(e, n) {
8413
- let t = /* @__PURE__ */ new Set();
8414
- return new Set(n), e.reduce((r, o) => {
8415
- let a = JSON.stringify(ml(o));
8416
- return t.has(a) || (t.add(a), r.push({ key: a, link: o })), r;
8417
- }, []);
8137
+ function Pi(e, n) {
8138
+ let t = n.replace(/\/+$/, "").split("/");
8139
+ return e.split("/").forEach((o) => {
8140
+ o === ".." ? t.length > 1 && t.pop() : o !== "." && t.push(o);
8141
+ }), t.length > 1 ? t.join("/") : "/";
8418
8142
  }
8419
- function zr() {
8420
- let e = R.useContext(Ie);
8421
- return mn(
8422
- e,
8423
- "You must render this element inside a <DataRouterContext.Provider> element"
8424
- ), e;
8143
+ function Ht(e, n, t, r) {
8144
+ return `Cannot include a '${e}' character in a manually specified \`to.${n}\` field [${JSON.stringify(
8145
+ r
8146
+ )}]. Please separate it out to the \`to.${t}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`;
8425
8147
  }
8426
- function vl() {
8427
- let e = R.useContext(xt);
8428
- return mn(
8429
- e,
8430
- "You must render this element inside a <DataRouterStateContext.Provider> element"
8431
- ), e;
8148
+ function Li(e) {
8149
+ return e.filter(
8150
+ (n, t) => t === 0 || n.route.path && n.route.path.length > 0
8151
+ );
8432
8152
  }
8433
- var gn = R.createContext(void 0);
8434
- gn.displayName = "FrameworkContext";
8435
- function Tr() {
8436
- let e = R.useContext(gn);
8437
- return mn(
8438
- e,
8439
- "You must render this element inside a <HydratedRouter> element"
8440
- ), e;
8153
+ function Er(e) {
8154
+ let n = Li(e);
8155
+ return n.map(
8156
+ (t, r) => r === n.length - 1 ? t.pathname : t.pathnameBase
8157
+ );
8441
8158
  }
8442
- function xl(e, n) {
8443
- let t = R.useContext(gn), [r, o] = R.useState(!1), [a, i] = R.useState(!1), { onFocus: l, onBlur: c, onMouseEnter: u, onMouseLeave: d, onTouchStart: g } = n, p = R.useRef(null);
8444
- R.useEffect(() => {
8445
- if (e === "render" && i(!0), e === "viewport") {
8446
- let m = (h) => {
8447
- h.forEach((k) => {
8448
- i(k.isIntersecting);
8449
- });
8450
- }, w = new IntersectionObserver(m, { threshold: 0.5 });
8451
- return p.current && w.observe(p.current), () => {
8452
- w.disconnect();
8453
- };
8454
- }
8455
- }, [e]), R.useEffect(() => {
8456
- if (r) {
8457
- let m = setTimeout(() => {
8458
- i(!0);
8459
- }, 100);
8460
- return () => {
8461
- clearTimeout(m);
8462
- };
8463
- }
8464
- }, [r]);
8465
- let f = () => {
8466
- o(!0);
8467
- }, v = () => {
8468
- o(!1), i(!1);
8469
- };
8470
- return t ? e !== "intent" ? [a, p, {}] : [
8471
- a,
8472
- p,
8473
- {
8474
- onFocus: Ge(l, f),
8475
- onBlur: Ge(c, v),
8476
- onMouseEnter: Ge(u, f),
8477
- onMouseLeave: Ge(d, v),
8478
- onTouchStart: Ge(g, f)
8159
+ function Pr(e, n, t, r = !1) {
8160
+ let o;
8161
+ typeof e == "string" ? o = cn(e) : (o = { ...e }, xe(
8162
+ !o.pathname || !o.pathname.includes("?"),
8163
+ Ht("?", "pathname", "search", o)
8164
+ ), xe(
8165
+ !o.pathname || !o.pathname.includes("#"),
8166
+ Ht("#", "pathname", "hash", o)
8167
+ ), xe(
8168
+ !o.search || !o.search.includes("#"),
8169
+ Ht("#", "search", "hash", o)
8170
+ ));
8171
+ let a = e === "" || o.pathname === "", i = a ? "/" : o.pathname, l;
8172
+ if (i == null)
8173
+ l = t;
8174
+ else {
8175
+ let g = n.length - 1;
8176
+ if (!r && i.startsWith("..")) {
8177
+ let p = i.split("/");
8178
+ for (; p[0] === ".."; )
8179
+ p.shift(), g -= 1;
8180
+ o.pathname = p.join("/");
8479
8181
  }
8480
- ] : [!1, p, {}];
8182
+ l = g >= 0 ? n[g] : "/";
8183
+ }
8184
+ let c = Ei(o, l), u = i && i !== "/" && i.endsWith("/"), d = (a || i === ".") && t.endsWith("/");
8185
+ return !c.pathname.endsWith("/") && (u || d) && (c.pathname += "/"), c;
8481
8186
  }
8482
- function Ge(e, n) {
8483
- return (t) => {
8484
- e && e(t), t.defaultPrevented || n(t);
8485
- };
8187
+ var $e = (e) => e.join("/").replace(/\/\/+/g, "/"), Mi = (e) => e.replace(/\/+$/, "").replace(/^\/*/, "/"), Fi = (e) => !e || e === "?" ? "" : e.startsWith("?") ? e : "?" + e, Ai = (e) => !e || e === "#" ? "" : e.startsWith("#") ? e : "#" + e;
8188
+ function Ni(e) {
8189
+ return e != null && typeof e.status == "number" && typeof e.statusText == "string" && typeof e.internal == "boolean" && "data" in e;
8486
8190
  }
8487
- function hl({ page: e, ...n }) {
8488
- let { router: t } = zr(), r = R.useMemo(
8489
- () => $r(t.routes, e, t.basename),
8490
- [t.routes, e, t.basename]
8191
+ var Lr = [
8192
+ "POST",
8193
+ "PUT",
8194
+ "PATCH",
8195
+ "DELETE"
8196
+ ];
8197
+ new Set(
8198
+ Lr
8199
+ );
8200
+ var Di = [
8201
+ "GET",
8202
+ ...Lr
8203
+ ];
8204
+ new Set(Di);
8205
+ var Ie = R.createContext(null);
8206
+ Ie.displayName = "DataRouter";
8207
+ var xt = R.createContext(null);
8208
+ xt.displayName = "DataRouterState";
8209
+ R.createContext(!1);
8210
+ var Mr = R.createContext({
8211
+ isTransitioning: !1
8212
+ });
8213
+ Mr.displayName = "ViewTransition";
8214
+ var zi = R.createContext(
8215
+ /* @__PURE__ */ new Map()
8216
+ );
8217
+ zi.displayName = "Fetchers";
8218
+ var Ti = R.createContext(null);
8219
+ Ti.displayName = "Await";
8220
+ var Ee = R.createContext(
8221
+ null
8222
+ );
8223
+ Ee.displayName = "Navigation";
8224
+ var un = R.createContext(
8225
+ null
8226
+ );
8227
+ un.displayName = "Location";
8228
+ var Pe = R.createContext({
8229
+ outlet: null,
8230
+ matches: [],
8231
+ isDataRoute: !1
8232
+ });
8233
+ Pe.displayName = "Route";
8234
+ var dn = R.createContext(null);
8235
+ dn.displayName = "RouteError";
8236
+ function Oi(e, { relative: n } = {}) {
8237
+ xe(
8238
+ ht(),
8239
+ // TODO: This error is probably because they somehow have 2 versions of the
8240
+ // router loaded. We can help them understand how to avoid that.
8241
+ "useHref() may be used only in the context of a <Router> component."
8491
8242
  );
8492
- return r ? /* @__PURE__ */ R.createElement(bl, { page: e, matches: r, ...n }) : null;
8493
- }
8494
- function wl(e) {
8495
- let { manifest: n, routeModules: t } = Tr(), [r, o] = R.useState([]);
8496
- return R.useEffect(() => {
8497
- let a = !1;
8498
- return dl(e, n, t).then(
8499
- (i) => {
8500
- a || o(i);
8501
- }
8502
- ), () => {
8503
- a = !0;
8504
- };
8505
- }, [e, n, t]), r;
8243
+ let { basename: t, navigator: r } = R.useContext(Ee), { hash: o, pathname: a, search: i } = Ke(e, { relative: n }), l = a;
8244
+ return t !== "/" && (l = a === "/" ? t : $e([t, a])), r.createHref({ pathname: l, search: i, hash: o });
8506
8245
  }
8507
- function bl({
8508
- page: e,
8509
- matches: n,
8510
- ...t
8511
- }) {
8512
- let r = De(), { manifest: o, routeModules: a } = Tr(), { basename: i } = zr(), { loaderData: l, matches: c } = vl(), u = R.useMemo(
8513
- () => Qn(
8514
- e,
8515
- n,
8516
- c,
8517
- o,
8518
- r,
8519
- "data"
8520
- ),
8521
- [e, n, c, o, r]
8522
- ), d = R.useMemo(
8523
- () => Qn(
8524
- e,
8525
- n,
8526
- c,
8527
- o,
8528
- r,
8529
- "assets"
8530
- ),
8531
- [e, n, c, o, r]
8532
- ), g = R.useMemo(() => {
8533
- if (e === r.pathname + r.search + r.hash)
8534
- return [];
8535
- let v = /* @__PURE__ */ new Set(), m = !1;
8536
- if (n.forEach((h) => {
8537
- var b;
8538
- let k = o.routes[h.route.id];
8539
- !k || !k.hasLoader || (!u.some(($) => $.route.id === h.route.id) && h.route.id in l && ((b = a[h.route.id]) != null && b.shouldRevalidate) || k.hasClientLoader ? m = !0 : v.add(h.route.id));
8540
- }), v.size === 0)
8541
- return [];
8542
- let w = sl(e, i, "data");
8543
- return m && v.size > 0 && w.searchParams.set(
8544
- "_routes",
8545
- n.filter((h) => v.has(h.route.id)).map((h) => h.route.id).join(",")
8546
- ), [w.pathname + w.search];
8547
- }, [
8548
- i,
8549
- l,
8550
- r,
8551
- o,
8552
- u,
8553
- n,
8554
- e,
8555
- a
8556
- ]), p = R.useMemo(
8557
- () => pl(d, o),
8558
- [d, o]
8559
- ), f = wl(d);
8560
- return /* @__PURE__ */ R.createElement(R.Fragment, null, g.map((v) => /* @__PURE__ */ R.createElement("link", { key: v, rel: "prefetch", as: "fetch", href: v, ...t })), p.map((v) => /* @__PURE__ */ R.createElement("link", { key: v, rel: "modulepreload", href: v, ...t })), f.map(({ key: v, link: m }) => (
8561
- // these don't spread `linkProps` because they are full link descriptors
8562
- // already with their own props
8563
- /* @__PURE__ */ R.createElement("link", { key: v, ...m })
8564
- )));
8246
+ function ht() {
8247
+ return R.useContext(un) != null;
8565
8248
  }
8566
- function yl(...e) {
8567
- return (n) => {
8568
- e.forEach((t) => {
8569
- typeof t == "function" ? t(n) : t != null && (t.current = n);
8570
- });
8571
- };
8249
+ function De() {
8250
+ return xe(
8251
+ ht(),
8252
+ // TODO: This error is probably because they somehow have 2 versions of the
8253
+ // router loaded. We can help them understand how to avoid that.
8254
+ "useLocation() may be used only in the context of a <Router> component."
8255
+ ), R.useContext(un).location;
8572
8256
  }
8573
- var Or = typeof window < "u" && typeof window.document < "u" && typeof window.document.createElement < "u";
8574
- try {
8575
- Or && (window.__reactRouterVersion = // @ts-expect-error
8576
- "7.7.1");
8577
- } catch {
8257
+ var Fr = "You should call navigate() in a React.useEffect(), not when your component is first rendered.";
8258
+ function Ar(e) {
8259
+ R.useContext(Ee).static || R.useLayoutEffect(e);
8578
8260
  }
8579
- var Ir = /^(?:[a-z][a-z0-9+.-]*:|\/\/)/i, vn = R.forwardRef(
8580
- function({
8581
- onClick: n,
8582
- discover: t = "render",
8583
- prefetch: r = "none",
8584
- relative: o,
8585
- reloadDocument: a,
8586
- replace: i,
8587
- state: l,
8588
- target: c,
8589
- to: u,
8590
- preventScrollReset: d,
8591
- viewTransition: g,
8592
- ...p
8593
- }, f) {
8594
- let { basename: v } = R.useContext(Ee), m = typeof u == "string" && Ir.test(u), w, h = !1;
8595
- if (typeof u == "string" && m && (w = u, Or))
8596
- try {
8597
- let F = new URL(window.location.href), Z = u.startsWith("//") ? new URL(F.protocol + u) : new URL(u), ae = Fe(Z.pathname, v);
8598
- Z.origin === F.origin && ae != null ? u = ae + Z.search + Z.hash : h = !0;
8599
- } catch {
8600
- _e(
8601
- !1,
8602
- `<Link to="${u}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`
8603
- );
8261
+ function Ii() {
8262
+ let { isDataRoute: e } = R.useContext(Pe);
8263
+ return e ? Qi() : Vi();
8264
+ }
8265
+ function Vi() {
8266
+ xe(
8267
+ ht(),
8268
+ // TODO: This error is probably because they somehow have 2 versions of the
8269
+ // router loaded. We can help them understand how to avoid that.
8270
+ "useNavigate() may be used only in the context of a <Router> component."
8271
+ );
8272
+ let e = R.useContext(Ie), { basename: n, navigator: t } = R.useContext(Ee), { matches: r } = R.useContext(Pe), { pathname: o } = De(), a = JSON.stringify(Er(r)), i = R.useRef(!1);
8273
+ return Ar(() => {
8274
+ i.current = !0;
8275
+ }), R.useCallback(
8276
+ (c, u = {}) => {
8277
+ if (_e(i.current, Fr), !i.current) return;
8278
+ if (typeof c == "number") {
8279
+ t.go(c);
8280
+ return;
8604
8281
  }
8605
- let k = Ti(u, { relative: o }), [b, $, y] = xl(
8282
+ let d = Pr(
8283
+ c,
8284
+ JSON.parse(a),
8285
+ o,
8286
+ u.relative === "path"
8287
+ );
8288
+ e == null && n !== "/" && (d.pathname = d.pathname === "/" ? n : $e([n, d.pathname])), (u.replace ? t.replace : t.push)(
8289
+ d,
8290
+ u.state,
8291
+ u
8292
+ );
8293
+ },
8294
+ [
8295
+ n,
8296
+ t,
8297
+ a,
8298
+ o,
8299
+ e
8300
+ ]
8301
+ );
8302
+ }
8303
+ R.createContext(null);
8304
+ function Ke(e, { relative: n } = {}) {
8305
+ let { matches: t } = R.useContext(Pe), { pathname: r } = De(), o = JSON.stringify(Er(t));
8306
+ return R.useMemo(
8307
+ () => Pr(
8308
+ e,
8309
+ JSON.parse(o),
8606
8310
  r,
8607
- p
8608
- ), O = jl(u, {
8609
- replace: i,
8610
- state: l,
8611
- target: c,
8612
- preventScrollReset: d,
8613
- relative: o,
8614
- viewTransition: g
8615
- });
8616
- function D(F) {
8617
- n && n(F), F.defaultPrevented || O(F);
8618
- }
8619
- let V = (
8620
- // eslint-disable-next-line jsx-a11y/anchor-has-content
8621
- /* @__PURE__ */ R.createElement(
8622
- "a",
8623
- {
8624
- ...p,
8625
- ...y,
8626
- href: w || k,
8627
- onClick: h || a ? n : D,
8628
- ref: yl(f, $),
8629
- target: c,
8630
- "data-discover": !m && t === "render" ? "true" : void 0
8631
- }
8632
- )
8311
+ n === "path"
8312
+ ),
8313
+ [e, o, r, n]
8314
+ );
8315
+ }
8316
+ function Hi(e, n, t, r) {
8317
+ xe(
8318
+ ht(),
8319
+ // TODO: This error is probably because they somehow have 2 versions of the
8320
+ // router loaded. We can help them understand how to avoid that.
8321
+ "useRoutes() may be used only in the context of a <Router> component."
8322
+ );
8323
+ let { navigator: o } = R.useContext(Ee), { matches: a } = R.useContext(Pe), i = a[a.length - 1], l = i ? i.params : {}, c = i ? i.pathname : "/", u = i ? i.pathnameBase : "/", d = i && i.route;
8324
+ {
8325
+ let h = d && d.path || "";
8326
+ Nr(
8327
+ c,
8328
+ !d || h.endsWith("*") || h.endsWith("*?"),
8329
+ `You rendered descendant <Routes> (or called \`useRoutes()\`) at "${c}" (under <Route path="${h}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
8330
+
8331
+ Please change the parent <Route path="${h}"> to <Route path="${h === "/" ? "*" : `${h}/*`}">.`
8633
8332
  );
8634
- return b && !m ? /* @__PURE__ */ R.createElement(R.Fragment, null, V, /* @__PURE__ */ R.createElement(hl, { page: k })) : V;
8635
8333
  }
8636
- );
8637
- vn.displayName = "Link";
8638
- var Vr = R.forwardRef(
8639
- function({
8640
- "aria-current": n = "page",
8641
- caseSensitive: t = !1,
8642
- className: r = "",
8643
- end: o = !1,
8644
- style: a,
8645
- to: i,
8646
- viewTransition: l,
8647
- children: c,
8648
- ...u
8649
- }, d) {
8650
- let g = Ke(i, { relative: u.relative }), p = De(), f = R.useContext(xt), { navigator: v, basename: m } = R.useContext(Ee), w = f != null && // Conditional usage is OK here because the usage of a data router is static
8651
- // eslint-disable-next-line react-hooks/rules-of-hooks
8652
- El(g) && l === !0, h = v.encodeLocation ? v.encodeLocation(g).pathname : g.pathname, k = p.pathname, b = f && f.navigation && f.navigation.location ? f.navigation.location.pathname : null;
8653
- t || (k = k.toLowerCase(), b = b ? b.toLowerCase() : null, h = h.toLowerCase()), b && m && (b = Fe(b, m) || b);
8654
- const $ = h !== "/" && h.endsWith("/") ? h.length - 1 : h.length;
8655
- let y = k === h || !o && k.startsWith(h) && k.charAt($) === "/", O = b != null && (b === h || !o && b.startsWith(h) && b.charAt(h.length) === "/"), D = {
8656
- isActive: y,
8657
- isPending: O,
8658
- isTransitioning: w
8659
- }, V = y ? n : void 0, F;
8660
- typeof r == "function" ? F = r(D) : F = [
8661
- r,
8662
- y ? "active" : null,
8663
- O ? "pending" : null,
8664
- w ? "transitioning" : null
8665
- ].filter(Boolean).join(" ");
8666
- let Z = typeof a == "function" ? a(D) : a;
8667
- return /* @__PURE__ */ R.createElement(
8668
- vn,
8669
- {
8670
- ...u,
8671
- "aria-current": V,
8672
- className: F,
8673
- ref: d,
8674
- style: Z,
8675
- to: i,
8676
- viewTransition: l
8677
- },
8678
- typeof c == "function" ? c(D) : c
8679
- );
8334
+ let g = De(), p;
8335
+ p = g;
8336
+ let f = p.pathname || "/", v = f;
8337
+ if (u !== "/") {
8338
+ let h = u.replace(/^\//, "").split("/");
8339
+ v = "/" + f.replace(/^\//, "").split("/").slice(h.length).join("/");
8680
8340
  }
8681
- );
8682
- Vr.displayName = "NavLink";
8683
- var Cl = R.forwardRef(
8684
- ({
8685
- discover: e = "render",
8686
- fetcherKey: n,
8687
- navigate: t,
8688
- reloadDocument: r,
8689
- replace: o,
8690
- state: a,
8691
- method: i = ut,
8692
- action: l,
8693
- onSubmit: c,
8694
- relative: u,
8695
- preventScrollReset: d,
8696
- viewTransition: g,
8697
- ...p
8698
- }, f) => {
8699
- let v = $l(), m = _l(l, { relative: u }), w = i.toLowerCase() === "get" ? "get" : "post", h = typeof l == "string" && Ir.test(l), k = (b) => {
8700
- if (c && c(b), b.defaultPrevented) return;
8701
- b.preventDefault();
8702
- let $ = b.nativeEvent.submitter, y = ($ == null ? void 0 : $.getAttribute("formmethod")) || i;
8703
- v($ || b.currentTarget, {
8704
- fetcherKey: n,
8705
- method: y,
8706
- navigate: t,
8707
- replace: o,
8708
- state: a,
8709
- relative: u,
8710
- preventScrollReset: d,
8711
- viewTransition: g
8712
- });
8341
+ let m = kr(e, { pathname: v });
8342
+ return _e(
8343
+ d || m != null,
8344
+ `No routes matched location "${p.pathname}${p.search}${p.hash}" `
8345
+ ), _e(
8346
+ m == null || m[m.length - 1].route.element !== void 0 || m[m.length - 1].route.Component !== void 0 || m[m.length - 1].route.lazy !== void 0,
8347
+ `Matched leaf route at location "${p.pathname}${p.search}${p.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`
8348
+ ), Ui(
8349
+ m && m.map(
8350
+ (h) => Object.assign({}, h, {
8351
+ params: Object.assign({}, l, h.params),
8352
+ pathname: $e([
8353
+ u,
8354
+ // Re-encode pathnames that were decoded inside matchRoutes
8355
+ o.encodeLocation ? o.encodeLocation(h.pathname).pathname : h.pathname
8356
+ ]),
8357
+ pathnameBase: h.pathnameBase === "/" ? u : $e([
8358
+ u,
8359
+ // Re-encode pathnames that were decoded inside matchRoutes
8360
+ o.encodeLocation ? o.encodeLocation(h.pathnameBase).pathname : h.pathnameBase
8361
+ ])
8362
+ })
8363
+ ),
8364
+ a,
8365
+ t,
8366
+ r
8367
+ );
8368
+ }
8369
+ function Bi() {
8370
+ let e = Ji(), n = Ni(e) ? `${e.status} ${e.statusText}` : e instanceof Error ? e.message : JSON.stringify(e), t = e instanceof Error ? e.stack : null, r = "rgba(200,200,200, 0.5)", o = { padding: "0.5rem", backgroundColor: r }, a = { padding: "2px 4px", backgroundColor: r }, i = null;
8371
+ return console.error(
8372
+ "Error handled by React Router default ErrorBoundary:",
8373
+ e
8374
+ ), i = /* @__PURE__ */ R.createElement(R.Fragment, null, /* @__PURE__ */ R.createElement("p", null, "💿 Hey developer 👋"), /* @__PURE__ */ R.createElement("p", null, "You can provide a way better UX than this when your app throws errors by providing your own ", /* @__PURE__ */ R.createElement("code", { style: a }, "ErrorBoundary"), " or", " ", /* @__PURE__ */ R.createElement("code", { style: a }, "errorElement"), " prop on your route.")), /* @__PURE__ */ R.createElement(R.Fragment, null, /* @__PURE__ */ R.createElement("h2", null, "Unexpected Application Error!"), /* @__PURE__ */ R.createElement("h3", { style: { fontStyle: "italic" } }, n), t ? /* @__PURE__ */ R.createElement("pre", { style: o }, t) : null, i);
8375
+ }
8376
+ var qi = /* @__PURE__ */ R.createElement(Bi, null), Gi = class extends R.Component {
8377
+ constructor(e) {
8378
+ super(e), this.state = {
8379
+ location: e.location,
8380
+ revalidation: e.revalidation,
8381
+ error: e.error
8713
8382
  };
8714
- return /* @__PURE__ */ R.createElement(
8715
- "form",
8383
+ }
8384
+ static getDerivedStateFromError(e) {
8385
+ return { error: e };
8386
+ }
8387
+ static getDerivedStateFromProps(e, n) {
8388
+ return n.location !== e.location || n.revalidation !== "idle" && e.revalidation === "idle" ? {
8389
+ error: e.error,
8390
+ location: e.location,
8391
+ revalidation: e.revalidation
8392
+ } : {
8393
+ error: e.error !== void 0 ? e.error : n.error,
8394
+ location: n.location,
8395
+ revalidation: e.revalidation || n.revalidation
8396
+ };
8397
+ }
8398
+ componentDidCatch(e, n) {
8399
+ console.error(
8400
+ "React Router caught the following error during render",
8401
+ e,
8402
+ n
8403
+ );
8404
+ }
8405
+ render() {
8406
+ return this.state.error !== void 0 ? /* @__PURE__ */ R.createElement(Pe.Provider, { value: this.props.routeContext }, /* @__PURE__ */ R.createElement(
8407
+ dn.Provider,
8716
8408
  {
8717
- ref: f,
8718
- method: w,
8719
- action: m,
8720
- onSubmit: r ? c : k,
8721
- ...p,
8722
- "data-discover": !h && e === "render" ? "true" : void 0
8409
+ value: this.state.error,
8410
+ children: this.props.component
8723
8411
  }
8412
+ )) : this.props.children;
8413
+ }
8414
+ };
8415
+ function Wi({ routeContext: e, match: n, children: t }) {
8416
+ let r = R.useContext(Ie);
8417
+ return r && r.static && r.staticContext && (n.route.errorElement || n.route.ErrorBoundary) && (r.staticContext._deepestRenderedBoundaryId = n.route.id), /* @__PURE__ */ R.createElement(Pe.Provider, { value: e }, t);
8418
+ }
8419
+ function Ui(e, n = [], t = null, r = null) {
8420
+ if (e == null) {
8421
+ if (!t)
8422
+ return null;
8423
+ if (t.errors)
8424
+ e = t.matches;
8425
+ else if (n.length === 0 && !t.initialized && t.matches.length > 0)
8426
+ e = t.matches;
8427
+ else
8428
+ return null;
8429
+ }
8430
+ let o = e, a = t == null ? void 0 : t.errors;
8431
+ if (a != null) {
8432
+ let c = o.findIndex(
8433
+ (u) => u.route.id && (a == null ? void 0 : a[u.route.id]) !== void 0
8434
+ );
8435
+ xe(
8436
+ c >= 0,
8437
+ `Could not find a matching route for errors on route IDs: ${Object.keys(
8438
+ a
8439
+ ).join(",")}`
8440
+ ), o = o.slice(
8441
+ 0,
8442
+ Math.min(o.length, c + 1)
8724
8443
  );
8725
8444
  }
8726
- );
8727
- Cl.displayName = "Form";
8728
- function Sl(e) {
8445
+ let i = !1, l = -1;
8446
+ if (t)
8447
+ for (let c = 0; c < o.length; c++) {
8448
+ let u = o[c];
8449
+ if ((u.route.HydrateFallback || u.route.hydrateFallbackElement) && (l = c), u.route.id) {
8450
+ let { loaderData: d, errors: g } = t, p = u.route.loader && !d.hasOwnProperty(u.route.id) && (!g || g[u.route.id] === void 0);
8451
+ if (u.route.lazy || p) {
8452
+ i = !0, l >= 0 ? o = o.slice(0, l + 1) : o = [o[0]];
8453
+ break;
8454
+ }
8455
+ }
8456
+ }
8457
+ return o.reduceRight(
8458
+ (c, u, d) => {
8459
+ let g, p = !1, f = null, v = null;
8460
+ t && (g = a && u.route.id ? a[u.route.id] : void 0, f = u.route.errorElement || qi, i && (l < 0 && d === 0 ? (Nr(
8461
+ "route-fallback",
8462
+ !1,
8463
+ "No `HydrateFallback` element provided to render during initial hydration"
8464
+ ), p = !0, v = null) : l === d && (p = !0, v = u.route.hydrateFallbackElement || null)));
8465
+ let m = n.concat(o.slice(0, d + 1)), w = () => {
8466
+ let h;
8467
+ return g ? h = f : p ? h = v : u.route.Component ? h = /* @__PURE__ */ R.createElement(u.route.Component, null) : u.route.element ? h = u.route.element : h = c, /* @__PURE__ */ R.createElement(
8468
+ Wi,
8469
+ {
8470
+ match: u,
8471
+ routeContext: {
8472
+ outlet: c,
8473
+ matches: m,
8474
+ isDataRoute: t != null
8475
+ },
8476
+ children: h
8477
+ }
8478
+ );
8479
+ };
8480
+ return t && (u.route.ErrorBoundary || u.route.errorElement || d === 0) ? /* @__PURE__ */ R.createElement(
8481
+ Gi,
8482
+ {
8483
+ location: t.location,
8484
+ revalidation: t.revalidation,
8485
+ component: f,
8486
+ error: g,
8487
+ children: w(),
8488
+ routeContext: { outlet: null, matches: m, isDataRoute: !0 }
8489
+ }
8490
+ ) : w();
8491
+ },
8492
+ null
8493
+ );
8494
+ }
8495
+ function pn(e) {
8729
8496
  return `${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`;
8730
8497
  }
8731
- function Hr(e) {
8498
+ function Yi(e) {
8732
8499
  let n = R.useContext(Ie);
8733
- return xe(n, Sl(e)), n;
8500
+ return xe(n, pn(e)), n;
8734
8501
  }
8735
- function jl(e, {
8736
- target: n,
8737
- replace: t,
8738
- state: r,
8739
- preventScrollReset: o,
8740
- relative: a,
8741
- viewTransition: i
8742
- } = {}) {
8743
- let l = Oi(), c = De(), u = Ke(e, { relative: a });
8744
- return R.useCallback(
8745
- (d) => {
8746
- if (ol(d, n)) {
8747
- d.preventDefault();
8748
- let g = t !== void 0 ? t : nn(c) === nn(u);
8749
- l(e, {
8750
- replace: g,
8751
- state: r,
8752
- preventScrollReset: o,
8753
- relative: a,
8754
- viewTransition: i
8755
- });
8756
- }
8757
- },
8758
- [
8759
- c,
8760
- l,
8761
- u,
8762
- t,
8763
- r,
8764
- n,
8765
- e,
8766
- o,
8767
- a,
8768
- i
8769
- ]
8502
+ function Zi(e) {
8503
+ let n = R.useContext(xt);
8504
+ return xe(n, pn(e)), n;
8505
+ }
8506
+ function Ki(e) {
8507
+ let n = R.useContext(Pe);
8508
+ return xe(n, pn(e)), n;
8509
+ }
8510
+ function fn(e) {
8511
+ let n = Ki(e), t = n.matches[n.matches.length - 1];
8512
+ return xe(
8513
+ t.route.id,
8514
+ `${e} can only be used on routes that contain a unique "id"`
8515
+ ), t.route.id;
8516
+ }
8517
+ function Xi() {
8518
+ return fn(
8519
+ "useRouteId"
8520
+ /* UseRouteId */
8770
8521
  );
8771
8522
  }
8772
- var Rl = 0, kl = () => `__${String(++Rl)}__`;
8773
- function $l() {
8774
- let { router: e } = Hr(
8775
- "useSubmit"
8776
- /* UseSubmit */
8777
- ), { basename: n } = R.useContext(Ee), t = Ki();
8778
- return R.useCallback(
8779
- async (r, o = {}) => {
8780
- let { action: a, method: i, encType: l, formData: c, body: u } = ll(
8781
- r,
8782
- n
8783
- );
8784
- if (o.navigate === !1) {
8785
- let d = o.fetcherKey || kl();
8786
- await e.fetch(d, t, o.action || a, {
8787
- preventScrollReset: o.preventScrollReset,
8788
- formData: c,
8789
- body: u,
8790
- formMethod: o.method || i,
8791
- formEncType: o.encType || l,
8792
- flushSync: o.flushSync
8793
- });
8794
- } else
8795
- await e.navigate(o.action || a, {
8796
- preventScrollReset: o.preventScrollReset,
8797
- formData: c,
8798
- body: u,
8799
- formMethod: o.method || i,
8800
- formEncType: o.encType || l,
8801
- replace: o.replace,
8802
- state: o.state,
8803
- fromRouteId: t,
8804
- flushSync: o.flushSync,
8805
- viewTransition: o.viewTransition
8806
- });
8523
+ function Ji() {
8524
+ var r;
8525
+ let e = R.useContext(dn), n = Zi(
8526
+ "useRouteError"
8527
+ /* UseRouteError */
8528
+ ), t = fn(
8529
+ "useRouteError"
8530
+ /* UseRouteError */
8531
+ );
8532
+ return e !== void 0 ? e : (r = n.errors) == null ? void 0 : r[t];
8533
+ }
8534
+ function Qi() {
8535
+ let { router: e } = Yi(
8536
+ "useNavigate"
8537
+ /* UseNavigateStable */
8538
+ ), n = fn(
8539
+ "useNavigate"
8540
+ /* UseNavigateStable */
8541
+ ), t = R.useRef(!1);
8542
+ return Ar(() => {
8543
+ t.current = !0;
8544
+ }), R.useCallback(
8545
+ async (o, a = {}) => {
8546
+ _e(t.current, Fr), t.current && (typeof o == "number" ? e.navigate(o) : await e.navigate(o, { fromRouteId: n, ...a }));
8807
8547
  },
8808
- [e, n, t]
8548
+ [e, n]
8809
8549
  );
8810
8550
  }
8811
- function _l(e, { relative: n } = {}) {
8812
- let { basename: t } = R.useContext(Ee), r = R.useContext(Pe);
8813
- xe(r, "useFormAction must be used inside a RouteContext");
8814
- let [o] = r.matches.slice(-1), a = { ...Ke(e || ".", { relative: n }) }, i = De();
8815
- if (e == null) {
8816
- a.search = i.search;
8817
- let l = new URLSearchParams(a.search), c = l.getAll("index");
8818
- if (c.some((d) => d === "")) {
8819
- l.delete("index"), c.filter((g) => g).forEach((g) => l.append("index", g));
8820
- let d = l.toString();
8821
- a.search = d ? `?${d}` : "";
8551
+ var Jn = {};
8552
+ function Nr(e, n, t) {
8553
+ !n && !Jn[e] && (Jn[e] = !0, _e(!1, t));
8554
+ }
8555
+ R.memo(el);
8556
+ function el({
8557
+ routes: e,
8558
+ future: n,
8559
+ state: t
8560
+ }) {
8561
+ return Hi(e, void 0, t, n);
8562
+ }
8563
+ var ut = "get", dt = "application/x-www-form-urlencoded";
8564
+ function wt(e) {
8565
+ return e != null && typeof e.tagName == "string";
8566
+ }
8567
+ function tl(e) {
8568
+ return wt(e) && e.tagName.toLowerCase() === "button";
8569
+ }
8570
+ function nl(e) {
8571
+ return wt(e) && e.tagName.toLowerCase() === "form";
8572
+ }
8573
+ function rl(e) {
8574
+ return wt(e) && e.tagName.toLowerCase() === "input";
8575
+ }
8576
+ function ol(e) {
8577
+ return !!(e.metaKey || e.altKey || e.ctrlKey || e.shiftKey);
8578
+ }
8579
+ function al(e, n) {
8580
+ return e.button === 0 && // Ignore everything but left clicks
8581
+ (!n || n === "_self") && // Let browser handle "target=_blank" etc.
8582
+ !ol(e);
8583
+ }
8584
+ var ct = null;
8585
+ function il() {
8586
+ if (ct === null)
8587
+ try {
8588
+ new FormData(
8589
+ document.createElement("form"),
8590
+ // @ts-expect-error if FormData supports the submitter parameter, this will throw
8591
+ 0
8592
+ ), ct = !1;
8593
+ } catch {
8594
+ ct = !0;
8595
+ }
8596
+ return ct;
8597
+ }
8598
+ var ll = /* @__PURE__ */ new Set([
8599
+ "application/x-www-form-urlencoded",
8600
+ "multipart/form-data",
8601
+ "text/plain"
8602
+ ]);
8603
+ function Bt(e) {
8604
+ return e != null && !ll.has(e) ? (_e(
8605
+ !1,
8606
+ `"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${dt}"`
8607
+ ), null) : e;
8608
+ }
8609
+ function sl(e, n) {
8610
+ let t, r, o, a, i;
8611
+ if (nl(e)) {
8612
+ let l = e.getAttribute("action");
8613
+ r = l ? Fe(l, n) : null, t = e.getAttribute("method") || ut, o = Bt(e.getAttribute("enctype")) || dt, a = new FormData(e);
8614
+ } else if (tl(e) || rl(e) && (e.type === "submit" || e.type === "image")) {
8615
+ let l = e.form;
8616
+ if (l == null)
8617
+ throw new Error(
8618
+ 'Cannot submit a <button> or <input type="submit"> without a <form>'
8619
+ );
8620
+ let c = e.getAttribute("formaction") || l.getAttribute("action");
8621
+ if (r = c ? Fe(c, n) : null, t = e.getAttribute("formmethod") || l.getAttribute("method") || ut, o = Bt(e.getAttribute("formenctype")) || Bt(l.getAttribute("enctype")) || dt, a = new FormData(l, e), !il()) {
8622
+ let { name: u, type: d, value: g } = e;
8623
+ if (d === "image") {
8624
+ let p = u ? `${u}.` : "";
8625
+ a.append(`${p}x`, "0"), a.append(`${p}y`, "0");
8626
+ } else u && a.append(u, g);
8822
8627
  }
8628
+ } else {
8629
+ if (wt(e))
8630
+ throw new Error(
8631
+ 'Cannot submit element that is not <form>, <button>, or <input type="submit|image">'
8632
+ );
8633
+ t = ut, r = null, o = dt, i = e;
8634
+ }
8635
+ return a && o === "text/plain" && (i = a, a = void 0), { action: r, method: t.toLowerCase(), encType: o, formData: a, body: i };
8636
+ }
8637
+ Object.getOwnPropertyNames(Object.prototype).sort().join("\0");
8638
+ function mn(e, n) {
8639
+ if (e === !1 || e === null || typeof e > "u")
8640
+ throw new Error(n);
8641
+ }
8642
+ function cl(e, n, t) {
8643
+ let r = typeof e == "string" ? new URL(
8644
+ e,
8645
+ // This can be called during the SSR flow via PrefetchPageLinksImpl so
8646
+ // don't assume window is available
8647
+ typeof window > "u" ? "server://singlefetch/" : window.location.origin
8648
+ ) : e;
8649
+ return r.pathname === "/" ? r.pathname = `_root.${t}` : n && Fe(r.pathname, n) === "/" ? r.pathname = `${n.replace(/\/$/, "")}/_root.${t}` : r.pathname = `${r.pathname.replace(/\/$/, "")}.${t}`, r;
8650
+ }
8651
+ async function ul(e, n) {
8652
+ if (e.id in n)
8653
+ return n[e.id];
8654
+ try {
8655
+ let t = await import(
8656
+ /* @vite-ignore */
8657
+ /* webpackIgnore: true */
8658
+ e.module
8659
+ );
8660
+ return n[e.id] = t, t;
8661
+ } catch (t) {
8662
+ return console.error(
8663
+ `Error loading route module \`${e.module}\`, reloading page...`
8664
+ ), console.error(t), window.__reactRouterContext && window.__reactRouterContext.isSpaMode, window.location.reload(), new Promise(() => {
8665
+ });
8823
8666
  }
8824
- return (!e || e === ".") && o.route.index && (a.search = a.search ? a.search.replace(/^\?/, "?index&") : "?index"), t !== "/" && (a.pathname = a.pathname === "/" ? t : $e([t, a.pathname])), nn(a);
8825
8667
  }
8826
- function El(e, { relative: n } = {}) {
8827
- let t = R.useContext(Fr);
8828
- xe(
8829
- t != null,
8830
- "`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?"
8668
+ function dl(e) {
8669
+ return e == null ? !1 : e.href == null ? e.rel === "preload" && typeof e.imageSrcSet == "string" && typeof e.imageSizes == "string" : typeof e.rel == "string" && typeof e.href == "string";
8670
+ }
8671
+ async function pl(e, n, t) {
8672
+ let r = await Promise.all(
8673
+ e.map(async (o) => {
8674
+ let a = n.routes[o.route.id];
8675
+ if (a) {
8676
+ let i = await ul(a, t);
8677
+ return i.links ? i.links() : [];
8678
+ }
8679
+ return [];
8680
+ })
8681
+ );
8682
+ return vl(
8683
+ r.flat(1).filter(dl).filter((o) => o.rel === "stylesheet" || o.rel === "preload").map(
8684
+ (o) => o.rel === "stylesheet" ? { ...o, rel: "prefetch", as: "style" } : { ...o, rel: "prefetch" }
8685
+ )
8831
8686
  );
8832
- let { basename: r } = Hr(
8833
- "useViewTransitionState"
8834
- /* useViewTransitionState */
8835
- ), o = Ke(e, { relative: n });
8836
- if (!t.isTransitioning)
8837
- return !1;
8838
- let a = Fe(t.currentLocation.pathname, r) || t.currentLocation.pathname, i = Fe(t.nextLocation.pathname, r) || t.nextLocation.pathname;
8839
- return gt(o.pathname, i) != null || gt(o.pathname, a) != null;
8840
8687
  }
8841
- const cs = ({
8842
- variant: e = "fixed",
8843
- activeTab: n,
8844
- navItems: t,
8845
- onTabChange: r,
8846
- className: o = "",
8847
- activeClass: a = "",
8848
- buttonClass: i = ""
8849
- }) => {
8850
- let l = "flex justify-around items-center bg-color-white shadow-sm text-color-gray-600 py-2 px-4";
8851
- return e === "fixed" ? l += " fixed bottom-0 left-0 right-0" : e === "floating" ? l += " fixed bottom-4 left-4 right-4 rounded-full" : e === "static" && (l += " static"), /* @__PURE__ */ s.jsx("nav", { className: `${l} ${o}`, children: t.map((c) => {
8852
- const u = c.label === n;
8853
- return /* @__PURE__ */ s.jsxs(
8854
- vn,
8855
- {
8856
- to: c.path,
8857
- onClick: () => r(c.label),
8858
- className: `flex flex-col items-center text-sm cursor-pointer text-color-gray-500 no-underline ${i}`,
8859
- children: [
8860
- /* @__PURE__ */ s.jsx("span", { className: `text-xl ${u ? `text-color-blue-500 ${a}` : ""}`, children: c.icon }),
8861
- /* @__PURE__ */ s.jsx("span", { className: `text-xs font-medium mt-1 ${u ? `text-color-blue-500 ${a}` : ""}`, children: c.label })
8862
- ]
8863
- },
8864
- c.label
8688
+ function Qn(e, n, t, r, o, a) {
8689
+ let i = (c, u) => t[u] ? c.route.id !== t[u].route.id : !0, l = (c, u) => {
8690
+ var d;
8691
+ return (
8692
+ // param change, /users/123 -> /users/456
8693
+ t[u].pathname !== c.pathname || // splat param changed, which is not present in match.path
8694
+ // e.g. /files/images/avatar.jpg -> files/finances.xls
8695
+ ((d = t[u].route.path) == null ? void 0 : d.endsWith("*")) && t[u].params["*"] !== c.params["*"]
8865
8696
  );
8866
- }) });
8867
- }, us = ({ items: e, separator: n = "/", className: t = "" }) => /* @__PURE__ */ s.jsx("nav", { className: `text-sm text-color-gray-600 ${t}`, "aria-label": "Breadcrumb", children: /* @__PURE__ */ s.jsx("ol", { className: "flex items-center space-x-1", children: e.map((r, o) => /* @__PURE__ */ s.jsxs("li", { className: "flex items-center", children: [
8868
- r.href ? /* @__PURE__ */ s.jsx(
8869
- "a",
8870
- {
8871
- href: r.href,
8872
- className: "text-color-gray-800 hover:underline font-medium",
8873
- children: r.label
8874
- }
8875
- ) : /* @__PURE__ */ s.jsx("span", { className: "text-color-gray-500 font-medium", children: r.label }),
8876
- o < e.length - 1 && /* @__PURE__ */ s.jsx("span", { className: "mx-2 text-color-gray-400", children: n })
8877
- ] }, o)) }) }), er = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], Pl = ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"], ds = ({
8878
- mode: e = "single",
8879
- type: n = "inline",
8880
- showTime: t = !1,
8881
- onlyTime: r = !1,
8882
- className: o,
8883
- onChange: a,
8884
- placeholder: i = "Select date",
8885
- icon: l = /* @__PURE__ */ s.jsx("svg", { className: "text-color-gray-500 size-5", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ s.jsx("path", { d: "M7 3V1H9V3H15V1H17V3H21C21.5523 3 22 3.44772 22 4V9H20V5H17V7H15V5H9V7H7V5H4V19H10V21H3C2.44772 21 2 20.5523 2 20V4C2 3.44772 2.44772 3 3 3H7ZM17 12C14.7909 12 13 13.7909 13 16C13 18.2091 14.7909 20 17 20C19.2091 20 21 18.2091 21 16C21 13.7909 19.2091 12 17 12ZM11 16C11 12.6863 13.6863 10 17 10C20.3137 10 23 12.6863 23 16C23 19.3137 20.3137 22 17 22C13.6863 22 11 19.3137 11 16ZM16 13V16.4142L18.2929 18.7071L19.7071 17.2929L18 15.5858V13H16Z" }) }),
8886
- disableBefore: c,
8887
- disableAfter: u,
8888
- selectedDate: d
8889
- }) => {
8890
- const [g, p] = K(!1), [f, v] = K(null), [m, w] = K(/* @__PURE__ */ new Date()), [h, k] = K(
8891
- d ? new Date(d) : null
8892
- ), [b, $] = K(null), [y, O] = K(null), [D, V] = K(null), [F, Z] = K({ hour: 12, minute: 0, ampm: "AM" }), ae = se(null), [ue, Q] = K(
8893
- d ? new Date(d) : null
8894
- ), [H, Y] = K(null), [T, te] = K(null);
8895
- ce(() => {
8896
- k(d ? new Date(d) : null), Q(d ? new Date(d) : null);
8897
- }, [d]);
8898
- const pe = (S) => {
8899
- S.stopPropagation(), v(S.currentTarget), p(!0);
8900
- }, X = () => {
8901
- p(!1);
8902
- }, x = (S) => !!(c && S.getTime() < c || u && S.getTime() > u), C = (S) => {
8903
- n === "inline" && ae.current && !ae.current.contains(S.target) && (e === "single" ? h || k(null) : e === "range" && (!b || !y) && ($(null), O(null)), p(!1));
8904
8697
  };
8905
- ce(() => (g ? document.addEventListener("mousedown", C) : document.removeEventListener("mousedown", C), () => {
8906
- document.removeEventListener("mousedown", C);
8907
- }), [g]);
8908
- const M = (S) => {
8909
- !S || x(S) || (e === "single" ? k(S) : e === "range" && (!b || b && y ? ($(S), O(null)) : S >= b ? O(S) : $(S)));
8910
- }, L = (S) => {
8911
- if (!S || x(S)) {
8912
- V(null);
8913
- return;
8698
+ return a === "assets" ? n.filter(
8699
+ (c, u) => i(c, u) || l(c, u)
8700
+ ) : a === "data" ? n.filter((c, u) => {
8701
+ var g;
8702
+ let d = r.routes[c.route.id];
8703
+ if (!d || !d.hasLoader)
8704
+ return !1;
8705
+ if (i(c, u) || l(c, u))
8706
+ return !0;
8707
+ if (c.route.shouldRevalidate) {
8708
+ let p = c.route.shouldRevalidate({
8709
+ currentUrl: new URL(
8710
+ o.pathname + o.search + o.hash,
8711
+ window.origin
8712
+ ),
8713
+ currentParams: ((g = t[0]) == null ? void 0 : g.params) || {},
8714
+ nextUrl: new URL(e, window.origin),
8715
+ nextParams: c.params,
8716
+ defaultShouldRevalidate: !0
8717
+ });
8718
+ if (typeof p == "boolean")
8719
+ return p;
8914
8720
  }
8915
- e === "range" && b && !y && V(S);
8916
- }, N = () => {
8917
- V(null);
8918
- }, I = () => {
8919
- if (p(!1), e === "single") {
8920
- const S = r ? /* @__PURE__ */ new Date() : h, j = S ? new Date(
8921
- S.getFullYear(),
8922
- S.getMonth(),
8923
- S.getDate(),
8924
- F.ampm === "PM" && F.hour !== 12 ? F.hour + 12 : F.ampm === "AM" && F.hour === 12 ? 0 : F.hour,
8925
- F.minute
8926
- ) : null;
8927
- Q(j), a == null || a(j ? j.getTime() : null);
8928
- } else e === "range" && (Y(b), te(y), a == null || a({
8929
- startDate: b ? b.getTime() : null,
8930
- endDate: y ? y.getTime() : null
8931
- }));
8932
- }, z = () => {
8933
- const S = new Date(m.getFullYear(), m.getMonth(), 1), j = new Date(m.getFullYear(), m.getMonth() + 1, 0), _ = [], J = S.getDay();
8934
- for (let ee = 0; ee < J; ee++)
8935
- _.push(null);
8936
- for (let ee = 1; ee <= j.getDate(); ee++)
8937
- _.push(new Date(m.getFullYear(), m.getMonth(), ee));
8938
- return _;
8939
- }, E = (S) => {
8940
- if (!S) return !1;
8941
- if (e === "single")
8942
- return (h == null ? void 0 : h.toDateString()) === S.toDateString();
8943
- if (e === "range") {
8944
- if (b && !y && D) {
8945
- const j = b < D ? b : D, _ = b < D ? D : b;
8946
- return S >= j && S <= _;
8947
- }
8948
- return b && y && S >= b && S <= y;
8721
+ return !0;
8722
+ }) : [];
8723
+ }
8724
+ function fl(e, n, { includeHydrateFallback: t } = {}) {
8725
+ return ml(
8726
+ e.map((r) => {
8727
+ let o = n.routes[r.route.id];
8728
+ if (!o) return [];
8729
+ let a = [o.module];
8730
+ return o.clientActionModule && (a = a.concat(o.clientActionModule)), o.clientLoaderModule && (a = a.concat(o.clientLoaderModule)), t && o.hydrateFallbackModule && (a = a.concat(o.hydrateFallbackModule)), o.imports && (a = a.concat(o.imports)), a;
8731
+ }).flat(1)
8732
+ );
8733
+ }
8734
+ function ml(e) {
8735
+ return [...new Set(e)];
8736
+ }
8737
+ function gl(e) {
8738
+ let n = {}, t = Object.keys(e).sort();
8739
+ for (let r of t)
8740
+ n[r] = e[r];
8741
+ return n;
8742
+ }
8743
+ function vl(e, n) {
8744
+ let t = /* @__PURE__ */ new Set();
8745
+ return new Set(n), e.reduce((r, o) => {
8746
+ let a = JSON.stringify(gl(o));
8747
+ return t.has(a) || (t.add(a), r.push({ key: a, link: o })), r;
8748
+ }, []);
8749
+ }
8750
+ function Dr() {
8751
+ let e = R.useContext(Ie);
8752
+ return mn(
8753
+ e,
8754
+ "You must render this element inside a <DataRouterContext.Provider> element"
8755
+ ), e;
8756
+ }
8757
+ function xl() {
8758
+ let e = R.useContext(xt);
8759
+ return mn(
8760
+ e,
8761
+ "You must render this element inside a <DataRouterStateContext.Provider> element"
8762
+ ), e;
8763
+ }
8764
+ var gn = R.createContext(void 0);
8765
+ gn.displayName = "FrameworkContext";
8766
+ function zr() {
8767
+ let e = R.useContext(gn);
8768
+ return mn(
8769
+ e,
8770
+ "You must render this element inside a <HydratedRouter> element"
8771
+ ), e;
8772
+ }
8773
+ function hl(e, n) {
8774
+ let t = R.useContext(gn), [r, o] = R.useState(!1), [a, i] = R.useState(!1), { onFocus: l, onBlur: c, onMouseEnter: u, onMouseLeave: d, onTouchStart: g } = n, p = R.useRef(null);
8775
+ R.useEffect(() => {
8776
+ if (e === "render" && i(!0), e === "viewport") {
8777
+ let m = (h) => {
8778
+ h.forEach((k) => {
8779
+ i(k.isIntersecting);
8780
+ });
8781
+ }, w = new IntersectionObserver(m, { threshold: 0.5 });
8782
+ return p.current && w.observe(p.current), () => {
8783
+ w.disconnect();
8784
+ };
8949
8785
  }
8950
- return !1;
8951
- }, P = (S, j) => {
8952
- if (!S)
8953
- return e === "range" ? j === "end" ? "End Date" : "Start Date" : r ? `${String(F.hour).padStart(2, "0")}:${String(F.minute).padStart(2, "0")} ${F.ampm}` : i;
8954
- if (r)
8955
- return `${String(F.hour).padStart(2, "0")}:${String(F.minute).padStart(2, "0")} ${F.ampm}`;
8956
- const _ = S.getDate().toString().padStart(2, "0"), J = er[S.getMonth()], ee = S.getFullYear(), de = t ? ` ${String(F.hour).padStart(2, "0")}:${String(F.minute).padStart(2, "0")} ${F.ampm}` : "";
8957
- return `${_} ${J} ${ee}${de}`;
8958
- }, B = /* @__PURE__ */ s.jsxs("div", { className: "flex items-center justify-between w-full border border-color-gray-300 rounded-md p-2", children: [
8959
- /* @__PURE__ */ s.jsx(
8960
- "select",
8961
- {
8962
- value: F.hour,
8963
- onChange: (S) => Z({ ...F, hour: parseInt(S.target.value) }),
8964
- className: "w-16 border-0 text-center bg-color-transparent outline-0",
8965
- children: Array.from({ length: 12 }, (S, j) => j + 1).map((S) => /* @__PURE__ */ s.jsx("option", { value: S, children: S.toString().padStart(2, "0") }, S))
8786
+ }, [e]), R.useEffect(() => {
8787
+ if (r) {
8788
+ let m = setTimeout(() => {
8789
+ i(!0);
8790
+ }, 100);
8791
+ return () => {
8792
+ clearTimeout(m);
8793
+ };
8794
+ }
8795
+ }, [r]);
8796
+ let f = () => {
8797
+ o(!0);
8798
+ }, v = () => {
8799
+ o(!1), i(!1);
8800
+ };
8801
+ return t ? e !== "intent" ? [a, p, {}] : [
8802
+ a,
8803
+ p,
8804
+ {
8805
+ onFocus: Ge(l, f),
8806
+ onBlur: Ge(c, v),
8807
+ onMouseEnter: Ge(u, f),
8808
+ onMouseLeave: Ge(d, v),
8809
+ onTouchStart: Ge(g, f)
8810
+ }
8811
+ ] : [!1, p, {}];
8812
+ }
8813
+ function Ge(e, n) {
8814
+ return (t) => {
8815
+ e && e(t), t.defaultPrevented || n(t);
8816
+ };
8817
+ }
8818
+ function wl({ page: e, ...n }) {
8819
+ let { router: t } = Dr(), r = R.useMemo(
8820
+ () => kr(t.routes, e, t.basename),
8821
+ [t.routes, e, t.basename]
8822
+ );
8823
+ return r ? /* @__PURE__ */ R.createElement(yl, { page: e, matches: r, ...n }) : null;
8824
+ }
8825
+ function bl(e) {
8826
+ let { manifest: n, routeModules: t } = zr(), [r, o] = R.useState([]);
8827
+ return R.useEffect(() => {
8828
+ let a = !1;
8829
+ return pl(e, n, t).then(
8830
+ (i) => {
8831
+ a || o(i);
8966
8832
  }
8833
+ ), () => {
8834
+ a = !0;
8835
+ };
8836
+ }, [e, n, t]), r;
8837
+ }
8838
+ function yl({
8839
+ page: e,
8840
+ matches: n,
8841
+ ...t
8842
+ }) {
8843
+ let r = De(), { manifest: o, routeModules: a } = zr(), { basename: i } = Dr(), { loaderData: l, matches: c } = xl(), u = R.useMemo(
8844
+ () => Qn(
8845
+ e,
8846
+ n,
8847
+ c,
8848
+ o,
8849
+ r,
8850
+ "data"
8967
8851
  ),
8968
- /* @__PURE__ */ s.jsx(
8969
- "select",
8970
- {
8971
- value: F.minute,
8972
- onChange: (S) => Z({ ...F, minute: parseInt(S.target.value) }),
8973
- className: "w-16 border-0 text-center bg-color-transparent outline-0 border-l border-color-gray-300",
8974
- children: Array.from({ length: 60 }, (S, j) => j).map((S) => /* @__PURE__ */ s.jsx("option", { value: S, children: S.toString().padStart(2, "0") }, S))
8975
- }
8852
+ [e, n, c, o, r]
8853
+ ), d = R.useMemo(
8854
+ () => Qn(
8855
+ e,
8856
+ n,
8857
+ c,
8858
+ o,
8859
+ r,
8860
+ "assets"
8976
8861
  ),
8977
- /* @__PURE__ */ s.jsxs(
8978
- "select",
8979
- {
8980
- value: F.ampm,
8981
- onChange: (S) => Z({ ...F, ampm: S.target.value }),
8982
- className: "w-16 border-0 text-center bg-color-transparent outline-0 border-l border-color-gray-300",
8983
- children: [
8984
- /* @__PURE__ */ s.jsx("option", { value: "AM", children: "AM" }),
8985
- /* @__PURE__ */ s.jsx("option", { value: "PM", children: "PM" })
8986
- ]
8862
+ [e, n, c, o, r]
8863
+ ), g = R.useMemo(() => {
8864
+ if (e === r.pathname + r.search + r.hash)
8865
+ return [];
8866
+ let v = /* @__PURE__ */ new Set(), m = !1;
8867
+ if (n.forEach((h) => {
8868
+ var b;
8869
+ let k = o.routes[h.route.id];
8870
+ !k || !k.hasLoader || (!u.some(($) => $.route.id === h.route.id) && h.route.id in l && ((b = a[h.route.id]) != null && b.shouldRevalidate) || k.hasClientLoader ? m = !0 : v.add(h.route.id));
8871
+ }), v.size === 0)
8872
+ return [];
8873
+ let w = cl(e, i, "data");
8874
+ return m && v.size > 0 && w.searchParams.set(
8875
+ "_routes",
8876
+ n.filter((h) => v.has(h.route.id)).map((h) => h.route.id).join(",")
8877
+ ), [w.pathname + w.search];
8878
+ }, [
8879
+ i,
8880
+ l,
8881
+ r,
8882
+ o,
8883
+ u,
8884
+ n,
8885
+ e,
8886
+ a
8887
+ ]), p = R.useMemo(
8888
+ () => fl(d, o),
8889
+ [d, o]
8890
+ ), f = bl(d);
8891
+ return /* @__PURE__ */ R.createElement(R.Fragment, null, g.map((v) => /* @__PURE__ */ R.createElement("link", { key: v, rel: "prefetch", as: "fetch", href: v, ...t })), p.map((v) => /* @__PURE__ */ R.createElement("link", { key: v, rel: "modulepreload", href: v, ...t })), f.map(({ key: v, link: m }) => (
8892
+ // these don't spread `linkProps` because they are full link descriptors
8893
+ // already with their own props
8894
+ /* @__PURE__ */ R.createElement("link", { key: v, ...m })
8895
+ )));
8896
+ }
8897
+ function Cl(...e) {
8898
+ return (n) => {
8899
+ e.forEach((t) => {
8900
+ typeof t == "function" ? t(n) : t != null && (t.current = n);
8901
+ });
8902
+ };
8903
+ }
8904
+ var Tr = typeof window < "u" && typeof window.document < "u" && typeof window.document.createElement < "u";
8905
+ try {
8906
+ Tr && (window.__reactRouterVersion = // @ts-expect-error
8907
+ "7.7.1");
8908
+ } catch {
8909
+ }
8910
+ var Or = /^(?:[a-z][a-z0-9+.-]*:|\/\/)/i, Ir = R.forwardRef(
8911
+ function({
8912
+ onClick: n,
8913
+ discover: t = "render",
8914
+ prefetch: r = "none",
8915
+ relative: o,
8916
+ reloadDocument: a,
8917
+ replace: i,
8918
+ state: l,
8919
+ target: c,
8920
+ to: u,
8921
+ preventScrollReset: d,
8922
+ viewTransition: g,
8923
+ ...p
8924
+ }, f) {
8925
+ let { basename: v } = R.useContext(Ee), m = typeof u == "string" && Or.test(u), w, h = !1;
8926
+ if (typeof u == "string" && m && (w = u, Tr))
8927
+ try {
8928
+ let F = new URL(window.location.href), Z = u.startsWith("//") ? new URL(F.protocol + u) : new URL(u), ae = Fe(Z.pathname, v);
8929
+ Z.origin === F.origin && ae != null ? u = ae + Z.search + Z.hash : h = !0;
8930
+ } catch {
8931
+ _e(
8932
+ !1,
8933
+ `<Link to="${u}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`
8934
+ );
8987
8935
  }
8988
- )
8989
- ] }), q = /* @__PURE__ */ s.jsxs(
8990
- "div",
8991
- {
8992
- ref: ae,
8993
- className: `${n === "dialog" ? "relative w-full" : "absolute z-50 mt-2 w-72 rounded-lg border border-color-gray-200 bg-color-white shadow-xl p-4"}`,
8994
- style: n === "dialog" ? void 0 : {
8995
- position: "absolute",
8996
- left: f == null ? void 0 : f.getBoundingClientRect().left,
8997
- top: f ? f.getBoundingClientRect().bottom + window.scrollY : 0
8998
- },
8999
- children: [
9000
- !r && /* @__PURE__ */ s.jsxs(s.Fragment, { children: [
9001
- /* @__PURE__ */ s.jsxs("div", { className: "flex items-center justify-between mb-3", children: [
9002
- /* @__PURE__ */ s.jsx(
9003
- Re,
9004
- {
9005
- variant: "transparent",
9006
- size: "small",
9007
- color: "gray",
9008
- roundedFull: !0,
9009
- onClick: () => w(new Date(m.getFullYear(), m.getMonth() - 1, 1)),
9010
- icon: /* @__PURE__ */ s.jsx("svg", { className: "size-5", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ s.jsx("path", { d: "M10.8284 12.0007L15.7782 16.9504L14.364 18.3646L8 12.0007L14.364 5.63672L15.7782 7.05093L10.8284 12.0007Z" }) })
9011
- }
9012
- ),
9013
- /* @__PURE__ */ s.jsxs("div", { className: "flex items-center gap-4", children: [
9014
- /* @__PURE__ */ s.jsx(
9015
- "select",
9016
- {
9017
- className: "text-sm outline-none",
9018
- value: m.getMonth(),
9019
- onChange: (S) => w(new Date(m.getFullYear(), parseInt(S.target.value), 1)),
9020
- children: er.map((S, j) => /* @__PURE__ */ s.jsx("option", { value: j, children: S }, S))
9021
- }
9022
- ),
9023
- /* @__PURE__ */ s.jsx(
9024
- "select",
9025
- {
9026
- className: "text-sm outline-none",
9027
- value: m.getFullYear(),
9028
- onChange: (S) => w(new Date(parseInt(S.target.value), m.getMonth(), 1)),
9029
- children: Array.from({ length: 150 }, (S, j) => (/* @__PURE__ */ new Date()).getFullYear() - 100 + j).map((S) => /* @__PURE__ */ s.jsx("option", { value: S, children: S }, S))
9030
- }
9031
- )
9032
- ] }),
9033
- /* @__PURE__ */ s.jsx(
9034
- Re,
9035
- {
9036
- variant: "transparent",
9037
- size: "small",
9038
- color: "gray",
9039
- roundedFull: !0,
9040
- onClick: () => w(new Date(m.getFullYear(), m.getMonth() + 1, 1)),
9041
- icon: /* @__PURE__ */ s.jsx("svg", { className: "size-5", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "currentColor", children: /* @__PURE__ */ s.jsx("path", { d: "M13.1717 12.0007L8.22192 7.05093L9.63614 5.63672L16.0001 12.0007L9.63614 18.3646L8.22192 16.9504L13.1717 12.0007Z" }) })
9042
- }
9043
- )
9044
- ] }),
9045
- /* @__PURE__ */ s.jsxs("div", { className: "grid grid-columns-7 gap-1 text-center text-sm mb-2", children: [
9046
- Pl.map((S) => /* @__PURE__ */ s.jsx("div", { className: "font-semibold", children: S }, S)),
9047
- z().map((S, j) => /* @__PURE__ */ s.jsx(
9048
- "div",
9049
- {
9050
- className: `size-8 flex justify-center items-center text-sm rounded-full transition-all
9051
- ${S ? "hover:bg-color-blue-100 cursor-pointer" : ""}
9052
- ${S && E(S) ? "bg-color-blue-500 hover:bg-color-blue-500 text-color-white" : ""}
9053
- ${S && x(S) ? "bg-color-gray-100 text-color-gray-400 !cursor-not-allowed hover:bg-color-gray-100" : ""}`,
9054
- onClick: () => S && M(S),
9055
- onMouseEnter: () => S && L(S),
9056
- onMouseLeave: N,
9057
- children: S ? S.getDate() : ""
9058
- },
9059
- j
9060
- ))
9061
- ] })
9062
- ] }),
9063
- (t || r) && B,
9064
- /* @__PURE__ */ s.jsx("div", { className: "mt-4 flex justify-end", children: /* @__PURE__ */ s.jsx(
9065
- Gt,
9066
- {
9067
- fullWidth: !0,
9068
- onClick: I,
9069
- disabled: e === "range" && !y && !r,
9070
- className: `${e === "range" && !y && !r ? "bg-color-gray-400 cursor-not-allowed" : ""}`,
9071
- children: "Confirm"
9072
- }
9073
- ) })
9074
- ]
8936
+ let k = Oi(u, { relative: o }), [b, $, y] = hl(
8937
+ r,
8938
+ p
8939
+ ), O = Rl(u, {
8940
+ replace: i,
8941
+ state: l,
8942
+ target: c,
8943
+ preventScrollReset: d,
8944
+ relative: o,
8945
+ viewTransition: g
8946
+ });
8947
+ function D(F) {
8948
+ n && n(F), F.defaultPrevented || O(F);
9075
8949
  }
9076
- );
9077
- return /* @__PURE__ */ s.jsxs("div", { className: "relative", children: [
9078
- /* @__PURE__ */ s.jsxs(
9079
- Gt,
8950
+ let V = (
8951
+ // eslint-disable-next-line jsx-a11y/anchor-has-content
8952
+ /* @__PURE__ */ R.createElement(
8953
+ "a",
8954
+ {
8955
+ ...p,
8956
+ ...y,
8957
+ href: w || k,
8958
+ onClick: h || a ? n : D,
8959
+ ref: Cl(f, $),
8960
+ target: c,
8961
+ "data-discover": !m && t === "render" ? "true" : void 0
8962
+ }
8963
+ )
8964
+ );
8965
+ return b && !m ? /* @__PURE__ */ R.createElement(R.Fragment, null, V, /* @__PURE__ */ R.createElement(wl, { page: k })) : V;
8966
+ }
8967
+ );
8968
+ Ir.displayName = "Link";
8969
+ var Vr = R.forwardRef(
8970
+ function({
8971
+ "aria-current": n = "page",
8972
+ caseSensitive: t = !1,
8973
+ className: r = "",
8974
+ end: o = !1,
8975
+ style: a,
8976
+ to: i,
8977
+ viewTransition: l,
8978
+ children: c,
8979
+ ...u
8980
+ }, d) {
8981
+ let g = Ke(i, { relative: u.relative }), p = De(), f = R.useContext(xt), { navigator: v, basename: m } = R.useContext(Ee), w = f != null && // Conditional usage is OK here because the usage of a data router is static
8982
+ // eslint-disable-next-line react-hooks/rules-of-hooks
8983
+ Pl(g) && l === !0, h = v.encodeLocation ? v.encodeLocation(g).pathname : g.pathname, k = p.pathname, b = f && f.navigation && f.navigation.location ? f.navigation.location.pathname : null;
8984
+ t || (k = k.toLowerCase(), b = b ? b.toLowerCase() : null, h = h.toLowerCase()), b && m && (b = Fe(b, m) || b);
8985
+ const $ = h !== "/" && h.endsWith("/") ? h.length - 1 : h.length;
8986
+ let y = k === h || !o && k.startsWith(h) && k.charAt($) === "/", O = b != null && (b === h || !o && b.startsWith(h) && b.charAt(h.length) === "/"), D = {
8987
+ isActive: y,
8988
+ isPending: O,
8989
+ isTransitioning: w
8990
+ }, V = y ? n : void 0, F;
8991
+ typeof r == "function" ? F = r(D) : F = [
8992
+ r,
8993
+ y ? "active" : null,
8994
+ O ? "pending" : null,
8995
+ w ? "transitioning" : null
8996
+ ].filter(Boolean).join(" ");
8997
+ let Z = typeof a == "function" ? a(D) : a;
8998
+ return /* @__PURE__ */ R.createElement(
8999
+ Ir,
9080
9000
  {
9081
- onClick: pe,
9082
- fullWidth: !0,
9083
- color: "gray",
9084
- variant: "outlined",
9085
- className: `!justify-between gap-2 ${o || ""}`,
9086
- children: [
9087
- e === "single" ? ue ? P(ue) : i : (
9088
- // Display rangeStart immediately if set, even if rangeEnd is null
9089
- b || H || T ? /* @__PURE__ */ s.jsxs(s.Fragment, { children: [
9090
- P(b || H, "start"),
9091
- " -",
9092
- " ",
9093
- P(y || T, "end")
9094
- ] }) : i
9095
- ),
9096
- l
9097
- ]
9001
+ ...u,
9002
+ "aria-current": V,
9003
+ className: F,
9004
+ ref: d,
9005
+ style: Z,
9006
+ to: i,
9007
+ viewTransition: l
9008
+ },
9009
+ typeof c == "function" ? c(D) : c
9010
+ );
9011
+ }
9012
+ );
9013
+ Vr.displayName = "NavLink";
9014
+ var Sl = R.forwardRef(
9015
+ ({
9016
+ discover: e = "render",
9017
+ fetcherKey: n,
9018
+ navigate: t,
9019
+ reloadDocument: r,
9020
+ replace: o,
9021
+ state: a,
9022
+ method: i = ut,
9023
+ action: l,
9024
+ onSubmit: c,
9025
+ relative: u,
9026
+ preventScrollReset: d,
9027
+ viewTransition: g,
9028
+ ...p
9029
+ }, f) => {
9030
+ let v = _l(), m = El(l, { relative: u }), w = i.toLowerCase() === "get" ? "get" : "post", h = typeof l == "string" && Or.test(l), k = (b) => {
9031
+ if (c && c(b), b.defaultPrevented) return;
9032
+ b.preventDefault();
9033
+ let $ = b.nativeEvent.submitter, y = ($ == null ? void 0 : $.getAttribute("formmethod")) || i;
9034
+ v($ || b.currentTarget, {
9035
+ fetcherKey: n,
9036
+ method: y,
9037
+ navigate: t,
9038
+ replace: o,
9039
+ state: a,
9040
+ relative: u,
9041
+ preventScrollReset: d,
9042
+ viewTransition: g
9043
+ });
9044
+ };
9045
+ return /* @__PURE__ */ R.createElement(
9046
+ "form",
9047
+ {
9048
+ ref: f,
9049
+ method: w,
9050
+ action: m,
9051
+ onSubmit: r ? c : k,
9052
+ ...p,
9053
+ "data-discover": !h && e === "render" ? "true" : void 0
9098
9054
  }
9099
- ),
9100
- n === "inline" ? /* @__PURE__ */ s.jsx(s.Fragment, { children: g && Ze(q, document.body) }) : /* @__PURE__ */ s.jsx(ci, { open: g, title: r ? "Select Time" : i, onClose: X, children: /* @__PURE__ */ s.jsx("div", { className: "w-72", children: q }) })
9101
- ] });
9102
- }, ps = ({
9103
- tabs: e,
9104
- activeKey: n,
9105
- onChange: t,
9106
- className: r = "",
9107
- tabsClass: o = "",
9108
- tabItemClass: a = "",
9109
- tabContentClass: i = "",
9110
- variant: l = "horizontal"
9111
- }) => {
9112
- const c = e.find((d) => d.key === n), u = l === "vertical";
9113
- return /* @__PURE__ */ s.jsxs(
9114
- "div",
9115
- {
9116
- className: `w-full flex ${u ? "flex-row" : "flex-col"} ${r}`,
9117
- children: [
9118
- /* @__PURE__ */ s.jsx(
9119
- "div",
9120
- {
9121
- className: `${u ? "flex flex-col min-w-[160px] border-r border-color-gray-200" : "flex space-x-6 border-b border-color-gray-200"} ${o}`,
9122
- children: e.map((d) => {
9123
- const g = n === d.key;
9124
- return /* @__PURE__ */ s.jsxs(
9125
- "button",
9126
- {
9127
- onClick: () => t(d.key),
9128
- className: `relative flex ${u ? "flex-row items-center px-4 py-3" : "flex-col items-center py-4"}
9129
- text-sm font-medium transition-color duration-200 bg-color-transparent
9130
- ${g ? "text-color-blue-500" : "text-color-gray-600 hover:text-color-blue-500 cursor-pointer"}
9131
- ${a}`,
9132
- children: [
9133
- /* @__PURE__ */ s.jsxs("div", { className: `flex items-center ${u ? "space-x-3" : "space-x-2"}`, children: [
9134
- d.icon && /* @__PURE__ */ s.jsx("span", { children: d.icon }),
9135
- /* @__PURE__ */ s.jsx("span", { children: d.label })
9136
- ] }),
9137
- g && (u ? /* @__PURE__ */ s.jsx("div", { className: "absolute right-0 top-3 bottom-3 w-1 bg-color-blue-500 rounded-full" }) : /* @__PURE__ */ s.jsx("div", { className: "absolute bottom-0 left-0 right-0 h-1 bg-color-blue-500 rounded-full" }))
9138
- ]
9139
- },
9140
- d.key
9141
- );
9142
- })
9143
- }
9144
- ),
9145
- /* @__PURE__ */ s.jsx("div", { className: `mt-4 ${u ? "ml-6 mt-0" : ""} ${i}`, children: c == null ? void 0 : c.content })
9146
- ]
9055
+ );
9056
+ }
9057
+ );
9058
+ Sl.displayName = "Form";
9059
+ function jl(e) {
9060
+ return `${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`;
9061
+ }
9062
+ function Hr(e) {
9063
+ let n = R.useContext(Ie);
9064
+ return xe(n, jl(e)), n;
9065
+ }
9066
+ function Rl(e, {
9067
+ target: n,
9068
+ replace: t,
9069
+ state: r,
9070
+ preventScrollReset: o,
9071
+ relative: a,
9072
+ viewTransition: i
9073
+ } = {}) {
9074
+ let l = Ii(), c = De(), u = Ke(e, { relative: a });
9075
+ return R.useCallback(
9076
+ (d) => {
9077
+ if (al(d, n)) {
9078
+ d.preventDefault();
9079
+ let g = t !== void 0 ? t : nn(c) === nn(u);
9080
+ l(e, {
9081
+ replace: g,
9082
+ state: r,
9083
+ preventScrollReset: o,
9084
+ relative: a,
9085
+ viewTransition: i
9086
+ });
9087
+ }
9088
+ },
9089
+ [
9090
+ c,
9091
+ l,
9092
+ u,
9093
+ t,
9094
+ r,
9095
+ n,
9096
+ e,
9097
+ o,
9098
+ a,
9099
+ i
9100
+ ]
9101
+ );
9102
+ }
9103
+ var kl = 0, $l = () => `__${String(++kl)}__`;
9104
+ function _l() {
9105
+ let { router: e } = Hr(
9106
+ "useSubmit"
9107
+ /* UseSubmit */
9108
+ ), { basename: n } = R.useContext(Ee), t = Xi();
9109
+ return R.useCallback(
9110
+ async (r, o = {}) => {
9111
+ let { action: a, method: i, encType: l, formData: c, body: u } = sl(
9112
+ r,
9113
+ n
9114
+ );
9115
+ if (o.navigate === !1) {
9116
+ let d = o.fetcherKey || $l();
9117
+ await e.fetch(d, t, o.action || a, {
9118
+ preventScrollReset: o.preventScrollReset,
9119
+ formData: c,
9120
+ body: u,
9121
+ formMethod: o.method || i,
9122
+ formEncType: o.encType || l,
9123
+ flushSync: o.flushSync
9124
+ });
9125
+ } else
9126
+ await e.navigate(o.action || a, {
9127
+ preventScrollReset: o.preventScrollReset,
9128
+ formData: c,
9129
+ body: u,
9130
+ formMethod: o.method || i,
9131
+ formEncType: o.encType || l,
9132
+ replace: o.replace,
9133
+ state: o.state,
9134
+ fromRouteId: t,
9135
+ flushSync: o.flushSync,
9136
+ viewTransition: o.viewTransition
9137
+ });
9138
+ },
9139
+ [e, n, t]
9140
+ );
9141
+ }
9142
+ function El(e, { relative: n } = {}) {
9143
+ let { basename: t } = R.useContext(Ee), r = R.useContext(Pe);
9144
+ xe(r, "useFormAction must be used inside a RouteContext");
9145
+ let [o] = r.matches.slice(-1), a = { ...Ke(e || ".", { relative: n }) }, i = De();
9146
+ if (e == null) {
9147
+ a.search = i.search;
9148
+ let l = new URLSearchParams(a.search), c = l.getAll("index");
9149
+ if (c.some((d) => d === "")) {
9150
+ l.delete("index"), c.filter((g) => g).forEach((g) => l.append("index", g));
9151
+ let d = l.toString();
9152
+ a.search = d ? `?${d}` : "";
9147
9153
  }
9154
+ }
9155
+ return (!e || e === ".") && o.route.index && (a.search = a.search ? a.search.replace(/^\?/, "?index&") : "?index"), t !== "/" && (a.pathname = a.pathname === "/" ? t : $e([t, a.pathname])), nn(a);
9156
+ }
9157
+ function Pl(e, { relative: n } = {}) {
9158
+ let t = R.useContext(Mr);
9159
+ xe(
9160
+ t != null,
9161
+ "`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?"
9148
9162
  );
9149
- }, fs = ({
9150
- stats: e = [],
9151
- className: n = ""
9152
- }) => /* @__PURE__ */ s.jsx(ii, { className: `w-full ${n}`, children: /* @__PURE__ */ s.jsx("div", { className: "grid grid-columns-1 sm:grid-columns-1 md:grid-columns-2 lg:grid-columns-4 gap-4 justify-items-center", children: e.map((t, r) => /* @__PURE__ */ s.jsxs(
9153
- "div",
9154
- {
9155
- className: `flex items-center justify-center gap-4 lg:not-last:border-r md:not-last:border-r md:nth-2:border-r-0 md:not-last:border-b-0 not-last:border-b border-color-gray-200
9156
- md:p-2 not-last:pb-4 w-full h-full ${t.className}`,
9157
- children: [
9158
- /* @__PURE__ */ s.jsx("div", { className: `p-2 ${t.accentColor} ${t.accentBackground} flex-shrink-0 flex items-center justify-center p-4 text-md rounded-lg`, children: t.icon }),
9159
- /* @__PURE__ */ s.jsxs("div", { className: "flex flex-col justify-center gap-1 w-full ", children: [
9160
- /* @__PURE__ */ s.jsx(
9161
- "div",
9162
- {
9163
- className: "text-sm",
9164
- children: t.name
9165
- }
9166
- ),
9167
- /* @__PURE__ */ s.jsx("div", { className: `text-xl ${t.accentColor} font-semibold`, children: t.value })
9168
- ] })
9169
- ]
9170
- },
9171
- r
9172
- )) }) });
9163
+ let { basename: r } = Hr(
9164
+ "useViewTransitionState"
9165
+ /* useViewTransitionState */
9166
+ ), o = Ke(e, { relative: n });
9167
+ if (!t.isTransitioning)
9168
+ return !1;
9169
+ let a = Fe(t.currentLocation.pathname, r) || t.currentLocation.pathname, i = Fe(t.nextLocation.pathname, r) || t.nextLocation.pathname;
9170
+ return gt(o.pathname, i) != null || gt(o.pathname, a) != null;
9171
+ }
9173
9172
  function ms({
9174
9173
  items: e = [],
9175
9174
  logoJSX: n,
@@ -9235,7 +9234,7 @@ export {
9235
9234
  is as Accordion,
9236
9235
  as as ActionMenu,
9237
9236
  ls as Alert,
9238
- xr as Avatar,
9237
+ vr as Avatar,
9239
9238
  Gl as Backdrop,
9240
9239
  ss as Badge,
9241
9240
  cs as BottomNavigation,
@@ -9276,7 +9275,7 @@ export {
9276
9275
  Hl as Table,
9277
9276
  ps as Tabs,
9278
9277
  Wl as TextArea,
9279
- vr as TextInput,
9278
+ gr as TextInput,
9280
9279
  es as ToggleButton,
9281
9280
  Ql as ToggleSwitch,
9282
9281
  os as Tooltip,