intlayer-editor 7.4.0 → 7.5.0-canary.1

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 (30) hide show
  1. package/client/dist/assets/{CodeBlockShiki-DfLGl0YI.js → CodeBlockShiki-BZrNB-hp.js} +4 -3
  2. package/client/dist/assets/{bundle-web-BMQ8vt1M.js → bundle-web-XVNhfIcT.js} +1 -1
  3. package/client/dist/assets/{index-DhX2a-YJ.js → index-BCw8xSvk.js} +937 -695
  4. package/client/dist/assets/{index-B6iFg1jy.css → index-C9tdC4Xg.css} +276 -39
  5. package/client/dist/index.html +2 -2
  6. package/package.json +23 -23
  7. package/server/dist/controllers/configuration.controller.cjs +1 -1
  8. package/server/dist/controllers/configuration.controller.d.ts +1 -1
  9. package/server/dist/controllers/configuration.controller.mjs +1 -1
  10. package/server/dist/controllers/dictionary.controller.cjs +1 -1
  11. package/server/dist/controllers/dictionary.controller.d.ts +1 -1
  12. package/server/dist/controllers/dictionary.controller.mjs +1 -1
  13. package/server/dist/index.cjs +1 -1
  14. package/server/dist/index.mjs +1 -1
  15. package/server/dist/routes/config.routes.cjs +1 -1
  16. package/server/dist/routes/config.routes.d.ts +1 -1
  17. package/server/dist/routes/config.routes.mjs +1 -1
  18. package/server/dist/routes/dictionary.routes.cjs +1 -1
  19. package/server/dist/routes/dictionary.routes.d.ts +1 -1
  20. package/server/dist/routes/dictionary.routes.mjs +1 -1
  21. package/server/dist/types/Routes.d.ts +1 -1
  22. package/server/dist/utils/checkPortAvailability.cjs +1 -1
  23. package/server/dist/utils/checkPortAvailability.d.ts +1 -1
  24. package/server/dist/utils/checkPortAvailability.mjs +1 -1
  25. package/server/dist/utils/httpStatusCodes.cjs +1 -1
  26. package/server/dist/utils/httpStatusCodes.d.ts +1 -1
  27. package/server/dist/utils/httpStatusCodes.mjs +1 -1
  28. package/server/dist/utils/responseData.cjs +1 -1
  29. package/server/dist/utils/responseData.d.ts +1 -1
  30. package/server/dist/utils/responseData.mjs +1 -1
