@donotdev/ui 0.0.10 → 0.0.11

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 (102) hide show
  1. package/dist/crud/components/EntityCardList.d.ts +16 -0
  2. package/dist/crud/components/EntityCardList.d.ts.map +1 -0
  3. package/dist/crud/components/EntityCardList.js +175 -0
  4. package/dist/crud/components/EntityDisplayRenderer.d.ts +13 -21
  5. package/dist/crud/components/EntityDisplayRenderer.d.ts.map +1 -1
  6. package/dist/crud/components/EntityDisplayRenderer.js +138 -23
  7. package/dist/crud/components/EntityFormRenderer.d.ts +18 -0
  8. package/dist/crud/components/EntityFormRenderer.d.ts.map +1 -0
  9. package/dist/crud/components/EntityFormRenderer.js +275 -0
  10. package/dist/crud/components/EntityList.d.ts +14 -0
  11. package/dist/crud/components/EntityList.d.ts.map +1 -0
  12. package/dist/crud/components/EntityList.js +201 -0
  13. package/dist/crud/components/index.d.ts +7 -5
  14. package/dist/crud/components/index.d.ts.map +1 -1
  15. package/dist/crud/components/index.js +6 -5
  16. package/dist/dndev.css +179 -0
  17. package/dist/index.js +4 -64
  18. package/dist/internal/layout/components/AutoMetaTags.d.ts.map +1 -1
  19. package/dist/internal/layout/components/AutoMetaTags.js +36 -6
  20. package/dist/internal/layout/components/NextJsAutoMetaTags.d.ts.map +1 -1
  21. package/dist/internal/layout/components/NextJsAutoMetaTags.js +38 -10
  22. package/dist/internal/layout/components/footer/FooterBranding.js +2 -2
  23. package/dist/styles/index.css +179 -0
  24. package/package.json +12 -12
  25. package/dist/crud/components/DisplayFieldRenderer.d.ts +0 -26
  26. package/dist/crud/components/DisplayFieldRenderer.d.ts.map +0 -1
  27. package/dist/crud/components/DisplayFieldRenderer.js +0 -107
  28. package/dist/crud/components/fields/display/AvatarFieldDisplay.d.ts +0 -23
  29. package/dist/crud/components/fields/display/AvatarFieldDisplay.d.ts.map +0 -1
  30. package/dist/crud/components/fields/display/AvatarFieldDisplay.js +0 -38
  31. package/dist/crud/components/fields/display/BadgeFieldDisplay.d.ts +0 -21
  32. package/dist/crud/components/fields/display/BadgeFieldDisplay.d.ts.map +0 -1
  33. package/dist/crud/components/fields/display/BadgeFieldDisplay.js +0 -31
  34. package/dist/crud/components/fields/display/ButtonFieldDisplay.d.ts +0 -29
  35. package/dist/crud/components/fields/display/ButtonFieldDisplay.d.ts.map +0 -1
  36. package/dist/crud/components/fields/display/ButtonFieldDisplay.js +0 -12
  37. package/dist/crud/components/fields/display/CheckboxFieldDisplay.d.ts +0 -21
  38. package/dist/crud/components/fields/display/CheckboxFieldDisplay.d.ts.map +0 -1
  39. package/dist/crud/components/fields/display/CheckboxFieldDisplay.js +0 -27
  40. package/dist/crud/components/fields/display/DateFieldDisplay.d.ts +0 -24
  41. package/dist/crud/components/fields/display/DateFieldDisplay.d.ts.map +0 -1
  42. package/dist/crud/components/fields/display/DateFieldDisplay.js +0 -41
  43. package/dist/crud/components/fields/display/DropdownDisplay.d.ts +0 -21
  44. package/dist/crud/components/fields/display/DropdownDisplay.d.ts.map +0 -1
  45. package/dist/crud/components/fields/display/DropdownDisplay.js +0 -25
  46. package/dist/crud/components/fields/display/FileFieldDisplay.d.ts +0 -21
  47. package/dist/crud/components/fields/display/FileFieldDisplay.d.ts.map +0 -1
  48. package/dist/crud/components/fields/display/FileFieldDisplay.js +0 -25
  49. package/dist/crud/components/fields/display/GeoPointFieldDisplay.d.ts +0 -25
  50. package/dist/crud/components/fields/display/GeoPointFieldDisplay.d.ts.map +0 -1
  51. package/dist/crud/components/fields/display/GeoPointFieldDisplay.js +0 -25
  52. package/dist/crud/components/fields/display/HiddenFieldDisplay.d.ts +0 -30
  53. package/dist/crud/components/fields/display/HiddenFieldDisplay.d.ts.map +0 -1
  54. package/dist/crud/components/fields/display/HiddenFieldDisplay.js +0 -12
  55. package/dist/crud/components/fields/display/ImageFieldDisplay.d.ts +0 -24
  56. package/dist/crud/components/fields/display/ImageFieldDisplay.d.ts.map +0 -1
  57. package/dist/crud/components/fields/display/ImageFieldDisplay.js +0 -38
  58. package/dist/crud/components/fields/display/LinkFieldDisplay.d.ts +0 -22
  59. package/dist/crud/components/fields/display/LinkFieldDisplay.d.ts.map +0 -1
  60. package/dist/crud/components/fields/display/LinkFieldDisplay.js +0 -48
  61. package/dist/crud/components/fields/display/MapFieldDisplay.d.ts +0 -25
  62. package/dist/crud/components/fields/display/MapFieldDisplay.d.ts.map +0 -1
  63. package/dist/crud/components/fields/display/MapFieldDisplay.js +0 -25
  64. package/dist/crud/components/fields/display/MultiDropdownDisplay.d.ts +0 -22
  65. package/dist/crud/components/fields/display/MultiDropdownDisplay.d.ts.map +0 -1
  66. package/dist/crud/components/fields/display/MultiDropdownDisplay.js +0 -25
  67. package/dist/crud/components/fields/display/MultiInputTextFieldDisplay.d.ts +0 -22
  68. package/dist/crud/components/fields/display/MultiInputTextFieldDisplay.d.ts.map +0 -1
  69. package/dist/crud/components/fields/display/MultiInputTextFieldDisplay.js +0 -25
  70. package/dist/crud/components/fields/display/NumberFieldDisplay.d.ts +0 -24
  71. package/dist/crud/components/fields/display/NumberFieldDisplay.d.ts.map +0 -1
  72. package/dist/crud/components/fields/display/NumberFieldDisplay.js +0 -28
  73. package/dist/crud/components/fields/display/PasswordFieldDisplay.d.ts +0 -24
  74. package/dist/crud/components/fields/display/PasswordFieldDisplay.d.ts.map +0 -1
  75. package/dist/crud/components/fields/display/PasswordFieldDisplay.js +0 -31
  76. package/dist/crud/components/fields/display/PhoneNumberDisplay.d.ts +0 -22
  77. package/dist/crud/components/fields/display/PhoneNumberDisplay.d.ts.map +0 -1
  78. package/dist/crud/components/fields/display/PhoneNumberDisplay.js +0 -25
  79. package/dist/crud/components/fields/display/RadioFieldDisplay.d.ts +0 -22
  80. package/dist/crud/components/fields/display/RadioFieldDisplay.d.ts.map +0 -1
  81. package/dist/crud/components/fields/display/RadioFieldDisplay.js +0 -25
  82. package/dist/crud/components/fields/display/RangeFieldDisplay.d.ts +0 -22
  83. package/dist/crud/components/fields/display/RangeFieldDisplay.d.ts.map +0 -1
  84. package/dist/crud/components/fields/display/RangeFieldDisplay.js +0 -25
  85. package/dist/crud/components/fields/display/ReferenceFieldDisplay.d.ts +0 -22
  86. package/dist/crud/components/fields/display/ReferenceFieldDisplay.d.ts.map +0 -1
  87. package/dist/crud/components/fields/display/ReferenceFieldDisplay.js +0 -26
  88. package/dist/crud/components/fields/display/RichTextDisplay.d.ts +0 -25
  89. package/dist/crud/components/fields/display/RichTextDisplay.d.ts.map +0 -1
  90. package/dist/crud/components/fields/display/RichTextDisplay.js +0 -104
  91. package/dist/crud/components/fields/display/TextAreaDisplay.d.ts +0 -22
  92. package/dist/crud/components/fields/display/TextAreaDisplay.d.ts.map +0 -1
  93. package/dist/crud/components/fields/display/TextAreaDisplay.js +0 -25
  94. package/dist/crud/components/fields/display/TextFieldDisplay.d.ts +0 -42
  95. package/dist/crud/components/fields/display/TextFieldDisplay.d.ts.map +0 -1
  96. package/dist/crud/components/fields/display/TextFieldDisplay.js +0 -97
  97. package/dist/crud/components/fields/display/TimestampFieldDisplay.d.ts +0 -22
  98. package/dist/crud/components/fields/display/TimestampFieldDisplay.d.ts.map +0 -1
  99. package/dist/crud/components/fields/display/TimestampFieldDisplay.js +0 -33
  100. package/dist/crud/components/fields/display/index.d.ts +0 -32
  101. package/dist/crud/components/fields/display/index.d.ts.map +0 -1
  102. package/dist/crud/components/fields/display/index.js +0 -32
package/dist/index.js CHANGED
@@ -1,65 +1,5 @@
1
- "use client";var Eo=Object.defineProperty;var Rn=(t,e,o)=>e in t?Eo(t,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[e]=o;var pe=(t,e)=>()=>(t&&(e=t(t=0)),e);var Bo=(t,e)=>{for(var o in e)Eo(t,o,{get:e[o],enumerable:!0})};var Ge=(t,e,o)=>Rn(t,typeof e!="symbol"?e+"":e,o);import*as He from"lucide-react";import{isValidElement as Ln}from"react";import{cn as vt}from"@donotdev/components";import{jsx as Se}from"react/jsx-runtime";function En(t){if(!t)return He.Palette;let e=t.replace(/['"]/g,"");return He[e]||He.Palette}var L,Bn,ne=pe(()=>{"use strict";L=({icon:t,fallback:e,className:o,ariaHidden:r=!1})=>{let n=t||e;if(!n)return null;let a="dndev-size-md";if(typeof n=="function"||typeof n=="object"&&n!==null&&"render"in n)return Se(n,{className:vt(a,o),style:{flexShrink:0},"aria-hidden":r});if(typeof n=="string"){if(!/^[a-zA-Z0-9_-]+$/.test(n))return Se("span",{className:vt(a,o),style:{display:"inline-flex",alignItems:"center",justifyContent:"center"},"aria-hidden":r,children:n});let l=En(n);return Se(l,{className:vt(a,o),style:{flexShrink:0},"aria-hidden":r})}return Ln(n)?Se("span",{className:o,style:{display:"inline-flex",alignItems:"center",justifyContent:"center"},"aria-hidden":r,children:n}):Se("span",{className:o,style:{display:"inline-flex",alignItems:"center",justifyContent:"center"},"aria-hidden":r,children:n})},Bn=L});import*as _n from"@donotdev/auth";import{DEGRADED_AUTH_API as $n}from"@donotdev/core";function Wn(t){return $n[t]}function k(t){return bt?bt(t):Wn(t)}var bt,lu,ke=pe(()=>{"use strict";bt=_n?.useAuth;lu=typeof bt=="function"});var Ct={};Bo(Ct,{default:()=>aa});import{Cookie as xt,Settings as Kn,Shield as Yn,BarChart3 as qn,Target as Zn}from"lucide-react";import{useState as Tt,useEffect as $e,useRef as Jn}from"react";import{Accordion as Qn,Button as we,BUTTON_VARIANT as We,Card as Uo,Switch as Xn,Text as De,cn as jn,Stack as J}from"@donotdev/components";import{handleError as ea,useConsent as ae,getCookieExamples as Ke,hasOptionalCookies as ta}from"@donotdev/core";import{CONSENT_CATEGORY as ie}from"@donotdev/core";import{useTranslation as oa}from"@donotdev/core";import{isClient as ra}from"@donotdev/core";import{Fragment as ia,jsx as P,jsxs as Q}from"react/jsx-runtime";function na({position:t="bottom",showBranding:e=!0,brandingText:o="Powered by DoNotDev Framework",className:r=""}){let n=ae("hasConsented"),a=ae("categories"),i=ae("acceptAll"),c=ae("declineAll"),l=ae("updateCategory"),p=ae("showBanner"),m=ae("showCookieBanner"),{t:s}=oa("cookies"),[g,d]=Tt(!1),[u,f]=Tt(!n||p),[y,v]=Tt(a),h=Jn(null);$e(()=>{p&&f(!0)},[p]);let S=Object.keys(a),w=[{id:ie.NECESSARY,icon:Yn,title:s("essentialCookies"),description:s("essentialDescription"),examples:Ke("necessary")||s("essentialExamples"),locked:!0},{id:ie.FUNCTIONAL,icon:xt,title:s("functionalCookies"),description:s("functionalDescription"),examples:Ke("functional")||s("functionalExamples"),legalNotice:s("functionalLegalNotice"),locked:!1},{id:ie.ANALYTICS,icon:qn,title:s("analyticsCookies"),description:s("analyticsDescription"),examples:Ke("analytics")||s("analyticsExamples"),locked:!1},{id:ie.MARKETING,icon:Zn,title:s("marketingCookies"),description:s("marketingDescription"),examples:Ke("marketing")||s("marketingExamples"),locked:!1}].filter(b=>S.includes(b.id)),U=ta();if($e(()=>{!n&&!U&&i()},[n,U,i]),$e(()=>{let b={...a};if(g){let E=b;Object.keys(E).forEach(B=>{B!==ie.NECESSARY&&E[B]===!1&&(E[B]=!0)})}v(b)},[a,g]),$e(()=>{if(!ra()||n||!u)return;let b=B=>{h.current&&!h.current.contains(B.target)&&f(!1)},E=setTimeout(()=>{document.addEventListener("mousedown",b)},100);return()=>{clearTimeout(E),document.removeEventListener("mousedown",b)}},[n,u]),n&&!p)return null;let V=()=>{try{Object.entries(y).forEach(([b,E])=>{if(b!==ie.NECESSARY&&E!==void 0){let B=b;Object.values(ie).includes(B)&&l(B,!!E)}}),d(!1),f(!1)}catch(b){ea(b,{userMessage:"Error saving preferences",context:{operation:"save_preferences"},severity:"warning",log:!0,reportToSentry:!1,showNotification:!1})}},re=()=>{i(),f(!1)},Y=()=>{c(),f(!1)},D=Q(J,{gap:"medium",children:[P(De,{as:"p",variant:"muted",level:"small",children:s("cookieBannerDescription")}),U&&P(Qn,{type:"single",collapsible:!0,value:g?"preferences":"",onValueChange:b=>d(b==="preferences"),items:[{value:"preferences",trigger:Q(J,{direction:"row",align:"center",gap:"tight",children:[P(Kn,{className:"dndev-size-md"}),s("customize")]}),content:P(J,{gap:"medium",children:w.map(b=>{let E=b.icon,B=y[b.id]??!1;return P(Uo,{content:Q(J,{direction:"row",align:"center",justify:"between",gap:"medium",children:[Q(J,{direction:"row",align:"start",gap:"tight",style:{flex:1},children:[P(E,{className:"dndev-size-md",style:{color:"var(--primary)",marginTop:"0.125rem"}}),Q(J,{gap:"tight",children:[P(De,{as:"span",level:"body",style:{fontWeight:600},children:b.title}),P(De,{as:"span",variant:"muted",level:"small",children:b.description}),b.examples&&P(De,{as:"span",variant:"muted",level:"small",style:{fontStyle:"italic"},children:b.examples})]})]}),b.locked?P(De,{as:"span",variant:"muted",level:"small",children:s("alwaysOn")}):P(Xn,{checked:B,onCheckedChange:Ce=>v(Fn=>({...Fn,[b.id]:Ce}))})]})},b.id)})})}]})]}),x=g?Q(J,{direction:"row",gap:"tight",style:{width:"100%"},children:[P(we,{onClick:V,variant:We.DEFAULT,style:{flex:1},children:s("savePreferences","Save Preferences")}),P(we,{onClick:()=>d(!1),variant:We.OUTLINE,style:{flex:1},children:s("form.cancel","Cancel")})]}):Q(J,{direction:"row",gap:"tight",style:{width:"100%"},children:[P(we,{onClick:re,variant:We.DEFAULT,style:{flex:1},children:s("acceptAll")}),U&&P(we,{onClick:Y,variant:We.OUTLINE,style:{flex:1},children:s("declineOptional")})]});return Q(ia,{children:[u&&P(Uo,{ref:h,className:jn("dndev-fixed dndev-z-modal",r),icon:xt,title:s("cookiePreferences"),content:D,footer:x,style:{[t==="top"?"top":"bottom"]:"var(--gap-md)",left:"var(--gap-md)",right:"var(--gap-md)",maxWidth:"100%",width:"calc(100% - var(--gap-md) * 2)"}}),!u&&!n&&P(we,{onClick:()=>f(!0),className:"dndev-fixed dndev-z-toast",style:{bottom:"var(--gap-md)",left:"var(--gap-md)"},icon:xt,title:s("cookiePreferences")})]})}var aa,St=pe(()=>{"use strict";aa=na});import{useMemo as ti}from"react";import{useNavigationStore as oi}from"@donotdev/core";import{USER_ROLES as ri}from"@donotdev/core";import{useLocation as ni}from"@donotdev/ui/routing/hooks";function _(){let t=ni(),e=k("user"),o=!!e,r=e?.role||ri.GUEST,n=oi(a=>!a||typeof a.getFilteredRoutes!="function"?[]:a.getFilteredRoutes({authenticated:o,role:r}));return ti(()=>Array.isArray(n)?n.map(a=>({...a,isActive:ai(a.path,t.pathname),hasChildren:!1,children:void 0})).sort((a,i)=>a.label.localeCompare(i.label)):[],[n,t.pathname])}function ai(t,e){return t==="/"?e==="/":e===t?!0:e.startsWith(t+"/")}var fe=pe(()=>{"use strict";ke()});import{useCallback as Qe,useMemo as qo}from"react";import{useNavigationStore as Ae}from"@donotdev/core";import{useNavigate as ii}from"@donotdev/ui/routing/hooks";var Zo,Nt=pe(()=>{"use strict";fe();Zo=()=>{let t=ii(),e=_()??[],o=Ae(d=>d.favorites),r=Ae(d=>d.recent),n=Ae(d=>d.toggleFavorite),a=Ae(d=>d.isFavorite),i=Ae(d=>d.addRecent),c=qo(()=>e.length?e.filter(d=>o.includes(d.path)):[],[o,e]),l=qo(()=>e.length?e.filter(u=>r.includes(u.path)).slice(0,5):[],[r,e]),p=Qe(d=>{n(d)},[n]),m=Qe(d=>a(d),[a]),s=Qe(d=>{i(d)},[i]),g=Qe(d=>{s(d),t(d)},[t,s]);return{navigationItems:e,favoriteItems:c,recentItems:l,toggleFavorite:p,isFavorite:m,navigateToItem:g}}});var Qo={};Bo(Qo,{default:()=>vi});import{Clock as si,Link as li,Star as ci}from"lucide-react";import{useCallback as Jo,useEffect as pi,useRef as di}from"react";import{Badge as mi,Command as ui,CommandDialog as gi}from"@donotdev/components";import{useOverlayStore as Pt,useTranslation as fi}from"@donotdev/core";import{jsx as A,jsxs as ye}from"react/jsx-runtime";var yi,hi,vi,Xo=pe(()=>{"use strict";Nt();ne();yi=()=>{let{t}=fi("dndev"),e=di(null),o=Pt(u=>u.isCommandDialogOpen),r=Pt(u=>u.closeCommandDialog),{navigationItems:n,favoriteItems:a,recentItems:i,toggleFavorite:c,isFavorite:l,navigateToItem:p}=Zo();pi(()=>{o&&requestAnimationFrame(()=>{e.current?.focus()})},[o]);let m=Jo(u=>{p(u),r()},[p,r]),s=Jo((u,f=!0)=>u.map(y=>({label:y.label,value:y.path,description:y.path!==y.label?y.path:void 0,icon:A(L,{icon:y.icon,fallback:li}),badge:y.badge?A(mi,{children:y.badge}):void 0,onSelect:()=>m(y.path),rightSlot:f?A("button",{type:"button",onClick:v=>{v.stopPropagation(),c(y.path)},className:"dndev-command-favorite-button","data-favorited":l(y.path),"aria-label":l(y.path)?t("globalGoTo.unfavorite","Remove from favorites"):t("globalGoTo.favorite","Add to favorites"),children:A(L,{icon:ci,className:"dndev-size-sm"})}):void 0})),[m,c,l,t]),g=[];if(a.length>0&&g.push({heading:t("globalGoTo.favorites","Favorites"),items:s(a,!1)}),i.length>0){let u=i.flatMap(f=>s([f],!0)).map(f=>({...f,icon:A(L,{icon:si,className:"dndev-size-sm"})}));u.length>0&&g.push({heading:t("globalGoTo.recent","Recent"),separator:a.length>0,items:u})}g.push({heading:t("globalGoTo.allPages","All Pages"),separator:a.length>0||i.length>0,items:s(n)});let d=n.length>0;return ye(gi,{open:o,onOpenChange:u=>u?null:r(),children:[A(ui,{placeholder:t("globalGoTo.placeholder","Search pages..."),emptyMessage:d?t("globalGoTo.noResults","No results found."):t("globalGoTo.empty","No pages available."),groups:g}),A("div",{className:"dndev-command-footer",children:ye("div",{className:"dndev-command-footer-shortcuts",children:[ye("div",{className:"dndev-command-footer-shortcut",children:[A("kbd",{className:"dndev-command-footer-key",children:"\u2318K"}),A("span",{children:t("globalGoTo.shortcutOpen","Open")})]}),ye("div",{className:"dndev-command-footer-shortcut",children:[A("kbd",{className:"dndev-command-footer-key",children:"\u2191"}),A("kbd",{className:"dndev-command-footer-key",children:"\u2193"}),A("span",{children:t("globalGoTo.shortcutNavigate","Navigate")})]}),ye("div",{className:"dndev-command-footer-shortcut",children:[A("kbd",{className:"dndev-command-footer-key",children:"\u21B5"}),A("span",{children:t("globalGoTo.shortcutSelect","Select")})]}),ye("div",{className:"dndev-command-footer-shortcut",children:[A("kbd",{className:"dndev-command-footer-key",children:"Esc"}),A("span",{children:t("globalGoTo.shortcutClose","Close")})]})]})})]})},hi=()=>Pt(e=>e.isCommandDialogOpen)?A(yi,{}):null,vi=hi});import{User as Es}from"lucide-react";import{Suspense as Vt,lazy as fr,useState as Bs}from"react";import{Button as Ms,BUTTON_VARIANT as zs,DropdownMenu as Os,Dialog as Us,DISPLAY as Vs}from"@donotdev/components";import{useTranslation as Gs}from"@donotdev/core";import{useAuthConfig as Hs}from"@donotdev/core";import{getEnabledAuthPartners as _s}from"@donotdev/core";import{User as ps,LogOut as ds,Settings as Fe,UserCheck as ms,Trash2 as us}from"lucide-react";import*as gs from"lucide-react";import ot,{useMemo as fs,lazy as mr,Suspense as dr}from"react";import{Avatar as ys,Button as hs,BUTTON_VARIANT as vs,DropdownMenu as bs,Text as xs,DISPLAY as Ts}from"@donotdev/components";import{useTranslation as Cs}from"@donotdev/core";import{getEnabledAuthPartners as Ss,useAuthConfig as ks,isClient as ws}from"@donotdev/core";import{useBreakpoint as Ds}from"@donotdev/core";import{useNavigate as Ns}from"@donotdev/ui/routing/hooks";ne();import{Link as Mo}from"lucide-react";import"react";import"@donotdev/components";import{useConsent as Mn}from"@donotdev/core";import{useNavigate as zn}from"@donotdev/ui/routing/hooks";import{Fragment as On,jsx as de,jsxs as zo}from"react/jsx-runtime";var C=({path:t,replace:e,prefetch:o=!0,children:r,icon:n,label:a,onClick:i,className:c,"aria-label":l,"aria-describedby":p,target:m,rel:s,...g})=>{let d=zn();if(t==="#cookie-settings"){let h=Mn("showCookieBanner");return zo("a",{href:"#cookie-settings",onClick:w=>{w.preventDefault(),w.stopPropagation();try{h()}catch{}i&&i(w)},className:c,style:{display:n&&a?"flex":void 0,alignItems:n&&a?"center":void 0,gap:n&&a?"var(--gap-sm)":void 0,...g.style},"aria-label":l||a||"Cookie Settings","aria-describedby":p,...g,children:[n&&de(L,{icon:n,fallback:Mo}),a&&de("span",{children:a}),r]})}let u=t.startsWith("http://")||t.startsWith("https://")||t.startsWith("mailto:")||t.startsWith("tel:"),f=h=>{if(u){i&&i(h);return}h.preventDefault(),i&&i(h);let S=t.startsWith("/")?t:`/${t}`;d(S,{replace:e})},y={"aria-label":l||a,"aria-describedby":p},v=zo(On,{children:[n&&de(L,{icon:n,fallback:Mo}),a&&de("span",{children:a}),r]});return u?de("a",{href:t,onClick:f,target:m||"_blank",rel:s||"noopener noreferrer",className:c,style:{display:n&&a?"flex":void 0,alignItems:n&&a?"center":void 0,gap:n&&a?"var(--gap-sm)":void 0},...y,...g,children:v}):de("a",{href:t,onClick:f,className:c,style:{display:n&&a?"flex":void 0,alignItems:n&&a?"center":void 0,gap:n&&a?"var(--gap-sm)":void 0},...y,...g,children:v})};import{useEffect as Vo,useState as sa,lazy as la,Suspense as ca}from"react";import{Stack as Go}from"@donotdev/components";import{FEATURE_STATUS as kt,USER_ROLES as Ye,SUBSCRIPTION_TIERS as wt}from"@donotdev/core";import{useRedirectGuard as pa,useNavigate as da}from"@donotdev/ui/routing/hooks";import{RefreshCw as Oo}from"lucide-react";import"react";import{cn as Un}from"@donotdev/components";import{jsx as me}from"react/jsx-runtime";var Vn=({variant:t="fullPage",className:e})=>t==="inline"?me("div",{className:e,style:{display:"flex",alignItems:"center",justifyContent:"center"},children:me(Oo,{className:"dndev-size-md",style:{color:"var(--primary)",animation:"spin 1s linear infinite"}})}):me("div",{className:Un("dndev-loading-overlay",e),style:{position:"fixed",inset:0,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"var(--background)",backdropFilter:"blur(4px)",zIndex:50},role:"status","aria-busy":"true","aria-label":"Loading",children:me(Oo,{className:"dndev-size-touch",style:{color:"var(--primary)",animation:"spin 1s linear infinite"}})}),Gn=({variant:t="fullPage",className:e,isLoading:o})=>o===!1?null:me(Vn,{variant:t,className:e}),Hn=t=>me(Gn,{...t}),_e=Hn;ke();import{Fragment as Ho,jsx as F,jsxs as _o}from"react/jsx-runtime";var ma=la(()=>Promise.resolve().then(()=>(St(),Ct)));function ua({auth:t,children:e,fallback:o=_e}){let r=da(),n=k("user"),a=k("can"),i=k("status"),[c,l]=sa(!1),{shouldRedirect:p,redirectTo:m,isChecking:s}=pa({auth:t});return Vo(()=>{let g=setTimeout(()=>{i===kt.INITIALIZING&&l(!0)},5e3);return()=>clearTimeout(g)},[i]),Vo(()=>{p&&m&&r(m,{replace:!0})},[p,m,r]),t===!1?F(Ho,{children:e}):p||s?F(_e,{}):i===kt.INITIALIZING&&c?F(Go,{align:"center",justify:"center",style:{padding:"var(--gap-md)",minHeight:"100vh"},children:_o("div",{className:"dndev-w-full",style:{maxWidth:"28rem",textAlign:"center"},children:[F("h2",{style:{marginBottom:"var(--gap-md)"},children:"Loading is taking longer than usual"}),F("p",{style:{marginBottom:"var(--gap-md)",color:"var(--muted-foreground)"},children:"This might be due to a slow connection. Please wait or try refreshing the page."}),F("button",{onClick:()=>window.location.reload(),style:{padding:"var(--gap-sm) var(--gap-md)",backgroundColor:"var(--primary)",color:"var(--primary-foreground)",border:"none",borderRadius:"var(--radius)",cursor:"pointer"},children:"Refresh Page"})]})}):i===kt.INITIALIZING?F(o,{}):t&&typeof t=="object"&&t.required&&!n&&a&&!a.navigate(t)?F(Go,{align:"center",justify:"center",style:{padding:"var(--gap-md)",minHeight:"100vh"},children:_o("div",{className:"dndev-w-full",style:{maxWidth:"28rem"},children:[F("h2",{style:{marginBottom:"var(--gap-md)"},children:"Authentication Required"}),F("p",{style:{marginBottom:"var(--gap-md)"},children:"This page requires authentication. Please accept functional cookies to continue."}),F(ca,{fallback:F("div",{children:"Loading consent..."}),children:F(ma,{})})]})}):F(Ho,{children:e})}function ga(t){return k("can")?.navigate(t)??!1}var wu=ga;function Du(){return k("user")?.role||Ye.GUEST}function Nu(t){return k("user")?.role===t}function Pu(){let t=k("user"),e=k("userSubscription"),o=k("loading");return{authenticated:!!t,role:t?.role,tier:e?.tier||"free",loading:o,userId:t?.id}}function Au(t,e){return r=>F(ua,{auth:e,children:F(t,{...r})})}var Iu={public:()=>!1,required:()=>({required:!0}),user:()=>({required:!0,role:Ye.USER}),admin:()=>({required:!0,role:Ye.ADMIN}),tier:t=>({required:!0,tier:t}),pro:()=>({required:!0,tier:wt.PRO}),premium:()=>({required:!0,tier:wt.PREMIUM}),adminPro:()=>({required:!0,role:Ye.ADMIN,tier:wt.PRO}),custom:t=>({required:!0,validate:t})};import{ArrowLeft as Ea,Lock as Ba}from"lucide-react";import{Suspense as Ma,lazy as za}from"react";import{Card as Oa,Button as Ua,Separator as Va,Stack as ge,cn as Ga}from"@donotdev/components";import{useTranslation as Ha}from"@donotdev/core";import"@donotdev/core";import{useLocation as _a,useBack as $a}from"@donotdev/ui/routing/hooks";import{Suspense as Ra}from"react";import{cn as La}from"@donotdev/components";import{Component as fa}from"react";import{handleError as ya}from"@donotdev/core";var Dt=class extends fa{constructor(o){super(o);Ge(this,"resetError",()=>{this.setState({hasError:!1,error:null})});this.state={hasError:!1,error:null}}static getDerivedStateFromError(o){return{hasError:!0,error:o}}componentDidCatch(o,r){ya(o,{userMessage:`A ${this.props.level||"component"} error occurred`,context:{errorInfo:r,component:"DnDevErrorBoundary",level:this.props.level||"component"},showNotification:!1})}render(){return this.state.hasError?this.props.fallback({error:this.state.error,resetError:this.resetError,componentStack:null,eventId:null}):this.props.children}},$o=Dt;import{AlertTriangle as ha,Home as va,ArrowLeft as ba,RotateCw as xa,Copy as Ta,Check as Ca}from"lucide-react";import{useEffect as Sa,useState as ka}from"react";import{Button as qe,BUTTON_VARIANT as Ze,Card as Wo,CARD_VARIANT as Ko,Alert as wa,ALERT_VARIANT as Da,Stack as ue}from"@donotdev/components";import{handleError as Na,useTranslation as Pa}from"@donotdev/core";import{useLocation as Aa,useBack as Ia}from"@donotdev/ui/routing/hooks";import{jsx as R,jsxs as se}from"react/jsx-runtime";var Fa=({error:t,resetError:e,componentStack:o,eventId:r})=>{let{t:n}=Pa("dndev"),[a,i]=ka(!1),c=Ia(),p=Aa()?.pathname||(typeof window<"u"?window.location.pathname:"/"),m=t instanceof Error?t.message:"Unknown error",s=t instanceof Error?t.stack:void 0,g=!1;Sa(()=>{try{Na(t,{userMessage:"Page encountered an error",context:{component:"RouteErrorFallback",location:p}})}catch{}},[t,p]);let d=async()=>{if(!s)return;let y=[`Error: ${m}`,`Timestamp: ${new Date().toISOString()}`,`User Agent: ${navigator.userAgent}`,r?`Event ID: ${r}`:null,`Path: ${p}`,"","Stack Trace:",s,o?`
1
+ "use client";var Oo=Object.defineProperty;var Nr=(e,t,o)=>t in e?Oo(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o;var Ae=(e,t)=>()=>(e&&(t=e(e=0)),t);var zo=(e,t)=>{for(var o in t)Oo(e,o,{get:t[o],enumerable:!0})};var at=(e,t,o)=>Nr(e,typeof t!="symbol"?t+"":t,o);import*as it from"lucide-react";import{isValidElement as Ar}from"react";import{cn as Vt}from"@donotdev/components";import{jsx as He}from"react/jsx-runtime";function Pr(e){if(!e)return it.Palette;let t=e.replace(/['"]/g,"");return it[t]||it.Palette}var W,Lr,be=Ae(()=>{"use strict";W=({icon:e,fallback:t,className:o,ariaHidden:n=!1})=>{let r=e||t;if(!r)return null;let a="dndev-size-md";if(typeof r=="function"||typeof r=="object"&&r!==null&&"render"in r)return He(r,{className:Vt(a,o),style:{flexShrink:0},"aria-hidden":n});if(typeof r=="string"){if(!/^[a-zA-Z0-9_-]+$/.test(r))return He("span",{className:Vt(a,o),style:{display:"inline-flex",alignItems:"center",justifyContent:"center"},"aria-hidden":n,children:r});let l=Pr(r);return He(l,{className:Vt(a,o),style:{flexShrink:0},"aria-hidden":n})}return Ar(r)?He("span",{className:o,style:{display:"inline-flex",alignItems:"center",justifyContent:"center"},"aria-hidden":n,children:r}):He("span",{className:o,style:{display:"inline-flex",alignItems:"center",justifyContent:"center"},"aria-hidden":n,children:r})},Lr=W});import*as zr from"@donotdev/auth";import{DEGRADED_AUTH_API as Vr}from"@donotdev/core";function Ur(e){return Vr[e]}function R(e){return Ut?Ut(e):Ur(e)}var Ut,Ip,_e=Ae(()=>{"use strict";Ut=zr?.useAuth;Ip=typeof Ut=="function"});var _t={};zo(_t,{default:()=>ea});import{Cookie as Gt,Settings as Gr,Shield as Hr,BarChart3 as _r,Target as $r}from"lucide-react";import{useState as Ht,useEffect as lt,useRef as Wr}from"react";import{Accordion as Kr,Button as $e,BUTTON_VARIANT as ct,Card as Ho,Switch as Yr,Text as We,cn as qr,Stack as pe}from"@donotdev/components";import{handleError as jr,useConsent as Se,getCookieExamples as dt,hasOptionalCookies as Zr}from"@donotdev/core";import{CONSENT_CATEGORY as Ce}from"@donotdev/core";import{useTranslation as Jr}from"@donotdev/core";import{isClient as Qr}from"@donotdev/core";import{Fragment as ta,jsx as z,jsxs as me}from"react/jsx-runtime";function Xr({position:e="bottom",showBranding:t=!0,brandingText:o="Powered by DoNotDev Framework",className:n=""}){let r=Se("hasConsented"),a=Se("categories"),i=Se("acceptAll"),c=Se("declineAll"),l=Se("updateCategory"),d=Se("showBanner"),u=Se("showCookieBanner"),{t:s}=Jr("cookies"),[g,p]=Ht(!1),[m,f]=Ht(!r||d),[h,C]=Ht(a),v=Wr(null);lt(()=>{d&&f(!0)},[d]);let k=Object.keys(a),x=[{id:Ce.NECESSARY,icon:Hr,title:s("essentialCookies"),description:s("essentialDescription"),examples:dt("necessary")||s("essentialExamples"),locked:!0},{id:Ce.FUNCTIONAL,icon:Gt,title:s("functionalCookies"),description:s("functionalDescription"),examples:dt("functional")||s("functionalExamples"),legalNotice:s("functionalLegalNotice"),locked:!1},{id:Ce.ANALYTICS,icon:_r,title:s("analyticsCookies"),description:s("analyticsDescription"),examples:dt("analytics")||s("analyticsExamples"),locked:!1},{id:Ce.MARKETING,icon:$r,title:s("marketingCookies"),description:s("marketingDescription"),examples:dt("marketing")||s("marketingExamples"),locked:!1}].filter(S=>k.includes(S.id)),I=Zr();if(lt(()=>{!r&&!I&&i()},[r,I,i]),lt(()=>{let S={...a};if(g){let y=S;Object.keys(y).forEach(N=>{N!==Ce.NECESSARY&&y[N]===!1&&(y[N]=!0)})}C(S)},[a,g]),lt(()=>{if(!Qr()||r||!m)return;let S=N=>{v.current&&!v.current.contains(N.target)&&f(!1)},y=setTimeout(()=>{document.addEventListener("mousedown",S)},100);return()=>{clearTimeout(y),document.removeEventListener("mousedown",S)}},[r,m]),r&&!d)return null;let T=()=>{try{Object.entries(h).forEach(([S,y])=>{if(S!==Ce.NECESSARY&&y!==void 0){let N=S;Object.values(Ce).includes(N)&&l(N,!!y)}}),p(!1),f(!1)}catch(S){jr(S,{userMessage:"Error saving preferences",context:{operation:"save_preferences"},severity:"warning",log:!0,reportToSentry:!1,showNotification:!1})}},D=()=>{i(),f(!1)},L=()=>{c(),f(!1)},w=me(pe,{gap:"medium",children:[z(We,{as:"p",variant:"muted",level:"small",children:s("cookieBannerDescription")}),I&&z(Kr,{type:"single",collapsible:!0,value:g?"preferences":"",onValueChange:S=>p(S==="preferences"),items:[{value:"preferences",trigger:me(pe,{direction:"row",align:"center",gap:"tight",children:[z(Gr,{className:"dndev-size-md"}),s("customize")]}),content:z(pe,{gap:"medium",children:x.map(S=>{let y=S.icon,N=h[S.id]??!1;return z(Ho,{content:me(pe,{direction:"row",align:"center",justify:"between",gap:"medium",children:[me(pe,{direction:"row",align:"start",gap:"tight",style:{flex:1},children:[z(y,{className:"dndev-size-md",style:{color:"var(--primary)",marginTop:"0.125rem"}}),me(pe,{gap:"tight",children:[z(We,{as:"span",level:"body",style:{fontWeight:600},children:S.title}),z(We,{as:"span",variant:"muted",level:"small",children:S.description}),S.examples&&z(We,{as:"span",variant:"muted",level:"small",style:{fontStyle:"italic"},children:S.examples})]})]}),S.locked?z(We,{as:"span",variant:"muted",level:"small",children:s("alwaysOn")}):z(Yr,{checked:N,onCheckedChange:F=>C(B=>({...B,[S.id]:F}))})]})},S.id)})})}]})]}),b=g?me(pe,{direction:"row",gap:"tight",style:{width:"100%"},children:[z($e,{onClick:T,variant:ct.DEFAULT,style:{flex:1},children:s("savePreferences","Save Preferences")}),z($e,{onClick:()=>p(!1),variant:ct.OUTLINE,style:{flex:1},children:s("form.cancel","Cancel")})]}):me(pe,{direction:"row",gap:"tight",style:{width:"100%"},children:[z($e,{onClick:D,variant:ct.DEFAULT,style:{flex:1},children:s("acceptAll")}),I&&z($e,{onClick:L,variant:ct.OUTLINE,style:{flex:1},children:s("declineOptional")})]});return me(ta,{children:[m&&z(Ho,{ref:v,className:qr("dndev-fixed dndev-z-modal",n),icon:Gt,title:s("cookiePreferences"),content:w,footer:b,style:{[e==="top"?"top":"bottom"]:"var(--gap-md)",left:"var(--gap-md)",right:"var(--gap-md)",maxWidth:"100%",width:"calc(100% - var(--gap-md) * 2)"}}),!m&&!r&&z($e,{onClick:()=>f(!0),className:"dndev-fixed dndev-z-toast",style:{bottom:"var(--gap-md)",left:"var(--gap-md)"},icon:Gt,title:s("cookiePreferences")})]})}var ea,$t=Ae(()=>{"use strict";ea=Xr});import{useMemo as Za}from"react";import{useNavigationStore as Ja}from"@donotdev/core";import{USER_ROLES as Qa}from"@donotdev/core";import{useLocation as Xa}from"@donotdev/ui/routing/hooks";function te(){let e=Xa(),t=R("user"),o=!!t,n=t?.role||Qa.GUEST,r=Ja(a=>!a||typeof a.getFilteredRoutes!="function"?[]:a.getFilteredRoutes({authenticated:o,role:n}));return Za(()=>Array.isArray(r)?r.map(a=>({...a,isActive:ei(a.path,e.pathname),hasChildren:!1,children:void 0})).sort((a,i)=>a.label.localeCompare(i.label)):[],[r,e.pathname])}function ei(e,t){return e==="/"?t==="/":t===e?!0:t.startsWith(e+"/")}var Re=Ae(()=>{"use strict";_e()});import{useCallback as ft,useMemo as Jo}from"react";import{useNavigationStore as qe}from"@donotdev/core";import{useNavigate as ti}from"@donotdev/ui/routing/hooks";var Qo,qt=Ae(()=>{"use strict";Re();Qo=()=>{let e=ti(),t=te()??[],o=qe(p=>p.favorites),n=qe(p=>p.recent),r=qe(p=>p.toggleFavorite),a=qe(p=>p.isFavorite),i=qe(p=>p.addRecent),c=Jo(()=>t.length?t.filter(p=>o.includes(p.path)):[],[o,t]),l=Jo(()=>t.length?t.filter(m=>n.includes(m.path)).slice(0,5):[],[n,t]),d=ft(p=>{r(p)},[r]),u=ft(p=>a(p),[a]),s=ft(p=>{i(p)},[i]),g=ft(p=>{s(p),e(p)},[e,s]);return{navigationItems:t,favoriteItems:c,recentItems:l,toggleFavorite:d,isFavorite:u,navigateToItem:g}}});var en={};zo(en,{default:()=>mi});import{Clock as oi,Link as ni,Star as ri}from"lucide-react";import{useCallback as Xo,useEffect as ai,useRef as ii}from"react";import{Badge as si,Command as li,CommandDialog as ci}from"@donotdev/components";import{useOverlayStore as jt,useTranslation as di}from"@donotdev/core";import{jsx as V,jsxs as Fe}from"react/jsx-runtime";var ui,pi,mi,tn=Ae(()=>{"use strict";qt();be();ui=()=>{let{t:e}=di("dndev"),t=ii(null),o=jt(m=>m.isCommandDialogOpen),n=jt(m=>m.closeCommandDialog),{navigationItems:r,favoriteItems:a,recentItems:i,toggleFavorite:c,isFavorite:l,navigateToItem:d}=Qo();ai(()=>{o&&requestAnimationFrame(()=>{t.current?.focus()})},[o]);let u=Xo(m=>{d(m),n()},[d,n]),s=Xo((m,f=!0)=>m.map(h=>({label:h.label,value:h.path,description:h.path!==h.label?h.path:void 0,icon:V(W,{icon:h.icon,fallback:ni}),badge:h.badge?V(si,{children:h.badge}):void 0,onSelect:()=>u(h.path),rightSlot:f?V("button",{type:"button",onClick:C=>{C.stopPropagation(),c(h.path)},className:"dndev-command-favorite-button","data-favorited":l(h.path),"aria-label":l(h.path)?e("globalGoTo.unfavorite","Remove from favorites"):e("globalGoTo.favorite","Add to favorites"),children:V(W,{icon:ri,className:"dndev-size-sm"})}):void 0})),[u,c,l,e]),g=[];if(a.length>0&&g.push({heading:e("globalGoTo.favorites","Favorites"),items:s(a,!1)}),i.length>0){let m=i.flatMap(f=>s([f],!0)).map(f=>({...f,icon:V(W,{icon:oi,className:"dndev-size-sm"})}));m.length>0&&g.push({heading:e("globalGoTo.recent","Recent"),separator:a.length>0,items:m})}g.push({heading:e("globalGoTo.allPages","All Pages"),separator:a.length>0||i.length>0,items:s(r)});let p=r.length>0;return Fe(ci,{open:o,onOpenChange:m=>m?null:n(),children:[V(li,{placeholder:e("globalGoTo.placeholder","Search pages..."),emptyMessage:p?e("globalGoTo.noResults","No results found."):e("globalGoTo.empty","No pages available."),groups:g}),V("div",{className:"dndev-command-footer",children:Fe("div",{className:"dndev-command-footer-shortcuts",children:[Fe("div",{className:"dndev-command-footer-shortcut",children:[V("kbd",{className:"dndev-command-footer-key",children:"\u2318K"}),V("span",{children:e("globalGoTo.shortcutOpen","Open")})]}),Fe("div",{className:"dndev-command-footer-shortcut",children:[V("kbd",{className:"dndev-command-footer-key",children:"\u2191"}),V("kbd",{className:"dndev-command-footer-key",children:"\u2193"}),V("span",{children:e("globalGoTo.shortcutNavigate","Navigate")})]}),Fe("div",{className:"dndev-command-footer-shortcut",children:[V("kbd",{className:"dndev-command-footer-key",children:"\u21B5"}),V("span",{children:e("globalGoTo.shortcutSelect","Select")})]}),Fe("div",{className:"dndev-command-footer-shortcut",children:[V("kbd",{className:"dndev-command-footer-key",children:"Esc"}),V("span",{children:e("globalGoTo.shortcutClose","Close")})]})]})})]})},pi=()=>jt(t=>t.isCommandDialogOpen)?V(ui,{}):null,mi=pi});import{User as Ps}from"lucide-react";import{Suspense as so,lazy as bn,useState as Ls}from"react";import{Button as Es,BUTTON_VARIANT as Ds,DropdownMenu as Rs,Dialog as Fs,DISPLAY as Bs}from"@donotdev/components";import{useTranslation as Ms}from"@donotdev/core";import{useAuthConfig as Os}from"@donotdev/core";import{getEnabledAuthPartners as zs}from"@donotdev/core";import{User as as,LogOut as is,Settings as Ze,UserCheck as ss,Trash2 as ls}from"lucide-react";import*as cs from"lucide-react";import St,{useMemo as ds,lazy as hn,Suspense as fn}from"react";import{Avatar as us,Button as ps,BUTTON_VARIANT as ms,DropdownMenu as gs,Text as fs,DISPLAY as hs}from"@donotdev/components";import{useTranslation as vs}from"@donotdev/core";import{getEnabledAuthPartners as ys,useAuthConfig as bs,isClient as Ss}from"@donotdev/core";import{useBreakpoint as Cs}from"@donotdev/core";import{useNavigate as xs}from"@donotdev/ui/routing/hooks";be();import{Link as Vo}from"lucide-react";import"react";import"@donotdev/components";import{useConsent as Er}from"@donotdev/core";import{useNavigate as Dr}from"@donotdev/ui/routing/hooks";import{Fragment as Rr,jsx as Pe,jsxs as Uo}from"react/jsx-runtime";var A=({path:e,replace:t,prefetch:o=!0,children:n,icon:r,label:a,onClick:i,className:c,"aria-label":l,"aria-describedby":d,target:u,rel:s,...g})=>{let p=Dr();if(e==="#cookie-settings"){let v=Er("showCookieBanner");return Uo("a",{href:"#cookie-settings",onClick:x=>{x.preventDefault(),x.stopPropagation();try{v()}catch{}i&&i(x)},className:c,style:{display:r&&a?"flex":void 0,alignItems:r&&a?"center":void 0,gap:r&&a?"var(--gap-sm)":void 0,...g.style},"aria-label":l||a||"Cookie Settings","aria-describedby":d,...g,children:[r&&Pe(W,{icon:r,fallback:Vo}),a&&Pe("span",{children:a}),n]})}let m=e.startsWith("http://")||e.startsWith("https://")||e.startsWith("mailto:")||e.startsWith("tel:"),f=v=>{if(m){i&&i(v);return}v.preventDefault(),i&&i(v);let k=e.startsWith("/")?e:`/${e}`;p(k,{replace:t})},h={"aria-label":l||a,"aria-describedby":d},C=Uo(Rr,{children:[r&&Pe(W,{icon:r,fallback:Vo}),a&&Pe("span",{children:a}),n]});return m?Pe("a",{href:e,onClick:f,target:u||"_blank",rel:s||"noopener noreferrer",className:c,style:{display:r&&a?"flex":void 0,alignItems:r&&a?"center":void 0,gap:r&&a?"var(--gap-sm)":void 0},...h,...g,children:C}):Pe("a",{href:e,onClick:f,className:c,style:{display:r&&a?"flex":void 0,alignItems:r&&a?"center":void 0,gap:r&&a?"var(--gap-sm)":void 0},...h,...g,children:C})};import{useEffect as _o,useState as oa,lazy as na,Suspense as ra}from"react";import{Stack as $o}from"@donotdev/components";import{FEATURE_STATUS as Wt,USER_ROLES as ut,SUBSCRIPTION_TIERS as Kt}from"@donotdev/core";import{useRedirectGuard as aa,useNavigate as ia}from"@donotdev/ui/routing/hooks";import{RefreshCw as Go}from"lucide-react";import"react";import{cn as Fr}from"@donotdev/components";import{jsx as Le}from"react/jsx-runtime";var Br=({variant:e="fullPage",className:t})=>e==="inline"?Le("div",{className:t,style:{display:"flex",alignItems:"center",justifyContent:"center"},children:Le(Go,{className:"dndev-size-md",style:{color:"var(--primary)",animation:"spin 1s linear infinite"}})}):Le("div",{className:Fr("dndev-loading-overlay",t),style:{position:"fixed",inset:0,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"var(--background)",backdropFilter:"blur(4px)",zIndex:50},role:"status","aria-busy":"true","aria-label":"Loading",children:Le(Go,{className:"dndev-size-touch",style:{color:"var(--primary)",animation:"spin 1s linear infinite"}})}),Mr=({variant:e="fullPage",className:t,isLoading:o})=>o===!1?null:Le(Br,{variant:e,className:t}),Or=e=>Le(Mr,{...e}),st=Or;_e();import{Fragment as Wo,jsx as H,jsxs as Ko}from"react/jsx-runtime";var sa=na(()=>Promise.resolve().then(()=>($t(),_t)));function la({auth:e,children:t,fallback:o=st}){let n=ia(),r=R("user"),a=R("can"),i=R("status"),[c,l]=oa(!1),{shouldRedirect:d,redirectTo:u,isChecking:s}=aa({auth:e});return _o(()=>{let g=setTimeout(()=>{i===Wt.INITIALIZING&&l(!0)},5e3);return()=>clearTimeout(g)},[i]),_o(()=>{d&&u&&n(u,{replace:!0})},[d,u,n]),e===!1?H(Wo,{children:t}):d||s?H(st,{}):i===Wt.INITIALIZING&&c?H($o,{align:"center",justify:"center",style:{padding:"var(--gap-md)",minHeight:"100vh"},children:Ko("div",{className:"dndev-w-full",style:{maxWidth:"28rem",textAlign:"center"},children:[H("h2",{style:{marginBottom:"var(--gap-md)"},children:"Loading is taking longer than usual"}),H("p",{style:{marginBottom:"var(--gap-md)",color:"var(--muted-foreground)"},children:"This might be due to a slow connection. Please wait or try refreshing the page."}),H("button",{onClick:()=>window.location.reload(),style:{padding:"var(--gap-sm) var(--gap-md)",backgroundColor:"var(--primary)",color:"var(--primary-foreground)",border:"none",borderRadius:"var(--radius)",cursor:"pointer"},children:"Refresh Page"})]})}):i===Wt.INITIALIZING?H(o,{}):e&&typeof e=="object"&&e.required&&!r&&a&&!a.navigate(e)?H($o,{align:"center",justify:"center",style:{padding:"var(--gap-md)",minHeight:"100vh"},children:Ko("div",{className:"dndev-w-full",style:{maxWidth:"28rem"},children:[H("h2",{style:{marginBottom:"var(--gap-md)"},children:"Authentication Required"}),H("p",{style:{marginBottom:"var(--gap-md)"},children:"This page requires authentication. Please accept functional cookies to continue."}),H(ra,{fallback:H("div",{children:"Loading consent..."}),children:H(sa,{})})]})}):H(Wo,{children:t})}function ca(e){return R("can")?.navigate(e)??!1}var _p=ca;function $p(){return R("user")?.role||ut.GUEST}function Wp(e){return R("user")?.role===e}function Kp(){let e=R("user"),t=R("userSubscription"),o=R("loading");return{authenticated:!!e,role:e?.role,tier:t?.tier||"free",loading:o,userId:e?.id}}function Yp(e,t){return n=>H(la,{auth:t,children:H(e,{...n})})}var qp={public:()=>!1,required:()=>({required:!0}),user:()=>({required:!0,role:ut.USER}),admin:()=>({required:!0,role:ut.ADMIN}),tier:e=>({required:!0,tier:e}),pro:()=>({required:!0,tier:Kt.PRO}),premium:()=>({required:!0,tier:Kt.PREMIUM}),adminPro:()=>({required:!0,role:ut.ADMIN,tier:Kt.PRO}),custom:e=>({required:!0,validate:e})};import{ArrowLeft as Pa,Lock as La}from"lucide-react";import{Suspense as Ea,lazy as Da}from"react";import{Card as Ra,Button as Fa,Separator as Ba,Stack as De,cn as Ma}from"@donotdev/components";import{useTranslation as Oa}from"@donotdev/core";import"@donotdev/core";import{useLocation as za,useBack as Va}from"@donotdev/ui/routing/hooks";import{Suspense as Na}from"react";import{cn as Aa}from"@donotdev/components";import{Component as da}from"react";import{handleError as ua}from"@donotdev/core";var Yt=class extends da{constructor(o){super(o);at(this,"resetError",()=>{this.setState({hasError:!1,error:null})});this.state={hasError:!1,error:null}}static getDerivedStateFromError(o){return{hasError:!0,error:o}}componentDidCatch(o,n){ua(o,{userMessage:`A ${this.props.level||"component"} error occurred`,context:{errorInfo:n,component:"DnDevErrorBoundary",level:this.props.level||"component"},showNotification:!1})}render(){return this.state.hasError?this.props.fallback({error:this.state.error,resetError:this.resetError,componentStack:null,eventId:null}):this.props.children}},Yo=Yt;import{AlertTriangle as pa,Home as ma,ArrowLeft as ga,RotateCw as fa,Copy as ha,Check as va}from"lucide-react";import{useEffect as ya,useState as ba}from"react";import{Button as pt,BUTTON_VARIANT as mt,Card as qo,CARD_VARIANT as jo,Alert as Sa,ALERT_VARIANT as Ca,Stack as Ee}from"@donotdev/components";import{handleError as xa,useTranslation as Ta}from"@donotdev/core";import{useLocation as ka,useBack as wa}from"@donotdev/ui/routing/hooks";import{jsx as _,jsxs as xe}from"react/jsx-runtime";var Ia=({error:e,resetError:t,componentStack:o,eventId:n})=>{let{t:r}=Ta("dndev"),[a,i]=ba(!1),c=wa(),d=ka()?.pathname||(typeof window<"u"?window.location.pathname:"/"),u=e instanceof Error?e.message:"Unknown error",s=e instanceof Error?e.stack:void 0,g=!1;ya(()=>{try{xa(e,{userMessage:"Page encountered an error",context:{component:"RouteErrorFallback",location:d}})}catch{}},[e,d]);let p=async()=>{if(!s)return;let h=[`Error: ${u}`,`Timestamp: ${new Date().toISOString()}`,`User Agent: ${navigator.userAgent}`,n?`Event ID: ${n}`:null,`Path: ${d}`,"","Stack Trace:",s,o?`
2
2
  Component Stack:`:null,o||null].filter(Boolean).join(`
3
- `);try{await navigator.clipboard.writeText(y),i(!0),setTimeout(()=>i(!1),2e3)}catch{}},u=()=>{try{e()}catch{typeof window<"u"&&window.location.reload()}},f=()=>{try{c()}catch{typeof window<"u"&&window.history.back()}};return R("div",{className:"dndev-container","data-variant":"standard","data-centered":"true",children:R(Wo,{variant:Ko.DEFAULT,elevated:!0,className:"dndev-w-full",style:{maxWidth:"65ch",margin:"0 auto"},children:se(ue,{gap:"large",align:"center",className:"dndev-text-center",children:[R(ue,{align:"center",justify:"center",style:{width:"5rem",height:"5rem",backgroundColor:"rgba(220, 38, 38, 0.1)",borderRadius:"50%",border:"1px solid var(--destructive)"},children:R(ha,{style:{width:"2.5rem",height:"2.5rem",color:"var(--destructive)"},"aria-hidden":"true"})}),se(ue,{gap:"medium",children:[R("h1",{className:"dndev-text-base","data-level":"h1",style:{fontSize:"var(--font-size-2xl)",fontWeight:"var(--font-weight-bold)",margin:0},children:n("routeError.title","Something went wrong")}),R("p",{className:"dndev-text-base",style:{fontSize:"var(--font-size-lg)",color:"var(--muted-foreground)",margin:0},children:n("routeError.description","We encountered an error while loading this page.")}),R(wa,{variant:Da.SUCCESS,hideIcon:!0,children:R("div",{style:{fontSize:"var(--font-size-sm)",textAlign:"center"},children:n("routeError.dataSafe","Don't worry, your data is safe.")})})]}),r&&se("code",{style:{padding:"var(--gap-sm) var(--gap-md)",background:"var(--muted)",borderRadius:"var(--radius-full)",fontSize:"var(--font-size-xs)",fontFamily:"var(--font-mono)",color:"var(--foreground)"},children:[n("routeError.errorId","Error ID"),": ",r]}),g&&m&&se(Wo,{variant:Ko.MUTED,className:"dndev-w-full",children:[se(ue,{direction:"row",align:"center",justify:"between",gap:"medium",children:[R("span",{className:"dndev-text-base",style:{fontSize:"var(--font-size-sm)",fontWeight:"var(--font-weight-semibold)",color:"var(--destructive)"},children:"Error Message:"}),R(qe,{variant:Ze.GHOST,icon:a?Ca:Ta,onClick:d,disabled:a,children:a?n("routeError.copied","Copied"):n("routeError.copyDetails","Copy Details")})]}),R("pre",{style:{fontSize:"var(--font-size-xs)",fontFamily:"var(--font-mono)",wordBreak:"break-word",whiteSpace:"pre-wrap",color:"var(--foreground)",margin:0,marginTop:"var(--gap-sm)"},children:m})]}),se(ue,{gap:"medium",className:"dndev-w-full",children:[R(qe,{variant:Ze.DESTRUCTIVE,icon:xa,onClick:u,fullWidth:!0,children:n("routeError.tryAgain","Try Again")}),se(ue,{direction:"row",gap:"medium",justify:"center",children:[R(C,{path:"/",children:R(qe,{variant:Ze.DEFAULT,icon:va,fullWidth:!0,children:n("routeError.goHome","Go Home")})}),R(qe,{variant:Ze.OUTLINE,icon:ba,onClick:f,fullWidth:!0,children:n("routeError.goBack","Go Back")})]})]}),R("p",{className:"dndev-text-base",style:{fontSize:"var(--font-size-sm)",color:"var(--muted-foreground)",margin:0},children:n("routeError.contactSupport","If the problem persists, please contact support.")})]})})})},Yo=Fa;import{jsx as Ne}from"react/jsx-runtime";var Je=({variant:t="standard",density:e,className:o,children:r,centered:n=!0,gapFirst:a=!1})=>Ne($o,{level:"route",fallback:i=>Ne(Ra,{fallback:Ne("div",{children:"Loading error fallback..."}),children:Ne(Yo,{...i})}),children:Ne("div",{className:La("dndev-container",o),"data-variant":t,"data-density":e,"data-centered":n?"true":"false","data-gap-first":a?"true":void 0,children:r})});import{Fragment as Ka,jsx as N,jsxs as Pe}from"react/jsx-runtime";var Wa=za(()=>import("@donotdev/auth").then(t=>({default:t.MultipleAuthProviders})));function l1({title:t,description:e,showBackButton:o=!0,onBack:r,className:n=""}){let{t:a}=Ha(["auth","common"]),i=_a(),c=$a(),l=()=>{r?r():c()};return N(Je,{variant:"docs",children:N(ge,{align:"center",justify:"center",className:Ga("dndev-min-h-60",n),style:{paddingTop:"var(--gap-lg)",paddingBottom:"var(--gap-lg)"},children:N(Oa,{className:"dndev-w-full",style:{maxWidth:"28rem",border:"none",boxShadow:"var(--shadow-xl)"},title:Pe(ge,{gap:"medium",children:[N(ge,{justify:"center",children:N("div",{style:{borderRadius:"9999px",backgroundColor:"color-mix(in oklab, var(--primary) 10%, transparent)",padding:"var(--gap-md)"},children:N(Ba,{className:"dndev-size-touch",style:{color:"var(--primary)"}})})}),N("div",{style:{fontSize:"var(--font-size-2xl)",fontWeight:700},children:a("auth.fallback.title","Authentication Required")}),N("p",{style:{color:"var(--muted-foreground)"},children:a("auth.fallback.description","Please sign in to access this page")})]}),children:Pe(ge,{gap:"medium",children:[Pe(ge,{gap:"large",children:[N("div",{children:N("p",{style:{fontSize:"var(--font-size-sm)",color:"var(--muted-foreground)"},children:a("auth.fallback.chooseProvider")})}),N(Ma,{fallback:N("div",{children:"Loading providers..."}),children:N(Wa,{layout:"vertical",spacing:"tight",fullWidth:!0,ariaLabel:a("auth.fallback.authOptions")})})]}),o&&Pe(Ka,{children:[N(Va,{}),N("div",{children:N(Ua,{onClick:l,className:"dndev-gap-sm",icon:Ea,children:a("common.back")})})]}),Pe(ge,{gap:"tight",style:{fontSize:"var(--font-size-xs)",color:"var(--muted-foreground)"},children:[N("p",{children:a("auth.fallback.secure")}),N("p",{children:a("auth.fallback.terms")})]})]})})})})}import{Search as Ya}from"lucide-react";import{Button as qa,BUTTON_VARIANT as Za,DISPLAY as Ja}from"@donotdev/components";import{useOverlayStore as Qa,useTranslation as Xa}from"@donotdev/core";import{jsx as ja,jsxs as ei}from"react/jsx-runtime";var g1=({display:t=Ja.AUTO,className:e,onOpen:o})=>{let{t:r}=Xa("dndev"),n=Qa(l=>l.openCommandDialog),i=typeof navigator<"u"&&/Mac|iPhone|iPad/.test(navigator.platform)?"\u2318K":"Ctrl+K",c=()=>{n(),o?.()};return ei(qa,{variant:Za.OUTLINE,display:t,icon:Ya,onClick:c,className:e,"aria-label":r("goTo.ariaLabel","Go to page"),children:[r("goTo.label","Go to"),ja("kbd",{style:{marginInlineStart:"var(--gap-sm)",padding:"0.125rem 0.375rem",fontSize:"var(--font-size-xs)",fontFamily:"var(--font-mono)",opacity:.5},children:i})]})};import{Suspense as bi,lazy as xi}from"react";import{useEventListener as Ti,useOverlayStore as Ci}from"@donotdev/core";import{jsx as jo}from"react/jsx-runtime";var Si=xi(()=>Promise.resolve().then(()=>(Xo(),Qo))),ki=()=>{let t=Ci(e=>e.openCommandDialog);return Ti("keydown",e=>{(e.metaKey||e.ctrlKey)&&e.key==="k"&&(e.preventDefault(),t())},{target:document,options:{passive:!1,capture:!1}}),jo(bi,{fallback:null,children:jo(Si,{})})},wi=ki;import{Search as Di}from"lucide-react";import{useCallback as er,useEffect as Ni,useState as Pi,useRef as Ai}from"react";import{Stack as Ii}from"@donotdev/components";import{useOverlayStore as tr}from"@donotdev/core";import{useTranslation as Fi}from"@donotdev/core";import{jsx as Xe,jsxs as Ei}from"react/jsx-runtime";var Ri=()=>{let{t}=Fi("dndev"),[e,o]=Pi(""),r=Ai(null),n=tr(l=>l.openCommandDialog),a=tr(l=>l.isCommandDialogOpen);Ni(()=>{a||o("")},[a]);let i=er(()=>{n(e)},[n,e]),c=er(l=>{l.key==="Enter"&&(l.preventDefault(),n(e))},[n,e]);return Ei(Ii,{direction:"row",align:"center",className:"dndev-relative dndev-w-full dndev-max-w-sm",role:"search",children:[Xe(Di,{className:"dndev-absolute dndev-size-md",style:{left:"0.75rem",opacity:.5},"aria-hidden":"true"}),Xe("input",{ref:r,type:"text",value:e,onChange:l=>o(l.target.value),onFocus:i,onKeyDown:c,placeholder:t("globalGoTo.searchPlaceholder","Search pages..."),className:"dndev-input dndev-w-full",style:{paddingLeft:"2.5rem",paddingRight:"5rem"},"aria-label":t("globalGoTo.ariaLabel","Search navigation")}),Xe("div",{className:"dndev-absolute dndev-flex dndev-items-center dndev-text-sm",style:{right:"0.75rem",gap:"0.25rem",opacity:.5},"aria-hidden":"true",children:Xe("kbd",{style:{padding:"0.25rem 0.5rem",fontSize:"var(--font-size-xs)",fontFamily:"var(--font-mono)",borderRadius:"var(--radius-sm)"},children:"\u2318K"})})]})},Li=Ri;import{MoreHorizontal as Bi,Link as or}from"lucide-react";import{useState as Mi,useEffect as rr,useRef as zi,useMemo as Oi}from"react";import{NavigationMenu as nr,NavigationMenuListPrimitive as Ui,NavigationMenuItemPrimitive as ar,Button as Vi,DropdownMenu as Gi,cn as je,DISPLAY as Hi}from"@donotdev/components";import{useTranslation as _i}from"@donotdev/core";fe();ne();import{jsx as H,jsxs as At}from"react/jsx-runtime";var ir=({routes:t,vertical:e=!1,display:o=Hi.AUTO,overflowDetection:r=!1,showIcons:n=!0,className:a,style:i})=>{let{t:c}=_i("dndev"),l=_(),p=t??l,m=zi(null),[s,g]=Mi(p.length),d=Oi(()=>p.map(u=>({label:u.label,path:u.path,icon:H(L,{icon:u.icon,fallback:or}),children:u.children?u.children.map(f=>({label:f.label,path:f.path,icon:H(L,{icon:f.icon,fallback:or})})):void 0})),[p]);if(rr(()=>{if(!r||p.length===0||e)return;let u=()=>{let y=m.current;if(!y)return;let v=y.getBoundingClientRect(),h=y.querySelectorAll("[data-nav-item]"),S=y.querySelector("[data-more-button]"),w=0,U=S?.offsetWidth||0;for(let V=0;V<h.length;V++){let re=h[V];if(!re)break;if(re.getBoundingClientRect().right-v.left+(V===h.length-1&&S?U:0)<=v.width)w=V+1;else break}g(Math.max(0,w))},f=new ResizeObserver(u);return m.current&&f.observe(m.current),setTimeout(u,0),()=>f.disconnect()},[r,p.length,e]),rr(()=>{r&&!e&&g(p.length)},[p.length,r,e]),p.length===0)return null;if(r&&!e){let u=d.slice(0,s),f=d.slice(s);return H(nr,{className:je(a),style:i||{flex:1},children:At(Ui,{ref:m,"data-vertical":"false",style:{display:"flex",alignItems:"center",gap:"var(--gap-sm)",flexWrap:"nowrap",overflow:"hidden"},children:[u.filter(y=>y.path).map((y,v)=>H(ar,{"data-nav-item":!0,children:At(C,{path:y.path,className:je("dndev-interactive"),"data-role":"nav-trigger",children:[n&&y.icon,H("span",{className:"dndev-interactive-label",children:y.label})]})},y.path||v)),f.length>0&&H(ar,{"data-more-button":!0,children:H(Gi,{trigger:H(Vi,{className:"dndev-size-touch",style:{flexShrink:0},"aria-label":c("navigation.more","More"),children:H(Bi,{className:"dndev-size-md"})}),items:f.filter(y=>y.path).map(y=>({label:y.label,children:At(C,{path:y.path,className:je("dndev-interactive"),"data-role":"menu-item",children:[n&&y.icon,H("span",{className:"dndev-interactive-label",children:y.label})]}),asChild:!0})),contentWidth:"14rem",contentAlign:"end"})})]})})}return H(nr,{items:d,vertical:e,display:o,className:je(a,e&&"dndev-sidebar-nav-menu"),LinkComponent:C})};import{Home as $i,ArrowLeft as Wi,Link as Ki}from"lucide-react";import{useMemo as Yi}from"react";import{Button as It,BUTTON_VARIANT as Ft,Stack as Ie,Text as Rt}from"@donotdev/components";import{useTranslation as qi}from"@donotdev/core";import{useLocation as Zi,useNavigate as Ji}from"@donotdev/ui/routing/hooks";fe();ne();import{jsx as z,jsxs as et}from"react/jsx-runtime";function sr(){let{t}=qi("dndev"),e=Zi(),o=Ji(),r=_(),n=Yi(()=>r.filter(i=>!i.path.includes(":")&&i.path!=="/").slice(0,4),[r]),a=()=>{o("back")};return z(Je,{variant:"docs",centered:!0,children:et(Ie,{gap:"large",align:"center",justify:"center",children:[et(Ie,{gap:"medium",align:"center",children:[z(Rt,{level:"h1",style:{fontSize:"clamp(4rem, 12vw, 8rem)",fontWeight:"var(--font-weight-bold)",lineHeight:1,letterSpacing:"-0.02em",background:"linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent",backgroundClip:"text",margin:0},children:"404"}),z(Rt,{level:"h2",style:{fontSize:"var(--font-size-2xl)",fontWeight:"var(--font-weight-semibold)",margin:0},children:t("errors.notFound.title","Page Not Found")}),z(Rt,{style:{fontSize:"var(--font-size-lg)",color:"var(--muted-foreground)",textAlign:"center",margin:0},children:t("errors.notFound.description","The page you're looking for doesn't exist or has been moved.")}),e.pathname&&z("code",{style:{padding:"var(--gap-sm) var(--gap-md)",background:"var(--muted)",borderRadius:"var(--radius-md)",fontSize:"var(--font-size-sm)",fontFamily:"var(--font-mono)",color:"var(--foreground)",wordBreak:"break-all",maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",border:"1px solid var(--border-hairline)"},children:e.pathname})]}),n.length>0&&et(Ie,{gap:"medium",align:"center",children:[z("p",{className:"dndev-text-base",style:{fontSize:"var(--font-size-md)",fontWeight:"var(--font-weight-semibold)",margin:0,color:"var(--muted-foreground)"},children:t("errors.notFound.suggestions","You might be looking for:")}),z(Ie,{direction:"row",wrap:"wrap",justify:"center",gap:"tight",children:n.map(i=>z(C,{path:i.path,replace:!0,children:z(It,{variant:Ft.OUTLINE,icon:z(L,{icon:i.icon,fallback:Ki}),"aria-label":t("errors.notFound.navigateTo",`Navigate to ${i.label}`,{label:i.label}),children:i.label})},i.path))})]}),et(Ie,{direction:"row",wrap:"wrap",justify:"center",gap:"medium",children:[z(C,{path:"/",replace:!0,children:z(It,{variant:Ft.DEFAULT,icon:$i,"aria-label":t("errors.notFound.goHome","Go to home page"),children:t("errors.notFound.goHome","Go Home")})}),z(It,{variant:Ft.OUTLINE,icon:Wi,onClick:a,"aria-label":t("errors.notFound.goBack","Go back to previous page"),children:t("errors.notFound.goBack","Go Back")})]})]})})}fe();Nt();import{useNavigate as Cg,useBack as Sg,useRefresh as kg,usePrefetch as wg,useLocation as Dg,useParams as Ng,useRouteParam as Pg,useSearchParams as Ag,useMatch as Ig,useQueryParams as Fg,useRedirectGuard as Rg}from"@donotdev/ui/routing/hooks";import{getDndevConfig as Lt,isClient as le,isDev as lr}from"@donotdev/core";var M=class{static getBrowserSupport(){if(!le())return{svg:!0,webp:!1,avif:!1};let e=this.cache.get("browser-support");if(e)return e;let o={svg:!0,webp:!1,avif:!1};try{let r=document.createElement("canvas");r.width=1,r.height=1,o.webp=r.toDataURL("image/webp").indexOf("data:image/webp")===0}catch{o.webp=!1}try{let r=document.createElement("canvas");r.width=1,r.height=1,o.avif=r.toDataURL("image/avif").indexOf("data:image/avif")===0}catch{o.avif=!1}return this.cache.set("browser-support",o),o}static extractStringValues(e){let o=[];if(e==null)return o;if(typeof e=="string")o.push(e);else if(Array.isArray(e))for(let r of e)o.push(...this.extractStringValues(r));else if(typeof e=="object")for(let r of Object.values(e))o.push(...this.extractStringValues(r));return o}static assetExists(e){if(!le())return!1;let o=this.getAssetManifest();return o?this.extractStringValues(o).includes(e):!1}static getAssetManifest(){return le()&&Lt()?.assets?.mapping||null}static getLogoSvgContent(){return Lt()?.assets?.logoSvgContent||null}static resolveLogo(e){if(e)return e;let o="logo";if(this.cache.has(o))return this.cache.get(o);let n=this.getAssetManifest()?.logo?.optimal||"/logo.svg";return this.cache.set(o,n),n}static directAssetCheck(e){if(!le())return!1;try{let o=new Image;return o.src=e,!0}catch{return!1}}static resolveFaviconSet(){let e="favicon-set";if(this.cache.has(e))return this.cache.get(e);let o=this.getAssetManifest();if(o?.favicon?.set){let a=o.favicon.set,i=this.assetExists("/icon-512x512.png")?"/icon-512x512.png":this.assetExists("/icon-192x192.png")?"/icon-192x192.png":"/logo.svg",c={svg:a.svg||"/favicon.svg",ico:a.ico||"/favicon.ico",png16:a.png16||i,png32:a.png32||i,apple180:a.apple180||i,android192:a.android192||i,android512:a.android512||i};return this.cache.set(e,c),c}let r=this.assetExists("/icon-512x512.png")?"/icon-512x512.png":this.assetExists("/icon-192x192.png")?"/icon-192x192.png":"/logo.svg",n={svg:this.assetExists("/favicon.svg")?"/favicon.svg":"/logo.svg",ico:this.assetExists("/favicon.ico")?"/favicon.ico":"/favicon.svg",png16:this.assetExists("/favicon-16x16.png")?"/favicon-16x16.png":r,png32:this.assetExists("/favicon-32x32.png")?"/favicon-32x32.png":r,apple180:this.assetExists("/apple-touch-icon.png")?"/apple-touch-icon.png":r,android192:this.assetExists("/icon-192x192.png")?"/icon-192x192.png":r,android512:this.assetExists("/icon-512x512.png")?"/icon-512x512.png":r};return this.cache.set(e,n),n}static resolveFavicon(){let e=this.getAssetManifest();if(e?.favicon?.optimal)return e.favicon.optimal;let o=["/favicon.svg","/favicon.ico","/favicon.png","/logo.svg"];for(let r of o)if(this.assetExists(r))return r;return"/favicon.svg"}static clearCache(){this.cache.clear(),lr()&&le()}static getDebugInfo(){return{browserSupport:this.getBrowserSupport(),detectedAssets:le()?Lt()?.assets?.mapping:null,assetManifest:this.getAssetManifest(),cache:Object.fromEntries(this.cache)}}};Ge(M,"cache",new Map);function Mg(t){return M.resolveLogo(t)}function zg(){return M.resolveFaviconSet()}lr()&&(M.clearCache(),le()&&window.addEventListener("DOMContentLoaded",()=>{M.clearCache()}));import*as Qi from"@donotdev/crud";var he=Qi?.useFormStore,cr={forms:{},startSubmit:()=>{},setUploading:()=>{},setValidating:()=>{},setSubmitting:()=>{},setSuccess:()=>{},setError:()=>{},reset:()=>{},cleanup:()=>{},setIsDirty:()=>{},hasDirtyForms:()=>!1,getDirtyFormIds:()=>[],getStatus:()=>"idle",isLoading:()=>!1,getUploadProgress:()=>0,getError:()=>null,getIsDirty:()=>!1},Vg=typeof he=="function";function Et(t){return he?he(t):t(cr)}Et.getState=()=>he&&typeof he.getState=="function"?he.getState():cr;function Gg(){return Et(e=>e.hasDirtyForms())()}async function Hg(t="You have unsaved changes. Discard them?"){return Et.getState().hasDirtyForms()&&typeof window<"u"&&window.confirm?window.confirm(t):!0}ke();import{useMemo as Xi}from"react";function tt(){let t=k("status"),e=k("isAvailable"),o=k("user");return Xi(()=>({shouldHide:t!=="ready"||!e,isLoading:t==="initializing",isReady:t==="ready"&&e,isAuthenticated:!!o}),[t,e,o])}import*as ji from"@donotdev/billing";import{DEGRADED_BILLING_API as es}from"@donotdev/core";var Bt=ji?.useStripeBilling;function ts(t){return es[t]}function Mt(t,e){return Bt?Bt(t,e):ts(t)}var qg=typeof Bt=="function";ke();function Xg(){let t=k("user"),e=k("status"),o={user:t,status:e},r=Mt("status",o),n=Mt("isAvailable",o);return{shouldHide:!n,isLoading:r==="initializing",isReady:n&&r==="ready"}}import{DEGRADED_OAUTH_API as os}from"@donotdev/core";import*as rs from"@donotdev/oauth";var zt=rs?.useOAuth;function ns(t){return os[t]}function tf(t){return zt?zt(t):ns(t)}var of=typeof zt=="function";import{CheckCircle as as}from"lucide-react";import{List as is}from"@donotdev/components";import{translateArray as ss}from"@donotdev/core";import{jsx as pr}from"react/jsx-runtime";var ls=as,cs=16;function lf(t,e,o,r=ls,n=cs){let a=r;return pr(is,{icon:a?pr(a,{size:n}):void 0,items:ss(t,e,o),style:{listStyle:"none",paddingInlineStart:0}})}import{Fragment as Rs,jsx as X,jsxs as Ls}from"react/jsx-runtime";var ur=()=>null,Ps=mr(async()=>{try{return{default:(await import("@donotdev/auth")).ReauthDialog}}catch{return{default:ur}}}),As=mr(async()=>{try{return{default:(await import("@donotdev/auth")).ConfirmDeleteDialog}}catch{return{default:ur}}}),Ot=null;ws()&&import("@donotdev/auth").then(t=>{Ot=t.useDeleteAccount}).catch(()=>{});function Is(){let[t]=ot.useState(!1),[e]=ot.useState(!1),[o]=ot.useState(!1),[r]=ot.useState(null);return{showConfirmDialog:t,showPasswordDialog:e,isDeleting:o,error:r,startDeleteFlow:()=>{},confirmDelete:async()=>{},cancel:()=>{}}}function Fs(){return Ot?Ot():Is()}var rt=t=>{if(!t)return Fe;if(typeof t=="function")return t;let e=t.replace(/['"]/g,"");return gs[e]||Fe},Ut=({loginPath:t,display:e=Ts.AUTO,"no-tooltip":o=!1,customItems:r=[],className:n,style:a})=>{let{t:i}=Cs("dndev"),{shouldHide:c,isReady:l,isAuthenticated:p}=tt(),m=ks(),s=k("user"),g=k("signOut"),d=Ds("isLaptop"),u=_(),f=Ns(),y=m.profilePath,v=m.authMenuItems||[],h=Fs(),S=()=>s&&(s.displayName||s.email?.split("@")[0])||"User",w=()=>S().split(" ").map(x=>x.charAt(0)).slice(0,2).join("").toUpperCase(),U=()=>{if(!s)return i("auth.userMenu",{defaultValue:"User menu"});let D=[S()];return s.email&&D.push(s.email),Y&&Y!=="guest"&&D.push(`Role: ${Y}`),D.join(`
4
- `)},V=fs(()=>{let D=[];return!d&&s&&D.push({children:X(xs,{variant:"muted",as:"span",children:`${S()}${s.email?`
5
- ${s.email}`:""}`}),disabled:!0}),y&&D.push({label:i("auth.profile",{defaultValue:"Profile"}),icon:ps,onClick:()=>f(y)}),v.forEach(x=>{let b=u.find(Ce=>Ce.path===x.path),E=x.label||b?.label||x.path.split("/").pop()||"Menu",B=x.icon?rt(x.icon):b?.icon&&(typeof b.icon=="string"||typeof b.icon=="function")?rt(b.icon):Fe;D.push({label:E,icon:B,onClick:()=>f(x.path)})}),r.forEach(x=>{if(x.path){let b=u.find(Ce=>Ce.path===x.path),E=x.label||b?.label||x.path.split("/").pop()||"Menu",B=x.icon?rt(x.icon):Fe;D.push({label:E,icon:B,onClick:()=>f(x.path),disabled:x.disabled,style:x.style})}else if(x.onClick){let b=x.icon?rt(x.icon):Fe;D.push({label:x.label,icon:b,onClick:x.onClick,disabled:x.disabled,style:x.style})}}),D.push({label:i("auth.deleteAccount.label",{defaultValue:"Delete Account"}),icon:us,onClick:h.startDeleteFlow,variant:"destructive"}),D.push({label:i("auth.signOut",{defaultValue:"Sign Out"}),icon:ds,onClick:()=>g(),variant:"destructive"}),D},[y,v,r,g,h,i,u,d,s,S,f]);if(Ss().length===0||c||!l)return null;let Y=s?.role;return p?Ls(Rs,{children:[X(dr,{fallback:null,children:X(Ps,{open:h.showPasswordDialog,isLoading:h.isDeleting,error:h.error,onReauth:D=>h.confirmDelete(D),onCancel:h.cancel})}),X(dr,{fallback:null,children:X(As,{open:h.showConfirmDialog,isLoading:h.isDeleting,error:h.error,onConfirm:()=>h.confirmDelete(),onCancel:h.cancel})}),X(bs,{trigger:X(hs,{variant:vs.OUTLINE,icon:s?X(ys,{src:s.photoURL??void 0,fallback:w(),alt:S(),style:{margin:"-4px 0"}}):ms,display:e,"aria-label":i("auth.userMenu",{defaultValue:"User menu"}),tooltip:!o&&d&&s?U():o?void 0:i("auth.userMenu",{defaultValue:"User menu"}),className:n,style:a,children:S()}),items:V,contentAlign:"end"})]}):null};import{jsx as I}from"react/jsx-runtime";var yr=()=>null,$s=fr(async()=>{try{return{default:(await import("@donotdev/auth")).AuthPartnerButton}}catch{return{default:yr}}}),gr=fr(async()=>{try{return{default:(await import("@donotdev/auth")).MultipleAuthProviders}}catch{return{default:yr}}}),Gt=({display:t=Vs.AUTO,className:e,style:o})=>{let{t:r}=Gs("dndev"),{shouldHide:n,isLoading:a,isReady:i,isAuthenticated:c}=tt(),l=Hs(),p=_s(),[m,s]=Bs(!1),g=l.loginPath,d=r("auth.signIn",{defaultValue:"Sign In"}),u=r("auth.loading",{defaultValue:"Loading..."}),f=p.includes("password")||p.includes("emailLink");if(n||!i)return null;let y=({children:v,...h})=>I(Ms,{variant:zs.OUTLINE,icon:Es,display:t,tooltip:d,className:e,style:o,...h,children:v??d});if(!c){if(g!==void 0)return I(C,{path:g,prefetch:!0,children:I(y,{})});let v=p[0];return f?I(Us,{trigger:I(y,{}),title:d,open:m,onOpenChange:s,"data-content-size":"form",children:I(Vt,{fallback:I("div",{style:{padding:"var(--gap-md)",fontSize:"var(--font-size-sm)",color:"var(--muted-foreground)"},children:u}),children:I(gr,{spacing:"medium",onSuccess:()=>s(!1)})})}):p.length>1?I(Os,{trigger:I(y,{}),children:I(Vt,{fallback:I("div",{style:{padding:"var(--gap-md)",fontSize:"var(--font-size-sm)",color:"var(--muted-foreground)"},children:u}),children:I(gr,{spacing:"tight"})})}):I(Vt,{fallback:I(y,{disabled:a,tooltip:a?u:d,children:a?u:d}),children:I($s,{partnerId:v,display:t,className:e,style:o})})}return I(Ut,{display:t,loginPath:g,className:e,style:o})};import{RefreshCw as Ws}from"lucide-react";import{cn as Ks}from"@donotdev/components";import{jsx as hr,jsxs as Zs}from"react/jsx-runtime";var Ys=({className:t})=>Zs("div",{className:Ks("dndev-loading-overlay",t),style:{position:"fixed",inset:0,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"var(--background)",opacity:"var(--opacity-muted)",backdropFilter:"blur(4px)",zIndex:50},role:"status","aria-busy":"true","aria-label":"Loading",children:[hr(Ws,{className:"dndev-size-touch",style:{color:"var(--primary)",animation:"spin 1s linear infinite"}}),hr("span",{className:"dndev-sr-only",children:"Loading..."})]}),qs=Ys;import{AlertCircle as Js,RefreshCw as Qs,Mail as Xs,Cookie as js}from"lucide-react";import{Card as el,Button as Ht,BUTTON_VARIANT as _t,Stack as vr}from"@donotdev/components";import{useTranslation as tl}from"@donotdev/core";import{jsx as Re,jsxs as nt}from"react/jsx-runtime";function ol({featureName:t,title:e,description:o,showReviewCookies:r=!1,showContactSupport:n=!0,showRetry:a=!1,supportEmail:i="support@example.com",onRetry:c,onReviewCookies:l,customActions:p,className:m=""}){let{t:s}=tl("ui"),g=o||s("featureDisabled.description","{featureName} is not available. This may be due to missing configuration or disabled features.",{featureName:t}),d=()=>{if(l)l();else{let f=new CustomEvent("openCookieConsent");window.dispatchEvent(f)}},u=()=>{window.location.href=`mailto:${i}?subject=${encodeURIComponent(`Feature Unavailable: ${t}`)}&body=${encodeURIComponent(`I'm experiencing an issue with ${t} not being available.`)}`};return nt(el,{className:m,title:nt(vr,{direction:"row",align:"center",gap:"tight",children:[Re(Js,{className:"dndev-size-md",style:{color:"var(--destructive)"}}),e||t]}),subtitle:g,children:[" ",nt("div",{style:{display:"grid",gap:"var(--gap-md)"},children:[(r||n||a||p)&&nt(vr,{direction:"row",wrap:"wrap",gap:"tight",children:[r&&Re(Ht,{variant:_t.OUTLINE,onClick:d,icon:js,children:s("featureDisabled.reviewCookies","Review Cookies")}),n&&Re(Ht,{variant:_t.OUTLINE,onClick:u,icon:Xs,children:s("featureDisabled.contactSupport","Contact Support")}),a&&Re(Ht,{variant:_t.OUTLINE,onClick:c,icon:Qs,children:s("featureDisabled.retry","Retry")}),p]}),Re("p",{style:{fontSize:"var(--font-size-sm)",color:"var(--muted-foreground)"},children:s("featureDisabled.helpText","If you believe this is an error, please contact support or try refreshing the page.")})]})]})}var rl=ol;ne();import{cn as nl}from"@donotdev/components";import{jsx as $,jsxs as ul}from"react/jsx-runtime";var q=({state:t="loading",message:e,show:o=!0,className:r,showSpinner:n=!1,spinnerSize:a="md"})=>{if(!o)return null;let c=e||(p=>({initial:"Preparing...",loading:"Loading...",processing:"Processing your request...","almost-done":"Almost there...",complete:"Complete!"})[p]||"Loading...")(t),l={sm:{width:"0.75rem",height:"0.75rem"},md:{width:"1rem",height:"1rem"},lg:{width:"1.5rem",height:"1.5rem"}};return ul("div",{className:nl(r),style:{display:"flex",alignItems:"center",justifyContent:"center",gap:"var(--gap-sm)",color:"var(--muted-foreground)",fontSize:"var(--font-size-sm)",transition:"opacity var(--dur-fast) ease-out"},role:"status","aria-live":"polite","aria-label":c,children:[n&&$("div",{style:{...l[a],animation:"spin 1s linear infinite",borderRadius:"var(--radius-full)",border:"2px solid currentColor",borderTopColor:"transparent"},role:"status","aria-hidden":"true"}),$("span",{style:{fontWeight:500},children:c})]})},al=({message:t="Loading...",...e})=>$(q,{state:"loading",message:t,...e}),il=({message:t="Processing your request...",...e})=>$(q,{state:"processing",message:t,...e}),sl=({message:t="Almost there...",...e})=>$(q,{state:"almost-done",message:t,...e}),ll=({message:t="Complete!",...e})=>$(q,{state:"complete",message:t,...e}),cl=({showSpinner:t=!0,...e})=>$(q,{state:"processing",message:"Saving your changes...",showSpinner:t,...e}),pl=({showSpinner:t=!0,fileName:e,...o})=>$(q,{state:"processing",message:e?`Uploading ${e}...`:"Uploading file...",showSpinner:t,...o}),dl=({showSpinner:t=!0,query:e,...o})=>$(q,{state:"processing",message:e?`Searching for "${e}"...`:"Searching...",showSpinner:t,...o}),ml=({showSpinner:t=!0,...e})=>$(q,{state:"loading",message:"Connecting to server...",showSpinner:t,...e}),at=q;import{cn as gl}from"@donotdev/components";import{Fragment as br,jsx as j,jsxs as xr}from"react/jsx-runtime";var fl=({show:t=!1,backdrop:e=!0,backdropBlur:o=!0,className:r,children:n,message:a,showSpinner:i=!0,spinnerSize:c="lg",preventClicks:l=!0,zIndex:p="var(--z-modal)"})=>{if(!t)return null;let m=p==="var(--z-modal)"||!p?"dndev-z-modal":p==="var(--z-toast)"?"dndev-z-toast":p==="var(--z-tooltip)"?"dndev-z-tooltip":p==="var(--z-overlay)"?"dndev-z-overlay":null;return j("div",{className:gl("dndev-loading-overlay",m,r),style:{position:"fixed",inset:0,display:"flex",alignItems:"center",justifyContent:"center",transition:"opacity var(--dur-fast) ease-out",backgroundColor:e?"var(--background)":"transparent",opacity:e?"var(--opacity-muted)":1,backdropFilter:o?"blur(4px)":"none",pointerEvents:l?"auto":"none",...m?{}:{zIndex:p}},role:"dialog","aria-modal":"true","aria-busy":"true","aria-label":"Loading overlay",children:j("div",{className:"dndev-surface",style:{display:"grid",placeItems:"center",gap:"var(--gap-md)",borderRadius:"var(--radius-lg)",padding:"var(--gap-lg)",backgroundColor:"var(--background)",opacity:"var(--opacity-strong)",border:"1px solid var(--border)",boxShadow:"var(--shadow-xl)",maxWidth:"var(--content-text)",width:"100%",margin:"0 var(--gap-md)"},children:n||xr(br,{children:[i&&j("div",{style:{animation:"spin 1s linear infinite",borderRadius:"var(--radius-full)",border:"2px solid var(--primary)",borderTopColor:"transparent",width:c==="sm"?"2rem":c==="md"?"3rem":"4rem",height:c==="sm"?"2rem":c==="md"?"3rem":"4rem"},role:"status","aria-hidden":"true"}),a&&j(at,{...a})]})})})};var yl=({show:t=!1,backdrop:e=!1,backdropBlur:o=!1,className:r,...n})=>j("div",{className:r,style:{position:"absolute",inset:0,display:t?"flex":"none",alignItems:"center",justifyContent:"center",transition:"opacity var(--dur-fast) ease-out",backgroundColor:e?"var(--background)":"transparent",opacity:e?"var(--opacity-muted)":1,backdropFilter:o?"blur(4px)":"none"},role:"status","aria-busy":"true","aria-label":"Loading content",children:j("div",{style:{display:"grid",placeItems:"center",gap:"var(--gap-sm)"},children:n.children||xr(br,{children:[j("div",{style:{animation:"spin 1s linear infinite",borderRadius:"var(--radius-full)",border:"2px solid var(--primary)",borderTopColor:"transparent",width:"1.5rem",height:"1.5rem"},role:"status","aria-hidden":"true"}),n.message&&j(at,{...n.message})]})})}),hl=fl;import{cn as vl}from"@donotdev/components";import{jsx as Tr}from"react/jsx-runtime";var bl=({variant:t="fullPage",className:e,isLoading:o})=>o===!1?null:Tr("div",{className:vl(e),style:{display:"flex",alignItems:"center",justifyContent:"center",...t==="fullPage"&&{position:"fixed",inset:0,backgroundColor:"var(--background)",backdropFilter:"blur(4px)",zIndex:50}},role:"status","aria-busy":"true","aria-label":"Loading",children:Tr("div",{style:{animation:"spin 1s linear infinite",borderRadius:"var(--radius-full)",border:"2px solid var(--muted)",borderTopColor:"var(--primary)",...t==="fullPage"?{width:"5rem",height:"5rem"}:{width:"var(--icon-md)",height:"var(--icon-md)"}},role:"status","aria-busy":"true","aria-label":"Loading"})}),xl=bl;import{Lock as it,Shield as Cr}from"lucide-react";import{useEffect as $t,useRef as Sr,useCallback as Tl}from"react";import{Portal as Cl,Spinner as Sl,Stack as kl,Text as Le,Button as wl}from"@donotdev/components";import{useTranslation as Dl,useOverlay as Z}from"@donotdev/core";import{jsx as W,jsxs as wr}from"react/jsx-runtime";var kr={connecting:0,preparing:2e3,redirecting:5e3},Nl=1e4;function Pl(t,e){return e==="none"?null:e==="shield"?Cr:e==="lock"?it:t?t.startsWith("stripe-")||t.includes("payment")||t.includes("checkout")?it:t.startsWith("oauth-")||t.startsWith("auth-")?Cr:it:it}function Al(t){return t||"default"}function Il(){let{t}=Dl("dndev"),e=Z("isRedirectOverlayOpen"),o=Z("redirectOperation"),r=Z("redirectPhase"),n=Z("showCancelButton"),a=Z("redirectConfig"),i=Z("redirectStartTime"),c=Z("setRedirectPhase"),l=Z("setShowCancelButton"),p=Z("hideRedirectOverlay"),m=Sr([]),s=Sr(null),g=Tl(()=>{p()},[p]);if($t(()=>{if(!e||!i)return;let w=a?.cancelTimeout??Nl,U=Date.now()-i;m.current.forEach(clearTimeout),m.current=[],s.current&&(clearTimeout(s.current),s.current=null);let V=(Y,D)=>{let x=Math.max(0,D-U);if(x>0){let b=setTimeout(()=>{c(Y)},x);m.current.push(b)}else c(Y)};V("preparing",kr.preparing),V("redirecting",kr.redirecting);let re=Math.max(0,w-U);return s.current=setTimeout(()=>{l(!0),c("timeout")},re),()=>{m.current.forEach(clearTimeout),m.current=[],s.current&&(clearTimeout(s.current),s.current=null)}},[e,i,a?.cancelTimeout,c,l]),$t(()=>{if(!e)return;let w=()=>{p()};return window.addEventListener("popstate",w),()=>window.removeEventListener("popstate",w)},[e,p]),$t(()=>{if(!e)return;let w=()=>{};return document.addEventListener("visibilitychange",w),()=>document.removeEventListener("visibilitychange",w)},[e]),!e)return null;let d=Al(o),u=a?.title??t(`redirectOverlay.${d}.title`,{defaultValue:t("redirectOverlay.default.title")}),f=a?.message??t(`redirectOverlay.${d}.message`,{defaultValue:t("redirectOverlay.default.message")}),y=a?.subtitle??t(`redirectOverlay.${d}.subtitle`,{defaultValue:t("redirectOverlay.default.subtitle")}),v=t(`redirectOverlay.${d}.ariaLabel`,{defaultValue:t("redirectOverlay.default.ariaLabel")}),h=t(`redirectOverlay.phases.${r}`),S=Pl(o,a?.icon);return W(Cl,{children:W("div",{className:"dndev-spinner-overlay",role:"status","aria-busy":"true","aria-label":v,style:{zIndex:"var(--z-overlay, 9999)"},children:wr("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:"var(--gap-md)",textAlign:"center",maxWidth:"400px",padding:"var(--gap-lg)"},children:[wr(kl,{direction:"row",gap:"medium",align:"center",children:[S&&W(S,{style:{width:"1.5rem",height:"1.5rem",color:"var(--primary)"},"aria-hidden":"true"}),W(Sl,{variant:"primary"})]}),W(Le,{as:"h3",style:{color:"var(--foreground)",margin:0},children:u}),W(Le,{variant:"muted",style:{color:"var(--foreground)",minHeight:"1.5em"},children:h}),W(Le,{variant:"muted",level:"small",style:{opacity:.8},children:f}),W(Le,{variant:"muted",level:"small",style:{opacity:.6},children:y}),W(Le,{variant:"muted",level:"small",style:{opacity:.5,marginTop:"var(--gap-sm)"},children:t("redirectOverlay.doNotRefresh")}),n&&W(wl,{variant:"ghost",onClick:g,style:{marginTop:"var(--gap-md)"},children:t("redirectOverlay.cancel")})]})})})}import{useEffect as Wt,useState as Dr}from"react";import{cn as Fl}from"@donotdev/components";import{jsx as Nr}from"react/jsx-runtime";var Rl=({isActive:t=!1,progress:e,useFakeProgress:o=!0,duration:r=2e3,className:n,show:a=!0})=>{let[i,c]=Dr(0),[l,p]=Dr(!1);Wt(()=>{if(!t||!o||e!==void 0)return;p(!0),c(0);let s=Date.now(),g=setInterval(()=>{let d=Date.now()-s,u=Math.min(d/r*90,90);c(u)},16);return()=>{clearInterval(g)}},[t,o,e,r]),Wt(()=>{e!==void 0&&p(e>0&&e<100)},[e]),Wt(()=>{if(!t){let s=setTimeout(()=>{p(!1),c(0)},300);return()=>clearTimeout(s)}},[t]);let m=e??i;return!a||!l?null:Nr("div",{className:Fl(n),style:{position:"fixed",left:0,right:0,zIndex:9999,height:"4px",backgroundColor:"transparent",top:"var(--header-height, 0px)"},role:"progressbar","aria-valuenow":Math.round(m),"aria-valuemin":0,"aria-valuemax":100,"aria-label":"Page loading progress",children:Nr("div",{style:{height:"100%",width:`${m}%`,background:"linear-gradient(to right, var(--primary), color-mix(in srgb, var(--primary) 80%, transparent), color-mix(in srgb, var(--primary) 60%, transparent))",transition:t?"width 0.3s ease-out":"width 0.2s ease-in",boxShadow:"var(--shadow-sm)"}})})},Ll=Rl;import{cn as st,Stack as El}from"@donotdev/components";import{jsx as Ee,jsxs as f2}from"react/jsx-runtime";var Bl=({variant:t="text",width:e,height:o,lines:r=1,show:n=!0,className:a,animation:i="pulse",style:c})=>{if(!n)return null;let l={backgroundColor:"var(--muted)",opacity:"var(--opacity-muted)",borderRadius:"var(--radius)",animation:i==="pulse"||i==="wave"?"pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite":"none",...i==="wave"&&{background:"linear-gradient(to right, color-mix(in srgb, var(--muted) 50%, transparent), color-mix(in srgb, var(--muted) 30%, transparent), color-mix(in srgb, var(--muted) 50%, transparent))"}},p=()=>{let m={};return e&&(m.width=typeof e=="number"?`${e}px`:e),o&&(m.height=typeof o=="number"?`${o}px`:o),m};return t==="text"?Ee(El,{gap:"tight",children:Array.from({length:r}).map((m,s)=>Ee("div",{className:st("dndev-skeleton",a),style:{...l,height:"var(--gap-md)",width:s===r-1?"75%":"100%",...p(),...c}},s))}):t==="circular"?Ee("div",{className:st("dndev-skeleton",a),style:{...l,borderRadius:"var(--radius-full)",width:e||o||"40px",height:o||e||"40px",...p(),...c}}):t==="rectangular"?Ee("div",{className:st("dndev-skeleton",a),style:{...l,width:e||"100%",height:o||"200px",...p(),...c}}):Ee("div",{className:st("dndev-skeleton",a),style:{...l,borderRadius:"var(--radius-lg)",width:e||"100%",height:o||"20px",...p(),...c}})};var Ml=Bl;import{Card as zl,IconBox as Ol,Stack as Ul,Text as Kt,renderCardContent as Vl}from"@donotdev/components";import{jsx as K,jsxs as Pr}from"react/jsx-runtime";var Gl=({icon:t,title:e,subtitle:o,content:r,href:n,variant:a,elevated:i,onClick:c,className:l,footer:p,style:m,...s})=>{let g=Vl(r),f=`calc(var(--font-size-lg) * var(--line-height) * 2 + var(--gap-md)) calc(var(--font-size-base) * var(--line-height) * 2 + var(--gap-md)) 1fr${p?" auto":""}`,y={display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden",textOverflow:"ellipsis",wordBreak:"break-word",lineHeight:"var(--line-height)"},v={...y,fontSize:"var(--font-size-lg)",fontWeight:600,color:"inherit",margin:0,textAlign:"start",flex:1,minWidth:0},h={...y,fontSize:"var(--font-size-base)",fontWeight:600,color:"var(--muted-foreground)",margin:0},S=t?Pr(Ul,{direction:"row",align:"center",gap:"medium",style:{width:"100%"},children:[K(Ol,{icon:t}),K(Kt,{as:"div",level:"h3",style:v,children:e})]}):K(Kt,{as:"div",level:"h3",style:v,children:e}),w=K(zl,{variant:a,elevated:i,onClick:c,className:l,"data-clickable":n||c?"true":void 0,style:{paddingInlineStart:"var(--gap-md)",paddingInlineEnd:"var(--gap-md)",gap:"var(--gap-md)",height:"100%",textAlign:"start",...m},...s,children:Pr("div",{style:{display:"grid",gridTemplateRows:f,gap:"var(--gap-md)",width:"100%"},children:[K("div",{style:{display:"flex",alignItems:"center",justifyContent:"flex-start"},children:S}),K("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"flex-start"},children:K(Kt,{as:"div",level:"body",style:h,children:o})}),K("div",{children:g}),p&&K("div",{children:p})]})});return n&&!c?K(C,{path:n,style:{display:"block",textDecoration:"none",height:"100%"},"aria-label":e?`Learn more about ${e}`:void 0,children:w}):w},Hl=Gl;import{useState as jl}from"react";import{Bento as ec,Card as tc,Section as oc,Stack as rc,Text as nc,cn as ac}from"@donotdev/components";var _l='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="#3178C6" d="M1.125 0C.502 0 0 .502 0 1.125v21.75C0 23.498.502 24 1.125 24h21.75c.623 0 1.125-.502 1.125-1.125V1.125C24 .502 23.498 0 22.875 0zm17.363 9.75c.612 0 1.154.037 1.627.111a6.38 6.38 0 0 1 1.306.34v2.458a3.95 3.95 0 0 0-.643-.361 5.093 5.093 0 0 0-.717-.26 5.453 5.453 0 0 0-1.426-.2c-.3 0-.573.028-.819.086a2.1 2.1 0 0 0-.623.242c-.17.104-.3.229-.393.374a.888.888 0 0 0-.14.49c0 .196.053.373.156.529.104.156.252.304.443.444s.423.276.696.41c.273.135.582.274.926.416.47.197.892.407 1.266.628.374.222.695.473.963.753.268.279.472.598.614.957.142.359.214.776.214 1.253 0 .657-.125 1.21-.373 1.656a3.033 3.033 0 0 1-1.012 1.085 4.38 4.38 0 0 1-1.487.596c-.566.12-1.163.18-1.79.18a9.916 9.916 0 0 1-1.84-.164 5.544 5.544 0 0 1-1.512-.493v-2.63a5.033 5.033 0 0 0 3.237 1.2c.333 0 .624-.03.872-.09.249-.06.456-.144.623-.25.166-.108.29-.234.373-.38a1.023 1.023 0 0 0-.074-1.089 2.12 2.12 0 0 0-.537-.5 5.597 5.597 0 0 0-.807-.444 27.72 27.72 0 0 0-1.007-.436c-.918-.383-1.602-.852-2.053-1.405-.45-.553-.676-1.222-.676-2.005 0-.614.123-1.141.369-1.582.246-.441.58-.804 1.004-1.089a4.494 4.494 0 0 1 1.47-.629 7.536 7.536 0 0 1 1.77-.201zm-15.113.188h9.563v2.166H9.506v9.646H6.789v-9.646H3.375z"/></svg>',$l='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="#61DAFB" d="M14.23 12.004a2.236 2.236 0 0 1-2.235 2.236 2.236 2.236 0 0 1-2.236-2.236 2.236 2.236 0 0 1 2.235-2.236 2.236 2.236 0 0 1 2.236 2.236zm2.648-10.69c-1.346 0-3.107.96-4.888 2.622-1.78-1.653-3.542-2.602-4.887-2.602-.41 0-.783.093-1.106.278-1.375.793-1.683 3.264-.973 6.365C1.98 8.917 0 10.42 0 12.004c0 1.59 1.99 3.097 5.043 4.03-.704 3.113-.39 5.588.988 6.38.32.187.69.275 1.102.275 1.345 0 3.107-.96 4.888-2.624 1.78 1.654 3.542 2.603 4.887 2.603.41 0 .783-.09 1.106-.275 1.374-.792 1.683-3.263.973-6.365C22.02 15.096 24 13.59 24 12.004c0-1.59-1.99-3.097-5.043-4.032.704-3.11.39-5.587-.988-6.38-.318-.184-.688-.277-1.092-.278zm-.005 1.09v.006c.225 0 .406.044.558.127.666.382.955 1.835.73 3.704-.054.46-.142.945-.25 1.44-.96-.236-2.006-.417-3.107-.534-.66-.905-1.345-1.727-2.035-2.447 1.592-1.48 3.087-2.292 4.105-2.295zm-9.77.02c1.012 0 2.514.808 4.11 2.28-.686.72-1.37 1.537-2.02 2.442-1.107.117-2.154.298-3.113.538-.112-.49-.195-.964-.254-1.42-.23-1.868.054-3.32.714-3.707.19-.09.4-.127.563-.132zm4.882 3.05c.455.468.91.992 1.36 1.564-.44-.02-.89-.034-1.345-.034-.46 0-.915.01-1.36.034.44-.572.895-1.096 1.345-1.565zM12 8.1c.74 0 1.477.034 2.202.093.406.582.802 1.203 1.183 1.86.372.64.71 1.29 1.018 1.946-.308.655-.646 1.31-1.013 1.95-.38.66-.773 1.288-1.18 1.87-.728.063-1.466.098-2.21.098-.74 0-1.477-.035-2.202-.093-.406-.582-.802-1.204-1.183-1.86-.372-.64-.71-1.29-1.018-1.946.303-.657.646-1.313 1.013-1.954.38-.66.773-1.286 1.18-1.868.728-.064 1.466-.098 2.21-.098zm-3.635.254c-.24.377-.48.763-.704 1.16-.225.39-.435.782-.635 1.174-.265-.656-.49-1.31-.676-1.947.64-.15 1.315-.283 2.015-.386zm7.26 0c.695.103 1.365.23 2.006.387-.18.632-.405 1.282-.66 1.933-.2-.39-.41-.783-.64-1.174-.225-.392-.465-.774-.705-1.146zm3.063.675c.484.15.944.317 1.375.498 1.732.74 2.852 1.708 2.852 2.476-.005.768-1.125 1.74-2.857 2.475-.42.18-.88.342-1.355.493-.28-.958-.646-1.956-1.1-2.98.45-1.017.81-2.01 1.085-2.964zm-13.395.004c.278.96.645 1.957 1.1 2.98-.45 1.017-.812 2.01-1.086 2.964-.484-.15-.944-.318-1.37-.5-1.732-.737-2.852-1.706-2.852-2.474 0-.768 1.12-1.742 2.852-2.476.42-.18.88-.342 1.356-.494zm11.678 4.28c.265.657.49 1.312.676 1.948-.64.157-1.316.29-2.016.39.24-.375.48-.762.705-1.158.225-.39.435-.788.636-1.18zm-9.945.02c.2.392.41.783.64 1.175.23.39.465.772.705 1.143-.695-.102-1.365-.23-2.006-.386.18-.63.406-1.282.66-1.933zM17.92 16.32c.112.493.2.968.254 1.423.23 1.868-.054 3.32-.714 3.708-.147.09-.338.128-.563.128-1.012 0-2.514-.807-4.11-2.28.686-.72 1.37-1.536 2.02-2.44 1.107-.118 2.154-.3 3.113-.54zm-11.83.01c.96.234 2.006.415 3.107.532.66.905 1.345 1.727 2.035 2.446-1.595 1.483-3.092 2.295-4.11 2.295-.22-.005-.406-.05-.553-.132-.666-.38-.955-1.834-.73-3.703.054-.46.142-.944.25-1.438zm4.56.64c.44.02.89.034 1.345.034.46 0 .915-.01 1.36-.034-.44.572-.895 1.095-1.345 1.565-.455-.47-.91-.993-1.36-1.565z"/></svg>',Wl='<svg role="img" viewBox="0 0 410 404" xmlns="http://www.w3.org/2000/svg"><defs><linearGradient id="vite-a" x1="6" y1="33" x2="235" y2="344" gradientUnits="userSpaceOnUse"><stop stop-color="#41D1FF"/><stop offset="1" stop-color="#BD34FE"/></linearGradient><linearGradient id="vite-b" x1="195" y1="9" x2="236" y2="293" gradientUnits="userSpaceOnUse"><stop stop-color="#FFEA83"/><stop offset=".08" stop-color="#FFDD35"/><stop offset="1" stop-color="#FFA800"/></linearGradient></defs><path fill="url(#vite-a)" d="M399.641 59.525 215.643 388.545c-3.799 6.793-13.559 6.833-17.415.073L10.582 59.556c-4.201-7.366 2.098-16.29 10.446-14.797l184.195 32.923c1.175.21 2.378.208 3.553-.006l180.343-32.87c8.32-1.517 14.649 7.337 10.522 14.72z"/><path fill="url(#vite-b)" d="M292.965 1.574 156.801 28.255c-2.238.439-3.895 2.335-4.03 4.611l-8.376 141.465c-.197 3.332 2.863 5.918 6.115 5.168l37.91-8.749c3.547-.818 6.752 2.306 6.023 5.873l-11.263 55.153c-.758 3.712 2.727 6.886 6.352 5.785l23.415-7.114c3.63-1.102 7.118 2.081 6.35 5.796l-17.899 86.633c-1.12 5.42 6.088 8.374 9.094 3.728l2.008-3.103 110.954-221.428c1.858-3.707-1.346-7.935-5.418-7.15l-39.022 7.532c-3.667.707-6.787-2.708-5.752-6.296l25.469-88.291c1.036-3.594-2.095-6.612-5.764-5.891z"/></svg>',Kl='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M18.665 21.978C16.758 23.255 14.465 24 12 24 5.377 24 0 18.623 0 12S5.377 0 12 0s12 5.377 12 12c0 3.583-1.574 6.801-4.067 9.001L9.219 7.2H7.2v9.596h1.615V9.251l9.85 12.727Zm-3.332-8.533 1.6 2.061V7.2h-1.6v6.245Z"/></svg>',Yl='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="#339933" d="M11.998,24c-0.321,0-0.641-0.084-0.922-0.247l-2.936-1.737c-0.438-0.245-0.224-0.332-0.08-0.383 c0.585-0.203,0.703-0.25,1.328-0.604c0.065-0.037,0.151-0.023,0.218,0.017l2.256,1.339c0.082,0.045,0.197,0.045,0.272,0l8.795-5.076 c0.082-0.047,0.134-0.141,0.134-0.238V6.921c0-0.099-0.053-0.192-0.137-0.242l-8.791-5.072c-0.081-0.047-0.189-0.047-0.271,0 L3.075,6.68C2.99,6.729,2.936,6.825,2.936,6.921v10.15c0,0.097,0.054,0.189,0.139,0.235l2.409,1.392 c1.307,0.654,2.108-0.116,2.108-0.89V7.787c0-0.142,0.114-0.253,0.256-0.253h1.115c0.139,0,0.255,0.112,0.255,0.253v10.021 c0,1.745-0.95,2.745-2.604,2.745c-0.508,0-0.909,0-2.026-0.551L2.28,18.675c-0.57-0.329-0.922-0.945-0.922-1.604V6.921 c0-0.659,0.353-1.275,0.922-1.603l8.795-5.082c0.557-0.315,1.296-0.315,1.848,0l8.794,5.082c0.57,0.329,0.924,0.944,0.924,1.603 v10.15c0,0.659-0.354,1.273-0.924,1.604l-8.794,5.078C12.643,23.916,12.324,24,11.998,24z M19.099,13.993 c0-1.9-1.284-2.406-3.987-2.763c-2.731-0.361-3.009-0.548-3.009-1.187c0-0.528,0.235-1.233,2.258-1.233 c1.807,0,2.473,0.389,2.747,1.607c0.024,0.115,0.129,0.199,0.247,0.199h1.141c0.071,0,0.138-0.031,0.186-0.081 c0.048-0.054,0.074-0.123,0.067-0.196c-0.177-2.098-1.571-3.076-4.388-3.076c-2.508,0-4.004,1.058-4.004,2.833 c0,1.925,1.488,2.457,3.895,2.695c2.88,0.282,3.103,0.703,3.103,1.269c0,0.983-0.789,1.402-2.642,1.402 c-2.327,0-2.839-0.584-3.011-1.742c-0.02-0.124-0.126-0.215-0.253-0.215h-1.137c-0.141,0-0.254,0.112-0.254,0.253 c0,1.482,0.806,3.248,4.655,3.248C17.501,17.007,19.099,15.91,19.099,13.993z"/></svg>',ql='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="#DD2C00" d="M19.455 8.369c-.538-.748-1.778-2.285-3.681-4.569-.826-.991-1.535-1.832-1.884-2.245a146 146 0 0 0-.488-.576l-.207-.245-.113-.133-.022-.032-.01-.005L12.57 0l-.609.488c-1.555 1.246-2.828 2.851-3.681 4.64-.523 1.064-.864 2.105-1.043 3.176-.047.241-.088.489-.121.738-.209-.017-.421-.028-.632-.033-.018-.001-.035-.002-.059-.003a7.46 7.46 0 0 0-2.28.274l-.317.089-.163.286c-.765 1.342-1.198 2.869-1.252 4.416-.07 2.01.477 3.954 1.583 5.625 1.082 1.633 2.61 2.882 4.42 3.611l.236.095.071.025.003-.001a9.59 9.59 0 0 0 2.941.568q.171.006.342.006c1.273 0 2.513-.249 3.69-.742l.008.004.313-.145a9.63 9.63 0 0 0 3.927-3.335c1.01-1.49 1.577-3.234 1.641-5.042.075-2.161-.643-4.304-2.133-6.371m-7.083 6.695c.328 1.244.264 2.44-.191 3.558-1.135-1.12-1.967-2.352-2.475-3.665-.543-1.404-.87-2.74-.974-3.975.48.157.922.366 1.315.622 1.132.737 1.914 1.902 2.325 3.461zm.207 6.022c.482.368.99.712 1.513 1.028-.771.21-1.565.302-2.369.273a8 8 0 0 1-.373-.022c.458-.394.869-.823 1.228-1.279zm1.347-6.431c-.516-1.957-1.527-3.437-3.002-4.398-.647-.421-1.385-.741-2.194-.95.011-.134.026-.268.043-.4.014-.113.03-.216.046-.313.133-.689.332-1.37.589-2.025.099-.25.206-.499.321-.74l.004-.008c.177-.358.376-.719.61-1.105l.092-.152-.003-.001c.544-.851 1.197-1.627 1.942-2.311l.288.341c.672.796 1.304 1.548 1.878 2.237 1.291 1.549 2.966 3.583 3.612 4.48 1.277 1.771 1.893 3.579 1.83 5.375-.049 1.395-.461 2.755-1.195 3.933-.694 1.116-1.661 2.05-2.8 2.708-.636-.318-1.559-.839-2.539-1.599.79-1.575.952-3.28.479-5.072zm-2.575 5.397c-.725.939-1.587 1.55-2.09 1.856-.081-.029-.163-.06-.243-.093l-.065-.026c-1.49-.616-2.747-1.656-3.635-3.01-.907-1.384-1.356-2.993-1.298-4.653.041-1.19.338-2.327.882-3.379.316-.07.638-.114.96-.131l.084-.002c.162-.003.324-.003.478 0 .227.011.454.035.677.07.073 1.513.445 3.145 1.105 4.852.637 1.644 1.694 3.162 3.144 4.515z"/></svg>',Zl='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="m12 1.608 12 20.784H0Z"/></svg>',Jl='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="#635BFF" d="M13.976 9.15c-2.172-.806-3.356-1.426-3.356-2.409 0-.831.683-1.305 1.901-1.305 2.227 0 4.515.858 6.09 1.631l.89-5.494C18.252.975 15.697 0 12.165 0 9.667 0 7.589.654 6.104 1.872 4.56 3.147 3.757 4.992 3.757 7.218c0 4.039 2.467 5.76 6.476 7.219 2.585.92 3.445 1.574 3.445 2.583 0 .98-.84 1.545-2.354 1.545-1.875 0-4.965-.921-6.99-2.109l-.9 5.555C5.175 22.99 8.385 24 11.714 24c2.641 0 4.843-.624 6.328-1.813 1.664-1.305 2.525-3.236 2.525-5.732 0-4.128-2.524-5.851-6.594-7.305h.003z"/></svg>',Ql='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><defs><linearGradient id="vb-a" x1="0.414" y1="0.255" x2="0" y2="0.932" gradientUnits="objectBoundingBox"><stop offset="0" stop-color="#eab308"/><stop offset="1" stop-color="#ca8a04"/></linearGradient><linearGradient id="vb-b" x1="0.338" y1="0.02" x2="0.664" y2="0.966" gradientUnits="objectBoundingBox"><stop offset="0" stop-color="#fde68a"/><stop offset="1" stop-color="#fbbf24"/></linearGradient><linearGradient id="vb-c" y1="0.5" x2="1" y2="0.5" gradientUnits="objectBoundingBox"><stop offset="0" stop-color="#7dd3fc"/><stop offset="1" stop-color="#0ea5e9"/></linearGradient></defs><g transform="translate(-2056 -1899)"><path d="M742.271,987.024c-66.706,0-119.121,54.673-121.874,126.408l-2.551,95.471c-3.967,78.653,71.961,105.52,126.936,105.52Z" transform="translate(1463.458 1004.277)" fill="url(#vb-a)"/><path d="M92.616.01H319.894c54.53-.8,95.624,40.1,98.381,93.335l6.144,135.76c.732,67.368-48.116,94.95-104.525,95.335L92.616,327.374C34.061,327.8-1.063,283.663.022,229.105l3.8-135.76C7.41,33.54,33.3,1.093,92.616.01Z" transform="translate(2118.42 1991.302)" fill="url(#vb-b)"/><path d="M86.844.009H299.958c51.132-.746,89.665,37.307,92.25,86.824l5.761,126.29c.686,62.669-45.117,88.326-98.011,88.685L86.844,304.537C31.938,304.933-1,263.875.02,213.123L3.58,86.834C6.948,31.2,31.222,1.016,86.844.009Z" transform="translate(2136.977 2001.737)" fill="#111827"/><circle cx="27.626" cy="27.626" r="27.626" transform="translate(2421.148 2104.357)" fill="url(#vb-c)"/><circle cx="27.626" cy="27.626" r="27.626" transform="translate(2208.034 2104.357)" fill="url(#vb-c)"/></g></svg>',Xl='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="#FBF0DF" d="M12 22.596c6.628 0 12-4.338 12-9.688 0-3.318-2.057-6.248-5.219-7.986-1.286-.715-2.297-1.357-3.139-1.89C14.058 2.025 13.08 1.404 12 1.404c-1.097 0-2.334.785-3.966 1.821a49.92 49.92 0 0 1-2.816 1.697C2.057 6.66 0 9.59 0 12.908c0 5.35 5.372 9.687 12 9.687v.001ZM10.599 4.715c.334-.759.503-1.58.498-2.409 0-.145.202-.187.23-.029.658 2.783-.902 4.162-2.057 4.624-.124.048-.199-.121-.103-.209a5.763 5.763 0 0 0 1.432-1.977Zm2.058-.102a5.82 5.82 0 0 0-.782-2.306v-.016c-.069-.123.086-.263.185-.172 1.962 2.111 1.307 4.067.556 5.051-.082.103-.23-.003-.189-.126a5.85 5.85 0 0 0 .23-2.431Zm1.776-.561a5.727 5.727 0 0 0-1.612-1.806v-.014c-.112-.085-.024-.274.114-.218 2.595 1.087 2.774 3.18 2.459 4.407a.116.116 0 0 1-.049.071.11.11 0 0 1-.153-.026.122.122 0 0 1-.022-.083a5.891 5.891 0 0 0-.737-2.331Zm-5.087.561c-.617.546-1.282.76-2.063 1-.117 0-.195-.078-.156-.181 1.752-.909 2.376-1.649 2.999-2.778 0 0 .155-.118.188.085 0 .304-.349 1.329-.968 1.874Zm4.945 11.237a2.957 2.957 0 0 1-.937 1.553c-.346.346-.8.565-1.286.62a2.178 2.178 0 0 1-1.327-.62 2.955 2.955 0 0 1-.925-1.553.244.244 0 0 1 .064-.198.234.234 0 0 1 .193-.069h3.965a.226.226 0 0 1 .19.07c.05.053.073.125.063.197Zm-5.458-2.176a1.862 1.862 0 0 1-2.384-.245 1.98 1.98 0 0 1-.233-2.447c.207-.319.503-.566.848-.713a1.84 1.84 0 0 1 1.092-.11c.366.075.703.261.967.531a1.98 1.98 0 0 1 .408 2.114 1.931 1.931 0 0 1-.698.869v.001Zm8.495.005a1.86 1.86 0 0 1-2.381-.253 1.964 1.964 0 0 1-.547-1.366c0-.384.11-.76.32-1.079.207-.319.503-.567.849-.713a1.844 1.844 0 0 1 1.093-.108c.367.076.704.262.968.534a1.98 1.98 0 0 1 .4 2.117 1.932 1.932 0 0 1-.702.868Z"/></svg>',Yt={bun:{svg:`data:image/svg+xml,${encodeURIComponent(Xl)}`,color:"#FBF0DF",name:"Bun"},typescript:{svg:`data:image/svg+xml,${encodeURIComponent(_l)}`,color:"#3178C6",name:"TypeScript"},react:{svg:`data:image/svg+xml,${encodeURIComponent($l)}`,color:"#61DAFB",name:"React"},vite:{svg:`data:image/svg+xml,${encodeURIComponent(Wl)}`,color:"#BD34FE",name:"Vite"},nextjs:{svg:`data:image/svg+xml,${encodeURIComponent(Kl)}`,color:"var(--foreground, #000000)",name:"Next.js"},nodejs:{svg:`data:image/svg+xml,${encodeURIComponent(Yl)}`,color:"#339933",name:"Node.js"},firebase:{svg:`data:image/svg+xml,${encodeURIComponent(ql)}`,color:"#DD2C00",name:"Firebase"},vercel:{svg:`data:image/svg+xml,${encodeURIComponent(Zl)}`,color:"var(--foreground, #000000)",name:"Vercel"},stripe:{svg:`data:image/svg+xml,${encodeURIComponent(Jl)}`,color:"#635BFF",name:"Stripe"},valibot:{svg:`data:image/svg+xml,${encodeURIComponent(Ql)}`,color:"#FBBF24",name:"Valibot"}};import{jsx as ee,jsxs as cc}from"react/jsx-runtime";function ic({techKey:t,variant:e}){let o=Yt[t],[r,n]=jl(!1);if(!o)return null;let a=o.svg.replace("data:image/svg+xml,",""),i=decodeURIComponent(a);return ee(tc,{variant:e,className:"dndev-tech-card",style:{"--tech-color":o.color},"data-hover":r,onMouseEnter:()=>n(!0),onMouseLeave:()=>n(!1),children:cc(rc,{direction:"column",align:"center",gap:"tight",children:[ee("div",{className:"dndev-tech-card-logo","data-tech":t,dangerouslySetInnerHTML:{__html:i}}),ee(nc,{as:"span",level:"small",children:o.name})]})})}function sc({title:t,techs:e,cols:o=3,columns:r,gap:n="medium",separator:a=!1,className:i}){let c=r||(typeof o=="number"?{mobile:o,tablet:o,desktop:o,wide:o}:{mobile:o[0],tablet:o[1],desktop:o[2],wide:o[3]}),l=s=>{if(s==="long")return{cols:2,rows:1};if(s==="high")return{cols:1,rows:2};if(s==="huge")return{cols:2,rows:2}},p=e.filter(s=>Yt[s.name]).map(s=>({id:s.name,content:ee(ic,{techKey:s.name,variant:s.variant}),span:l(s.size)})),m=ee(ec,{items:p,columns:c,gap:n,className:i,ariaLabel:"Technology stack"});return t?ee(oc,{title:t,separator:a,className:"dndev-tech-bento",children:ee("div",{className:"dndev-tech-bento-grid",children:m})}):ee("div",{className:ac("dndev-tech-bento",i),children:m})}var lc=sc;import{Suspense as pc,lazy as dc}from"react";import{useConsent as Ar}from"@donotdev/core";import{jsx as Ir}from"react/jsx-runtime";var mc=dc(()=>Promise.resolve().then(()=>(St(),Ct)));function H2(){let t=Ar("hasConsented"),e=Ar("showBanner");return t&&!e?null:Ir(pc,{fallback:null,children:Ir(mc,{})})}import{Button as uc,ScrollArea as gc}from"@donotdev/components";import{cn as Fr}from"@donotdev/components";import{jsx as Be,jsxs as fc}from"react/jsx-runtime";function Y2({content:t,cta:e,align:o="center",justify:r="center",disableScrollArea:n=!1,contentClassName:a,ctaClassName:i}){return fc("div",{className:"dndev-game-container",children:[Be("div",{className:Fr("dndev-game-container__content",a),"data-align":o,"data-justify":r,children:n?Be("div",{style:{overflow:"auto",overscrollBehavior:"contain"},children:t}):Be(gc,{className:"dndev-game-container__scroll",children:t})}),e&&Be("div",{className:Fr("dndev-game-container__cta",i),children:Be(uc,{onClick:e.onClick,disabled:e.disabled??!1,variant:e.variant??"default",className:"dndev-game-container__cta-button",children:e.label})})]})}import{useEffect as yc,useMemo as hc,Suspense as vc,lazy as bc}from"react";import{jsx as qt}from"react/jsx-runtime";var Rr=new Set;function Q2({screenRegistry:t,currentScreen:e,nextScreen:o,fallback:r=null}){yc(()=>{if(o&&!Rr.has(o)){Rr.add(o);let a=t[o];a&&a().catch(()=>{})}},[o,t]);let n=hc(()=>{if(!e)return null;let a=t[e];return a?bc(a):null},[e,t]);return!e||!n?null:qt("div",{style:{height:"100%"},children:qt(vc,{fallback:r,children:qt(n,{})})})}import{cn as xc,DISPLAY as Zt}from"@donotdev/components";import{useAppConfig as Lr}from"@donotdev/core";import{jsx as lt,jsxs as Sc}from"react/jsx-runtime";var Tc=({display:t=Zt.AUTO,linkToHome:e=!0,className:o})=>{let r=Lr("name"),a=Lr("shortName")||r||"App",i=M.getLogoSvgContent(),c=M.resolveLogo(),l=t===Zt.FULL||t===Zt.AUTO,p=i?lt("div",{className:"app-branding-logo",role:"img","aria-label":a,dangerouslySetInnerHTML:{__html:i}}):M.assetExists(c)?lt("img",{src:c,alt:a,className:"app-branding-logo"}):null,m=l&&lt("span",{className:"app-branding-title","data-display":t,children:a}),s=Sc("div",{className:xc("app-branding",o),"data-display":t,children:[p,m]});return e?lt(C,{path:"/",className:"app-branding-link",children:s}):s},Cc=Tc;import{cn as Er}from"@donotdev/components";import{useAppConfig as Br}from"@donotdev/core";import{jsx as zr}from"react/jsx-runtime";var Mr={sm:{width:"var(--icon-md)",height:"var(--icon-md)"},md:{width:"var(--icon-touch)",height:"var(--icon-touch)"},lg:{width:"var(--icon-touch)",height:"var(--icon-touch)"},xl:{width:"var(--touch-target)",height:"var(--touch-target)"},header:{height:"var(--icon-touch)",width:"auto"}},kc=({alt:t,size:e="header",className:o})=>{let r=t||Br("name")||Br("shortName")||"App",n=M.getLogoSvgContent(),a=M.resolveLogo(),i=typeof e=="string"&&e in Mr?Mr[e]:typeof e=="string"?{}:{width:e,height:e};return n?zr("div",{className:Er("app-icon-header",o),style:{display:"inline-flex",...i},role:"img","aria-label":r,dangerouslySetInnerHTML:{__html:n}}):zr("img",{src:a,alt:r,className:Er(o),style:{objectFit:"contain",...i}})},wc=kc;import{cn as Or}from"@donotdev/components";import{useAppConfig as Ur,useBreakpoint as Dc}from"@donotdev/core";import{jsx as Vr}from"react/jsx-runtime";var Nc=({title:t,className:e,linkToHome:o=!0})=>{let r=Dc("isMobileOrTablet"),n=Ur("name"),a=Ur("shortName"),i=t||r&&a||n||"App",c=Vr("div",{className:Or("dndev-text-base",e),style:{fontSize:"var(--font-size-xl)",fontWeight:700,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",maxWidth:"100%"},children:i});return o?Vr(C,{path:"/",className:Or("dndev-inline-block",e),children:c}):c},Pc=Nc;import{ChevronRight as Ec}from"lucide-react";import{useMemo as Bc}from"react";import{cn as Mc}from"@donotdev/components";import{useTranslation as zc}from"@donotdev/core";import{useLocation as Oc}from"@donotdev/ui/routing/hooks";import{useMemo as Gr}from"react";import{useNavigationStore as v0,getRoutes as Ac,getRouteManifest as b0}from"@donotdev/core";function Ic(){return Gr(()=>{try{let t=Ac();return!t||t.length===0?[]:Fc(t)}catch{return[]}},[])}function Hr(){let t=Ic();return Gr(()=>t.flatMap(e=>e.routes),[t])}function Fc(t){let e=new Map;return t.forEach(o=>{let r=typeof o.path=="string"?o.path:String(o.path);if(!r||r==="undefined"||r==="null")return;let n=o.meta?.entity||Rc(r)||"other",a={path:r,label:o.meta?.title||Lc(r),icon:o.meta?.icon,component:o.component,importPath:o.importPath,exportName:o.exportName,auth:o.auth,meta:o.meta};e.has(n)||e.set(n,{label:n.charAt(0).toUpperCase()+n.slice(1),routes:[]}),e.get(n)?.routes.push(a)}),Array.from(e.values())}function Rc(t){return t.split("/").filter(Boolean)[0]||null}function Lc(t){let e=t.split("/").filter(Boolean),o=e[e.length-1];return o?o.split("-").map(r=>r.charAt(0).toUpperCase()+r.slice(1)).join(" "):"Home"}import{jsx as Me,jsxs as Gc}from"react/jsx-runtime";var Uc=({items:t,separator:e=Ec,showHome:o=!0,homeHref:r="/",variant:n="default",className:a})=>{let{t:i}=zc("dndev"),c=Oc(),l=Hr(),p=Bc(()=>new Set(l.map(g=>g.path)),[l]),m=t||(()=>{let g=c.pathname.split("/").filter(Boolean),d=[],u="";return g.forEach(f=>{u+=`/${f}`;let y=f.split("-").map(h=>h.charAt(0).toUpperCase()+h.slice(1)).join(" "),v=p.has(u)?u:void 0;d.push({label:y,href:v})}),d})(),s=o?[{label:i("navigation.home","Home"),href:r},...m]:m;return n==="smart"&&c.pathname.split("/").filter(Boolean).length<2?null:Me("nav",{role:"navigation","aria-label":"Breadcrumb navigation",className:Mc("breadcrumbs",a),children:s.map((g,d)=>{let f=d===s.length-1||!g.href;return Gc("span",{className:"breadcrumb-item",children:[d>0&&Me(e,{className:"dndev-size-md separator"}),g.icon&&Me(g.icon,{className:"dndev-size-md icon"}),g.href&&!f?Me(C,{path:g.href,className:"breadcrumb-link",children:g.label}):Me("span",{className:"breadcrumb-label",children:g.label})]},d)})})},Vc=Uc;import{useTranslation as Hc,maybeTranslate as _r,useLayout as Jt,useAppConfig as _c}from"@donotdev/core";import{jsx as ve,jsxs as Wc}from"react/jsx-runtime";var $c=({asLink:t=!1,className:e})=>{let o=_c("app"),r=Jt("gameTitle"),n=Jt("gameSubtitle"),a=Jt("gameNamespace"),{t:i}=Hc(a||"dndev"),c=_r(i,r??void 0),l=_r(i,n??void 0),p=o?.name||"Game";if(c)return ve("div",{className:e,children:Wc("div",{style:{textAlign:"center"},children:[ve("h2",{style:{fontSize:"var(--font-size-lg)",fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:c}),l&&ve("p",{style:{color:"var(--muted-foreground)",fontSize:"var(--font-size-sm)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:l})]})});let m=ve("h2",{style:{fontSize:"var(--font-size-lg)",fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:p});return t?ve(C,{path:"/",className:e,style:{fontSize:"var(--font-size-2xl)",fontWeight:700,transition:"color var(--dur-fast) ease-out"},onMouseEnter:s=>s.currentTarget.style.color="var(--primary)",onMouseLeave:s=>s.currentTarget.style.color="var(--foreground)",children:p}):ve("div",{className:e,children:m})};import{Trash2 as Kc}from"lucide-react";import{useState as $r}from"react";import{Button as Yc,BUTTON_VARIANT as qc,Checkbox as Zc,Stack as Qt,useToast as Jc}from"@donotdev/components";import{useTranslation as Qc}from"@donotdev/core";import{useRefresh as Xc}from"@donotdev/ui/routing/hooks";import{jsx as ct,jsxs as Wr}from"react/jsx-runtime";function jc(){let{t}=Qc("dndev"),{toast:e}=Jc(),[o,r]=$r(!1),n=Xc(),[a,i]=$r({localStorage:!0,sessionStorage:!0,applicationCache:!0,serviceWorker:!0,cookies:!0,indexedDB:!0,webSQL:!0,memoryCache:!0}),c=async()=>{try{r(!0);let l=[];if(a.localStorage&&typeof window<"u")try{localStorage.clear(),l.push("localStorage")}catch{}if(a.sessionStorage&&typeof window<"u")try{sessionStorage.clear(),l.push("sessionStorage")}catch{}if(a.indexedDB&&typeof window<"u"&&"indexedDB"in window)try{if("databases"in indexedDB){let m=await indexedDB.databases();await Promise.all(m.map(async s=>{if(s.name){let g=indexedDB.deleteDatabase(s.name);await new Promise((d,u)=>{g.onsuccess=()=>d(void 0),g.onerror=()=>u(g.error)})}}))}l.push("IndexedDB")}catch{}if(a.webSQL&&"openDatabase"in window)try{let m=globalThis.openDatabase("","","","");m&&m.transaction&&m.transaction(s=>{s.executeSql('SELECT name FROM sqlite_master WHERE type="table"',[],(g,d)=>{for(let u=0;u<d.rows.length;u++){let f=d.rows.item(u).name;g.executeSql(`DROP TABLE IF EXISTS ${f}`)}})}),l.push("WebSQL")}catch{}if(a.applicationCache&&"caches"in window)try{let m=await caches.keys();await Promise.all(m.map(async s=>{try{await caches.delete(s)}catch{}})),l.push("Application Cache")}catch{}if(a.serviceWorker&&"serviceWorker"in navigator)try{let m=await navigator.serviceWorker.getRegistrations();await Promise.all(m.map(async s=>{try{await s.unregister()}catch{}})),l.push("Service Workers")}catch{}if(a.cookies)try{document.cookie.split(";").forEach(m=>{let s=m.indexOf("="),g=s>-1?m.substr(0,s):m;document.cookie=`${g.trim()}=;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/`,document.cookie=`${g.trim()}=;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/;domain=${window.location.hostname}`,document.cookie=`${g.trim()}=;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/;domain=.${window.location.hostname}`}),l.push("Cookies")}catch{}if(a.memoryCache)try{"gc"in window&&typeof globalThis.gc=="function"&&globalThis.gc(),l.push("Memory Cache")}catch{}let p=l.length>0?t("settings.clearCache.success","Cache cleared successfully: {{items}}",{items:l.join(", ")}):t("settings.clearCache.noItemsCleared","No cache items were cleared");e("success",p),l.length>0&&setTimeout(()=>{typeof globalThis<"u"&&globalThis._DNDEV_STORES_&&(globalThis._DNDEV_STORES_={}),typeof window<"u"?window.location.href=window.location.href:n()},1e3)}catch{e("error",t("settings.clearCache.error","Error clearing cache"))}finally{r(!1)}};return Wr(Qt,{gap:"medium",children:[ct(Qt,{gap:"medium",children:Object.entries(a).map(([l,p])=>Wr(Qt,{direction:"row",align:"center",gap:"tight",children:[ct(Zc,{id:l,checked:p,onCheckedChange:m=>i(s=>({...s,[l]:!!m}))}),ct("label",{htmlFor:l,style:{fontSize:"var(--font-size-sm)",fontWeight:500,lineHeight:1,cursor:"pointer"},children:t(`settings.clearCache.${l}`,l.charAt(0).toUpperCase()+l.slice(1))})]},l))}),ct(Yc,{variant:qc.DESTRUCTIVE,style:{margin:"0 auto"},disabled:o||!Object.values(a).some(Boolean),onClick:c,icon:Kc,children:o?t("settings.clearCache.clearing","Clearing..."):t("settings.clearCache.button","Clear Cache")})]})}var Xt=jc;import{DropdownMenu as rp,Button as jt,Stack as Yr}from"@donotdev/components";import{Link as ep}from"lucide-react";import{navigationMenuTriggerStylePrimitive as tp}from"@donotdev/components";ne();import{jsx as Kr,jsxs as op}from"react/jsx-runtime";var be=({route:t,showIcons:e=!0})=>{let o=e&&!!t.icon,r=!!t.label;return op(C,{path:t.path,className:tp(),...o&&!r&&{"data-display":"compact"},children:[e&&Kr(L,{icon:t.icon,fallback:ep}),Kr("span",{children:t.label})]})};import{jsx as G}from"react/jsx-runtime";var np=({navigation:t,className:e})=>G(Yr,{role:"navigation",direction:"row",align:"center",className:e,style:{gap:"var(--gap-sm)"},children:t.map((o,r)=>o.routes&&o.routes.length>0?G(rp,{trigger:G(jt,{icon:o.icon,children:o.label}),items:o.routes.map(n=>{let a=n.path?n.external?G("a",{href:n.path,target:"_blank",rel:"noopener noreferrer",style:{display:"flex",alignItems:"center",gap:"var(--gap-sm)",width:"100%"},children:G(be,{route:n})}):G(C,{path:n.path,style:{display:"flex",alignItems:"center",gap:"var(--gap-sm)",width:"100%"},children:G(be,{route:n})}):G(Yr,{direction:"row",align:"center",style:{gap:"var(--gap-sm)",width:"100%"},children:G(be,{route:n})});return{label:n.label,children:a,asChild:!!n.path}}),contentAlign:"start"},o.label+r):o.path?G(jt,{icon:o.icon,"aria-label":o.label,render:({children:n,...a})=>G(C,{path:o.path,...a,children:n}),children:o.label},o.label+r):G(jt,{icon:o.icon,disabled:!0,"aria-label":o.label,children:o.label},o.label+r))}),ap=np;import{Card as ip,cn as sp}from"@donotdev/components";import{jsx as eo}from"react/jsx-runtime";var lp=({languages:t,currentLanguage:e,onLanguageChange:o,className:r})=>eo(ip,{className:sp("dndev-z-modal",r),style:{position:"fixed",bottom:"var(--gap-md)",right:"var(--gap-md)",display:"flex",alignItems:"center",gap:"var(--gap-sm)",transition:"var(--dur-fast) ease-out"},role:"region","aria-label":"Language selector","data-role":"floating",children:eo("select",{style:{backgroundColor:"transparent",outline:"none",fontSize:"var(--font-size-base)",cursor:"pointer"},value:e,onChange:n=>o?.(n.target.value),"aria-label":"Select language",children:t.map(n=>eo("option",{value:n,children:n},n))})}),cp=lp;import{MoreHorizontal as pp}from"lucide-react";import{Button as dp,BUTTON_VARIANT as mp,DropdownMenu as up}from"@donotdev/components";import{jsx as qr}from"react/jsx-runtime";var gp=({children:t,className:e})=>qr(up,{trigger:qr(dp,{variant:mp.GHOST,icon:pp,"aria-label":"Menu",className:e}),contentAlign:"end",children:t}),fp=gp;import{MoreHorizontal as yp}from"lucide-react";import{DISPLAY as ze,DropdownMenu as hp,Button as vp}from"@donotdev/components";import{cn as bp}from"@donotdev/components";import{useBreakpoint as Zr,useTranslation as xp}from"@donotdev/core";fe();import{jsx as pt}from"react/jsx-runtime";var Tp=({className:t="",showIcons:e=!0,display:o=ze.AUTO})=>{let{t:r}=xp("dndev"),n=Zr("isMobile"),a=Zr("isTablet"),i=_();return(o===ze.AUTO?n||a?ze.COMPACT:ze.FULL:o)===ze.COMPACT?pt(hp,{trigger:pt(vp,{variant:"ghost",icon:yp,"aria-label":r("navigation.menu","Navigation"),className:t}),contentAlign:"end",items:i.map(l=>({label:l.label,children:pt(be,{route:l,showIcons:e}),asChild:!0}))}):pt(ir,{overflowDetection:!0,showIcons:e,className:bp(t),style:{flex:1}})},Cp=Tp;import{Bell as Sp}from"lucide-react";import{useMemo as kp,useEffect as wp,useRef as Dp}from"react";import{Button as Np,cn as Pp,toast as Ap,Stack as Ip}from"@donotdev/components";import{jsx as to}from"react/jsx-runtime";var Fp={sm:{button:{width:"var(--icon-md)",height:"var(--icon-md)"},icon:{width:"var(--icon-md)",height:"var(--icon-md)"},badge:{width:"var(--icon-md)",height:"var(--icon-md)",fontSize:"var(--font-size-xs)"}},md:{button:{width:"var(--touch-target)",height:"var(--touch-target)"},icon:{width:"var(--icon-md)",height:"var(--icon-md)"},badge:{width:"var(--icon-md)",height:"var(--icon-md)",fontSize:"var(--font-size-xs)"}},lg:{button:{width:"var(--touch-target)",height:"var(--touch-target)"},icon:{width:"var(--icon-touch)",height:"var(--icon-touch)"},badge:{width:"var(--icon-touch)",height:"var(--icon-touch)",fontSize:"var(--font-size-sm)"}}},Rp=({notifications:t=[],count:e=0,loading:o=!1,onNotificationClick:r,onMarkAllRead:n,onDropdownOpen:a,className:i,maxVisible:c=10,alwaysShow:l=!1,size:p="md",disabled:m=!1})=>{let s=Fp[p],g=Dp(new Set),d=kp(()=>e===0?null:e>99?"99+":e.toString(),[e]),u=e>0||l;return wp(()=>{t.forEach(f=>{if(!g.current.has(f.id)){g.current.add(f.id);let y=f.type==="error"?"error":f.type==="warning"?"warning":f.type==="success"?"success":"info";Ap({title:f.title,description:f.message,toastType:y,duration:0,onDismiss:()=>{g.current.delete(f.id),r&&r(f)}})}})},[t,r]),u?to("div",{className:Pp(i),style:{position:"relative"},children:to(Np,{disabled:m,style:{...s.button,position:"relative"},onFocus:f=>{f.currentTarget.style.outline="2px solid var(--ring)",f.currentTarget.style.outlineOffset="2px"},onBlur:f=>{f.currentTarget.style.outline="none"},"aria-label":`${e} notification${e!==1?"s":""}`,icon:Sp,children:d&&to(Ip,{align:"center",justify:"center",style:{position:"absolute",top:"-0.25rem",right:"-0.25rem",backgroundColor:"var(--destructive)",color:"var(--destructive-foreground)",borderRadius:"var(--radius-full)",fontWeight:600,lineHeight:1,minWidth:0,...s.badge},"aria-hidden":"true",children:d})})}):null},Lp=Rp;import{Settings as Ep,Check as Bp}from"lucide-react";import*as dt from"lucide-react";import{Button as Mp,BUTTON_VARIANT as zp,DropdownMenu as Op,Stack as Up,DISPLAY as Vp}from"@donotdev/components";import{useTranslation as Gp}from"@donotdev/core";import{useLanguageSelector as Hp,useTheme as oo,Flag as _p}from"@donotdev/core";import{jsx as te,jsxs as Kp}from"react/jsx-runtime";function $p({variant:t=zp.OUTLINE}={}){let{t:e}=Gp("dndev"),{languages:o,currentLanguage:r,changeLanguage:n,isLoading:a}=Hp(),i=oo("availableThemes"),c=oo("currentTheme"),l=oo("setTheme"),p=d=>{if(!d)return dt.Palette;let u=d.replace(/['"]/g,"");return dt[u]||dt.Palette},m=i.map(d=>{let u=p(d.meta?.icon),f=d.name===c;return{label:d.displayName||d.name,icon:u,onClick:()=>l(d.name),checked:f}}),s=o.map(d=>{let u=d.id===r;return{label:d.name,onClick:()=>n(d.id),disabled:a,checked:u,className:u?"bg-accent":void 0,iconEnd:u&&!a?Bp:void 0,children:Kp(Up,{direction:"row",align:"center",gap:"tight",children:[te(_p,{code:d.flagCode||d.id,title:`${d.name} flag`}),te("span",{children:d.name}),a&&u&&te("div",{style:{marginInlineStart:"auto"},children:te("div",{style:{width:"0.5rem",height:"0.5rem",borderRadius:"50%",backgroundColor:"var(--primary)"}})})]})}}),g=[{label:e("auth.title","Authentication"),subContent:te(Gt,{display:Vp.COMPACT})},{label:e("settings.theme","Theme"),subItems:m},{label:e("settings.language","Language"),subItems:s},{label:e("settings.clearCache.title","Clear Cache"),subContent:te(Xt,{})}];return te(Op,{trigger:te(Mp,{variant:t,"aria-label":e("settings.title","Settings"),icon:Ep}),items:g,contentWidth:"14rem",contentAlign:"end"})}var Wp=$p;import*as mt from"lucide-react";import{Button as Jr,BUTTON_VARIANT as Yp,DropdownMenu as qp,DISPLAY as Zp}from"@donotdev/components";import{useTranslation as Jp}from"@donotdev/core";import{useTheme as ro}from"@donotdev/core";import{jsx as ao}from"react/jsx-runtime";var no=t=>{if(!t)return mt.Palette;let e=t.replace(/['"]/g,"");return mt[e]||mt.Palette},Qp=({display:t=Zp.AUTO,"no-tooltip":e=!1})=>{let{t:o}=Jp("dndev"),r=ro("availableThemes"),n=ro("currentTheme"),a=ro("setTheme");if(r.length<=1)return null;let i=r.find(v=>v.name===n)||r[0],c=r.length===2?r.find(v=>v.name!==i?.name)||r[0]:null,l=i?no(i.meta?.icon):null,p=c?no(c.meta?.icon):null,m=i?.displayName||i?.name||"Theme",s=c?.displayName||c?.name||"Theme",g=r.length===2&&c&&p,d=g?p:l,u=g?e?void 0:o("common.themeSelector.tooltipWithNext","Change Theme: Switch to {{next}}",{next:c?.displayName||c?.name}):e?void 0:o("common.themeSelector.changeTheme","Change Theme"),f={variant:Yp.OUTLINE,"aria-label":o("common.themeSelector.changeTheme","Change Theme"),tooltip:u,icon:d,display:t};if(g&&c)return ao(Jr,{...f,onClick:()=>a(c.name),children:s});if(!i||!l)return null;let y=r.map(v=>{let h=no(v.meta?.icon),S=v.name===n;return{label:v.displayName||v.name,icon:h,onClick:()=>a(v.name),checked:S}});return ao(qp,{trigger:ao(Jr,{...f,children:m}),items:y,contentWidth:"10rem"})},Xp=Qp;import{useEffect as ed}from"react";import{checkLicense as td}from"@donotdev/core";var jp='<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="512" height="512"><title>logo</title><style>.s0{opacity:.98;fill:#f23d29}.s1{opacity:.99;fill:#03bec4}.s2{opacity:.97;fill:#27494a}</style><g id="Background"><path id="Path 0" fill-rule="evenodd" class="s0" d="m254 41.1c5.8-0.1 15.2 0.4 21 0.9 5.8 0.6 16 2.2 22.8 3.5 6.7 1.4 17.5 4.2 23.9 6.4 6.5 2.1 16.7 6.1 22.8 8.8 6.1 2.7 15.5 7.6 21 10.8 5.5 3.3 14.3 9.2 19.5 13 5.2 3.9 13.8 11.2 19 16.2 5.2 5 12.2 12.3 15.5 16.2 3.3 4 8.8 11.1 12.2 15.9 3.4 4.8 8.7 13.2 11.7 18.7 3 5.5 6.9 13.4 8.7 17.5 1.7 4.1 4.7 12 6.6 17.5 1.9 5.5 4.5 14.5 5.8 20 1.3 5.5 3.1 15.3 3.9 21.8 0.9 6.6 1.6 19 1.6 28.7 0 9.4-0.7 22.1-1.5 28.3-0.8 6.1-3 17.3-4.8 24.7-1.9 7.4-5.5 18.9-8.2 25.5-2.6 6.6-7 16.3-9.8 21.5-2.8 5.2-8 13.8-11.5 19-3.6 5.2-9.3 12.9-12.7 17-3.5 4.1-10.7 11.8-16.2 17-5.4 5.3-12.7 11.9-16.3 14.7-3.6 2.8-11.4 8.3-17.5 12.2-6.1 4-16.4 9.8-23 13.1-6.6 3.2-17.4 7.6-24 9.8-6.6 2.3-17.2 5.2-23.5 6.6-6.3 1.4-16.2 3-22 3.7-6.4 0.7-17.5 1-28.5 0.6-11.9-0.3-21.7-1.2-29-2.6-6.1-1.1-15.9-3.4-22-5.1-6.1-1.7-15.9-5.2-22-7.6-6.1-2.5-15.5-6.9-21-9.8-5.5-2.9-14.1-8-19-11.3-4.9-3.3-12.4-8.7-16.5-12-4.1-3.4-12.5-11.2-18.6-17.4-6.1-6.3-13.9-15.2-17.3-19.9-3.5-4.7-8.8-12.6-11.9-17.5-3-4.9-7.9-13.9-10.8-20-2.9-6.1-7.1-16.4-9.3-23-2.2-6.6-5.1-17.6-6.5-24.5-1.4-6.9-3-17.4-3.7-23.5-0.7-6.7-0.9-17.2-0.6-27 0.4-8.8 1.3-20.5 2.2-26 0.8-5.5 2.7-14.5 4.1-20 1.4-5.5 3.9-14.1 5.5-19 1.7-4.9 6.3-15.8 10.4-24 4-8.3 10-19.1 13.3-24 3.3-4.9 9-12.6 12.5-17 3.6-4.4 11.4-12.8 17.3-18.6 6-5.8 15.4-13.9 20.9-18 5.5-4.1 14.5-10 20-13.2 5.5-3.1 14.5-7.6 20-10.1 5.5-2.4 15.1-6 21.3-8 6.1-2 16.7-4.7 23.5-6.1 6.7-1.3 16.3-2.8 21.2-3.3 4.9-0.5 13.7-1 19.5-1.1zm-21 38c-4.7 0.5-12.1 1.9-16.5 3-4.4 1.1-11.6 3.1-16 4.5-4.4 1.5-13.8 5.4-21 8.9-7.2 3.5-16.1 8.5-20 11.1-3.8 2.6-10 7.2-13.8 10.3-3.7 3.1-6.7 5.9-6.7 6.3 0 0.5 9.3 10.3 20.8 21.9l20.7 21c5.5-10.5 9-16.5 11.5-20.1 2.4-3.6 7.2-9.6 10.5-13.5 3.3-3.8 9.4-9.6 13.5-12.9 4.1-3.2 10.7-7.4 14.5-9.2 3.9-1.8 9.7-4 13-4.9 3.3-0.8 9.6-1.5 14-1.5 4.4 0 10.7 0.7 14 1.6 3.3 0.9 9.1 3.2 13 5.1 3.9 2 9.3 5.2 12 7.3 2.8 2 8.5 7.5 12.9 12.1 4.3 4.6 10.2 11.8 13.1 15.9 2.9 4.1 7.8 12.2 10.8 18 3 5.8 7.1 14.8 9 20 2 5.2 4.2 13 5.1 17.3 0.9 4.2 1.6 11.4 1.6 15.9 0 5.6-0.6 10.6-2.1 15.3-1.1 3.8-3.8 9.9-5.9 13.5-2.1 3.6-5.8 8.9-8.4 11.7-2.5 2.9-4.6 5.6-4.6 6 0 0.5 1.4 1.2 3.2 1.6 1.8 0.4 6.4 2.4 10.3 4.4 3.9 1.9 9 4.9 11.5 6.6 2.5 1.8 7.1 5.9 10.4 9.2 4.2 4.3 7.1 8.6 10.1 15 2.4 4.9 5 11.9 5.9 15.5 0.9 3.6 2.3 11.9 3.2 18.5 1.1 8 1.4 15.9 1.1 23.5l-0.5 11.5 6.3 6.4c6.3-8.1 10.4-13.8 13.1-17.9 2.8-4.1 6.4-10 8.1-13 1.7-3 5.1-10.2 7.6-16 2.5-5.8 5.8-15.2 7.5-21 1.7-5.8 3.7-13.9 4.6-18 0.8-4.1 2-11.9 2.5-17.3 0.6-5.3 1.1-13.5 1.1-18.2 0-4.7-0.5-12.9-1.1-18.3-0.6-5.3-1.9-13.5-2.9-18.2-1-4.7-3.1-12.3-4.5-17-1.5-4.7-5.1-13.4-7.9-19.5-2.9-6.1-7.6-14.8-10.6-19.5-2.9-4.7-7.2-11-9.5-14-2.3-3-7.8-9.3-12.1-13.9-4.3-4.6-12-11.6-16.9-15.6-4.9-4.1-13.1-9.9-18-13-4.9-3.1-13.3-7.7-18.5-10.2-5.2-2.5-13.6-6.1-18.5-7.8-4.9-1.8-14.2-4.5-20.5-5.9-6.3-1.4-17.1-3-24-3.6-6.9-0.5-13.4-0.9-14.5-0.8-1.1 0.1-4.5 0.3-7.5 0.5-3 0.2-9.3 0.8-14 1.4zm-125.4 79.6c-4.3 6.5-9.8 15.9-12.1 20.8-2.4 4.9-5.9 13.7-7.9 19.5-1.9 5.8-4.4 15-5.5 20.5-1.1 5.5-2.5 15.8-3.1 23-0.6 7.2-0.8 16.8-0.5 21.5 0.4 4.7 1.5 13.9 2.5 20.5 1.1 6.6 3.5 17.3 5.4 23.8 2 6.4 5.5 16.1 7.9 21.5 2.3 5.3 6.7 13.8 9.7 18.7 3 4.9 8.1 12.4 11.4 16.5 3.3 4.1 9.8 11.5 14.5 16.3 4.7 4.9 11.8 11.2 15.6 14.2 3.9 2.9 11.1 7.9 16 11 4.9 3.1 13.1 7.6 18 10 4.9 2.4 13.7 5.9 19.5 7.9 5.8 1.9 14.6 4.4 19.5 5.5 4.9 1.1 13.7 2.5 19.5 3.2 6.6 0.7 16.1 0.9 25.5 0.6 9.8-0.4 19.1-1.5 27-3.1 6.6-1.4 16.7-4.1 22.5-6.1 5.8-2 15-5.8 20.5-8.5 5.5-2.7 13.8-7.4 18.5-10.5 4.7-3.2 9.3-6.5 10.3-7.4 1.6-1.5 1.6-1.7-0.5-3.9-1.3-1.2-2.6-2.2-3-2.2-0.5 0-3.4 2-6.5 4.4-3.2 2.4-9.4 6.4-13.8 8.9-4.4 2.6-12.7 6.4-18.5 8.6-5.8 2.2-15.2 5.1-21 6.5-5.8 1.4-14.6 3-19.5 3.7-4.9 0.6-15.7 1.1-24 1.1-8.2 0-19.5-0.7-25-1.6-5.5-0.8-14.7-2.7-20.5-4.1-5.8-1.5-15-4.5-20.5-6.6-5.5-2.2-12.9-5.6-16.5-7.5-3.6-2-10.3-6.1-15-9.2-4.7-3.1-12.7-9.7-17.8-14.7-7.5-7.2-9.5-9.8-10.2-13-0.5-2.2-1-9.9-1-17 0-7.1 0.7-17.3 1.5-22.5 0.8-5.2 2.3-12.8 3.5-16.8 1.1-3.9 3.3-9.8 4.9-12.9 1.6-3.2 4.5-7.8 6.5-10.3 1.9-2.5 6.1-6.6 9.3-9.3 3.2-2.6 9.2-6.5 13.3-8.6 4.1-2.1 9.3-4.4 11.5-5.1 2.2-0.7 4.3-1.5 4.7-1.9 0.4-0.3-1.3-3.1-3.8-6.1-2.5-3-6.1-8.4-8.2-12-2-3.6-4.7-9.9-6-14-1.8-5.6-2.5-10-2.6-17 0-5.2 0.2-11.7 0.5-14.5l0.6-5-49.2-48.5zm117.6 8.2c-4 1.1-9.8 3.1-13 4.3-3.2 1.3-8.4 4.1-11.6 6.3l-5.8 3.9 6.7 6.5c7.5-3.7 9.9-4 24.2-4 13.2 0 17 0.4 20.4 1.8 2.3 0.9 4.5 2.5 5 3.5 0.6 1.2 2 1.7 4.9 1.7 2.8 0 4.2-0.5 4.8-1.7 0.5-1 2.5-2.6 4.5-3.5 3.1-1.5 6.6-1.8 21.7-1.8 9.9 0 19.1 0.5 20.5 1 1.3 0.6 3.1 2 4 3.3 1.1 1.6 1.5 4.8 1.5 11.7 0 7.9-0.4 10.3-2.3 14-1.2 2.4-3.4 5.3-4.7 6.3-1.4 1-4.3 2.2-6.5 2.7-2.2 0.6-7.9 1-12.5 1-4.7 0-10.3-0.4-12.5-1-2.2-0.5-5.2-1.8-6.5-2.8-1.4-1-3.6-3.6-4.8-5.8-1.2-2.1-2.6-6-3-8.6-0.7-4.6-0.9-4.8-4-4.8-3.2 0-3.3 0.2-4.4 5.8-0.6 3.1-1.7 6.9-2.4 8.2-0.7 1.4-2.5 3.7-4.1 5.2-1.6 1.4-4 2.9-5.3 3.3-2.4 0.7-1 2.2 20.5 23.6 12.6 12.6 23.3 22.9 23.7 22.9 0.4 0 4.4-3.5 8.9-7.7 4.5-4.3 10-10.5 12.2-13.8 2.2-3.3 5.5-9.1 7.3-13 1.8-3.8 4.5-11 5.9-16 1.5-4.9 2.9-12.8 3.2-17.5 0.5-6.5 0.2-9.5-1-13-1-2.6-3.5-6.2-5.9-8.5-2.4-2.3-7.7-5.8-11.8-7.8-4.2-2-10.9-4.5-15-5.5-4.2-1.1-11.6-2.5-16.5-3.1-5-0.6-12.6-1-17-0.9-4.4 0-11.2 0.5-15 1-3.9 0.5-10.3 1.8-14.3 2.8zm-13.7 29.2c-0.5 0.9 2 4.1 8.1 10.1 7.5 7.4 9.4 8.7 12.1 8.7 1.8 0 4.2-0.4 5.3-1 1.1-0.5 2.8-2.9 3.9-5.2 1.1-2.4 2-5.8 2-7.8 0.1-1.9-0.6-4.4-1.3-5.5-1.3-1.8-2.8-2-13.3-2.2-6.5-0.1-12.8 0.2-13.9 0.7-1.2 0.5-2.5 1.5-2.9 2.2zm58.5 1.1c-0.8 2.3-0.8 4.4-0.1 7.5 0.6 2.3 2.1 5.3 3.3 6.6 1.6 1.7 3.9 2.6 8.3 3.1 3.3 0.4 8.2 0.5 11 0.1 2.7-0.4 5.7-1.1 6.7-1.7 1-0.5 2.4-2.4 3.3-4.4 0.8-1.9 1.5-5.2 1.5-7.2 0-2.1-0.7-4.8-1.5-6-1.5-2.2-2.1-2.3-15.3-2.2-7.6 0.1-14.3 0.3-14.9 0.6-0.7 0.2-1.7 1.9-2.3 3.6zm-71.9 38c1.7 3.4 5 8.9 7.4 12.2 2.3 3.3 6.9 8.5 10.1 11.6 3.2 3.1 7.9 6.8 10.4 8.2 2.4 1.4 6.5 3.3 9 4.2 2.4 0.8 4.5 1.4 4.7 1.3 0.1-0.2-9.9-10.4-22.3-22.8-12.3-12.3-22.5-22.1-22.5-21.7 0.1 0.4 1.5 3.5 3.2 7z"/><path id="Path 1" class="s1" d="m243 105.6c-3 0.8-8.7 2.9-12.5 4.8-3.8 1.8-10.4 6-14.5 9.2-4.1 3.3-10.2 9.1-13.5 12.9-3.4 3.9-8.4 10.4-11.1 14.5-2.8 4.1-6.5 10.2-8.2 13.5l-3.1 6 14.8 15c9-6.2 15.4-9.4 20.1-11.1 4.7-1.8 12-3.9 16.2-4.8 4.3-0.9 12.4-1.9 18-2.2 6.2-0.4 14.5-0.2 20.8 0.6 5.8 0.6 13.9 2.1 18 3.1 4.1 1.1 10.9 3.6 15 5.6 4.1 2 9.4 5.5 11.8 7.7 2.5 2.4 5 6 5.9 8.6 1.3 3.4 1.5 6.5 1.1 13-0.4 4.7-1.8 12.6-3.2 17.5-1.5 4.9-4.2 12.2-6 16-1.8 3.9-5 9.7-7.3 13-2.2 3.3-8 9.7-12.9 14.3l-8.9 8.3c76.3 76.3 98.8 98 99.2 97.6 0.4-0.5 1-5.7 1.2-11.5 0.2-6.2-0.4-15.7-1.3-22.7-0.9-6.6-2.3-14.9-3.2-18.5-0.9-3.6-3.5-10.6-5.9-15.5-3-6.4-5.9-10.7-10.1-15-3.3-3.3-7.9-7.4-10.4-9.2-2.5-1.7-7.6-4.7-11.5-6.6-3.9-2-8.5-4-10.3-4.4-1.8-0.4-3.2-1.1-3.2-1.5 0-0.5 2.1-3.2 4.6-6 2.6-2.9 6.3-8.2 8.4-11.8 2.1-3.6 4.8-9.6 5.9-13.5 1.5-4.7 2.1-9.7 2.1-15.2 0-4.6-0.7-11.8-1.6-16-0.9-4.3-3.1-12.1-5.1-17.3-1.9-5.2-6-14.2-9-20-3-5.8-7.9-13.9-10.8-18-2.9-4.1-8.8-11.3-13.1-15.9-4.4-4.6-10.2-10.1-12.9-12.1-2.8-2.1-8.1-5.3-12-7.3-3.9-1.9-9.7-4.2-13-5.1-3.3-0.9-9.8-1.5-14.5-1.5-4.7 0-11 0.7-14 1.5zm-78.7 93.9c-0.4 2.2-0.8 8.7-0.7 14.5 0.1 8.3 0.6 12.1 2.5 18 1.4 4.1 4.1 10.4 6.1 14 2.1 3.6 5.7 9 8.2 12 2.5 3 4.2 5.8 3.8 6.1-0.4 0.4-2.5 1.2-4.7 1.9-2.2 0.7-7.4 3-11.5 5.1-4.1 2.1-10.1 6-13.3 8.6-3.2 2.7-7.4 6.8-9.3 9.3-2 2.5-4.9 7.1-6.5 10.3-1.6 3.1-3.8 9-4.9 13-1.2 3.9-2.7 11.5-3.5 16.7-0.8 5.2-1.5 15.4-1.5 22.5 0 7.1 0.5 14.8 1 17 0.7 3.2 2.7 5.8 10.2 13 5.1 5 13.1 11.6 17.8 14.7 4.7 3.1 11.4 7.2 15 9.2 3.6 1.9 11 5.3 16.5 7.5 5.5 2.1 14.7 5.1 20.5 6.6 5.8 1.4 15 3.3 20.5 4.1 5.5 0.9 16.8 1.6 25 1.6 8.3 0 19.1-0.5 24-1.1 4.9-0.7 13.7-2.3 19.5-3.7 5.8-1.4 15.2-4.3 21-6.5 5.8-2.2 14.1-6 18.5-8.6 4.4-2.5 10.8-6.7 14.2-9.2 3.5-2.5 6.3-4.9 6.3-5.3 0-0.5-26.5-27-58.8-59-54.3-53.8-59.2-58.4-63.8-59.8-2.7-0.8-7.4-3-10.4-4.8-3-1.8-7.9-5.7-10.8-8.5-3-2.9-7.3-7.9-9.7-11.2-2.4-3.3-6.4-10.3-8.9-15.5-4.2-8.7-5.6-10.6-18-23l-13.5-13.5z"/><path id="Path 2" fill-rule="evenodd" class="s2" d="m225.8 184c13.2 0 17 0.3 20.3 1.8 2.3 0.9 4.6 2.5 5 3.5 0.6 1.2 2.1 1.7 4.9 1.7 2.8 0 4.3-0.5 4.9-1.8 0.4-0.9 2.5-2.5 4.5-3.5 3-1.4 6.5-1.7 21.6-1.7 9.9 0 19.1 0.4 20.5 1 1.4 0.6 3.2 2 4 3.3 1.2 1.6 1.6 4.8 1.6 11.7-0.1 7.9-0.4 10.3-2.3 13.9-1.3 2.5-3.4 5.3-4.8 6.3-1.4 1-4.3 2.3-6.5 2.8-2.2 0.5-7.8 1-12.5 1-4.7 0-10.3-0.5-12.5-1-2.2-0.5-5.1-1.8-6.5-2.8-1.4-1-3.5-3.6-4.7-5.8-1.3-2.1-2.6-6-3-8.7-0.8-4.5-0.9-4.7-4.1-4.7-3.1 0-3.2 0.2-4.3 5.8-0.6 3.1-1.7 6.8-2.4 8.2-0.7 1.4-2.6 3.7-4.2 5.2-1.5 1.5-3.9 3-5.3 3.3-2 0.6-3.3 0-6.8-3.1-2.4-2.2-4.3-4.2-4.2-4.6 0-0.5 1.3-0.8 3-0.8 1.6 0 3.9-0.4 5-1 1.1-0.6 2.9-2.9 4-5.2 1.1-2.4 2-5.9 2-7.8 0-1.9-0.6-4.4-1.4-5.5-1.3-1.8-2.6-2-14.4-2-11.6 0-13.2 0.2-17.1 4l-4-4.5c-2.1-2.5-3.7-4.8-3.5-5.2 0.2-0.5 1.9-1.5 3.6-2.3 2.5-1 7.5-1.4 19.5-1.5zm44.3 13.3c-0.8 2.3-0.8 4.4-0.1 7.5 0.6 2.3 2.1 5.3 3.3 6.6 1.7 1.7 3.9 2.5 8.3 3.1 3.3 0.4 8.2 0.4 11 0 2.7-0.3 5.8-1.1 6.7-1.6 1-0.5 2.5-2.5 3.3-4.4 0.8-1.9 1.5-5.2 1.5-7.2 0-2.1-0.7-4.8-1.5-6-1.4-2.2-2.1-2.3-15.3-2.2-7.5 0-14.2 0.3-14.9 0.5-0.6 0.3-1.7 2-2.3 3.7zm-40 126.7c0.3-0.1 2.2 2 8 9l-23.5 22.7 22.4 23.8-7.8 8-16.1-15.5c-8.8-8.5-16.2-15.8-16.3-16.2-0.1-0.3 7.3-7.6 16.3-16.2 9.1-8.6 16.7-15.6 17-15.6zm33.5 0l4 0.1c2.2 0.1 5 0.4 6.1 0.7 2.1 0.7 1.8 1.7-19.4 62.7l-5.3-0.3c-3-0.2-5.6-0.5-5.9-0.7-0.3-0.2 4.2-14.4 10-31.4zm20.7 3.9l2.7 1.9c1.4 1.1 8.2 7.3 27.6 26l-15.5 15.6c-8.5 8.6-16 15.6-16.7 15.6-0.7 0-2.9-2-8.3-8.5l23.2-22-6.8-6.7c-3.8-3.7-8.1-7.6-9.6-8.8-1.5-1.1-2.8-2.5-2.9-3.1 0-0.6 1.4-3.1 3.1-5.5z"/></g></svg>',Qr=`data:image/svg+xml,${encodeURIComponent(jp)}`;import{jsx as io,jsxs as Xr}from"react/jsx-runtime";function Xy(){let t=td();return ed(()=>{t.isValid},[t.isValid]),t.isValid?null:Xr("a",{href:"https://donotdev.com/pricing",target:"_blank",rel:"noopener noreferrer",style:{position:"fixed",right:"20px",top:"50%",transform:"translateY(-50%)",zIndex:9999,display:"flex",alignItems:"center",gap:"12px",padding:"12px 16px",backgroundColor:"rgba(255, 255, 255, 0.95)",border:"2px solid rgba(242, 61, 41, 0.3)",borderRadius:"8px",boxShadow:"0 4px 12px rgba(0, 0, 0, 0.15)",textDecoration:"none",transition:"all 0.2s ease",cursor:"pointer",opacity:.9},onMouseEnter:e=>{e.currentTarget.style.opacity="1",e.currentTarget.style.transform="translateY(-50%) scale(1.05)"},onMouseLeave:e=>{e.currentTarget.style.opacity="0.9",e.currentTarget.style.transform="translateY(-50%) scale(1)"},children:[io("img",{src:Qr,alt:"DoNotDev Logo",style:{width:"48px",height:"48px",flexShrink:0}}),Xr("div",{style:{display:"flex",flexDirection:"column",gap:"2px"},children:[io("div",{style:{fontFamily:"system-ui, sans-serif",fontSize:"13px",fontWeight:"600",color:"#27494a",lineHeight:"1.2"},children:"DoNotDev"}),io("div",{style:{fontFamily:"system-ui, sans-serif",fontSize:"11px",fontWeight:"500",color:"#f23d29",lineHeight:"1.2"},children:"Get License"})]})]})}import{Stack as Dm}from"@donotdev/components";import{Mail as od,Calendar as rd,Clock as nd}from"lucide-react";import{useState as ad}from"react";import{Skeleton as jr,Badge as id,BADGE_VARIANT as sd,Text as ut,cn as en,CopyToClipboard as tn,Stack as Oe}from"@donotdev/components";import{getWeekFromISOString as ld}from"@donotdev/core";import{jsx as O,jsxs as xe}from"react/jsx-runtime";var cd=({config:t,value:e,t:o,className:r,loading:n=!1,showCopy:a=!1,asBadge:i=!1,truncate:c=!1,maxLength:l=50,showLabel:p=!1})=>{let[m,s]=ad(!1),g=async()=>{try{await navigator.clipboard.writeText(e),s(!0),setTimeout(()=>s(!1),2e3)}catch{}},d=()=>{switch(t.type){case"email":return O(od,{});case"month":case"week":return O(rd,{});case"time":return O(nd,{});default:return null}},u=h=>{if(!h)return null;switch(t.type){case"email":return xe("a",{href:`mailto:${h}`,style:{display:"flex",alignItems:"center",gap:"var(--gap-sm)"},onMouseEnter:S=>S.currentTarget.style.textDecoration="underline",onMouseLeave:S=>S.currentTarget.style.textDecoration="none",children:[d(),h]});case"month":return new Date(h).toLocaleDateString("en-US",{year:"numeric",month:"long"});case"week":return ld(h);case"time":return new Date(`2000-01-01T${h}`).toLocaleTimeString();default:return h}},f=h=>!c||h.length<=l?h:`${h.substring(0,l)}...`;if(n)return xe(Oe,{gap:"tight",children:[p&&O(jr,{style:{height:"1rem",width:"6rem"}}),O(jr,{className:"dndev-w-full",style:{height:"1.5rem"}})]});if(!e)return xe(Oe,{gap:"tight",children:[p&&O(ut,{as:"span",variant:"muted",children:t.label||t.name}),O(ut,{as:"span",variant:"muted",className:en(r),style:{fontStyle:"italic"},children:o("common.noValue",{defaultValue:"No value"})})]});let y=u(e),v=f(String(y));return i?xe(Oe,{direction:"row",align:"center",gap:"tight",children:[d(),O(id,{variant:sd.SECONDARY,className:r,children:v}),a&&O(tn,{text:e,tooltipText:o("copyToClipboard")||"Copy to clipboard",copiedTooltipText:o("copied")||"Copied!",ariaLabel:o("copyToClipboard")||"Copy to clipboard"})]}):xe(Oe,{gap:"tight",children:[p&&O(ut,{as:"span",variant:"muted",children:t.label||t.name}),xe(Oe,{direction:"row",align:"center",gap:"tight",children:[O("div",{className:en("dndev-flex-1",c&&"truncate",r),title:c&&e.length>l?e:void 0,children:O(ut,{as:"span",children:v})}),a&&O(tn,{text:e,tooltipText:o("copyToClipboard")||"Copy to clipboard",copiedTooltipText:o("copied")||"Copied!",ariaLabel:o("copyToClipboard")||"Copy to clipboard"})]})]})},gt=cd;import{Badge as pd,Text as dd}from"@donotdev/components";import{jsx as on}from"react/jsx-runtime";var md=({config:t,value:e,t:o,className:r})=>{if(e==null)return on(dd,{as:"span",variant:"muted",className:r,children:"-"});let n=typeof e=="boolean"?o(e?"common.yes":"common.no"):String(e);return on(pd,{variant:typeof e=="boolean"?e?"default":"secondary":"outline",className:r,children:n})},so=md;import{Avatar as ud,Text as gd}from"@donotdev/components";import{jsx as rn}from"react/jsx-runtime";var fd=({config:t,value:e,t:o,className:r,size:n="md"})=>{if(!e)return rn(gd,{as:"span",variant:"muted",className:r,children:"-"});let a={sm:"size-touch",md:"size-touch",lg:"h-16 w-16"},i=c=>c.split(" ").map(l=>l.charAt(0)).slice(0,2).join("").toUpperCase();return rn(ud,{src:e,alt:t.label||"Avatar",fallback:i(t.label||"AV"),className:`${a[n]} ${r||""}`})},lo=fd;import{Text as yd}from"@donotdev/components";import{jsx as nn}from"react/jsx-runtime";var hd=({config:t,value:e,t:o,className:r})=>{if(!e)return nn(yd,{as:"span",variant:"muted",className:r,children:"-"});let a=(()=>{switch(t.type){case"email":return{href:`mailto:${e}`,"aria-label":o("common.sendEmailTo",{email:e})};case"tel":return{href:`tel:${e}`,"aria-label":o("common.callNumber",{number:e})};default:return{href:e,target:"_blank",rel:"noopener noreferrer","aria-label":o("common.openLink")}}})();return nn("a",{...a,className:r||"",style:{color:"var(--primary)",textDecoration:"none"},onMouseEnter:i=>i.currentTarget.style.textDecoration="underline",onMouseLeave:i=>i.currentTarget.style.textDecoration="none",children:e})},co=hd;import{Text as Ue,Spinner as vd}from"@donotdev/components";import{jsx as Te,jsxs as xd}from"react/jsx-runtime";var bd=({config:t,value:e,t:o,className:r,loading:n=!1})=>{if(n)return Te(vd,{className:r});if(!e)return Te(Ue,{as:"span",variant:"muted",className:r,children:"-"});try{let a=new Date(e),i=a.toLocaleDateString(),c=a.toLocaleTimeString();return t.type==="date"?Te(Ue,{as:"span",className:r,children:i}):xd("div",{className:r,children:[Te(Ue,{as:"span",children:i}),Te(Ue,{as:"span",variant:"muted",level:"small",children:c})]})}catch{return Te(Ue,{as:"span",variant:"muted",className:r,children:"-"})}},po=bd;import{Text as an,Spinner as Td}from"@donotdev/components";import{jsx as mo}from"react/jsx-runtime";var Cd=({config:t,value:e,t:o,className:r,loading:n=!1})=>n?mo(Td,{className:r}):e==null?mo(an,{as:"span",variant:"muted",className:r,children:"-"}):mo(an,{as:"span",className:`font-mono ${r||""}`,children:e.toLocaleString()}),uo=Cd;import{Text as Sd}from"@donotdev/components";import{jsx as sn}from"react/jsx-runtime";var kd=({config:t,value:e,t:o,className:r})=>e?sn("a",{href:`tel:${e}`,className:r||"",style:{color:"var(--primary)",textDecoration:"none"},onMouseEnter:n=>n.currentTarget.style.textDecoration="underline",onMouseLeave:n=>n.currentTarget.style.textDecoration="none","aria-label":o("common.callNumber",{number:e}),children:e}):sn(Sd,{as:"span",variant:"muted",className:r,children:"-"}),go=kd;import{Text as ln}from"@donotdev/components";import{jsx as cn}from"react/jsx-runtime";var wd=({config:t,value:e,t:o,className:r})=>e?cn(ln,{as:"div",level:"small",className:`whitespace-pre-wrap ${r||""}`,children:e}):cn(ln,{as:"span",variant:"muted",className:r,children:"-"}),fo=wd;import{Text as Dd}from"@donotdev/components";import{jsx as yo,jsxs as Pd}from"react/jsx-runtime";var Nd=({config:t,value:e,t:o,className:r})=>!e||e.trim()===""?yo(Dd,{as:"span",variant:"muted",className:r,children:"-"}):Pd("div",{className:r,style:{padding:"var(--gap-md)",backgroundColor:"var(--muted)",borderRadius:"var(--radius-md)",border:"1px solid var(--border)",minHeight:"38px"},children:[yo("div",{dangerouslySetInnerHTML:{__html:e},style:{outline:"none",fontSize:"var(--font-size-base)",lineHeight:"1.6"},className:"prose prose-sm max-w-none"}),yo("style",{children:`
6
- /* Match Tiptap ProseMirror styling */
7
- .prose p {
8
- margin: 0.5em 0;
9
- }
10
- .prose p:first-child {
11
- margin-top: 0;
12
- }
13
- .prose p:last-child {
14
- margin-bottom: 0;
15
- }
16
- .prose h1 {
17
- font-size: var(--font-size-2xl);
18
- font-weight: 600;
19
- margin: 0.5em 0;
20
- }
21
- .prose h2 {
22
- font-size: var(--font-size-xl);
23
- font-weight: 600;
24
- margin: 0.5em 0;
25
- }
26
- .prose h3 {
27
- font-size: var(--font-size-lg);
28
- font-weight: 600;
29
- margin: 0.5em 0;
30
- }
31
- .prose ul, .prose ol {
32
- padding-left: 1.5em;
33
- margin: 0.5em 0;
34
- }
35
- .prose li {
36
- margin: 0.25em 0;
37
- }
38
- .prose strong {
39
- font-weight: 600;
40
- }
41
- .prose em {
42
- font-style: italic;
43
- }
44
- .prose code {
45
- background: var(--muted);
46
- padding: 0.2em 0.4em;
47
- border-radius: var(--radius-sm);
48
- font-family: monospace;
49
- font-size: 0.9em;
50
- }
51
- .prose blockquote {
52
- border-left: 3px solid var(--border);
53
- padding-left: 1em;
54
- margin: 0.5em 0;
55
- color: var(--muted-foreground);
56
- font-style: italic;
57
- }
58
- .prose a {
59
- color: var(--primary);
60
- text-decoration: underline;
61
- }
62
- .prose a:hover {
63
- color: var(--primary-hover);
64
- }
65
- `})]}),ho=Nd;import{Badge as Ad,Text as Id}from"@donotdev/components";import{jsx as pn}from"react/jsx-runtime";var Fd=({config:t,value:e,t:o,className:r})=>{if(e==null)return pn(Id,{as:"span",variant:"muted",className:r,children:"-"});let n=o(e?"common.yes":"common.no");return pn(Ad,{variant:e?"default":"secondary",className:r,children:n})},vo=Fd;import{Badge as Rd,BADGE_VARIANT as Ld,Text as Ed}from"@donotdev/components";import{jsx as dn}from"react/jsx-runtime";var Bd=({config:t,value:e,t:o,className:r})=>e?dn(Rd,{variant:Ld.OUTLINE,className:r,children:e}):dn(Ed,{as:"span",variant:"muted",className:r,children:"-"}),bo=Bd;import{Badge as Md,BADGE_VARIANT as zd,Text as Od,Stack as Ud}from"@donotdev/components";import{jsx as xo}from"react/jsx-runtime";var Vd=({config:t,value:e,t:o,className:r})=>!e||!Array.isArray(e)||e.length===0?xo(Od,{as:"span",variant:"muted",className:r,children:"-"}):xo(Ud,{direction:"row",wrap:"wrap",gap:"medium",className:r,children:e.map((n,a)=>xo(Md,{variant:zd.OUTLINE,children:String(n)},a))}),To=Vd;import{Badge as Gd,BADGE_VARIANT as Hd,Text as _d,Stack as $d}from"@donotdev/components";import{jsx as Co}from"react/jsx-runtime";var Wd=({config:t,value:e,t:o,className:r})=>!e||!Array.isArray(e)||e.length===0?Co(_d,{as:"span",variant:"muted",className:r,children:"-"}):Co($d,{direction:"row",wrap:"wrap",gap:"medium",className:r,children:e.map((n,a)=>Co(Gd,{variant:Hd.OUTLINE,children:String(n)},a))}),So=Wd;import{Badge as Kd,BADGE_VARIANT as Yd,Text as qd}from"@donotdev/components";import{jsx as mn}from"react/jsx-runtime";var Zd=({config:t,value:e,t:o,className:r})=>e?mn(Kd,{variant:Yd.OUTLINE,className:r,children:e}):mn(qd,{as:"span",variant:"muted",className:r,children:"-"}),ko=Zd;import{Text as un}from"@donotdev/components";import{jsx as gn}from"react/jsx-runtime";var Jd=({config:t,value:e,t:o,className:r})=>e==null?gn(un,{as:"span",variant:"muted",className:r,children:"-"}):gn(un,{as:"span",className:`font-mono ${r||""}`,children:e}),Qd=Jd;import{Badge as Xd,BADGE_VARIANT as jd,Text as fn,Stack as em}from"@donotdev/components";import{jsx as yn,jsxs as hn}from"react/jsx-runtime";var tm=({config:t,value:e,t:o,className:r})=>e?hn(em,{direction:"row",align:"center",gap:"medium",className:r,children:[yn(fn,{as:"span",level:"small",children:e.name}),e.size&&hn(Xd,{variant:jd.SECONDARY,children:[(e.size/1024).toFixed(1)," KB"]})]}):yn(fn,{as:"span",variant:"muted",className:r,children:"-"}),wo=tm;import{Avatar as om,Text as rm}from"@donotdev/components";import{jsx as vn}from"react/jsx-runtime";var nm=({config:t,value:e,t:o,className:r,size:n="md"})=>{if(!e)return vn(rm,{as:"span",variant:"muted",className:r,children:"-"});let a={sm:"size-touch",md:"size-touch",lg:"h-16 w-16"},i=c=>c.split(" ").map(l=>l.charAt(0)).slice(0,2).join("").toUpperCase();return vn(om,{src:e,alt:t.label||"Image",fallback:i(t.label||"IMG"),className:`${a[n]} ${r||""}`})},Do=nm;import{Text as bn}from"@donotdev/components";import{jsx as im,jsxs as sm}from"react/jsx-runtime";var am=({config:t,value:e,t:o,className:r})=>!e||e.lat===void 0&&e.lng===void 0?im(bn,{as:"span",variant:"muted",className:r,children:"-"}):sm(bn,{as:"div",level:"small",className:`font-mono ${r||""}`,children:[e.lat?.toFixed(6),", ",e.lng?.toFixed(6)]}),No=am;import{Text as xn}from"@donotdev/components";import{jsx as cm,jsxs as pm}from"react/jsx-runtime";var lm=({config:t,value:e,t:o,className:r})=>!e||e.lat===void 0&&e.lng===void 0?cm(xn,{as:"span",variant:"muted",className:r,children:"-"}):pm(xn,{as:"div",level:"small",className:`font-mono ${r||""}`,children:[e.lat?.toFixed(6),", ",e.lng?.toFixed(6)]}),Po=lm;import{Badge as dm,BADGE_VARIANT as mm,Text as um}from"@donotdev/components";import{jsx as Tn}from"react/jsx-runtime";var gm=({config:t,value:e,t:o,className:r})=>{if(!e)return Tn(um,{as:"span",variant:"muted",className:r,children:"-"});let n=e.displayName||e.name||e.id||e;return Tn(dm,{variant:mm.OUTLINE,className:r,children:String(n)})},Ao=gm;import{Text as ft}from"@donotdev/components";import{jsx as yt,jsxs as ym}from"react/jsx-runtime";var fm=({config:t,value:e,t:o,className:r})=>{if(!e)return yt(ft,{as:"span",variant:"muted",className:r,children:"-"});try{let n=new Date(e),a=n.toLocaleDateString(),i=n.toLocaleTimeString();return ym("div",{className:r,children:[yt(ft,{as:"span",children:a}),yt(ft,{as:"span",variant:"muted",level:"small",children:i})]})}catch{return yt(ft,{as:"span",variant:"muted",className:r,children:"-"})}},Io=fm;var hm=()=>null,Fo=hm;var vm=()=>null,Ro=vm;import{Eye as bm,EyeOff as xm}from"lucide-react";import{useState as Tm}from"react";import{Skeleton as Cm,Button as Sm,CopyToClipboard as km,Stack as Cn}from"@donotdev/components";import{jsx as ce,jsxs as Sn}from"react/jsx-runtime";var wm=({config:t,value:e,t:o,className:r,loading:n=!1})=>{let[a,i]=Tm(!1);return n?ce(Cm,{className:r}):e?Sn(Cn,{direction:"row",align:"center",gap:"medium",className:r,children:[ce("span",{style:{fontFamily:"monospace"},children:a?e:"\u2022\u2022\u2022\u2022\u2022\u2022\u2022\u2022"}),Sn(Cn,{direction:"row",align:"center",gap:"tight",children:[ce(Sm,{type:"button",onClick:()=>i(!a),"aria-label":a?"Hide password":"Show password",children:a?ce(xm,{}):ce(bm,{})}),ce(km,{text:e,tooltipText:o("copyToClipboard")||"Copy to clipboard",copiedTooltipText:o("copied")||"Copied!",ariaLabel:o("copyPassword")||"Copy password"})]})]}):ce("div",{style:{color:"var(--muted-foreground)"},children:"-"})},kn=wm;import{Fragment as wn,jsx as T,jsxs as Nm}from"react/jsx-runtime";function Lo({name:t,config:e,t:o,value:r,className:n}){let a=()=>{switch(e.type){case"password":return T(kn,{config:e,value:r,t:o,className:n,loading:!1});case"text":case"email":case"month":case"week":case"time":return T(gt,{config:e,value:r,t:o,className:n});case"avatar":return T(lo,{config:e,value:r,t:o,className:n});case"badge":return T(so,{config:e,value:r,t:o,className:n});case"boolean":case"checkbox":return T(vo,{config:e,value:r,t:o,className:n});case"array":return T(So,{config:e,value:r,t:o,className:n});case"multiselect":return T(To,{config:e,value:r,t:o,className:n});case"image":return T(Do,{config:e,value:r,t:o,className:n});case"url":return T(co,{config:e,value:r,t:o,className:n});case"tel":return T(go,{config:e,value:r,t:o,className:n});case"color":return r&&typeof r=="string"?Nm(Dm,{direction:"row",align:"center",gap:"tight",children:[T("div",{style:{backgroundColor:r,width:"1.5rem",height:"1.5rem"},"aria-label":`Color: ${r}`}),T("span",{style:{fontFamily:"monospace"},children:r})]}):T("span",{style:{color:"var(--muted-foreground)"},children:"-"});case"number":case"range":return T(uo,{config:e,value:r,t:o,className:n});case"date":case"datetime-local":return T(po,{config:e,value:r,t:o,className:n});case"timestamp":return T(Io,{config:e,value:r,t:o,className:n});case"reference":return T(Ao,{config:e,value:r,t:o,className:n});case"file":return T(wo,{config:e,value:r,t:o,className:n});case"geopoint":return T(No,{config:e,value:r,t:o,className:n});case"map":return T(Po,{config:e,value:r,t:o,className:n});case"textarea":return T(fo,{config:e,value:r,t:o,className:n});case"richtext":return T(ho,{config:e,value:r,t:o,className:n});case"select":return T(bo,{config:e,value:r,t:o,className:n});case"radio":return T(ko,{config:e,value:r,t:o,className:n});case"hidden":return T(Fo,{config:e,value:r,t:o,className:n});case"submit":case"reset":return T(Ro,{config:e,value:r,t:o,className:n});default:return T(gt,{config:e,value:r,t:o,className:n})}};if(e.visibility==="hidden")return T(wn,{});let i=a();return i?T("div",{className:n,children:i}):T(wn,{})}import{Stack as Dn}from"@donotdev/components";import{useTranslation as Pm}from"@donotdev/core";import{jsx as Ve,jsxs as Im}from"react/jsx-runtime";function Am({entity:t,data:e,t:o,className:r="",loading:n=!1}){let{t:a}=Pm("dndev"),i=o||a,c=Object.entries(t);return n?Ve(Dn,{gap:"medium",className:r,children:c.map(([l])=>Im("div",{className:"dndev-animate-pulse",children:[Ve("div",{style:{marginBottom:"var(--gap-sm)",height:"1rem",width:"25%"}}),Ve("div",{style:{height:"2rem",backgroundColor:"var(--muted)"}})]},l))}):Ve(Dn,{gap:"medium",className:r,children:c.map(([l,p])=>Ve(Lo,{name:l,config:p,value:e[l],t:i},l))})}import{createContext as Pn,useId as Fm,use as Nn}from"react";import{Controller as Rm,FormProvider as Lm,useFormContext as Em}from"react-hook-form";import{Label as Bm,Slot as Mm,cn as zm,Stack as Om}from"@donotdev/components";import{jsx as oe}from"react/jsx-runtime";var i3=Lm,An=Pn({}),s3=({...t})=>oe(An.Provider,{value:{name:t.name},children:oe(Rm,{...t})}),In=Pn({}),l3=({className:t,...e})=>{let o=Fm();return oe(In.Provider,{value:{id:o},children:oe(Om,{gap:"medium",className:t,...e})})},ht=()=>{let t=Nn(An);if(!t||!t.name)return null;let e=Nn(In);if(!e)return null;let{getFieldState:o,formState:r}=Em(),n=o(t.name,r),{id:a}=e;return{id:a,name:t.name,formItemId:`${a}-form-item`,formDescriptionId:`${a}-form-item-description`,formMessageId:`${a}-form-item-message`,...n}},c3=({className:t,...e})=>{let o=ht();if(!o)return null;let{error:r,formItemId:n}=o;return oe(Bm,{className:zm(r&&"text-destructive",t),htmlFor:n,...e})},p3=({...t})=>{let e=ht();if(!e)return null;let{error:o,formItemId:r,formDescriptionId:n,formMessageId:a}=e;return oe(Mm,{id:r,"aria-describedby":o?`${n} ${a}`:`${n}`,"aria-invalid":!!o,...t})},d3=({className:t,...e})=>{let o=ht();if(!o)return null;let{formDescriptionId:r}=o;return oe("p",{id:r,className:t,style:{fontSize:"var(--font-size-sm)",color:"var(--muted-foreground)"},...e})},m3=({className:t,children:e,...o})=>{let r=ht();if(!r)return null;let{error:n,formMessageId:a}=r,i=n?String(n?.message):e;return i?oe("p",{id:a,className:t,style:{fontSize:"var(--font-size-sm)",fontWeight:500,color:"var(--destructive)"},...o,children:i}):null};var Um={layoutContainer:"dndev-layout",sidebar:"sidebar",sidebarTop:"sidebar-top",sidebarContent:"sidebar-content",sidebarBottom:"sidebar-bottom",sidebarResizeHandle:"dndev-sidebar-resize-handle",header:"header",main:"main",footer:"footer",container:"dndev-container",pageContainer:"dndev-container",breadcrumbsContainer:"breadcrumbs-container"},Vm={zHeader:"dndev-z-header",zSidebar:"dndev-z-sidebar",zOverlay:"dndev-z-overlay",zModal:"dndev-z-modal",zTooltip:"dndev-z-tooltip",zToast:"dndev-z-toast"},x3={...Um,...Vm},T3={headerHeight:"--header-height",headerPadding:"--header-padding",headerIconSize:"--header-icon-size",headerLogoMaxHeight:"--header-logo-max-height",sidebarWidth:"--sidebar-width",sidebarPadding:"--sidebar-padding",mainPadding:"--main-padding",mainMaxWidth:"--main-max-width",contentWidth:"--content-width",contentPadding:"--content-padding",footerHeight:"--footer-height",footerPadding:"--footer-padding",zHeader:"--z-header",zSidebar:"--z-sidebar",zFooter:"--z-footer",zOverlay:"--z-overlay",zModal:"--z-modal",zTooltip:"--z-tooltip",zToast:"--z-toast"},C3={headerHeight:"--header-height",headerPadding:"--header-padding",logoSize:"--logo-size",sidebarWidth:"--sidebar-width",sidebarPadding:"--sidebar-padding",footerHeight:"--footer-height",footerPadding:"--footer-padding",layoutGap:"--layout-gap",sectionGap:"--gap-lg",contentGap:"--content-gap",zHeader:"--z-header",zSidebar:"--z-sidebar",zFooter:"--z-footer",zModal:"--z-modal",zTooltip:"--z-tooltip"};export{Cc as AppBranding,wc as AppIcon,qs as AppLoading,Pc as AppTitle,M as AssetResolver,ua as AuthGuard,l1 as AuthGuardFallback,Gt as AuthHeader,Ut as AuthMenu,lo as AvatarFieldDisplay,so as BadgeFieldDisplay,Vc as Breadcrumbs,Ro as ButtonFieldDisplay,Xt as CacheSettings,vo as CheckboxFieldDisplay,H2 as ConsentBanner,po as DateFieldDisplay,Lo as DisplayFieldRenderer,ir as DnDevNavigationMenu,bo as DropdownDisplay,ap as DropdownNavigation,Am as EntityDisplayRenderer,Hl as FeatureCard,rl as FeatureDisabled,wo as FileFieldDisplay,cp as FloatingLanguageSwitcher,i3 as Form,p3 as FormControl,d3 as FormDescription,s3 as FormField,l3 as FormItem,c3 as FormLabel,m3 as FormMessage,Y2 as GameContainer,Q2 as GameFlow,$c as GameTitle,No as GeoPointFieldDisplay,g1 as GoTo,Li as GoToInput,wi as GoToWrapper,fp as HeaderMenu,Cp as HeaderNavigation,Fo as HiddenFieldDisplay,Bn as Icon,Do as ImageFieldDisplay,Xy as LicenseWatermark,C as Link,co as LinkFieldDisplay,_e as Loader,yl as LoadingContainerOverlay,at as LoadingMessage,sl as LoadingMessageAlmostDone,ll as LoadingMessageComplete,ml as LoadingMessageConnecting,il as LoadingMessageProcessing,cl as LoadingMessageSaving,dl as LoadingMessageSearching,al as LoadingMessageSimple,pl as LoadingMessageUploading,hl as LoadingOverlay,xl as LoadingScreen,Po as MapFieldDisplay,To as MultiDropdownDisplay,So as MultiInputTextFieldDisplay,sr as NotFoundPage,Lp as Notifications,uo as NumberFieldDisplay,Je as PageContainer,go as PhoneNumberDisplay,Ll as ProgressBar,ko as RadioFieldDisplay,Qd as RangeFieldDisplay,Il as RedirectOverlay,Ao as ReferenceFieldDisplay,ho as RichTextDisplay,Wp as SettingsMenu,Ml as Skeleton,lc as TechBento,fo as TextAreaDisplay,gt as TextFieldDisplay,Xp as ThemeToggle,Io as TimestampFieldDisplay,x3 as allLayoutClasses,Hg as checkFormNavigationSafe,Iu as createAuthConfig,C3 as cssVariables,lu as isAuthAvailable,qg as isBillingAvailable,Vg as isFormStoreAvailable,of as isOAuthAvailable,Um as layoutClasses,Vm as layoutUtilities,T3 as layoutVariables,zg as resolveFaviconSet,Mg as resolveLogo,lf as tList,Yt as techLogos,k as useAuthSafe,Pu as useAuthState,tt as useAuthVisibility,Sg as useBack,Xg as useBillingVisibility,wu as useCanAccess,ga as useCanNavigate,ht as useFormField,Et as useFormStoreSafe,Zo as useGoTo,Gg as useHasDirtyFormsSafe,Nu as useHasRole,Dg as useLocation,Ig as useMatch,Cg as useNavigate,_ as useNavigationItems,tf as useOAuthSafe,Ng as useParams,wg as usePrefetch,Fg as useQueryParams,Rg as useRedirectGuard,kg as useRefresh,Pg as useRouteParam,Ag as useSearchParams,Mt as useStripeBillingSafe,Du as useUserRole,Au as withAuth};
3
+ `);try{await navigator.clipboard.writeText(h),i(!0),setTimeout(()=>i(!1),2e3)}catch{}},m=()=>{try{t()}catch{typeof window<"u"&&window.location.reload()}},f=()=>{try{c()}catch{typeof window<"u"&&window.history.back()}};return _("div",{className:"dndev-container","data-variant":"standard","data-centered":"true",children:_(qo,{variant:jo.DEFAULT,elevated:!0,className:"dndev-w-full",style:{maxWidth:"65ch",margin:"0 auto"},children:xe(Ee,{gap:"large",align:"center",className:"dndev-text-center",children:[_(Ee,{align:"center",justify:"center",style:{width:"5rem",height:"5rem",backgroundColor:"rgba(220, 38, 38, 0.1)",borderRadius:"50%",border:"1px solid var(--destructive)"},children:_(pa,{style:{width:"2.5rem",height:"2.5rem",color:"var(--destructive)"},"aria-hidden":"true"})}),xe(Ee,{gap:"medium",children:[_("h1",{className:"dndev-text-base","data-level":"h1",style:{fontSize:"var(--font-size-2xl)",fontWeight:"var(--font-weight-bold)",margin:0},children:r("routeError.title","Something went wrong")}),_("p",{className:"dndev-text-base",style:{fontSize:"var(--font-size-lg)",color:"var(--muted-foreground)",margin:0},children:r("routeError.description","We encountered an error while loading this page.")}),_(Sa,{variant:Ca.SUCCESS,hideIcon:!0,children:_("div",{style:{fontSize:"var(--font-size-sm)",textAlign:"center"},children:r("routeError.dataSafe","Don't worry, your data is safe.")})})]}),n&&xe("code",{style:{padding:"var(--gap-sm) var(--gap-md)",background:"var(--muted)",borderRadius:"var(--radius-full)",fontSize:"var(--font-size-xs)",fontFamily:"var(--font-mono)",color:"var(--foreground)"},children:[r("routeError.errorId","Error ID"),": ",n]}),g&&u&&xe(qo,{variant:jo.MUTED,className:"dndev-w-full",children:[xe(Ee,{direction:"row",align:"center",justify:"between",gap:"medium",children:[_("span",{className:"dndev-text-base",style:{fontSize:"var(--font-size-sm)",fontWeight:"var(--font-weight-semibold)",color:"var(--destructive)"},children:"Error Message:"}),_(pt,{variant:mt.GHOST,icon:a?va:ha,onClick:p,disabled:a,children:a?r("routeError.copied","Copied"):r("routeError.copyDetails","Copy Details")})]}),_("pre",{style:{fontSize:"var(--font-size-xs)",fontFamily:"var(--font-mono)",wordBreak:"break-word",whiteSpace:"pre-wrap",color:"var(--foreground)",margin:0,marginTop:"var(--gap-sm)"},children:u})]}),xe(Ee,{gap:"medium",className:"dndev-w-full",children:[_(pt,{variant:mt.DESTRUCTIVE,icon:fa,onClick:m,fullWidth:!0,children:r("routeError.tryAgain","Try Again")}),xe(Ee,{direction:"row",gap:"medium",justify:"center",children:[_(A,{path:"/",children:_(pt,{variant:mt.DEFAULT,icon:ma,fullWidth:!0,children:r("routeError.goHome","Go Home")})}),_(pt,{variant:mt.OUTLINE,icon:ga,onClick:f,fullWidth:!0,children:r("routeError.goBack","Go Back")})]})]}),_("p",{className:"dndev-text-base",style:{fontSize:"var(--font-size-sm)",color:"var(--muted-foreground)",margin:0},children:r("routeError.contactSupport","If the problem persists, please contact support.")})]})})})},Zo=Ia;import{jsx as Ke}from"react/jsx-runtime";var gt=({variant:e="standard",density:t,className:o,children:n,centered:r=!0,gapFirst:a=!1})=>Ke(Yo,{level:"route",fallback:i=>Ke(Na,{fallback:Ke("div",{children:"Loading error fallback..."}),children:Ke(Zo,{...i})}),children:Ke("div",{className:Aa("dndev-container",o),"data-variant":e,"data-density":t,"data-centered":r?"true":"false","data-gap-first":a?"true":void 0,children:n})});import{Fragment as Ga,jsx as M,jsxs as Ye}from"react/jsx-runtime";var Ua=Da(()=>import("@donotdev/auth").then(e=>({default:e.MultipleAuthProviders})));function Im({title:e,description:t,showBackButton:o=!0,onBack:n,className:r=""}){let{t:a}=Oa(["auth","common"]),i=za(),c=Va(),l=()=>{n?n():c()};return M(gt,{variant:"docs",children:M(De,{align:"center",justify:"center",className:Ma("dndev-min-h-60",r),style:{paddingTop:"var(--gap-lg)",paddingBottom:"var(--gap-lg)"},children:M(Ra,{className:"dndev-w-full",style:{maxWidth:"28rem",border:"none",boxShadow:"var(--shadow-xl)"},title:Ye(De,{gap:"medium",children:[M(De,{justify:"center",children:M("div",{style:{borderRadius:"9999px",backgroundColor:"color-mix(in oklab, var(--primary) 10%, transparent)",padding:"var(--gap-md)"},children:M(La,{className:"dndev-size-touch",style:{color:"var(--primary)"}})})}),M("div",{style:{fontSize:"var(--font-size-2xl)",fontWeight:700},children:a("auth.fallback.title","Authentication Required")}),M("p",{style:{color:"var(--muted-foreground)"},children:a("auth.fallback.description","Please sign in to access this page")})]}),children:Ye(De,{gap:"medium",children:[Ye(De,{gap:"large",children:[M("div",{children:M("p",{style:{fontSize:"var(--font-size-sm)",color:"var(--muted-foreground)"},children:a("auth.fallback.chooseProvider")})}),M(Ea,{fallback:M("div",{children:"Loading providers..."}),children:M(Ua,{layout:"vertical",spacing:"tight",fullWidth:!0,ariaLabel:a("auth.fallback.authOptions")})})]}),o&&Ye(Ga,{children:[M(Ba,{}),M("div",{children:M(Fa,{onClick:l,className:"dndev-gap-sm",icon:Pa,children:a("common.back")})})]}),Ye(De,{gap:"tight",style:{fontSize:"var(--font-size-xs)",color:"var(--muted-foreground)"},children:[M("p",{children:a("auth.fallback.secure")}),M("p",{children:a("auth.fallback.terms")})]})]})})})})}import{Search as Ha}from"lucide-react";import{Button as _a,BUTTON_VARIANT as $a,DISPLAY as Wa}from"@donotdev/components";import{useOverlayStore as Ka,useTranslation as Ya}from"@donotdev/core";import{jsx as qa,jsxs as ja}from"react/jsx-runtime";var Dm=({display:e=Wa.AUTO,className:t,onOpen:o})=>{let{t:n}=Ya("dndev"),r=Ka(l=>l.openCommandDialog),i=typeof navigator<"u"&&/Mac|iPhone|iPad/.test(navigator.platform)?"\u2318K":"Ctrl+K",c=()=>{r(),o?.()};return ja(_a,{variant:$a.OUTLINE,display:e,icon:Ha,onClick:c,className:t,"aria-label":n("goTo.ariaLabel","Go to page"),children:[n("goTo.label","Go to"),qa("kbd",{style:{marginInlineStart:"var(--gap-sm)",padding:"0.125rem 0.375rem",fontSize:"var(--font-size-xs)",fontFamily:"var(--font-mono)",opacity:.5},children:i})]})};import{Suspense as gi,lazy as fi}from"react";import{useEventListener as hi,useOverlayStore as vi}from"@donotdev/core";import{jsx as on}from"react/jsx-runtime";var yi=fi(()=>Promise.resolve().then(()=>(tn(),en))),bi=()=>{let e=vi(t=>t.openCommandDialog);return hi("keydown",t=>{(t.metaKey||t.ctrlKey)&&t.key==="k"&&(t.preventDefault(),e())},{target:document,options:{passive:!1,capture:!1}}),on(gi,{fallback:null,children:on(yi,{})})},Si=bi;import{Search as Ci}from"lucide-react";import{useCallback as nn,useEffect as xi,useState as Ti,useRef as ki}from"react";import{Stack as wi}from"@donotdev/components";import{useOverlayStore as rn}from"@donotdev/core";import{useTranslation as Ii}from"@donotdev/core";import{jsx as ht,jsxs as Pi}from"react/jsx-runtime";var Ni=()=>{let{t:e}=Ii("dndev"),[t,o]=Ti(""),n=ki(null),r=rn(l=>l.openCommandDialog),a=rn(l=>l.isCommandDialogOpen);xi(()=>{a||o("")},[a]);let i=nn(()=>{r(t)},[r,t]),c=nn(l=>{l.key==="Enter"&&(l.preventDefault(),r(t))},[r,t]);return Pi(wi,{direction:"row",align:"center",className:"dndev-relative dndev-w-full dndev-max-w-sm",role:"search",children:[ht(Ci,{className:"dndev-absolute dndev-size-md",style:{left:"0.75rem",opacity:.5},"aria-hidden":"true"}),ht("input",{ref:n,type:"text",value:t,onChange:l=>o(l.target.value),onFocus:i,onKeyDown:c,placeholder:e("globalGoTo.searchPlaceholder","Search pages..."),className:"dndev-input dndev-w-full",style:{paddingLeft:"2.5rem",paddingRight:"5rem"},"aria-label":e("globalGoTo.ariaLabel","Search navigation")}),ht("div",{className:"dndev-absolute dndev-flex dndev-items-center dndev-text-sm",style:{right:"0.75rem",gap:"0.25rem",opacity:.5},"aria-hidden":"true",children:ht("kbd",{style:{padding:"0.25rem 0.5rem",fontSize:"var(--font-size-xs)",fontFamily:"var(--font-mono)",borderRadius:"var(--radius-sm)"},children:"\u2318K"})})]})},Ai=Ni;import{MoreHorizontal as Li,Link as an}from"lucide-react";import{useState as Ei,useEffect as sn,useRef as Di,useMemo as Ri}from"react";import{NavigationMenu as ln,NavigationMenuListPrimitive as Fi,NavigationMenuItemPrimitive as cn,Button as Bi,DropdownMenu as Mi,cn as vt,DISPLAY as Oi}from"@donotdev/components";import{useTranslation as zi}from"@donotdev/core";Re();be();import{jsx as Q,jsxs as Zt}from"react/jsx-runtime";var dn=({routes:e,vertical:t=!1,display:o=Oi.AUTO,overflowDetection:n=!1,showIcons:r=!0,className:a,style:i})=>{let{t:c}=zi("dndev"),l=te(),d=e??l,u=Di(null),[s,g]=Ei(d.length),p=Ri(()=>d.map(m=>({label:m.label,path:m.path,icon:Q(W,{icon:m.icon,fallback:an}),children:m.children?m.children.map(f=>({label:f.label,path:f.path,icon:Q(W,{icon:f.icon,fallback:an})})):void 0})),[d]);if(sn(()=>{if(!n||d.length===0||t)return;let m=()=>{let h=u.current;if(!h)return;let C=h.getBoundingClientRect(),v=h.querySelectorAll("[data-nav-item]"),k=h.querySelector("[data-more-button]"),x=0,I=k?.offsetWidth||0;for(let T=0;T<v.length;T++){let D=v[T];if(!D)break;if(D.getBoundingClientRect().right-C.left+(T===v.length-1&&k?I:0)<=C.width)x=T+1;else break}g(Math.max(0,x))},f=new ResizeObserver(m);return u.current&&f.observe(u.current),setTimeout(m,0),()=>f.disconnect()},[n,d.length,t]),sn(()=>{n&&!t&&g(d.length)},[d.length,n,t]),d.length===0)return null;if(n&&!t){let m=p.slice(0,s),f=p.slice(s);return Q(ln,{className:vt(a),style:i||{flex:1},children:Zt(Fi,{ref:u,"data-vertical":"false",style:{display:"flex",alignItems:"center",gap:"var(--gap-sm)",flexWrap:"nowrap",overflow:"hidden"},children:[m.filter(h=>h.path).map((h,C)=>Q(cn,{"data-nav-item":!0,children:Zt(A,{path:h.path,className:vt("dndev-interactive"),"data-role":"nav-trigger",children:[r&&h.icon,Q("span",{className:"dndev-interactive-label",children:h.label})]})},h.path||C)),f.length>0&&Q(cn,{"data-more-button":!0,children:Q(Mi,{trigger:Q(Bi,{className:"dndev-size-touch",style:{flexShrink:0},"aria-label":c("navigation.more","More"),children:Q(Li,{className:"dndev-size-md"})}),items:f.filter(h=>h.path).map(h=>({label:h.label,children:Zt(A,{path:h.path,className:vt("dndev-interactive"),"data-role":"menu-item",children:[r&&h.icon,Q("span",{className:"dndev-interactive-label",children:h.label})]}),asChild:!0})),contentWidth:"14rem",contentAlign:"end"})})]})})}return Q(ln,{items:p,vertical:t,display:o,className:vt(a,t&&"dndev-sidebar-nav-menu"),LinkComponent:A})};import{Home as Vi,ArrowLeft as Ui,Link as Gi}from"lucide-react";import{useMemo as Hi}from"react";import{Button as Jt,BUTTON_VARIANT as Qt,Stack as je,Text as Xt}from"@donotdev/components";import{useTranslation as _i}from"@donotdev/core";import{useLocation as $i,useNavigate as Wi}from"@donotdev/ui/routing/hooks";Re();be();import{jsx as q,jsxs as yt}from"react/jsx-runtime";function un(){let{t:e}=_i("dndev"),t=$i(),o=Wi(),n=te(),r=Hi(()=>n.filter(i=>!i.path.includes(":")&&i.path!=="/").slice(0,4),[n]),a=()=>{o("back")};return q(gt,{variant:"docs",centered:!0,children:yt(je,{gap:"large",align:"center",justify:"center",children:[yt(je,{gap:"medium",align:"center",children:[q(Xt,{level:"h1",style:{fontSize:"clamp(4rem, 12vw, 8rem)",fontWeight:"var(--font-weight-bold)",lineHeight:1,letterSpacing:"-0.02em",background:"linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent",backgroundClip:"text",margin:0},children:"404"}),q(Xt,{level:"h2",style:{fontSize:"var(--font-size-2xl)",fontWeight:"var(--font-weight-semibold)",margin:0},children:e("errors.notFound.title","Page Not Found")}),q(Xt,{style:{fontSize:"var(--font-size-lg)",color:"var(--muted-foreground)",textAlign:"center",margin:0},children:e("errors.notFound.description","The page you're looking for doesn't exist or has been moved.")}),t.pathname&&q("code",{style:{padding:"var(--gap-sm) var(--gap-md)",background:"var(--muted)",borderRadius:"var(--radius-md)",fontSize:"var(--font-size-sm)",fontFamily:"var(--font-mono)",color:"var(--foreground)",wordBreak:"break-all",maxWidth:"100%",overflow:"hidden",textOverflow:"ellipsis",border:"1px solid var(--border-hairline)"},children:t.pathname})]}),r.length>0&&yt(je,{gap:"medium",align:"center",children:[q("p",{className:"dndev-text-base",style:{fontSize:"var(--font-size-md)",fontWeight:"var(--font-weight-semibold)",margin:0,color:"var(--muted-foreground)"},children:e("errors.notFound.suggestions","You might be looking for:")}),q(je,{direction:"row",wrap:"wrap",justify:"center",gap:"tight",children:r.map(i=>q(A,{path:i.path,replace:!0,children:q(Jt,{variant:Qt.OUTLINE,icon:q(W,{icon:i.icon,fallback:Gi}),"aria-label":e("errors.notFound.navigateTo",`Navigate to ${i.label}`,{label:i.label}),children:i.label})},i.path))})]}),yt(je,{direction:"row",wrap:"wrap",justify:"center",gap:"medium",children:[q(A,{path:"/",replace:!0,children:q(Jt,{variant:Qt.DEFAULT,icon:Vi,"aria-label":e("errors.notFound.goHome","Go to home page"),children:e("errors.notFound.goHome","Go Home")})}),q(Jt,{variant:Qt.OUTLINE,icon:Ui,onClick:a,"aria-label":e("errors.notFound.goBack","Go back to previous page"),children:e("errors.notFound.goBack","Go Back")})]})]})})}Re();qt();import{useNavigate as Be,useBack as U1,useRefresh as G1,usePrefetch as H1,useLocation as _1,useParams as $1,useRouteParam as W1,useSearchParams as K1,useMatch as Y1,useQueryParams as q1,useRedirectGuard as j1}from"@donotdev/ui/routing/hooks";import{getDndevConfig as eo,isClient as Te,isDev as pn}from"@donotdev/core";var Y=class{static getBrowserSupport(){if(!Te())return{svg:!0,webp:!1,avif:!1};let t=this.cache.get("browser-support");if(t)return t;let o={svg:!0,webp:!1,avif:!1};try{let n=document.createElement("canvas");n.width=1,n.height=1,o.webp=n.toDataURL("image/webp").indexOf("data:image/webp")===0}catch{o.webp=!1}try{let n=document.createElement("canvas");n.width=1,n.height=1,o.avif=n.toDataURL("image/avif").indexOf("data:image/avif")===0}catch{o.avif=!1}return this.cache.set("browser-support",o),o}static extractStringValues(t){let o=[];if(t==null)return o;if(typeof t=="string")o.push(t);else if(Array.isArray(t))for(let n of t)o.push(...this.extractStringValues(n));else if(typeof t=="object")for(let n of Object.values(t))o.push(...this.extractStringValues(n));return o}static assetExists(t){if(!Te())return!1;let o=this.getAssetManifest();return o?this.extractStringValues(o).includes(t):!1}static getAssetManifest(){return Te()&&eo()?.assets?.mapping||null}static getLogoSvgContent(){return eo()?.assets?.logoSvgContent||null}static resolveLogo(t){if(t)return t;let o="logo";if(this.cache.has(o))return this.cache.get(o);let r=this.getAssetManifest()?.logo?.optimal||"/logo.svg";return this.cache.set(o,r),r}static directAssetCheck(t){if(!Te())return!1;try{let o=new Image;return o.src=t,!0}catch{return!1}}static resolveFaviconSet(){let t="favicon-set";if(this.cache.has(t))return this.cache.get(t);let o=this.getAssetManifest();if(o?.favicon?.set){let a=o.favicon.set,i=this.assetExists("/icon-512x512.png")?"/icon-512x512.png":this.assetExists("/icon-192x192.png")?"/icon-192x192.png":"/logo.svg",c={svg:a.svg||"/favicon.svg",ico:a.ico||"/favicon.ico",png16:a.png16||i,png32:a.png32||i,apple180:a.apple180||i,android192:a.android192||i,android512:a.android512||i};return this.cache.set(t,c),c}let n=this.assetExists("/icon-512x512.png")?"/icon-512x512.png":this.assetExists("/icon-192x192.png")?"/icon-192x192.png":"/logo.svg",r={svg:this.assetExists("/favicon.svg")?"/favicon.svg":"/logo.svg",ico:this.assetExists("/favicon.ico")?"/favicon.ico":"/favicon.svg",png16:this.assetExists("/favicon-16x16.png")?"/favicon-16x16.png":n,png32:this.assetExists("/favicon-32x32.png")?"/favicon-32x32.png":n,apple180:this.assetExists("/apple-touch-icon.png")?"/apple-touch-icon.png":n,android192:this.assetExists("/icon-192x192.png")?"/icon-192x192.png":n,android512:this.assetExists("/icon-512x512.png")?"/icon-512x512.png":n};return this.cache.set(t,r),r}static resolveFavicon(){let t=this.getAssetManifest();if(t?.favicon?.optimal)return t.favicon.optimal;let o=["/favicon.svg","/favicon.ico","/favicon.png","/logo.svg"];for(let n of o)if(this.assetExists(n))return n;return"/favicon.svg"}static clearCache(){this.cache.clear(),pn()&&Te()}static getDebugInfo(){return{browserSupport:this.getBrowserSupport(),detectedAssets:Te()?eo()?.assets?.mapping:null,assetManifest:this.getAssetManifest(),cache:Object.fromEntries(this.cache)}}};at(Y,"cache",new Map);function X1(e){return Y.resolveLogo(e)}function eg(){return Y.resolveFaviconSet()}pn()&&(Y.clearCache(),Te()&&window.addEventListener("DOMContentLoaded",()=>{Y.clearCache()}));import*as Ki from"@donotdev/crud";var Me=Ki?.useFormStore,mn={forms:{},startSubmit:()=>{},setUploading:()=>{},setValidating:()=>{},setSubmitting:()=>{},setSuccess:()=>{},setError:()=>{},reset:()=>{},cleanup:()=>{},setIsDirty:()=>{},hasDirtyForms:()=>!1,getDirtyFormIds:()=>[],getStatus:()=>"idle",isLoading:()=>!1,getUploadProgress:()=>0,getError:()=>null,getIsDirty:()=>!1},ng=typeof Me=="function";function to(e){return Me?Me(e):e(mn)}to.getState=()=>Me&&typeof Me.getState=="function"?Me.getState():mn;function rg(){return to(t=>t.hasDirtyForms())()}async function ag(e="You have unsaved changes. Discard them?"){return to.getState().hasDirtyForms()&&typeof window<"u"&&window.confirm?window.confirm(e):!0}_e();import{useMemo as Yi}from"react";function bt(){let e=R("status"),t=R("isAvailable"),o=R("user");return Yi(()=>({shouldHide:e!=="ready"||!t,isLoading:e==="initializing",isReady:e==="ready"&&t,isAuthenticated:!!o}),[e,t,o])}import*as qi from"@donotdev/billing";import{DEGRADED_BILLING_API as ji}from"@donotdev/core";var oo=qi?.useStripeBilling;function Zi(e){return ji[e]}function no(e,t){return oo?oo(e,t):Zi(e)}var ug=typeof oo=="function";_e();function fg(){let e=R("user"),t=R("status"),o={user:e,status:t},n=no("status",o),r=no("isAvailable",o);return{shouldHide:!r,isLoading:n==="initializing",isReady:r&&n==="ready"}}import{DEGRADED_OAUTH_API as Ji}from"@donotdev/core";import*as Qi from"@donotdev/oauth";var ro=Qi?.useOAuth;function Xi(e){return Ji[e]}function yg(e){return ro?ro(e):Xi(e)}var bg=typeof ro=="function";import{CheckCircle as es}from"lucide-react";import{List as ts}from"@donotdev/components";import{translateArray as os}from"@donotdev/core";import{jsx as gn}from"react/jsx-runtime";var ns=es,rs=16;function kg(e,t,o,n=ns,r=rs){let a=n;return gn(ts,{icon:a?gn(a,{size:r}):void 0,items:os(e,t,o),style:{listStyle:"none",paddingInlineStart:0}})}import{Fragment as Ns,jsx as ge,jsxs as As}from"react/jsx-runtime";var vn=()=>null,Ts=hn(async()=>{try{return{default:(await import("@donotdev/auth")).ReauthDialog}}catch{return{default:vn}}}),ks=hn(async()=>{try{return{default:(await import("@donotdev/auth")).ConfirmDeleteDialog}}catch{return{default:vn}}}),ao=null;Ss()&&import("@donotdev/auth").then(e=>{ao=e.useDeleteAccount}).catch(()=>{});function ws(){let[e]=St.useState(!1),[t]=St.useState(!1),[o]=St.useState(!1),[n]=St.useState(null);return{showConfirmDialog:e,showPasswordDialog:t,isDeleting:o,error:n,startDeleteFlow:()=>{},confirmDelete:async()=>{},cancel:()=>{}}}function Is(){return ao?ao():ws()}var Ct=e=>{if(!e)return Ze;if(typeof e=="function")return e;let t=e.replace(/['"]/g,"");return cs[t]||Ze},io=({loginPath:e,display:t=hs.AUTO,"no-tooltip":o=!1,customItems:n=[],className:r,style:a})=>{let{t:i}=vs("dndev"),{shouldHide:c,isReady:l,isAuthenticated:d}=bt(),u=bs(),s=R("user"),g=R("signOut"),p=Cs("isLaptop"),m=te(),f=xs(),h=u.profilePath,C=u.authMenuItems||[],v=Is(),k=()=>s&&(s.displayName||s.email?.split("@")[0])||"User",x=()=>k().split(" ").map(b=>b.charAt(0)).slice(0,2).join("").toUpperCase(),I=()=>{if(!s)return i("auth.userMenu",{defaultValue:"User menu"});let w=[k()];return s.email&&w.push(s.email),L&&L!=="guest"&&w.push(`Role: ${L}`),w.join(`
4
+ `)},T=ds(()=>{let w=[];return!p&&s&&w.push({children:ge(fs,{variant:"muted",as:"span",children:`${k()}${s.email?`
5
+ ${s.email}`:""}`}),disabled:!0}),h&&w.push({label:i("auth.profile",{defaultValue:"Profile"}),icon:as,onClick:()=>f(h)}),C.forEach(b=>{let S=m.find(F=>F.path===b.path),y=b.label||S?.label||b.path.split("/").pop()||"Menu",N=b.icon?Ct(b.icon):S?.icon&&(typeof S.icon=="string"||typeof S.icon=="function")?Ct(S.icon):Ze;w.push({label:y,icon:N,onClick:()=>f(b.path)})}),n.forEach(b=>{if(b.path){let S=m.find(F=>F.path===b.path),y=b.label||S?.label||b.path.split("/").pop()||"Menu",N=b.icon?Ct(b.icon):Ze;w.push({label:y,icon:N,onClick:()=>f(b.path),disabled:b.disabled,style:b.style})}else if(b.onClick){let S=b.icon?Ct(b.icon):Ze;w.push({label:b.label,icon:S,onClick:b.onClick,disabled:b.disabled,style:b.style})}}),w.push({label:i("auth.deleteAccount.label",{defaultValue:"Delete Account"}),icon:ls,onClick:v.startDeleteFlow,variant:"destructive"}),w.push({label:i("auth.signOut",{defaultValue:"Sign Out"}),icon:is,onClick:()=>g(),variant:"destructive"}),w},[h,C,n,g,v,i,m,p,s,k,f]);if(ys().length===0||c||!l)return null;let L=s?.role;return d?As(Ns,{children:[ge(fn,{fallback:null,children:ge(Ts,{open:v.showPasswordDialog,isLoading:v.isDeleting,error:v.error,onReauth:w=>v.confirmDelete(w),onCancel:v.cancel})}),ge(fn,{fallback:null,children:ge(ks,{open:v.showConfirmDialog,isLoading:v.isDeleting,error:v.error,onConfirm:()=>v.confirmDelete(),onCancel:v.cancel})}),ge(gs,{trigger:ge(ps,{variant:ms.OUTLINE,icon:s?ge(us,{src:s.photoURL??void 0,fallback:x(),alt:k(),style:{margin:"-4px 0"}}):ss,display:t,"aria-label":i("auth.userMenu",{defaultValue:"User menu"}),tooltip:!o&&p&&s?I():o?void 0:i("auth.userMenu",{defaultValue:"User menu"}),className:r,style:a,children:k()}),items:T,contentAlign:"end"})]}):null};import{jsx as U}from"react/jsx-runtime";var Sn=()=>null,Vs=bn(async()=>{try{return{default:(await import("@donotdev/auth")).AuthPartnerButton}}catch{return{default:Sn}}}),yn=bn(async()=>{try{return{default:(await import("@donotdev/auth")).MultipleAuthProviders}}catch{return{default:Sn}}}),lo=({display:e=Bs.AUTO,className:t,style:o})=>{let{t:n}=Ms("dndev"),{shouldHide:r,isLoading:a,isReady:i,isAuthenticated:c}=bt(),l=Os(),d=zs(),[u,s]=Ls(!1),g=l.loginPath,p=n("auth.signIn",{defaultValue:"Sign In"}),m=n("auth.loading",{defaultValue:"Loading..."}),f=d.includes("password")||d.includes("emailLink");if(r||!i)return null;let h=({children:C,...v})=>U(Es,{variant:Ds.OUTLINE,icon:Ps,display:e,tooltip:p,className:t,style:o,...v,children:C??p});if(!c){if(g!==void 0)return U(A,{path:g,prefetch:!0,children:U(h,{})});let C=d[0];return f?U(Fs,{trigger:U(h,{}),title:p,open:u,onOpenChange:s,"data-content-size":"form",children:U(so,{fallback:U("div",{style:{padding:"var(--gap-md)",fontSize:"var(--font-size-sm)",color:"var(--muted-foreground)"},children:m}),children:U(yn,{spacing:"medium",onSuccess:()=>s(!1)})})}):d.length>1?U(Rs,{trigger:U(h,{}),children:U(so,{fallback:U("div",{style:{padding:"var(--gap-md)",fontSize:"var(--font-size-sm)",color:"var(--muted-foreground)"},children:m}),children:U(yn,{spacing:"tight"})})}):U(so,{fallback:U(h,{disabled:a,tooltip:a?m:p,children:a?m:p}),children:U(Vs,{partnerId:C,display:e,className:t,style:o})})}return U(io,{display:e,loginPath:g,className:t,style:o})};import{RefreshCw as Us}from"lucide-react";import{cn as Gs}from"@donotdev/components";import{jsx as Cn,jsxs as $s}from"react/jsx-runtime";var Hs=({className:e})=>$s("div",{className:Gs("dndev-loading-overlay",e),style:{position:"fixed",inset:0,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"var(--background)",opacity:"var(--opacity-muted)",backdropFilter:"blur(4px)",zIndex:50},role:"status","aria-busy":"true","aria-label":"Loading",children:[Cn(Us,{className:"dndev-size-touch",style:{color:"var(--primary)",animation:"spin 1s linear infinite"}}),Cn("span",{className:"dndev-sr-only",children:"Loading..."})]}),_s=Hs;import{AlertCircle as Ws,RefreshCw as Ks,Mail as Ys,Cookie as qs}from"lucide-react";import{Card as js,Button as co,BUTTON_VARIANT as uo,Stack as xn}from"@donotdev/components";import{useTranslation as Zs}from"@donotdev/core";import{jsx as Je,jsxs as xt}from"react/jsx-runtime";function Js({featureName:e,title:t,description:o,showReviewCookies:n=!1,showContactSupport:r=!0,showRetry:a=!1,supportEmail:i="support@example.com",onRetry:c,onReviewCookies:l,customActions:d,className:u=""}){let{t:s}=Zs("ui"),g=o||s("featureDisabled.description","{featureName} is not available. This may be due to missing configuration or disabled features.",{featureName:e}),p=()=>{if(l)l();else{let f=new CustomEvent("openCookieConsent");window.dispatchEvent(f)}},m=()=>{window.location.href=`mailto:${i}?subject=${encodeURIComponent(`Feature Unavailable: ${e}`)}&body=${encodeURIComponent(`I'm experiencing an issue with ${e} not being available.`)}`};return xt(js,{className:u,title:xt(xn,{direction:"row",align:"center",gap:"tight",children:[Je(Ws,{className:"dndev-size-md",style:{color:"var(--destructive)"}}),t||e]}),subtitle:g,children:[" ",xt("div",{style:{display:"grid",gap:"var(--gap-md)"},children:[(n||r||a||d)&&xt(xn,{direction:"row",wrap:"wrap",gap:"tight",children:[n&&Je(co,{variant:uo.OUTLINE,onClick:p,icon:qs,children:s("featureDisabled.reviewCookies","Review Cookies")}),r&&Je(co,{variant:uo.OUTLINE,onClick:m,icon:Ys,children:s("featureDisabled.contactSupport","Contact Support")}),a&&Je(co,{variant:uo.OUTLINE,onClick:c,icon:Ks,children:s("featureDisabled.retry","Retry")}),d]}),Je("p",{style:{fontSize:"var(--font-size-sm)",color:"var(--muted-foreground)"},children:s("featureDisabled.helpText","If you believe this is an error, please contact support or try refreshing the page.")})]})]})}var Qs=Js;be();import{cn as Xs}from"@donotdev/components";import{jsx as oe,jsxs as ll}from"react/jsx-runtime";var se=({state:e="loading",message:t,show:o=!0,className:n,showSpinner:r=!1,spinnerSize:a="md"})=>{if(!o)return null;let c=t||(d=>({initial:"Preparing...",loading:"Loading...",processing:"Processing your request...","almost-done":"Almost there...",complete:"Complete!"})[d]||"Loading...")(e),l={sm:{width:"0.75rem",height:"0.75rem"},md:{width:"1rem",height:"1rem"},lg:{width:"1.5rem",height:"1.5rem"}};return ll("div",{className:Xs(n),style:{display:"flex",alignItems:"center",justifyContent:"center",gap:"var(--gap-sm)",color:"var(--muted-foreground)",fontSize:"var(--font-size-sm)",transition:"opacity var(--dur-fast) ease-out"},role:"status","aria-live":"polite","aria-label":c,children:[r&&oe("div",{style:{...l[a],animation:"spin 1s linear infinite",borderRadius:"var(--radius-full)",border:"2px solid currentColor",borderTopColor:"transparent"},role:"status","aria-hidden":"true"}),oe("span",{style:{fontWeight:500},children:c})]})},el=({message:e="Loading...",...t})=>oe(se,{state:"loading",message:e,...t}),tl=({message:e="Processing your request...",...t})=>oe(se,{state:"processing",message:e,...t}),ol=({message:e="Almost there...",...t})=>oe(se,{state:"almost-done",message:e,...t}),nl=({message:e="Complete!",...t})=>oe(se,{state:"complete",message:e,...t}),rl=({showSpinner:e=!0,...t})=>oe(se,{state:"processing",message:"Saving your changes...",showSpinner:e,...t}),al=({showSpinner:e=!0,fileName:t,...o})=>oe(se,{state:"processing",message:t?`Uploading ${t}...`:"Uploading file...",showSpinner:e,...o}),il=({showSpinner:e=!0,query:t,...o})=>oe(se,{state:"processing",message:t?`Searching for "${t}"...`:"Searching...",showSpinner:e,...o}),sl=({showSpinner:e=!0,...t})=>oe(se,{state:"loading",message:"Connecting to server...",showSpinner:e,...t}),Tt=se;import{cn as cl}from"@donotdev/components";import{Fragment as Tn,jsx as fe,jsxs as kn}from"react/jsx-runtime";var dl=({show:e=!1,backdrop:t=!0,backdropBlur:o=!0,className:n,children:r,message:a,showSpinner:i=!0,spinnerSize:c="lg",preventClicks:l=!0,zIndex:d="var(--z-modal)"})=>{if(!e)return null;let u=d==="var(--z-modal)"||!d?"dndev-z-modal":d==="var(--z-toast)"?"dndev-z-toast":d==="var(--z-tooltip)"?"dndev-z-tooltip":d==="var(--z-overlay)"?"dndev-z-overlay":null;return fe("div",{className:cl("dndev-loading-overlay",u,n),style:{position:"fixed",inset:0,display:"flex",alignItems:"center",justifyContent:"center",transition:"opacity var(--dur-fast) ease-out",backgroundColor:t?"var(--background)":"transparent",opacity:t?"var(--opacity-muted)":1,backdropFilter:o?"blur(4px)":"none",pointerEvents:l?"auto":"none",...u?{}:{zIndex:d}},role:"dialog","aria-modal":"true","aria-busy":"true","aria-label":"Loading overlay",children:fe("div",{className:"dndev-surface",style:{display:"grid",placeItems:"center",gap:"var(--gap-md)",borderRadius:"var(--radius-lg)",padding:"var(--gap-lg)",backgroundColor:"var(--background)",opacity:"var(--opacity-strong)",border:"1px solid var(--border)",boxShadow:"var(--shadow-xl)",maxWidth:"var(--content-text)",width:"100%",margin:"0 var(--gap-md)"},children:r||kn(Tn,{children:[i&&fe("div",{style:{animation:"spin 1s linear infinite",borderRadius:"var(--radius-full)",border:"2px solid var(--primary)",borderTopColor:"transparent",width:c==="sm"?"2rem":c==="md"?"3rem":"4rem",height:c==="sm"?"2rem":c==="md"?"3rem":"4rem"},role:"status","aria-hidden":"true"}),a&&fe(Tt,{...a})]})})})};var ul=({show:e=!1,backdrop:t=!1,backdropBlur:o=!1,className:n,...r})=>fe("div",{className:n,style:{position:"absolute",inset:0,display:e?"flex":"none",alignItems:"center",justifyContent:"center",transition:"opacity var(--dur-fast) ease-out",backgroundColor:t?"var(--background)":"transparent",opacity:t?"var(--opacity-muted)":1,backdropFilter:o?"blur(4px)":"none"},role:"status","aria-busy":"true","aria-label":"Loading content",children:fe("div",{style:{display:"grid",placeItems:"center",gap:"var(--gap-sm)"},children:r.children||kn(Tn,{children:[fe("div",{style:{animation:"spin 1s linear infinite",borderRadius:"var(--radius-full)",border:"2px solid var(--primary)",borderTopColor:"transparent",width:"1.5rem",height:"1.5rem"},role:"status","aria-hidden":"true"}),r.message&&fe(Tt,{...r.message})]})})}),pl=dl;import{cn as ml}from"@donotdev/components";import{jsx as wn}from"react/jsx-runtime";var gl=({variant:e="fullPage",className:t,isLoading:o})=>o===!1?null:wn("div",{className:ml(t),style:{display:"flex",alignItems:"center",justifyContent:"center",...e==="fullPage"&&{position:"fixed",inset:0,backgroundColor:"var(--background)",backdropFilter:"blur(4px)",zIndex:50}},role:"status","aria-busy":"true","aria-label":"Loading",children:wn("div",{style:{animation:"spin 1s linear infinite",borderRadius:"var(--radius-full)",border:"2px solid var(--muted)",borderTopColor:"var(--primary)",...e==="fullPage"?{width:"5rem",height:"5rem"}:{width:"var(--icon-md)",height:"var(--icon-md)"}},role:"status","aria-busy":"true","aria-label":"Loading"})}),fl=gl;import{Lock as kt,Shield as In}from"lucide-react";import{useEffect as po,useRef as Nn,useCallback as hl}from"react";import{Portal as vl,Spinner as yl,Stack as bl,Text as Qe,Button as Sl}from"@donotdev/components";import{useTranslation as Cl,useOverlay as le}from"@donotdev/core";import{jsx as ne,jsxs as Pn}from"react/jsx-runtime";var An={connecting:0,preparing:2e3,redirecting:5e3},xl=1e4;function Tl(e,t){return t==="none"?null:t==="shield"?In:t==="lock"?kt:e?e.startsWith("stripe-")||e.includes("payment")||e.includes("checkout")?kt:e.startsWith("oauth-")||e.startsWith("auth-")?In:kt:kt}function kl(e){return e||"default"}function wl(){let{t:e}=Cl("dndev"),t=le("isRedirectOverlayOpen"),o=le("redirectOperation"),n=le("redirectPhase"),r=le("showCancelButton"),a=le("redirectConfig"),i=le("redirectStartTime"),c=le("setRedirectPhase"),l=le("setShowCancelButton"),d=le("hideRedirectOverlay"),u=Nn([]),s=Nn(null),g=hl(()=>{d()},[d]);if(po(()=>{if(!t||!i)return;let x=a?.cancelTimeout??xl,I=Date.now()-i;u.current.forEach(clearTimeout),u.current=[],s.current&&(clearTimeout(s.current),s.current=null);let T=(L,w)=>{let b=Math.max(0,w-I);if(b>0){let S=setTimeout(()=>{c(L)},b);u.current.push(S)}else c(L)};T("preparing",An.preparing),T("redirecting",An.redirecting);let D=Math.max(0,x-I);return s.current=setTimeout(()=>{l(!0),c("timeout")},D),()=>{u.current.forEach(clearTimeout),u.current=[],s.current&&(clearTimeout(s.current),s.current=null)}},[t,i,a?.cancelTimeout,c,l]),po(()=>{if(!t)return;let x=()=>{d()};return window.addEventListener("popstate",x),()=>window.removeEventListener("popstate",x)},[t,d]),po(()=>{if(!t)return;let x=()=>{};return document.addEventListener("visibilitychange",x),()=>document.removeEventListener("visibilitychange",x)},[t]),!t)return null;let p=kl(o),m=a?.title??e(`redirectOverlay.${p}.title`,{defaultValue:e("redirectOverlay.default.title")}),f=a?.message??e(`redirectOverlay.${p}.message`,{defaultValue:e("redirectOverlay.default.message")}),h=a?.subtitle??e(`redirectOverlay.${p}.subtitle`,{defaultValue:e("redirectOverlay.default.subtitle")}),C=e(`redirectOverlay.${p}.ariaLabel`,{defaultValue:e("redirectOverlay.default.ariaLabel")}),v=e(`redirectOverlay.phases.${n}`),k=Tl(o,a?.icon);return ne(vl,{children:ne("div",{className:"dndev-spinner-overlay",role:"status","aria-busy":"true","aria-label":C,style:{zIndex:"var(--z-overlay, 9999)"},children:Pn("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:"var(--gap-md)",textAlign:"center",maxWidth:"400px",padding:"var(--gap-lg)"},children:[Pn(bl,{direction:"row",gap:"medium",align:"center",children:[k&&ne(k,{style:{width:"1.5rem",height:"1.5rem",color:"var(--primary)"},"aria-hidden":"true"}),ne(yl,{variant:"primary"})]}),ne(Qe,{as:"h3",style:{color:"var(--foreground)",margin:0},children:m}),ne(Qe,{variant:"muted",style:{color:"var(--foreground)",minHeight:"1.5em"},children:v}),ne(Qe,{variant:"muted",level:"small",style:{opacity:.8},children:f}),ne(Qe,{variant:"muted",level:"small",style:{opacity:.6},children:h}),ne(Qe,{variant:"muted",level:"small",style:{opacity:.5,marginTop:"var(--gap-sm)"},children:e("redirectOverlay.doNotRefresh")}),r&&ne(Sl,{variant:"ghost",onClick:g,style:{marginTop:"var(--gap-md)"},children:e("redirectOverlay.cancel")})]})})})}import{useEffect as mo,useState as Ln}from"react";import{cn as Il}from"@donotdev/components";import{jsx as En}from"react/jsx-runtime";var Nl=({isActive:e=!1,progress:t,useFakeProgress:o=!0,duration:n=2e3,className:r,show:a=!0})=>{let[i,c]=Ln(0),[l,d]=Ln(!1);mo(()=>{if(!e||!o||t!==void 0)return;d(!0),c(0);let s=Date.now(),g=setInterval(()=>{let p=Date.now()-s,m=Math.min(p/n*90,90);c(m)},16);return()=>{clearInterval(g)}},[e,o,t,n]),mo(()=>{t!==void 0&&d(t>0&&t<100)},[t]),mo(()=>{if(!e){let s=setTimeout(()=>{d(!1),c(0)},300);return()=>clearTimeout(s)}},[e]);let u=t??i;return!a||!l?null:En("div",{className:Il(r),style:{position:"fixed",left:0,right:0,zIndex:9999,height:"4px",backgroundColor:"transparent",top:"var(--header-height, 0px)"},role:"progressbar","aria-valuenow":Math.round(u),"aria-valuemin":0,"aria-valuemax":100,"aria-label":"Page loading progress",children:En("div",{style:{height:"100%",width:`${u}%`,background:"linear-gradient(to right, var(--primary), color-mix(in srgb, var(--primary) 80%, transparent), color-mix(in srgb, var(--primary) 60%, transparent))",transition:e?"width 0.3s ease-out":"width 0.2s ease-in",boxShadow:"var(--shadow-sm)"}})})},Al=Nl;import{cn as wt,Stack as Pl}from"@donotdev/components";import{jsx as Xe,jsxs as Df}from"react/jsx-runtime";var Ll=({variant:e="text",width:t,height:o,lines:n=1,show:r=!0,className:a,animation:i="pulse",style:c})=>{if(!r)return null;let l={backgroundColor:"var(--muted)",opacity:"var(--opacity-muted)",borderRadius:"var(--radius)",animation:i==="pulse"||i==="wave"?"pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite":"none",...i==="wave"&&{background:"linear-gradient(to right, color-mix(in srgb, var(--muted) 50%, transparent), color-mix(in srgb, var(--muted) 30%, transparent), color-mix(in srgb, var(--muted) 50%, transparent))"}},d=()=>{let u={};return t&&(u.width=typeof t=="number"?`${t}px`:t),o&&(u.height=typeof o=="number"?`${o}px`:o),u};return e==="text"?Xe(Pl,{gap:"tight",children:Array.from({length:n}).map((u,s)=>Xe("div",{className:wt("dndev-skeleton",a),style:{...l,height:"var(--gap-md)",width:s===n-1?"75%":"100%",...d(),...c}},s))}):e==="circular"?Xe("div",{className:wt("dndev-skeleton",a),style:{...l,borderRadius:"var(--radius-full)",width:t||o||"40px",height:o||t||"40px",...d(),...c}}):e==="rectangular"?Xe("div",{className:wt("dndev-skeleton",a),style:{...l,width:t||"100%",height:o||"200px",...d(),...c}}):Xe("div",{className:wt("dndev-skeleton",a),style:{...l,borderRadius:"var(--radius-lg)",width:t||"100%",height:o||"20px",...d(),...c}})};var El=Ll;import{Card as Dl,IconBox as Rl,Stack as Fl,Text as go,renderCardContent as Bl}from"@donotdev/components";import{jsx as re,jsxs as Dn}from"react/jsx-runtime";var Ml=({icon:e,title:t,subtitle:o,content:n,href:r,variant:a,elevated:i,onClick:c,className:l,footer:d,style:u,...s})=>{let g=Bl(n),f=`calc(var(--font-size-lg) * var(--line-height) * 2 + var(--gap-md)) calc(var(--font-size-base) * var(--line-height) * 2 + var(--gap-md)) 1fr${d?" auto":""}`,h={display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden",textOverflow:"ellipsis",wordBreak:"break-word",lineHeight:"var(--line-height)"},C={...h,fontSize:"var(--font-size-lg)",fontWeight:600,color:"inherit",margin:0,textAlign:"start",flex:1,minWidth:0},v={...h,fontSize:"var(--font-size-base)",fontWeight:600,color:"var(--muted-foreground)",margin:0},k=e?Dn(Fl,{direction:"row",align:"center",gap:"medium",style:{width:"100%"},children:[re(Rl,{icon:e}),re(go,{as:"div",level:"h3",style:C,children:t})]}):re(go,{as:"div",level:"h3",style:C,children:t}),x=re(Dl,{variant:a,elevated:i,onClick:c,className:l,"data-clickable":r||c?"true":void 0,style:{paddingInlineStart:"var(--gap-md)",paddingInlineEnd:"var(--gap-md)",gap:"var(--gap-md)",height:"100%",textAlign:"start",...u},...s,children:Dn("div",{style:{display:"grid",gridTemplateRows:f,gap:"var(--gap-md)",width:"100%"},children:[re("div",{style:{display:"flex",alignItems:"center",justifyContent:"flex-start"},children:k}),re("div",{style:{display:"flex",alignItems:"flex-start",justifyContent:"flex-start"},children:re(go,{as:"div",level:"body",style:v,children:o})}),re("div",{children:g}),d&&re("div",{children:d})]})});return r&&!c?re(A,{path:r,style:{display:"block",textDecoration:"none",height:"100%"},"aria-label":t?`Learn more about ${t}`:void 0,children:x}):x},Ol=Ml;import{useState as ql}from"react";import{Bento as jl,Card as Zl,Section as Jl,Stack as Ql,Text as Xl,cn as ec}from"@donotdev/components";var zl='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="#3178C6" d="M1.125 0C.502 0 0 .502 0 1.125v21.75C0 23.498.502 24 1.125 24h21.75c.623 0 1.125-.502 1.125-1.125V1.125C24 .502 23.498 0 22.875 0zm17.363 9.75c.612 0 1.154.037 1.627.111a6.38 6.38 0 0 1 1.306.34v2.458a3.95 3.95 0 0 0-.643-.361 5.093 5.093 0 0 0-.717-.26 5.453 5.453 0 0 0-1.426-.2c-.3 0-.573.028-.819.086a2.1 2.1 0 0 0-.623.242c-.17.104-.3.229-.393.374a.888.888 0 0 0-.14.49c0 .196.053.373.156.529.104.156.252.304.443.444s.423.276.696.41c.273.135.582.274.926.416.47.197.892.407 1.266.628.374.222.695.473.963.753.268.279.472.598.614.957.142.359.214.776.214 1.253 0 .657-.125 1.21-.373 1.656a3.033 3.033 0 0 1-1.012 1.085 4.38 4.38 0 0 1-1.487.596c-.566.12-1.163.18-1.79.18a9.916 9.916 0 0 1-1.84-.164 5.544 5.544 0 0 1-1.512-.493v-2.63a5.033 5.033 0 0 0 3.237 1.2c.333 0 .624-.03.872-.09.249-.06.456-.144.623-.25.166-.108.29-.234.373-.38a1.023 1.023 0 0 0-.074-1.089 2.12 2.12 0 0 0-.537-.5 5.597 5.597 0 0 0-.807-.444 27.72 27.72 0 0 0-1.007-.436c-.918-.383-1.602-.852-2.053-1.405-.45-.553-.676-1.222-.676-2.005 0-.614.123-1.141.369-1.582.246-.441.58-.804 1.004-1.089a4.494 4.494 0 0 1 1.47-.629 7.536 7.536 0 0 1 1.77-.201zm-15.113.188h9.563v2.166H9.506v9.646H6.789v-9.646H3.375z"/></svg>',Vl='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="#61DAFB" d="M14.23 12.004a2.236 2.236 0 0 1-2.235 2.236 2.236 2.236 0 0 1-2.236-2.236 2.236 2.236 0 0 1 2.235-2.236 2.236 2.236 0 0 1 2.236 2.236zm2.648-10.69c-1.346 0-3.107.96-4.888 2.622-1.78-1.653-3.542-2.602-4.887-2.602-.41 0-.783.093-1.106.278-1.375.793-1.683 3.264-.973 6.365C1.98 8.917 0 10.42 0 12.004c0 1.59 1.99 3.097 5.043 4.03-.704 3.113-.39 5.588.988 6.38.32.187.69.275 1.102.275 1.345 0 3.107-.96 4.888-2.624 1.78 1.654 3.542 2.603 4.887 2.603.41 0 .783-.09 1.106-.275 1.374-.792 1.683-3.263.973-6.365C22.02 15.096 24 13.59 24 12.004c0-1.59-1.99-3.097-5.043-4.032.704-3.11.39-5.587-.988-6.38-.318-.184-.688-.277-1.092-.278zm-.005 1.09v.006c.225 0 .406.044.558.127.666.382.955 1.835.73 3.704-.054.46-.142.945-.25 1.44-.96-.236-2.006-.417-3.107-.534-.66-.905-1.345-1.727-2.035-2.447 1.592-1.48 3.087-2.292 4.105-2.295zm-9.77.02c1.012 0 2.514.808 4.11 2.28-.686.72-1.37 1.537-2.02 2.442-1.107.117-2.154.298-3.113.538-.112-.49-.195-.964-.254-1.42-.23-1.868.054-3.32.714-3.707.19-.09.4-.127.563-.132zm4.882 3.05c.455.468.91.992 1.36 1.564-.44-.02-.89-.034-1.345-.034-.46 0-.915.01-1.36.034.44-.572.895-1.096 1.345-1.565zM12 8.1c.74 0 1.477.034 2.202.093.406.582.802 1.203 1.183 1.86.372.64.71 1.29 1.018 1.946-.308.655-.646 1.31-1.013 1.95-.38.66-.773 1.288-1.18 1.87-.728.063-1.466.098-2.21.098-.74 0-1.477-.035-2.202-.093-.406-.582-.802-1.204-1.183-1.86-.372-.64-.71-1.29-1.018-1.946.303-.657.646-1.313 1.013-1.954.38-.66.773-1.286 1.18-1.868.728-.064 1.466-.098 2.21-.098zm-3.635.254c-.24.377-.48.763-.704 1.16-.225.39-.435.782-.635 1.174-.265-.656-.49-1.31-.676-1.947.64-.15 1.315-.283 2.015-.386zm7.26 0c.695.103 1.365.23 2.006.387-.18.632-.405 1.282-.66 1.933-.2-.39-.41-.783-.64-1.174-.225-.392-.465-.774-.705-1.146zm3.063.675c.484.15.944.317 1.375.498 1.732.74 2.852 1.708 2.852 2.476-.005.768-1.125 1.74-2.857 2.475-.42.18-.88.342-1.355.493-.28-.958-.646-1.956-1.1-2.98.45-1.017.81-2.01 1.085-2.964zm-13.395.004c.278.96.645 1.957 1.1 2.98-.45 1.017-.812 2.01-1.086 2.964-.484-.15-.944-.318-1.37-.5-1.732-.737-2.852-1.706-2.852-2.474 0-.768 1.12-1.742 2.852-2.476.42-.18.88-.342 1.356-.494zm11.678 4.28c.265.657.49 1.312.676 1.948-.64.157-1.316.29-2.016.39.24-.375.48-.762.705-1.158.225-.39.435-.788.636-1.18zm-9.945.02c.2.392.41.783.64 1.175.23.39.465.772.705 1.143-.695-.102-1.365-.23-2.006-.386.18-.63.406-1.282.66-1.933zM17.92 16.32c.112.493.2.968.254 1.423.23 1.868-.054 3.32-.714 3.708-.147.09-.338.128-.563.128-1.012 0-2.514-.807-4.11-2.28.686-.72 1.37-1.536 2.02-2.44 1.107-.118 2.154-.3 3.113-.54zm-11.83.01c.96.234 2.006.415 3.107.532.66.905 1.345 1.727 2.035 2.446-1.595 1.483-3.092 2.295-4.11 2.295-.22-.005-.406-.05-.553-.132-.666-.38-.955-1.834-.73-3.703.054-.46.142-.944.25-1.438zm4.56.64c.44.02.89.034 1.345.034.46 0 .915-.01 1.36-.034-.44.572-.895 1.095-1.345 1.565-.455-.47-.91-.993-1.36-1.565z"/></svg>',Ul='<svg role="img" viewBox="0 0 410 404" xmlns="http://www.w3.org/2000/svg"><defs><linearGradient id="vite-a" x1="6" y1="33" x2="235" y2="344" gradientUnits="userSpaceOnUse"><stop stop-color="#41D1FF"/><stop offset="1" stop-color="#BD34FE"/></linearGradient><linearGradient id="vite-b" x1="195" y1="9" x2="236" y2="293" gradientUnits="userSpaceOnUse"><stop stop-color="#FFEA83"/><stop offset=".08" stop-color="#FFDD35"/><stop offset="1" stop-color="#FFA800"/></linearGradient></defs><path fill="url(#vite-a)" d="M399.641 59.525 215.643 388.545c-3.799 6.793-13.559 6.833-17.415.073L10.582 59.556c-4.201-7.366 2.098-16.29 10.446-14.797l184.195 32.923c1.175.21 2.378.208 3.553-.006l180.343-32.87c8.32-1.517 14.649 7.337 10.522 14.72z"/><path fill="url(#vite-b)" d="M292.965 1.574 156.801 28.255c-2.238.439-3.895 2.335-4.03 4.611l-8.376 141.465c-.197 3.332 2.863 5.918 6.115 5.168l37.91-8.749c3.547-.818 6.752 2.306 6.023 5.873l-11.263 55.153c-.758 3.712 2.727 6.886 6.352 5.785l23.415-7.114c3.63-1.102 7.118 2.081 6.35 5.796l-17.899 86.633c-1.12 5.42 6.088 8.374 9.094 3.728l2.008-3.103 110.954-221.428c1.858-3.707-1.346-7.935-5.418-7.15l-39.022 7.532c-3.667.707-6.787-2.708-5.752-6.296l25.469-88.291c1.036-3.594-2.095-6.612-5.764-5.891z"/></svg>',Gl='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="M18.665 21.978C16.758 23.255 14.465 24 12 24 5.377 24 0 18.623 0 12S5.377 0 12 0s12 5.377 12 12c0 3.583-1.574 6.801-4.067 9.001L9.219 7.2H7.2v9.596h1.615V9.251l9.85 12.727Zm-3.332-8.533 1.6 2.061V7.2h-1.6v6.245Z"/></svg>',Hl='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="#339933" d="M11.998,24c-0.321,0-0.641-0.084-0.922-0.247l-2.936-1.737c-0.438-0.245-0.224-0.332-0.08-0.383 c0.585-0.203,0.703-0.25,1.328-0.604c0.065-0.037,0.151-0.023,0.218,0.017l2.256,1.339c0.082,0.045,0.197,0.045,0.272,0l8.795-5.076 c0.082-0.047,0.134-0.141,0.134-0.238V6.921c0-0.099-0.053-0.192-0.137-0.242l-8.791-5.072c-0.081-0.047-0.189-0.047-0.271,0 L3.075,6.68C2.99,6.729,2.936,6.825,2.936,6.921v10.15c0,0.097,0.054,0.189,0.139,0.235l2.409,1.392 c1.307,0.654,2.108-0.116,2.108-0.89V7.787c0-0.142,0.114-0.253,0.256-0.253h1.115c0.139,0,0.255,0.112,0.255,0.253v10.021 c0,1.745-0.95,2.745-2.604,2.745c-0.508,0-0.909,0-2.026-0.551L2.28,18.675c-0.57-0.329-0.922-0.945-0.922-1.604V6.921 c0-0.659,0.353-1.275,0.922-1.603l8.795-5.082c0.557-0.315,1.296-0.315,1.848,0l8.794,5.082c0.57,0.329,0.924,0.944,0.924,1.603 v10.15c0,0.659-0.354,1.273-0.924,1.604l-8.794,5.078C12.643,23.916,12.324,24,11.998,24z M19.099,13.993 c0-1.9-1.284-2.406-3.987-2.763c-2.731-0.361-3.009-0.548-3.009-1.187c0-0.528,0.235-1.233,2.258-1.233 c1.807,0,2.473,0.389,2.747,1.607c0.024,0.115,0.129,0.199,0.247,0.199h1.141c0.071,0,0.138-0.031,0.186-0.081 c0.048-0.054,0.074-0.123,0.067-0.196c-0.177-2.098-1.571-3.076-4.388-3.076c-2.508,0-4.004,1.058-4.004,2.833 c0,1.925,1.488,2.457,3.895,2.695c2.88,0.282,3.103,0.703,3.103,1.269c0,0.983-0.789,1.402-2.642,1.402 c-2.327,0-2.839-0.584-3.011-1.742c-0.02-0.124-0.126-0.215-0.253-0.215h-1.137c-0.141,0-0.254,0.112-0.254,0.253 c0,1.482,0.806,3.248,4.655,3.248C17.501,17.007,19.099,15.91,19.099,13.993z"/></svg>',_l='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="#DD2C00" d="M19.455 8.369c-.538-.748-1.778-2.285-3.681-4.569-.826-.991-1.535-1.832-1.884-2.245a146 146 0 0 0-.488-.576l-.207-.245-.113-.133-.022-.032-.01-.005L12.57 0l-.609.488c-1.555 1.246-2.828 2.851-3.681 4.64-.523 1.064-.864 2.105-1.043 3.176-.047.241-.088.489-.121.738-.209-.017-.421-.028-.632-.033-.018-.001-.035-.002-.059-.003a7.46 7.46 0 0 0-2.28.274l-.317.089-.163.286c-.765 1.342-1.198 2.869-1.252 4.416-.07 2.01.477 3.954 1.583 5.625 1.082 1.633 2.61 2.882 4.42 3.611l.236.095.071.025.003-.001a9.59 9.59 0 0 0 2.941.568q.171.006.342.006c1.273 0 2.513-.249 3.69-.742l.008.004.313-.145a9.63 9.63 0 0 0 3.927-3.335c1.01-1.49 1.577-3.234 1.641-5.042.075-2.161-.643-4.304-2.133-6.371m-7.083 6.695c.328 1.244.264 2.44-.191 3.558-1.135-1.12-1.967-2.352-2.475-3.665-.543-1.404-.87-2.74-.974-3.975.48.157.922.366 1.315.622 1.132.737 1.914 1.902 2.325 3.461zm.207 6.022c.482.368.99.712 1.513 1.028-.771.21-1.565.302-2.369.273a8 8 0 0 1-.373-.022c.458-.394.869-.823 1.228-1.279zm1.347-6.431c-.516-1.957-1.527-3.437-3.002-4.398-.647-.421-1.385-.741-2.194-.95.011-.134.026-.268.043-.4.014-.113.03-.216.046-.313.133-.689.332-1.37.589-2.025.099-.25.206-.499.321-.74l.004-.008c.177-.358.376-.719.61-1.105l.092-.152-.003-.001c.544-.851 1.197-1.627 1.942-2.311l.288.341c.672.796 1.304 1.548 1.878 2.237 1.291 1.549 2.966 3.583 3.612 4.48 1.277 1.771 1.893 3.579 1.83 5.375-.049 1.395-.461 2.755-1.195 3.933-.694 1.116-1.661 2.05-2.8 2.708-.636-.318-1.559-.839-2.539-1.599.79-1.575.952-3.28.479-5.072zm-2.575 5.397c-.725.939-1.587 1.55-2.09 1.856-.081-.029-.163-.06-.243-.093l-.065-.026c-1.49-.616-2.747-1.656-3.635-3.01-.907-1.384-1.356-2.993-1.298-4.653.041-1.19.338-2.327.882-3.379.316-.07.638-.114.96-.131l.084-.002c.162-.003.324-.003.478 0 .227.011.454.035.677.07.073 1.513.445 3.145 1.105 4.852.637 1.644 1.694 3.162 3.144 4.515z"/></svg>',$l='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="currentColor" d="m12 1.608 12 20.784H0Z"/></svg>',Wl='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="#635BFF" d="M13.976 9.15c-2.172-.806-3.356-1.426-3.356-2.409 0-.831.683-1.305 1.901-1.305 2.227 0 4.515.858 6.09 1.631l.89-5.494C18.252.975 15.697 0 12.165 0 9.667 0 7.589.654 6.104 1.872 4.56 3.147 3.757 4.992 3.757 7.218c0 4.039 2.467 5.76 6.476 7.219 2.585.92 3.445 1.574 3.445 2.583 0 .98-.84 1.545-2.354 1.545-1.875 0-4.965-.921-6.99-2.109l-.9 5.555C5.175 22.99 8.385 24 11.714 24c2.641 0 4.843-.624 6.328-1.813 1.664-1.305 2.525-3.236 2.525-5.732 0-4.128-2.524-5.851-6.594-7.305h.003z"/></svg>',Kl='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><defs><linearGradient id="vb-a" x1="0.414" y1="0.255" x2="0" y2="0.932" gradientUnits="objectBoundingBox"><stop offset="0" stop-color="#eab308"/><stop offset="1" stop-color="#ca8a04"/></linearGradient><linearGradient id="vb-b" x1="0.338" y1="0.02" x2="0.664" y2="0.966" gradientUnits="objectBoundingBox"><stop offset="0" stop-color="#fde68a"/><stop offset="1" stop-color="#fbbf24"/></linearGradient><linearGradient id="vb-c" y1="0.5" x2="1" y2="0.5" gradientUnits="objectBoundingBox"><stop offset="0" stop-color="#7dd3fc"/><stop offset="1" stop-color="#0ea5e9"/></linearGradient></defs><g transform="translate(-2056 -1899)"><path d="M742.271,987.024c-66.706,0-119.121,54.673-121.874,126.408l-2.551,95.471c-3.967,78.653,71.961,105.52,126.936,105.52Z" transform="translate(1463.458 1004.277)" fill="url(#vb-a)"/><path d="M92.616.01H319.894c54.53-.8,95.624,40.1,98.381,93.335l6.144,135.76c.732,67.368-48.116,94.95-104.525,95.335L92.616,327.374C34.061,327.8-1.063,283.663.022,229.105l3.8-135.76C7.41,33.54,33.3,1.093,92.616.01Z" transform="translate(2118.42 1991.302)" fill="url(#vb-b)"/><path d="M86.844.009H299.958c51.132-.746,89.665,37.307,92.25,86.824l5.761,126.29c.686,62.669-45.117,88.326-98.011,88.685L86.844,304.537C31.938,304.933-1,263.875.02,213.123L3.58,86.834C6.948,31.2,31.222,1.016,86.844.009Z" transform="translate(2136.977 2001.737)" fill="#111827"/><circle cx="27.626" cy="27.626" r="27.626" transform="translate(2421.148 2104.357)" fill="url(#vb-c)"/><circle cx="27.626" cy="27.626" r="27.626" transform="translate(2208.034 2104.357)" fill="url(#vb-c)"/></g></svg>',Yl='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="#FBF0DF" d="M12 22.596c6.628 0 12-4.338 12-9.688 0-3.318-2.057-6.248-5.219-7.986-1.286-.715-2.297-1.357-3.139-1.89C14.058 2.025 13.08 1.404 12 1.404c-1.097 0-2.334.785-3.966 1.821a49.92 49.92 0 0 1-2.816 1.697C2.057 6.66 0 9.59 0 12.908c0 5.35 5.372 9.687 12 9.687v.001ZM10.599 4.715c.334-.759.503-1.58.498-2.409 0-.145.202-.187.23-.029.658 2.783-.902 4.162-2.057 4.624-.124.048-.199-.121-.103-.209a5.763 5.763 0 0 0 1.432-1.977Zm2.058-.102a5.82 5.82 0 0 0-.782-2.306v-.016c-.069-.123.086-.263.185-.172 1.962 2.111 1.307 4.067.556 5.051-.082.103-.23-.003-.189-.126a5.85 5.85 0 0 0 .23-2.431Zm1.776-.561a5.727 5.727 0 0 0-1.612-1.806v-.014c-.112-.085-.024-.274.114-.218 2.595 1.087 2.774 3.18 2.459 4.407a.116.116 0 0 1-.049.071.11.11 0 0 1-.153-.026.122.122 0 0 1-.022-.083a5.891 5.891 0 0 0-.737-2.331Zm-5.087.561c-.617.546-1.282.76-2.063 1-.117 0-.195-.078-.156-.181 1.752-.909 2.376-1.649 2.999-2.778 0 0 .155-.118.188.085 0 .304-.349 1.329-.968 1.874Zm4.945 11.237a2.957 2.957 0 0 1-.937 1.553c-.346.346-.8.565-1.286.62a2.178 2.178 0 0 1-1.327-.62 2.955 2.955 0 0 1-.925-1.553.244.244 0 0 1 .064-.198.234.234 0 0 1 .193-.069h3.965a.226.226 0 0 1 .19.07c.05.053.073.125.063.197Zm-5.458-2.176a1.862 1.862 0 0 1-2.384-.245 1.98 1.98 0 0 1-.233-2.447c.207-.319.503-.566.848-.713a1.84 1.84 0 0 1 1.092-.11c.366.075.703.261.967.531a1.98 1.98 0 0 1 .408 2.114 1.931 1.931 0 0 1-.698.869v.001Zm8.495.005a1.86 1.86 0 0 1-2.381-.253 1.964 1.964 0 0 1-.547-1.366c0-.384.11-.76.32-1.079.207-.319.503-.567.849-.713a1.844 1.844 0 0 1 1.093-.108c.367.076.704.262.968.534a1.98 1.98 0 0 1 .4 2.117 1.932 1.932 0 0 1-.702.868Z"/></svg>',fo={bun:{svg:`data:image/svg+xml,${encodeURIComponent(Yl)}`,color:"#FBF0DF",name:"Bun"},typescript:{svg:`data:image/svg+xml,${encodeURIComponent(zl)}`,color:"#3178C6",name:"TypeScript"},react:{svg:`data:image/svg+xml,${encodeURIComponent(Vl)}`,color:"#61DAFB",name:"React"},vite:{svg:`data:image/svg+xml,${encodeURIComponent(Ul)}`,color:"#BD34FE",name:"Vite"},nextjs:{svg:`data:image/svg+xml,${encodeURIComponent(Gl)}`,color:"var(--foreground, #000000)",name:"Next.js"},nodejs:{svg:`data:image/svg+xml,${encodeURIComponent(Hl)}`,color:"#339933",name:"Node.js"},firebase:{svg:`data:image/svg+xml,${encodeURIComponent(_l)}`,color:"#DD2C00",name:"Firebase"},vercel:{svg:`data:image/svg+xml,${encodeURIComponent($l)}`,color:"var(--foreground, #000000)",name:"Vercel"},stripe:{svg:`data:image/svg+xml,${encodeURIComponent(Wl)}`,color:"#635BFF",name:"Stripe"},valibot:{svg:`data:image/svg+xml,${encodeURIComponent(Kl)}`,color:"#FBBF24",name:"Valibot"}};import{jsx as he,jsxs as rc}from"react/jsx-runtime";function tc({techKey:e,variant:t}){let o=fo[e],[n,r]=ql(!1);if(!o)return null;let a=o.svg.replace("data:image/svg+xml,",""),i=decodeURIComponent(a);return he(Zl,{variant:t,className:"dndev-tech-card",style:{"--tech-color":o.color},"data-hover":n,onMouseEnter:()=>r(!0),onMouseLeave:()=>r(!1),children:rc(Ql,{direction:"column",align:"center",gap:"tight",children:[he("div",{className:"dndev-tech-card-logo","data-tech":e,dangerouslySetInnerHTML:{__html:i}}),he(Xl,{as:"span",level:"small",children:o.name})]})})}function oc({title:e,techs:t,cols:o=3,columns:n,gap:r="medium",separator:a=!1,className:i}){let c=n||(typeof o=="number"?{mobile:o,tablet:o,desktop:o,wide:o}:{mobile:o[0],tablet:o[1],desktop:o[2],wide:o[3]}),l=s=>{if(s==="long")return{cols:2,rows:1};if(s==="high")return{cols:1,rows:2};if(s==="huge")return{cols:2,rows:2}},d=t.filter(s=>fo[s.name]).map(s=>({id:s.name,content:he(tc,{techKey:s.name,variant:s.variant}),span:l(s.size)})),u=he(jl,{items:d,columns:c,gap:r,className:i,ariaLabel:"Technology stack"});return e?he(Jl,{title:e,separator:a,className:"dndev-tech-bento",children:he("div",{className:"dndev-tech-bento-grid",children:u})}):he("div",{className:ec("dndev-tech-bento",i),children:u})}var nc=oc;import{Suspense as ac,lazy as ic}from"react";import{useConsent as Rn}from"@donotdev/core";import{jsx as Fn}from"react/jsx-runtime";var sc=ic(()=>Promise.resolve().then(()=>($t(),_t)));function a2(){let e=Rn("hasConsented"),t=Rn("showBanner");return e&&!t?null:Fn(ac,{fallback:null,children:Fn(sc,{})})}import{Button as lc,ScrollArea as cc}from"@donotdev/components";import{cn as Bn}from"@donotdev/components";import{jsx as et,jsxs as dc}from"react/jsx-runtime";function d2({content:e,cta:t,align:o="center",justify:n="center",disableScrollArea:r=!1,contentClassName:a,ctaClassName:i}){return dc("div",{className:"dndev-game-container",children:[et("div",{className:Bn("dndev-game-container__content",a),"data-align":o,"data-justify":n,children:r?et("div",{style:{overflow:"auto",overscrollBehavior:"contain"},children:e}):et(cc,{className:"dndev-game-container__scroll",children:e})}),t&&et("div",{className:Bn("dndev-game-container__cta",i),children:et(lc,{onClick:t.onClick,disabled:t.disabled??!1,variant:t.variant??"default",className:"dndev-game-container__cta-button",children:t.label})})]})}import{useEffect as uc,useMemo as pc,Suspense as mc,lazy as gc}from"react";import{jsx as ho}from"react/jsx-runtime";var Mn=new Set;function g2({screenRegistry:e,currentScreen:t,nextScreen:o,fallback:n=null}){uc(()=>{if(o&&!Mn.has(o)){Mn.add(o);let a=e[o];a&&a().catch(()=>{})}},[o,e]);let r=pc(()=>{if(!t)return null;let a=e[t];return a?gc(a):null},[t,e]);return!t||!r?null:ho("div",{style:{height:"100%"},children:ho(mc,{fallback:n,children:ho(r,{})})})}import{cn as fc,DISPLAY as vo}from"@donotdev/components";import{useAppConfig as On}from"@donotdev/core";import{jsx as It,jsxs as yc}from"react/jsx-runtime";var hc=({display:e=vo.AUTO,linkToHome:t=!0,className:o})=>{let n=On("name"),a=On("shortName")||n||"App",i=Y.getLogoSvgContent(),c=Y.resolveLogo(),l=e===vo.FULL||e===vo.AUTO,d=i?It("div",{className:"app-branding-logo",role:"img","aria-label":a,dangerouslySetInnerHTML:{__html:i}}):Y.assetExists(c)?It("img",{src:c,alt:a,className:"app-branding-logo"}):null,u=l&&It("span",{className:"app-branding-title","data-display":e,children:a}),s=yc("div",{className:fc("app-branding",o),"data-display":e,children:[d,u]});return t?It(A,{path:"/",className:"app-branding-link",children:s}):s},vc=hc;import{cn as zn}from"@donotdev/components";import{useAppConfig as Vn}from"@donotdev/core";import{jsx as Gn}from"react/jsx-runtime";var Un={sm:{width:"var(--icon-md)",height:"var(--icon-md)"},md:{width:"var(--icon-touch)",height:"var(--icon-touch)"},lg:{width:"var(--icon-touch)",height:"var(--icon-touch)"},xl:{width:"var(--touch-target)",height:"var(--touch-target)"},header:{height:"var(--icon-touch)",width:"auto"}},bc=({alt:e,size:t="header",className:o})=>{let n=e||Vn("name")||Vn("shortName")||"App",r=Y.getLogoSvgContent(),a=Y.resolveLogo(),i=typeof t=="string"&&t in Un?Un[t]:typeof t=="string"?{}:{width:t,height:t};return r?Gn("div",{className:zn("app-icon-header",o),style:{display:"inline-flex",...i},role:"img","aria-label":n,dangerouslySetInnerHTML:{__html:r}}):Gn("img",{src:a,alt:n,className:zn(o),style:{objectFit:"contain",...i}})},Sc=bc;import{cn as Hn}from"@donotdev/components";import{useAppConfig as _n,useBreakpoint as Cc}from"@donotdev/core";import{jsx as $n}from"react/jsx-runtime";var xc=({title:e,className:t,linkToHome:o=!0})=>{let n=Cc("isMobileOrTablet"),r=_n("name"),a=_n("shortName"),i=e||n&&a||r||"App",c=$n("div",{className:Hn("dndev-text-base",t),style:{fontSize:"var(--font-size-xl)",fontWeight:700,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",maxWidth:"100%"},children:i});return o?$n(A,{path:"/",className:Hn("dndev-inline-block",t),children:c}):c},Tc=xc;import{ChevronRight as Pc}from"lucide-react";import{useMemo as Lc}from"react";import{cn as Ec}from"@donotdev/components";import{useTranslation as Dc}from"@donotdev/core";import{useLocation as Rc}from"@donotdev/ui/routing/hooks";import{useMemo as Wn}from"react";import{useNavigationStore as B2,getRoutes as kc,getRouteManifest as M2}from"@donotdev/core";function wc(){return Wn(()=>{try{let e=kc();return!e||e.length===0?[]:Ic(e)}catch{return[]}},[])}function Kn(){let e=wc();return Wn(()=>e.flatMap(t=>t.routes),[e])}function Ic(e){let t=new Map;return e.forEach(o=>{let n=typeof o.path=="string"?o.path:String(o.path);if(!n||n==="undefined"||n==="null")return;let r=o.meta?.entity||Nc(n)||"other",a={path:n,label:o.meta?.title||Ac(n),icon:o.meta?.icon,component:o.component,importPath:o.importPath,exportName:o.exportName,auth:o.auth,meta:o.meta};t.has(r)||t.set(r,{label:r.charAt(0).toUpperCase()+r.slice(1),routes:[]}),t.get(r)?.routes.push(a)}),Array.from(t.values())}function Nc(e){return e.split("/").filter(Boolean)[0]||null}function Ac(e){let t=e.split("/").filter(Boolean),o=t[t.length-1];return o?o.split("-").map(n=>n.charAt(0).toUpperCase()+n.slice(1)).join(" "):"Home"}import{jsx as tt,jsxs as Mc}from"react/jsx-runtime";var Fc=({items:e,separator:t=Pc,showHome:o=!0,homeHref:n="/",variant:r="default",className:a})=>{let{t:i}=Dc("dndev"),c=Rc(),l=Kn(),d=Lc(()=>new Set(l.map(g=>g.path)),[l]),u=e||(()=>{let g=c.pathname.split("/").filter(Boolean),p=[],m="";return g.forEach(f=>{m+=`/${f}`;let h=f.split("-").map(v=>v.charAt(0).toUpperCase()+v.slice(1)).join(" "),C=d.has(m)?m:void 0;p.push({label:h,href:C})}),p})(),s=o?[{label:i("navigation.home","Home"),href:n},...u]:u;return r==="smart"&&c.pathname.split("/").filter(Boolean).length<2?null:tt("nav",{role:"navigation","aria-label":"Breadcrumb navigation",className:Ec("breadcrumbs",a),children:s.map((g,p)=>{let f=p===s.length-1||!g.href;return Mc("span",{className:"breadcrumb-item",children:[p>0&&tt(t,{className:"dndev-size-md separator"}),g.icon&&tt(g.icon,{className:"dndev-size-md icon"}),g.href&&!f?tt(A,{path:g.href,className:"breadcrumb-link",children:g.label}):tt("span",{className:"breadcrumb-label",children:g.label})]},p)})})},Bc=Fc;import{useTranslation as Oc,maybeTranslate as Yn,useLayout as yo,useAppConfig as zc}from"@donotdev/core";import{jsx as Oe,jsxs as Uc}from"react/jsx-runtime";var Vc=({asLink:e=!1,className:t})=>{let o=zc("app"),n=yo("gameTitle"),r=yo("gameSubtitle"),a=yo("gameNamespace"),{t:i}=Oc(a||"dndev"),c=Yn(i,n??void 0),l=Yn(i,r??void 0),d=o?.name||"Game";if(c)return Oe("div",{className:t,children:Uc("div",{style:{textAlign:"center"},children:[Oe("h2",{style:{fontSize:"var(--font-size-lg)",fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:c}),l&&Oe("p",{style:{color:"var(--muted-foreground)",fontSize:"var(--font-size-sm)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:l})]})});let u=Oe("h2",{style:{fontSize:"var(--font-size-lg)",fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:d});return e?Oe(A,{path:"/",className:t,style:{fontSize:"var(--font-size-2xl)",fontWeight:700,transition:"color var(--dur-fast) ease-out"},onMouseEnter:s=>s.currentTarget.style.color="var(--primary)",onMouseLeave:s=>s.currentTarget.style.color="var(--foreground)",children:d}):Oe("div",{className:t,children:u})};import{Trash2 as Gc}from"lucide-react";import{useState as qn}from"react";import{Button as Hc,BUTTON_VARIANT as _c,Checkbox as $c,Stack as bo,useToast as Wc}from"@donotdev/components";import{useTranslation as Kc}from"@donotdev/core";import{useRefresh as Yc}from"@donotdev/ui/routing/hooks";import{jsx as Nt,jsxs as jn}from"react/jsx-runtime";function qc(){let{t:e}=Kc("dndev"),{toast:t}=Wc(),[o,n]=qn(!1),r=Yc(),[a,i]=qn({localStorage:!0,sessionStorage:!0,applicationCache:!0,serviceWorker:!0,cookies:!0,indexedDB:!0,webSQL:!0,memoryCache:!0}),c=async()=>{try{n(!0);let l=[];if(a.localStorage&&typeof window<"u")try{localStorage.clear(),l.push("localStorage")}catch{}if(a.sessionStorage&&typeof window<"u")try{sessionStorage.clear(),l.push("sessionStorage")}catch{}if(a.indexedDB&&typeof window<"u"&&"indexedDB"in window)try{if("databases"in indexedDB){let u=await indexedDB.databases();await Promise.all(u.map(async s=>{if(s.name){let g=indexedDB.deleteDatabase(s.name);await new Promise((p,m)=>{g.onsuccess=()=>p(void 0),g.onerror=()=>m(g.error)})}}))}l.push("IndexedDB")}catch{}if(a.webSQL&&"openDatabase"in window)try{let u=globalThis.openDatabase("","","","");u&&u.transaction&&u.transaction(s=>{s.executeSql('SELECT name FROM sqlite_master WHERE type="table"',[],(g,p)=>{for(let m=0;m<p.rows.length;m++){let f=p.rows.item(m).name;g.executeSql(`DROP TABLE IF EXISTS ${f}`)}})}),l.push("WebSQL")}catch{}if(a.applicationCache&&"caches"in window)try{let u=await caches.keys();await Promise.all(u.map(async s=>{try{await caches.delete(s)}catch{}})),l.push("Application Cache")}catch{}if(a.serviceWorker&&"serviceWorker"in navigator)try{let u=await navigator.serviceWorker.getRegistrations();await Promise.all(u.map(async s=>{try{await s.unregister()}catch{}})),l.push("Service Workers")}catch{}if(a.cookies)try{document.cookie.split(";").forEach(u=>{let s=u.indexOf("="),g=s>-1?u.substr(0,s):u;document.cookie=`${g.trim()}=;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/`,document.cookie=`${g.trim()}=;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/;domain=${window.location.hostname}`,document.cookie=`${g.trim()}=;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/;domain=.${window.location.hostname}`}),l.push("Cookies")}catch{}if(a.memoryCache)try{"gc"in window&&typeof globalThis.gc=="function"&&globalThis.gc(),l.push("Memory Cache")}catch{}let d=l.length>0?e("settings.clearCache.success","Cache cleared successfully: {{items}}",{items:l.join(", ")}):e("settings.clearCache.noItemsCleared","No cache items were cleared");t("success",d),l.length>0&&setTimeout(()=>{typeof globalThis<"u"&&globalThis._DNDEV_STORES_&&(globalThis._DNDEV_STORES_={}),typeof window<"u"?window.location.href=window.location.href:r()},1e3)}catch{t("error",e("settings.clearCache.error","Error clearing cache"))}finally{n(!1)}};return jn(bo,{gap:"medium",children:[Nt(bo,{gap:"medium",children:Object.entries(a).map(([l,d])=>jn(bo,{direction:"row",align:"center",gap:"tight",children:[Nt($c,{id:l,checked:d,onCheckedChange:u=>i(s=>({...s,[l]:!!u}))}),Nt("label",{htmlFor:l,style:{fontSize:"var(--font-size-sm)",fontWeight:500,lineHeight:1,cursor:"pointer"},children:e(`settings.clearCache.${l}`,l.charAt(0).toUpperCase()+l.slice(1))})]},l))}),Nt(Hc,{variant:_c.DESTRUCTIVE,style:{margin:"0 auto"},disabled:o||!Object.values(a).some(Boolean),onClick:c,icon:Gc,children:o?e("settings.clearCache.clearing","Clearing..."):e("settings.clearCache.button","Clear Cache")})]})}var So=qc;import{DropdownMenu as Qc,Button as Co,Stack as Jn}from"@donotdev/components";import{Link as jc}from"lucide-react";import{navigationMenuTriggerStylePrimitive as Zc}from"@donotdev/components";be();import{jsx as Zn,jsxs as Jc}from"react/jsx-runtime";var ze=({route:e,showIcons:t=!0})=>{let o=t&&!!e.icon,n=!!e.label;return Jc(A,{path:e.path,className:Zc(),...o&&!n&&{"data-display":"compact"},children:[t&&Zn(W,{icon:e.icon,fallback:jc}),Zn("span",{children:e.label})]})};import{jsx as Z}from"react/jsx-runtime";var Xc=({navigation:e,className:t})=>Z(Jn,{role:"navigation",direction:"row",align:"center",className:t,style:{gap:"var(--gap-sm)"},children:e.map((o,n)=>o.routes&&o.routes.length>0?Z(Qc,{trigger:Z(Co,{icon:o.icon,children:o.label}),items:o.routes.map(r=>{let a=r.path?r.external?Z("a",{href:r.path,target:"_blank",rel:"noopener noreferrer",style:{display:"flex",alignItems:"center",gap:"var(--gap-sm)",width:"100%"},children:Z(ze,{route:r})}):Z(A,{path:r.path,style:{display:"flex",alignItems:"center",gap:"var(--gap-sm)",width:"100%"},children:Z(ze,{route:r})}):Z(Jn,{direction:"row",align:"center",style:{gap:"var(--gap-sm)",width:"100%"},children:Z(ze,{route:r})});return{label:r.label,children:a,asChild:!!r.path}}),contentAlign:"start"},o.label+n):o.path?Z(Co,{icon:o.icon,"aria-label":o.label,render:({children:r,...a})=>Z(A,{path:o.path,...a,children:r}),children:o.label},o.label+n):Z(Co,{icon:o.icon,disabled:!0,"aria-label":o.label,children:o.label},o.label+n))}),ed=Xc;import{Card as td,cn as od}from"@donotdev/components";import{jsx as xo}from"react/jsx-runtime";var nd=({languages:e,currentLanguage:t,onLanguageChange:o,className:n})=>xo(td,{className:od("dndev-z-modal",n),style:{position:"fixed",bottom:"var(--gap-md)",right:"var(--gap-md)",display:"flex",alignItems:"center",gap:"var(--gap-sm)",transition:"var(--dur-fast) ease-out"},role:"region","aria-label":"Language selector","data-role":"floating",children:xo("select",{style:{backgroundColor:"transparent",outline:"none",fontSize:"var(--font-size-base)",cursor:"pointer"},value:t,onChange:r=>o?.(r.target.value),"aria-label":"Select language",children:e.map(r=>xo("option",{value:r,children:r},r))})}),rd=nd;import{MoreHorizontal as ad}from"lucide-react";import{Button as id,BUTTON_VARIANT as sd,DropdownMenu as ld}from"@donotdev/components";import{jsx as Qn}from"react/jsx-runtime";var cd=({children:e,className:t})=>Qn(ld,{trigger:Qn(id,{variant:sd.GHOST,icon:ad,"aria-label":"Menu",className:t}),contentAlign:"end",children:e}),dd=cd;import{MoreHorizontal as ud}from"lucide-react";import{DISPLAY as ot,DropdownMenu as pd,Button as md}from"@donotdev/components";import{cn as gd}from"@donotdev/components";import{useBreakpoint as Xn,useTranslation as fd}from"@donotdev/core";Re();import{jsx as At}from"react/jsx-runtime";var hd=({className:e="",showIcons:t=!0,display:o=ot.AUTO})=>{let{t:n}=fd("dndev"),r=Xn("isMobile"),a=Xn("isTablet"),i=te();return(o===ot.AUTO?r||a?ot.COMPACT:ot.FULL:o)===ot.COMPACT?At(pd,{trigger:At(md,{variant:"ghost",icon:ud,"aria-label":n("navigation.menu","Navigation"),className:e}),contentAlign:"end",items:i.map(l=>({label:l.label,children:At(ze,{route:l,showIcons:t}),asChild:!0}))}):At(dn,{overflowDetection:!0,showIcons:t,className:gd(e),style:{flex:1}})},vd=hd;import{Bell as yd}from"lucide-react";import{useMemo as bd,useEffect as Sd,useRef as Cd}from"react";import{Button as xd,cn as Td,toast as kd,Stack as wd}from"@donotdev/components";import{jsx as To}from"react/jsx-runtime";var Id={sm:{button:{width:"var(--icon-md)",height:"var(--icon-md)"},icon:{width:"var(--icon-md)",height:"var(--icon-md)"},badge:{width:"var(--icon-md)",height:"var(--icon-md)",fontSize:"var(--font-size-xs)"}},md:{button:{width:"var(--touch-target)",height:"var(--touch-target)"},icon:{width:"var(--icon-md)",height:"var(--icon-md)"},badge:{width:"var(--icon-md)",height:"var(--icon-md)",fontSize:"var(--font-size-xs)"}},lg:{button:{width:"var(--touch-target)",height:"var(--touch-target)"},icon:{width:"var(--icon-touch)",height:"var(--icon-touch)"},badge:{width:"var(--icon-touch)",height:"var(--icon-touch)",fontSize:"var(--font-size-sm)"}}},Nd=({notifications:e=[],count:t=0,loading:o=!1,onNotificationClick:n,onMarkAllRead:r,onDropdownOpen:a,className:i,maxVisible:c=10,alwaysShow:l=!1,size:d="md",disabled:u=!1})=>{let s=Id[d],g=Cd(new Set),p=bd(()=>t===0?null:t>99?"99+":t.toString(),[t]),m=t>0||l;return Sd(()=>{e.forEach(f=>{if(!g.current.has(f.id)){g.current.add(f.id);let h=f.type==="error"?"error":f.type==="warning"?"warning":f.type==="success"?"success":"info";kd({title:f.title,description:f.message,toastType:h,duration:0,onDismiss:()=>{g.current.delete(f.id),n&&n(f)}})}})},[e,n]),m?To("div",{className:Td(i),style:{position:"relative"},children:To(xd,{disabled:u,style:{...s.button,position:"relative"},onFocus:f=>{f.currentTarget.style.outline="2px solid var(--ring)",f.currentTarget.style.outlineOffset="2px"},onBlur:f=>{f.currentTarget.style.outline="none"},"aria-label":`${t} notification${t!==1?"s":""}`,icon:yd,children:p&&To(wd,{align:"center",justify:"center",style:{position:"absolute",top:"-0.25rem",right:"-0.25rem",backgroundColor:"var(--destructive)",color:"var(--destructive-foreground)",borderRadius:"var(--radius-full)",fontWeight:600,lineHeight:1,minWidth:0,...s.badge},"aria-hidden":"true",children:p})})}):null},Ad=Nd;import{Settings as Pd,Check as Ld}from"lucide-react";import*as Pt from"lucide-react";import{Button as Ed,BUTTON_VARIANT as Dd,DropdownMenu as Rd,Stack as Fd,DISPLAY as Bd}from"@donotdev/components";import{useTranslation as Md}from"@donotdev/core";import{useLanguageSelector as Od,useTheme as ko,Flag as zd}from"@donotdev/core";import{jsx as ve,jsxs as Gd}from"react/jsx-runtime";function Vd({variant:e=Dd.OUTLINE}={}){let{t}=Md("dndev"),{languages:o,currentLanguage:n,changeLanguage:r,isLoading:a}=Od(),i=ko("availableThemes"),c=ko("currentTheme"),l=ko("setTheme"),d=p=>{if(!p)return Pt.Palette;let m=p.replace(/['"]/g,"");return Pt[m]||Pt.Palette},u=i.map(p=>{let m=d(p.meta?.icon),f=p.name===c;return{label:p.displayName||p.name,icon:m,onClick:()=>l(p.name),checked:f}}),s=o.map(p=>{let m=p.id===n;return{label:p.name,onClick:()=>r(p.id),disabled:a,checked:m,className:m?"bg-accent":void 0,iconEnd:m&&!a?Ld:void 0,children:Gd(Fd,{direction:"row",align:"center",gap:"tight",children:[ve(zd,{code:p.flagCode||p.id,title:`${p.name} flag`}),ve("span",{children:p.name}),a&&m&&ve("div",{style:{marginInlineStart:"auto"},children:ve("div",{style:{width:"0.5rem",height:"0.5rem",borderRadius:"50%",backgroundColor:"var(--primary)"}})})]})}}),g=[{label:t("auth.title","Authentication"),subContent:ve(lo,{display:Bd.COMPACT})},{label:t("settings.theme","Theme"),subItems:u},{label:t("settings.language","Language"),subItems:s},{label:t("settings.clearCache.title","Clear Cache"),subContent:ve(So,{})}];return ve(Rd,{trigger:ve(Ed,{variant:e,"aria-label":t("settings.title","Settings"),icon:Pd}),items:g,contentWidth:"14rem",contentAlign:"end"})}var Ud=Vd;import*as Lt from"lucide-react";import{Button as er,BUTTON_VARIANT as Hd,DropdownMenu as _d,DISPLAY as $d}from"@donotdev/components";import{useTranslation as Wd}from"@donotdev/core";import{useTheme as wo}from"@donotdev/core";import{jsx as No}from"react/jsx-runtime";var Io=e=>{if(!e)return Lt.Palette;let t=e.replace(/['"]/g,"");return Lt[t]||Lt.Palette},Kd=({display:e=$d.AUTO,"no-tooltip":t=!1})=>{let{t:o}=Wd("dndev"),n=wo("availableThemes"),r=wo("currentTheme"),a=wo("setTheme");if(n.length<=1)return null;let i=n.find(C=>C.name===r)||n[0],c=n.length===2?n.find(C=>C.name!==i?.name)||n[0]:null,l=i?Io(i.meta?.icon):null,d=c?Io(c.meta?.icon):null,u=i?.displayName||i?.name||"Theme",s=c?.displayName||c?.name||"Theme",g=n.length===2&&c&&d,p=g?d:l,m=g?t?void 0:o("common.themeSelector.tooltipWithNext","Change Theme: Switch to {{next}}",{next:c?.displayName||c?.name}):t?void 0:o("common.themeSelector.changeTheme","Change Theme"),f={variant:Hd.OUTLINE,"aria-label":o("common.themeSelector.changeTheme","Change Theme"),tooltip:m,icon:p,display:e};if(g&&c)return No(er,{...f,onClick:()=>a(c.name),children:s});if(!i||!l)return null;let h=n.map(C=>{let v=Io(C.meta?.icon),k=C.name===r;return{label:C.displayName||C.name,icon:v,onClick:()=>a(C.name),checked:k}});return No(_d,{trigger:No(er,{...f,children:u}),items:h,contentWidth:"10rem"})},Yd=Kd;import{useEffect as jd}from"react";import{checkLicense as Zd}from"@donotdev/core";var qd='<svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="512" height="512"><title>logo</title><style>.s0{opacity:.98;fill:#f23d29}.s1{opacity:.99;fill:#03bec4}.s2{opacity:.97;fill:#27494a}</style><g id="Background"><path id="Path 0" fill-rule="evenodd" class="s0" d="m254 41.1c5.8-0.1 15.2 0.4 21 0.9 5.8 0.6 16 2.2 22.8 3.5 6.7 1.4 17.5 4.2 23.9 6.4 6.5 2.1 16.7 6.1 22.8 8.8 6.1 2.7 15.5 7.6 21 10.8 5.5 3.3 14.3 9.2 19.5 13 5.2 3.9 13.8 11.2 19 16.2 5.2 5 12.2 12.3 15.5 16.2 3.3 4 8.8 11.1 12.2 15.9 3.4 4.8 8.7 13.2 11.7 18.7 3 5.5 6.9 13.4 8.7 17.5 1.7 4.1 4.7 12 6.6 17.5 1.9 5.5 4.5 14.5 5.8 20 1.3 5.5 3.1 15.3 3.9 21.8 0.9 6.6 1.6 19 1.6 28.7 0 9.4-0.7 22.1-1.5 28.3-0.8 6.1-3 17.3-4.8 24.7-1.9 7.4-5.5 18.9-8.2 25.5-2.6 6.6-7 16.3-9.8 21.5-2.8 5.2-8 13.8-11.5 19-3.6 5.2-9.3 12.9-12.7 17-3.5 4.1-10.7 11.8-16.2 17-5.4 5.3-12.7 11.9-16.3 14.7-3.6 2.8-11.4 8.3-17.5 12.2-6.1 4-16.4 9.8-23 13.1-6.6 3.2-17.4 7.6-24 9.8-6.6 2.3-17.2 5.2-23.5 6.6-6.3 1.4-16.2 3-22 3.7-6.4 0.7-17.5 1-28.5 0.6-11.9-0.3-21.7-1.2-29-2.6-6.1-1.1-15.9-3.4-22-5.1-6.1-1.7-15.9-5.2-22-7.6-6.1-2.5-15.5-6.9-21-9.8-5.5-2.9-14.1-8-19-11.3-4.9-3.3-12.4-8.7-16.5-12-4.1-3.4-12.5-11.2-18.6-17.4-6.1-6.3-13.9-15.2-17.3-19.9-3.5-4.7-8.8-12.6-11.9-17.5-3-4.9-7.9-13.9-10.8-20-2.9-6.1-7.1-16.4-9.3-23-2.2-6.6-5.1-17.6-6.5-24.5-1.4-6.9-3-17.4-3.7-23.5-0.7-6.7-0.9-17.2-0.6-27 0.4-8.8 1.3-20.5 2.2-26 0.8-5.5 2.7-14.5 4.1-20 1.4-5.5 3.9-14.1 5.5-19 1.7-4.9 6.3-15.8 10.4-24 4-8.3 10-19.1 13.3-24 3.3-4.9 9-12.6 12.5-17 3.6-4.4 11.4-12.8 17.3-18.6 6-5.8 15.4-13.9 20.9-18 5.5-4.1 14.5-10 20-13.2 5.5-3.1 14.5-7.6 20-10.1 5.5-2.4 15.1-6 21.3-8 6.1-2 16.7-4.7 23.5-6.1 6.7-1.3 16.3-2.8 21.2-3.3 4.9-0.5 13.7-1 19.5-1.1zm-21 38c-4.7 0.5-12.1 1.9-16.5 3-4.4 1.1-11.6 3.1-16 4.5-4.4 1.5-13.8 5.4-21 8.9-7.2 3.5-16.1 8.5-20 11.1-3.8 2.6-10 7.2-13.8 10.3-3.7 3.1-6.7 5.9-6.7 6.3 0 0.5 9.3 10.3 20.8 21.9l20.7 21c5.5-10.5 9-16.5 11.5-20.1 2.4-3.6 7.2-9.6 10.5-13.5 3.3-3.8 9.4-9.6 13.5-12.9 4.1-3.2 10.7-7.4 14.5-9.2 3.9-1.8 9.7-4 13-4.9 3.3-0.8 9.6-1.5 14-1.5 4.4 0 10.7 0.7 14 1.6 3.3 0.9 9.1 3.2 13 5.1 3.9 2 9.3 5.2 12 7.3 2.8 2 8.5 7.5 12.9 12.1 4.3 4.6 10.2 11.8 13.1 15.9 2.9 4.1 7.8 12.2 10.8 18 3 5.8 7.1 14.8 9 20 2 5.2 4.2 13 5.1 17.3 0.9 4.2 1.6 11.4 1.6 15.9 0 5.6-0.6 10.6-2.1 15.3-1.1 3.8-3.8 9.9-5.9 13.5-2.1 3.6-5.8 8.9-8.4 11.7-2.5 2.9-4.6 5.6-4.6 6 0 0.5 1.4 1.2 3.2 1.6 1.8 0.4 6.4 2.4 10.3 4.4 3.9 1.9 9 4.9 11.5 6.6 2.5 1.8 7.1 5.9 10.4 9.2 4.2 4.3 7.1 8.6 10.1 15 2.4 4.9 5 11.9 5.9 15.5 0.9 3.6 2.3 11.9 3.2 18.5 1.1 8 1.4 15.9 1.1 23.5l-0.5 11.5 6.3 6.4c6.3-8.1 10.4-13.8 13.1-17.9 2.8-4.1 6.4-10 8.1-13 1.7-3 5.1-10.2 7.6-16 2.5-5.8 5.8-15.2 7.5-21 1.7-5.8 3.7-13.9 4.6-18 0.8-4.1 2-11.9 2.5-17.3 0.6-5.3 1.1-13.5 1.1-18.2 0-4.7-0.5-12.9-1.1-18.3-0.6-5.3-1.9-13.5-2.9-18.2-1-4.7-3.1-12.3-4.5-17-1.5-4.7-5.1-13.4-7.9-19.5-2.9-6.1-7.6-14.8-10.6-19.5-2.9-4.7-7.2-11-9.5-14-2.3-3-7.8-9.3-12.1-13.9-4.3-4.6-12-11.6-16.9-15.6-4.9-4.1-13.1-9.9-18-13-4.9-3.1-13.3-7.7-18.5-10.2-5.2-2.5-13.6-6.1-18.5-7.8-4.9-1.8-14.2-4.5-20.5-5.9-6.3-1.4-17.1-3-24-3.6-6.9-0.5-13.4-0.9-14.5-0.8-1.1 0.1-4.5 0.3-7.5 0.5-3 0.2-9.3 0.8-14 1.4zm-125.4 79.6c-4.3 6.5-9.8 15.9-12.1 20.8-2.4 4.9-5.9 13.7-7.9 19.5-1.9 5.8-4.4 15-5.5 20.5-1.1 5.5-2.5 15.8-3.1 23-0.6 7.2-0.8 16.8-0.5 21.5 0.4 4.7 1.5 13.9 2.5 20.5 1.1 6.6 3.5 17.3 5.4 23.8 2 6.4 5.5 16.1 7.9 21.5 2.3 5.3 6.7 13.8 9.7 18.7 3 4.9 8.1 12.4 11.4 16.5 3.3 4.1 9.8 11.5 14.5 16.3 4.7 4.9 11.8 11.2 15.6 14.2 3.9 2.9 11.1 7.9 16 11 4.9 3.1 13.1 7.6 18 10 4.9 2.4 13.7 5.9 19.5 7.9 5.8 1.9 14.6 4.4 19.5 5.5 4.9 1.1 13.7 2.5 19.5 3.2 6.6 0.7 16.1 0.9 25.5 0.6 9.8-0.4 19.1-1.5 27-3.1 6.6-1.4 16.7-4.1 22.5-6.1 5.8-2 15-5.8 20.5-8.5 5.5-2.7 13.8-7.4 18.5-10.5 4.7-3.2 9.3-6.5 10.3-7.4 1.6-1.5 1.6-1.7-0.5-3.9-1.3-1.2-2.6-2.2-3-2.2-0.5 0-3.4 2-6.5 4.4-3.2 2.4-9.4 6.4-13.8 8.9-4.4 2.6-12.7 6.4-18.5 8.6-5.8 2.2-15.2 5.1-21 6.5-5.8 1.4-14.6 3-19.5 3.7-4.9 0.6-15.7 1.1-24 1.1-8.2 0-19.5-0.7-25-1.6-5.5-0.8-14.7-2.7-20.5-4.1-5.8-1.5-15-4.5-20.5-6.6-5.5-2.2-12.9-5.6-16.5-7.5-3.6-2-10.3-6.1-15-9.2-4.7-3.1-12.7-9.7-17.8-14.7-7.5-7.2-9.5-9.8-10.2-13-0.5-2.2-1-9.9-1-17 0-7.1 0.7-17.3 1.5-22.5 0.8-5.2 2.3-12.8 3.5-16.8 1.1-3.9 3.3-9.8 4.9-12.9 1.6-3.2 4.5-7.8 6.5-10.3 1.9-2.5 6.1-6.6 9.3-9.3 3.2-2.6 9.2-6.5 13.3-8.6 4.1-2.1 9.3-4.4 11.5-5.1 2.2-0.7 4.3-1.5 4.7-1.9 0.4-0.3-1.3-3.1-3.8-6.1-2.5-3-6.1-8.4-8.2-12-2-3.6-4.7-9.9-6-14-1.8-5.6-2.5-10-2.6-17 0-5.2 0.2-11.7 0.5-14.5l0.6-5-49.2-48.5zm117.6 8.2c-4 1.1-9.8 3.1-13 4.3-3.2 1.3-8.4 4.1-11.6 6.3l-5.8 3.9 6.7 6.5c7.5-3.7 9.9-4 24.2-4 13.2 0 17 0.4 20.4 1.8 2.3 0.9 4.5 2.5 5 3.5 0.6 1.2 2 1.7 4.9 1.7 2.8 0 4.2-0.5 4.8-1.7 0.5-1 2.5-2.6 4.5-3.5 3.1-1.5 6.6-1.8 21.7-1.8 9.9 0 19.1 0.5 20.5 1 1.3 0.6 3.1 2 4 3.3 1.1 1.6 1.5 4.8 1.5 11.7 0 7.9-0.4 10.3-2.3 14-1.2 2.4-3.4 5.3-4.7 6.3-1.4 1-4.3 2.2-6.5 2.7-2.2 0.6-7.9 1-12.5 1-4.7 0-10.3-0.4-12.5-1-2.2-0.5-5.2-1.8-6.5-2.8-1.4-1-3.6-3.6-4.8-5.8-1.2-2.1-2.6-6-3-8.6-0.7-4.6-0.9-4.8-4-4.8-3.2 0-3.3 0.2-4.4 5.8-0.6 3.1-1.7 6.9-2.4 8.2-0.7 1.4-2.5 3.7-4.1 5.2-1.6 1.4-4 2.9-5.3 3.3-2.4 0.7-1 2.2 20.5 23.6 12.6 12.6 23.3 22.9 23.7 22.9 0.4 0 4.4-3.5 8.9-7.7 4.5-4.3 10-10.5 12.2-13.8 2.2-3.3 5.5-9.1 7.3-13 1.8-3.8 4.5-11 5.9-16 1.5-4.9 2.9-12.8 3.2-17.5 0.5-6.5 0.2-9.5-1-13-1-2.6-3.5-6.2-5.9-8.5-2.4-2.3-7.7-5.8-11.8-7.8-4.2-2-10.9-4.5-15-5.5-4.2-1.1-11.6-2.5-16.5-3.1-5-0.6-12.6-1-17-0.9-4.4 0-11.2 0.5-15 1-3.9 0.5-10.3 1.8-14.3 2.8zm-13.7 29.2c-0.5 0.9 2 4.1 8.1 10.1 7.5 7.4 9.4 8.7 12.1 8.7 1.8 0 4.2-0.4 5.3-1 1.1-0.5 2.8-2.9 3.9-5.2 1.1-2.4 2-5.8 2-7.8 0.1-1.9-0.6-4.4-1.3-5.5-1.3-1.8-2.8-2-13.3-2.2-6.5-0.1-12.8 0.2-13.9 0.7-1.2 0.5-2.5 1.5-2.9 2.2zm58.5 1.1c-0.8 2.3-0.8 4.4-0.1 7.5 0.6 2.3 2.1 5.3 3.3 6.6 1.6 1.7 3.9 2.6 8.3 3.1 3.3 0.4 8.2 0.5 11 0.1 2.7-0.4 5.7-1.1 6.7-1.7 1-0.5 2.4-2.4 3.3-4.4 0.8-1.9 1.5-5.2 1.5-7.2 0-2.1-0.7-4.8-1.5-6-1.5-2.2-2.1-2.3-15.3-2.2-7.6 0.1-14.3 0.3-14.9 0.6-0.7 0.2-1.7 1.9-2.3 3.6zm-71.9 38c1.7 3.4 5 8.9 7.4 12.2 2.3 3.3 6.9 8.5 10.1 11.6 3.2 3.1 7.9 6.8 10.4 8.2 2.4 1.4 6.5 3.3 9 4.2 2.4 0.8 4.5 1.4 4.7 1.3 0.1-0.2-9.9-10.4-22.3-22.8-12.3-12.3-22.5-22.1-22.5-21.7 0.1 0.4 1.5 3.5 3.2 7z"/><path id="Path 1" class="s1" d="m243 105.6c-3 0.8-8.7 2.9-12.5 4.8-3.8 1.8-10.4 6-14.5 9.2-4.1 3.3-10.2 9.1-13.5 12.9-3.4 3.9-8.4 10.4-11.1 14.5-2.8 4.1-6.5 10.2-8.2 13.5l-3.1 6 14.8 15c9-6.2 15.4-9.4 20.1-11.1 4.7-1.8 12-3.9 16.2-4.8 4.3-0.9 12.4-1.9 18-2.2 6.2-0.4 14.5-0.2 20.8 0.6 5.8 0.6 13.9 2.1 18 3.1 4.1 1.1 10.9 3.6 15 5.6 4.1 2 9.4 5.5 11.8 7.7 2.5 2.4 5 6 5.9 8.6 1.3 3.4 1.5 6.5 1.1 13-0.4 4.7-1.8 12.6-3.2 17.5-1.5 4.9-4.2 12.2-6 16-1.8 3.9-5 9.7-7.3 13-2.2 3.3-8 9.7-12.9 14.3l-8.9 8.3c76.3 76.3 98.8 98 99.2 97.6 0.4-0.5 1-5.7 1.2-11.5 0.2-6.2-0.4-15.7-1.3-22.7-0.9-6.6-2.3-14.9-3.2-18.5-0.9-3.6-3.5-10.6-5.9-15.5-3-6.4-5.9-10.7-10.1-15-3.3-3.3-7.9-7.4-10.4-9.2-2.5-1.7-7.6-4.7-11.5-6.6-3.9-2-8.5-4-10.3-4.4-1.8-0.4-3.2-1.1-3.2-1.5 0-0.5 2.1-3.2 4.6-6 2.6-2.9 6.3-8.2 8.4-11.8 2.1-3.6 4.8-9.6 5.9-13.5 1.5-4.7 2.1-9.7 2.1-15.2 0-4.6-0.7-11.8-1.6-16-0.9-4.3-3.1-12.1-5.1-17.3-1.9-5.2-6-14.2-9-20-3-5.8-7.9-13.9-10.8-18-2.9-4.1-8.8-11.3-13.1-15.9-4.4-4.6-10.2-10.1-12.9-12.1-2.8-2.1-8.1-5.3-12-7.3-3.9-1.9-9.7-4.2-13-5.1-3.3-0.9-9.8-1.5-14.5-1.5-4.7 0-11 0.7-14 1.5zm-78.7 93.9c-0.4 2.2-0.8 8.7-0.7 14.5 0.1 8.3 0.6 12.1 2.5 18 1.4 4.1 4.1 10.4 6.1 14 2.1 3.6 5.7 9 8.2 12 2.5 3 4.2 5.8 3.8 6.1-0.4 0.4-2.5 1.2-4.7 1.9-2.2 0.7-7.4 3-11.5 5.1-4.1 2.1-10.1 6-13.3 8.6-3.2 2.7-7.4 6.8-9.3 9.3-2 2.5-4.9 7.1-6.5 10.3-1.6 3.1-3.8 9-4.9 13-1.2 3.9-2.7 11.5-3.5 16.7-0.8 5.2-1.5 15.4-1.5 22.5 0 7.1 0.5 14.8 1 17 0.7 3.2 2.7 5.8 10.2 13 5.1 5 13.1 11.6 17.8 14.7 4.7 3.1 11.4 7.2 15 9.2 3.6 1.9 11 5.3 16.5 7.5 5.5 2.1 14.7 5.1 20.5 6.6 5.8 1.4 15 3.3 20.5 4.1 5.5 0.9 16.8 1.6 25 1.6 8.3 0 19.1-0.5 24-1.1 4.9-0.7 13.7-2.3 19.5-3.7 5.8-1.4 15.2-4.3 21-6.5 5.8-2.2 14.1-6 18.5-8.6 4.4-2.5 10.8-6.7 14.2-9.2 3.5-2.5 6.3-4.9 6.3-5.3 0-0.5-26.5-27-58.8-59-54.3-53.8-59.2-58.4-63.8-59.8-2.7-0.8-7.4-3-10.4-4.8-3-1.8-7.9-5.7-10.8-8.5-3-2.9-7.3-7.9-9.7-11.2-2.4-3.3-6.4-10.3-8.9-15.5-4.2-8.7-5.6-10.6-18-23l-13.5-13.5z"/><path id="Path 2" fill-rule="evenodd" class="s2" d="m225.8 184c13.2 0 17 0.3 20.3 1.8 2.3 0.9 4.6 2.5 5 3.5 0.6 1.2 2.1 1.7 4.9 1.7 2.8 0 4.3-0.5 4.9-1.8 0.4-0.9 2.5-2.5 4.5-3.5 3-1.4 6.5-1.7 21.6-1.7 9.9 0 19.1 0.4 20.5 1 1.4 0.6 3.2 2 4 3.3 1.2 1.6 1.6 4.8 1.6 11.7-0.1 7.9-0.4 10.3-2.3 13.9-1.3 2.5-3.4 5.3-4.8 6.3-1.4 1-4.3 2.3-6.5 2.8-2.2 0.5-7.8 1-12.5 1-4.7 0-10.3-0.5-12.5-1-2.2-0.5-5.1-1.8-6.5-2.8-1.4-1-3.5-3.6-4.7-5.8-1.3-2.1-2.6-6-3-8.7-0.8-4.5-0.9-4.7-4.1-4.7-3.1 0-3.2 0.2-4.3 5.8-0.6 3.1-1.7 6.8-2.4 8.2-0.7 1.4-2.6 3.7-4.2 5.2-1.5 1.5-3.9 3-5.3 3.3-2 0.6-3.3 0-6.8-3.1-2.4-2.2-4.3-4.2-4.2-4.6 0-0.5 1.3-0.8 3-0.8 1.6 0 3.9-0.4 5-1 1.1-0.6 2.9-2.9 4-5.2 1.1-2.4 2-5.9 2-7.8 0-1.9-0.6-4.4-1.4-5.5-1.3-1.8-2.6-2-14.4-2-11.6 0-13.2 0.2-17.1 4l-4-4.5c-2.1-2.5-3.7-4.8-3.5-5.2 0.2-0.5 1.9-1.5 3.6-2.3 2.5-1 7.5-1.4 19.5-1.5zm44.3 13.3c-0.8 2.3-0.8 4.4-0.1 7.5 0.6 2.3 2.1 5.3 3.3 6.6 1.7 1.7 3.9 2.5 8.3 3.1 3.3 0.4 8.2 0.4 11 0 2.7-0.3 5.8-1.1 6.7-1.6 1-0.5 2.5-2.5 3.3-4.4 0.8-1.9 1.5-5.2 1.5-7.2 0-2.1-0.7-4.8-1.5-6-1.4-2.2-2.1-2.3-15.3-2.2-7.5 0-14.2 0.3-14.9 0.5-0.6 0.3-1.7 2-2.3 3.7zm-40 126.7c0.3-0.1 2.2 2 8 9l-23.5 22.7 22.4 23.8-7.8 8-16.1-15.5c-8.8-8.5-16.2-15.8-16.3-16.2-0.1-0.3 7.3-7.6 16.3-16.2 9.1-8.6 16.7-15.6 17-15.6zm33.5 0l4 0.1c2.2 0.1 5 0.4 6.1 0.7 2.1 0.7 1.8 1.7-19.4 62.7l-5.3-0.3c-3-0.2-5.6-0.5-5.9-0.7-0.3-0.2 4.2-14.4 10-31.4zm20.7 3.9l2.7 1.9c1.4 1.1 8.2 7.3 27.6 26l-15.5 15.6c-8.5 8.6-16 15.6-16.7 15.6-0.7 0-2.9-2-8.3-8.5l23.2-22-6.8-6.7c-3.8-3.7-8.1-7.6-9.6-8.8-1.5-1.1-2.8-2.5-2.9-3.1 0-0.6 1.4-3.1 3.1-5.5z"/></g></svg>',tr=`data:image/svg+xml,${encodeURIComponent(qd)}`;import{jsx as Ao,jsxs as or}from"react/jsx-runtime";function fh(){let e=Zd();return jd(()=>{e.isValid},[e.isValid]),e.isValid?null:or("a",{href:"https://donotdev.com/pricing",target:"_blank",rel:"noopener noreferrer",style:{position:"fixed",right:"20px",top:"50%",transform:"translateY(-50%)",zIndex:9999,display:"flex",alignItems:"center",gap:"12px",padding:"12px 16px",backgroundColor:"rgba(255, 255, 255, 0.95)",border:"2px solid rgba(242, 61, 41, 0.3)",borderRadius:"8px",boxShadow:"0 4px 12px rgba(0, 0, 0, 0.15)",textDecoration:"none",transition:"all 0.2s ease",cursor:"pointer",opacity:.9},onMouseEnter:t=>{t.currentTarget.style.opacity="1",t.currentTarget.style.transform="translateY(-50%) scale(1.05)"},onMouseLeave:t=>{t.currentTarget.style.opacity="0.9",t.currentTarget.style.transform="translateY(-50%) scale(1)"},children:[Ao("img",{src:tr,alt:"DoNotDev Logo",style:{width:"48px",height:"48px",flexShrink:0}}),or("div",{style:{display:"flex",flexDirection:"column",gap:"2px"},children:[Ao("div",{style:{fontFamily:"system-ui, sans-serif",fontSize:"13px",fontWeight:"600",color:"#27494a",lineHeight:"1.2"},children:"DoNotDev"}),Ao("div",{style:{fontFamily:"system-ui, sans-serif",fontSize:"11px",fontWeight:"500",color:"#f23d29",lineHeight:"1.2"},children:"Get License"})]})]})}import{useEffect as Jd,useState as Po,useMemo as Qd}from"react";import{Stack as Lo,Spinner as Xd}from"@donotdev/components";import{useTranslation as nr,isFieldVisible as eu}from"@donotdev/core";import{useCrud as tu,DisplayFieldRenderer as ou}from"@donotdev/crud";import{jsx as ke,jsxs as ru}from"react/jsx-runtime";function nu({entity:e,id:t,t:o,className:n="",backend:r="functions",loadingMessage:a,notFoundMessage:i,viewerRole:c="guest"}){let{get:l,loading:d,data:u,error:s,isAvailable:g}=tu(e,{backend:r}),[p,m]=Po(!1),[f,h]=Po(null),[C,v]=Po(null),{t:k}=nr([e.namespace,"crud"]),{t:x}=nr("crud"),I=o||k;Jd(()=>{if(!t){v(null),h(null),m(!1);return}if(!g||!l)return;let b=!1;return m(!0),h(null),l(t).then(S=>{b||(m(!1),S?(v(S),h(null)):(v(null),h(new Error("Entity not found"))))}).catch(S=>{b||(m(!1),h(S instanceof Error?S:new Error(String(S))),v(null))}),()=>{b=!0}},[t,l,g]);let T=u||C,D=s||f,L=d||p||!t,w=Qd(()=>T?Object.entries(e.fields).filter(([b,S])=>{if(!eu(S.visibility,c)||S.visibility==="hidden")return!1;let y=T[b];return!(y==null||typeof y=="string"&&y.trim()===""||Array.isArray(y)&&y.length===0||typeof y=="object"&&!Array.isArray(y)&&y!==null&&Object.keys(y).length===0)}):[],[e.fields,c,T]);return L?ke("div",{style:{position:"relative",width:"100%",gridColumn:"1 / -1",display:"contents"},className:n,children:ke(Xd,{overlay:!0,"aria-label":a||x("form.loading",{defaultValue:"Loading..."})})}):D||!T?ke(Lo,{align:"center",justify:"center",gap:"medium",style:{padding:"var(--gap-3xl)",textAlign:"center"},className:n,children:ru(Lo,{direction:"column",gap:"tight",children:[ke("h3",{style:{color:"var(--muted-foreground)"},children:i||x("errors.notFound",{defaultValue:`${e.name} not found`})}),D&&ke("p",{style:{color:"var(--destructive)",fontSize:"var(--font-size-sm)"},children:D instanceof Error?D.message:String(D)})]})}):ke(Lo,{direction:"column",gap:"medium",className:n,children:w.map(([b,S])=>ke(ou,{name:b,config:S,value:T[b],t:I},b))})}import{RefreshCw as au,Plus as iu,Trash2 as su,Edit as lu,Search as cu}from"lucide-react";import{useMemo as rr,useCallback as Ve,useState as Et}from"react";import{DataTable as du,Button as Eo,Stack as Do,ActionButton as uu,Section as ar,Input as pu}from"@donotdev/components";import{useTranslation as ir}from"@donotdev/core";import{translateFieldLabel as mu,useCrud as gu,useCrudList as fu,EntityFilters as hu,matchesFilter as vu,formatValue as yu}from"@donotdev/crud";import{Fragment as Su,jsx as ce,jsxs as Dt}from"react/jsx-runtime";function bu({entity:e,userRole:t="guest",basePath:o,onClick:n,hideFilters:r=!1,pagination:a="client",pageSize:i,queryOptions:c}){let l=Be(),d=o??`/${e.collection}`,[u,s]=Et(1),[g,p]=Et(i),{data:m,loading:f,mutate:h}=fu(e,{pagination:a,...c&&{queryOptions:c},...a==="server"&&{page:u,pageSize:g}}),{delete:C}=gu(e),{t:v}=ir("crud"),k=m?.items||[],{t:x}=ir([e.namespace,"crud"]),[I,T]=Et({}),[D,L]=Et(""),w=Ve(async()=>{await h()},[h]),b=Ve(P=>{l(`${d}/${P}`)},[d,l]),S=Ve(P=>{n?n(P):l(`${d}/${P}`)},[d,l,n]),y=Ve(()=>{l(`${d}/new`)},[d,l]),N=Ve(async P=>{await C(P)},[C]),F=Ve(P=>{T(P)},[]),B=rr(()=>{let P=k;if(D){let de=D.toLowerCase();P=P.filter(j=>Object.values(j).some(O=>O==null?!1:String(O).toLowerCase().includes(de)))}return Object.keys(I).length>0&&(P=P.filter(de=>Object.entries(I).every(([j,O])=>{let ee=de[j],Ge=e.fields[j]?.type||"text";return vu(ee,O,Ge)}))),P},[k,D,I,e.fields]),ae=rr(()=>{let de=(e.listFields||Object.keys(e.fields)).map(j=>{let O=e.fields[j];if(!O)return null;let ee=mu(j,O,x),ie=O.type||"text";return{key:j,title:ee,dataIndex:j,sortable:!0,filterable:!0,align:ie==="number"||ie==="range"?"end":"start",render:(zt,Ro)=>yu(zt,O,x,{compact:!0})}}).filter(Boolean);return de.unshift({key:"_actions",title:v("actions.label",{defaultValue:"Actions"}),dataIndex:void 0,sortable:!1,width:120,align:"center",render:(j,O)=>Dt(Do,{direction:"row",gap:"tight",align:"center",justify:"center",children:[ce(Eo,{variant:"outline",icon:lu,onClick:ee=>{ee.stopPropagation(),b(O.id)},"aria-label":v("edit",{defaultValue:"Edit"})}),ce(uu,{action:async()=>{await N(O.id)},confirmText:v("delete.confirm",{defaultValue:"Are you sure you want to delete this item?"}),confirmTitle:v("delete.title",{defaultValue:"Delete Item"}),loadingText:v("delete.loading",{defaultValue:"Deleting..."}),variant:"destructive",icon:su,"aria-label":v("delete",{defaultValue:"Delete"}),children:v("delete",{defaultValue:"Delete"})})]})}),de},[e,x,v,b,N]),X=x("name",{defaultValue:e.name}),K=B.length;return Dt(Su,{children:[ce(ar,{title:v("filters.title",{entity:X,defaultValue:`Browse ${X} - Filters`}),collapsible:!0,defaultOpen:!0,children:Dt(Do,{gap:"medium",children:[Dt(Do,{direction:"row",gap:"tight",align:"center",className:"dndev-w-full",style:{display:"grid",gridTemplateColumns:"1fr auto auto"},children:[ce(pu,{placeholder:v("search.placeholder",{defaultValue:"Search..."}),value:D,onChange:P=>L(P.target.value),icon:cu,className:"dndev-w-full"}),ce(Eo,{icon:au,variant:"outline",onClick:w,disabled:f,display:"compact","aria-label":v("refresh",{defaultValue:"Refresh"})}),ce(Eo,{icon:iu,onClick:y,display:"compact",children:v("addNew",{defaultValue:"Add New"})})]}),!r&&ce(hu,{entity:e,data:k,filters:I,onFiltersChange:F,fieldsToFilter:e.listFields})]})}),ce(ar,{title:f?v("results.title.fetching",{defaultValue:"Fetching..."}):v("results.title.count",{count:K,defaultValue:K===1?"Found 1 occurrence":`Found ${K} occurrences`}),collapsible:!0,defaultOpen:!0,children:ce(du,{data:B,columns:ae,sortable:!0,searchable:!1,pagination:!0,loading:f,onRowClick:P=>S(P.id),showingLabel:v("pagination.showing",{defaultValue:"Showing {{from}} to {{to}} of {{total}} entries"}),paginationPreviousLabel:v("pagination.previous",{defaultValue:"Previous"}),paginationNextLabel:v("pagination.next",{defaultValue:"Next"}),paginationItemsPerPagePlaceholder:v("pagination.itemsPerPagePlaceholder",{defaultValue:"Items per page"}),...i&&{pageSize:i},...a==="server"&&{currentPage:u,pageSize:g,total:m?.total,onPageChange:s,onPageSizeChange:p}})})]})}import{useMemo as Rt,useCallback as sr,useState as lr}from"react";import{Heart as cr}from"lucide-react";import{Grid as Cu,Card as xu,Stack as nt,Text as Ft,Spinner as Tu,Section as dr,Button as ku}from"@donotdev/components";import{useTranslation as ur}from"@donotdev/core";import{translateFieldLabel as wu,useCrudCardList as Iu,EntityFilters as Nu,useEntityFavorites as Au,matchesFilter as Pu,formatValue as Lu}from"@donotdev/crud";import{Fragment as Du,jsx as $,jsxs as Ue}from"react/jsx-runtime";function Eu({entity:e,basePath:t,onClick:o,cols:n=[1,2,3,4],staleTime:r=1e3*60*30,filter:a,hideFilters:i=!1}){let c=Be(),l=t??`/${e.collection}`,{data:d,loading:u}=Iu(e,{staleTime:r}),s=d?.items||[],{isFavorite:g,toggleFavorite:p,favoritesFilter:m}=Au({collection:e.collection}),[f,h]=lr(!1),[C,v]=lr({}),k=sr(y=>Object.keys(C).length===0?!0:Object.entries(C).every(([N,F])=>{let B=y[N],X=e.fields[N]?.type||"text";return Pu(B,F,X)}),[C,e.fields]),x=Rt(()=>{let y=s;return y=y.filter(k),f&&(y=y.filter(m)),a&&(y=y.filter(a)),y},[s,k,f,m,a]),{t:I}=ur([e.namespace,"crud"]),{t:T}=ur("crud"),D=sr(y=>{o?o(y):c(`${l}/${y}`)},[l,c,o]),L=Rt(()=>{let y=e.listCardFields??e.listFields;return y&&y.length>0?y:Object.keys(e.fields).slice(0,4)},[e.listCardFields,e.listFields,e.fields]),w=Rt(()=>{let y=L.filter(F=>{let B=e.fields[F];return B?.type==="image"||B?.type==="images"});return y.length>0?y[0]:Object.keys(e.fields).filter(F=>{let B=e.fields[F];return B?.type==="image"||B?.type==="images"})[0]||null},[L,e.fields]),b=Rt(()=>L.filter(y=>y!==w),[L,w]),S=I("name",{defaultValue:e.name});return Ue(Du,{children:[!i&&$(dr,{title:T("filters.title",{entity:S,defaultValue:`Browse ${S} - Filters`}),collapsible:!0,defaultOpen:!0,children:Ue(nt,{direction:"column",gap:"medium",children:[$(ku,{variant:f?"primary":"outline",icon:$(cr,{size:18}),onClick:()=>h(!f),children:f?T("favorites.showAll",{defaultValue:"Show All"}):T("favorites.showFavorites",{defaultValue:"Show Favorites"})}),$(Nu,{entity:e,data:s,filters:C,onFiltersChange:v,fieldsToFilter:e.listCardFields})]})}),$(dr,{title:u?T("results.title.fetching",{defaultValue:"Fetching..."}):T("results.title.count",{count:x.length,defaultValue:x.length===1?"Found 1 occurrence":`Found ${x.length} occurrences`}),collapsible:!0,defaultOpen:!0,children:u?$(nt,{align:"center",justify:"center",gap:"medium",style:{padding:"var(--gap-3xl)"},children:$(Tu,{})}):x.length===0?Ue(nt,{align:"center",justify:"center",gap:"medium",style:{padding:"var(--gap-3xl)",textAlign:"center"},children:[$(Ft,{level:"h3",style:{color:"var(--muted-foreground)"},children:T("emptyState.title",{defaultValue:`No ${e.name.toLowerCase()} found`})}),$(Ft,{style:{color:"var(--muted-foreground)"},children:T("emptyState.description",{defaultValue:`No ${e.name.toLowerCase()} available at this time.`})})]}):$(Cu,{cols:n,gap:"medium",children:x.map(y=>{let N=w?y[w]:null,F=typeof N=="string"?N:null,B=b[0],ae=B?y[B]:y.id,X=g(y.id);return Ue(xu,{title:String(ae||""),clickable:!0,onClick:()=>D(y.id),elevated:!0,children:[$(cr,{fill:X?"#ef4444":"#ffffff",stroke:X?"#ef4444":"var(--muted-foreground)",onClick:K=>{K.stopPropagation(),p(y.id)},style:{position:"absolute",top:"var(--gap-sm)",right:"var(--gap-sm)",zIndex:10,cursor:"pointer",width:"var(--icon-md)",height:"var(--icon-md)",transition:"fill 0.2s, stroke 0.2s"},"aria-label":X?T("favorites.remove",{defaultValue:"Remove from favorites"}):T("favorites.add",{defaultValue:"Add to favorites"})}),Ue(nt,{direction:"column",gap:"medium",children:[F&&$("div",{style:{width:"100%",aspectRatio:"16/9",borderRadius:"var(--radius-md)",overflow:"hidden",backgroundColor:"var(--muted)",position:"relative"},children:$("img",{src:F,alt:String(ae||""),style:{width:"100%",height:"100%",objectFit:"cover"}})}),$(nt,{direction:"column",gap:"tight",children:b.slice(1,4).map(K=>{let P=e.fields[K];return P?Ue("div",{children:[$(Ft,{level:"small",variant:"muted",children:wu(K,P,I)}),$(Ft,{children:Lu(y[K],P,I,{compact:!0})})]},K):null})})]})]},y.id)})})})]})}import{useEffect as pr,useId as Ru,useMemo as rt,useState as Fu}from"react";import{FormProvider as Bu}from"react-hook-form";import{Badge as Mu,Button as Bt,DropdownMenu as Ou,Grid as zu,Stack as Vu,Spinner as Uu}from"@donotdev/components";import{useTranslation as mr}from"@donotdev/core";import{DisplayFieldRenderer as Gu,FormFieldRenderer as Hu,UploadProvider as _u,useEntityForm as $u,useUnsavedChangesWarning as Wu,useConfirmNavigation as Ku,useFormStore as Yu}from"@donotdev/crud";import{jsx as J,jsxs as Mt}from"react/jsx-runtime";function qu({entity:e,onSubmit:t,t:o,className:n="",submitText:r,loading:a=!1,defaultValues:i,submitVariant:c="primary",secondaryButtonText:l,secondaryButtonVariant:d="outline",onSecondarySubmit:u,viewerRole:s,operation:g=i?"edit":"create",autoSave:p=g==="create",formId:m,cancelText:f,cancelPath:h,successPath:C,onCancel:v,warnOnUnsavedChanges:k=!0,unsavedChangesMessage:x,hideVisibilityInfo:I=!1}){let T=Be(),D=Ru(),L=m??`entity-form-${e.name}-${D}`,{t:w}=mr(e.namespace),{t:b}=mr("crud"),S=o||w,[y,N]=Fu("super"),F={guest:"muted",user:"secondary",admin:"warning",super:"destructive",technical:"accent"},B=["guest","user","admin","super"],ae={guest:"Guest",user:"User",admin:"Admin",super:"Super",technical:"System"},X=rt(()=>B.map(E=>({label:ae[E],checked:y===E,onClick:()=>N(E)})),[y]),K=$u(e,{formId:L,operation:g,defaultValues:i,viewerRole:s,t:S,autoSave:p}),{control:P,handleSubmit:de,formState:{errors:j},fields:O,formStatus:ee,uploadProgress:ie,cleanup:Ge,isDirty:we,resetForm:zt}=K,Ro=rt(()=>{if(I)return O;let E=B.indexOf(y);return O.filter(({config:G})=>{let Ie=G.visibility;return Ie==="hidden"?!1:Ie==="technical"?!0:B.indexOf(Ie)<=E})},[O,I,y]);pr(()=>{L&&Yu.getState().setIsDirty(L,we)},[L,we]),pr(()=>Ge,[Ge]);let yr=rt(()=>x||b("messages.unsavedChangesLeave",{defaultValue:"You have unsaved changes. Are you sure you want to leave?"}),[x,b]),br=rt(()=>x||b("messages.unsavedChangesDiscard",{defaultValue:"You have unsaved changes. Discard them?"}),[x,b]);Wu({isDirty:we,enabled:k,message:yr});let Sr=Ku(we,br),Cr=async()=>{we&&!await Sr()||(zt(),v?v():T(h||"back"))},xr=E=>{t(E),T(C||"back")},Tr=f!==null,Fo=f??b("form.cancel",{defaultValue:"Cancel"}),Bo={gridColumn:"1 / -1",position:"sticky",bottom:0,backgroundColor:"var(--background)",borderTop:"1px solid var(--border)",paddingTop:"var(--gap-md)",paddingBottom:"var(--gap-md)",zIndex:10,marginTop:"var(--gap-lg)"},kr=a||g==="edit"&&!i,ue=rt(()=>ee==="uploading"?{loading:!0,loadingText:ie<100?b("form.uploading",{progress:Math.round(ie),defaultValue:`Uploading ${Math.round(ie)}%...`}):b("form.processing",{defaultValue:"Processing..."}),progress:ie}:ee==="validating"?{loading:!0,loadingText:b("form.validating",{defaultValue:"Validating..."})}:ee==="submitting"?{loading:!0,loadingText:b("form.saving",{defaultValue:"Saving..."})}:{loading:!1},[ee,ie,b]);return J(Bu,{...K,children:J(_u,{formId:L,children:Mt("div",{style:{position:"relative",width:"100%",gridColumn:"1 / -1",display:"contents"},children:[kr&&J(Uu,{overlay:!0}),Mt("form",{onSubmit:de(xr),noValidate:!0,className:n,style:{width:"100%",gridColumn:"1 / -1",display:"contents"},children:[Ro.map(({name:E,config:G,editable:Ie})=>{let Ne=!I&&G.visibility!=="guest",wr=G.visibility!=="hidden"?F[G.visibility]:void 0,Ir=ae[G.visibility]??G.visibility,Mo=Ie?J(Hu,{name:E,config:G,control:P,errors:j,t:S},E):J(Gu,{name:E,config:G,value:i?.[E],t:S},E);return Ne?Mt("div",{style:{position:"relative"},children:[J(Mu,{as:"span",variant:wr,style:{position:"absolute",top:0,insetInlineEnd:0,fontSize:"var(--font-size-xs)",zIndex:1},children:Ir}),Mo]},E):Mo}),(()=>{let E=[];if(Tr&&Fo&&E.push(J(Bt,{type:"button",onClick:Cr,disabled:ue.loading,variant:"outline",className:"dndev-w-full",children:Fo},"cancel")),!I){let Ne=F[y]||"muted";E.push(J(Ou,{trigger:Mt(Bt,{type:"button",variant:Ne,disabled:ue.loading,className:"dndev-w-full",children:[b("visibility.preview",{defaultValue:"Preview"}),": ",ae[y]]}),items:X},"preview"))}l&&E.push(J(Bt,{type:"button",onClick:()=>{if(u){let Ne=K.getValues();u(Ne)}},loading:ue.loading,loadingText:ue.loadingText,progress:ue.progress,variant:d,className:"dndev-w-full",children:l},"secondary")),E.push(J(Bt,{type:"submit",loading:ue.loading,loadingText:ue.loadingText,progress:ue.progress,variant:c,className:"dndev-w-full",children:r||b("form.submit",{defaultValue:"Submit"})},"submit"));let G=E.length;return G===1?J(Vu,{direction:"column",gap:"tight",style:Bo,children:E[0]}):J(zu,{cols:[1,G,G,G],templateColumns:G===2?"1fr 2fr":G===3?"1fr 1fr 2fr":"1fr 1fr 1fr 2fr",gap:"tight",style:Bo,children:E})})()]})]})})})}import{createContext as fr,useId as ju,use as gr}from"react";import{Controller as Zu,FormProvider as Ju,useFormContext as Qu}from"react-hook-form";import{Label as Xu,Slot as ep,cn as tp,Stack as op}from"@donotdev/components";import{jsx as ye}from"react/jsx-runtime";var Jh=Ju,hr=fr({}),Qh=({...e})=>ye(hr.Provider,{value:{name:e.name},children:ye(Zu,{...e})}),vr=fr({}),Xh=({className:e,...t})=>{let o=ju();return ye(vr.Provider,{value:{id:o},children:ye(op,{gap:"medium",className:e,...t})})},Ot=()=>{let e=gr(hr);if(!e||!e.name)return null;let t=gr(vr);if(!t)return null;let{getFieldState:o,formState:n}=Qu(),r=o(e.name,n),{id:a}=t;return{id:a,name:e.name,formItemId:`${a}-form-item`,formDescriptionId:`${a}-form-item-description`,formMessageId:`${a}-form-item-message`,...r}},ev=({className:e,...t})=>{let o=Ot();if(!o)return null;let{error:n,formItemId:r}=o;return ye(Xu,{className:tp(n&&"text-destructive",e),htmlFor:r,...t})},tv=({...e})=>{let t=Ot();if(!t)return null;let{error:o,formItemId:n,formDescriptionId:r,formMessageId:a}=t;return ye(ep,{id:n,"aria-describedby":o?`${r} ${a}`:`${r}`,"aria-invalid":!!o,...e})},ov=({className:e,...t})=>{let o=Ot();if(!o)return null;let{formDescriptionId:n}=o;return ye("p",{id:n,className:e,style:{fontSize:"var(--font-size-sm)",color:"var(--muted-foreground)"},...t})},nv=({className:e,children:t,...o})=>{let n=Ot();if(!n)return null;let{error:r,formMessageId:a}=n,i=r?String(r?.message):t;return i?ye("p",{id:a,className:e,style:{fontSize:"var(--font-size-sm)",fontWeight:500,color:"var(--destructive)"},...o,children:i}):null};var np={layoutContainer:"dndev-layout",sidebar:"sidebar",sidebarTop:"sidebar-top",sidebarContent:"sidebar-content",sidebarBottom:"sidebar-bottom",sidebarResizeHandle:"dndev-sidebar-resize-handle",header:"header",main:"main",footer:"footer",container:"dndev-container",pageContainer:"dndev-container",breadcrumbsContainer:"breadcrumbs-container"},rp={zHeader:"dndev-z-header",zSidebar:"dndev-z-sidebar",zOverlay:"dndev-z-overlay",zModal:"dndev-z-modal",zTooltip:"dndev-z-tooltip",zToast:"dndev-z-toast"},pv={...np,...rp},mv={headerHeight:"--header-height",headerPadding:"--header-padding",headerIconSize:"--header-icon-size",headerLogoMaxHeight:"--header-logo-max-height",sidebarWidth:"--sidebar-width",sidebarPadding:"--sidebar-padding",mainPadding:"--main-padding",mainMaxWidth:"--main-max-width",contentWidth:"--content-width",contentPadding:"--content-padding",footerHeight:"--footer-height",footerPadding:"--footer-padding",zHeader:"--z-header",zSidebar:"--z-sidebar",zFooter:"--z-footer",zOverlay:"--z-overlay",zModal:"--z-modal",zTooltip:"--z-tooltip",zToast:"--z-toast"},gv={headerHeight:"--header-height",headerPadding:"--header-padding",logoSize:"--logo-size",sidebarWidth:"--sidebar-width",sidebarPadding:"--sidebar-padding",footerHeight:"--footer-height",footerPadding:"--footer-padding",layoutGap:"--layout-gap",sectionGap:"--gap-lg",contentGap:"--content-gap",zHeader:"--z-header",zSidebar:"--z-sidebar",zFooter:"--z-footer",zModal:"--z-modal",zTooltip:"--z-tooltip"};export{vc as AppBranding,Sc as AppIcon,_s as AppLoading,Tc as AppTitle,Y as AssetResolver,la as AuthGuard,Im as AuthGuardFallback,lo as AuthHeader,io as AuthMenu,Bc as Breadcrumbs,So as CacheSettings,a2 as ConsentBanner,dn as DnDevNavigationMenu,ed as DropdownNavigation,Eu as EntityCardList,nu as EntityDisplayRenderer,qu as EntityFormRenderer,bu as EntityList,Ol as FeatureCard,Qs as FeatureDisabled,rd as FloatingLanguageSwitcher,Jh as Form,tv as FormControl,ov as FormDescription,Qh as FormField,Xh as FormItem,ev as FormLabel,nv as FormMessage,d2 as GameContainer,g2 as GameFlow,Vc as GameTitle,Dm as GoTo,Ai as GoToInput,Si as GoToWrapper,dd as HeaderMenu,vd as HeaderNavigation,Lr as Icon,fh as LicenseWatermark,A as Link,st as Loader,ul as LoadingContainerOverlay,Tt as LoadingMessage,ol as LoadingMessageAlmostDone,nl as LoadingMessageComplete,sl as LoadingMessageConnecting,tl as LoadingMessageProcessing,rl as LoadingMessageSaving,il as LoadingMessageSearching,el as LoadingMessageSimple,al as LoadingMessageUploading,pl as LoadingOverlay,fl as LoadingScreen,un as NotFoundPage,Ad as Notifications,gt as PageContainer,Al as ProgressBar,wl as RedirectOverlay,Ud as SettingsMenu,El as Skeleton,nc as TechBento,Yd as ThemeToggle,pv as allLayoutClasses,ag as checkFormNavigationSafe,qp as createAuthConfig,gv as cssVariables,Ip as isAuthAvailable,ug as isBillingAvailable,ng as isFormStoreAvailable,bg as isOAuthAvailable,np as layoutClasses,rp as layoutUtilities,mv as layoutVariables,eg as resolveFaviconSet,X1 as resolveLogo,kg as tList,fo as techLogos,R as useAuthSafe,Kp as useAuthState,bt as useAuthVisibility,U1 as useBack,fg as useBillingVisibility,_p as useCanAccess,ca as useCanNavigate,Ot as useFormField,to as useFormStoreSafe,Qo as useGoTo,rg as useHasDirtyFormsSafe,Wp as useHasRole,_1 as useLocation,Y1 as useMatch,Be as useNavigate,te as useNavigationItems,yg as useOAuthSafe,$1 as useParams,H1 as usePrefetch,q1 as useQueryParams,j1 as useRedirectGuard,G1 as useRefresh,W1 as useRouteParam,K1 as useSearchParams,no as useStripeBillingSafe,$p as useUserRole,Yp as withAuth};