@@ -55,7 +55,7 @@ var hasRequiredReactJsxRuntime_production;
55
55
  function requireReactJsxRuntime_production() {
56
56
  if (hasRequiredReactJsxRuntime_production) return reactJsxRuntime_production;
57
57
  hasRequiredReactJsxRuntime_production = 1;
58
- var REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"), REACT_FRAGMENT_TYPE = Symbol.for("react.fragment");
58
+ var REACT_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.transitional.element"), REACT_FRAGMENT_TYPE = /* @__PURE__ */ Symbol.for("react.fragment");
59
59
  function jsxProd(type, config2, maybeKey) {
60
60
  var key2 = null;
61
61
  void 0 !== maybeKey && (key2 = "" + maybeKey);
@@ -95,7 +95,7 @@ var hasRequiredReact_production;
95
95
  function requireReact_production() {
96
96
  if (hasRequiredReact_production) return react_production;
97
97
  hasRequiredReact_production = 1;
98
- var REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = Symbol.for("react.profiler"), REACT_CONSUMER_TYPE = Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = Symbol.for("react.suspense"), REACT_MEMO_TYPE = Symbol.for("react.memo"), REACT_LAZY_TYPE2 = Symbol.for("react.lazy"), REACT_ACTIVITY_TYPE = Symbol.for("react.activity"), MAYBE_ITERATOR_SYMBOL = Symbol.iterator;
98
+ var REACT_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = /* @__PURE__ */ Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = /* @__PURE__ */ Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = /* @__PURE__ */ Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = /* @__PURE__ */ Symbol.for("react.profiler"), REACT_CONSUMER_TYPE = /* @__PURE__ */ Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = /* @__PURE__ */ Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = /* @__PURE__ */ Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = /* @__PURE__ */ Symbol.for("react.suspense"), REACT_MEMO_TYPE = /* @__PURE__ */ Symbol.for("react.memo"), REACT_LAZY_TYPE2 = /* @__PURE__ */ Symbol.for("react.lazy"), REACT_ACTIVITY_TYPE = /* @__PURE__ */ Symbol.for("react.activity"), MAYBE_ITERATOR_SYMBOL = Symbol.iterator;
99
99
  function getIteratorFn(maybeIterable) {
100
100
  if (null === maybeIterable || "object" !== typeof maybeIterable) return null;
101
101
  maybeIterable = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable["@@iterator"];
@@ -512,7 +512,7 @@ function requireReact_production() {
512
512
  react_production.useTransition = function() {
513
513
  return ReactSharedInternals.H.useTransition();
514
514
  };
515
- react_production.version = "19.2.1";
515
+ react_production.version = "19.2.3";
516
516
  return react_production;
517
517
  }
518
518
  var hasRequiredReact;
@@ -832,7 +832,7 @@ function requireReactDom_production() {
832
832
  },
833
833
  p: 0,
834
834
  findDOMNode: null
835
- }, REACT_PORTAL_TYPE = Symbol.for("react.portal");
835
+ }, REACT_PORTAL_TYPE = /* @__PURE__ */ Symbol.for("react.portal");
836
836
  function createPortal$1(children, containerInfo, implementation) {
837
837
  var key2 = 3 < arguments.length && void 0 !== arguments[3] ? arguments[3] : null;
838
838
  return {
@@ -944,7 +944,7 @@ function requireReactDom_production() {
944
944
  reactDom_production.useFormStatus = function() {
945
945
  return ReactSharedInternals.H.useHostTransitionStatus();
946
946
  };
947
- reactDom_production.version = "19.2.1";
947
+ reactDom_production.version = "19.2.3";
948
948
  return reactDom_production;
949
949
  }
950
950
  var hasRequiredReactDom;
@@ -1093,16 +1093,16 @@ function requireReactDomClient_production() {
1093
1093
  }
1094
1094
  return null;
1095
1095
  }
1096
- var assign = Object.assign, REACT_LEGACY_ELEMENT_TYPE = Symbol.for("react.element"), REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = Symbol.for("react.profiler"), REACT_CONSUMER_TYPE = Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = Symbol.for("react.suspense"), REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list"), REACT_MEMO_TYPE = Symbol.for("react.memo"), REACT_LAZY_TYPE2 = Symbol.for("react.lazy");
1097
- var REACT_ACTIVITY_TYPE = Symbol.for("react.activity");
1098
- var REACT_MEMO_CACHE_SENTINEL = Symbol.for("react.memo_cache_sentinel");
1096
+ var assign = Object.assign, REACT_LEGACY_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.element"), REACT_ELEMENT_TYPE = /* @__PURE__ */ Symbol.for("react.transitional.element"), REACT_PORTAL_TYPE = /* @__PURE__ */ Symbol.for("react.portal"), REACT_FRAGMENT_TYPE = /* @__PURE__ */ Symbol.for("react.fragment"), REACT_STRICT_MODE_TYPE = /* @__PURE__ */ Symbol.for("react.strict_mode"), REACT_PROFILER_TYPE = /* @__PURE__ */ Symbol.for("react.profiler"), REACT_CONSUMER_TYPE = /* @__PURE__ */ Symbol.for("react.consumer"), REACT_CONTEXT_TYPE = /* @__PURE__ */ Symbol.for("react.context"), REACT_FORWARD_REF_TYPE = /* @__PURE__ */ Symbol.for("react.forward_ref"), REACT_SUSPENSE_TYPE = /* @__PURE__ */ Symbol.for("react.suspense"), REACT_SUSPENSE_LIST_TYPE = /* @__PURE__ */ Symbol.for("react.suspense_list"), REACT_MEMO_TYPE = /* @__PURE__ */ Symbol.for("react.memo"), REACT_LAZY_TYPE2 = /* @__PURE__ */ Symbol.for("react.lazy");
1097
+ var REACT_ACTIVITY_TYPE = /* @__PURE__ */ Symbol.for("react.activity");
1098
+ var REACT_MEMO_CACHE_SENTINEL = /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel");
1099
1099
  var MAYBE_ITERATOR_SYMBOL = Symbol.iterator;
1100
1100
  function getIteratorFn(maybeIterable) {
1101
1101
  if (null === maybeIterable || "object" !== typeof maybeIterable) return null;
1102
1102
  maybeIterable = MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL] || maybeIterable["@@iterator"];
1103
1103
  return "function" === typeof maybeIterable ? maybeIterable : null;
1104
1104
  }
1105
- var REACT_CLIENT_REFERENCE = Symbol.for("react.client.reference");
1105
+ var REACT_CLIENT_REFERENCE = /* @__PURE__ */ Symbol.for("react.client.reference");
1106
1106
  function getComponentNameFromType(type) {
1107
1107
  if (null == type) return null;
1108
1108
  if ("function" === typeof type)
@@ -12388,12 +12388,12 @@ function requireReactDomClient_production() {
12388
12388
  }
12389
12389
  };
12390
12390
  var isomorphicReactPackageVersion$jscomp$inline_1840 = React2.version;
12391
- if ("19.2.1" !== isomorphicReactPackageVersion$jscomp$inline_1840)
12391
+ if ("19.2.3" !== isomorphicReactPackageVersion$jscomp$inline_1840)
12392
12392
  throw Error(
12393
12393
  formatProdErrorMessage(
12394
12394
  527,
12395
12395
  isomorphicReactPackageVersion$jscomp$inline_1840,
12396
- "19.2.1"
12396
+ "19.2.3"
12397
12397
  )
12398
12398
  );
12399
12399
  ReactDOMSharedInternals.findDOMNode = function(componentOrElement) {
@@ -12411,10 +12411,10 @@ function requireReactDomClient_production() {
12411
12411
  };
12412
12412
  var internals$jscomp$inline_2347 = {
12413
12413
  bundleType: 0,
12414
- version: "19.2.1",
12414
+ version: "19.2.3",
12415
12415
  rendererPackageName: "react-dom",
12416
12416
  currentDispatcherRef: ReactSharedInternals,
12417
- reconcilerVersion: "19.2.1"
12417
+ reconcilerVersion: "19.2.3"
12418
12418
  };
12419
12419
  if ("undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) {
12420
12420
  var hook$jscomp$inline_2348 = __REACT_DEVTOOLS_GLOBAL_HOOK__;
@@ -12481,7 +12481,7 @@ function requireReactDomClient_production() {
12481
12481
  listenToAllSupportedEvents(container);
12482
12482
  return new ReactDOMHydrationRoot(initialChildren);
12483
12483
  };
12484
- reactDomClient_production.version = "19.2.1";
12484
+ reactDomClient_production.version = "19.2.3";
12485
12485
  return reactDomClient_production;
12486
12486
  }
12487
12487
  var hasRequiredClient;
@@ -12583,12 +12583,14 @@ var __export$1 = (all, symbols) => {
12583
12583
  return target;
12584
12584
  };
12585
12585
  var build_exports = /* @__PURE__ */ __export$1({
12586
+ BUILD_MODE: () => BUILD_MODE,
12586
12587
  CACHE: () => CACHE,
12587
12588
  IMPORT_MODE: () => IMPORT_MODE,
12588
12589
  OPTIMIZE: () => OPTIMIZE,
12589
12590
  OUTPUT_FORMAT: () => OUTPUT_FORMAT,
12590
12591
  TRAVERSE_PATTERN: () => TRAVERSE_PATTERN
12591
12592
  });
12593
+ const BUILD_MODE = "auto";
12592
12594
  const OPTIMIZE = void 0;
12593
12595
  const IMPORT_MODE = "static";
12594
12596
  const TRAVERSE_PATTERN = ["**/*.{tsx,ts,js,mjs,cjs,jsx,mjx,cjx,vue,svelte,svte}", "!**/node_modules/**"];
@@ -12821,6 +12823,8 @@ var locales_exports = /* @__PURE__ */ __export({
12821
12823
  ICELANDIC_ICELAND: () => ICELANDIC_ICELAND,
12822
12824
  INDONESIAN: () => INDONESIAN,
12823
12825
  INDONESIAN_INDONESIA: () => INDONESIAN_INDONESIA,
12826
+ IRISH: () => IRISH,
12827
+ IRISH_IRELAND: () => IRISH_IRELAND,
12824
12828
  ITALIAN: () => ITALIAN,
12825
12829
  ITALIAN_ITALY: () => ITALIAN_ITALY,
12826
12830
  ITALIAN_SWITZERLAND: () => ITALIAN_SWITZERLAND,
@@ -12836,6 +12840,8 @@ var locales_exports = /* @__PURE__ */ __export({
12836
12840
  KONKANI_INDIA: () => KONKANI_INDIA,
12837
12841
  KOREAN: () => KOREAN,
12838
12842
  KOREAN_KOREA: () => KOREAN_KOREA,
12843
+ KURDISH: () => KURDISH,
12844
+ KURDISH_TURKEY: () => KURDISH_TURKEY,
12839
12845
  KYRGYZ: () => KYRGYZ,
12840
12846
  KYRGYZ_KYRGYZSTAN: () => KYRGYZ_KYRGYZSTAN,
12841
12847
  LAO: () => LAO,
@@ -12844,7 +12850,11 @@ var locales_exports = /* @__PURE__ */ __export({
12844
12850
  LATVIAN_LATVIA: () => LATVIAN_LATVIA,
12845
12851
  LITHUANIAN: () => LITHUANIAN,
12846
12852
  LITHUANIAN_LITHUANIA: () => LITHUANIAN_LITHUANIA,
12853
+ LOWER_SORBIAN: () => LOWER_SORBIAN,
12854
+ LOWER_SORBIAN_GERMANY: () => LOWER_SORBIAN_GERMANY,
12847
12855
  MALAY: () => MALAY,
12856
+ MALAYALAM: () => MALAYALAM,
12857
+ MALAYALAM_INDIA: () => MALAYALAM_INDIA,
12848
12858
  MALAY_BRUNEI_DARUSSALAM: () => MALAY_BRUNEI_DARUSSALAM,
12849
12859
  MALAY_MALAYSIA: () => MALAY_MALAYSIA,
12850
12860
  MALTESE: () => MALTESE,
@@ -12859,8 +12869,10 @@ var locales_exports = /* @__PURE__ */ __export({
12859
12869
  NEPALI_NEPAL: () => NEPALI_NEPAL,
12860
12870
  NORTHERN_SOTHO: () => NORTHERN_SOTHO,
12861
12871
  NORTHERN_SOTHO_SOUTH_AFRICA: () => NORTHERN_SOTHO_SOUTH_AFRICA,
12872
+ NORWEGIAN: () => NORWEGIAN,
12862
12873
  NORWEGIAN_BOKMAL: () => NORWEGIAN_BOKMAL,
12863
12874
  NORWEGIAN_BOKMAL_NORWAY: () => NORWEGIAN_BOKMAL_NORWAY,
12875
+ NORWEGIAN_NYNORSK: () => NORWEGIAN_NYNORSK,
12864
12876
  NORWEGIAN_NYNORSK_NORWAY: () => NORWEGIAN_NYNORSK_NORWAY,
12865
12877
  PASHTO: () => PASHTO,
12866
12878
  PASHTO_AFGHANISTAN: () => PASHTO_AFGHANISTAN,
@@ -12882,8 +12894,12 @@ var locales_exports = /* @__PURE__ */ __export({
12882
12894
  QUECHUA_ECUADOR: () => QUECHUA_ECUADOR,
12883
12895
  QUECHUA_PERU: () => QUECHUA_PERU,
12884
12896
  ROMANIAN: () => ROMANIAN,
12897
+ ROMANIAN_MOLDOVA: () => ROMANIAN_MOLDOVA,
12885
12898
  ROMANIAN_ROMANIA: () => ROMANIAN_ROMANIA,
12899
+ ROMANSH: () => ROMANSH,
12900
+ ROMANSH_SWITZERLAND: () => ROMANSH_SWITZERLAND,
12886
12901
  RUSSIAN: () => RUSSIAN,
12902
+ RUSSIAN_MOLDOVA: () => RUSSIAN_MOLDOVA,
12887
12903
  RUSSIAN_RUSSIA: () => RUSSIAN_RUSSIA,
12888
12904
  SAMI_NORTHERN: () => SAMI_NORTHERN,
12889
12905
  SAMI_NORTHERN_FINLAND: () => SAMI_NORTHERN_FINLAND,
@@ -12891,6 +12907,8 @@ var locales_exports = /* @__PURE__ */ __export({
12891
12907
  SAMI_NORTHERN_SWEDEN: () => SAMI_NORTHERN_SWEDEN,
12892
12908
  SANSKRIT: () => SANSKRIT,
12893
12909
  SANSKRIT_INDIA: () => SANSKRIT_INDIA,
12910
+ SCOTTISH_GAELIC: () => SCOTTISH_GAELIC,
12911
+ SCOTTISH_GAELIC_UNITED_KINGDOM: () => SCOTTISH_GAELIC_UNITED_KINGDOM,
12894
12912
  SERBIAN_CYRILLIC: () => SERBIAN_CYRILLIC,
12895
12913
  SERBIAN_CYRILLIC_BOSNIA_AND_HERZEGOVINA: () => SERBIAN_CYRILLIC_BOSNIA_AND_HERZEGOVINA,
12896
12914
  SERBIAN_CYRILLIC_SERBIA: () => SERBIAN_CYRILLIC_SERBIA,
@@ -12949,16 +12967,22 @@ var locales_exports = /* @__PURE__ */ __export({
12949
12967
  TURKISH_TURKEY: () => TURKISH_TURKEY,
12950
12968
  UKRAINIAN: () => UKRAINIAN,
12951
12969
  UKRAINIAN_UKRAINE: () => UKRAINIAN_UKRAINE,
12970
+ UPPER_SORBIAN: () => UPPER_SORBIAN,
12971
+ UPPER_SORBIAN_GERMANY: () => UPPER_SORBIAN_GERMANY,
12952
12972
  URDU: () => URDU,
12953
12973
  URDU_ISLAMIC_REPUBLIC_OF_PAKISTAN: () => URDU_ISLAMIC_REPUBLIC_OF_PAKISTAN,
12954
12974
  UZBEK_LATIN: () => UZBEK_LATIN,
12955
12975
  UZBEK_LATIN_UZBEKISTAN: () => UZBEK_LATIN_UZBEKISTAN,
12976
+ VENDA: () => VENDA,
12977
+ VENDA_SOUTH_AFRICA: () => VENDA_SOUTH_AFRICA,
12956
12978
  VIETNAMESE: () => VIETNAMESE,
12957
12979
  VIETNAMESE_VIET_NAM: () => VIETNAMESE_VIET_NAM,
12958
12980
  WELSH: () => WELSH,
12959
12981
  WELSH_UNITED_KINGDOM: () => WELSH_UNITED_KINGDOM,
12960
12982
  XHOSA: () => XHOSA,
12961
12983
  XHOSA_SOUTH_AFRICA: () => XHOSA_SOUTH_AFRICA,
12984
+ YIDDISH: () => YIDDISH,
12985
+ YIDDISH_WORLD: () => YIDDISH_WORLD,
12962
12986
  YORUBA: () => YORUBA,
12963
12987
  YORUBA_NIGERIA: () => YORUBA_NIGERIA,
12964
12988
  ZULU: () => ZULU,
@@ -13061,6 +13085,10 @@ const FRENCH_SWITZERLAND = "fr-CH";
13061
13085
  const FRENCH_FRANCE = "fr-FR";
13062
13086
  const FRENCH_LUXEMBOURG = "fr-LU";
13063
13087
  const FRENCH_PRINCIPALITY_OF_MONACO = "fr-MC";
13088
+ const IRISH = "ga";
13089
+ const IRISH_IRELAND = "ga-IE";
13090
+ const SCOTTISH_GAELIC = "gd";
13091
+ const SCOTTISH_GAELIC_UNITED_KINGDOM = "gd-GB";
13064
13092
  const GALICIAN = "gl";
13065
13093
  const GALICIAN_SPAIN = "gl-ES";
13066
13094
  const GUJARATI = "gu";
@@ -13095,6 +13123,8 @@ const KOREAN = "ko";
13095
13123
  const KOREAN_KOREA = "ko-KR";
13096
13124
  const KONKANI = "kok";
13097
13125
  const KONKANI_INDIA = "kok-IN";
13126
+ const KURDISH = "ku";
13127
+ const KURDISH_TURKEY = "ku-TR";
13098
13128
  const KYRGYZ = "ky";
13099
13129
  const KYRGYZ_KYRGYZSTAN = "ky-KG";
13100
13130
  const LITHUANIAN = "lt";
@@ -13114,11 +13144,15 @@ const MALAY_BRUNEI_DARUSSALAM = "ms-BN";
13114
13144
  const MALAY_MALAYSIA = "ms-MY";
13115
13145
  const MALTESE = "mt";
13116
13146
  const MALTESE_MALTA = "mt-MT";
13147
+ const MALAYALAM = "ml";
13148
+ const MALAYALAM_INDIA = "ml-IN";
13149
+ const NORWEGIAN = "no";
13117
13150
  const NORWEGIAN_BOKMAL = "nb";
13118
13151
  const NORWEGIAN_BOKMAL_NORWAY = "nb-NO";
13119
13152
  const DUTCH = "nl";
13120
13153
  const DUTCH_BELGIUM = "nl-BE";
13121
13154
  const DUTCH_NETHERLANDS = "nl-NL";
13155
+ const NORWEGIAN_NYNORSK = "nn";
13122
13156
  const NORWEGIAN_NYNORSK_NORWAY = "nn-NO";
13123
13157
  const NORTHERN_SOTHO = "ns";
13124
13158
  const NORTHERN_SOTHO_SOUTH_AFRICA = "ns-ZA";
@@ -13137,14 +13171,22 @@ const QUECHUA_ECUADOR = "qu-EC";
13137
13171
  const QUECHUA_PERU = "qu-PE";
13138
13172
  const ROMANIAN = "ro";
13139
13173
  const ROMANIAN_ROMANIA = "ro-RO";
13174
+ const ROMANIAN_MOLDOVA = "ro-MD";
13175
+ const ROMANSH = "rm";
13176
+ const ROMANSH_SWITZERLAND = "rm-CH";
13140
13177
  const RUSSIAN = "ru";
13141
13178
  const RUSSIAN_RUSSIA = "ru-RU";
13179
+ const RUSSIAN_MOLDOVA = "ru-MD";
13142
13180
  const SANSKRIT = "sa";
13143
13181
  const SANSKRIT_INDIA = "sa-IN";
13144
13182
  const SAMI_NORTHERN = "se";
13145
13183
  const SAMI_NORTHERN_FINLAND = "se-FI";
13146
13184
  const SAMI_NORTHERN_NORWAY = "se-NO";
13147
13185
  const SAMI_NORTHERN_SWEDEN = "se-SE";
13186
+ const UPPER_SORBIAN = "hsb";
13187
+ const UPPER_SORBIAN_GERMANY = "hsb-DE";
13188
+ const LOWER_SORBIAN = "dsb";
13189
+ const LOWER_SORBIAN_GERMANY = "dsb-DE";
13148
13190
  const SLOVAK = "sk";
13149
13191
  const SLOVAK_SLOVAKIA = "sk-SK";
13150
13192
  const SLOVENIAN = "sl";
@@ -13184,6 +13226,8 @@ const UZBEK_LATIN = "uz";
13184
13226
  const UZBEK_LATIN_UZBEKISTAN = "uz-UZ";
13185
13227
  const VIETNAMESE = "vi";
13186
13228
  const VIETNAMESE_VIET_NAM = "vi-VN";
13229
+ const VENDA = "ve";
13230
+ const VENDA_SOUTH_AFRICA = "ve-ZA";
13187
13231
  const XHOSA = "xh";
13188
13232
  const XHOSA_SOUTH_AFRICA = "xh-ZA";
13189
13233
  const CHINESE = "zh";
@@ -13207,6 +13251,8 @@ const LAO = "lo";
13207
13251
  const LAO_LAOS = "lo-LA";
13208
13252
  const YORUBA = "yo";
13209
13253
  const YORUBA_NIGERIA = "yo-NG";
13254
+ const YIDDISH = "yi";
13255
+ const YIDDISH_WORLD = "yi-001";
13210
13256
  const AMHARIC = "am";
13211
13257
  const AMHARIC_ETHIOPIA = "am-ET";
13212
13258
  const NEPALI = "ne";
@@ -13341,6 +13387,10 @@ const ALL_LOCALES = {
13341
13387
  FRENCH_FRANCE,
13342
13388
  FRENCH_LUXEMBOURG,
13343
13389
  FRENCH_PRINCIPALITY_OF_MONACO,
13390
+ IRISH,
13391
+ IRISH_IRELAND,
13392
+ SCOTTISH_GAELIC,
13393
+ SCOTTISH_GAELIC_UNITED_KINGDOM,
13344
13394
  GALICIAN,
13345
13395
  GALICIAN_SPAIN,
13346
13396
  GUJARATI,
@@ -13375,6 +13425,8 @@ const ALL_LOCALES = {
13375
13425
  KOREAN_KOREA,
13376
13426
  KONKANI,
13377
13427
  KONKANI_INDIA,
13428
+ KURDISH,
13429
+ KURDISH_TURKEY,
13378
13430
  KYRGYZ,
13379
13431
  KYRGYZ_KYRGYZSTAN,
13380
13432
  LITHUANIAN,
@@ -13394,11 +13446,15 @@ const ALL_LOCALES = {
13394
13446
  MALAY_MALAYSIA,
13395
13447
  MALTESE,
13396
13448
  MALTESE_MALTA,
13449
+ MALAYALAM,
13450
+ MALAYALAM_INDIA,
13451
+ NORWEGIAN,
13397
13452
  NORWEGIAN_BOKMAL,
13398
13453
  NORWEGIAN_BOKMAL_NORWAY,
13399
13454
  DUTCH,
13400
13455
  DUTCH_BELGIUM,
13401
13456
  DUTCH_NETHERLANDS,
13457
+ NORWEGIAN_NYNORSK,
13402
13458
  NORWEGIAN_NYNORSK_NORWAY,
13403
13459
  NORTHERN_SOTHO,
13404
13460
  NORTHERN_SOTHO_SOUTH_AFRICA,
@@ -13417,14 +13473,22 @@ const ALL_LOCALES = {
13417
13473
  QUECHUA_PERU,
13418
13474
  ROMANIAN,
13419
13475
  ROMANIAN_ROMANIA,
13476
+ ROMANIAN_MOLDOVA,
13477
+ ROMANSH,
13478
+ ROMANSH_SWITZERLAND,
13420
13479
  RUSSIAN,
13421
13480
  RUSSIAN_RUSSIA,
13481
+ RUSSIAN_MOLDOVA,
13422
13482
  SANSKRIT,
13423
13483
  SANSKRIT_INDIA,
13424
13484
  SAMI_NORTHERN,
13425
13485
  SAMI_NORTHERN_FINLAND,
13426
13486
  SAMI_NORTHERN_NORWAY,
13427
13487
  SAMI_NORTHERN_SWEDEN,
13488
+ UPPER_SORBIAN,
13489
+ UPPER_SORBIAN_GERMANY,
13490
+ LOWER_SORBIAN,
13491
+ LOWER_SORBIAN_GERMANY,
13428
13492
  SLOVAK,
13429
13493
  SLOVAK_SLOVAKIA,
13430
13494
  SLOVENIAN,
@@ -13464,6 +13528,8 @@ const ALL_LOCALES = {
13464
13528
  UZBEK_LATIN_UZBEKISTAN,
13465
13529
  VIETNAMESE,
13466
13530
  VIETNAMESE_VIET_NAM,
13531
+ VENDA,
13532
+ VENDA_SOUTH_AFRICA,
13467
13533
  XHOSA,
13468
13534
  XHOSA_SOUTH_AFRICA,
13469
13535
  CHINESE,
@@ -13487,6 +13553,8 @@ const ALL_LOCALES = {
13487
13553
  LAO_LAOS,
13488
13554
  YORUBA,
13489
13555
  YORUBA_NIGERIA,
13556
+ YIDDISH,
13557
+ YIDDISH_WORLD,
13490
13558
  AMHARIC,
13491
13559
  AMHARIC_ETHIOPIA,
13492
13560
  NEPALI,
@@ -14814,7 +14882,8 @@ const getLocalizedUrl = (url, currentLocale, options = {}) => {
14814
14882
  }
14815
14883
  const { prefix } = getPrefix(currentLocale, {
14816
14884
  defaultLocale,
14817
- mode
14885
+ mode,
14886
+ locales
14818
14887
  });
14819
14888
  let localizedPath = `/${prefix}${parsedUrl.pathname}`;
14820
14889
  localizedPath = localizedPath.replaceAll(/\/+/g, "/");
@@ -20877,6 +20946,7 @@ const containerVariants$1 = cva("flex flex-col text-text backdrop-blur", {
20877
20946
  xl: "rounded-xl [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-2xl",
20878
20947
  "2xl": "rounded-2xl [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-3xl",
20879
20948
  "3xl": "rounded-3xl [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-4xl",
20949
+ "4xl": "rounded-4xl [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-[2.5rem]",
20880
20950
  full: "rounded-full [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-full"
20881
20951
  },
20882
20952
  transparency: {
@@ -20903,7 +20973,7 @@ const containerVariants$1 = cva("flex flex-col text-text backdrop-blur", {
20903
20973
  },
20904
20974
  border: {
20905
20975
  none: "",
20906
- with: "border-[1.5px]"
20976
+ with: "border-[1.3px]"
20907
20977
  },
20908
20978
  borderColor: {
20909
20979
  primary: "border-primary",
@@ -20944,8 +21014,10 @@ let ContainerRoundedSize = /* @__PURE__ */ (function(ContainerRoundedSize$1) {
20944
21014
  ContainerRoundedSize$1["MD"] = "md";
20945
21015
  ContainerRoundedSize$1["LG"] = "lg";
20946
21016
  ContainerRoundedSize$1["XL"] = "xl";
20947
- ContainerRoundedSize$1["TWO_XL"] = "2xl";
20948
- ContainerRoundedSize$1["THREE_XL"] = "3xl";
21017
+ ContainerRoundedSize$1["2xl"] = "2xl";
21018
+ ContainerRoundedSize$1["3xl"] = "3xl";
21019
+ ContainerRoundedSize$1["4xl"] = "4xl";
21020
+ ContainerRoundedSize$1["5xl"] = "5xl";
20949
21021
  ContainerRoundedSize$1["FULL"] = "full";
20950
21022
  return ContainerRoundedSize$1;
20951
21023
  })({});
@@ -21114,13 +21186,13 @@ const buttonVariants = cva("relative inline-flex cursor-pointer items-center jus
21114
21186
  [`${ButtonColor.PRIMARY}`]: "hover-primary-500/20 text-primary ring-primary-500/20 *:text-text-light",
21115
21187
  [`${ButtonColor.SECONDARY}`]: "hover-secondary-500/20 text-secondary ring-secondary-500/20 *:text-text-light",
21116
21188
  [`${ButtonColor.DESTRUCTIVE}`]: "hover-destructive-500/20 text-destructive ring-destructive-500/20 *:text-text-light",
21117
- [`${ButtonColor.NEUTRAL}`]: "hover-neutral-500/20 text-neutral ring-neutral-500/20 *:text-text-light",
21189
+ [`${ButtonColor.NEUTRAL}`]: "text-neutral ring-neutral-500/20 *:text-text-light",
21118
21190
  [`${ButtonColor.CARD}`]: "hover-card-500/20 text-card ring-card-500/20 *:text-text-light",
21119
21191
  [`${ButtonColor.LIGHT}`]: "hover-white-500/20 text-white ring-white/20 *:text-text-light",
21120
- [`${ButtonColor.DARK}`]: "hover-neutral-500/20 text-neutral-800 ring-neutral-800/50 *:text-text-light",
21121
- [`${ButtonColor.TEXT}`]: "hover-neutral-500/20 text-text ring-neutral-500/20 *:text-text-opposite",
21122
- [`${ButtonColor.CURRENT}`]: "hover-current-500/20 text-current ring-current/20 *:text-text-light",
21123
- [`${ButtonColor.TEXT_INVERSE}`]: "hover-neutral-500/20 text-text-opposite ring-neutral-500/20 *:text-text",
21192
+ [`${ButtonColor.DARK}`]: "text-neutral-800 ring-text-light/50 *:text-text-light",
21193
+ [`${ButtonColor.TEXT}`]: "text-text ring-text/20 *:text-text-opposite",
21194
+ [`${ButtonColor.CURRENT}`]: "hover-current-500/10 text-current ring-current/10 *:text-text-light",
21195
+ [`${ButtonColor.TEXT_INVERSE}`]: "text-text-opposite ring-text-opposite/20 *:text-text",
21124
21196
  [`${ButtonColor.ERROR}`]: "hover-error-500/20 text-error ring-error/20 *:text-text-light",
21125
21197
  [`${ButtonColor.SUCCESS}`]: "hover-success-500/20 text-success ring-success/20 *:text-text-light",
21126
21198
  [`${ButtonColor.CUSTOM}`]: ""
@@ -21130,26 +21202,31 @@ const buttonVariants = cva("relative inline-flex cursor-pointer items-center jus
21130
21202
  [`${ContainerRoundedSize.SM}`]: "rounded-lg [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-xl",
21131
21203
  [`${ContainerRoundedSize.MD}`]: "rounded-xl [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-2xl",
21132
21204
  [`${ContainerRoundedSize.LG}`]: "rounded-2xl [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-3xl",
21133
- [`${ContainerRoundedSize.XL}`]: "rounded-3xl [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-4xl"
21205
+ [`${ContainerRoundedSize.XL}`]: "rounded-3xl [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-4xl",
21206
+ [`${ContainerRoundedSize["2xl"]}`]: "rounded-4xl [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-[2.5rem]",
21207
+ [`${ContainerRoundedSize["3xl"]}`]: "rounded-[2.5rem] [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-[3rem]",
21208
+ [`${ContainerRoundedSize["4xl"]}`]: "rounded-[3rem] [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-[4rem]",
21209
+ [`${ContainerRoundedSize["5xl"]}`]: "rounded-[4rem] [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-[5rem]",
21210
+ [`${ContainerRoundedSize.FULL}`]: "rounded-full"
21134
21211
  },
21135
21212
  variant: {
21136
21213
  [`${ButtonVariant.DEFAULT}`]: [
21137
21214
  "bg-current",
21138
21215
  "hover:bg-current/90",
21139
- "hover:ring-6",
21140
- "aria-selected:ring-6"
21216
+ "hover:ring-5",
21217
+ "aria-selected:ring-5"
21141
21218
  ],
21142
21219
  [`${ButtonVariant.OUTLINE}`]: [
21143
- "rounded-2xl border-[1.5px] border-current bg-current/0 *:text-current!",
21144
- "hover:bg-current/10",
21145
- "hover:ring-6",
21146
- "aria-selected:ring-6"
21220
+ "rounded-2xl border-[1.3px] border-current bg-current/0 *:text-current!",
21221
+ "hover:bg-current/20 focus-visible:bg-current/20",
21222
+ "hover:ring-5 focus-visible:ring-5",
21223
+ "aria-selected:ring-5"
21147
21224
  ],
21148
21225
  [`${ButtonVariant.NONE}`]: "border-none bg-current/0 text-inherit hover:bg-current/0",
21149
21226
  [`${ButtonVariant.LINK}`]: "h-auto justify-start border-inherit bg-transparent px-1 underline-offset-4 *:text-current! hover:bg-transparent hover:underline",
21150
21227
  [`${ButtonVariant.INVISIBLE_LINK}`]: "h-auto justify-start border-inherit bg-transparent px-1 underline-offset-4 *:text-current! hover:bg-transparent",
21151
- [`${ButtonVariant.HOVERABLE}`]: "rounded-lg border-none bg-current/0 transition *:text-current! hover:bg-current/10 aria-[current]:bg-current/5",
21152
- [`${ButtonVariant.FADE}`]: "rounded-lg border-none bg-current/10 transition *:text-current! hover:bg-current/20 aria-[current]:bg-current/5",
21228
+ [`${ButtonVariant.HOVERABLE}`]: "rounded-lg border-none bg-current/0 transition *:text-current! hover:bg-current/20 aria-[current]:bg-current/5",
21229
+ [`${ButtonVariant.FADE}`]: "rounded-lg border-none bg-current/20 transition *:text-current! hover:bg-current/20 aria-[current]:bg-current/5",
21153
21230
  [`${ButtonVariant.INPUT}`]: [
21154
21231
  "text-text",
21155
21232
  "w-full select-text resize-none rounded-2xl text-base shadow-none outline-none supports-[corner-shape:squircle]:rounded-4xl",
@@ -21187,7 +21264,7 @@ const buttonVariants = cva("relative inline-flex cursor-pointer items-center jus
21187
21264
  isFullWidth: false
21188
21265
  }
21189
21266
  });
21190
- const Button = ({ variant, size: size2, color: color2, children, Icon: Icon2, IconRight, iconClassName, isLoading = false, isActive = false, isSelected = false, isFullWidth = false, roundedSize, textAlign, disabled, label, className, type = "button", "aria-describedby": ariaDescribedBy, "aria-expanded": ariaExpanded, "aria-haspopup": ariaHasPopup, "aria-pressed": ariaPressed, ...props }) => {
21267
+ const Button = ({ variant, size: size2, color: color2, children, Icon: Icon2, IconRight, iconClassName, isLoading = false, isActive, isSelected, isFullWidth, roundedSize, textAlign, disabled, label, className, type = "button", "aria-describedby": ariaDescribedBy, "aria-expanded": ariaExpanded, "aria-haspopup": ariaHasPopup, "aria-pressed": ariaPressed, ...props }) => {
21191
21268
  const isLink = variant === `${ButtonVariant.LINK}` || variant === `${ButtonVariant.INVISIBLE_LINK}`;
21192
21269
  const isIconOnly = !children && (Icon2 || IconRight);
21193
21270
  const accessibilityProps = {
@@ -21358,10 +21435,10 @@ const __iconNode$o = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]];
21358
21435
  const Check = createLucideIcon("check", __iconNode$o);
21359
21436
  const __iconNode$n = [["path", { d: "m6 9 6 6 6-6", key: "qrunsl" }]];
21360
21437
  const ChevronDown = createLucideIcon("chevron-down", __iconNode$n);
21361
- const __iconNode$m = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
21362
- const ChevronRight = createLucideIcon("chevron-right", __iconNode$m);
21363
- const __iconNode$l = [["path", { d: "m15 18-6-6 6-6", key: "1wnfg3" }]];
21364
- const ChevronLeft = createLucideIcon("chevron-left", __iconNode$l);
21438
+ const __iconNode$m = [["path", { d: "m15 18-6-6 6-6", key: "1wnfg3" }]];
21439
+ const ChevronLeft = createLucideIcon("chevron-left", __iconNode$m);
21440
+ const __iconNode$l = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
21441
+ const ChevronRight = createLucideIcon("chevron-right", __iconNode$l);
21365
21442
  const __iconNode$k = [["path", { d: "m18 15-6-6-6 6", key: "153udz" }]];
21366
21443
  const ChevronUp = createLucideIcon("chevron-up", __iconNode$k);
21367
21444
  const __iconNode$j = [
@@ -21605,7 +21682,7 @@ const badgeVariants = cva("inline-flex items-center rounded-md border px-2.5 py-
21605
21682
  variant: {
21606
21683
  [BadgeVariant.DEFAULT]: "rounded-lg text-text-opposite",
21607
21684
  [BadgeVariant.NONE]: "border-none bg-opacity-0 text-inherit hover:bg-opacity-0",
21608
- [BadgeVariant.OUTLINE]: "rounded-lg border-[1.5px] bg-opacity-0 hover:bg-opacity-30",
21685
+ [BadgeVariant.OUTLINE]: "rounded-lg border-[1.3px] bg-opacity-0 hover:bg-opacity-30",
21609
21686
  [BadgeVariant.HOVERABLE]: "rounded-lg border-none bg-opacity-0 transition hover:bg-opacity-10"
21610
21687
  },
21611
21688
  size: {
@@ -21685,20 +21762,49 @@ let LinkColor = /* @__PURE__ */ (function(LinkColor$1) {
21685
21762
  LinkColor$1["CUSTOM"] = "custom";
21686
21763
  return LinkColor$1;
21687
21764
  })({});
21765
+ let LinkRoundedSize = /* @__PURE__ */ (function(LinkRoundedSize$1) {
21766
+ LinkRoundedSize$1["NONE"] = "none";
21767
+ LinkRoundedSize$1["SM"] = "sm";
21768
+ LinkRoundedSize$1["MD"] = "md";
21769
+ LinkRoundedSize$1["LG"] = "lg";
21770
+ LinkRoundedSize$1["XL"] = "xl";
21771
+ LinkRoundedSize$1["TWO_XL"] = "2xl";
21772
+ LinkRoundedSize$1["THREE_XL"] = "3xl";
21773
+ LinkRoundedSize$1["FULL"] = "full";
21774
+ return LinkRoundedSize$1;
21775
+ })({});
21776
+ let LinkSize = /* @__PURE__ */ (function(LinkSize$1) {
21777
+ LinkSize$1["SM"] = "sm";
21778
+ LinkSize$1["MD"] = "md";
21779
+ LinkSize$1["LG"] = "lg";
21780
+ LinkSize$1["XL"] = "xl";
21781
+ LinkSize$1["CUSTOM"] = "custom";
21782
+ return LinkSize$1;
21783
+ })({});
21688
21784
  let LinkUnderlined = /* @__PURE__ */ (function(LinkUnderlined$1) {
21689
21785
  LinkUnderlined$1["DEFAULT"] = "default";
21690
21786
  LinkUnderlined$1["TRUE"] = "true";
21691
21787
  LinkUnderlined$1["FALSE"] = "false";
21692
21788
  return LinkUnderlined$1;
21693
21789
  })({});
21694
- const linkVariants = cva("gap-3 transition focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50", {
21790
+ const linkVariants = cva("gap-3 transition-all duration-300 focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50", {
21695
21791
  variants: {
21696
21792
  variant: {
21697
21793
  [`${LinkVariant.DEFAULT}`]: "h-auto justify-start border-inherit bg-current/0 px-1 underline-offset-4 hover:bg-current/0 hover:underline",
21698
21794
  [`${LinkVariant.INVISIBLE_LINK}`]: "h-auto justify-start border-inherit bg-current/0 px-1 underline-offset-4 hover:bg-current/0",
21699
- [`${LinkVariant.BUTTON}`]: "flex min-h-8 items-center justify-center gap-2 whitespace-nowrap rounded-lg bg-current px-6 font-medium text-sm transition *:text-text-opposite focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50 max-md:py-2",
21700
- [`${LinkVariant.BUTTON_OUTLINED}`]: "flex min-h-8 items-center justify-center gap-2 whitespace-nowrap rounded-lg border-[1.5px] px-6 font-medium text-sm transition hover:bg-current/30 focus-visible:outline-hidden disabled:pointer-events-none disabled:opacity-50 max-md:py-2",
21701
- [`${LinkVariant.HOVERABLE}`]: "block rounded-lg border-none bg-current/0 transition hover:bg-current/20 aria-[current]:bg-current/5"
21795
+ [`${LinkVariant.BUTTON}`]: "relative flex cursor-pointer flex-row items-center justify-center gap-2 rounded-full bg-current text-center font-medium text-text ring-0 *:text-text-opposite hover:bg-current/90 hover:ring-5 aria-selected:ring-5",
21796
+ [`${LinkVariant.BUTTON_OUTLINED}`]: "relative flex cursor-pointer flex-row items-center justify-center gap-2 rounded-full border-[1.3px] border-current text-center font-medium text-text ring-0 *:text-text hover:bg-current/20 hover:ring-5 aria-selected:ring-5",
21797
+ [`${LinkVariant.HOVERABLE}`]: "block rounded-lg border-none bg-current/0 hover:bg-current/10 aria-[current]:bg-current/5"
21798
+ },
21799
+ roundedSize: {
21800
+ [`${LinkRoundedSize.NONE}`]: "rounded-none",
21801
+ [`${LinkRoundedSize.SM}`]: "rounded-lg [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-xl",
21802
+ [`${LinkRoundedSize.MD}`]: "rounded-xl [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-2xl",
21803
+ [`${LinkRoundedSize.LG}`]: "rounded-2xl [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-3xl",
21804
+ [`${LinkRoundedSize.XL}`]: "rounded-3xl [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-4xl",
21805
+ [`${LinkRoundedSize.TWO_XL}`]: "rounded-4xl [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-[2.5rem]",
21806
+ [`${LinkRoundedSize.THREE_XL}`]: "rounded-[2.5rem] [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-[3rem]",
21807
+ [`${LinkRoundedSize.FULL}`]: "rounded-full"
21702
21808
  },
21703
21809
  color: {
21704
21810
  [`${LinkColor.PRIMARY}`]: "text-primary",
@@ -21713,16 +21819,97 @@ const linkVariants = cva("gap-3 transition focus-visible:outline-hidden disabled
21713
21819
  [`${LinkColor.SUCCESS}`]: "text-success",
21714
21820
  [`${LinkColor.CUSTOM}`]: ""
21715
21821
  },
21822
+ size: {
21823
+ [`${LinkSize.SM}`]: "text-sm",
21824
+ [`${LinkSize.MD}`]: "text-base",
21825
+ [`${LinkSize.LG}`]: "text-lg",
21826
+ [`${LinkSize.XL}`]: "text-xl",
21827
+ [`${LinkSize.CUSTOM}`]: ""
21828
+ },
21716
21829
  underlined: {
21717
21830
  [LinkUnderlined.DEFAULT]: "",
21718
21831
  [LinkUnderlined.TRUE]: "underline",
21719
21832
  [LinkUnderlined.FALSE]: "no-underline"
21720
21833
  }
21721
21834
  },
21835
+ compoundVariants: [
21836
+ {
21837
+ variant: [LinkVariant.BUTTON, LinkVariant.BUTTON_OUTLINED],
21838
+ size: LinkSize.SM,
21839
+ class: "min-h-7 px-3 max-md:py-1"
21840
+ },
21841
+ {
21842
+ variant: [LinkVariant.BUTTON, LinkVariant.BUTTON_OUTLINED],
21843
+ size: LinkSize.MD,
21844
+ class: "min-h-8 px-6 max-md:py-2"
21845
+ },
21846
+ {
21847
+ variant: [LinkVariant.BUTTON, LinkVariant.BUTTON_OUTLINED],
21848
+ size: LinkSize.LG,
21849
+ class: "min-h-10 px-8 max-md:py-3"
21850
+ },
21851
+ {
21852
+ variant: [LinkVariant.BUTTON, LinkVariant.BUTTON_OUTLINED],
21853
+ size: LinkSize.XL,
21854
+ class: "min-h-11 px-10 max-md:py-4"
21855
+ },
21856
+ {
21857
+ variant: [LinkVariant.BUTTON, LinkVariant.BUTTON_OUTLINED],
21858
+ color: LinkColor.PRIMARY,
21859
+ class: "ring-primary/20"
21860
+ },
21861
+ {
21862
+ variant: [LinkVariant.BUTTON, LinkVariant.BUTTON_OUTLINED],
21863
+ color: LinkColor.SECONDARY,
21864
+ class: "ring-secondary/20"
21865
+ },
21866
+ {
21867
+ variant: [LinkVariant.BUTTON, LinkVariant.BUTTON_OUTLINED],
21868
+ color: LinkColor.DESTRUCTIVE,
21869
+ class: "ring-destructive/20"
21870
+ },
21871
+ {
21872
+ variant: [LinkVariant.BUTTON, LinkVariant.BUTTON_OUTLINED],
21873
+ color: LinkColor.NEUTRAL,
21874
+ class: "ring-neutral/20"
21875
+ },
21876
+ {
21877
+ variant: [LinkVariant.BUTTON, LinkVariant.BUTTON_OUTLINED],
21878
+ color: LinkColor.LIGHT,
21879
+ class: "ring-white/20"
21880
+ },
21881
+ {
21882
+ variant: [LinkVariant.BUTTON, LinkVariant.BUTTON_OUTLINED],
21883
+ color: LinkColor.DARK,
21884
+ class: "ring-neutral-800/20"
21885
+ },
21886
+ {
21887
+ variant: [LinkVariant.BUTTON, LinkVariant.BUTTON_OUTLINED],
21888
+ color: LinkColor.TEXT,
21889
+ class: "ring-text/20"
21890
+ },
21891
+ {
21892
+ variant: [LinkVariant.BUTTON, LinkVariant.BUTTON_OUTLINED],
21893
+ color: LinkColor.TEXT_INVERSE,
21894
+ class: "ring-text-opposite/20"
21895
+ },
21896
+ {
21897
+ variant: [LinkVariant.BUTTON, LinkVariant.BUTTON_OUTLINED],
21898
+ color: LinkColor.ERROR,
21899
+ class: "ring-error/20"
21900
+ },
21901
+ {
21902
+ variant: [LinkVariant.BUTTON, LinkVariant.BUTTON_OUTLINED],
21903
+ color: LinkColor.SUCCESS,
21904
+ class: "ring-success/20"
21905
+ }
21906
+ ],
21722
21907
  defaultVariants: {
21723
21908
  variant: LinkVariant.DEFAULT,
21724
21909
  color: LinkColor.PRIMARY,
21725
- underlined: LinkUnderlined.DEFAULT
21910
+ roundedSize: LinkRoundedSize.MD,
21911
+ underlined: LinkUnderlined.DEFAULT,
21912
+ size: LinkSize.MD
21726
21913
  }
21727
21914
  });
21728
21915
  const checkIsExternalLink = ({ href, isExternalLink: isExternalLinkProp }) => {
@@ -21730,7 +21917,7 @@ const checkIsExternalLink = ({ href, isExternalLink: isExternalLinkProp }) => {
21730
21917
  return isExternalLinkProp === true || typeof isExternalLinkProp === "undefined" && isValidHref && /^https?:\/\//.test(href);
21731
21918
  };
21732
21919
  const Link = (props) => {
21733
- const { variant = LinkVariant.DEFAULT, color: color2 = LinkColor.PRIMARY, children, label, className, isActive, underlined, locale, isExternalLink: isExternalLinkProp, isPageSection: isPageSectionProp, href: hrefProp, ...otherProps } = props;
21920
+ const { variant = LinkVariant.DEFAULT, color: color2 = LinkColor.PRIMARY, roundedSize, children, label, className, isActive, underlined, locale, size: size2, isExternalLink: isExternalLinkProp, isPageSection: isPageSectionProp, href: hrefProp, ...otherProps } = props;
21734
21921
  const isExternalLink = isExternalLinkProp ?? checkIsExternalLink(props);
21735
21922
  const isPageSection = isPageSectionProp ?? hrefProp?.startsWith("#") ?? false;
21736
21923
  const isChildrenString = typeof children === "string";
@@ -21745,12 +21932,14 @@ const Link = (props) => {
21745
21932
  className: cn$2(linkVariants({
21746
21933
  variant,
21747
21934
  color: color2,
21935
+ roundedSize,
21748
21936
  underlined,
21937
+ size: size2,
21749
21938
  className
21750
21939
  })),
21751
21940
  ...otherProps,
21752
21941
  children: [
21753
- variant === "button" ? /* @__PURE__ */ jsxRuntimeExports.jsx("span", { children }) : children,
21942
+ children,
21754
21943
  isExternalLink && isChildrenString && /* @__PURE__ */ jsxRuntimeExports.jsx(ExternalLink, { className: "ml-2 inline-block size-4" }),
21755
21944
  isPageSection && /* @__PURE__ */ jsxRuntimeExports.jsx(MoveRight, { className: "ml-2 inline-block size-4" })
21756
21945
  ]
@@ -21807,6 +21996,7 @@ const LinkLink = ({
21807
21996
  ...props,
21808
21997
  label: `${linkLabel} ${children}`,
21809
21998
  itemID: href,
21999
+ size: "sm",
21810
22000
  children: /* @__PURE__ */ jsxRuntimeExports.jsx("span", {
21811
22001
  itemProp: "name",
21812
22002
  children
@@ -22189,7 +22379,7 @@ function createSlotClone$1(ownerName) {
22189
22379
  SlotClone.displayName = `${ownerName}.SlotClone`;
22190
22380
  return SlotClone;
22191
22381
  }
22192
- var SLOTTABLE_IDENTIFIER$1 = Symbol("radix.slottable");
22382
+ var SLOTTABLE_IDENTIFIER$1 = /* @__PURE__ */ Symbol("radix.slottable");
22193
22383
  function isSlottable$1(child) {
22194
22384
  return reactExports.isValidElement(child) && typeof child.type === "function" && "__radixId" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER$1;
22195
22385
  }
@@ -22255,7 +22445,7 @@ var Primitive = NODES.reduce((primitive, node) => {
22255
22445
  const { asChild, ...primitiveProps } = props;
22256
22446
  const Comp = asChild ? Slot2 : node;
22257
22447
  if (typeof window !== "undefined") {
22258
- window[Symbol.for("radix-ui")] = true;
22448
+ window[/* @__PURE__ */ Symbol.for("radix-ui")] = true;
22259
22449
  }
22260
22450
  return /* @__PURE__ */ jsxRuntimeExports.jsx(Comp, { ...primitiveProps, ref: forwardedRef });
22261
22451
  });
@@ -27665,15 +27855,63 @@ function useCreateMotionContext(props) {
27665
27855
  function variantLabelsAsDependency(prop) {
27666
27856
  return Array.isArray(prop) ? prop.join(" ") : prop;
27667
27857
  }
27668
- const scaleCorrectors = {};
27669
- function addScaleCorrector(correctors) {
27670
- for (const key2 in correctors) {
27671
- scaleCorrectors[key2] = correctors[key2];
27672
- if (isCSSVariableName(key2)) {
27673
- scaleCorrectors[key2].isCSSVariable = true;
27858
+ function pixelsToPercent(pixels, axis) {
27859
+ if (axis.max === axis.min)
27860
+ return 0;
27861
+ return pixels / (axis.max - axis.min) * 100;
27862
+ }
27863
+ const correctBorderRadius = {
27864
+ correct: (latest, node) => {
27865
+ if (!node.target)
27866
+ return latest;
27867
+ if (typeof latest === "string") {
27868
+ if (px.test(latest)) {
27869
+ latest = parseFloat(latest);
27870
+ } else {
27871
+ return latest;
27872
+ }
27674
27873
  }
27874
+ const x = pixelsToPercent(latest, node.target.x);
27875
+ const y = pixelsToPercent(latest, node.target.y);
27876
+ return `${x}% ${y}%`;
27675
27877
  }
27676
- }
27878
+ };
27879
+ const correctBoxShadow = {
27880
+ correct: (latest, { treeScale, projectionDelta }) => {
27881
+ const original = latest;
27882
+ const shadow = complex.parse(latest);
27883
+ if (shadow.length > 5)
27884
+ return original;
27885
+ const template = complex.createTransformer(latest);
27886
+ const offset2 = typeof shadow[0] !== "number" ? 1 : 0;
27887
+ const xScale = projectionDelta.x.scale * treeScale.x;
27888
+ const yScale = projectionDelta.y.scale * treeScale.y;
27889
+ shadow[0 + offset2] /= xScale;
27890
+ shadow[1 + offset2] /= yScale;
27891
+ const averageScale = mixNumber$1(xScale, yScale, 0.5);
27892
+ if (typeof shadow[2 + offset2] === "number")
27893
+ shadow[2 + offset2] /= averageScale;
27894
+ if (typeof shadow[3 + offset2] === "number")
27895
+ shadow[3 + offset2] /= averageScale;
27896
+ return template(shadow);
27897
+ }
27898
+ };
27899
+ const scaleCorrectors = {
27900
+ borderRadius: {
27901
+ ...correctBorderRadius,
27902
+ applyTo: [
27903
+ "borderTopLeftRadius",
27904
+ "borderTopRightRadius",
27905
+ "borderBottomLeftRadius",
27906
+ "borderBottomRightRadius"
27907
+ ]
27908
+ },
27909
+ borderTopLeftRadius: correctBorderRadius,
27910
+ borderTopRightRadius: correctBorderRadius,
27911
+ borderBottomLeftRadius: correctBorderRadius,
27912
+ borderBottomRightRadius: correctBorderRadius,
27913
+ boxShadow: correctBoxShadow
27914
+ };
27677
27915
  function isForcedMotionValue(key2, { layout: layout2, layoutId }) {
27678
27916
  return transformProps.has(key2) || key2.startsWith("origin") || (layout2 || layoutId !== void 0) && (!!scaleCorrectors[key2] || key2 === "opacity");
27679
27917
  }
@@ -28044,7 +28282,7 @@ const useSVGVisualState = /* @__PURE__ */ makeUseVisualState({
28044
28282
  scrapeMotionValuesFromProps,
28045
28283
  createRenderState: createSvgRenderState
28046
28284
  });
28047
- const motionComponentSymbol = Symbol.for("motionComponentSymbol");
28285
+ const motionComponentSymbol = /* @__PURE__ */ Symbol.for("motionComponentSymbol");
28048
28286
  function isRefObject(ref) {
28049
28287
  return ref && typeof ref === "object" && Object.prototype.hasOwnProperty.call(ref, "current");
28050
28288
  }
@@ -30159,47 +30397,6 @@ const globalProjectionState = {
30159
30397
  */
30160
30398
  hasEverUpdated: false
30161
30399
  };
30162
- function pixelsToPercent(pixels, axis) {
30163
- if (axis.max === axis.min)
30164
- return 0;
30165
- return pixels / (axis.max - axis.min) * 100;
30166
- }
30167
- const correctBorderRadius = {
30168
- correct: (latest, node) => {
30169
- if (!node.target)
30170
- return latest;
30171
- if (typeof latest === "string") {
30172
- if (px.test(latest)) {
30173
- latest = parseFloat(latest);
30174
- } else {
30175
- return latest;
30176
- }
30177
- }
30178
- const x = pixelsToPercent(latest, node.target.x);
30179
- const y = pixelsToPercent(latest, node.target.y);
30180
- return `${x}% ${y}%`;
30181
- }
30182
- };
30183
- const correctBoxShadow = {
30184
- correct: (latest, { treeScale, projectionDelta }) => {
30185
- const original = latest;
30186
- const shadow = complex.parse(latest);
30187
- if (shadow.length > 5)
30188
- return original;
30189
- const template = complex.createTransformer(latest);
30190
- const offset2 = typeof shadow[0] !== "number" ? 1 : 0;
30191
- const xScale = projectionDelta.x.scale * treeScale.x;
30192
- const yScale = projectionDelta.y.scale * treeScale.y;
30193
- shadow[0 + offset2] /= xScale;
30194
- shadow[1 + offset2] /= yScale;
30195
- const averageScale = mixNumber$1(xScale, yScale, 0.5);
30196
- if (typeof shadow[2 + offset2] === "number")
30197
- shadow[2 + offset2] /= averageScale;
30198
- if (typeof shadow[3 + offset2] === "number")
30199
- shadow[3 + offset2] /= averageScale;
30200
- return template(shadow);
30201
- }
30202
- };
30203
30400
  let hasTakenAnySnapshot = false;
30204
30401
  class MeasureLayoutWithContext extends reactExports.Component {
30205
30402
  /**
@@ -30210,7 +30407,6 @@ class MeasureLayoutWithContext extends reactExports.Component {
30210
30407
  componentDidMount() {
30211
30408
  const { visualElement, layoutGroup, switchLayoutGroup, layoutId } = this.props;
30212
30409
  const { projection } = visualElement;
30213
- addScaleCorrector(defaultScaleCorrectors);
30214
30410
  if (projection) {
30215
30411
  if (layoutGroup.group)
30216
30412
  layoutGroup.group.add(projection);
@@ -30292,22 +30488,6 @@ function MeasureLayout(props) {
30292
30488
  const layoutGroup = reactExports.useContext(LayoutGroupContext);
30293
30489
  return jsxRuntimeExports.jsx(MeasureLayoutWithContext, { ...props, layoutGroup, switchLayoutGroup: reactExports.useContext(SwitchLayoutGroupContext), isPresent, safeToRemove });
30294
30490
  }
30295
- const defaultScaleCorrectors = {
30296
- borderRadius: {
30297
- ...correctBorderRadius,
30298
- applyTo: [
30299
- "borderTopLeftRadius",
30300
- "borderTopRightRadius",
30301
- "borderBottomLeftRadius",
30302
- "borderBottomRightRadius"
30303
- ]
30304
- },
30305
- borderTopLeftRadius: correctBorderRadius,
30306
- borderTopRightRadius: correctBorderRadius,
30307
- borderBottomLeftRadius: correctBorderRadius,
30308
- borderBottomRightRadius: correctBorderRadius,
30309
- boxShadow: correctBoxShadow
30310
- };
30311
30491
  function animateSingleValue(value, keyframes2, options) {
30312
30492
  const motionValue$1 = isMotionValue(value) ? value : motionValue(value);
30313
30493
  motionValue$1.start(animateMotionValue("", motionValue$1, keyframes2, options));
@@ -32567,10 +32747,9 @@ const InputOTPSeparator = (props) => /* @__PURE__ */ jsxRuntimeExports.jsx("div"
32567
32747
  ...props,
32568
32748
  children: /* @__PURE__ */ jsxRuntimeExports.jsx(Minus, {})
32569
32749
  });
32570
- const InputIndicator = ({ ref, ...props }) => /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
32750
+ const InputIndicator = (props) => /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
32571
32751
  "data-indicator": true,
32572
32752
  className: "absolute top-0 z-0 h-full w-auto rounded-xl bg-text/20 ring-4 ring-text/20 transition-[left,width] duration-300 ease-in-out [corner-shape:squircle] supports-[corner-shape:squircle]:rounded-2xl motion-reduce:transition-none",
32573
- ref,
32574
32753
  ...props
32575
32754
  });
32576
32755
  const SearchInput = ({ className, ...props }) => /* @__PURE__ */ jsxRuntimeExports.jsxs("div", {
@@ -32867,7 +33046,7 @@ var generateWatchOutput = (names, _names, formValues, isGlobal, defaultValue) =>
32867
33046
  var isPrimitive = (value) => isNullOrUndefined(value) || !isObjectType(value);
32868
33047
  function deepEqual$1(object1, object2, _internal_visited = /* @__PURE__ */ new WeakSet()) {
32869
33048
  if (isPrimitive(object1) || isPrimitive(object2)) {
32870
- return object1 === object2;
33049
+ return Object.is(object1, object2);
32871
33050
  }
32872
33051
  if (isDateObject(object1) && isDateObject(object2)) {
32873
33052
  return object1.getTime() === object2.getTime();
@@ -32889,7 +33068,7 @@ function deepEqual$1(object1, object2, _internal_visited = /* @__PURE__ */ new W
32889
33068
  }
32890
33069
  if (key2 !== "ref") {
32891
33070
  const val2 = object2[key2];
32892
- if (isDateObject(val1) && isDateObject(val2) || isObject$4(val1) && isObject$4(val2) || Array.isArray(val1) && Array.isArray(val2) ? !deepEqual$1(val1, val2, _internal_visited) : val1 !== val2) {
33071
+ if (isDateObject(val1) && isDateObject(val2) || isObject$4(val1) && isObject$4(val2) || Array.isArray(val1) && Array.isArray(val2) ? !deepEqual$1(val1, val2, _internal_visited) : !Object.is(val1, val2)) {
32893
33072
  return false;
32894
33073
  }
32895
33074
  }
@@ -32959,19 +33138,19 @@ function useWatch(props) {
32959
33138
  }
32960
33139
  function useController(props) {
32961
33140
  const methods2 = useFormContext();
32962
- const { name, disabled, control = methods2.control, shouldUnregister, defaultValue } = props;
33141
+ const { name, disabled, control = methods2.control, shouldUnregister, defaultValue, exact = true } = props;
32963
33142
  const isArrayField = isNameInFieldArray(control._names.array, name);
32964
33143
  const defaultValueMemo = We.useMemo(() => get$2(control._formValues, name, get$2(control._defaultValues, name, defaultValue)), [control, name, defaultValue]);
32965
33144
  const value = useWatch({
32966
33145
  control,
32967
33146
  name,
32968
33147
  defaultValue: defaultValueMemo,
32969
- exact: true
33148
+ exact
32970
33149
  });
32971
33150
  const formState = useFormState({
32972
33151
  control,
32973
33152
  name,
32974
- exact: true
33153
+ exact
32975
33154
  });
32976
33155
  const _props = We.useRef(props);
32977
33156
  const _previousNameRef = We.useRef(void 0);
@@ -33188,10 +33367,11 @@ function isTraversable(value) {
33188
33367
  }
33189
33368
  function markFieldsDirty(data, fields = {}) {
33190
33369
  for (const key2 in data) {
33191
- if (isTraversable(data[key2])) {
33192
- fields[key2] = Array.isArray(data[key2]) ? [] : {};
33193
- markFieldsDirty(data[key2], fields[key2]);
33194
- } else if (!isUndefined(data[key2])) {
33370
+ const value = data[key2];
33371
+ if (isTraversable(value)) {
33372
+ fields[key2] = Array.isArray(value) ? [] : {};
33373
+ markFieldsDirty(value, fields[key2]);
33374
+ } else if (!isUndefined(value)) {
33195
33375
  fields[key2] = true;
33196
33376
  }
33197
33377
  }
@@ -33202,14 +33382,16 @@ function getDirtyFields(data, formValues, dirtyFieldsFromValues) {
33202
33382
  dirtyFieldsFromValues = markFieldsDirty(formValues);
33203
33383
  }
33204
33384
  for (const key2 in data) {
33205
- if (isTraversable(data[key2])) {
33385
+ const value = data[key2];
33386
+ if (isTraversable(value)) {
33206
33387
  if (isUndefined(formValues) || isPrimitive(dirtyFieldsFromValues[key2])) {
33207
- dirtyFieldsFromValues[key2] = markFieldsDirty(data[key2], Array.isArray(data[key2]) ? [] : {});
33388
+ dirtyFieldsFromValues[key2] = markFieldsDirty(value, Array.isArray(value) ? [] : {});
33208
33389
  } else {
33209
- getDirtyFields(data[key2], isNullOrUndefined(formValues) ? {} : formValues[key2], dirtyFieldsFromValues[key2]);
33390
+ getDirtyFields(value, isNullOrUndefined(formValues) ? {} : formValues[key2], dirtyFieldsFromValues[key2]);
33210
33391
  }
33211
33392
  } else {
33212
- dirtyFieldsFromValues[key2] = !deepEqual$1(data[key2], formValues[key2]);
33393
+ const formValue = formValues[key2];
33394
+ dirtyFieldsFromValues[key2] = !deepEqual$1(value, formValue);
33213
33395
  }
33214
33396
  }
33215
33397
  return dirtyFieldsFromValues;
@@ -33664,7 +33846,7 @@ function createFormControl(props = {}) {
33664
33846
  if (field) {
33665
33847
  const defaultValue = get$2(_formValues, name, isUndefined(value) ? get$2(_defaultValues, name) : value);
33666
33848
  isUndefined(defaultValue) || ref && ref.defaultChecked || shouldSkipSetValueAs ? set(_formValues, name, shouldSkipSetValueAs ? defaultValue : getFieldValue(field._f)) : setFieldValue(name, defaultValue);
33667
- _state.mount && _setValid();
33849
+ _state.mount && !_state.action && _setValid();
33668
33850
  }
33669
33851
  };
33670
33852
  const updateTouchAndDirty = (name, fieldValue, isBlurEvent, shouldDirty, shouldRender) => {
@@ -34277,6 +34459,10 @@ function createFormControl(props = {}) {
34277
34459
  };
34278
34460
  _state.mount = !_proxyFormState.isValid || !!keepStateOptions.keepIsValid || !!keepStateOptions.keepDirtyValues || !_options.shouldUnregister && !isEmptyObject(values);
34279
34461
  _state.watch = !!_options.shouldUnregister;
34462
+ _state.action = false;
34463
+ if (!keepStateOptions.keepErrors) {
34464
+ _formState.errors = {};
34465
+ }
34280
34466
  _subjects.state.next({
34281
34467
  submitCount: keepStateOptions.keepSubmitCount ? _formState.submitCount : 0,
34282
34468
  isDirty: isEmptyResetValues ? false : keepStateOptions.keepDirty ? _formState.isDirty : !!(keepStateOptions.keepDefaultValues && !deepEqual$1(formValues, _defaultValues)),
@@ -34473,11 +34659,15 @@ function useForm$1(props = {}) {
34473
34659
  }
34474
34660
  }, [control, formState.isDirty]);
34475
34661
  We.useEffect(() => {
34662
+ var _a2;
34476
34663
  if (props.values && !deepEqual$1(props.values, _values.current)) {
34477
34664
  control._reset(props.values, {
34478
34665
  keepFieldsRef: true,
34479
34666
  ...control._options.resetOptions
34480
34667
  });
34668
+ if (!((_a2 = control._options.resetOptions) === null || _a2 === void 0 ? void 0 : _a2.keepIsValid)) {
34669
+ control._setValid();
34670
+ }
34481
34671
  _values.current = props.values;
34482
34672
  updateFormState((state) => ({ ...state }));
34483
34673
  } else {
@@ -34841,7 +35031,7 @@ function addToStart(items, item, max2 = 0) {
34841
35031
  const newItems = [item, ...items];
34842
35032
  return max2 && newItems.length > max2 ? newItems.slice(0, -1) : newItems;
34843
35033
  }
34844
- var skipToken = Symbol();
35034
+ var skipToken = /* @__PURE__ */ Symbol();
34845
35035
  function ensureQueryFn(options, fetchOptions) {
34846
35036
  if (!options.queryFn && fetchOptions?.initialPromise) {
34847
35037
  return () => fetchOptions.initialPromise;
@@ -38086,6 +38276,436 @@ async function startAuthentication(options) {
38086
38276
  authenticatorAttachment: toAuthenticatorAttachment(credential.authenticatorAttachment)
38087
38277
  };
38088
38278
  }
38279
+ const kBroadcastChannel = /* @__PURE__ */ Symbol.for("better-auth:broadcast-channel");
38280
+ const now$1 = () => Math.floor(Date.now() / 1e3);
38281
+ var WindowBroadcastChannel = class {
38282
+ listeners = /* @__PURE__ */ new Set();
38283
+ name;
38284
+ constructor(name = "better-auth.message") {
38285
+ this.name = name;
38286
+ }
38287
+ subscribe(listener) {
38288
+ this.listeners.add(listener);
38289
+ return () => {
38290
+ this.listeners.delete(listener);
38291
+ };
38292
+ }
38293
+ post(message) {
38294
+ if (typeof window === "undefined") return;
38295
+ try {
38296
+ localStorage.setItem(this.name, JSON.stringify({
38297
+ ...message,
38298
+ timestamp: now$1()
38299
+ }));
38300
+ } catch {
38301
+ }
38302
+ }
38303
+ setup() {
38304
+ if (typeof window === "undefined" || typeof window.addEventListener === "undefined") return () => {
38305
+ };
38306
+ const handler = (event) => {
38307
+ if (event.key !== this.name) return;
38308
+ const message = JSON.parse(event.newValue ?? "{}");
38309
+ if (message?.event !== "session" || !message?.data) return;
38310
+ this.listeners.forEach((listener) => listener(message));
38311
+ };
38312
+ window.addEventListener("storage", handler);
38313
+ return () => {
38314
+ window.removeEventListener("storage", handler);
38315
+ };
38316
+ }
38317
+ };
38318
+ function getGlobalBroadcastChannel(name = "better-auth.message") {
38319
+ if (!globalThis[kBroadcastChannel]) globalThis[kBroadcastChannel] = new WindowBroadcastChannel(name);
38320
+ return globalThis[kBroadcastChannel];
38321
+ }
38322
+ const kFocusManager = /* @__PURE__ */ Symbol.for("better-auth:focus-manager");
38323
+ var WindowFocusManager = class {
38324
+ listeners = /* @__PURE__ */ new Set();
38325
+ subscribe(listener) {
38326
+ this.listeners.add(listener);
38327
+ return () => {
38328
+ this.listeners.delete(listener);
38329
+ };
38330
+ }
38331
+ setFocused(focused) {
38332
+ this.listeners.forEach((listener) => listener(focused));
38333
+ }
38334
+ setup() {
38335
+ if (typeof window === "undefined" || typeof document === "undefined" || typeof window.addEventListener === "undefined") return () => {
38336
+ };
38337
+ const visibilityHandler = () => {
38338
+ if (document.visibilityState === "visible") this.setFocused(true);
38339
+ };
38340
+ document.addEventListener("visibilitychange", visibilityHandler, false);
38341
+ return () => {
38342
+ document.removeEventListener("visibilitychange", visibilityHandler, false);
38343
+ };
38344
+ }
38345
+ };
38346
+ function getGlobalFocusManager() {
38347
+ if (!globalThis[kFocusManager]) globalThis[kFocusManager] = new WindowFocusManager();
38348
+ return globalThis[kFocusManager];
38349
+ }
38350
+ const kOnlineManager = /* @__PURE__ */ Symbol.for("better-auth:online-manager");
38351
+ var WindowOnlineManager = class {
38352
+ listeners = /* @__PURE__ */ new Set();
38353
+ isOnline = typeof navigator !== "undefined" ? navigator.onLine : true;
38354
+ subscribe(listener) {
38355
+ this.listeners.add(listener);
38356
+ return () => {
38357
+ this.listeners.delete(listener);
38358
+ };
38359
+ }
38360
+ setOnline(online) {
38361
+ this.isOnline = online;
38362
+ this.listeners.forEach((listener) => listener(online));
38363
+ }
38364
+ setup() {
38365
+ if (typeof window === "undefined" || typeof window.addEventListener === "undefined") return () => {
38366
+ };
38367
+ const onOnline = () => this.setOnline(true);
38368
+ const onOffline = () => this.setOnline(false);
38369
+ window.addEventListener("online", onOnline, false);
38370
+ window.addEventListener("offline", onOffline, false);
38371
+ return () => {
38372
+ window.removeEventListener("online", onOnline, false);
38373
+ window.removeEventListener("offline", onOffline, false);
38374
+ };
38375
+ }
38376
+ };
38377
+ function getGlobalOnlineManager() {
38378
+ if (!globalThis[kOnlineManager]) globalThis[kOnlineManager] = new WindowOnlineManager();
38379
+ return globalThis[kOnlineManager];
38380
+ }
38381
+ let listenerQueue = [];
38382
+ let lqIndex = 0;
38383
+ const QUEUE_ITEMS_PER_LISTENER = 4;
38384
+ const atom = /* @__NO_SIDE_EFFECTS__ */ (initialValue) => {
38385
+ let listeners2 = [];
38386
+ let $atom = {
38387
+ get() {
38388
+ if (!$atom.lc) {
38389
+ $atom.listen(() => {
38390
+ })();
38391
+ }
38392
+ return $atom.value;
38393
+ },
38394
+ lc: 0,
38395
+ listen(listener) {
38396
+ $atom.lc = listeners2.push(listener);
38397
+ return () => {
38398
+ for (let i2 = lqIndex + QUEUE_ITEMS_PER_LISTENER; i2 < listenerQueue.length; ) {
38399
+ if (listenerQueue[i2] === listener) {
38400
+ listenerQueue.splice(i2, QUEUE_ITEMS_PER_LISTENER);
38401
+ } else {
38402
+ i2 += QUEUE_ITEMS_PER_LISTENER;
38403
+ }
38404
+ }
38405
+ let index2 = listeners2.indexOf(listener);
38406
+ if (~index2) {
38407
+ listeners2.splice(index2, 1);
38408
+ if (!--$atom.lc) $atom.off();
38409
+ }
38410
+ };
38411
+ },
38412
+ notify(oldValue, changedKey) {
38413
+ let runListenerQueue = !listenerQueue.length;
38414
+ for (let listener of listeners2) {
38415
+ listenerQueue.push(listener, $atom.value, oldValue, changedKey);
38416
+ }
38417
+ if (runListenerQueue) {
38418
+ for (lqIndex = 0; lqIndex < listenerQueue.length; lqIndex += QUEUE_ITEMS_PER_LISTENER) {
38419
+ listenerQueue[lqIndex](
38420
+ listenerQueue[lqIndex + 1],
38421
+ listenerQueue[lqIndex + 2],
38422
+ listenerQueue[lqIndex + 3]
38423
+ );
38424
+ }
38425
+ listenerQueue.length = 0;
38426
+ }
38427
+ },
38428
+ /* It will be called on last listener unsubscribing.
38429
+ We will redefine it in onMount and onStop. */
38430
+ off() {
38431
+ },
38432
+ set(newValue) {
38433
+ let oldValue = $atom.value;
38434
+ if (oldValue !== newValue) {
38435
+ $atom.value = newValue;
38436
+ $atom.notify(oldValue);
38437
+ }
38438
+ },
38439
+ subscribe(listener) {
38440
+ let unbind = $atom.listen(listener);
38441
+ listener($atom.value);
38442
+ return unbind;
38443
+ },
38444
+ value: initialValue
38445
+ };
38446
+ return $atom;
38447
+ };
38448
+ const MOUNT = 5;
38449
+ const UNMOUNT = 6;
38450
+ const REVERT_MUTATION = 10;
38451
+ let on = (object2, listener, eventKey, mutateStore) => {
38452
+ object2.events = object2.events || {};
38453
+ if (!object2.events[eventKey + REVERT_MUTATION]) {
38454
+ object2.events[eventKey + REVERT_MUTATION] = mutateStore((eventProps) => {
38455
+ object2.events[eventKey].reduceRight((event, l2) => (l2(event), event), {
38456
+ shared: {},
38457
+ ...eventProps
38458
+ });
38459
+ });
38460
+ }
38461
+ object2.events[eventKey] = object2.events[eventKey] || [];
38462
+ object2.events[eventKey].push(listener);
38463
+ return () => {
38464
+ let currentListeners = object2.events[eventKey];
38465
+ let index2 = currentListeners.indexOf(listener);
38466
+ currentListeners.splice(index2, 1);
38467
+ if (!currentListeners.length) {
38468
+ delete object2.events[eventKey];
38469
+ object2.events[eventKey + REVERT_MUTATION]();
38470
+ delete object2.events[eventKey + REVERT_MUTATION];
38471
+ }
38472
+ };
38473
+ };
38474
+ let STORE_UNMOUNT_DELAY = 1e3;
38475
+ let onMount = ($store, initialize) => {
38476
+ let listener = (payload) => {
38477
+ let destroy = initialize(payload);
38478
+ if (destroy) $store.events[UNMOUNT].push(destroy);
38479
+ };
38480
+ return on($store, listener, MOUNT, (runListeners) => {
38481
+ let originListen = $store.listen;
38482
+ $store.listen = (...args) => {
38483
+ if (!$store.lc && !$store.active) {
38484
+ $store.active = true;
38485
+ runListeners();
38486
+ }
38487
+ return originListen(...args);
38488
+ };
38489
+ let originOff = $store.off;
38490
+ $store.events[UNMOUNT] = [];
38491
+ $store.off = () => {
38492
+ originOff();
38493
+ setTimeout(() => {
38494
+ if ($store.active && !$store.lc) {
38495
+ $store.active = false;
38496
+ for (let destroy of $store.events[UNMOUNT]) destroy();
38497
+ $store.events[UNMOUNT] = [];
38498
+ }
38499
+ }, STORE_UNMOUNT_DELAY);
38500
+ };
38501
+ return () => {
38502
+ $store.listen = originListen;
38503
+ $store.off = originOff;
38504
+ };
38505
+ });
38506
+ };
38507
+ const isServer = () => typeof window === "undefined";
38508
+ const useAuthQuery = (initializedAtom, path, $fetch, options) => {
38509
+ const value = /* @__PURE__ */ atom({
38510
+ data: null,
38511
+ error: null,
38512
+ isPending: true,
38513
+ isRefetching: false,
38514
+ refetch: (queryParams) => fn(queryParams)
38515
+ });
38516
+ const fn = async (queryParams) => {
38517
+ return new Promise((resolve) => {
38518
+ const opts = typeof options === "function" ? options({
38519
+ data: value.get().data,
38520
+ error: value.get().error,
38521
+ isPending: value.get().isPending
38522
+ }) : options;
38523
+ $fetch(path, {
38524
+ ...opts,
38525
+ query: {
38526
+ ...opts?.query,
38527
+ ...queryParams?.query
38528
+ },
38529
+ async onSuccess(context) {
38530
+ value.set({
38531
+ data: context.data,
38532
+ error: null,
38533
+ isPending: false,
38534
+ isRefetching: false,
38535
+ refetch: value.value.refetch
38536
+ });
38537
+ await opts?.onSuccess?.(context);
38538
+ },
38539
+ async onError(context) {
38540
+ const { request } = context;
38541
+ const retryAttempts = typeof request.retry === "number" ? request.retry : request.retry?.attempts;
38542
+ const retryAttempt = request.retryAttempt || 0;
38543
+ if (retryAttempts && retryAttempt < retryAttempts) return;
38544
+ value.set({
38545
+ error: context.error,
38546
+ data: null,
38547
+ isPending: false,
38548
+ isRefetching: false,
38549
+ refetch: value.value.refetch
38550
+ });
38551
+ await opts?.onError?.(context);
38552
+ },
38553
+ async onRequest(context) {
38554
+ const currentValue = value.get();
38555
+ value.set({
38556
+ isPending: currentValue.data === null,
38557
+ data: currentValue.data,
38558
+ error: null,
38559
+ isRefetching: true,
38560
+ refetch: value.value.refetch
38561
+ });
38562
+ await opts?.onRequest?.(context);
38563
+ }
38564
+ }).catch((error) => {
38565
+ value.set({
38566
+ error,
38567
+ data: null,
38568
+ isPending: false,
38569
+ isRefetching: false,
38570
+ refetch: value.value.refetch
38571
+ });
38572
+ }).finally(() => {
38573
+ resolve(void 0);
38574
+ });
38575
+ });
38576
+ };
38577
+ initializedAtom = Array.isArray(initializedAtom) ? initializedAtom : [initializedAtom];
38578
+ let isMounted = false;
38579
+ for (const initAtom of initializedAtom) initAtom.subscribe(async () => {
38580
+ if (isServer()) return;
38581
+ if (isMounted) await fn();
38582
+ else onMount(value, () => {
38583
+ const timeoutId = setTimeout(async () => {
38584
+ if (!isMounted) {
38585
+ await fn();
38586
+ isMounted = true;
38587
+ }
38588
+ }, 0);
38589
+ return () => {
38590
+ value.off();
38591
+ initAtom.off();
38592
+ clearTimeout(timeoutId);
38593
+ };
38594
+ });
38595
+ });
38596
+ return value;
38597
+ };
38598
+ const now = () => Math.floor(Date.now() / 1e3);
38599
+ const FOCUS_REFETCH_RATE_LIMIT_SECONDS = 5;
38600
+ function createSessionRefreshManager(opts) {
38601
+ const { sessionAtom, sessionSignal, $fetch, options = {} } = opts;
38602
+ const refetchInterval = options.sessionOptions?.refetchInterval ?? 0;
38603
+ const refetchOnWindowFocus = options.sessionOptions?.refetchOnWindowFocus ?? true;
38604
+ const refetchWhenOffline = options.sessionOptions?.refetchWhenOffline ?? false;
38605
+ const state = {
38606
+ lastSync: 0,
38607
+ lastSessionRequest: 0,
38608
+ cachedSession: void 0
38609
+ };
38610
+ const shouldRefetch = () => {
38611
+ return refetchWhenOffline || getGlobalOnlineManager().isOnline;
38612
+ };
38613
+ const triggerRefetch = (event) => {
38614
+ if (!shouldRefetch()) return;
38615
+ if (event?.event === "storage") {
38616
+ state.lastSync = now();
38617
+ sessionSignal.set(!sessionSignal.get());
38618
+ return;
38619
+ }
38620
+ const currentSession = sessionAtom.get();
38621
+ if (event?.event === "poll") {
38622
+ state.lastSessionRequest = now();
38623
+ $fetch("/get-session").then((res) => {
38624
+ sessionAtom.set({
38625
+ ...currentSession,
38626
+ data: res.data,
38627
+ error: res.error || null
38628
+ });
38629
+ state.lastSync = now();
38630
+ sessionSignal.set(!sessionSignal.get());
38631
+ }).catch(() => {
38632
+ });
38633
+ return;
38634
+ }
38635
+ if (event?.event === "visibilitychange") {
38636
+ if (now() - state.lastSessionRequest < FOCUS_REFETCH_RATE_LIMIT_SECONDS && currentSession?.data !== null && currentSession?.data !== void 0) return;
38637
+ }
38638
+ if (currentSession?.data === null || currentSession?.data === void 0 || event?.event === "visibilitychange") {
38639
+ if (event?.event === "visibilitychange") state.lastSessionRequest = now();
38640
+ state.lastSync = now();
38641
+ sessionSignal.set(!sessionSignal.get());
38642
+ }
38643
+ };
38644
+ const broadcastSessionUpdate = (trigger) => {
38645
+ getGlobalBroadcastChannel().post({
38646
+ event: "session",
38647
+ data: { trigger },
38648
+ clientId: Math.random().toString(36).substring(7)
38649
+ });
38650
+ };
38651
+ const setupPolling = () => {
38652
+ if (refetchInterval && refetchInterval > 0) state.pollInterval = setInterval(() => {
38653
+ if (sessionAtom.get()?.data) triggerRefetch({ event: "poll" });
38654
+ }, refetchInterval * 1e3);
38655
+ };
38656
+ const setupBroadcast = () => {
38657
+ state.unsubscribeBroadcast = getGlobalBroadcastChannel().subscribe(() => {
38658
+ triggerRefetch({ event: "storage" });
38659
+ });
38660
+ };
38661
+ const setupFocusRefetch = () => {
38662
+ if (!refetchOnWindowFocus) return;
38663
+ state.unsubscribeFocus = getGlobalFocusManager().subscribe(() => {
38664
+ triggerRefetch({ event: "visibilitychange" });
38665
+ });
38666
+ };
38667
+ const setupOnlineRefetch = () => {
38668
+ state.unsubscribeOnline = getGlobalOnlineManager().subscribe((online) => {
38669
+ if (online) triggerRefetch({ event: "visibilitychange" });
38670
+ });
38671
+ };
38672
+ const init2 = () => {
38673
+ setupPolling();
38674
+ setupBroadcast();
38675
+ setupFocusRefetch();
38676
+ setupOnlineRefetch();
38677
+ getGlobalBroadcastChannel().setup();
38678
+ getGlobalFocusManager().setup();
38679
+ getGlobalOnlineManager().setup();
38680
+ };
38681
+ const cleanup = () => {
38682
+ if (state.pollInterval) {
38683
+ clearInterval(state.pollInterval);
38684
+ state.pollInterval = void 0;
38685
+ }
38686
+ if (state.unsubscribeBroadcast) {
38687
+ state.unsubscribeBroadcast();
38688
+ state.unsubscribeBroadcast = void 0;
38689
+ }
38690
+ if (state.unsubscribeFocus) {
38691
+ state.unsubscribeFocus();
38692
+ state.unsubscribeFocus = void 0;
38693
+ }
38694
+ if (state.unsubscribeOnline) {
38695
+ state.unsubscribeOnline();
38696
+ state.unsubscribeOnline = void 0;
38697
+ }
38698
+ state.lastSync = 0;
38699
+ state.lastSessionRequest = 0;
38700
+ state.cachedSession = void 0;
38701
+ };
38702
+ return {
38703
+ init: init2,
38704
+ cleanup,
38705
+ triggerRefetch,
38706
+ broadcastSessionUpdate
38707
+ };
38708
+ }
38089
38709
  var define_globalThis_process_env_default = {};
38090
38710
  var define_process_env_default = {};
38091
38711
  const _envShim = /* @__PURE__ */ Object.create(null);
@@ -38277,7 +38897,7 @@ var BetterAuthError = class extends Error {
38277
38897
  function checkHasPath(url) {
38278
38898
  try {
38279
38899
  return (new URL(url).pathname.replace(/\/+$/, "") || "/") !== "/";
38280
- } catch (error) {
38900
+ } catch {
38281
38901
  throw new BetterAuthError(`Invalid base URL: ${url}. Please provide a valid base URL.`);
38282
38902
  }
38283
38903
  }
@@ -38306,6 +38926,20 @@ function getBaseURL(url, path, request, loadEnv, trustedProxyHeaders) {
38306
38926
  }
38307
38927
  if (typeof window !== "undefined" && window.location) return withPath(window.location.origin, path);
38308
38928
  }
38929
+ const redirectPlugin = {
38930
+ id: "redirect",
38931
+ name: "Redirect",
38932
+ hooks: { onSuccess(context) {
38933
+ if (context.data?.url && context.data?.redirect) {
38934
+ if (typeof window !== "undefined" && window.location) {
38935
+ if (window.location) try {
38936
+ window.location.href = context.data.url;
38937
+ } catch {
38938
+ }
38939
+ }
38940
+ }
38941
+ } }
38942
+ };
38309
38943
  const PROTO_POLLUTION_PATTERNS = {
38310
38944
  proto: /"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,
38311
38945
  constructor: /"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,
@@ -38374,132 +39008,26 @@ function betterJSONParse(value, options = {}) {
38374
39008
  function parseJSON(value, options = { strict: true }) {
38375
39009
  return betterJSONParse(value, options);
38376
39010
  }
38377
- let listenerQueue = [];
38378
- let lqIndex = 0;
38379
- const QUEUE_ITEMS_PER_LISTENER = 4;
38380
- const atom = /* @__NO_SIDE_EFFECTS__ */ (initialValue) => {
38381
- let listeners2 = [];
38382
- let $atom = {
38383
- get() {
38384
- if (!$atom.lc) {
38385
- $atom.listen(() => {
38386
- })();
38387
- }
38388
- return $atom.value;
38389
- },
38390
- lc: 0,
38391
- listen(listener) {
38392
- $atom.lc = listeners2.push(listener);
38393
- return () => {
38394
- for (let i2 = lqIndex + QUEUE_ITEMS_PER_LISTENER; i2 < listenerQueue.length; ) {
38395
- if (listenerQueue[i2] === listener) {
38396
- listenerQueue.splice(i2, QUEUE_ITEMS_PER_LISTENER);
38397
- } else {
38398
- i2 += QUEUE_ITEMS_PER_LISTENER;
38399
- }
38400
- }
38401
- let index2 = listeners2.indexOf(listener);
38402
- if (~index2) {
38403
- listeners2.splice(index2, 1);
38404
- if (!--$atom.lc) $atom.off();
38405
- }
38406
- };
38407
- },
38408
- notify(oldValue, changedKey) {
38409
- let runListenerQueue = !listenerQueue.length;
38410
- for (let listener of listeners2) {
38411
- listenerQueue.push(listener, $atom.value, oldValue, changedKey);
38412
- }
38413
- if (runListenerQueue) {
38414
- for (lqIndex = 0; lqIndex < listenerQueue.length; lqIndex += QUEUE_ITEMS_PER_LISTENER) {
38415
- listenerQueue[lqIndex](
38416
- listenerQueue[lqIndex + 1],
38417
- listenerQueue[lqIndex + 2],
38418
- listenerQueue[lqIndex + 3]
38419
- );
38420
- }
38421
- listenerQueue.length = 0;
38422
- }
38423
- },
38424
- /* It will be called on last listener unsubscribing.
38425
- We will redefine it in onMount and onStop. */
38426
- off() {
38427
- },
38428
- set(newValue) {
38429
- let oldValue = $atom.value;
38430
- if (oldValue !== newValue) {
38431
- $atom.value = newValue;
38432
- $atom.notify(oldValue);
38433
- }
38434
- },
38435
- subscribe(listener) {
38436
- let unbind = $atom.listen(listener);
38437
- listener($atom.value);
38438
- return unbind;
38439
- },
38440
- value: initialValue
38441
- };
38442
- return $atom;
38443
- };
38444
- const MOUNT = 5;
38445
- const UNMOUNT = 6;
38446
- const REVERT_MUTATION = 10;
38447
- let on = (object2, listener, eventKey, mutateStore) => {
38448
- object2.events = object2.events || {};
38449
- if (!object2.events[eventKey + REVERT_MUTATION]) {
38450
- object2.events[eventKey + REVERT_MUTATION] = mutateStore((eventProps) => {
38451
- object2.events[eventKey].reduceRight((event, l2) => (l2(event), event), {
38452
- shared: {},
38453
- ...eventProps
38454
- });
39011
+ function getSessionAtom($fetch, options) {
39012
+ const $signal = /* @__PURE__ */ atom(false);
39013
+ const session = useAuthQuery($signal, "/get-session", $fetch, { method: "GET" });
39014
+ onMount(session, () => {
39015
+ const refreshManager = createSessionRefreshManager({
39016
+ sessionAtom: session,
39017
+ sessionSignal: $signal,
39018
+ $fetch,
39019
+ options
38455
39020
  });
38456
- }
38457
- object2.events[eventKey] = object2.events[eventKey] || [];
38458
- object2.events[eventKey].push(listener);
38459
- return () => {
38460
- let currentListeners = object2.events[eventKey];
38461
- let index2 = currentListeners.indexOf(listener);
38462
- currentListeners.splice(index2, 1);
38463
- if (!currentListeners.length) {
38464
- delete object2.events[eventKey];
38465
- object2.events[eventKey + REVERT_MUTATION]();
38466
- delete object2.events[eventKey + REVERT_MUTATION];
38467
- }
38468
- };
38469
- };
38470
- let STORE_UNMOUNT_DELAY = 1e3;
38471
- let onMount = ($store, initialize) => {
38472
- let listener = (payload) => {
38473
- let destroy = initialize(payload);
38474
- if (destroy) $store.events[UNMOUNT].push(destroy);
38475
- };
38476
- return on($store, listener, MOUNT, (runListeners) => {
38477
- let originListen = $store.listen;
38478
- $store.listen = (...args) => {
38479
- if (!$store.lc && !$store.active) {
38480
- $store.active = true;
38481
- runListeners();
38482
- }
38483
- return originListen(...args);
38484
- };
38485
- let originOff = $store.off;
38486
- $store.events[UNMOUNT] = [];
38487
- $store.off = () => {
38488
- originOff();
38489
- setTimeout(() => {
38490
- if ($store.active && !$store.lc) {
38491
- $store.active = false;
38492
- for (let destroy of $store.events[UNMOUNT]) destroy();
38493
- $store.events[UNMOUNT] = [];
38494
- }
38495
- }, STORE_UNMOUNT_DELAY);
38496
- };
39021
+ refreshManager.init();
38497
39022
  return () => {
38498
- $store.listen = originListen;
38499
- $store.off = originOff;
39023
+ refreshManager.cleanup();
38500
39024
  };
38501
39025
  });
38502
- };
39026
+ return {
39027
+ session,
39028
+ $sessionSignal: $signal
39029
+ };
39030
+ }
38503
39031
  var __defProp = Object.defineProperty;
38504
39032
  var __defProps = Object.defineProperties;
38505
39033
  var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
@@ -38527,6 +39055,7 @@ var BetterFetchError = class extends Error {
38527
39055
  this.status = status;
38528
39056
  this.statusText = statusText;
38529
39057
  this.error = error;
39058
+ Error.captureStackTrace(this, this.constructor);
38530
39059
  }
38531
39060
  };
38532
39061
  var initializePlugins = async (url, options) => {
@@ -38628,18 +39157,23 @@ var getAuthHeader = async (options) => {
38628
39157
  }
38629
39158
  headers["authorization"] = `Bearer ${token}`;
38630
39159
  } else if (options.auth.type === "Basic") {
38631
- const username = getValue(options.auth.username);
38632
- const password = getValue(options.auth.password);
39160
+ const [username, password] = await Promise.all([
39161
+ getValue(options.auth.username),
39162
+ getValue(options.auth.password)
39163
+ ]);
38633
39164
  if (!username || !password) {
38634
39165
  return headers;
38635
39166
  }
38636
39167
  headers["authorization"] = `Basic ${btoa(`${username}:${password}`)}`;
38637
39168
  } else if (options.auth.type === "Custom") {
38638
- const value = getValue(options.auth.value);
39169
+ const [prefix, value] = await Promise.all([
39170
+ getValue(options.auth.prefix),
39171
+ getValue(options.auth.value)
39172
+ ]);
38639
39173
  if (!value) {
38640
39174
  return headers;
38641
39175
  }
38642
- headers["authorization"] = `${getValue(options.auth.prefix)} ${value}`;
39176
+ headers["authorization"] = `${prefix != null ? prefix : ""} ${value}`;
38643
39177
  }
38644
39178
  }
38645
39179
  return headers;
@@ -38747,6 +39281,12 @@ function getBody(options) {
38747
39281
  }
38748
39282
  return JSON.stringify(options.body);
38749
39283
  }
39284
+ if (headers.has("content-type") && headers.get("content-type") === "application/x-www-form-urlencoded") {
39285
+ if (isJSONSerializable(options.body)) {
39286
+ return new URLSearchParams(options.body).toString();
39287
+ }
39288
+ return options.body;
39289
+ }
38750
39290
  return options.body;
38751
39291
  }
38752
39292
  function getMethod$1(url, options) {
@@ -38785,7 +39325,7 @@ var ValidationError = class _ValidationError extends Error {
38785
39325
  }
38786
39326
  };
38787
39327
  async function parseStandardSchema(schema, input) {
38788
- let result = await schema["~standard"].validate(input);
39328
+ const result = await schema["~standard"].validate(input);
38789
39329
  if (result.issues) {
38790
39330
  throw new ValidationError(result.issues);
38791
39331
  }
@@ -38847,7 +39387,7 @@ var applySchemaPlugin = (config2) => ({
38847
39387
  var createFetch = (config2) => {
38848
39388
  async function $fetch(url, options) {
38849
39389
  const opts = __spreadProps(__spreadValues(__spreadValues({}, config2), options), {
38850
- plugins: [...(config2 == null ? void 0 : config2.plugins) || [], applySchemaPlugin(config2 || {})]
39390
+ plugins: [...(config2 == null ? void 0 : config2.plugins) || [], applySchemaPlugin(config2 || {}), ...(options == null ? void 0 : options.plugins) || []]
38851
39391
  });
38852
39392
  if (config2 == null ? void 0 : config2.catchAllError) {
38853
39393
  try {
@@ -38869,7 +39409,7 @@ var createFetch = (config2) => {
38869
39409
  return $fetch;
38870
39410
  };
38871
39411
  function getURL2(url, option) {
38872
- let { baseURL, params, query } = option || {
39412
+ const { baseURL, params, query } = option || {
38873
39413
  query: {},
38874
39414
  params: {},
38875
39415
  baseURL: ""
@@ -38886,7 +39426,18 @@ function getURL2(url, option) {
38886
39426
  const queryParams = new URLSearchParams(urlQuery);
38887
39427
  for (const [key2, value] of Object.entries(query || {})) {
38888
39428
  if (value == null) continue;
38889
- queryParams.set(key2, String(value));
39429
+ let serializedValue;
39430
+ if (typeof value === "string") {
39431
+ serializedValue = value;
39432
+ } else if (Array.isArray(value)) {
39433
+ for (const val of value) {
39434
+ queryParams.append(key2, val);
39435
+ }
39436
+ continue;
39437
+ } else {
39438
+ serializedValue = JSON.stringify(value);
39439
+ }
39440
+ queryParams.set(key2, serializedValue);
38890
39441
  }
38891
39442
  if (params) {
38892
39443
  if (Array.isArray(params)) {
@@ -38935,7 +39486,7 @@ var betterFetch = async (url, options) => {
38935
39486
  for (const onRequest of hooks.onRequest) {
38936
39487
  if (onRequest) {
38937
39488
  const res = await onRequest(context);
38938
- if (res instanceof Object) {
39489
+ if (typeof res === "object" && res !== null) {
38939
39490
  context = res;
38940
39491
  }
38941
39492
  }
@@ -38959,7 +39510,7 @@ var betterFetch = async (url, options) => {
38959
39510
  }));
38960
39511
  if (r2 instanceof Response) {
38961
39512
  response = r2;
38962
- } else if (r2 instanceof Object) {
39513
+ } else if (typeof r2 === "object" && r2 !== null) {
38963
39514
  response = r2.response;
38964
39515
  }
38965
39516
  }
@@ -38974,15 +39525,14 @@ var betterFetch = async (url, options) => {
38974
39525
  }
38975
39526
  const responseType = detectResponseType(response);
38976
39527
  const successContext = {
38977
- data: "",
39528
+ data: null,
38978
39529
  response,
38979
39530
  request: context
38980
39531
  };
38981
39532
  if (responseType === "json" || responseType === "text") {
38982
39533
  const text = await response.text();
38983
39534
  const parser2 = (_d = context.jsonParser) != null ? _d : jsonParse;
38984
- const data = await parser2(text);
38985
- successContext.data = data;
39535
+ successContext.data = await parser2(text);
38986
39536
  } else {
38987
39537
  successContext.data = await response[responseType]();
38988
39538
  }
@@ -39060,344 +39610,6 @@ var betterFetch = async (url, options) => {
39060
39610
  })
39061
39611
  };
39062
39612
  };
39063
- const kBroadcastChannel = Symbol.for("better-auth:broadcast-channel");
39064
- const now$1 = () => Math.floor(Date.now() / 1e3);
39065
- var WindowBroadcastChannel = class {
39066
- listeners = /* @__PURE__ */ new Set();
39067
- name;
39068
- constructor(name = "better-auth.message") {
39069
- this.name = name;
39070
- }
39071
- subscribe(listener) {
39072
- this.listeners.add(listener);
39073
- return () => {
39074
- this.listeners.delete(listener);
39075
- };
39076
- }
39077
- post(message) {
39078
- if (typeof window === "undefined") return;
39079
- try {
39080
- localStorage.setItem(this.name, JSON.stringify({
39081
- ...message,
39082
- timestamp: now$1()
39083
- }));
39084
- } catch {
39085
- }
39086
- }
39087
- setup() {
39088
- if (typeof window === "undefined" || typeof window.addEventListener === "undefined") return () => {
39089
- };
39090
- const handler = (event) => {
39091
- if (event.key !== this.name) return;
39092
- const message = JSON.parse(event.newValue ?? "{}");
39093
- if (message?.event !== "session" || !message?.data) return;
39094
- this.listeners.forEach((listener) => listener(message));
39095
- };
39096
- window.addEventListener("storage", handler);
39097
- return () => {
39098
- window.removeEventListener("storage", handler);
39099
- };
39100
- }
39101
- };
39102
- function getGlobalBroadcastChannel(name = "better-auth.message") {
39103
- if (!globalThis[kBroadcastChannel]) globalThis[kBroadcastChannel] = new WindowBroadcastChannel(name);
39104
- return globalThis[kBroadcastChannel];
39105
- }
39106
- const kFocusManager = Symbol.for("better-auth:focus-manager");
39107
- var WindowFocusManager = class {
39108
- listeners = /* @__PURE__ */ new Set();
39109
- subscribe(listener) {
39110
- this.listeners.add(listener);
39111
- return () => {
39112
- this.listeners.delete(listener);
39113
- };
39114
- }
39115
- setFocused(focused) {
39116
- this.listeners.forEach((listener) => listener(focused));
39117
- }
39118
- setup() {
39119
- if (typeof window === "undefined" || typeof document === "undefined" || typeof window.addEventListener === "undefined") return () => {
39120
- };
39121
- const visibilityHandler = () => {
39122
- if (document.visibilityState === "visible") this.setFocused(true);
39123
- };
39124
- document.addEventListener("visibilitychange", visibilityHandler, false);
39125
- return () => {
39126
- document.removeEventListener("visibilitychange", visibilityHandler, false);
39127
- };
39128
- }
39129
- };
39130
- function getGlobalFocusManager() {
39131
- if (!globalThis[kFocusManager]) globalThis[kFocusManager] = new WindowFocusManager();
39132
- return globalThis[kFocusManager];
39133
- }
39134
- const kOnlineManager = Symbol.for("better-auth:online-manager");
39135
- var WindowOnlineManager = class {
39136
- listeners = /* @__PURE__ */ new Set();
39137
- isOnline = typeof navigator !== "undefined" ? navigator.onLine : true;
39138
- subscribe(listener) {
39139
- this.listeners.add(listener);
39140
- return () => {
39141
- this.listeners.delete(listener);
39142
- };
39143
- }
39144
- setOnline(online) {
39145
- this.isOnline = online;
39146
- this.listeners.forEach((listener) => listener(online));
39147
- }
39148
- setup() {
39149
- if (typeof window === "undefined" || typeof window.addEventListener === "undefined") return () => {
39150
- };
39151
- const onOnline = () => this.setOnline(true);
39152
- const onOffline = () => this.setOnline(false);
39153
- window.addEventListener("online", onOnline, false);
39154
- window.addEventListener("offline", onOffline, false);
39155
- return () => {
39156
- window.removeEventListener("online", onOnline, false);
39157
- window.removeEventListener("offline", onOffline, false);
39158
- };
39159
- }
39160
- };
39161
- function getGlobalOnlineManager() {
39162
- if (!globalThis[kOnlineManager]) globalThis[kOnlineManager] = new WindowOnlineManager();
39163
- return globalThis[kOnlineManager];
39164
- }
39165
- const isServer = () => typeof window === "undefined";
39166
- const useAuthQuery = (initializedAtom, path, $fetch, options) => {
39167
- const value = /* @__PURE__ */ atom({
39168
- data: null,
39169
- error: null,
39170
- isPending: true,
39171
- isRefetching: false,
39172
- refetch: (queryParams) => fn(queryParams)
39173
- });
39174
- const fn = async (queryParams) => {
39175
- return new Promise((resolve) => {
39176
- const opts = typeof options === "function" ? options({
39177
- data: value.get().data,
39178
- error: value.get().error,
39179
- isPending: value.get().isPending
39180
- }) : options;
39181
- $fetch(path, {
39182
- ...opts,
39183
- query: {
39184
- ...opts?.query,
39185
- ...queryParams?.query
39186
- },
39187
- async onSuccess(context) {
39188
- value.set({
39189
- data: context.data,
39190
- error: null,
39191
- isPending: false,
39192
- isRefetching: false,
39193
- refetch: value.value.refetch
39194
- });
39195
- await opts?.onSuccess?.(context);
39196
- },
39197
- async onError(context) {
39198
- const { request } = context;
39199
- const retryAttempts = typeof request.retry === "number" ? request.retry : request.retry?.attempts;
39200
- const retryAttempt = request.retryAttempt || 0;
39201
- if (retryAttempts && retryAttempt < retryAttempts) return;
39202
- value.set({
39203
- error: context.error,
39204
- data: null,
39205
- isPending: false,
39206
- isRefetching: false,
39207
- refetch: value.value.refetch
39208
- });
39209
- await opts?.onError?.(context);
39210
- },
39211
- async onRequest(context) {
39212
- const currentValue = value.get();
39213
- value.set({
39214
- isPending: currentValue.data === null,
39215
- data: currentValue.data,
39216
- error: null,
39217
- isRefetching: true,
39218
- refetch: value.value.refetch
39219
- });
39220
- await opts?.onRequest?.(context);
39221
- }
39222
- }).catch((error) => {
39223
- value.set({
39224
- error,
39225
- data: null,
39226
- isPending: false,
39227
- isRefetching: false,
39228
- refetch: value.value.refetch
39229
- });
39230
- }).finally(() => {
39231
- resolve(void 0);
39232
- });
39233
- });
39234
- };
39235
- initializedAtom = Array.isArray(initializedAtom) ? initializedAtom : [initializedAtom];
39236
- let isMounted = false;
39237
- for (const initAtom of initializedAtom) initAtom.subscribe(async () => {
39238
- if (isServer()) return;
39239
- if (isMounted) await fn();
39240
- else onMount(value, () => {
39241
- const timeoutId = setTimeout(async () => {
39242
- if (!isMounted) {
39243
- await fn();
39244
- isMounted = true;
39245
- }
39246
- }, 0);
39247
- return () => {
39248
- value.off();
39249
- initAtom.off();
39250
- clearTimeout(timeoutId);
39251
- };
39252
- });
39253
- });
39254
- return value;
39255
- };
39256
- const now = () => Math.floor(Date.now() / 1e3);
39257
- const FOCUS_REFETCH_RATE_LIMIT_SECONDS = 5;
39258
- function createSessionRefreshManager(opts) {
39259
- const { sessionAtom, sessionSignal, $fetch, options = {} } = opts;
39260
- const refetchInterval = options.sessionOptions?.refetchInterval ?? 0;
39261
- const refetchOnWindowFocus = options.sessionOptions?.refetchOnWindowFocus ?? true;
39262
- const refetchWhenOffline = options.sessionOptions?.refetchWhenOffline ?? false;
39263
- const state = {
39264
- lastSync: 0,
39265
- lastSessionRequest: 0,
39266
- cachedSession: void 0
39267
- };
39268
- const shouldRefetch = () => {
39269
- return refetchWhenOffline || getGlobalOnlineManager().isOnline;
39270
- };
39271
- const triggerRefetch = (event) => {
39272
- if (!shouldRefetch()) return;
39273
- if (event?.event === "storage") {
39274
- state.lastSync = now();
39275
- sessionSignal.set(!sessionSignal.get());
39276
- return;
39277
- }
39278
- const currentSession = sessionAtom.get();
39279
- if (event?.event === "poll") {
39280
- state.lastSessionRequest = now();
39281
- $fetch("/get-session").then((res) => {
39282
- sessionAtom.set({
39283
- ...currentSession,
39284
- data: res.data,
39285
- error: res.error || null
39286
- });
39287
- state.lastSync = now();
39288
- sessionSignal.set(!sessionSignal.get());
39289
- }).catch(() => {
39290
- });
39291
- return;
39292
- }
39293
- if (event?.event === "visibilitychange") {
39294
- if (now() - state.lastSessionRequest < FOCUS_REFETCH_RATE_LIMIT_SECONDS && currentSession?.data !== null && currentSession?.data !== void 0) return;
39295
- }
39296
- if (currentSession?.data === null || currentSession?.data === void 0 || event?.event === "visibilitychange") {
39297
- if (event?.event === "visibilitychange") state.lastSessionRequest = now();
39298
- state.lastSync = now();
39299
- sessionSignal.set(!sessionSignal.get());
39300
- }
39301
- };
39302
- const broadcastSessionUpdate = (trigger) => {
39303
- getGlobalBroadcastChannel().post({
39304
- event: "session",
39305
- data: { trigger },
39306
- clientId: Math.random().toString(36).substring(7)
39307
- });
39308
- };
39309
- const setupPolling = () => {
39310
- if (refetchInterval && refetchInterval > 0) state.pollInterval = setInterval(() => {
39311
- if (sessionAtom.get()?.data) triggerRefetch({ event: "poll" });
39312
- }, refetchInterval * 1e3);
39313
- };
39314
- const setupBroadcast = () => {
39315
- state.unsubscribeBroadcast = getGlobalBroadcastChannel().subscribe(() => {
39316
- triggerRefetch({ event: "storage" });
39317
- });
39318
- };
39319
- const setupFocusRefetch = () => {
39320
- if (!refetchOnWindowFocus) return;
39321
- state.unsubscribeFocus = getGlobalFocusManager().subscribe(() => {
39322
- triggerRefetch({ event: "visibilitychange" });
39323
- });
39324
- };
39325
- const setupOnlineRefetch = () => {
39326
- state.unsubscribeOnline = getGlobalOnlineManager().subscribe((online) => {
39327
- if (online) triggerRefetch({ event: "visibilitychange" });
39328
- });
39329
- };
39330
- const init2 = () => {
39331
- setupPolling();
39332
- setupBroadcast();
39333
- setupFocusRefetch();
39334
- setupOnlineRefetch();
39335
- getGlobalBroadcastChannel().setup();
39336
- getGlobalFocusManager().setup();
39337
- getGlobalOnlineManager().setup();
39338
- };
39339
- const cleanup = () => {
39340
- if (state.pollInterval) {
39341
- clearInterval(state.pollInterval);
39342
- state.pollInterval = void 0;
39343
- }
39344
- if (state.unsubscribeBroadcast) {
39345
- state.unsubscribeBroadcast();
39346
- state.unsubscribeBroadcast = void 0;
39347
- }
39348
- if (state.unsubscribeFocus) {
39349
- state.unsubscribeFocus();
39350
- state.unsubscribeFocus = void 0;
39351
- }
39352
- if (state.unsubscribeOnline) {
39353
- state.unsubscribeOnline();
39354
- state.unsubscribeOnline = void 0;
39355
- }
39356
- state.lastSync = 0;
39357
- state.lastSessionRequest = 0;
39358
- state.cachedSession = void 0;
39359
- };
39360
- return {
39361
- init: init2,
39362
- cleanup,
39363
- triggerRefetch,
39364
- broadcastSessionUpdate
39365
- };
39366
- }
39367
- const redirectPlugin = {
39368
- id: "redirect",
39369
- name: "Redirect",
39370
- hooks: { onSuccess(context) {
39371
- if (context.data?.url && context.data?.redirect) {
39372
- if (typeof window !== "undefined" && window.location) {
39373
- if (window.location) try {
39374
- window.location.href = context.data.url;
39375
- } catch {
39376
- }
39377
- }
39378
- }
39379
- } }
39380
- };
39381
- function getSessionAtom($fetch, options) {
39382
- const $signal = /* @__PURE__ */ atom(false);
39383
- const session = useAuthQuery($signal, "/get-session", $fetch, { method: "GET" });
39384
- onMount(session, () => {
39385
- const refreshManager = createSessionRefreshManager({
39386
- sessionAtom: session,
39387
- sessionSignal: $signal,
39388
- $fetch,
39389
- options
39390
- });
39391
- refreshManager.init();
39392
- return () => {
39393
- refreshManager.cleanup();
39394
- };
39395
- });
39396
- return {
39397
- session,
39398
- $sessionSignal: $signal
39399
- };
39400
- }
39401
39613
  const getClientConfig = (options, loadEnv) => {
39402
39614
  const isCredentialsSupported = "credentials" in Request.prototype;
39403
39615
  const baseURL = getBaseURL(options?.baseURL, options?.basePath) ?? "/api/auth";
@@ -39412,7 +39624,7 @@ const getClientConfig = (options, loadEnv) => {
39412
39624
  onResponse: options?.fetchOptions?.onResponse
39413
39625
  }
39414
39626
  };
39415
- const { onSuccess, onError, onRequest, onResponse, ...restOfFetchOptions } = options?.fetchOptions || {};
39627
+ const { onSuccess: _onSuccess, onError: _onError, onRequest: _onRequest, onResponse: _onResponse, ...restOfFetchOptions } = options?.fetchOptions || {};
39416
39628
  const $fetch = createFetch({
39417
39629
  baseURL,
39418
39630
  ...isCredentialsSupported ? { credentials: "include" } : {},
@@ -39481,7 +39693,7 @@ function isAtom(value) {
39481
39693
  }
39482
39694
  function getMethod(path, knownPathMethods, args) {
39483
39695
  const method = knownPathMethods[path];
39484
- const { fetchOptions, query, ...body } = args || {};
39696
+ const { fetchOptions, query: _query, ...body } = args || {};
39485
39697
  if (method) return method;
39486
39698
  if (fetchOptions?.method) return fetchOptions.method;
39487
39699
  if (body && Object.keys(body).length > 0) return "POST";
@@ -39692,6 +39904,18 @@ const passkeyClient = () => {
39692
39904
  }]
39693
39905
  };
39694
39906
  };
39907
+ const ssoClient = (options) => {
39908
+ return {
39909
+ id: "sso-client",
39910
+ $InferServerPlugin: {}
39911
+ };
39912
+ };
39913
+ const magicLinkClient = () => {
39914
+ return {
39915
+ id: "magic-link",
39916
+ $InferServerPlugin: {}
39917
+ };
39918
+ };
39695
39919
  const twoFactorClient = (options) => {
39696
39920
  return {
39697
39921
  id: "two-factor",
@@ -39717,12 +39941,6 @@ const twoFactorClient = (options) => {
39717
39941
  }]
39718
39942
  };
39719
39943
  };
39720
- const magicLinkClient = () => {
39721
- return {
39722
- id: "magic-link",
39723
- $InferServerPlugin: {}
39724
- };
39725
- };
39726
39944
  const getAuthClient = (backendURL) => createAuthClient({
39727
39945
  baseURL: backendURL,
39728
39946
  withCredentials: true,
@@ -39733,7 +39951,8 @@ const getAuthClient = (backendURL) => createAuthClient({
39733
39951
  window.location.href = twoFaUrl;
39734
39952
  } }),
39735
39953
  passkeyClient(),
39736
- magicLinkClient()
39954
+ magicLinkClient(),
39955
+ ssoClient()
39737
39956
  ]
39738
39957
  });
39739
39958
  const getAuthAPI = (intlayerConfig) => {
@@ -39768,7 +39987,7 @@ const getAuthAPI = (intlayerConfig) => {
39768
39987
  return client2.getSession(...args);
39769
39988
  };
39770
39989
  const forgetPassword = async (...args) => {
39771
- return client2.forgetPassword(...args);
39990
+ return client2.requestPasswordReset(...args);
39772
39991
  };
39773
39992
  const sendVerificationEmail = async (...args) => {
39774
39993
  return client2.sendVerificationEmail(...args);
@@ -39839,6 +40058,9 @@ const getAuthAPI = (intlayerConfig) => {
39839
40058
  const signInMagicLink = async (...args) => {
39840
40059
  return client2.signIn.magicLink(...args);
39841
40060
  };
40061
+ const signInSSO = async (...args) => {
40062
+ return client2.sso.signIn(...args);
40063
+ };
39842
40064
  return {
39843
40065
  getAuthClient: () => client2,
39844
40066
  signInEmail,
@@ -39873,7 +40095,8 @@ const getAuthAPI = (intlayerConfig) => {
39873
40095
  signInPasskey,
39874
40096
  deletePasskey,
39875
40097
  listPasskeys,
39876
- signInMagicLink
40098
+ signInMagicLink,
40099
+ signInSSO
39877
40100
  };
39878
40101
  };
39879
40102
  function useSession(sessionProp, intlayerConfiguration) {
@@ -43937,42 +44160,57 @@ const useItemSelector = (optionsRefs, { selector: selector2 = selectorDefault, i
43937
44160
  }) => {
43938
44161
  const [choiceIndicatorPosition, setChoiceIndicatorPosition] = reactExports.useState(null);
43939
44162
  const [hoveredItem, setHoveredItem] = reactExports.useState(null);
44163
+ const hideTimeoutRef = reactExports.useRef(null);
44164
+ const lastPositionRef = reactExports.useRef(null);
43940
44165
  const itemsLength = optionsRefs.current.length;
43941
44166
  const calculatePosition = () => {
43942
44167
  let targetElement = null;
43943
- if (hoveredItem) targetElement = hoveredItem;
43944
- else targetElement = optionsRefs.current.find(selector2) ?? null;
44168
+ if (hoveredItem) {
44169
+ targetElement = hoveredItem;
44170
+ if (hideTimeoutRef.current) {
44171
+ clearTimeout(hideTimeoutRef.current);
44172
+ hideTimeoutRef.current = null;
44173
+ }
44174
+ } else targetElement = optionsRefs.current.find(selector2) ?? null;
43945
44175
  if (!targetElement) {
43946
- if (orientation === "vertical") setChoiceIndicatorPosition((prev) => ({
43947
- top: 0,
43948
- height: 0,
43949
- ...prev,
43950
- opacity: 0
43951
- }));
43952
- else setChoiceIndicatorPosition((prev) => ({
43953
- left: 0,
43954
- width: 0,
43955
- ...prev,
43956
- opacity: 0
43957
- }));
44176
+ if (orientation === "vertical") setChoiceIndicatorPosition((prev) => {
44177
+ const verticalPrev = prev;
44178
+ const newPosition = {
44179
+ top: verticalPrev?.top ?? 0,
44180
+ height: verticalPrev?.height ?? 0,
44181
+ opacity: 0
44182
+ };
44183
+ lastPositionRef.current = newPosition;
44184
+ return newPosition;
44185
+ });
44186
+ else setChoiceIndicatorPosition((prev) => {
44187
+ const horizontalPrev = prev;
44188
+ const newPosition = {
44189
+ left: horizontalPrev?.left ?? 0,
44190
+ width: horizontalPrev?.width ?? 0,
44191
+ opacity: 0
44192
+ };
44193
+ lastPositionRef.current = newPosition;
44194
+ return newPosition;
44195
+ });
43958
44196
  return;
43959
44197
  }
43960
44198
  if (orientation === "vertical") {
43961
- const top = targetElement.offsetTop;
43962
- const height = targetElement.offsetHeight;
43963
- setChoiceIndicatorPosition({
43964
- top,
43965
- height,
44199
+ const newPosition = {
44200
+ top: targetElement.offsetTop,
44201
+ height: targetElement.offsetHeight,
43966
44202
  opacity: 1
43967
- });
44203
+ };
44204
+ setChoiceIndicatorPosition(newPosition);
44205
+ lastPositionRef.current = newPosition;
43968
44206
  } else {
43969
- const left = targetElement.offsetLeft;
43970
- const width = targetElement.offsetWidth;
43971
- setChoiceIndicatorPosition({
43972
- left,
43973
- width,
44207
+ const newPosition = {
44208
+ left: targetElement.offsetLeft,
44209
+ width: targetElement.offsetWidth,
43974
44210
  opacity: 1
43975
- });
44211
+ };
44212
+ setChoiceIndicatorPosition(newPosition);
44213
+ lastPositionRef.current = newPosition;
43976
44214
  }
43977
44215
  };
43978
44216
  reactExports.useEffect(() => {
@@ -44008,16 +44246,24 @@ const useItemSelector = (optionsRefs, { selector: selector2 = selectorDefault, i
44008
44246
  if (selectedItem) observeSize(selectedItem);
44009
44247
  if (hoveredItem) observeSize(hoveredItem);
44010
44248
  const handleMouseEnter = (event) => {
44249
+ if (hideTimeoutRef.current) {
44250
+ clearTimeout(hideTimeoutRef.current);
44251
+ hideTimeoutRef.current = null;
44252
+ }
44011
44253
  setHoveredItem(event.currentTarget);
44012
44254
  };
44013
44255
  const handleMouseLeave = () => {
44014
- setHoveredItem(null);
44256
+ if (hideTimeoutRef.current) clearTimeout(hideTimeoutRef.current);
44257
+ hideTimeoutRef.current = setTimeout(() => {
44258
+ setHoveredItem(null);
44259
+ }, 150);
44015
44260
  };
44016
44261
  if (isHoverable) optionsRefs.current.forEach((option) => {
44017
44262
  option?.addEventListener("mouseenter", handleMouseEnter, { passive: true });
44018
44263
  option?.addEventListener("mouseleave", handleMouseLeave, { passive: true });
44019
44264
  });
44020
44265
  return () => {
44266
+ if (hideTimeoutRef.current) clearTimeout(hideTimeoutRef.current);
44021
44267
  window.removeEventListener("resize", calculatePosition);
44022
44268
  window.removeEventListener("DOMContentLoaded", calculatePosition);
44023
44269
  mutationObservers.forEach((observer) => {
@@ -44061,7 +44307,7 @@ let SwitchSelectorColor = /* @__PURE__ */ (function(SwitchSelectorColor$1) {
44061
44307
  SwitchSelectorColor$1["TEXT"] = "text";
44062
44308
  return SwitchSelectorColor$1;
44063
44309
  })({});
44064
- const switchSelectorVariant = cva("flex w-fit cursor-pointer flex-row gap-2 rounded-full border-[1.5px] p-[1.5px]", {
44310
+ const switchSelectorVariant = cva("flex w-fit cursor-pointer flex-row gap-2 rounded-full border-[1.3px] p-[1.5px]", {
44065
44311
  variants: { color: {
44066
44312
  [`${SwitchSelectorColor.PRIMARY}`]: "border-primary text-primary",
44067
44313
  [`${SwitchSelectorColor.SECONDARY}`]: "border-secondary text-secondary",
@@ -44087,7 +44333,7 @@ const choiceVariant = cva("z-1 w-full flex-1 cursor-pointer font-medium text-sm
44087
44333
  } },
44088
44334
  defaultVariants: { size: `${SwitchSelectorSize.MD}` }
44089
44335
  });
44090
- const indicatorVariant$1 = cva("absolute top-0 z-[-1] h-full w-auto rounded-full transition-[left,width] duration-300 ease-in-out motion-reduce:transition-none", { variants: { color: {
44336
+ const indicatorVariant$1 = cva("absolute top-0 z-0 h-full w-auto rounded-full transition-[left,width] duration-300 ease-in-out motion-reduce:transition-none", { variants: { color: {
44091
44337
  [`${SwitchSelectorColor.PRIMARY}`]: "bg-primary data-[indicator=true]:text-text",
44092
44338
  [`${SwitchSelectorColor.SECONDARY}`]: "bg-secondary data-[indicator=true]:text-text",
44093
44339
  [`${SwitchSelectorColor.DESTRUCTIVE}`]: "bg-destructive data-[indicator=true]:text-text",
@@ -44272,7 +44518,7 @@ function cleanRegex(source) {
44272
44518
  const end = source.endsWith("$") ? source.length - 1 : source.length;
44273
44519
  return source.slice(start, end);
44274
44520
  }
44275
- const EVALUATING = Symbol("evaluating");
44521
+ const EVALUATING = /* @__PURE__ */ Symbol("evaluating");
44276
44522
  function defineLazy(object2, key2, getter) {
44277
44523
  let value = void 0;
44278
44524
  Object.defineProperty(object2, key2, {
@@ -46799,7 +47045,6 @@ const selector = (option) => option?.getAttribute("aria-active") === "true";
46799
47045
  const OTPFieldContent = ({ field, name, label, description, isRequired, info, showErrorMessage, children, slots = 6, maxLength = 6, ...props }) => {
46800
47046
  const { error } = useFormField();
46801
47047
  const optionsRefs = reactExports.useRef([]);
46802
- const indicatorRef = reactExports.useRef(null);
46803
47048
  const { choiceIndicatorPosition, calculatePosition } = useItemSelector(optionsRefs, {
46804
47049
  selector,
46805
47050
  isHoverable: true
@@ -46864,10 +47109,7 @@ const OTPFieldContent = ({ field, name, label, description, isRequired, info, sh
46864
47109
  }
46865
47110
  })
46866
47111
  ] }),
46867
- choiceIndicatorPosition && /* @__PURE__ */ jsxRuntimeExports.jsx(InputIndicator, {
46868
- style: choiceIndicatorPosition,
46869
- ref: indicatorRef
46870
- })
47112
+ choiceIndicatorPosition && /* @__PURE__ */ jsxRuntimeExports.jsx(InputIndicator, { style: choiceIndicatorPosition })
46871
47113
  ] })
46872
47114
  })
46873
47115
  });
@@ -46914,17 +47156,17 @@ const AutoSizedTextAreaElement = (props) => /* @__PURE__ */ jsxRuntimeExports.js
46914
47156
  "data-testid": props.name,
46915
47157
  ...props
46916
47158
  });
46917
- const CheckboxComponent = ({ inputLabel, ...props }) => /* @__PURE__ */ jsxRuntimeExports.jsx(Checkbox, {
47159
+ const CheckboxComponent = ({ inputLabel, value, onChange, ...props }) => /* @__PURE__ */ jsxRuntimeExports.jsx(Checkbox, {
46918
47160
  ...props,
46919
- label: inputLabel
47161
+ label: inputLabel,
47162
+ checked: Boolean(value),
47163
+ onChange
46920
47164
  });
46921
47165
  const CheckboxElement = ({ autoComplete, ...props }) => /* @__PURE__ */ jsxRuntimeExports.jsx(FormElement, {
46922
47166
  Element: CheckboxComponent,
46923
47167
  id: props.name,
46924
47168
  "data-testid": props.name,
46925
47169
  autoComplete,
46926
- minLength: 6,
46927
- maxLength: 255,
46928
47170
  ...props
46929
47171
  });
46930
47172
  const MultiSelectFieldContent = ({ field, name, label, description, isRequired, info, showErrorMessage, children, ...props }) => {
@@ -47034,7 +47276,7 @@ const SwitchSelectorElement = ({ name, description, label, isRequired, info, sho
47034
47276
  })
47035
47277
  });
47036
47278
  };
47037
- var REACT_LAZY_TYPE = Symbol.for("react.lazy");
47279
+ var REACT_LAZY_TYPE = /* @__PURE__ */ Symbol.for("react.lazy");
47038
47280
  var use = React[" use ".trim().toString()];
47039
47281
  function isPromiseLike(value) {
47040
47282
  return typeof value === "object" && value !== null && "then" in value;
@@ -47090,7 +47332,7 @@ function createSlotClone(ownerName) {
47090
47332
  SlotClone.displayName = `${ownerName}.SlotClone`;
47091
47333
  return SlotClone;
47092
47334
  }
47093
- var SLOTTABLE_IDENTIFIER = Symbol("radix.slottable");
47335
+ var SLOTTABLE_IDENTIFIER = /* @__PURE__ */ Symbol("radix.slottable");
47094
47336
  function isSlottable(child) {
47095
47337
  return reactExports.isValidElement(child) && typeof child.type === "function" && "__radixId" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER;
47096
47338
  }
@@ -48235,7 +48477,11 @@ const DropDown = ({ children, className, identifier, ...props }) => /* @__PURE__
48235
48477
  children
48236
48478
  });
48237
48479
  const Trigger = ({ children, identifier, className, label, ...props }) => /* @__PURE__ */ jsxRuntimeExports.jsx(Button, {
48238
- className: cn$2("w-full cursor-pointer", className),
48480
+ className: cn$2([
48481
+ "w-full cursor-pointer",
48482
+ "group-focus-within/dropdown:bg-current/20 group-focus-within/dropdown:ring-4",
48483
+ className
48484
+ ]),
48239
48485
  label: label ?? `Open panel ${identifier}`,
48240
48486
  "aria-haspopup": "true",
48241
48487
  "aria-controls": `dropdown-panel-${identifier}`,
@@ -48253,7 +48499,7 @@ let DropDownAlign = /* @__PURE__ */ (function(DropDownAlign$1) {
48253
48499
  return DropDownAlign$1;
48254
48500
  })({});
48255
48501
  const Panel = ({ children, isHidden: isHidden2 = void 0, isOverable = false, isFocusable = false, align = DropDownAlign.START, identifier, className, ...props }) => /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
48256
- className: cn$2("absolute top-[calc(100%+0.5rem)] z-[1000] min-w-full", align === DropDownAlign.START && "left-0", align === DropDownAlign.END && "right-0", className),
48502
+ className: cn$2("absolute top-[calc(100%+0.5rem)] z-100 min-w-full", align === DropDownAlign.START && "left-0", align === DropDownAlign.END && "right-0", className),
48257
48503
  "aria-hidden": isHidden2,
48258
48504
  role: "region",
48259
48505
  "aria-labelledby": `dropdown-trigger-${identifier}`,
@@ -49879,14 +50125,14 @@ const ExpandCollapse = ({
49879
50125
  const CodeDefault = ({ children }) => /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
49880
50126
  className: "min-w-0 max-w-full overflow-x-auto",
49881
50127
  children: /* @__PURE__ */ jsxRuntimeExports.jsx("pre", {
49882
- className: "min-w-0 max-w-full overflow-x-auto",
50128
+ className: "min-w-0 max-w-full overflow-x-auto [-ms-overflow-style:none] [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",
49883
50129
  children: /* @__PURE__ */ jsxRuntimeExports.jsx("code", { children: children.split("\n").map((line, index2) => /* @__PURE__ */ jsxRuntimeExports.jsx("span", {
49884
50130
  className: "line block w-full",
49885
50131
  children: line
49886
50132
  }, `line-${index2}-${line.slice(0, 10)}`)) })
49887
50133
  })
49888
50134
  });
49889
- const CodeBlockShiki = reactExports.lazy(() => __vitePreload(() => import("./CodeBlockShiki-DfLGl0YI.js"), true ? [] : void 0).then((mod) => ({ default: mod.CodeBlockShiki })));
50135
+ const CodeBlockShiki = reactExports.lazy(() => __vitePreload(() => import("./CodeBlockShiki-BZrNB-hp.js"), true ? [] : void 0).then((mod) => ({ default: mod.CodeBlockShiki })));
49890
50136
  const CodeBlock = ({ className, onChange, isEditable, children, lang, isDarkMode, ...props }) => /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
49891
50137
  className: cn$2("flex w-full min-w-0 max-w-full overflow-x-auto", className),
49892
50138
  ...props,
@@ -49916,18 +50162,16 @@ const PopoverStatic = ({ children, className, identifier, ...props }) => /* @__P
49916
50162
  ...props,
49917
50163
  children
49918
50164
  });
49919
- const Detail = reactExports.forwardRef(({ children, isHidden: isHidden2 = void 0, isOverable = true, isFocusable = false, xAlign = PopoverXAlign.START, yAlign = PopoverYAlign.BELOW, identifier, className, displayArrow = true, ...props }, ref) => /* @__PURE__ */ jsxRuntimeExports.jsx(Container, {
49920
- ref,
50165
+ const Detail = ({ children, isHidden: isHidden2 = void 0, isOverable = true, isFocusable = false, xAlign = PopoverXAlign.START, yAlign = PopoverYAlign.BELOW, identifier, className, displayArrow = true, ...props }) => /* @__PURE__ */ jsxRuntimeExports.jsx(Container, {
49921
50166
  transparency: "sm",
49922
50167
  role: "group",
49923
50168
  "aria-hidden": isHidden2,
49924
50169
  "aria-labelledby": `unrollable-panel-button-${identifier}`,
49925
50170
  id: `unrollable-panel-${identifier}`,
49926
- className: cn$2("absolute z-[1000] min-w-full rounded-md ring-1 ring-neutral", xAlign === "start" && "left-0", xAlign === "end" && "right-0", yAlign === "bellow" && "top-[calc(100%+1rem)]", yAlign === "above" && "bottom-[calc(100%+1rem)]", displayArrow && 'before:absolute before:z-[999] before:h-0 before:w-0 before:content-[""]', displayArrow && xAlign === "start" && "before:left-2", displayArrow && xAlign === "end" && "before:right-2", displayArrow && yAlign === "bellow" && "before:-top-[10px] before:border-r-[10px] before:border-r-transparent before:border-b-[10px] before:border-b-neutral before:border-l-[10px] before:border-l-transparent", displayArrow && yAlign === "above" && "before:-bottom-[10px] before:border-t-[10px] before:border-t-neutral before:border-r-[10px] before:border-r-transparent before:border-l-[10px] before:border-l-transparent", "overflow-x-visible opacity-0 transition-all duration-400 ease-in-out", isHidden2 !== false ? "invisible" : "visible opacity-100 delay-800", isOverable && "group-hover/popover:visible group-hover/popover:opacity-100 group-hover/popover:delay-800", isFocusable && "group-focus-within/popover:visible group-focus-within/popover:opacity-100 group-focus-within/popover:delay-800", className),
50171
+ className: cn$2("absolute z-50 min-w-full rounded-md ring-1 ring-neutral", xAlign === "start" && "left-0", xAlign === "end" && "right-0", yAlign === "bellow" && "top-[calc(100%+1rem)]", yAlign === "above" && "bottom-[calc(100%+1rem)]", displayArrow && 'before:absolute before:z-[999] before:h-0 before:w-0 before:content-[""]', displayArrow && xAlign === "start" && "before:left-2", displayArrow && xAlign === "end" && "before:right-2", displayArrow && yAlign === "bellow" && "before:-top-[10px] before:border-r-[10px] before:border-r-transparent before:border-b-[10px] before:border-b-neutral before:border-l-[10px] before:border-l-transparent", displayArrow && yAlign === "above" && "before:-bottom-[10px] before:border-t-[10px] before:border-t-neutral before:border-r-[10px] before:border-r-transparent before:border-l-[10px] before:border-l-transparent", "overflow-x-visible opacity-0 transition-all duration-400 ease-in-out", isHidden2 !== false ? "invisible" : "visible opacity-100 delay-800", isOverable && "group-hover/popover:visible group-hover/popover:opacity-100 group-hover/popover:delay-800", isFocusable && "group-focus-within/popover:visible group-focus-within/popover:opacity-100 group-focus-within/popover:delay-800", className),
49927
50172
  ...props,
49928
50173
  children
49929
- }));
49930
- Detail.displayName = "Popover.Detail";
50174
+ });
49931
50175
  PopoverStatic.Detail = Detail;
49932
50176
  const PopoverComponent = (props) => {
49933
50177
  return /* @__PURE__ */ jsxRuntimeExports.jsx(PopoverStatic, { ...props });
@@ -54557,9 +54801,7 @@ const DictionaryFieldEditor = ({
54557
54801
  }), /* @__PURE__ */ jsxRuntimeExports.jsx(SwitchSelector, {
54558
54802
  defaultValue: editorView,
54559
54803
  onChange: (value) => setEditorView(value),
54560
- color: SwitchSelectorColor.TEXT,
54561
- size: SwitchSelectorSize.SM,
54562
- className: "m-auto w-full max-w-xl",
54804
+ color: "text",
54563
54805
  choices: [{
54564
54806
  content: "Details",
54565
54807
  value: EditorViewType.DetailsEditor
@@ -54597,17 +54839,6 @@ const DictionaryFieldEditor = ({
54597
54839
  })
54598
54840
  });
54599
54841
  };
54600
- const MaxWidthSmoother = ({ children, isHidden: isHidden2, minWidth = 0, align = "left", className, ...props }) => /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
54601
- className: cn$2("relative grid h-full grid-cols-[0fr] overflow-x-hidden overflow-y-hidden transition-all duration-500 ease-in-out", isHidden2 ? "" : "grid-cols-[1fr]", className),
54602
- "aria-hidden": isHidden2,
54603
- ...props,
54604
- children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
54605
- style: { minWidth: `${minWidth}px` },
54606
- tabIndex: isHidden2 !== false ? void 0 : -1,
54607
- className: cn$2(align === "right" && "ml-auto"),
54608
- children
54609
- })
54610
- });
54611
54842
  const getBreakpointFromSize = (breakpoint) => {
54612
54843
  switch (breakpoint) {
54613
54844
  case "xs":
@@ -54671,6 +54902,17 @@ const useDevice = (breakpoint = "md") => {
54671
54902
  }, [breakpoint]);
54672
54903
  return result;
54673
54904
  };
54905
+ const MaxWidthSmoother = ({ children, isHidden: isHidden2, minWidth = 0, align = "left", className, ...props }) => /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
54906
+ className: cn$2("relative grid h-full grid-cols-[0fr] overflow-x-hidden overflow-y-hidden transition-all duration-500 ease-in-out", isHidden2 ? "" : "grid-cols-[1fr]", className),
54907
+ "aria-hidden": isHidden2,
54908
+ ...props,
54909
+ children: /* @__PURE__ */ jsxRuntimeExports.jsx("div", {
54910
+ style: { minWidth: `${minWidth}px` },
54911
+ tabIndex: isHidden2 !== false ? void 0 : -1,
54912
+ className: cn$2(align === "right" && "ml-auto"),
54913
+ children
54914
+ })
54915
+ });
54674
54916
  const useRightDrawerStore = create$1((set2, get2) => ({
54675
54917
  drawers: {},
54676
54918
  open: (key2) => set2((state) => ({ drawers: {
@@ -54892,14 +55134,14 @@ const containerVariants = cva("w-fit backdrop-blur", {
54892
55134
  },
54893
55135
  size: {
54894
55136
  [`${TagSize.XS}`]: "border-[1.2px] px-2 py-0.5 text-xs",
54895
- [`${TagSize.SM}`]: "border-[1.5px] px-2 py-0.5 text-sm",
55137
+ [`${TagSize.SM}`]: "border-[1.3px] px-2 py-0.5 text-sm",
54896
55138
  [`${TagSize.MD}`]: "border-2 px-2 py-1 text-base",
54897
55139
  [`${TagSize.LG}`]: "border-2 px-3 py-2 text-lg",
54898
55140
  [`${TagSize.XL}`]: "border-2 px-3 py-2 text-xl"
54899
55141
  },
54900
55142
  border: {
54901
55143
  [`${TagBorder.NONE}`]: "border-none",
54902
- [`${TagBorder.WITH}`]: "border-[1.5px] border-text"
55144
+ [`${TagBorder.WITH}`]: "border-[1.3px] border-text"
54903
55145
  },
54904
55146
  background: {
54905
55147
  [`${TagBackground.NONE}`]: "bg-none",
@@ -55816,7 +56058,7 @@ const AppProvider = (t0) => {
55816
56058
  children
55817
56059
  } = t0;
55818
56060
  let t1;
55819
- if ($2[0] === Symbol.for("react.memo_cache_sentinel")) {
56061
+ if ($2[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
55820
56062
  t1 = /* @__PURE__ */ jsxRuntimeExports.jsx(Toaster, {});
55821
56063
  $2[0] = t1;
55822
56064
  } else {
@@ -56068,14 +56310,14 @@ const DictionaryEditionDrawerContent = (t0) => {
56068
56310
  return t32;
56069
56311
  }
56070
56312
  let t3;
56071
- if ($2[10] === Symbol.for("react.memo_cache_sentinel")) {
56313
+ if ($2[10] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
56072
56314
  t3 = () => setEditionModalOpen(false);
56073
56315
  $2[10] = t3;
56074
56316
  } else {
56075
56317
  t3 = $2[10];
56076
56318
  }
56077
56319
  let t4;
56078
- if ($2[11] === Symbol.for("react.memo_cache_sentinel")) {
56320
+ if ($2[11] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
56079
56321
  t4 = ["local", "remote"];
56080
56322
  $2[11] = t4;
56081
56323
  } else {
@@ -56093,7 +56335,7 @@ const DictionaryEditionDrawerContent = (t0) => {
56093
56335
  t5 = $2[13];
56094
56336
  }
56095
56337
  let t6;
56096
- if ($2[14] === Symbol.for("react.memo_cache_sentinel")) {
56338
+ if ($2[14] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
56097
56339
  t6 = () => {
56098
56340
  setEditionModalOpen(false);
56099
56341
  };
@@ -56153,7 +56395,7 @@ const DictionaryEditionDrawerContent = (t0) => {
56153
56395
  t10 = $2[25];
56154
56396
  }
56155
56397
  let t11;
56156
- if ($2[26] === Symbol.for("react.memo_cache_sentinel")) {
56398
+ if ($2[26] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
56157
56399
  t11 = () => setEditionModalOpen(true);
56158
56400
  $2[26] = t11;
56159
56401
  } else {
@@ -56239,7 +56481,7 @@ const DictionaryEditionDrawerContent = (t0) => {
56239
56481
  t17 = $2[41];
56240
56482
  }
56241
56483
  let t18;
56242
- if ($2[42] === Symbol.for("react.memo_cache_sentinel")) {
56484
+ if ($2[42] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
56243
56485
  t18 = ["local", "remote"];
56244
56486
  $2[42] = t18;
56245
56487
  } else {
@@ -56372,7 +56614,7 @@ const DictionaryEditionDrawerController = (t0) => {
56372
56614
  const dictionaryKey = focusedContent?.dictionaryKey;
56373
56615
  if (!dictionaryKey) {
56374
56616
  let t12;
56375
- if ($2[0] === Symbol.for("react.memo_cache_sentinel")) {
56617
+ if ($2[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
56376
56618
  t12 = /* @__PURE__ */ jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment, {});
56377
56619
  $2[0] = t12;
56378
56620
  } else {
@@ -56680,7 +56922,7 @@ const EditorLayout = (t0) => {
56680
56922
  t2 = $2[3];
56681
56923
  }
56682
56924
  let t3;
56683
- if ($2[4] === Symbol.for("react.memo_cache_sentinel")) {
56925
+ if ($2[4] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
56684
56926
  t3 = /* @__PURE__ */ jsxRuntimeExports.jsx(DictionaryListDrawer, {});
56685
56927
  $2[4] = t3;
56686
56928
  } else {
@@ -56708,7 +56950,7 @@ const useIntlayerConfig = () => {
56708
56950
  const [intlayerConfig, setIntlayerConfig] = reactExports.useState();
56709
56951
  let t0;
56710
56952
  let t1;
56711
- if ($2[0] === Symbol.for("react.memo_cache_sentinel")) {
56953
+ if ($2[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
56712
56954
  t0 = () => {
56713
56955
  fetch("/api/config").then(_temp).then((data) => setIntlayerConfig(data.data));
56714
56956
  };
@@ -56736,7 +56978,7 @@ const EditorProvider = (t0) => {
56736
56978
  const editorURL = intlayerConfig?.editor.editorURL ?? "*";
56737
56979
  if (!intlayerConfig) {
56738
56980
  let t12;
56739
- if ($2[0] === Symbol.for("react.memo_cache_sentinel")) {
56981
+ if ($2[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
56740
56982
  t12 = /* @__PURE__ */ jsxRuntimeExports.jsx(Loader, {});
56741
56983
  $2[0] = t12;
56742
56984
  } else {
@@ -56838,7 +57080,7 @@ const useEditedContentPersistence = () => {
56838
57080
  t3 = $2[7];
56839
57081
  }
56840
57082
  let t4;
56841
- if ($2[8] === Symbol.for("react.memo_cache_sentinel")) {
57083
+ if ($2[8] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
56842
57084
  t4 = [];
56843
57085
  $2[8] = t4;
56844
57086
  } else {
@@ -56929,7 +57171,7 @@ const IframeController = (t0) => {
56929
57171
  useIframeClickMerger();
56930
57172
  const [loading, setLoading] = reactExports.useState(true);
56931
57173
  let t1;
56932
- if ($2[0] === Symbol.for("react.memo_cache_sentinel")) {
57174
+ if ($2[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
56933
57175
  t1 = {
56934
57176
  receive: true,
56935
57177
  emit: false
@@ -56959,7 +57201,7 @@ const IframeController = (t0) => {
56959
57201
  reactExports.useEffect(t2, t3);
56960
57202
  if (!editor2.applicationURL) {
56961
57203
  let t42;
56962
- if ($2[4] === Symbol.for("react.memo_cache_sentinel")) {
57204
+ if ($2[4] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
56963
57205
  t42 = /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "flex size-full items-center justify-center", children: /* @__PURE__ */ jsxRuntimeExports.jsx(Container, { className: "flex max-w-xl flex-col gap-4 p-6", children: /* @__PURE__ */ jsxRuntimeExports.jsx(NoApplicationURLView, {}) }) });
56964
57206
  $2[4] = t42;
56965
57207
  } else {
@@ -57038,7 +57280,7 @@ const AppContent = () => {
57038
57280
  const App = () => {
57039
57281
  const $2 = compilerRuntimeExports.c(1);
57040
57282
  let t0;
57041
- if ($2[0] === Symbol.for("react.memo_cache_sentinel")) {
57283
+ if ($2[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel")) {
57042
57284
  t0 = /* @__PURE__ */ jsxRuntimeExports.jsx(AppRouter, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(AppProvider, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(AppContent, {}) }) });
57043
57285
  $2[0] = t0;
57044
57286
  } else {