@tinyrack/issuary-server 0.28.0 → 0.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/entities/oauth-client.entity.d.ts +18 -0
- package/dist/entities/oauth-client.entity.d.ts.map +1 -1
- package/dist/entities/oauth-client.entity.js +12 -0
- package/dist/entities/oauth-client.entity.js.map +1 -1
- package/dist/entities/oauth-code.entity.d.ts +18 -0
- package/dist/entities/oauth-code.entity.d.ts.map +1 -1
- package/dist/entities/oauth-device-code.entity.d.ts +18 -0
- package/dist/entities/oauth-device-code.entity.d.ts.map +1 -1
- package/dist/entities/revoked-token.entity.d.ts +18 -0
- package/dist/entities/revoked-token.entity.d.ts.map +1 -1
- package/dist/entities/user-consent.entity.d.ts +18 -0
- package/dist/entities/user-consent.entity.d.ts.map +1 -1
- package/dist/entrypoints/app.d.ts +124 -30
- package/dist/entrypoints/app.d.ts.map +1 -1
- package/dist/entrypoints/database/postgres/compiled-functions.d.ts +10 -4
- package/dist/entrypoints/database/postgres/compiled-functions.js +111 -24
- package/dist/entrypoints/database/postgres/compiled-functions.js.map +1 -1
- package/dist/entrypoints/database/sqlite/compiled-functions.d.ts +10 -4
- package/dist/entrypoints/database/sqlite/compiled-functions.js +111 -24
- package/dist/entrypoints/database/sqlite/compiled-functions.js.map +1 -1
- package/dist/lib/config/cleanup.d.ts +8 -0
- package/dist/lib/config/cleanup.d.ts.map +1 -1
- package/dist/lib/config/cleanup.js +16 -0
- package/dist/lib/config/cleanup.js.map +1 -1
- package/dist/lib/config/resolved.d.ts +4 -0
- package/dist/lib/config/resolved.d.ts.map +1 -1
- package/dist/migrations/postgres/Migration20260904090000_add_oauth_client_lifecycle.d.ts +6 -0
- package/dist/migrations/postgres/Migration20260904090000_add_oauth_client_lifecycle.d.ts.map +1 -0
- package/dist/migrations/postgres/Migration20260904090000_add_oauth_client_lifecycle.js +14 -0
- package/dist/migrations/postgres/Migration20260904090000_add_oauth_client_lifecycle.js.map +1 -0
- package/dist/migrations/postgres/index.d.ts.map +1 -1
- package/dist/migrations/postgres/index.js +2 -0
- package/dist/migrations/postgres/index.js.map +1 -1
- package/dist/migrations/sqlite/Migration20260904090000_add_oauth_client_lifecycle.d.ts +6 -0
- package/dist/migrations/sqlite/Migration20260904090000_add_oauth_client_lifecycle.d.ts.map +1 -0
- package/dist/migrations/sqlite/Migration20260904090000_add_oauth_client_lifecycle.js +14 -0
- package/dist/migrations/sqlite/Migration20260904090000_add_oauth_client_lifecycle.js.map +1 -0
- package/dist/migrations/sqlite/index.d.ts.map +1 -1
- package/dist/migrations/sqlite/index.js +2 -0
- package/dist/migrations/sqlite/index.js.map +1 -1
- package/dist/routes/api/admin/console/index.d.ts +91 -1
- package/dist/routes/api/admin/console/index.d.ts.map +1 -1
- package/dist/routes/api/admin/console/index.js +10 -2
- package/dist/routes/api/admin/console/index.js.map +1 -1
- package/dist/routes/api/admin/index.d.ts +91 -1
- package/dist/routes/api/admin/index.d.ts.map +1 -1
- package/dist/routes/api/auth/accounts/select.post.d.ts +6 -6
- package/dist/routes/api/index.d.ts +120 -30
- package/dist/routes/api/index.d.ts.map +1 -1
- package/dist/routes/api/oauth/_provider/callback/post.d.ts +9 -9
- package/dist/routes/index.d.ts +91 -1
- package/dist/routes/index.d.ts.map +1 -1
- package/dist/schemas/error.d.ts +75 -0
- package/dist/schemas/error.d.ts.map +1 -1
- package/dist/schemas/error.js +3 -0
- package/dist/schemas/error.js.map +1 -1
- package/dist/schemas/response.d.ts +1 -0
- package/dist/schemas/response.d.ts.map +1 -1
- package/dist/schemas/response.js +4 -0
- package/dist/schemas/response.js.map +1 -1
- package/dist/seeders/config.seeder.js +14 -11
- package/dist/seeders/config.seeder.js.map +1 -1
- package/dist/services/admin-console.service.d.ts +47 -0
- package/dist/services/admin-console.service.d.ts.map +1 -1
- package/dist/services/admin-console.service.js +75 -6
- package/dist/services/admin-console.service.js.map +1 -1
- package/dist/services/cleanup.service.d.ts +2 -0
- package/dist/services/cleanup.service.d.ts.map +1 -1
- package/dist/services/cleanup.service.js +61 -0
- package/dist/services/cleanup.service.js.map +1 -1
- package/dist/services/container.d.ts +4 -0
- package/dist/services/container.d.ts.map +1 -1
- package/dist/services/jwt.service.d.ts +2 -0
- package/dist/services/jwt.service.d.ts.map +1 -1
- package/dist/services/jwt.service.js +6 -0
- package/dist/services/jwt.service.js.map +1 -1
- package/dist/services/oauth-client.service.d.ts.map +1 -1
- package/dist/services/oauth-client.service.js +9 -5
- package/dist/services/oauth-client.service.js.map +1 -1
- package/dist/services/oauth-token.service.d.ts.map +1 -1
- package/dist/services/oauth-token.service.js +8 -1
- package/dist/services/oauth-token.service.js.map +1 -1
- package/frontend/client/assets/admin-console-BVGtfvzy.js +1 -0
- package/frontend/client/assets/admin-users-notice-DcKE5B43.js +1 -0
- package/frontend/client/assets/{auth-layout-BFD6Jwkd.js → auth-layout-CFKu8bHI.js} +1 -1
- package/frontend/client/assets/{auth-page-header-DWIuRJtG.js → auth-page-header-D5Z-EA6V.js} +1 -1
- package/frontend/client/assets/{authorization-context-banner-WE0b3j97.js → authorization-context-banner-Cqtzj9A1.js} +1 -1
- package/frontend/client/assets/i18n-BY3irWek.js +1 -0
- package/frontend/client/assets/{language-selector-BZipfWXO.js → language-selector-CGXk9vW_.js} +1 -1
- package/frontend/client/assets/{manifest-6d4cda98.js → manifest-4ae87899.js} +1 -1
- package/frontend/client/assets/{passkey-DoR9gw8n.js → passkey-C9bzur2Z.js} +1 -1
- package/frontend/client/assets/{promise-C4eJsjRN.js → promise-CFWkfv2A.js} +1 -1
- package/frontend/client/assets/{root-sdYEeZVs.js → root-DDLeooq1.js} +1 -1
- package/frontend/client/assets/{route-BPss6aNC.js → route-48mZ_bkD.js} +1 -1
- package/frontend/client/assets/route-9i9rqQdx.js +4 -0
- package/frontend/client/assets/{route-CgqKzu4o.js → route-BIhwXFuk.js} +1 -1
- package/frontend/client/assets/{route-BA8SLA-y.js → route-Bx9hz_OF.js} +1 -1
- package/frontend/client/assets/{route-B4n6iLak.js → route-C5Pe2AZT.js} +1 -1
- package/frontend/client/assets/{route-DHyl9fg6.js → route-C9TWgUZf.js} +1 -1
- package/frontend/client/assets/{route-DCxEMgcG.js → route-CBjporWj.js} +1 -1
- package/frontend/client/assets/{route-BbumhNTg.js → route-CLo3eo-R.js} +1 -1
- package/frontend/client/assets/route-CPIXY7eE.js +1 -0
- package/frontend/client/assets/{route--ygtU3xf.js → route-Caw4ohFV.js} +1 -1
- package/frontend/client/assets/{route-O04gqlmz.js → route-Ceht21dJ.js} +1 -1
- package/frontend/client/assets/route-CkS9fAlL.js +1 -0
- package/frontend/client/assets/{route-CCs0-fO0.js → route-CsT5EJEh.js} +1 -1
- package/frontend/client/assets/{route-DQlEYlRT.js → route-Cvob9_0Q.js} +1 -1
- package/frontend/client/assets/{route-OeZDuFSb.js → route-DCfkikii.js} +1 -1
- package/frontend/client/assets/{route-B1MD0P12.js → route-DHEnEwHa.js} +1 -1
- package/frontend/client/assets/{route-WG7qPhB_.js → route-DHQ_td-S.js} +1 -1
- package/frontend/client/assets/{route-BLq7NTd1.js → route-DLNoCW7x.js} +1 -1
- package/frontend/client/assets/{route-BUTlt8Ui.js → route-DlKXugZV.js} +1 -1
- package/frontend/client/assets/{route-D9cK2_2t.js → route-DokK6Iod.js} +1 -1
- package/frontend/client/assets/{route-D98zlsIA.js → route-ID67gqvy.js} +1 -1
- package/frontend/client/assets/{route-Cmo_MXuL.js → route-OWWRYmAT.js} +1 -1
- package/frontend/client/assets/{route-DitctEyz.js → route-R-BJj3-W.js} +1 -1
- package/frontend/client/assets/{route-BukKUAfo.js → route-goGP2kXu.js} +1 -1
- package/frontend/client/assets/{route-BI7lRSrf.js → route-uV_qilhG.js} +1 -1
- package/frontend/client/assets/{route-DtL-KJ0k.js → route-xuoylbDO.js} +1 -1
- package/frontend/client/assets/{shell-header-bar-CtUdWFmD.js → shell-header-bar-C3KYib1D.js} +1 -1
- package/frontend/client/assets/{terms-BEja7rHN.js → terms-BReb6uEz.js} +1 -1
- package/frontend/client/assets/{use-totp-setup-BwOsP75D.js → use-totp-setup-BOSkSnYG.js} +1 -1
- package/frontend/server/assets/{hydration-CzMpuxhN.js → hydration-yaDCGSA8.js} +1 -1
- package/frontend/server/assets/{root-loader.server-BjcO3GtR.js → root-loader.server-Cwm-l9OS.js} +3 -3
- package/frontend/server/assets/{route-runtime.server-DnkciJ0v.js → route-runtime.server-CjDbp5w6.js} +1 -1
- package/frontend/server/assets/{session-CEJThdQg.js → session-CSnQWUgx.js} +30 -0
- package/frontend/server/index.js +320 -216
- package/package.json +1 -1
- package/frontend/client/assets/admin-console-DL8Kf5fu.js +0 -1
- package/frontend/client/assets/i18n-wAvPXBC2.js +0 -1
- package/frontend/client/assets/route-CEunl4H1.js +0 -1
- package/frontend/client/assets/route-CZFY6zgn.js +0 -4
- package/frontend/client/assets/route-DUp2lTDn.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./components-C1SipCbb.js";import{t}from"./jsx-runtime-BFZ_fnNJ.js";import{a as n}from"./api-0SzZx6X7.js";import{r,t as i}from"./text-CGN4ZtUZ.js";import{t as a}from"./badge-BCQspax5.js";import{n as o}from"./route-module-Bm4sHkx9.js";import{n as s}from"./admin-console-
|
|
1
|
+
import{a as e}from"./components-C1SipCbb.js";import{t}from"./jsx-runtime-BFZ_fnNJ.js";import{a as n}from"./api-0SzZx6X7.js";import{r,t as i}from"./text-CGN4ZtUZ.js";import{t as a}from"./badge-BCQspax5.js";import{n as o}from"./route-module-Bm4sHkx9.js";import{n as s}from"./admin-console-BVGtfvzy.js";import{t as c}from"./table-D2oRcUKc.js";var l=t();function u(){let{t:e}=n(),{data:t}=r(s),o=[[`admin.overview.activeUsers`,t.metrics.active_users],[`admin.overview.admins`,t.metrics.admins],[`admin.overview.activeClients`,t.metrics.active_clients],[`admin.overview.requiredTerms`,t.metrics.required_terms]];return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(`div`,{className:`grid grid-cols-2 bg-tinyrack-surface lg:grid-cols-4`,children:o.map(([t,n])=>(0,l.jsxs)(`div`,{className:`flex flex-col gap-tinyrack-xs px-tinyrack-lg py-tinyrack-md`,children:[(0,l.jsx)(i,{color:`muted`,variant:`label`,children:e(String(t))}),(0,l.jsx)(i,{as:`p`,variant:`headingLg`,children:n})]},t))}),(0,l.jsxs)(`div`,{className:`grid gap-tinyrack-lg xl:grid-cols-2`,children:[(0,l.jsx)(d,{rows:[[e(`admin.source.config`),t.users.source.config],[e(`admin.source.database`),t.users.source.database]],title:e(`admin.overview.userSource`)}),(0,l.jsx)(d,{rows:[[e(`admin.overview.emailVerified`),t.users.authentication.email_verified],[e(`admin.overview.twoFactor`),t.users.authentication.two_factor],[e(`admin.overview.unverified`),t.users.authentication.remaining]],title:e(`admin.overview.authentication`)})]}),(0,l.jsxs)(`section`,{children:[(0,l.jsx)(`header`,{className:`bg-tinyrack-surface px-tinyrack-lg py-tinyrack-md`,children:(0,l.jsx)(i,{as:`h2`,variant:`headingSm`,children:e(`admin.overview.serviceStatus`)})}),(0,l.jsx)(c.Root,{density:`compact`,children:(0,l.jsx)(c.Body,{children:Object.entries(t.status).map(([t,n])=>(0,l.jsxs)(c.Row,{children:[(0,l.jsx)(c.Cell,{children:e(`admin.status.${t}`)}),(0,l.jsx)(c.Cell,{className:`text-right`,children:(0,l.jsx)(a,{variant:n===!1||n===`disabled`?`neutral`:`success`,children:e(typeof n==`boolean`?n?`common.on`:`common.off`:`admin.statusValue.${n}`)})})]},t))})})]})]})}function d({title:e,rows:t}){return(0,l.jsxs)(`section`,{children:[(0,l.jsx)(`header`,{className:`bg-tinyrack-surface px-tinyrack-lg py-tinyrack-md`,children:(0,l.jsx)(i,{as:`h2`,variant:`headingSm`,children:e})}),(0,l.jsx)(c.Root,{density:`compact`,children:(0,l.jsx)(c.Body,{children:t.map(([e,t])=>(0,l.jsxs)(c.Row,{children:[(0,l.jsx)(c.Cell,{children:e}),(0,l.jsx)(c.Cell,{className:`text-right font-tinyrack-medium`,children:t})]},e))})})]})}var f=e(function({loaderData:e}){return(0,l.jsx)(o,{state:e.dehydratedState,children:(0,l.jsx)(u,{})})});export{f as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as e,J as t,a as n,f as r}from"./components-C1SipCbb.js";import{c as i}from"./toast-_zV1SGz6.js";import{t as a}from"./jsx-runtime-BFZ_fnNJ.js";import{L as o,a as s,i as c}from"./api-0SzZx6X7.js";import{t as l}from"./text-CGN4ZtUZ.js";import{t as u}from"./useMutation-C4CmK9Sb.js";import{r as d}from"./NullStore-BxU9yW8l.js";import{t as f}from"./circle-alert-DGTJ9B9k.js";import{t as p}from"./auth-page-header-
|
|
1
|
+
import{$ as e,J as t,a as n,f as r}from"./components-C1SipCbb.js";import{c as i}from"./toast-_zV1SGz6.js";import{t as a}from"./jsx-runtime-BFZ_fnNJ.js";import{L as o,a as s,i as c}from"./api-0SzZx6X7.js";import{t as l}from"./text-CGN4ZtUZ.js";import{t as u}from"./useMutation-C4CmK9Sb.js";import{r as d}from"./NullStore-BxU9yW8l.js";import{t as f}from"./circle-alert-DGTJ9B9k.js";import{t as p}from"./auth-page-header-D5Z-EA6V.js";import{t as m}from"./alert-CFUBsmUN.js";import{r as h,t as g}from"./standard-schema-C8Td_miB.js";import{r as _}from"./FieldItemContext-CPjig163.js";import{a as v,s as y}from"./schemas-Dxi9xZo6.js";import{t as b}from"./field-DzNLNMM0.js";import{t as x}from"./input-BFJdEx8B.js";import{n as S,t as C}from"./promise-CFWkfv2A.js";import{a as w}from"./totp-BW4BoCpi.js";import{t as T}from"./document-navigation-Cnp3Alf0.js";import{n as E,r as D}from"./route-module-Bm4sHkx9.js";import{t as O}from"./auth-layout-CFKu8bHI.js";import{n as k,t as A}from"./auth-footer-DgRsLHyD.js";import{t as j}from"./labeled-separator-DkexQjxp.js";import{a as M,r as N,t as P}from"./oauth-search-BtLPTIS7.js";var F=e(t(),1),I=a(),L={SECOND_FACTOR_SESSION_EXPIRED:`SECOND_FACTOR_SESSION_EXPIRED`,INVALID_RECOVERY_CODE:`INVALID_RECOVERY_CODE`,NO_RECOVERY_CODES_AVAILABLE:`NO_RECOVERY_CODES_AVAILABLE`,TOTP_NOT_ENABLED:`TOTP_NOT_ENABLED`},R=5;function z({search:e}){let{t}=s(),n=r(),a=o(),E=(0,F.useRef)(null),[z,B]=(0,F.useState)(!1),[V,H]=(0,F.useState)(R),U=(0,F.useMemo)(()=>v({code:y().transform(e=>e.toUpperCase()).pipe(y().regex(/^[A-HJ-NP-TV-Z2-9]{4}(?:-[A-HJ-NP-TV-Z2-9]{4}){3}$/,t(`verifyRecovery.error.invalid`)))}),[t]),W=u({...w,onSuccess:async t=>{a.setQueryData(S.queryKey,{user:t.user}),await C(),M(e)?T(P(e)):n(`/profile`)},onSettled:()=>{a.invalidateQueries({queryKey:S.queryKey})}}),{register:G,setError:K,handleSubmit:q,setValue:J,formState:{errors:Y}}=h({defaultValues:{code:``},resolver:g(U)}),X=(0,F.useCallback)(()=>{n(D(`/login`,N(e)))},[n,e]);(0,F.useEffect)(()=>{if(!z)return;let e=setInterval(()=>{H(t=>t<=1?(clearInterval(e),X(),0):t-1)},1e3);return()=>clearInterval(e)},[z,X]);let Z=async e=>{try{await W.mutateAsync(e)}catch(e){if(e instanceof c)switch(e.code){case L.SECOND_FACTOR_SESSION_EXPIRED:B(!0),H(R);return;case L.TOTP_NOT_ENABLED:X();return;case L.NO_RECOVERY_CODES_AVAILABLE:K(`code`,{type:`manual`,message:t(`verifyRecovery.error.noCodesAvailable`)}),J(`code`,``),E.current?.focus();return;case L.INVALID_RECOVERY_CODE:K(`code`,{type:`manual`,message:t(`verifyRecovery.error.invalid`)}),J(`code`,``),E.current?.focus();return}K(`code`,{type:`manual`,message:t(`verifyRecovery.error.invalid`)}),J(`code`,``),E.current?.focus()}},{ref:Q,...$}=G(`code`);return(0,I.jsxs)(O,{children:[(0,I.jsx)(p,{subtitle:t(`verifyRecovery.subtitle`),title:t(`verifyRecovery.title`)}),z&&(0,I.jsx)(m,{"data-testid":`recovery-session-expired`,icon:f,type:`warning`,children:(0,I.jsxs)(`div`,{className:`flex flex-col items-start gap-tinyrack-3xs`,children:[(0,I.jsx)(l,{as:`span`,variant:`bodySm`,children:t(`verifyRecovery.error.expired`)}),(0,I.jsx)(l,{as:`span`,color:`muted`,variant:`caption`,children:t(`verifyRecovery.redirecting`,{seconds:V})}),(0,I.jsx)(d,{appearance:`ghost`,intent:`neutral`,onClick:X,type:`button`,uiSize:`sm`,children:t(`verifyRecovery.redirectNow`)})]})}),(0,I.jsxs)(_,{className:`flex flex-col gap-tinyrack-lg`,onSubmit:q(Z),children:[(0,I.jsxs)(b.Root,{children:[(0,I.jsx)(x,{...$,autoComplete:`off`,className:`w-full text-center font-tinyrack-mono`,"data-testid":`recovery-code-input`,disabled:z,placeholder:t(`verifyRecovery.placeholder`),ref:e=>{Q(e),E.current=e},type:`text`,uiSize:`lg`}),(0,I.jsx)(b.Error,{"data-testid":`recovery-error`,match:!!Y.code,children:Y.code?.message})]}),z?(0,I.jsx)(d,{className:`w-full`,disabled:!0,intent:`primary`,type:`button`,uiSize:`lg`,children:t(`verifyRecovery.submit`)}):(0,I.jsx)(d,{className:`w-full`,intent:`primary`,loading:W.isPending,loadingLabel:t(`verifyRecovery.submitting`),type:`submit`,uiSize:`lg`,children:t(`verifyRecovery.submit`)})]}),(0,I.jsxs)(`div`,{className:`flex flex-col gap-tinyrack-md`,children:[(0,I.jsx)(j,{label:t(`common.or`)}),(0,I.jsx)(d,{appearance:`ghost`,className:`w-full`,"data-testid":`recovery-back-to-totp`,intent:`neutral`,onClick:()=>n(D(`/verify/totp`,N(e))),type:`button`,uiSize:`lg`,children:t(`verifyRecovery.backToTotp`)})]}),(0,I.jsx)(A,{children:(0,I.jsx)(k,{link:(0,I.jsx)(i,{to:D(`/login`,N(e)),children:t(`verifyRecovery.backToLogin`)})})})]})}var B=n(function({loaderData:e}){return(0,I.jsx)(E,{state:e.dehydratedState,children:(0,I.jsx)(z,{search:e.search})})});export{B as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as e,J as t,a as n,f as r,o as i}from"./components-C1SipCbb.js";import{c as a}from"./toast-_zV1SGz6.js";import{t as o}from"./jsx-runtime-BFZ_fnNJ.js";import{L as s,a as c,n as l,t as u}from"./api-0SzZx6X7.js";import{r as d}from"./text-CGN4ZtUZ.js";import{t as f}from"./useMutation-C4CmK9Sb.js";import{t as p}from"./mutationOptions-Dfvzj6n2.js";import{r as m}from"./NullStore-BxU9yW8l.js";import{t as h}from"./auth-field-1EM9pnWe.js";import{t as g}from"./authorization-context-banner-
|
|
1
|
+
import{$ as e,J as t,a as n,f as r,o as i}from"./components-C1SipCbb.js";import{c as a}from"./toast-_zV1SGz6.js";import{t as o}from"./jsx-runtime-BFZ_fnNJ.js";import{L as s,a as c,n as l,t as u}from"./api-0SzZx6X7.js";import{r as d}from"./text-CGN4ZtUZ.js";import{t as f}from"./useMutation-C4CmK9Sb.js";import{t as p}from"./mutationOptions-Dfvzj6n2.js";import{r as m}from"./NullStore-BxU9yW8l.js";import{t as h}from"./auth-field-1EM9pnWe.js";import{t as g}from"./authorization-context-banner-Cqtzj9A1.js";import{n as _}from"./language-selector-CGXk9vW_.js";import{t as v}from"./lock-m97gMmUy.js";import{t as y}from"./mail-tgQpWyoC.js";import{t as b}from"./route-error-fallback-C2OHu3JW.js";import{r as x,t as S}from"./standard-schema-C8Td_miB.js";import{r as C}from"./FieldItemContext-CPjig163.js";import{a as w,r as T,s as E}from"./schemas-Dxi9xZo6.js";import{n as D,t as O}from"./promise-CFWkfv2A.js";import{o as k}from"./passkey-C9bzur2Z.js";import{t as A}from"./document-navigation-Cnp3Alf0.js";import{n as j,r as M,t as N}from"./route-module-Bm4sHkx9.js";import{t as P}from"./auth-layout-CFKu8bHI.js";import{t as ee}from"./link-DcBltZGP.js";import{n as F,t as I}from"./auth-footer-DgRsLHyD.js";import{a as L,r as R,t as z}from"./oauth-search-BtLPTIS7.js";import{t as B}from"./sanitized-rich-text-nFi_4i6F.js";var V=e(t(),1),H=p({mutationFn:async e=>{let t=await u.api.auth.login.$post({json:e});return l(t)}}),U=o();function W({search:e}){let{t,i18n:n}=c(),i=r(),o=s(),l=(0,V.useCallback)((e,t)=>i(t?M(e,t):e),[i]),u=e.account_selection_state&&e.prompt?.split(` `).includes(`login`)?{...e,account_selected:1}:e,p=e.lang??n.language,{data:b}=d(_),j=b.registration.signup_notice?.[p]??b.registration.signup_notice?.[b.i18n.fallback_language],N=b.auth.password.enabled,W=b.auth.passkey.enabled,G=b.identity_providers.length+ +!!N+ +!!W>1,K=(0,V.useMemo)(()=>w({email:E().min(1,t(`validation.email.required`)).pipe(T(t(`validation.email.invalid`))),password:E().min(1,t(`validation.password.required`))}),[t]),q=f({...H,onSuccess:async(t,n)=>{let r=t.user;if(r.email_verification_required&&!r.email_verified){l(`/verify/email`,{email:n.email,...R(e)});return}o.setQueryData(D.queryKey,{user:r}),await O();let a=[];if(b.auth.password.totp.enabled&&r.totp_registered&&a.push(`totp`),b.auth.passkey.enabled&&r.passkey_count>0&&a.push(`passkey`),r.second_factor_required&&a.length===0){if(b.available_2fa_setup_methods.length>1)return l(`/setup/2fa`,R(e));if(b.available_2fa_setup_methods.length===1)return b.available_2fa_setup_methods[0]===`totp`?l(`/setup/totp`,R(e)):l(`/setup/passkey`,{...R(e),passkey_name:`default`})}if(a.length>1)return l(`/verify/2fa`,R(e));if(a.length===1)return a[0]===`totp`?l(`/verify/totp`,R(e)):l(`/verify/passkey`,R(e));if(L(e))A(z(u));else return i(`/profile`)},onError:e=>{Q(`email`,{type:`manual`,message:t(`login.error.failed`)})}}),J=(0,V.useCallback)(async t=>{t.user&&(o.setQueryData(D.queryKey,t),await O(),L(e)?A(z(u)):i(`/profile`)),o.invalidateQueries({queryKey:D.queryKey})},[o,i,e,u]),Y=(0,V.useRef)(null),X=(0,V.useRef)(J);(0,V.useEffect)(()=>{X.current=J},[J]),(0,V.useEffect)(()=>{if(!W||!N)return;let e=new AbortController;return Y.current=e,k(e=>{X.current(e)},e.signal),()=>{e.abort()}},[W,N]);let{register:Z,setError:Q,handleSubmit:te,formState:{errors:$}}=x({defaultValues:{email:``,password:``},resolver:S(K)});return(0,U.jsxs)(P,{showBrandSubtitle:!0,children:[(0,U.jsx)(g,{search:e}),N&&(0,U.jsxs)(C,{className:`flex flex-col gap-tinyrack-lg`,onSubmit:te(e=>{Y.current?.abort(),q.mutate(e)}),children:[(0,U.jsx)(h,{autoComplete:`username webauthn`,error:$.email,icon:y,label:t(`login.email.label`),placeholder:t(`login.email.placeholder`),...Z(`email`),type:`email`}),(0,U.jsx)(h,{autoComplete:`current-password`,error:$.password,icon:v,label:t(`login.password.label`),labelAction:b.email.enabled?(0,U.jsx)(ee,{className:`text-tinyrack-xs`,render:(0,U.jsx)(a,{to:`/password/forgot`}),children:t(`login.link.forgotPassword`)}):void 0,placeholder:t(`login.password.placeholder`),...Z(`password`),type:`password`}),(0,U.jsx)(m,{className:`w-full`,intent:`primary`,loading:q.isPending,loadingLabel:t(`login.submitting`),type:`submit`,uiSize:`lg`,children:t(`login.submit`)})]}),j&&(0,U.jsx)(B,{html:j,variant:`notice`}),(b.registration.public_registration||G)&&(0,U.jsxs)(I,{children:[b.registration.public_registration&&(0,U.jsx)(F,{link:(0,U.jsx)(a,{to:M(`/register`,R(e)),children:t(`login.link.register`)}),text:t(`login.footer.noAccount`)}),G&&(0,U.jsx)(F,{link:(0,U.jsx)(a,{to:M(`/login`,R(e)),children:t(`login.password.backToMethods`)})})]})]})}var G=i(function({error:e}){return(0,U.jsx)(N,{component:b,error:e})}),K=n(function({loaderData:e}){return(0,U.jsx)(j,{state:e.dehydratedState,children:(0,U.jsx)(W,{search:e.search})})});export{G as ErrorBoundary,K as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e,o as t}from"./components-C1SipCbb.js";import{c as n}from"./toast-_zV1SGz6.js";import{t as r}from"./jsx-runtime-BFZ_fnNJ.js";import{a as i}from"./api-0SzZx6X7.js";import{r as a}from"./text-CGN4ZtUZ.js";import{t as o}from"./auth-choice-row-vQ3LzZiF.js";import{t as s}from"./fingerprint-pattern-V_eTEvnZ.js";import{n as c}from"./language-selector-
|
|
1
|
+
import{a as e,o as t}from"./components-C1SipCbb.js";import{c as n}from"./toast-_zV1SGz6.js";import{t as r}from"./jsx-runtime-BFZ_fnNJ.js";import{a as i}from"./api-0SzZx6X7.js";import{r as a}from"./text-CGN4ZtUZ.js";import{t as o}from"./auth-choice-row-vQ3LzZiF.js";import{t as s}from"./fingerprint-pattern-V_eTEvnZ.js";import{n as c}from"./language-selector-CGXk9vW_.js";import{t as l}from"./shield-check-93-WFkyJ.js";import{t as u}from"./auth-page-header-D5Z-EA6V.js";import{t as d}from"./route-error-fallback-C2OHu3JW.js";import{n as f,r as p,t as m}from"./route-module-Bm4sHkx9.js";import{t as h}from"./auth-layout-CFKu8bHI.js";import{n as g,t as _}from"./auth-footer-DgRsLHyD.js";import{r as v}from"./oauth-search-BtLPTIS7.js";var y=r();function b({search:e}){let{t}=i(),r=v(e),{data:d}=a(c);return(0,y.jsxs)(h,{children:[(0,y.jsx)(u,{subtitle:t(`verify2fa.subtitle`),title:t(`verify2fa.title`)}),(0,y.jsxs)(`div`,{className:`flex flex-col gap-tinyrack-sm`,children:[d.auth.password.enabled&&d.auth.password.totp.enabled&&(0,y.jsx)(o,{description:t(`verify2fa.totp.description`),icon:l,label:t(`verify2fa.totp.title`),render:(0,y.jsx)(n,{to:p(`/verify/totp`,r)})}),d.auth.passkey.enabled&&(0,y.jsx)(o,{description:t(`verify2fa.passkey.description`),icon:s,label:t(`verify2fa.passkey.title`),render:(0,y.jsx)(n,{to:p(`/verify/passkey`,r)})})]}),(0,y.jsx)(_,{children:(0,y.jsx)(g,{link:(0,y.jsx)(n,{to:p(`/login`,r),children:t(`verify2fa.backToLogin`)})})})]})}var x=t(function({error:e}){return(0,y.jsx)(m,{component:d,error:e})}),S=e(function({loaderData:e}){return(0,y.jsx)(f,{state:e.dehydratedState,children:(0,y.jsx)(b,{search:e.search})})});export{x as ErrorBoundary,S as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as e,J as t,a as n,f as r,o as i}from"./components-C1SipCbb.js";import{c as a}from"./toast-_zV1SGz6.js";import{t as o}from"./jsx-runtime-BFZ_fnNJ.js";import{L as s,a as c}from"./api-0SzZx6X7.js";import{r as l,t as u}from"./text-CGN4ZtUZ.js";import{t as d}from"./useMutation-C4CmK9Sb.js";import{c as f}from"./shell-header-bar-
|
|
1
|
+
import{$ as e,J as t,a as n,f as r,o as i}from"./components-C1SipCbb.js";import{c as a}from"./toast-_zV1SGz6.js";import{t as o}from"./jsx-runtime-BFZ_fnNJ.js";import{L as s,a as c}from"./api-0SzZx6X7.js";import{r as l,t as u}from"./text-CGN4ZtUZ.js";import{t as d}from"./useMutation-C4CmK9Sb.js";import{c as f}from"./shell-header-bar-C3KYib1D.js";import{r as p}from"./NullStore-BxU9yW8l.js";import{t as m}from"./circle-alert-DGTJ9B9k.js";import{t as h}from"./fingerprint-pattern-V_eTEvnZ.js";import{t as g}from"./authorization-context-banner-Cqtzj9A1.js";import{n as _}from"./language-selector-CGXk9vW_.js";import{n as v,t as y}from"./provider-mark-B05f08GZ.js";import{t as b}from"./mail-tgQpWyoC.js";import{t as x}from"./link-button-qvSTUE1n.js";import{t as S}from"./alert-CFUBsmUN.js";import{t as C}from"./route-error-fallback-C2OHu3JW.js";import{n as w,t as T}from"./promise-CFWkfv2A.js";import{t as E}from"./passkey-C9bzur2Z.js";import{n as D,t as O}from"./document-navigation-Cnp3Alf0.js";import{n as k,t as A}from"./route-module-Bm4sHkx9.js";import{t as j}from"./auth-layout-CFKu8bHI.js";import{a as M,r as N,t as P}from"./oauth-search-BtLPTIS7.js";import{t as F}from"./sanitized-rich-text-nFi_4i6F.js";import{t as I}from"./passkey-error-CZnhXTc7.js";var L=e(t(),1),R=o(),z={google:(0,R.jsx)(y,{"aria-hidden":!0,className:`size-tinyrack-xl`,provider:`google`}),github:(0,R.jsx)(y,{"aria-hidden":!0,className:`size-tinyrack-xl`,provider:`github`}),apple:(0,R.jsx)(y,{"aria-hidden":!0,className:`size-tinyrack-xl`,provider:`apple`})};function B({icon:e,label:t,providerType:n,render:r,onClick:i,isLoading:a,disabled:o}){let s;s=n&&n!==`generic_oauth`?z[n]:typeof e==`string`&&e.length>0?(0,R.jsx)(`img`,{alt:``,className:`size-tinyrack-xl`,src:e}):e||(0,R.jsx)(v,{"aria-hidden":!0,className:`size-tinyrack-xl`});let c=(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(`span`,{className:`flex size-tinyrack-xl shrink-0 items-center justify-center`,children:s}),(0,R.jsx)(u,{truncate:!0,variant:`body`,children:t})]}),l=`w-full justify-start gap-tinyrack-md transition-colors duration-tinyrack-fast ease-tinyrack-standard [&>.tr-spinner]:order-last [&>.tr-spinner]:ms-auto`;return r?(0,R.jsx)(x,{appearance:`outline`,className:`cursor-pointer ${l}`,intent:`neutral`,render:r,uiSize:`lg`,children:c}):(0,R.jsx)(p,{appearance:`outline`,className:l,disabled:o,intent:`neutral`,loading:a,onClick:i,type:`button`,uiSize:`lg`,children:c})}var V={access_denied:`oauth.error.accessDenied`,temporarily_unavailable:`oauth.error.temporarilyUnavailable`,server_error:`oauth.error.serverError`,registration_email_not_allowed:`oauth.error.registrationEmailNotAllowed`};function H({search:e}){let{t,i18n:n}=c(),i=r(),o=s(),p=e.lang??n.language,{data:v}=l(_),{loginMethodDescription:y}=f(),x=v.registration.signup_notice?.[p]??v.registration.signup_notice?.[v.i18n.fallback_language],C=v.identity_providers,k=e.oauth_error,A=k?t(V[k]??`oauth.error.failed`):void 0,z=v.auth.password.enabled,H=v.auth.passkey.enabled,[U,W]=(0,L.useState)(null),G=async t=>{t.user&&(o.setQueryData(w.queryKey,t),await T(),M(e)?O(P(e)):i(`/profile`))},K=d({...E,onSuccess:e=>{W(null),G(e)},onError:e=>{if(I(e)===`unsupported`){W(t(`login.passkey.error.unsupported`));return}W(t(`login.passkey.error.failed`))}}),q=t=>{let n=`/api/oauth/${t}/authorize?mode=login`;if(M(e)){let t=P(e);n+=`&return_url=${encodeURIComponent(t)}`}return n};return(0,R.jsxs)(j,{showBrandSubtitle:!0,children:[y&&(0,R.jsx)(u,{as:`p`,className:`-mb-tinyrack-sm`,color:`muted`,variant:`body`,children:y}),(0,R.jsx)(g,{search:e}),A&&(0,R.jsx)(S,{icon:m,type:`error`,children:A}),U&&(0,R.jsx)(S,{icon:m,type:`error`,children:U}),(0,R.jsxs)(`div`,{className:`flex flex-col gap-tinyrack-sm`,children:[C.map(e=>(0,R.jsx)(B,{icon:e.icon_url,label:e.display_name,providerType:e.type,render:(0,R.jsx)(`a`,{href:q(e.id),onClick:D})},e.id)),z&&(0,R.jsx)(B,{icon:(0,R.jsx)(b,{"aria-hidden":!0,className:`size-tinyrack-xl`}),label:t(`login.method.password`),render:(0,R.jsx)(a,{to:(()=>{let t=new URLSearchParams;for(let[n,r]of Object.entries(N(e)))if(r!==void 0){let e=String(r);t.set(n,n===`account_selected`?decodeURIComponent(e).replaceAll(`"`,``):e)}let n=t.toString();return n?`/login/password?${n}`:`/login/password`})()})}),H&&(0,R.jsx)(B,{disabled:K.isPending,icon:(0,R.jsx)(h,{"aria-hidden":!0,className:`size-tinyrack-xl`}),isLoading:K.isPending,label:t(`login.method.passkey`),onClick:()=>{W(null),K.mutate()}})]}),x&&(0,R.jsx)(F,{html:x,variant:`notice`})]})}var U=i(function({error:e}){return(0,R.jsx)(A,{component:C,error:e})}),W=n(function({loaderData:e}){return(0,R.jsx)(k,{state:e.dehydratedState,children:(0,R.jsx)(H,{search:e.search})})});export{U as ErrorBoundary,W as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./components-C1SipCbb.js";import{c as t}from"./toast-_zV1SGz6.js";import{t as n}from"./jsx-runtime-BFZ_fnNJ.js";import{a as r}from"./api-0SzZx6X7.js";import{t as i}from"./text-CGN4ZtUZ.js";import{r as a}from"./NullStore-BxU9yW8l.js";import{t as o}from"./circle-alert-DGTJ9B9k.js";import{t as s}from"./link-button-qvSTUE1n.js";import{t as c}from"./code-RrwtZcA2.js";import{t as l}from"./auth-outcome-B7tCCKZC.js";import{n as u}from"./route-module-Bm4sHkx9.js";import{t as d}from"./auth-layout-
|
|
1
|
+
import{a as e}from"./components-C1SipCbb.js";import{c as t}from"./toast-_zV1SGz6.js";import{t as n}from"./jsx-runtime-BFZ_fnNJ.js";import{a as r}from"./api-0SzZx6X7.js";import{t as i}from"./text-CGN4ZtUZ.js";import{r as a}from"./NullStore-BxU9yW8l.js";import{t as o}from"./circle-alert-DGTJ9B9k.js";import{t as s}from"./link-button-qvSTUE1n.js";import{t as c}from"./code-RrwtZcA2.js";import{t as l}from"./auth-outcome-B7tCCKZC.js";import{n as u}from"./route-module-Bm4sHkx9.js";import{t as d}from"./auth-layout-CFKu8bHI.js";import{n as f,t as p}from"./auth-footer-DgRsLHyD.js";var m=n();function h({search:e}){let{t:n}=r(),u=e.code||`UNKNOWN_ERROR`,h=e.message||n(`error.defaultMessage`);return(0,m.jsxs)(d,{children:[(0,m.jsxs)(l,{description:h,icon:o,title:n(`error.subtitle`),tone:`danger`,children:[(0,m.jsxs)(i,{color:`muted`,variant:`caption`,children:[n(`error.codeLabel`),` `,(0,m.jsx)(c,{"data-testid":`error-code`,children:u})]}),(0,m.jsx)(s,{className:`w-full`,intent:`primary`,render:(0,m.jsx)(t,{to:`/login`}),uiSize:`lg`,children:n(`error.goToLogin`)}),(0,m.jsx)(a,{appearance:`ghost`,className:`w-full`,intent:`neutral`,onClick:()=>window.history.back(),type:`button`,uiSize:`lg`,children:n(`error.goBack`)})]}),(0,m.jsx)(p,{children:(0,m.jsx)(f,{link:(0,m.jsx)(`a`,{href:`mailto:support@example.com`,children:n(`error.footer.contactSupport`)}),text:n(`error.footer.needHelp`)})})]})}var g=e(function({loaderData:e}){return(0,m.jsx)(u,{state:e.dehydratedState,children:(0,m.jsx)(h,{search:e.search})})});export{g as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as e,J as t,a as n,f as r,o as i}from"./components-C1SipCbb.js";import{c as a}from"./toast-_zV1SGz6.js";import{t as o}from"./jsx-runtime-BFZ_fnNJ.js";import{a as s}from"./api-0SzZx6X7.js";import{t as c}from"./text-CGN4ZtUZ.js";import{t as l}from"./useMutation-C4CmK9Sb.js";import{V as u}from"./select--ltVnlVl.js";import{r as d}from"./NullStore-BxU9yW8l.js";import{t as f}from"./auth-field-1EM9pnWe.js";import{t as p}from"./mail-tgQpWyoC.js";import{t as m}from"./auth-page-header-
|
|
1
|
+
import{$ as e,J as t,a as n,f as r,o as i}from"./components-C1SipCbb.js";import{c as a}from"./toast-_zV1SGz6.js";import{t as o}from"./jsx-runtime-BFZ_fnNJ.js";import{a as s}from"./api-0SzZx6X7.js";import{t as c}from"./text-CGN4ZtUZ.js";import{t as l}from"./useMutation-C4CmK9Sb.js";import{V as u}from"./select--ltVnlVl.js";import{r as d}from"./NullStore-BxU9yW8l.js";import{t as f}from"./auth-field-1EM9pnWe.js";import{t as p}from"./mail-tgQpWyoC.js";import{t as m}from"./auth-page-header-D5Z-EA6V.js";import{t as h}from"./auth-outcome-B7tCCKZC.js";import{t as g}from"./route-error-fallback-C2OHu3JW.js";import{r as _,t as v}from"./standard-schema-C8Td_miB.js";import{r as y}from"./FieldItemContext-CPjig163.js";import{a as b,r as x,s as S}from"./schemas-Dxi9xZo6.js";import{n as C,t as w}from"./route-module-Bm4sHkx9.js";import{t as T}from"./auth-layout-CFKu8bHI.js";import{n as E,t as D}from"./auth-footer-DgRsLHyD.js";import{t as O}from"./password-reset-BuDycpfY.js";var k=u(`mail-check`,[[`path`,{d:`M22 13V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v12c0 1.1.9 2 2 2h8`,key:`12jkf8`}],[`path`,{d:`m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7`,key:`1ocrg3`}],[`path`,{d:`m16 19 2 2 4-4`,key:`1b14m6`}]]),A=e(t(),1),j=o();function M(){let{t:e}=s(),t=r(),[n,i]=(0,A.useState)(!1),[o,u]=(0,A.useState)(``),g=(0,A.useMemo)(()=>b({email:S().min(1,e(`validation.email.required`)).pipe(x(e(`validation.email.invalid`)))}),[e]),C=l({...O,onSuccess:()=>{i(!0)}}),{register:w,setError:M,handleSubmit:N,formState:{errors:P}}=_({defaultValues:{email:``},resolver:v(g)});return n?(0,j.jsx)(T,{children:(0,j.jsx)(`div`,{"data-testid":`alert-success`,children:(0,j.jsxs)(h,{description:(0,j.jsxs)(j.Fragment,{children:[e(`forgotPassword.success.subtitle`),(0,j.jsx)(`br`,{}),e(`forgotPassword.success.description`,{email:o})]}),icon:k,title:e(`forgotPassword.success.title`),tone:`success`,children:[(0,j.jsx)(d,{className:`w-full`,intent:`primary`,onClick:()=>t(`/login`),type:`button`,uiSize:`lg`,children:e(`forgotPassword.backToLogin`)}),(0,j.jsx)(c,{align:`center`,color:`muted`,variant:`caption`,children:e(`forgotPassword.success.checkSpam`)})]})})}):(0,j.jsxs)(T,{children:[(0,j.jsx)(m,{subtitle:e(`forgotPassword.subtitle`),title:e(`forgotPassword.title`)}),(0,j.jsxs)(y,{className:`flex flex-col gap-tinyrack-lg`,onSubmit:N(async t=>{try{u(t.email),await C.mutateAsync(t)}catch(t){t&&typeof t==`object`&&`code`in t&&t.code===`USER_NOT_EDITABLE`?M(`email`,{type:`manual`,message:e(`forgotPassword.error.notEditable`)}):i(!0)}}),children:[(0,j.jsx)(f,{autoComplete:`email`,error:P.email,icon:p,label:e(`forgotPassword.email.label`),placeholder:e(`forgotPassword.email.placeholder`),...w(`email`),type:`email`}),(0,j.jsx)(d,{className:`w-full`,intent:`primary`,loading:C.isPending,loadingLabel:e(`forgotPassword.submitting`),type:`submit`,uiSize:`lg`,children:e(`forgotPassword.submit`)})]}),(0,j.jsx)(D,{children:(0,j.jsx)(E,{link:(0,j.jsx)(a,{to:`/login`,children:e(`register.link.login`)}),text:e(`forgotPassword.footer.rememberedPassword`)})})]})}var N=i(function({error:e}){return(0,j.jsx)(w,{component:g,error:e})}),P=n(function({loaderData:e}){return(0,j.jsx)(C,{state:e.dehydratedState,children:(0,j.jsx)(M,{})})});export{N as ErrorBoundary,P as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e}from"./components-C1SipCbb.js";import{t}from"./jsx-runtime-BFZ_fnNJ.js";import{a as n}from"./api-0SzZx6X7.js";import{r,t as i}from"./text-CGN4ZtUZ.js";import{t as a}from"./badge-BCQspax5.js";import{n as o}from"./route-module-Bm4sHkx9.js";import{r as s}from"./admin-console-
|
|
1
|
+
import{a as e}from"./components-C1SipCbb.js";import{t}from"./jsx-runtime-BFZ_fnNJ.js";import{a as n}from"./api-0SzZx6X7.js";import{r,t as i}from"./text-CGN4ZtUZ.js";import{t as a}from"./badge-BCQspax5.js";import{n as o}from"./route-module-Bm4sHkx9.js";import{r as s}from"./admin-console-BVGtfvzy.js";import{t as c}from"./table-D2oRcUKc.js";var l=t();function u(){let{t:e}=n(),{data:t}=r(s);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{className:`flex flex-col items-start justify-between gap-tinyrack-md bg-tinyrack-surface px-tinyrack-lg py-tinyrack-md sm:flex-row sm:items-center`,children:[(0,l.jsxs)(`div`,{children:[(0,l.jsx)(i,{as:`h1`,variant:`headingMd`,children:e(`admin.system.title`)}),(0,l.jsx)(i,{as:`p`,color:`muted`,variant:`bodySm`,children:e(`admin.system.readonly`)})]}),(0,l.jsxs)(`div`,{className:`flex shrink-0 gap-tinyrack-sm`,children:[(0,l.jsx)(a,{variant:`success`,children:e(`admin.statusValue.${t.health.database}`)}),(0,l.jsx)(a,{variant:t.health.email===`disabled`?`neutral`:`success`,children:e(`admin.statusValue.${t.health.email}`)})]})]}),(0,l.jsx)(`div`,{className:`grid gap-tinyrack-lg xl:grid-cols-2`,children:t.sections.map(t=>(0,l.jsxs)(`section`,{children:[(0,l.jsx)(`header`,{className:`bg-tinyrack-surface px-tinyrack-lg py-tinyrack-md`,children:(0,l.jsx)(i,{as:`h2`,variant:`headingSm`,children:e(`admin.system.section.${t.id}`)})}),(0,l.jsx)(c.Root,{density:`compact`,children:(0,l.jsx)(c.Body,{children:Object.entries(t.values).map(([t,n])=>(0,l.jsxs)(c.Row,{children:[(0,l.jsx)(c.Cell,{className:`text-tinyrack-text-muted`,children:e(`admin.system.key.${t}`)}),(0,l.jsx)(c.Cell,{className:`text-right`,children:(0,l.jsx)(d,{value:n})})]},t))})})]},t.id))})]})}function d({value:e}){let{t}=n();return typeof e==`boolean`?(0,l.jsx)(a,{variant:e?`success`:`neutral`,children:t(e?`common.on`:`common.off`)}):Array.isArray(e)?(0,l.jsx)(i,{as:`span`,variant:`bodySm`,children:e.length>0?e.join(`, `):t(`common.none`)}):(0,l.jsx)(i,{as:`span`,variant:`bodySm`,children:e})}var f=e(function({loaderData:e}){return(0,l.jsx)(o,{state:e.dehydratedState,children:(0,l.jsx)(u,{})})});export{f as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as e,J as t,a as n,f as r}from"./components-C1SipCbb.js";import{c as i}from"./toast-_zV1SGz6.js";import{t as a}from"./jsx-runtime-BFZ_fnNJ.js";import{L as ee,a as te,i as o,u as s}from"./api-0SzZx6X7.js";import{t as c}from"./text-CGN4ZtUZ.js";import{V as l}from"./select--ltVnlVl.js";import{i as ne,r as u}from"./NullStore-BxU9yW8l.js";import{t as d}from"./circle-alert-DGTJ9B9k.js";import{a as re,i as ie,n as ae,r as f,t as p}from"./use-totp-setup-
|
|
1
|
+
import{$ as e,J as t,a as n,f as r}from"./components-C1SipCbb.js";import{c as i}from"./toast-_zV1SGz6.js";import{t as a}from"./jsx-runtime-BFZ_fnNJ.js";import{L as ee,a as te,i as o,u as s}from"./api-0SzZx6X7.js";import{t as c}from"./text-CGN4ZtUZ.js";import{V as l}from"./select--ltVnlVl.js";import{i as ne,r as u}from"./NullStore-BxU9yW8l.js";import{t as d}from"./circle-alert-DGTJ9B9k.js";import{a as re,i as ie,n as ae,r as f,t as p}from"./use-totp-setup-BOSkSnYG.js";import{t as m}from"./shield-check-93-WFkyJ.js";import{t as h}from"./auth-page-header-D5Z-EA6V.js";import{t as g}from"./alert-B9BFeQs3.js";import{t as _}from"./alert-CFUBsmUN.js";import{n as v,t as y}from"./promise-CFWkfv2A.js";import{t as oe}from"./document-navigation-Cnp3Alf0.js";import{n as b,r as x}from"./route-module-Bm4sHkx9.js";import{t as S}from"./auth-layout-CFKu8bHI.js";import{n as C,t as w}from"./auth-footer-DgRsLHyD.js";import{a as T,r as E,t as D}from"./oauth-search-BtLPTIS7.js";var O=l(`circle-x`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m15 9-6 6`,key:`1uzhvr`}],[`path`,{d:`m9 9 6 6`,key:`z0biqf`}]]),k=e(t(),1),A=a();function j({className:e,role:t=`list`,...n}){return(0,A.jsx)(`ol`,{...n,className:s(`tr-steps`,e),role:t})}function M({className:e,...t}){return(0,A.jsx)(`li`,{...t,className:s(`tr-steps-item`,e)})}function N({className:e,current:t,total:n,...r}){let i=Math.max(1,n),a=Math.min(Math.max(1,t),i);return(0,A.jsx)(`div`,{...r,"aria-valuemax":i,"aria-valuemin":1,"aria-valuenow":a,className:s(`tr-steps-progress`,e),role:`progressbar`,children:Array.from({length:i},(e,t)=>String(t+1)).map(e=>(0,A.jsx)(`span`,{"aria-hidden":`true`,className:`tr-steps-progress-segment`,"data-complete":Number(e)<=a?`true`:void 0},e))})}var P={Item:M,Progress:N,Root:j};function F({steps:e,current:t,progressLabel:n}){return(0,A.jsxs)(`div`,{className:`flex w-full flex-col gap-tinyrack-xs`,children:[(0,A.jsxs)(`div`,{className:`flex items-baseline justify-between gap-tinyrack-sm`,children:[(0,A.jsx)(c,{color:`muted`,variant:`label`,children:n}),(0,A.jsx)(c,{color:`muted`,variant:`caption`,children:e[t]})]}),(0,A.jsx)(P.Progress,{"aria-label":n,current:t+1,total:e.length})]})}var I={TOTP_ALREADY_ENABLED:`TOTP_ALREADY_ENABLED`,TOTP_NOT_SETUP:`TOTP_NOT_SETUP`,INVALID_TOTP_CODE:`INVALID_TOTP_CODE`,UNAUTHORIZED:`UNAUTHORIZED`,SECOND_FACTOR_SESSION_EXPIRED:`SECOND_FACTOR_SESSION_EXPIRED`},L=5;function R({search:e}){let{t}=te(),n=r(),a=ee(),[s,c]=(0,k.useState)(`generic`),[l,b]=(0,k.useState)(L),j=(0,k.useCallback)(()=>{n(x(`/login`,E(e)))},[n,e]),M=(0,k.useCallback)(()=>{n(`/profile`)},[n]),N=(0,k.useCallback)(e=>{if(e instanceof o)switch(e.code){case I.TOTP_ALREADY_ENABLED:c(`already_enabled`);break;case I.UNAUTHORIZED:case I.SECOND_FACTOR_SESSION_EXPIRED:c(`session_expired`),b(L);break;default:c(`generic`)}else c(`generic`)},[]),P=(0,k.useCallback)(async e=>{await y()},[]),R=(0,k.useCallback)(async t=>{a.setQueryData(v.queryKey,{user:t.user}),await y(),T(e)?oe(D(e)):n(`/profile`)},[n,a,e]),{step:z,setupData:B,recoveryCodes:V,isSetupPending:H,isVerifyPending:U,isConfirmPending:W,startSetup:G,verify:K,goToQr:se,goToVerify:ce,confirmRecoveryCodes:le}=p({autoStart:!0,onSetupError:N,onVerifySuccess:P,onConfirmSuccess:R,onVerifyError:e=>{if(e instanceof o)switch(e.code){case I.TOTP_ALREADY_ENABLED:M();break;case I.UNAUTHORIZED:case I.SECOND_FACTOR_SESSION_EXPIRED:c(`session_expired`),b(L);break;case I.TOTP_NOT_SETUP:G()}}});(0,k.useEffect)(()=>{if(s!==`session_expired`||z!==`error`)return;let e=setInterval(()=>{b(t=>t<=1?(clearInterval(e),j(),0):t-1)},1e3);return()=>clearInterval(e)},[s,z,j]);let ue=(0,k.useCallback)(async e=>{await K(e)},[K]),q=z===`recovery`&&V.length>0,J=z===`qr`&&B!==null,Y=z!==`loading`&&z!==`error`,X=1;q?X=2:J&&(X=0);let Z=t(`setupTotp.title`),Q=t(`setupTotp.subtitle`);q?Z=t(`setupTotp.recoveryCodes.title`):Y&&!J&&(Z=t(`setupTotp.verifyTitle`),Q=t(`setupTotp.verifySubtitle`));let de=z===`error`||J,$;return $=z===`loading`?(0,A.jsx)(`div`,{className:`flex justify-center py-tinyrack-xl`,"data-testid":`totp-setup-loading`,children:(0,A.jsx)(ne,{uiSize:`lg`,variant:`primary`})}):z===`error`&&s===`session_expired`?(0,A.jsxs)(g.Root,{"data-testid":`totp-setup-session-expired`,variant:`warning`,children:[(0,A.jsx)(d,{"aria-hidden":!0,className:`size-tinyrack-xl`}),(0,A.jsx)(g.Title,{children:t(`setupTotp.error.expired`)}),(0,A.jsx)(g.Description,{children:t(`setupTotp.redirecting`,{seconds:l})}),(0,A.jsx)(g.Actions,{children:(0,A.jsx)(u,{appearance:`ghost`,intent:`neutral`,onClick:j,type:`button`,uiSize:`sm`,children:t(`setupTotp.redirectNow`)})})]}):z===`error`&&s===`already_enabled`?(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(_,{icon:re,type:`info`,children:t(`setupTotp.error.alreadyEnabled`)}),(0,A.jsx)(u,{className:`w-full`,intent:`primary`,onClick:M,type:`button`,uiSize:`lg`,children:t(`setupTotp.goToProfile`)})]}):z===`error`?(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(_,{icon:O,type:`error`,children:t(`setupTotp.error.setupFailed`)}),(0,A.jsx)(u,{className:`w-full`,disabled:H,intent:`primary`,loading:H,onClick:G,type:`button`,uiSize:`lg`,children:t(`setupTotp.retry`)})]}):q?(0,A.jsx)(ie,{isLoading:W,onConfirm:le,recoveryCodes:V}):J&&B?(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(_,{icon:m,type:`info`,children:t(`setupTotp.required`)}),(0,A.jsx)(ae,{onNext:ce,setupData:B})]}):(0,A.jsx)(f,{isPending:U,onBack:se,onSubmit:ue}),(0,A.jsxs)(S,{width:q?`wide`:`form`,children:[(0,A.jsx)(h,{eyebrow:Y?(0,A.jsx)(F,{current:X,progressLabel:t(`setupTotp.stepProgress`,{current:X+1,total:3}),steps:[t(`setupTotp.steps.scan`),t(`setupTotp.steps.verify`),t(`setupTotp.steps.saveCodes`)]}):void 0,subtitle:Q,title:Z}),(0,A.jsx)(`div`,{className:`auth-enter flex flex-col gap-tinyrack-lg`,children:$},z),de&&(0,A.jsx)(w,{children:(0,A.jsx)(C,{link:(0,A.jsx)(i,{to:x(`/login`,E(e)),children:t(`setupTotp.backToLogin`)})})})]})}var z=n(function({loaderData:e}){return(0,A.jsx)(b,{state:e.dehydratedState,children:(0,A.jsx)(R,{search:e.search})})});export{z as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as e,J as t,a as n,f as r}from"./components-C1SipCbb.js";import{c as i}from"./toast-_zV1SGz6.js";import{t as a}from"./jsx-runtime-BFZ_fnNJ.js";import{L as o,a as s,i as c}from"./api-0SzZx6X7.js";import{t as l}from"./text-CGN4ZtUZ.js";import{t as u}from"./useMutation-C4CmK9Sb.js";import{r as d}from"./NullStore-BxU9yW8l.js";import{t as f}from"./circle-alert-DGTJ9B9k.js";import{t as p}from"./auth-page-header-
|
|
1
|
+
import{$ as e,J as t,a as n,f as r}from"./components-C1SipCbb.js";import{c as i}from"./toast-_zV1SGz6.js";import{t as a}from"./jsx-runtime-BFZ_fnNJ.js";import{L as o,a as s,i as c}from"./api-0SzZx6X7.js";import{t as l}from"./text-CGN4ZtUZ.js";import{t as u}from"./useMutation-C4CmK9Sb.js";import{r as d}from"./NullStore-BxU9yW8l.js";import{t as f}from"./circle-alert-DGTJ9B9k.js";import{t as p}from"./auth-page-header-D5Z-EA6V.js";import{t as m}from"./alert-CFUBsmUN.js";import{r as h,t as g}from"./standard-schema-C8Td_miB.js";import{r as _}from"./FieldItemContext-CPjig163.js";import{a as v,s as y}from"./schemas-Dxi9xZo6.js";import{n as b,t as x}from"./promise-CFWkfv2A.js";import{o as S}from"./totp-BW4BoCpi.js";import{t as C}from"./pin-input-DtemAOnm.js";import{t as w}from"./document-navigation-Cnp3Alf0.js";import{n as T,r as E}from"./route-module-Bm4sHkx9.js";import{t as D}from"./auth-layout-CFKu8bHI.js";import{n as O,t as k}from"./auth-footer-DgRsLHyD.js";import{t as A}from"./labeled-separator-DkexQjxp.js";import{a as j,r as M,t as N}from"./oauth-search-BtLPTIS7.js";var P=e(t(),1),F=a(),I={SECOND_FACTOR_SESSION_EXPIRED:`SECOND_FACTOR_SESSION_EXPIRED`,INVALID_TOTP_CODE:`INVALID_TOTP_CODE`,TOTP_NOT_ENABLED:`TOTP_NOT_ENABLED`},L=5;function R({search:e}){let{t}=s(),n=r(),a=o(),T=(0,P.useRef)(null),[R,z]=(0,P.useState)(!1),[B,V]=(0,P.useState)(L),H=(0,P.useMemo)(()=>v({code:y().length(6,t(`validation.totp.length`)).regex(/^\d{6}$/,t(`validation.totp.digits`))}),[t]),U=u({...S,onSuccess:async t=>{a.setQueryData(b.queryKey,{user:t.user}),await x(),j(e)?w(N(e)):n(`/profile`)},onSettled:()=>{a.invalidateQueries({queryKey:b.queryKey})}}),{setValue:W,setError:G,handleSubmit:K,watch:q,formState:{errors:J}}=h({defaultValues:{code:``},resolver:g(H)}),Y=q(`code`),X=(0,P.useCallback)(()=>{n(E(`/login`,M(e)))},[n,e]);(0,P.useEffect)(()=>{if(!R)return;let e=setInterval(()=>{V(t=>t<=1?(clearInterval(e),X(),0):t-1)},1e3);return()=>clearInterval(e)},[R,X]);let Z=async e=>{try{await U.mutateAsync(e)}catch(e){if(e instanceof c)switch(e.code){case I.SECOND_FACTOR_SESSION_EXPIRED:z(!0),V(L);return;case I.TOTP_NOT_ENABLED:X();return;case I.INVALID_TOTP_CODE:G(`code`,{type:`manual`,message:t(`verifyTotp.error.invalid`)}),W(`code`,``),T.current?.focus();return}G(`code`,{type:`manual`,message:t(`verifyTotp.error.invalid`)}),W(`code`,``),T.current?.focus()}};return(0,F.jsxs)(D,{children:[(0,F.jsx)(p,{subtitle:t(`verifyTotp.subtitle`),title:t(`verifyTotp.title`)}),R&&(0,F.jsx)(m,{"data-testid":`totp-verify-session-expired`,icon:f,type:`warning`,children:(0,F.jsxs)(`div`,{className:`flex flex-col items-start gap-tinyrack-3xs`,children:[(0,F.jsx)(l,{as:`span`,variant:`bodySm`,children:t(`verifyTotp.error.expired`)}),(0,F.jsx)(l,{as:`span`,color:`muted`,variant:`caption`,children:t(`verifyTotp.redirecting`,{seconds:B})}),(0,F.jsx)(d,{appearance:`ghost`,intent:`neutral`,onClick:X,type:`button`,uiSize:`sm`,children:t(`verifyTotp.redirectNow`)})]})}),(0,F.jsxs)(_,{className:`flex flex-col gap-tinyrack-lg`,onSubmit:K(Z),children:[(0,F.jsx)(C,{autoFocus:!0,disabled:R,error:J.code,length:6,onChange:e=>W(`code`,e),onComplete:()=>K(Z)(),ref:T,value:Y}),R?(0,F.jsx)(d,{className:`w-full`,disabled:!0,intent:`primary`,type:`button`,uiSize:`lg`,children:t(`verifyTotp.submit`)}):(0,F.jsx)(d,{className:`w-full`,intent:`primary`,loading:U.isPending,loadingLabel:t(`verifyTotp.submitting`),type:`submit`,uiSize:`lg`,children:t(`verifyTotp.submit`)})]}),(0,F.jsxs)(`div`,{className:`flex flex-col gap-tinyrack-md`,children:[(0,F.jsx)(A,{label:t(`common.or`)}),(0,F.jsx)(d,{appearance:`ghost`,className:`w-full`,"data-testid":`totp-verify-recovery-link`,intent:`neutral`,onClick:()=>n(E(`/verify/totp/recovery`,M(e))),type:`button`,uiSize:`lg`,children:t(`verifyTotp.useRecoveryCode`)})]}),(0,F.jsx)(k,{children:(0,F.jsx)(O,{link:(0,F.jsx)(i,{to:E(`/login`,M(e)),children:t(`verifyTotp.backToLogin`)})})})]})}var z=n(function({loaderData:e}){return(0,F.jsx)(T,{state:e.dehydratedState,children:(0,F.jsx)(R,{search:e.search})})});export{z as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as e,J as t,a as n,f as r,o as i}from"./components-C1SipCbb.js";import{c as a}from"./toast-_zV1SGz6.js";import{t as o}from"./jsx-runtime-BFZ_fnNJ.js";import{L as s,a as c}from"./api-0SzZx6X7.js";import{r as l,t as u}from"./text-CGN4ZtUZ.js";import{t as d}from"./useMutation-C4CmK9Sb.js";import{V as f}from"./select--ltVnlVl.js";import{r as p}from"./NullStore-BxU9yW8l.js";import{t as m}from"./circle-alert-DGTJ9B9k.js";import{t as h}from"./auth-field-1EM9pnWe.js";import{t as g}from"./fingerprint-pattern-V_eTEvnZ.js";import{n as _}from"./language-selector-
|
|
1
|
+
import{$ as e,J as t,a as n,f as r,o as i}from"./components-C1SipCbb.js";import{c as a}from"./toast-_zV1SGz6.js";import{t as o}from"./jsx-runtime-BFZ_fnNJ.js";import{L as s,a as c}from"./api-0SzZx6X7.js";import{r as l,t as u}from"./text-CGN4ZtUZ.js";import{t as d}from"./useMutation-C4CmK9Sb.js";import{V as f}from"./select--ltVnlVl.js";import{r as p}from"./NullStore-BxU9yW8l.js";import{t as m}from"./circle-alert-DGTJ9B9k.js";import{t as h}from"./auth-field-1EM9pnWe.js";import{t as g}from"./fingerprint-pattern-V_eTEvnZ.js";import{n as _}from"./language-selector-CGXk9vW_.js";import{t as v}from"./shield-check-93-WFkyJ.js";import{t as y}from"./auth-page-header-D5Z-EA6V.js";import{t as b}from"./link-button-qvSTUE1n.js";import{t as x}from"./alert-CFUBsmUN.js";import{t as S}from"./route-error-fallback-C2OHu3JW.js";import{r as C,t as w}from"./standard-schema-C8Td_miB.js";import{r as T}from"./FieldItemContext-CPjig163.js";import{a as E,s as D}from"./schemas-Dxi9xZo6.js";import{n as O,t as k}from"./promise-CFWkfv2A.js";import{i as A}from"./passkey-C9bzur2Z.js";import{t as j}from"./document-navigation-Cnp3Alf0.js";import{n as M,r as N,t as P}from"./route-module-Bm4sHkx9.js";import{t as F}from"./auth-layout-CFKu8bHI.js";import{n as I,t as L}from"./auth-footer-DgRsLHyD.js";import{a as R,r as z,t as B}from"./oauth-search-BtLPTIS7.js";import{t as V}from"./passkey-error-CZnhXTc7.js";var H=f(`tag`,[[`path`,{d:`M12.586 2.586A2 2 0 0 0 11.172 2H4a2 2 0 0 0-2 2v7.172a2 2 0 0 0 .586 1.414l8.704 8.704a2.426 2.426 0 0 0 3.42 0l6.58-6.58a2.426 2.426 0 0 0 0-3.42z`,key:`vktsd0`}],[`circle`,{cx:`7.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`kqv944`}]]),U=e(t(),1),W=o();function G({search:e}){let{t}=c(),n=r(),i=s(),{data:o}=l(_),[f,S]=(0,U.useState)(e.passkey_name?`registering`:`form`),[M,P]=(0,U.useState)(``),G=(0,U.useRef)(!1),K=o.auth.password.enabled&&o.auth.password.two_factor.enrollment_required&&o.auth.password.totp.enabled,q=(0,U.useMemo)(()=>E({name:D().max(100,t(`validation.passkey.name.max`))}),[t]),{register:J,handleSubmit:Y,formState:{errors:X}}=C({defaultValues:{name:``},resolver:w(q)}),Z=d({...A,onSuccess:async t=>{t.second_factor_setup_completed&&t.user?(i.setQueryData(O.queryKey,{user:t.user}),await k(),R(e)?j(B(e)):n(`/profile`)):(i.invalidateQueries({queryKey:O.queryKey}),n(`/profile`))},onError:e=>{switch(S(`error`),V(e)){case`unsupported`:P(t(`setupPasskey.error.unsupported`));return;case`not_allowed`:P(t(`setupPasskey.error.notAllowed`));return;case`expired`:P(t(`setupPasskey.error.expired`));return;case`user_mismatch`:case`verification_failed`:P(t(`setupPasskey.error.failed`));return}},onSettled:()=>{i.invalidateQueries({queryKey:O.queryKey})}});return(0,U.useEffect)(()=>{e.passkey_name&&!G.current&&(G.current=!0,Z.mutate({name:e.passkey_name}))},[Z,e.passkey_name]),f===`registering`?(0,W.jsxs)(F,{children:[(0,W.jsx)(y,{subtitle:t(`setupPasskey.subtitle`),title:t(`setupPasskey.title`)}),(0,W.jsxs)(`div`,{className:`flex flex-col items-center gap-tinyrack-lg py-tinyrack-xl`,children:[(0,W.jsx)(g,{"aria-hidden":!0,className:`size-tinyrack-3xl animate-pulse text-tinyrack-primary-foreground`}),(0,W.jsx)(u,{align:`center`,as:`p`,color:`muted`,variant:`body`,children:t(`setupPasskey.waiting`)})]})]}):f===`error`?(0,W.jsxs)(F,{children:[(0,W.jsx)(y,{subtitle:t(`setupPasskey.subtitle`),title:t(`setupPasskey.title`)}),(0,W.jsx)(x,{icon:m,type:`error`,children:M}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-tinyrack-sm`,children:[K&&(0,W.jsxs)(b,{className:`w-full gap-tinyrack-sm`,intent:`primary`,render:(0,W.jsx)(a,{to:N(`/setup/totp`,z(e))}),uiSize:`lg`,children:[(0,W.jsx)(v,{"aria-hidden":!0,className:`size-tinyrack-xl`}),t(`setupPasskey.useTotp`)]}),(0,W.jsx)(p,{appearance:K?`outline`:`solid`,className:`w-full`,intent:K?`neutral`:`primary`,onClick:()=>{e.passkey_name?(S(`registering`),P(``),Z.mutate({name:e.passkey_name})):S(`form`)},type:`button`,uiSize:`lg`,children:t(`setupPasskey.retry`)})]}),(0,W.jsx)(L,{children:(0,W.jsx)(I,{link:(0,W.jsx)(a,{to:N(`/login`,z(e)),children:t(`setupPasskey.backToLogin`)})})})]}):(0,W.jsxs)(F,{children:[(0,W.jsx)(y,{subtitle:t(`setupPasskey.subtitle`),title:t(`setupPasskey.title`)}),(0,W.jsx)(x,{icon:v,type:`info`,children:t(`setupPasskey.required`)}),(0,W.jsx)(u,{align:`center`,as:`p`,color:`muted`,variant:`bodySm`,children:t(`setupPasskey.description`)}),(0,W.jsxs)(T,{className:`flex flex-col gap-tinyrack-lg`,onSubmit:Y(e=>{S(`registering`),P(``),Z.mutate({name:e.name||void 0})}),children:[(0,W.jsx)(h,{error:X.name,hint:t(`setupPasskey.name.hint`),icon:H,id:`passkey-name`,label:t(`setupPasskey.name.label`),placeholder:t(`setupPasskey.name.placeholder`),...J(`name`),type:`text`}),(0,W.jsx)(p,{className:`w-full`,intent:`primary`,loading:Z.isPending,loadingLabel:t(`setupPasskey.registering`),type:`submit`,uiSize:`lg`,children:t(`setupPasskey.continue`)})]}),(0,W.jsx)(L,{children:(0,W.jsx)(I,{link:(0,W.jsx)(a,{to:N(`/login`,z(e)),children:t(`setupPasskey.backToLogin`)})})})]})}var K=i(function({error:e}){return(0,W.jsx)(P,{component:S,error:e})}),q=n(function({loaderData:e}){return(0,W.jsx)(M,{state:e.dehydratedState,children:(0,W.jsx)(G,{search:e.search})})});export{K as ErrorBoundary,q as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e,o as t}from"./components-C1SipCbb.js";import{c as n}from"./toast-_zV1SGz6.js";import{t as r}from"./jsx-runtime-BFZ_fnNJ.js";import{L as i,a,n as o,t as s}from"./api-0SzZx6X7.js";import{n as c,r as l}from"./text-CGN4ZtUZ.js";import{t as u}from"./useMutation-C4CmK9Sb.js";import{t as d}from"./mutationOptions-Dfvzj6n2.js";import{V as f}from"./select--ltVnlVl.js";import{n as p}from"./shell-header-bar-
|
|
1
|
+
import{a as e,o as t}from"./components-C1SipCbb.js";import{c as n}from"./toast-_zV1SGz6.js";import{t as r}from"./jsx-runtime-BFZ_fnNJ.js";import{L as i,a,n as o,t as s}from"./api-0SzZx6X7.js";import{n as c,r as l}from"./text-CGN4ZtUZ.js";import{t as u}from"./useMutation-C4CmK9Sb.js";import{t as d}from"./mutationOptions-Dfvzj6n2.js";import{V as f}from"./select--ltVnlVl.js";import{n as p}from"./shell-header-bar-C3KYib1D.js";import{r as m}from"./NullStore-BxU9yW8l.js";import{t as h}from"./auth-choice-row-vQ3LzZiF.js";import{r as g}from"./language-selector-CGXk9vW_.js";import{t as _}from"./trash-2-BOsxjkzU.js";import{t as v}from"./auth-page-header-D5Z-EA6V.js";import{t as y}from"./link-button-qvSTUE1n.js";import{t as b}from"./alert-CFUBsmUN.js";import{t as x}from"./initial-avatar-D4aPMV9z.js";import{t as S}from"./route-error-fallback-C2OHu3JW.js";import{t as C}from"./badge-BCQspax5.js";import{t as w}from"./document-navigation-Cnp3Alf0.js";import{n as T,t as E}from"./route-module-Bm4sHkx9.js";import{t as D}from"./auth-layout-CFKu8bHI.js";import{n as O,r as k}from"./oauth-search-BtLPTIS7.js";var A=f(`arrow-right`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]),j=f(`circle-user-round`,[[`path`,{d:`M17.925 20.056a6 6 0 0 0-11.851.001`,key:`z69sun`}],[`circle`,{cx:`12`,cy:`11`,r:`4`,key:`1gt34v`}],[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]]),M=f(`plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]);function N(e,t){return c({queryKey:g.accounts(t),queryFn:async()=>{let n=await e.api.auth.accounts.$get({query:t?{client_id:t}:{}});return o(n)}})}function P(e){return N(s,e)}var F=d({mutationFn:async e=>{let t=await s.api.auth.accounts.select.$post({json:e});return o(t)}}),I=d({mutationFn:async e=>{let t=await s.api.auth.accounts.remove.$post({json:e});return o(t)}}),L=r();function R(e){let t=e?.split(` `).filter(Boolean)??[];return t.includes(`login`)||t.push(`login`),t.join(` `)}function z(e){let t=k(e),n=new URLSearchParams;for(let[e,r]of Object.entries({...t,prompt:R(t.prompt),account_selected:1}))r!==void 0&&n.set(e,String(r));return`/login?${n.toString()}`}function B({search:e}){let{t}=a(),r=i(),{data:o}=l(P(e.client_id)),s=o.accounts.length===0&&!o.allow_add_account,c=()=>{w(O({...e,account_selected:1}))},d=u({...F,onSuccess:c}),f=u({...I,onSuccess:()=>{r.invalidateQueries({queryKey:g.accounts(e.client_id)})}});return(0,L.jsxs)(D,{width:`wide`,children:[(0,L.jsx)(v,{subtitle:t(`accountSelect.subtitle`),title:t(`accountSelect.title`)}),o.accounts.length===0?(0,L.jsx)(b,{icon:j,type:`info`,children:t(s?`accountSelect.unavailable`:`accountSelect.noRememberedAccounts`)}):(0,L.jsx)(`div`,{className:`flex flex-col gap-tinyrack-xs`,"data-testid":`account-list`,children:o.accounts.map(e=>(0,L.jsx)(`div`,{"data-testid":`remembered-account`,children:(0,L.jsx)(h,{description:e.current?t(`accountSelect.currentAccount`):t(`accountSelect.rememberedAccount`),label:e.email,leading:(0,L.jsx)(x,{email:e.email,size:`sm`}),render:(0,L.jsx)(m,{"data-testid":`select-account-${e.sub}`,disabled:d.isPending,onClick:()=>d.mutate({sub:e.sub}),type:`button`,uiSize:`lg`}),trailing:(0,L.jsxs)(L.Fragment,{children:[e.current?(0,L.jsx)(C,{uiSize:`md`,variant:`info`,children:t(`accountSelect.current`)}):null,o.allow_remove_account&&!e.current?(0,L.jsx)(p,{appearance:`ghost`,"aria-label":t(`accountSelect.removeAccount`,{email:e.email}),"data-testid":`remove-account-${e.sub}`,disabled:f.isPending,intent:`neutral`,onClick:()=>f.mutate({sub:e.sub}),type:`button`,uiSize:`sm`,children:(0,L.jsx)(_,{"aria-hidden":!0,className:`size-tinyrack-lg`})}):null]})})},e.sub))}),o.allow_add_account?(0,L.jsxs)(y,{appearance:`outline`,className:`w-full justify-between`,intent:`neutral`,render:(0,L.jsx)(n,{to:z(e)}),uiSize:`lg`,children:[(0,L.jsx)(M,{"aria-hidden":!0,className:`size-tinyrack-lg`}),t(`accountSelect.useAnotherAccount`),(0,L.jsx)(A,{"aria-hidden":!0,className:`size-tinyrack-lg`})]}):null]})}var V=t(function({error:e}){return(0,L.jsx)(E,{component:S,error:e})}),H=e(function({loaderData:e}){return(0,L.jsx)(T,{state:e.dehydratedState,children:(0,L.jsx)(B,{search:e.search})})});export{V as ErrorBoundary,H as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as e,o as t,u as n}from"./components-C1SipCbb.js";import{t as r}from"./jsx-runtime-BFZ_fnNJ.js";import{a as i,n as a,t as o}from"./api-0SzZx6X7.js";import{n as s,r as c,t as l}from"./text-CGN4ZtUZ.js";import{t as u}from"./useMutation-C4CmK9Sb.js";import{t as d}from"./mutationOptions-Dfvzj6n2.js";import{n as f,r as p}from"./NullStore-BxU9yW8l.js";import{t as m}from"./card-CTv8DubK.js";import{r as h}from"./language-selector-
|
|
1
|
+
import{a as e,o as t,u as n}from"./components-C1SipCbb.js";import{t as r}from"./jsx-runtime-BFZ_fnNJ.js";import{a as i,n as a,t as o}from"./api-0SzZx6X7.js";import{n as s,r as c,t as l}from"./text-CGN4ZtUZ.js";import{t as u}from"./useMutation-C4CmK9Sb.js";import{t as d}from"./mutationOptions-Dfvzj6n2.js";import{n as f,r as p}from"./NullStore-BxU9yW8l.js";import{t as m}from"./card-CTv8DubK.js";import{r as h}from"./language-selector-CGXk9vW_.js";import{t as g}from"./shield-check-93-WFkyJ.js";import{t as _}from"./auth-page-header-D5Z-EA6V.js";import{t as v}from"./initial-avatar-D4aPMV9z.js";import{t as y}from"./route-error-fallback-C2OHu3JW.js";import{t as b}from"./document-navigation-Cnp3Alf0.js";import{n as x,t as S}from"./route-module-Bm4sHkx9.js";import{t as C}from"./auth-layout-CFKu8bHI.js";import{n as w}from"./oauth-search-BtLPTIS7.js";var T=(e,t)=>s({queryKey:h.consent(t.client_id,t.scope),queryFn:async()=>{let n=await e.api.consent.$get({query:{client_id:t.client_id,scope:t.scope}});return a(n)}}),E=e=>T(o,e),D=d({mutationFn:async e=>{let t=await o.api.consent.$post({json:e});return a(t)}}),O=r();function k(e){let t=n();return(0,O.jsx)(y,{...e,onUnauthorized:()=>{let e=new URLSearchParams(t.search),n=Object.fromEntries(e.entries());b(w(n))}})}function A({search:e}){let{t}=i(),n=c(E({client_id:e.client_id,scope:e.scope})),r=u({...D,onSuccess:e=>{b(e.redirect_url)}}),a=()=>{r.mutate({client_id:e.client_id,redirect_uri:e.redirect_uri,response_type:e.response_type,scope:e.scope,state:e.state,nonce:e.nonce,code_challenge:e.code_challenge,code_challenge_method:e.code_challenge_method,prompt:e.prompt,max_age:e.max_age,reauthenticated:e.reauthenticated,display:e.display,response_mode:e.response_mode,login_hint:e.login_hint,ui_locales:e.ui_locales,id_token_hint:e.id_token_hint,acr_values:e.acr_values,account_selected:e.account_selected,account_selection_state:e.account_selection_state,decision:`allow`})},o=()=>{r.mutate({client_id:e.client_id,redirect_uri:e.redirect_uri,response_type:e.response_type,scope:e.scope,state:e.state,nonce:e.nonce,code_challenge:e.code_challenge,code_challenge_method:e.code_challenge_method,prompt:e.prompt,max_age:e.max_age,reauthenticated:e.reauthenticated,display:e.display,response_mode:e.response_mode,login_hint:e.login_hint,ui_locales:e.ui_locales,id_token_hint:e.id_token_hint,acr_values:e.acr_values,account_selected:e.account_selected,account_selection_state:e.account_selection_state,decision:`deny`})},{client:s,scopes:d,user:h}=n.data;return(0,O.jsxs)(C,{width:`wide`,children:[(0,O.jsx)(_,{subtitle:t(`consent.subtitle`,{app:s.name}),title:t(`consent.title`)}),(0,O.jsx)(m.Root,{padding:`lg`,variant:`outlined`,children:(0,O.jsxs)(m.Content,{className:`flex items-center gap-tinyrack-md`,children:[(0,O.jsx)(v,{email:h.email,size:`sm`}),(0,O.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,O.jsx)(l,{color:`muted`,variant:`caption`,children:t(`consent.loggedInAs`)}),(0,O.jsx)(l,{"data-testid":`consent-user-email`,truncate:!0,variant:`body`,weight:`medium`,children:h.email})]})]})}),(0,O.jsxs)(`div`,{className:`flex flex-col gap-tinyrack-sm`,children:[(0,O.jsx)(l,{as:`h3`,variant:`label`,children:t(`consent.permissions.title`)}),(0,O.jsx)(`ul`,{className:`flex flex-col gap-tinyrack-xs`,"data-testid":`consent-scope-list`,children:d.map(e=>(0,O.jsxs)(`li`,{className:`flex items-center gap-tinyrack-sm rounded-tinyrack-md bg-tinyrack-surface-muted px-tinyrack-md py-tinyrack-sm`,children:[(0,O.jsx)(g,{"aria-hidden":!0,className:`size-tinyrack-lg shrink-0 text-tinyrack-info-foreground`}),(0,O.jsx)(l,{variant:`body`,children:t(`consent.scope.${e.name}`,{defaultValue:e.description})})]},e.name))})]}),(0,O.jsxs)(`div`,{className:`sticky bottom-0 flex gap-tinyrack-sm border-tinyrack-border border-t-tinyrack-default bg-tinyrack-surface py-tinyrack-md`,children:[(0,O.jsxs)(p,{appearance:`outline`,className:`flex-1`,"data-testid":`consent-deny`,intent:`neutral`,loading:r.isPending,loadingLabel:t(`consent.deny`),onClick:o,type:`button`,uiSize:`lg`,children:[(0,O.jsx)(f,{"aria-hidden":!0,className:`size-tinyrack-lg`}),t(`consent.deny`)]}),(0,O.jsxs)(p,{className:`flex-1`,"data-testid":`consent-allow`,intent:`primary`,loading:r.isPending,loadingLabel:t(`consent.allow`),onClick:a,type:`button`,uiSize:`lg`,children:[(0,O.jsx)(g,{"aria-hidden":!0,className:`size-tinyrack-lg`}),t(`consent.allow`)]})]})]})}var j=t(function({error:e}){return(0,O.jsx)(S,{component:k,error:e})}),M=e(function({loaderData:e}){return(0,O.jsx)(x,{state:e.dehydratedState,children:(0,O.jsx)(A,{search:e.search})})});export{j as ErrorBoundary,M as default};
|
package/frontend/client/assets/{shell-header-bar-CtUdWFmD.js → shell-header-bar-C3KYib1D.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as e,J as t}from"./components-C1SipCbb.js";import{t as n}from"./react-dom-BxmrrPTH.js";import{n as r,t as i,u as a}from"./toast-_zV1SGz6.js";import{t as o}from"./jsx-runtime-BFZ_fnNJ.js";import{a as s,d as c}from"./api-0SzZx6X7.js";import{r as l,t as u}from"./text-CGN4ZtUZ.js";import{Bn as d,Bt as f,Cn as p,Dn as m,E as h,Et as g,Fn as _,G as v,Ht as y,In as b,It as x,K as S,Mn as C,Nn as w,On as T,Ot as E,P as D,Qt as O,Rt as k,Sn as A,T as j,Tn as M,Ut as N,V as P,Vt as F,Wt as I,a as ee,an as te,at as ne,c as L,cn as R,f as z,fn as B,i as re,it as ie,j as ae,kn as oe,kt as V,l as H,ln as se,mn as ce,n as le,nn as ue,on as U,ot as de,pn as W,q as fe,rn as pe,s as me,sn as G,t as he,tn as ge,u as _e,ut as ve,v as ye,vn as be,x as K,xn as xe,y as Se,yn as q}from"./usePositioner-DcBnB2-O.js";import{$ as Ce,G as we,K as Te,Q as Ee,R as De,V as Oe,W as ke,X as Ae,Z as je,at as Me,ct as Ne,tt as Pe}from"./select--ltVnlVl.js";import{a as Fe,c as Ie,l as Le,n as Re,o as ze,r as Be,s as Ve,t as He}from"./NullStore-BxU9yW8l.js";import{s as Ue}from"./i18n-wAvPXBC2.js";import{n as We,t as Ge}from"./language-selector-BZipfWXO.js";var J=e(t(),1);function Ke(e,t){return t!=null&&!V(t)?0:typeof e==`function`?e():e}function Y(e,t,n){let r=Ke(e,n);return typeof r==`number`?r:r?.[t]}function qe(e){return typeof e==`function`?e():e}function Je(e,t){return t||e===`click`||e===`mousedown`}function Ye(e){return e?.includes(`mouse`)&&e!==`mousedown`}var X=o(),Xe=J.createContext({hasProvider:!1,timeoutMs:0,delayRef:{current:0},initialDelayRef:{current:0},timeout:new ue,currentIdRef:{current:null},currentContextRef:{current:null}});function Ze(e,t){e.current=t.current}function Qe(e){let{children:t,delay:n,timeoutMs:r=0}=e,i=J.useRef(n),a=J.useRef(n),o=J.useRef(null),s=J.useRef(null),c=pe();return m(()=>{if(a.current=n,!o.current){i.current=n;return}i.current={open:Y(i.current,`open`),close:Y(n,`close`)}},[n,o,i,a]),(0,X.jsx)(Xe.Provider,{value:J.useMemo(()=>({hasProvider:!0,delayRef:i,initialDelayRef:a,currentIdRef:o,timeoutMs:r,currentContextRef:s,timeout:c}),[r,c]),children:t})}function $e(e,t={open:!1}){let{open:n}=t,r=`rootStore`in e?e.rootStore:e,i=r.useState(`floatingId`),{currentIdRef:a,delayRef:o,timeoutMs:s,initialDelayRef:c,currentContextRef:l,hasProvider:u,timeout:d}=J.useContext(Xe),[f,p]=J.useState(!1),g=J.useRef(n);return m(()=>{g.current=n},[n]),m(()=>{function e(){l.current?.setIsInstantPhase(!1),a.current=null,l.current=null,o.current=c.current,d.clear()}if(a.current&&!n&&a.current===i){if(p(!1),s){let t=i;return d.start(s,()=>{r.select(`open`)||a.current&&a.current!==t||e()}),()=>{(g.current||a.current!==t)&&d.clear()}}e()}},[n,i,a,o,s,c,l,d,r]),m(()=>{if(!n)return;let e=l.current,t=a.current;d.clear(),l.current={onOpenChange:r.setOpen,setIsInstantPhase:p},a.current=i,o.current={open:0,close:Y(c.current,`close`)},t!==null&&t!==i?(p(!0),e?.setIsInstantPhase(!0),e?.onOpenChange(!1,h(P))):(p(!1),e?.setIsInstantPhase(!1))},[n,i,r,a,o,c,l,d]),m(()=>()=>{if(a.current===i){if(l.current=null,!g.current)return;a.current=null,Ze(o,c),d.clear()}},[l,a,o,i,c,d]),J.useMemo(()=>({hasProvider:u,delayRef:o,isInstantPhase:f}),[u,o,f])}function et(e,t){let n=null,r=null,i=!1;return{contextElement:e||void 0,getBoundingClientRect(){let a=e?.getBoundingClientRect()||{width:0,height:0,x:0,y:0},o=t.axis===`x`||t.axis===`both`,s=t.axis===`y`||t.axis===`both`,c=[`mouseenter`,`mousemove`].includes(t.dataRef.current.openEvent?.type||``)&&t.pointerType!==`touch`,l=a.width,u=a.height,d=a.x,f=a.y;return n==null&&t.x&&o&&(n=a.x-t.x),r==null&&t.y&&s&&(r=a.y-t.y),d-=n||0,f-=r||0,l=0,u=0,!i||c?(l=t.axis===`y`?a.width:0,u=t.axis===`x`?a.height:0,d=o&&t.x!=null?t.x:d,f=s&&t.y!=null?t.y:f):i&&!c&&(u=t.axis===`x`?a.height:u,l=t.axis===`y`?a.width:l),i=!0,{width:l,height:u,x:d,y:f,top:f,right:d+l,bottom:f+u,left:d}}}}function tt(e){return e!=null&&e.clientX!=null}function nt(e,t={}){let{enabled:n=!0,axis:r=`both`}=t,i=`rootStore`in e?e.rootStore:e,a=i.useState(`open`),o=i.useState(`floatingElement`),s=i.useState(`domReferenceElement`),c=i.context.dataRef,l=J.useRef(!1),u=J.useRef(null),[d,f]=J.useState(),[p,m]=J.useState([]),h=q(e=>{i.set(`positionReference`,e)}),g=q((e,t,n)=>{l.current||c.current.openEvent&&!tt(c.current.openEvent)||i.set(`positionReference`,et(n??s,{x:e,y:t,axis:r,dataRef:c,pointerType:d}))}),_=q(e=>{a?u.current||(g(e.clientX,e.clientY,e.currentTarget),m([])):g(e.clientX,e.clientY,e.currentTarget)}),v=V(d)?o:a;J.useEffect(()=>{if(!n){h(s);return}if(!v)return;function e(){u.current?.(),u.current=null}let t=B(o);function r(t){let n=I(t);N(o,n)?e():g(t.clientX,t.clientY)}return!c.current.openEvent||tt(c.current.openEvent)?u.current=U(t,`mousemove`,r):h(s),e},[v,n,o,c,s,i,g,h,p]),J.useEffect(()=>()=>{i.set(`positionReference`,null)},[i]),J.useEffect(()=>{n&&!o&&(l.current=!1)},[n,o]),J.useEffect(()=>{!n&&a&&(l.current=!0)},[n,a]);let y=J.useMemo(()=>{function e(e){f(e.pointerType)}return{onPointerDown:e,onPointerEnter:e,onMouseMove:_,onMouseEnter:_}},[_]);return J.useMemo(()=>n?{reference:y,trigger:y}:{},[n,y])}var rt=ge&&O;function it(e,t={}){let{enabled:n=!0,delay:r}=t,i=`rootStore`in e?e.rootStore:e,{events:a,dataRef:o}=i.context,s=J.useRef(!1),c=J.useRef(null),l=J.useRef(!0),u=pe();J.useEffect(()=>{let e=i.select(`domReferenceElement`);if(!n)return;let t=B(e);function r(){let e=i.select(`domReferenceElement`);!i.select(`open`)&&ce(e)&&e===y(G(e))&&(s.current=!0)}function a(){l.current=!0}function o(){l.current=!1}return R(U(t,`blur`,r),rt&&U(t,`keydown`,a,!0),rt&&U(t,`pointerdown`,o,!0))},[i,n]),J.useEffect(()=>{if(!n)return;function e(e){if(e.reason===`trigger-press`||e.reason===`escape-key`){let e=i.select(`domReferenceElement`);W(e)&&(c.current=e,s.current=!0)}}return a.on(`openchange`,e),()=>{a.off(`openchange`,e)}},[a,n,i]);let d=J.useMemo(()=>{function e(){s.current=!1,c.current=null}return{onMouseLeave(){e()},onFocus(t){let n=t.currentTarget;if(s.current){if(c.current===n)return;e()}let a=I(t.nativeEvent);if(W(a)){if(rt&&!t.relatedTarget){if(!l.current&&!f(a))return}else if(!F(a))return}let o=k(t.relatedTarget,i.context.triggerElements),{nativeEvent:d,currentTarget:p}=t,m=typeof r==`function`?r():r;if(i.select(`open`)&&o||m===0||m===void 0){i.setOpen(!0,h(v,d,p));return}u.start(m,()=>{s.current||i.setOpen(!0,h(v,d,p))})},onBlur(t){e();let n=t.relatedTarget,r=t.nativeEvent,a=W(n)&&n.hasAttribute(j(`focus-guard`))&&n.getAttribute(`data-type`)===`outside`;u.start(0,()=>{let e=i.select(`domReferenceElement`),t=y(G(e));!n&&t===e||N(o.current.floatingContext?.refs.floating.current,t)||N(e,t)||a||k(n??t,i.context.triggerElements)||i.setOpen(!1,h(v,r))})}}},[o,r,i,u]);return J.useMemo(()=>n?{reference:d,trigger:d}:{},[n,d])}var at=class e{constructor(){this.pointerType=void 0,this.interactedInside=!1,this.handler=void 0,this.blockMouseMove=!0,this.performedPointerEventsMutation=!1,this.pointerEventsScopeElement=null,this.pointerEventsReferenceElement=null,this.pointerEventsFloatingElement=null,this.restTimeoutPending=!1,this.openChangeTimeout=new ue,this.restTimeout=new ue,this.handleCloseOptions=void 0}static create(){return new e}dispose=()=>{this.openChangeTimeout.clear(),this.restTimeout.clear()};disposeEffect=()=>this.dispose},ot=new WeakMap;function st(e){if(!e.performedPointerEventsMutation)return;let t=e.pointerEventsScopeElement;t&&ot.get(t)===e&&(e.pointerEventsScopeElement?.style.removeProperty(`pointer-events`),e.pointerEventsReferenceElement?.style.removeProperty(`pointer-events`),e.pointerEventsFloatingElement?.style.removeProperty(`pointer-events`),ot.delete(t)),e.performedPointerEventsMutation=!1,e.pointerEventsScopeElement=null,e.pointerEventsReferenceElement=null,e.pointerEventsFloatingElement=null}function ct(e,t){let{scopeElement:n,referenceElement:r,floatingElement:i}=t,a=ot.get(n);a&&a!==e&&st(a),st(e),e.performedPointerEventsMutation=!0,e.pointerEventsScopeElement=n,e.pointerEventsReferenceElement=r,e.pointerEventsFloatingElement=i,ot.set(n,e),n.style.pointerEvents=`none`,r.style.pointerEvents=`auto`,i.style.pointerEvents=`auto`}function lt(e){let t=e.context.dataRef.current,n=_(()=>t.hoverInteractionState??at.create()).current;return t.hoverInteractionState||=n,p(t.hoverInteractionState.disposeEffect),t.hoverInteractionState}function ut(e,t={}){let{enabled:n=!0,closeDelay:r=0,nodeId:i}=t,a=`rootStore`in e?e.rootStore:e,o=a.useState(`open`),s=a.useState(`floatingElement`),c=a.useState(`domReferenceElement`),{dataRef:l}=a.context,u=Se(),d=ye(),f=lt(a),p=pe(),g=q(()=>Je(l.current.openEvent?.type,f.interactedInside)),_=q(()=>Ye(l.current.openEvent?.type)),v=q(()=>{st(f)});m(()=>{o||(f.pointerType=void 0,f.restTimeoutPending=!1,f.interactedInside=!1,v())},[o,f,v]),J.useEffect(()=>v,[v]),m(()=>{if(n&&o&&f.handleCloseOptions?.blockPointerEvents&&_()&&W(c)&&s){let e=c,t=s,n=G(s),r=u?.nodesRef.current.find(e=>e.id===d)?.context?.elements.floating;r&&(r.style.pointerEvents=``);let i=f.pointerEventsScopeElement===t?null:f.pointerEventsScopeElement,a=r===t?null:r,o=f.handleCloseOptions?.getScope?.()??i??a??e.closest(`[data-rootownerid]`)??n.body;return ct(f,{scopeElement:o,referenceElement:e,floatingElement:t}),()=>{v()}}},[n,o,c,s,f,_,u,d,v]),J.useEffect(()=>{if(!n)return;function e(){return!!(u&&d&&Ne(u.nodesRef.current,d).length>0)}function t(e){let t=Y(r,`close`,f.pointerType),n=()=>{a.setOpen(!1,h(S,e)),u?.events.emit(`floating.closed`,e)};t?f.openChangeTimeout.start(t,n):(f.openChangeTimeout.clear(),n())}function o(e){let t=I(e);if(!x(t)){f.interactedInside=!1;return}f.interactedInside=t?.closest(`[aria-haspopup]`)!=null}function c(){f.openChangeTimeout.clear(),p.clear(),u?.events.off(`floating.closed`,y),v()}function m(n){if(e()&&u){u.events.on(`floating.closed`,y);return}if(k(n.relatedTarget,a.context.triggerElements))return;let r=l.current.floatingContext?.nodeId??i,o=n.relatedTarget;if(!(u&&r&&W(o)&&Ne(u.nodesRef.current,r,!1).some(e=>N(e.context?.elements.floating,o)))){if(f.handler){f.handler(n);return}v(),_()&&!g()&&t(n)}}function y(t){!u||!d||e()||p.start(0,()=>{u.events.off(`floating.closed`,y),a.setOpen(!1,h(S,t)),u.events.emit(`floating.closed`,t)})}let b=s;return R(b&&U(b,`mouseenter`,c),b&&U(b,`mouseleave`,m),b&&U(b,`pointerdown`,o,!0),()=>{u?.events.off(`floating.closed`,y)})},[n,s,a,l,r,i,_,g,v,f,u,d,p])}var dt=e(n(),1),ft={current:null};function pt(e,t={}){let{enabled:n=!0,delay:r=0,handleClose:i=null,mouseOnly:a=!1,restMs:o=0,move:s=!0,triggerElementRef:c=ft,externalTree:l,isActiveTrigger:u=!0,getHandleCloseContext:d,isClosing:f,shouldOpen:p,guardStaleOpen:m=!1}=t,g=`rootStore`in e?e.rootStore:e,{dataRef:_,events:v}=g.context,y=Se(l),b=lt(g),x=J.useRef(!1),C=K(i),w=K(r),T=K(o),E=K(n),D=K(p),O=K(f),A=q(()=>Je(_.current.openEvent?.type,b.interactedInside)),j=q(()=>D.current?.()!==!1),M=q((e,t,n)=>{let r=g.context.triggerElements;if(r.hasElement(t))return!e||!N(e,t);if(!W(n))return!1;let i=n;return r.hasMatchingElement(e=>N(e,i))&&(!e||!N(e,i))}),P=q(()=>{b.handler&&=(G(g.select(`domReferenceElement`)).removeEventListener(`mousemove`,b.handler),void 0)}),F=q(()=>{st(b)});return u&&(b.handleCloseOptions=C.current?.__options),J.useEffect(()=>P,[P]),J.useEffect(()=>{if(!n)return;function e(e){e.open?x.current=!1:(x.current=e.reason===S,P(),b.openChangeTimeout.clear(),b.restTimeout.clear(),b.blockMouseMove=!0,b.restTimeoutPending=!1)}return v.on(`openchange`,e),()=>{v.off(`openchange`,e)}},[n,v,b,P]),J.useEffect(()=>{if(!n)return;function e(e,t=!0){let n=Y(w.current,`close`,b.pointerType);n?b.openChangeTimeout.start(n,()=>{g.setOpen(!1,h(S,e)),y?.events.emit(`floating.closed`,e)}):t&&(b.openChangeTimeout.clear(),g.setOpen(!1,h(S,e)),y?.events.emit(`floating.closed`,e))}let t=c.current??(u?g.select(`domReferenceElement`):null);if(!W(t))return;function r(e){if(b.openChangeTimeout.clear(),b.blockMouseMove=!1,a&&!V(b.pointerType))return;let t=qe(T.current),n=Y(w.current,`open`,b.pointerType),r=I(e),i=e.currentTarget??null,o=g.select(`domReferenceElement`),s=i;if(W(r)&&!g.context.triggerElements.hasElement(r)){for(let e of g.context.triggerElements.elements())if(N(e,r)){s=e;break}}W(i)&&W(o)&&!g.context.triggerElements.hasElement(i)&&N(i,o)&&(s=o);let c=s!=null&&M(o,s,r),l=g.select(`open`),u=O.current?.()??g.select(`transitionStatus`)===`ending`,d=!l&&u&&x.current,f=!c&&W(s)&&W(o)&&N(o,s)&&d,p=t>0&&!n,m=c&&(l||d)||f,_=!l||c;if(m){j()&&g.setOpen(!0,h(S,e,s));return}p||(n?b.openChangeTimeout.start(n,()=>{_&&j()&&g.setOpen(!0,h(S,e,s))}):_&&j()&&g.setOpen(!0,h(S,e,s)))}function i(t){if(A()){F();return}P();let n=g.select(`domReferenceElement`),r=G(n);b.restTimeout.clear(),b.restTimeoutPending=!1;let i=_.current.floatingContext??d?.();if(!k(t.relatedTarget,g.context.triggerElements)){if(C.current&&i){g.select(`open`)||b.openChangeTimeout.clear();let n=c.current;b.handler=C.current({...i,tree:y,x:t.clientX,y:t.clientY,onClose(){F(),P(),E.current&&!A()&&n===g.select(`domReferenceElement`)&&e(t,!0)}}),r.addEventListener(`mousemove`,b.handler),b.handler(t);return}(b.pointerType!==`touch`||!N(g.select(`floatingElement`),t.relatedTarget))&&e(t)}}function o(e){N(t,e.relatedTarget)||(b.openChangeTimeout.clear(),b.restTimeout.clear(),b.restTimeoutPending=!1)}let l=m?U(t,`mouseout`,o):void 0;return s?R(U(t,`mousemove`,r,{once:!0}),U(t,`mouseenter`,r),U(t,`mouseleave`,i),l):R(U(t,`mouseenter`,r),U(t,`mouseleave`,i),l)},[P,F,_,w,g,n,C,b,u,M,A,a,s,T,c,y,E,d,O,j,m]),J.useMemo(()=>{if(!n)return;function e(e){b.pointerType=e.pointerType}return{onPointerDown:e,onPointerEnter:e,onMouseMove(e){let{nativeEvent:t}=e,n=e.currentTarget,r=g.select(`domReferenceElement`),i=g.select(`open`),o=M(r,n,e.target);if(a&&!V(b.pointerType))return;if(i&&o&&b.handleCloseOptions?.blockPointerEvents){let e=g.select(`floatingElement`);if(e){let t=b.handleCloseOptions?.getScope?.()??n.ownerDocument.body;ct(b,{scopeElement:t,referenceElement:n,floatingElement:e})}}let s=qe(T.current);if(i&&!o||s===0||!o&&b.restTimeoutPending&&e.movementX**2+e.movementY**2<2)return;b.restTimeout.clear();function c(){if(b.restTimeoutPending=!1,A())return;let e=g.select(`open`);!b.blockMouseMove&&(!e||o)&&j()&&g.setOpen(!0,h(S,t,n))}b.pointerType===`touch`?dt.flushSync(()=>{c()}):o&&i?c():(b.restTimeoutPending=!0,b.restTimeout.start(s,c))}}},[n,b,A,M,a,g,T,j])}var mt=.1,ht=mt*mt,Z=.5;function gt(e,t,n,r,i,a){return r>=t!=a>=t&&e<=(i-n)*(t-r)/(a-r)+n}function _t(e,t,n,r,i,a,o,s,c,l){let u=!1;return gt(e,t,n,r,i,a)&&(u=!u),gt(e,t,i,a,o,s)&&(u=!u),gt(e,t,o,s,c,l)&&(u=!u),gt(e,t,c,l,n,r)&&(u=!u),u}function vt(e,t,n){return e>=n.x&&e<=n.x+n.width&&t>=n.y&&t<=n.y+n.height}function yt(e,t,n,r,i,a){return e>=Math.min(n,i)&&e<=Math.max(n,i)&&t>=Math.min(r,a)&&t<=Math.max(r,a)}function bt(e={}){let{blockPointerEvents:t=!1}=e,n=new ue,r=({x:e,y:t,placement:r,elements:i,onClose:a,nodeId:o,tree:s})=>{let c=r?.split(`-`)[0],l=!1,u=null,d=null,f=typeof performance<`u`?performance.now():0;function p(e,t){let n=performance.now(),r=n-f;if(u===null||d===null||r===0)return u=e,d=t,f=n,!1;let i=e-u,a=t-d,o=i*i+a*a,s=r*r*ht;return u=e,d=t,f=n,o<s}function m(){n.clear(),a()}return function(r){n.clear();let a=i.domReference,u=i.floating;if(!a||!u||c==null||e==null||t==null)return;let{clientX:d,clientY:f}=r,h=I(r),g=r.type===`mouseleave`,_=N(u,h),v=N(a,h);if(_&&(l=!0,!g))return;if(v&&(l=!1,!g)){l=!0;return}if(g&&W(r.relatedTarget)&&N(u,r.relatedTarget))return;function y(){return!!(s&&Ne(s.nodesRef.current,o).length>0)}function b(){y()||m()}if(y())return;let x=a.getBoundingClientRect(),S=u.getBoundingClientRect(),C=e>S.right-S.width/2,w=t>S.bottom-S.height/2,T=S.width>x.width,E=S.height>x.height,D=(T?x:S).left,O=(T?x:S).right,k=(E?x:S).top,A=(E?x:S).bottom;if(c===`top`&&t>=x.bottom-1||c===`bottom`&&t<=x.top+1||c===`left`&&e>=x.right-1||c===`right`&&e<=x.left+1){b();return}let j=!1;switch(c){case`top`:j=yt(d,f,D,x.top+1,O,S.bottom-1);break;case`bottom`:j=yt(d,f,D,S.top+1,O,x.bottom-1);break;case`left`:j=yt(d,f,S.right-1,A,x.left+1,k);break;case`right`:j=yt(d,f,x.right-1,A,S.left+1,k)}if(j)return;if(l&&!vt(d,f,x)){b();return}if(!g&&p(d,f)){b();return}let M=!1;switch(c){case`top`:{let n=T?Z/2:Z*4,r=T||C?e+n:e-n,i=T?e-n:C?e+n:e-n,a=t+Z+1,o=C||T?S.bottom-Z:S.top,s=C?T?S.bottom-Z:S.top:S.bottom-Z;M=_t(d,f,r,a,i,a,S.left,o,S.right,s);break}case`bottom`:{let n=T?Z/2:Z*4,r=T||C?e+n:e-n,i=T?e-n:C?e+n:e-n,a=t-Z,o=C||T?S.top+Z:S.bottom,s=C?T?S.top+Z:S.bottom:S.top+Z;M=_t(d,f,r,a,i,a,S.left,o,S.right,s);break}case`left`:{let n=E?Z/2:Z*4,r=E||w?t+n:t-n,i=E?t-n:w?t+n:t-n,a=e+Z+1,o=w||E?S.right-Z:S.left,s=w?E?S.right-Z:S.left:S.right-Z;M=_t(d,f,o,S.top,s,S.bottom,a,r,a,i);break}case`right`:{let n=E?Z/2:Z*4,r=E||w?t+n:t-n,i=E?t-n:w?t+n:t-n,a=e-Z,o=w||E?S.left+Z:S.right,s=w?E?S.left+Z:S.right:S.left+Z;M=_t(d,f,a,r,a,i,o,S.top,s,S.bottom);break}}M?l||n.start(40,b):b()}};return r.__options={...e,blockPointerEvents:t},r}var xt=Oe(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),St=Oe(`sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]);function Ct(){let{i18n:e}=s(),{data:t}=l(We),[n]=a(),r=n.get(`lang`)??e.language,i=t.i18n.fallback_language,o=e=>e?.[r]??e?.[i];return{title:o(t.branding.title),subtitle:o(t.branding.subtitle),loginMethodDescription:o(t.branding.login_method_description),iconUrl:t.branding.icon_url??`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2064%2064'%20role='img'%20aria-labelledby='issuary-app-icon-title%20issuary-app-icon-description'%20data-row-starts='14.666667%2028%2041.333333'%20data-row-height='8'%20data-row-bounds='14.666667%2049.333333'%3e%3ctitle%20id='issuary-app-icon-title'%3eIssuary%20app%20icon%3c/title%3e%3cdesc%20id='issuary-app-icon-description'%3eThree%20connected%20authorization%20bars%20shaped%20around%20a%20bold%20central%20keyhole%20on%20a%20Tinyrack%20tile%3c/desc%3e%3cpath%20fill='%230a0a0a'%20d='M16%200h32a16%2016%200%200%201%2016%2016v32a16%2016%200%200%201-16%2016H16A16%2016%200%200%201%200%2048V16A16%2016%200%200%201%2016%200Z'/%3e%3cpath%20fill='%23fafafa'%20d='M17%2014.667h30a5%205%200%200%201%205%205v0a5%205%200%200%201-5%205H17a5%205%200%200%201-5-5v0a5%205%200%200%201%205-5Zm0%2027.333h30a5%205%200%200%201%205%205v0a5%205%200%200%201-5%205H17a5%205%200%200%201-5-5v0a5%205%200%200%201%205-5Z'/%3e%3cpath%20fill='%2338bdf8'%20d='M17%2028h30a5%205%200%200%201%205%205v0a5%205%200%200%201-5%205H17a5%205%200%200%201-5-5v0a5%205%200%200%201%205-5Z'/%3e%3cpath%20fill='%230a0a0a'%20d='M27%2024.667h10v4.5l-1.5%201.5h-7l-1.5-1.5v-4.5Zm5-1.5a7.5%207.5%200%200%201%207.5%207.5c0%202.554-1.275%204.81-3.223%206.167L37.75%2052h-11.5l1.473-15.166A7.5%207.5%200%200%201%2024.5%2030.667a7.5%207.5%200%200%201%207.5-7.5Z'/%3e%3c/svg%3e`,logoUrl:t.branding.logo_url??void 0}}var wt=J.createContext(void 0);function Q(e){let t=J.useContext(wt);if(t===void 0&&!e)throw Error(b(72));return t}var Tt={...Ie,disabled:e=>e.disabled,instantType:e=>e.instantType,isInstantPhase:e=>e.isInstantPhase,trackCursorAxis:e=>e.trackCursorAxis,disableHoverablePopup:e=>e.disableHoverablePopup,lastOpenChangeReason:e=>e.openChangeReason,closeOnClick:e=>e.closeOnClick,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin},Et=class extends be{constructor(e,t,n){let r=new z;super(Ot(e,r,t,n),kt(r),Tt)}setOpen=(e,t)=>{Te(this,e,t,{extraState:{openChangeReason:t.reason}})};cancelPendingOpen(e){this.state.floatingRootContext.dispatchOpenChange(!1,h(fe,e))}};function Dt(){let e=new z,t=new He(Object.freeze(Ot(void 0,e)),Object.freeze(kt(e)),Tt);return Object.assign(t,{setOpen:w,cancelPendingOpen:w})}function Ot(e,t,n,r=!1){let i={...ze(),disabled:!1,instantType:void 0,isInstantPhase:!1,trackCursorAxis:`none`,disableHoverablePopup:!1,openChangeReason:null,closeOnClick:!0,closeDelay:0,adaptiveOrigin:void 0,...e};return i.floatingRootContext=Ve(t,n,r),i}function kt(e){return{popupRef:J.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerElements:e}}var At=xe(function(e){let{disabled:t=!1,defaultOpen:n=!1,open:r,disableHoverablePopup:i=!1,trackCursorAxis:a=`none`,actionsRef:o,onOpenChange:s,onOpenChangeComplete:c,handle:l,triggerId:u,defaultTriggerId:d=null,children:f}=e,p=Ce((e,t)=>new Et({open:n,openProp:r,activeTriggerId:d,triggerIdProp:u},e,t));p.useControlledProp(`openProp`,r),p.useControlledProp(`triggerIdProp`,u),p.useContextCallback(`onOpenChange`,s),p.useContextCallback(`onOpenChangeComplete`,c);let g=p.useState(`open`),_=!t&&g,v=p.useState(`activeTriggerId`),y=p.useState(`mounted`),b=p.useState(`payload`);p.useSyncedValues({trackCursorAxis:a,disableHoverablePopup:i,disabled:t}),Ae(p,{closeOnActiveTriggerUnmount:!0});let{forceUnmount:x,transitionStatus:S}=je(_,p),C=p.useState(`isInstantPhase`),w=p.useState(`instantType`),T=p.useState(`lastOpenChangeReason`),E=J.useRef(null);m(()=>{g&&t&&p.setOpen(!1,h(ae))},[g,t,p]),m(()=>{S===`ending`&&T===`none`||S!==`ending`&&C?(w!==`delay`&&(E.current=w),p.set(`instantType`,`delay`)):E.current!==null&&(p.set(`instantType`,E.current),E.current=null)},[S,C,T,w,p]),m(()=>{_&&(v??p.set(`payload`,void 0))},[p,v,_]),J.useImperativeHandle(o,()=>({unmount:x,close:()=>p.setOpen(!1,h(D))}),[x,p]);let O=_||y||!t&&a!==`none`;return(0,X.jsxs)(wt.Provider,{value:p,children:[l&&(0,X.jsx)(we,{handle:l,store:p}),O&&(0,X.jsx)(jt,{store:p,disabled:t,trackCursorAxis:a}),typeof f==`function`?f({payload:b}):f]})});function jt({store:e,disabled:t,trackCursorAxis:n}){let r=e.useState(`floatingRootContext`),i=Me(r,{enabled:!t,referencePress:()=>e.select(`closeOnClick`)}),a=nt(r,{enabled:!t&&n!==`none`,axis:n===`none`?void 0:n}),o=J.useMemo(()=>oe(a.reference,i.reference),[a.reference,i.reference]);return Ee(e,{activeTriggerProps:o,inactiveTriggerProps:o,popupProps:i.floating??C}),null}var Mt=J.createContext(void 0);function Nt(){return J.useContext(Mt)}var Pt=`data-base-ui-tooltip-trigger`;function Ft(e){if(`composedPath`in e){let t=e.composedPath();for(let e=0;e<t.length;e+=1){let n=t[e];if(W(n))return n}}let t=e.target;return W(t)?t:null}function It(e){let t=e;for(;t;){let e=t.closest(`[${Pt}]`);if(e)return e;let n=t.getRootNode();t=`host`in n&&W(n.host)?n.host:null}return null}var Lt=A(function(e,t){let{render:n,className:r,style:i,handle:a,payload:o,disabled:s,delay:c,closeOnClick:l=!0,closeDelay:u,id:d,...f}=e,p=Q(!0),m=Fe(a)??p;if(!m)throw Error(b(82));let g=M(d),_=m.useState(`isTriggerActive`,g),v=m.useState(`isOpenedByTrigger`,g),y=m.useState(`floatingRootContext`),x=J.useRef(null),C=c??600,w=u??0,{registerTrigger:E,isMountedByThisTrigger:D}=Pe(g,x,m,{payload:o,closeOnClick:l,closeDelay:w}),O=Nt(),{delayRef:k,isInstantPhase:A,hasProvider:j}=$e(y,{open:v}),P=lt(y);m.useSyncedValue(`isInstantPhase`,A);let F=m.useState(`disabled`),I=s??F,ee=K(I),te=m.useState(`trackCursorAxis`),ne=m.useState(`disableHoverablePopup`),L=J.useRef(!1),R=pe(),z=J.useRef(void 0);function B(){return j?Y(k.current,`open`)===0?0:c??O??600:C}function re(e){let t=x.current;if(!t||!e)return!1;let n=It(e);return n!==null&&n!==t&&N(t,n)}function ie(e){let t=re(e);return L.current=t,t&&(P.openChangeTimeout.clear(),P.restTimeout.clear(),P.restTimeoutPending=!1,R.clear()),t}let ae=pt(y,{enabled:!I,mouseOnly:!0,move:!1,handleClose:!ne&&te!==`both`?bt():null,restMs:B,delay(){return u==null&&j?{close:Y(k.current,`close`)}:{close:w}},triggerElementRef:x,isActiveTrigger:_,isClosing:()=>m.select(`transitionStatus`)===`ending`,shouldOpen(){return!L.current}}),oe=it(y,{enabled:!I}).reference,H=e=>{let t=L.current,n=Ft(e),r=ie(n),i=x.current,a=i&&n&&N(i,n);if(r&&m.select(`open`)&&m.select(`lastOpenChangeReason`)===`trigger-hover`){m.setOpen(!1,h(S,e));return}if(t&&!r&&a&&!ee.current&&!m.select(`open`)&&i&&V(z.current)){let t=()=>{!L.current&&!ee.current&&!m.select(`open`)&&m.setOpen(!0,h(S,e,i))},n=B();n===0?(R.clear(),t()):R.start(n,t)}},se=m.useState(`triggerProps`,D);return T(`button`,e,{state:{open:v},ref:[t,E,x],props:[ae,oe,D||te!==`none`?se:void 0,{onMouseOver(e){H(e.nativeEvent)},onFocus(e){re(Ft(e.nativeEvent))&&e.preventBaseUIHandler()},onMouseLeave(){L.current=!1,R.clear(),z.current=void 0},onPointerEnter(e){z.current=e.pointerType},onPointerDown(e){z.current=e.pointerType,m.set(`closeOnClick`,l),l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},onClick(e){l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},id:g,"data-trigger-disabled":I?``:void 0,[Pt]:I?void 0:``},f],stateAttributesMapping:me})}),Rt=J.createContext(void 0);function zt(){let e=J.useContext(Rt);if(e===void 0)throw Error(b(70));return e}var Bt=J.forwardRef(function(e,t){let{keepMounted:n=!1,...i}=e;return Q().useState(`mounted`)||n?(0,X.jsx)(Rt.Provider,{value:n,children:(0,X.jsx)(r,{ref:t,...i})}):null}),Vt=J.createContext(void 0);function Ht(){let e=J.useContext(Vt);if(e===void 0)throw Error(b(71));return e}var Ut=J.forwardRef(function(e,t){let{render:n,className:r,anchor:i,positionMethod:a=`absolute`,side:o=`top`,align:s=`center`,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d=5,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m=!1,collisionAvoidance:h=ie,style:g,..._}=e,v=Q(),y=zt(),b=v.useState(`open`),x=v.useState(`mounted`),S=v.useState(`trackCursorAxis`),C=v.useState(`disableHoverablePopup`),w=v.useState(`floatingRootContext`),T=v.useState(`instantType`),E=v.useState(`transitionStatus`),D=v.useState(`adaptiveOrigin`),O=L({anchor:i,positionMethod:a,floatingRootContext:w,mounted:x,side:o,sideOffset:c,align:s,alignOffset:l,collisionBoundary:u,collisionPadding:d,sticky:p,arrowPadding:f,disableAnchorTracking:m,keepMounted:y,collisionAvoidance:h,adaptiveOrigin:D}),k=J.useMemo(()=>({open:b,side:O.side,align:O.align,anchorHidden:O.anchorHidden,instant:S===`none`?T:`tracking-cursor`}),[b,O.side,O.align,O.anchorHidden,S,T]),A=he(e,k,{styles:O.positionerStyles,transitionStatus:E,props:_,refs:[t,v.useStateSetter(`positionerElement`)],hidden:!x,inert:!b||S===`both`||C});return(0,X.jsx)(Vt.Provider,{value:O,children:A})}),Wt=J.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=Q(),{side:s,align:c}=Ht(),l=o.useState(`open`),u=o.useState(`instantType`),d=o.useState(`transitionStatus`),f=o.useState(`popupProps`),p=o.useState(`floatingRootContext`),m=o.useState(`disabled`),h=o.useState(`closeDelay`);ne({open:l,ref:o.context.popupRef,onComplete(){l&&o.context.onOpenChangeComplete?.(!0)}}),ut(p,{enabled:!m,closeDelay:h});let g=o.useStateSetter(`popupElement`);return T(`div`,e,{state:{open:l,side:s,align:c,instant:u,transitionStatus:d},ref:[t,o.context.popupRef,g],props:[ke,f,le(d),a],stateAttributesMapping:ee})}),Gt=J.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=Q(),{arrowRef:s,side:c,align:l,arrowUncentered:u,arrowStyles:d}=Ht(),f={open:o.useState(`open`),side:c,align:l,uncentered:u,instant:o.useState(`instantType`)};return T(`div`,e,{state:f,ref:[t,s],props:[{style:d,"aria-hidden":!0},a],stateAttributesMapping:re})}),Kt=function(e){let{delay:t,closeDelay:n,timeout:r=400}=e,i=J.useMemo(()=>({open:t,close:n}),[t,n]);return(0,X.jsx)(Mt.Provider,{value:t,children:(0,X.jsx)(Qe,{delay:i,timeoutMs:r,children:e.children})})};function qt(e){let t=se(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=ce(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r;return(E(n)!==a||E(r)!==o)&&(n=a,r=o),{width:n,height:r}}function Jt(e){let{popupElement:t,positionerElement:n,content:r,mounted:i,onMeasureLayout:a,onMeasureLayoutComplete:o,side:s,direction:c}=e,l=de(t,!0),u=te(),d=J.useRef(null),f=J.useRef(!0),p=J.useRef(w),h=q(a),g=q(o),_=J.useMemo(()=>Yt(s,c),[s,c]);m(()=>{if(!i){p.current=w,f.current=!0,d.current=null;return}if(!t||!n)return;p.current=Zt(t,_),Qt(t,`auto`);let e=Xt(t,`position`,`static`),r=Xt(t,`transform`,`none`),a=Xt(t,`scale`,`1`),o=Zt(n,{"--available-width":`max-content`,"--available-height":`max-content`});function s(){e(),r(),o()}function c(){s(),a()}if(h?.(),f.current||d.current===null){$t(n,`max-content`);let e=qt(t);return d.current=e,$t(n,e),c(),g?.(null,e),f.current=!1,()=>{p.current(),p.current=w}}$t(n,`max-content`);let m=d.current,v=qt(t);d.current=v,Qt(t,m),c(),g?.(m,v),$t(n,v);let y=new AbortController;return u.request(()=>{Qt(t,v),l(()=>{t.style.setProperty(`--popup-width`,`auto`),t.style.setProperty(`--popup-height`,`auto`)},y.signal)}),()=>{y.abort(),u.cancel(),p.current(),p.current=w}},[r,t,n,l,u,i,h,g,_])}function Yt(e,t){let n=e===`top`,r=e===`left`||e===(t===`rtl`?`inline-end`:`inline-start`);return!n&&!r?C:{position:`absolute`,[n?`bottom`:`top`]:`0`,[r?`right`:`left`]:`0`}}function Xt(e,t,n){let r=e.style.getPropertyValue(t);return e.style.setProperty(t,n),()=>{e.style.setProperty(t,r)}}function Zt(e,t){let n=[];for(let[r,i]of Object.entries(t))n.push(Xt(e,r,i));return n.length?()=>{n.forEach(e=>e())}:w}function Qt(e,t){let n=t===`auto`?`auto`:`${t.width}px`,r=t===`auto`?`auto`:`${t.height}px`;e.style.setProperty(`--popup-width`,n),e.style.setProperty(`--popup-height`,r)}function $t(e,t){let n=t===`max-content`?`max-content`:`${t.width}px`,r=t===`max-content`?`max-content`:`${t.height}px`;e.style.setProperty(`--positioner-width`,n),e.style.setProperty(`--positioner-height`,r)}var en={name:`adaptiveOrigin`,async fn(e){let{x:t,y:n,rects:{floating:r},elements:{floating:i},platform:a,strategy:o,placement:s}=e,c=B(i),l=c.getComputedStyle(i);if(l.transitionDuration===`0s`||l.transitionDuration===``)return{x:t,y:n,data:H};let u=await a.getOffsetParent?.(i),d={width:0,height:0};if(o===`fixed`&&c?.visualViewport)d={width:c.visualViewport.width,height:c.visualViewport.height};else if(u===c){let e=G(i);d={width:e.documentElement.clientWidth,height:e.documentElement.clientHeight}}else await a.isElement?.(u)&&(d=await a.getDimensions(u));let f=g(s),p=t,m=n;f===`left`&&(p=d.width-(t+r.width)),f===`top`&&(m=d.height-(n+r.height));let h=f===`left`?`right`:H.sideX,_=f===`top`?`bottom`:H.sideY;return{x:p,y:m,data:{sideX:h,sideY:_}}}},tn={activationDirection:e=>e?{"data-activation-direction":e}:null};function nn(e){let{store:t,side:n,children:r}=e,i=_e(),a=t.useState(`activeTriggerElement`),o=t.useState(`activeTriggerId`),s=t.useState(`open`),c=t.useState(`payload`),l=t.useState(`mounted`),u=t.useState(`popupElement`),d=t.useState(`positionerElement`),f=De(s?a:null),p=sn(o,c),h=J.useRef(null),[g,_]=J.useState(null),[v,y]=J.useState(null),b=J.useRef(null),x=J.useRef(null),S=de(b,!0),C=te(),w=J.useRef(null),[T,E]=J.useState(null),[D,O]=J.useState(!1);m(()=>(t.set(`adaptiveOrigin`,en),()=>{t.set(`adaptiveOrigin`,void 0)}),[t]);let k=q(()=>{b.current?.style.setProperty(`animation`,`none`),b.current?.style.setProperty(`transition`,`none`),x.current?.style.setProperty(`display`,`none`)}),A=q(e=>{b.current?.style.removeProperty(`animation`),b.current?.style.removeProperty(`transition`),x.current?.style.removeProperty(`display`),e&&E(e)}),j=q(()=>{w.current?.abort();let e=new AbortController;w.current=e,S(()=>{_(null),E(null),h.current=null},e.signal)}),M=J.useRef(null);m(()=>{(!s||!l)&&(M.current=null)},[s,l]),m(()=>{if(a&&f&&a!==f&&M.current!==a&&h.current){_(h.current),O(!0);let e=on(f,a);y(e),M.current=a}},[a,f]),m(()=>{g!=null&&(w.current?.abort(),O(!0),C.request(()=>{dt.flushSync(()=>{O(!1)}),j()}))},[p,g,j,C]),m(()=>{let e=b.current;if(!e)return;let t=G(e).createElement(`div`);for(let n of Array.from(e.childNodes))t.appendChild(n.cloneNode(!0));h.current=t});let N=g!=null,P;P=N?(0,X.jsxs)(J.Fragment,{children:[(0,X.jsx)(`div`,{"data-previous":!0,inert:ve(!0),ref:x,style:{...T?{"--popup-width":`${T.width}px`,"--popup-height":`${T.height}px`}:null,position:`absolute`},"data-ending-style":D?void 0:``},`previous`),(0,X.jsx)(`div`,{"data-current":!0,ref:b,"data-starting-style":D?``:void 0,children:r},p)]}):(0,X.jsx)(`div`,{"data-current":!0,ref:b,children:r},p),m(()=>{let e=x.current;!e||!g||e.replaceChildren(...Array.from(g.childNodes))},[g]),Jt({popupElement:u,positionerElement:d,mounted:l,content:c,onMeasureLayout:k,onMeasureLayoutComplete:A,side:n,direction:i});let F={activationDirection:rn(v),transitioning:N};return{children:P,state:F}}function rn(e){if(e)return`${an(e.horizontal,5,`right`,`left`)} ${an(e.vertical,5,`down`,`up`)}`}function an(e,t,n,r){return e>t?n:e<-t?r:``}function on(e,t){let n=e.getBoundingClientRect(),r=t.getBoundingClientRect(),i={x:n.left+n.width/2,y:n.top+n.height/2},a={x:r.left+r.width/2,y:r.top+r.height/2};return{horizontal:a.x-i.x,vertical:a.y-i.y}}function sn(e,t){let[n,r]=J.useState(0),i=J.useRef(e),a=J.useRef(t),o=J.useRef(!1);return m(()=>{let n=i.current,s=a.current,c=e!==n,l=t!==s;c?(r(e=>e+1),o.current=!l):o.current&&l&&(r(e=>e+1),o.current=!1),i.current=e,a.current=t},[e,t]),`${e??`current`}-${n}`}var cn=J.forwardRef(function(e,t){let{render:n,className:r,style:i,children:a,...o}=e,s=Q(),c=Ht(),l=s.useState(`instantType`),{children:u,state:d}=nn({store:s,side:c.side,children:a}),f={activationDirection:d.activationDirection,transitioning:d.transitioning,instant:l};return T(`div`,e,{state:f,ref:t,props:[o,{children:u}],stateAttributesMapping:tn})}),ln=class extends Le{constructor(){super(Dt(),`Tooltip`)}open(e){this.openByTrigger(e)}close(){this.closePopup()}get isOpen(){return this.attachedStore?.select(`open`)??!1}};function un(){return new ln}var dn=d(Gt,`tr-layer-arrow tr-tooltip-arrow`);function fn(){return un()}var pn=(0,J.createContext)(null),mn=pn.Provider;function hn(){return(0,J.useContext)(pn)}function gn({className:e,id:t,role:n,...r}){let i=hn();if(i===null)throw Error(`TRTooltip.Popup must be used within TRTooltip.Root.`);let a=t??i.fallbackId,{setPopupId:o}=i;return(0,J.useEffect)(()=>(o(a),()=>o(null)),[a,o]),(0,X.jsx)(Wt,{...r,className:c(`tr-layer tr-tooltip-content`,e),id:a,role:n??`tooltip`})}var _n=d(Bt),vn=d(Ut,`tr-layer-positioner tr-tooltip-positioner`),yn=d(Kt);function bn(e){let t=(0,J.useId)(),[n,r]=(0,J.useState)(null);return(0,X.jsx)(mn,{value:(0,J.useMemo)(()=>({descriptionId:n??t,fallbackId:t,setPopupId:r}),[t,n]),children:(0,X.jsx)(At,{...e})})}function xn({"aria-describedby":e,className:t,...n}){let r=[e,hn()?.descriptionId].filter(Boolean).join(` `);return(0,X.jsx)(Lt,{...n,"aria-describedby":r,className:c(`tr-tooltip`,t)})}var $={Root:bn,Trigger:xn,Portal:_n,Positioner:vn,Popup:gn,Arrow:dn,Provider:yn,Viewport:d(cn,`tr-layer-viewport tr-tooltip-viewport`),createHandle:fn};function Sn(){let{t:e}=s(),{toasts:t}=i.useToastManager();return(0,X.jsx)(i.Portal,{children:(0,X.jsx)(i.Viewport,{position:`block-start-center`,children:t.map(t=>(0,X.jsxs)(i.Root,{toast:t,children:[(0,X.jsxs)(i.Content,{children:[(0,X.jsx)(i.Title,{}),(0,X.jsx)(i.Description,{})]}),(0,X.jsx)(i.Close,{"aria-label":e(`common.dismiss`),children:(0,X.jsx)(Re,{"aria-hidden":!0,className:`size-tinyrack-lg`})})]},t.id))})})}function Cn(){return(0,X.jsx)(`footer`,{className:`flex justify-center px-tinyrack-lg pb-tinyrack-lg empty:hidden`,children:(0,X.jsx)(Ge,{})})}function wn({"aria-labelledby":e,children:t,className:n,loading:r,...i}){return(0,X.jsx)(Be,{...i,...(!r||i.loadingLabel===void 0)&&e?{"aria-labelledby":e}:{},...r===void 0?{}:{loading:r},className:c(`tr-icon-btn`,n),children:r?null:t})}function Tn({colorScheme:e,onToggle:t,uiSize:n=`lg`}){let{t:r}=s(),i=r(e===`dark`?`common.theme.dark`:`common.theme.light`),a=e===`dark`?St:xt;return(0,X.jsx)(`div`,{children:(0,X.jsxs)($.Root,{children:[(0,X.jsx)($.Trigger,{"data-testid":`theme-toggle`,render:(0,X.jsx)(wn,{appearance:`ghost`,"aria-label":i,onClick:t,uiSize:n,children:(0,X.jsx)(a,{})})}),(0,X.jsx)($.Portal,{children:(0,X.jsxs)($.Positioner,{children:[(0,X.jsx)($.Popup,{children:i}),(0,X.jsx)($.Arrow,{})]})})]})})}function En({brand:e=!1,actions:t}){let{colorScheme:n,toggleColorScheme:r}=Ue(),{title:i,iconUrl:a}=Ct();return(0,X.jsxs)(`div`,{className:`flex items-center gap-tinyrack-sm px-tinyrack-lg py-tinyrack-sm`,children:[e&&(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-tinyrack-sm`,children:[a&&(0,X.jsx)(`img`,{alt:``,className:`size-tinyrack-xl object-contain`,src:a}),i&&(0,X.jsx)(u,{as:`h1`,truncate:!0,variant:`headingSm`,weight:`heading`,children:i})]}),(0,X.jsxs)(`div`,{className:`ms-auto flex items-center gap-tinyrack-sm`,children:[t,(0,X.jsx)(Tn,{colorScheme:n,onToggle:r})]})]})}export{$ as a,Ct as c,ut as d,it as f,Sn as i,bt as l,wn as n,tn as o,Cn as r,nn as s,En as t,pt as u};
|
|
1
|
+
import{$ as e,J as t}from"./components-C1SipCbb.js";import{t as n}from"./react-dom-BxmrrPTH.js";import{n as r,t as i,u as a}from"./toast-_zV1SGz6.js";import{t as o}from"./jsx-runtime-BFZ_fnNJ.js";import{a as s,d as c}from"./api-0SzZx6X7.js";import{r as l,t as u}from"./text-CGN4ZtUZ.js";import{Bn as d,Bt as f,Cn as p,Dn as m,E as h,Et as g,Fn as _,G as v,Ht as y,In as b,It as x,K as S,Mn as C,Nn as w,On as T,Ot as E,P as D,Qt as O,Rt as k,Sn as A,T as j,Tn as M,Ut as N,V as P,Vt as F,Wt as I,a as ee,an as te,at as ne,c as L,cn as R,f as z,fn as B,i as re,it as ie,j as ae,kn as oe,kt as V,l as H,ln as se,mn as ce,n as le,nn as ue,on as U,ot as de,pn as W,q as fe,rn as pe,s as me,sn as G,t as he,tn as ge,u as _e,ut as ve,v as ye,vn as be,x as K,xn as xe,y as Se,yn as q}from"./usePositioner-DcBnB2-O.js";import{$ as Ce,G as we,K as Te,Q as Ee,R as De,V as Oe,W as ke,X as Ae,Z as je,at as Me,ct as Ne,tt as Pe}from"./select--ltVnlVl.js";import{a as Fe,c as Ie,l as Le,n as Re,o as ze,r as Be,s as Ve,t as He}from"./NullStore-BxU9yW8l.js";import{s as Ue}from"./i18n-BY3irWek.js";import{n as We,t as Ge}from"./language-selector-CGXk9vW_.js";var J=e(t(),1);function Ke(e,t){return t!=null&&!V(t)?0:typeof e==`function`?e():e}function Y(e,t,n){let r=Ke(e,n);return typeof r==`number`?r:r?.[t]}function qe(e){return typeof e==`function`?e():e}function Je(e,t){return t||e===`click`||e===`mousedown`}function Ye(e){return e?.includes(`mouse`)&&e!==`mousedown`}var X=o(),Xe=J.createContext({hasProvider:!1,timeoutMs:0,delayRef:{current:0},initialDelayRef:{current:0},timeout:new ue,currentIdRef:{current:null},currentContextRef:{current:null}});function Ze(e,t){e.current=t.current}function Qe(e){let{children:t,delay:n,timeoutMs:r=0}=e,i=J.useRef(n),a=J.useRef(n),o=J.useRef(null),s=J.useRef(null),c=pe();return m(()=>{if(a.current=n,!o.current){i.current=n;return}i.current={open:Y(i.current,`open`),close:Y(n,`close`)}},[n,o,i,a]),(0,X.jsx)(Xe.Provider,{value:J.useMemo(()=>({hasProvider:!0,delayRef:i,initialDelayRef:a,currentIdRef:o,timeoutMs:r,currentContextRef:s,timeout:c}),[r,c]),children:t})}function $e(e,t={open:!1}){let{open:n}=t,r=`rootStore`in e?e.rootStore:e,i=r.useState(`floatingId`),{currentIdRef:a,delayRef:o,timeoutMs:s,initialDelayRef:c,currentContextRef:l,hasProvider:u,timeout:d}=J.useContext(Xe),[f,p]=J.useState(!1),g=J.useRef(n);return m(()=>{g.current=n},[n]),m(()=>{function e(){l.current?.setIsInstantPhase(!1),a.current=null,l.current=null,o.current=c.current,d.clear()}if(a.current&&!n&&a.current===i){if(p(!1),s){let t=i;return d.start(s,()=>{r.select(`open`)||a.current&&a.current!==t||e()}),()=>{(g.current||a.current!==t)&&d.clear()}}e()}},[n,i,a,o,s,c,l,d,r]),m(()=>{if(!n)return;let e=l.current,t=a.current;d.clear(),l.current={onOpenChange:r.setOpen,setIsInstantPhase:p},a.current=i,o.current={open:0,close:Y(c.current,`close`)},t!==null&&t!==i?(p(!0),e?.setIsInstantPhase(!0),e?.onOpenChange(!1,h(P))):(p(!1),e?.setIsInstantPhase(!1))},[n,i,r,a,o,c,l,d]),m(()=>()=>{if(a.current===i){if(l.current=null,!g.current)return;a.current=null,Ze(o,c),d.clear()}},[l,a,o,i,c,d]),J.useMemo(()=>({hasProvider:u,delayRef:o,isInstantPhase:f}),[u,o,f])}function et(e,t){let n=null,r=null,i=!1;return{contextElement:e||void 0,getBoundingClientRect(){let a=e?.getBoundingClientRect()||{width:0,height:0,x:0,y:0},o=t.axis===`x`||t.axis===`both`,s=t.axis===`y`||t.axis===`both`,c=[`mouseenter`,`mousemove`].includes(t.dataRef.current.openEvent?.type||``)&&t.pointerType!==`touch`,l=a.width,u=a.height,d=a.x,f=a.y;return n==null&&t.x&&o&&(n=a.x-t.x),r==null&&t.y&&s&&(r=a.y-t.y),d-=n||0,f-=r||0,l=0,u=0,!i||c?(l=t.axis===`y`?a.width:0,u=t.axis===`x`?a.height:0,d=o&&t.x!=null?t.x:d,f=s&&t.y!=null?t.y:f):i&&!c&&(u=t.axis===`x`?a.height:u,l=t.axis===`y`?a.width:l),i=!0,{width:l,height:u,x:d,y:f,top:f,right:d+l,bottom:f+u,left:d}}}}function tt(e){return e!=null&&e.clientX!=null}function nt(e,t={}){let{enabled:n=!0,axis:r=`both`}=t,i=`rootStore`in e?e.rootStore:e,a=i.useState(`open`),o=i.useState(`floatingElement`),s=i.useState(`domReferenceElement`),c=i.context.dataRef,l=J.useRef(!1),u=J.useRef(null),[d,f]=J.useState(),[p,m]=J.useState([]),h=q(e=>{i.set(`positionReference`,e)}),g=q((e,t,n)=>{l.current||c.current.openEvent&&!tt(c.current.openEvent)||i.set(`positionReference`,et(n??s,{x:e,y:t,axis:r,dataRef:c,pointerType:d}))}),_=q(e=>{a?u.current||(g(e.clientX,e.clientY,e.currentTarget),m([])):g(e.clientX,e.clientY,e.currentTarget)}),v=V(d)?o:a;J.useEffect(()=>{if(!n){h(s);return}if(!v)return;function e(){u.current?.(),u.current=null}let t=B(o);function r(t){let n=I(t);N(o,n)?e():g(t.clientX,t.clientY)}return!c.current.openEvent||tt(c.current.openEvent)?u.current=U(t,`mousemove`,r):h(s),e},[v,n,o,c,s,i,g,h,p]),J.useEffect(()=>()=>{i.set(`positionReference`,null)},[i]),J.useEffect(()=>{n&&!o&&(l.current=!1)},[n,o]),J.useEffect(()=>{!n&&a&&(l.current=!0)},[n,a]);let y=J.useMemo(()=>{function e(e){f(e.pointerType)}return{onPointerDown:e,onPointerEnter:e,onMouseMove:_,onMouseEnter:_}},[_]);return J.useMemo(()=>n?{reference:y,trigger:y}:{},[n,y])}var rt=ge&&O;function it(e,t={}){let{enabled:n=!0,delay:r}=t,i=`rootStore`in e?e.rootStore:e,{events:a,dataRef:o}=i.context,s=J.useRef(!1),c=J.useRef(null),l=J.useRef(!0),u=pe();J.useEffect(()=>{let e=i.select(`domReferenceElement`);if(!n)return;let t=B(e);function r(){let e=i.select(`domReferenceElement`);!i.select(`open`)&&ce(e)&&e===y(G(e))&&(s.current=!0)}function a(){l.current=!0}function o(){l.current=!1}return R(U(t,`blur`,r),rt&&U(t,`keydown`,a,!0),rt&&U(t,`pointerdown`,o,!0))},[i,n]),J.useEffect(()=>{if(!n)return;function e(e){if(e.reason===`trigger-press`||e.reason===`escape-key`){let e=i.select(`domReferenceElement`);W(e)&&(c.current=e,s.current=!0)}}return a.on(`openchange`,e),()=>{a.off(`openchange`,e)}},[a,n,i]);let d=J.useMemo(()=>{function e(){s.current=!1,c.current=null}return{onMouseLeave(){e()},onFocus(t){let n=t.currentTarget;if(s.current){if(c.current===n)return;e()}let a=I(t.nativeEvent);if(W(a)){if(rt&&!t.relatedTarget){if(!l.current&&!f(a))return}else if(!F(a))return}let o=k(t.relatedTarget,i.context.triggerElements),{nativeEvent:d,currentTarget:p}=t,m=typeof r==`function`?r():r;if(i.select(`open`)&&o||m===0||m===void 0){i.setOpen(!0,h(v,d,p));return}u.start(m,()=>{s.current||i.setOpen(!0,h(v,d,p))})},onBlur(t){e();let n=t.relatedTarget,r=t.nativeEvent,a=W(n)&&n.hasAttribute(j(`focus-guard`))&&n.getAttribute(`data-type`)===`outside`;u.start(0,()=>{let e=i.select(`domReferenceElement`),t=y(G(e));!n&&t===e||N(o.current.floatingContext?.refs.floating.current,t)||N(e,t)||a||k(n??t,i.context.triggerElements)||i.setOpen(!1,h(v,r))})}}},[o,r,i,u]);return J.useMemo(()=>n?{reference:d,trigger:d}:{},[n,d])}var at=class e{constructor(){this.pointerType=void 0,this.interactedInside=!1,this.handler=void 0,this.blockMouseMove=!0,this.performedPointerEventsMutation=!1,this.pointerEventsScopeElement=null,this.pointerEventsReferenceElement=null,this.pointerEventsFloatingElement=null,this.restTimeoutPending=!1,this.openChangeTimeout=new ue,this.restTimeout=new ue,this.handleCloseOptions=void 0}static create(){return new e}dispose=()=>{this.openChangeTimeout.clear(),this.restTimeout.clear()};disposeEffect=()=>this.dispose},ot=new WeakMap;function st(e){if(!e.performedPointerEventsMutation)return;let t=e.pointerEventsScopeElement;t&&ot.get(t)===e&&(e.pointerEventsScopeElement?.style.removeProperty(`pointer-events`),e.pointerEventsReferenceElement?.style.removeProperty(`pointer-events`),e.pointerEventsFloatingElement?.style.removeProperty(`pointer-events`),ot.delete(t)),e.performedPointerEventsMutation=!1,e.pointerEventsScopeElement=null,e.pointerEventsReferenceElement=null,e.pointerEventsFloatingElement=null}function ct(e,t){let{scopeElement:n,referenceElement:r,floatingElement:i}=t,a=ot.get(n);a&&a!==e&&st(a),st(e),e.performedPointerEventsMutation=!0,e.pointerEventsScopeElement=n,e.pointerEventsReferenceElement=r,e.pointerEventsFloatingElement=i,ot.set(n,e),n.style.pointerEvents=`none`,r.style.pointerEvents=`auto`,i.style.pointerEvents=`auto`}function lt(e){let t=e.context.dataRef.current,n=_(()=>t.hoverInteractionState??at.create()).current;return t.hoverInteractionState||=n,p(t.hoverInteractionState.disposeEffect),t.hoverInteractionState}function ut(e,t={}){let{enabled:n=!0,closeDelay:r=0,nodeId:i}=t,a=`rootStore`in e?e.rootStore:e,o=a.useState(`open`),s=a.useState(`floatingElement`),c=a.useState(`domReferenceElement`),{dataRef:l}=a.context,u=Se(),d=ye(),f=lt(a),p=pe(),g=q(()=>Je(l.current.openEvent?.type,f.interactedInside)),_=q(()=>Ye(l.current.openEvent?.type)),v=q(()=>{st(f)});m(()=>{o||(f.pointerType=void 0,f.restTimeoutPending=!1,f.interactedInside=!1,v())},[o,f,v]),J.useEffect(()=>v,[v]),m(()=>{if(n&&o&&f.handleCloseOptions?.blockPointerEvents&&_()&&W(c)&&s){let e=c,t=s,n=G(s),r=u?.nodesRef.current.find(e=>e.id===d)?.context?.elements.floating;r&&(r.style.pointerEvents=``);let i=f.pointerEventsScopeElement===t?null:f.pointerEventsScopeElement,a=r===t?null:r,o=f.handleCloseOptions?.getScope?.()??i??a??e.closest(`[data-rootownerid]`)??n.body;return ct(f,{scopeElement:o,referenceElement:e,floatingElement:t}),()=>{v()}}},[n,o,c,s,f,_,u,d,v]),J.useEffect(()=>{if(!n)return;function e(){return!!(u&&d&&Ne(u.nodesRef.current,d).length>0)}function t(e){let t=Y(r,`close`,f.pointerType),n=()=>{a.setOpen(!1,h(S,e)),u?.events.emit(`floating.closed`,e)};t?f.openChangeTimeout.start(t,n):(f.openChangeTimeout.clear(),n())}function o(e){let t=I(e);if(!x(t)){f.interactedInside=!1;return}f.interactedInside=t?.closest(`[aria-haspopup]`)!=null}function c(){f.openChangeTimeout.clear(),p.clear(),u?.events.off(`floating.closed`,y),v()}function m(n){if(e()&&u){u.events.on(`floating.closed`,y);return}if(k(n.relatedTarget,a.context.triggerElements))return;let r=l.current.floatingContext?.nodeId??i,o=n.relatedTarget;if(!(u&&r&&W(o)&&Ne(u.nodesRef.current,r,!1).some(e=>N(e.context?.elements.floating,o)))){if(f.handler){f.handler(n);return}v(),_()&&!g()&&t(n)}}function y(t){!u||!d||e()||p.start(0,()=>{u.events.off(`floating.closed`,y),a.setOpen(!1,h(S,t)),u.events.emit(`floating.closed`,t)})}let b=s;return R(b&&U(b,`mouseenter`,c),b&&U(b,`mouseleave`,m),b&&U(b,`pointerdown`,o,!0),()=>{u?.events.off(`floating.closed`,y)})},[n,s,a,l,r,i,_,g,v,f,u,d,p])}var dt=e(n(),1),ft={current:null};function pt(e,t={}){let{enabled:n=!0,delay:r=0,handleClose:i=null,mouseOnly:a=!1,restMs:o=0,move:s=!0,triggerElementRef:c=ft,externalTree:l,isActiveTrigger:u=!0,getHandleCloseContext:d,isClosing:f,shouldOpen:p,guardStaleOpen:m=!1}=t,g=`rootStore`in e?e.rootStore:e,{dataRef:_,events:v}=g.context,y=Se(l),b=lt(g),x=J.useRef(!1),C=K(i),w=K(r),T=K(o),E=K(n),D=K(p),O=K(f),A=q(()=>Je(_.current.openEvent?.type,b.interactedInside)),j=q(()=>D.current?.()!==!1),M=q((e,t,n)=>{let r=g.context.triggerElements;if(r.hasElement(t))return!e||!N(e,t);if(!W(n))return!1;let i=n;return r.hasMatchingElement(e=>N(e,i))&&(!e||!N(e,i))}),P=q(()=>{b.handler&&=(G(g.select(`domReferenceElement`)).removeEventListener(`mousemove`,b.handler),void 0)}),F=q(()=>{st(b)});return u&&(b.handleCloseOptions=C.current?.__options),J.useEffect(()=>P,[P]),J.useEffect(()=>{if(!n)return;function e(e){e.open?x.current=!1:(x.current=e.reason===S,P(),b.openChangeTimeout.clear(),b.restTimeout.clear(),b.blockMouseMove=!0,b.restTimeoutPending=!1)}return v.on(`openchange`,e),()=>{v.off(`openchange`,e)}},[n,v,b,P]),J.useEffect(()=>{if(!n)return;function e(e,t=!0){let n=Y(w.current,`close`,b.pointerType);n?b.openChangeTimeout.start(n,()=>{g.setOpen(!1,h(S,e)),y?.events.emit(`floating.closed`,e)}):t&&(b.openChangeTimeout.clear(),g.setOpen(!1,h(S,e)),y?.events.emit(`floating.closed`,e))}let t=c.current??(u?g.select(`domReferenceElement`):null);if(!W(t))return;function r(e){if(b.openChangeTimeout.clear(),b.blockMouseMove=!1,a&&!V(b.pointerType))return;let t=qe(T.current),n=Y(w.current,`open`,b.pointerType),r=I(e),i=e.currentTarget??null,o=g.select(`domReferenceElement`),s=i;if(W(r)&&!g.context.triggerElements.hasElement(r)){for(let e of g.context.triggerElements.elements())if(N(e,r)){s=e;break}}W(i)&&W(o)&&!g.context.triggerElements.hasElement(i)&&N(i,o)&&(s=o);let c=s!=null&&M(o,s,r),l=g.select(`open`),u=O.current?.()??g.select(`transitionStatus`)===`ending`,d=!l&&u&&x.current,f=!c&&W(s)&&W(o)&&N(o,s)&&d,p=t>0&&!n,m=c&&(l||d)||f,_=!l||c;if(m){j()&&g.setOpen(!0,h(S,e,s));return}p||(n?b.openChangeTimeout.start(n,()=>{_&&j()&&g.setOpen(!0,h(S,e,s))}):_&&j()&&g.setOpen(!0,h(S,e,s)))}function i(t){if(A()){F();return}P();let n=g.select(`domReferenceElement`),r=G(n);b.restTimeout.clear(),b.restTimeoutPending=!1;let i=_.current.floatingContext??d?.();if(!k(t.relatedTarget,g.context.triggerElements)){if(C.current&&i){g.select(`open`)||b.openChangeTimeout.clear();let n=c.current;b.handler=C.current({...i,tree:y,x:t.clientX,y:t.clientY,onClose(){F(),P(),E.current&&!A()&&n===g.select(`domReferenceElement`)&&e(t,!0)}}),r.addEventListener(`mousemove`,b.handler),b.handler(t);return}(b.pointerType!==`touch`||!N(g.select(`floatingElement`),t.relatedTarget))&&e(t)}}function o(e){N(t,e.relatedTarget)||(b.openChangeTimeout.clear(),b.restTimeout.clear(),b.restTimeoutPending=!1)}let l=m?U(t,`mouseout`,o):void 0;return s?R(U(t,`mousemove`,r,{once:!0}),U(t,`mouseenter`,r),U(t,`mouseleave`,i),l):R(U(t,`mouseenter`,r),U(t,`mouseleave`,i),l)},[P,F,_,w,g,n,C,b,u,M,A,a,s,T,c,y,E,d,O,j,m]),J.useMemo(()=>{if(!n)return;function e(e){b.pointerType=e.pointerType}return{onPointerDown:e,onPointerEnter:e,onMouseMove(e){let{nativeEvent:t}=e,n=e.currentTarget,r=g.select(`domReferenceElement`),i=g.select(`open`),o=M(r,n,e.target);if(a&&!V(b.pointerType))return;if(i&&o&&b.handleCloseOptions?.blockPointerEvents){let e=g.select(`floatingElement`);if(e){let t=b.handleCloseOptions?.getScope?.()??n.ownerDocument.body;ct(b,{scopeElement:t,referenceElement:n,floatingElement:e})}}let s=qe(T.current);if(i&&!o||s===0||!o&&b.restTimeoutPending&&e.movementX**2+e.movementY**2<2)return;b.restTimeout.clear();function c(){if(b.restTimeoutPending=!1,A())return;let e=g.select(`open`);!b.blockMouseMove&&(!e||o)&&j()&&g.setOpen(!0,h(S,t,n))}b.pointerType===`touch`?dt.flushSync(()=>{c()}):o&&i?c():(b.restTimeoutPending=!0,b.restTimeout.start(s,c))}}},[n,b,A,M,a,g,T,j])}var mt=.1,ht=mt*mt,Z=.5;function gt(e,t,n,r,i,a){return r>=t!=a>=t&&e<=(i-n)*(t-r)/(a-r)+n}function _t(e,t,n,r,i,a,o,s,c,l){let u=!1;return gt(e,t,n,r,i,a)&&(u=!u),gt(e,t,i,a,o,s)&&(u=!u),gt(e,t,o,s,c,l)&&(u=!u),gt(e,t,c,l,n,r)&&(u=!u),u}function vt(e,t,n){return e>=n.x&&e<=n.x+n.width&&t>=n.y&&t<=n.y+n.height}function yt(e,t,n,r,i,a){return e>=Math.min(n,i)&&e<=Math.max(n,i)&&t>=Math.min(r,a)&&t<=Math.max(r,a)}function bt(e={}){let{blockPointerEvents:t=!1}=e,n=new ue,r=({x:e,y:t,placement:r,elements:i,onClose:a,nodeId:o,tree:s})=>{let c=r?.split(`-`)[0],l=!1,u=null,d=null,f=typeof performance<`u`?performance.now():0;function p(e,t){let n=performance.now(),r=n-f;if(u===null||d===null||r===0)return u=e,d=t,f=n,!1;let i=e-u,a=t-d,o=i*i+a*a,s=r*r*ht;return u=e,d=t,f=n,o<s}function m(){n.clear(),a()}return function(r){n.clear();let a=i.domReference,u=i.floating;if(!a||!u||c==null||e==null||t==null)return;let{clientX:d,clientY:f}=r,h=I(r),g=r.type===`mouseleave`,_=N(u,h),v=N(a,h);if(_&&(l=!0,!g))return;if(v&&(l=!1,!g)){l=!0;return}if(g&&W(r.relatedTarget)&&N(u,r.relatedTarget))return;function y(){return!!(s&&Ne(s.nodesRef.current,o).length>0)}function b(){y()||m()}if(y())return;let x=a.getBoundingClientRect(),S=u.getBoundingClientRect(),C=e>S.right-S.width/2,w=t>S.bottom-S.height/2,T=S.width>x.width,E=S.height>x.height,D=(T?x:S).left,O=(T?x:S).right,k=(E?x:S).top,A=(E?x:S).bottom;if(c===`top`&&t>=x.bottom-1||c===`bottom`&&t<=x.top+1||c===`left`&&e>=x.right-1||c===`right`&&e<=x.left+1){b();return}let j=!1;switch(c){case`top`:j=yt(d,f,D,x.top+1,O,S.bottom-1);break;case`bottom`:j=yt(d,f,D,S.top+1,O,x.bottom-1);break;case`left`:j=yt(d,f,S.right-1,A,x.left+1,k);break;case`right`:j=yt(d,f,x.right-1,A,S.left+1,k)}if(j)return;if(l&&!vt(d,f,x)){b();return}if(!g&&p(d,f)){b();return}let M=!1;switch(c){case`top`:{let n=T?Z/2:Z*4,r=T||C?e+n:e-n,i=T?e-n:C?e+n:e-n,a=t+Z+1,o=C||T?S.bottom-Z:S.top,s=C?T?S.bottom-Z:S.top:S.bottom-Z;M=_t(d,f,r,a,i,a,S.left,o,S.right,s);break}case`bottom`:{let n=T?Z/2:Z*4,r=T||C?e+n:e-n,i=T?e-n:C?e+n:e-n,a=t-Z,o=C||T?S.top+Z:S.bottom,s=C?T?S.top+Z:S.bottom:S.top+Z;M=_t(d,f,r,a,i,a,S.left,o,S.right,s);break}case`left`:{let n=E?Z/2:Z*4,r=E||w?t+n:t-n,i=E?t-n:w?t+n:t-n,a=e+Z+1,o=w||E?S.right-Z:S.left,s=w?E?S.right-Z:S.left:S.right-Z;M=_t(d,f,o,S.top,s,S.bottom,a,r,a,i);break}case`right`:{let n=E?Z/2:Z*4,r=E||w?t+n:t-n,i=E?t-n:w?t+n:t-n,a=e-Z,o=w||E?S.left+Z:S.right,s=w?E?S.left+Z:S.right:S.left+Z;M=_t(d,f,a,r,a,i,o,S.top,s,S.bottom);break}}M?l||n.start(40,b):b()}};return r.__options={...e,blockPointerEvents:t},r}var xt=Oe(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),St=Oe(`sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]);function Ct(){let{i18n:e}=s(),{data:t}=l(We),[n]=a(),r=n.get(`lang`)??e.language,i=t.i18n.fallback_language,o=e=>e?.[r]??e?.[i];return{title:o(t.branding.title),subtitle:o(t.branding.subtitle),loginMethodDescription:o(t.branding.login_method_description),iconUrl:t.branding.icon_url??`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2064%2064'%20role='img'%20aria-labelledby='issuary-app-icon-title%20issuary-app-icon-description'%20data-row-starts='14.666667%2028%2041.333333'%20data-row-height='8'%20data-row-bounds='14.666667%2049.333333'%3e%3ctitle%20id='issuary-app-icon-title'%3eIssuary%20app%20icon%3c/title%3e%3cdesc%20id='issuary-app-icon-description'%3eThree%20connected%20authorization%20bars%20shaped%20around%20a%20bold%20central%20keyhole%20on%20a%20Tinyrack%20tile%3c/desc%3e%3cpath%20fill='%230a0a0a'%20d='M16%200h32a16%2016%200%200%201%2016%2016v32a16%2016%200%200%201-16%2016H16A16%2016%200%200%201%200%2048V16A16%2016%200%200%201%2016%200Z'/%3e%3cpath%20fill='%23fafafa'%20d='M17%2014.667h30a5%205%200%200%201%205%205v0a5%205%200%200%201-5%205H17a5%205%200%200%201-5-5v0a5%205%200%200%201%205-5Zm0%2027.333h30a5%205%200%200%201%205%205v0a5%205%200%200%201-5%205H17a5%205%200%200%201-5-5v0a5%205%200%200%201%205-5Z'/%3e%3cpath%20fill='%2338bdf8'%20d='M17%2028h30a5%205%200%200%201%205%205v0a5%205%200%200%201-5%205H17a5%205%200%200%201-5-5v0a5%205%200%200%201%205-5Z'/%3e%3cpath%20fill='%230a0a0a'%20d='M27%2024.667h10v4.5l-1.5%201.5h-7l-1.5-1.5v-4.5Zm5-1.5a7.5%207.5%200%200%201%207.5%207.5c0%202.554-1.275%204.81-3.223%206.167L37.75%2052h-11.5l1.473-15.166A7.5%207.5%200%200%201%2024.5%2030.667a7.5%207.5%200%200%201%207.5-7.5Z'/%3e%3c/svg%3e`,logoUrl:t.branding.logo_url??void 0}}var wt=J.createContext(void 0);function Q(e){let t=J.useContext(wt);if(t===void 0&&!e)throw Error(b(72));return t}var Tt={...Ie,disabled:e=>e.disabled,instantType:e=>e.instantType,isInstantPhase:e=>e.isInstantPhase,trackCursorAxis:e=>e.trackCursorAxis,disableHoverablePopup:e=>e.disableHoverablePopup,lastOpenChangeReason:e=>e.openChangeReason,closeOnClick:e=>e.closeOnClick,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin},Et=class extends be{constructor(e,t,n){let r=new z;super(Ot(e,r,t,n),kt(r),Tt)}setOpen=(e,t)=>{Te(this,e,t,{extraState:{openChangeReason:t.reason}})};cancelPendingOpen(e){this.state.floatingRootContext.dispatchOpenChange(!1,h(fe,e))}};function Dt(){let e=new z,t=new He(Object.freeze(Ot(void 0,e)),Object.freeze(kt(e)),Tt);return Object.assign(t,{setOpen:w,cancelPendingOpen:w})}function Ot(e,t,n,r=!1){let i={...ze(),disabled:!1,instantType:void 0,isInstantPhase:!1,trackCursorAxis:`none`,disableHoverablePopup:!1,openChangeReason:null,closeOnClick:!0,closeDelay:0,adaptiveOrigin:void 0,...e};return i.floatingRootContext=Ve(t,n,r),i}function kt(e){return{popupRef:J.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerElements:e}}var At=xe(function(e){let{disabled:t=!1,defaultOpen:n=!1,open:r,disableHoverablePopup:i=!1,trackCursorAxis:a=`none`,actionsRef:o,onOpenChange:s,onOpenChangeComplete:c,handle:l,triggerId:u,defaultTriggerId:d=null,children:f}=e,p=Ce((e,t)=>new Et({open:n,openProp:r,activeTriggerId:d,triggerIdProp:u},e,t));p.useControlledProp(`openProp`,r),p.useControlledProp(`triggerIdProp`,u),p.useContextCallback(`onOpenChange`,s),p.useContextCallback(`onOpenChangeComplete`,c);let g=p.useState(`open`),_=!t&&g,v=p.useState(`activeTriggerId`),y=p.useState(`mounted`),b=p.useState(`payload`);p.useSyncedValues({trackCursorAxis:a,disableHoverablePopup:i,disabled:t}),Ae(p,{closeOnActiveTriggerUnmount:!0});let{forceUnmount:x,transitionStatus:S}=je(_,p),C=p.useState(`isInstantPhase`),w=p.useState(`instantType`),T=p.useState(`lastOpenChangeReason`),E=J.useRef(null);m(()=>{g&&t&&p.setOpen(!1,h(ae))},[g,t,p]),m(()=>{S===`ending`&&T===`none`||S!==`ending`&&C?(w!==`delay`&&(E.current=w),p.set(`instantType`,`delay`)):E.current!==null&&(p.set(`instantType`,E.current),E.current=null)},[S,C,T,w,p]),m(()=>{_&&(v??p.set(`payload`,void 0))},[p,v,_]),J.useImperativeHandle(o,()=>({unmount:x,close:()=>p.setOpen(!1,h(D))}),[x,p]);let O=_||y||!t&&a!==`none`;return(0,X.jsxs)(wt.Provider,{value:p,children:[l&&(0,X.jsx)(we,{handle:l,store:p}),O&&(0,X.jsx)(jt,{store:p,disabled:t,trackCursorAxis:a}),typeof f==`function`?f({payload:b}):f]})});function jt({store:e,disabled:t,trackCursorAxis:n}){let r=e.useState(`floatingRootContext`),i=Me(r,{enabled:!t,referencePress:()=>e.select(`closeOnClick`)}),a=nt(r,{enabled:!t&&n!==`none`,axis:n===`none`?void 0:n}),o=J.useMemo(()=>oe(a.reference,i.reference),[a.reference,i.reference]);return Ee(e,{activeTriggerProps:o,inactiveTriggerProps:o,popupProps:i.floating??C}),null}var Mt=J.createContext(void 0);function Nt(){return J.useContext(Mt)}var Pt=`data-base-ui-tooltip-trigger`;function Ft(e){if(`composedPath`in e){let t=e.composedPath();for(let e=0;e<t.length;e+=1){let n=t[e];if(W(n))return n}}let t=e.target;return W(t)?t:null}function It(e){let t=e;for(;t;){let e=t.closest(`[${Pt}]`);if(e)return e;let n=t.getRootNode();t=`host`in n&&W(n.host)?n.host:null}return null}var Lt=A(function(e,t){let{render:n,className:r,style:i,handle:a,payload:o,disabled:s,delay:c,closeOnClick:l=!0,closeDelay:u,id:d,...f}=e,p=Q(!0),m=Fe(a)??p;if(!m)throw Error(b(82));let g=M(d),_=m.useState(`isTriggerActive`,g),v=m.useState(`isOpenedByTrigger`,g),y=m.useState(`floatingRootContext`),x=J.useRef(null),C=c??600,w=u??0,{registerTrigger:E,isMountedByThisTrigger:D}=Pe(g,x,m,{payload:o,closeOnClick:l,closeDelay:w}),O=Nt(),{delayRef:k,isInstantPhase:A,hasProvider:j}=$e(y,{open:v}),P=lt(y);m.useSyncedValue(`isInstantPhase`,A);let F=m.useState(`disabled`),I=s??F,ee=K(I),te=m.useState(`trackCursorAxis`),ne=m.useState(`disableHoverablePopup`),L=J.useRef(!1),R=pe(),z=J.useRef(void 0);function B(){return j?Y(k.current,`open`)===0?0:c??O??600:C}function re(e){let t=x.current;if(!t||!e)return!1;let n=It(e);return n!==null&&n!==t&&N(t,n)}function ie(e){let t=re(e);return L.current=t,t&&(P.openChangeTimeout.clear(),P.restTimeout.clear(),P.restTimeoutPending=!1,R.clear()),t}let ae=pt(y,{enabled:!I,mouseOnly:!0,move:!1,handleClose:!ne&&te!==`both`?bt():null,restMs:B,delay(){return u==null&&j?{close:Y(k.current,`close`)}:{close:w}},triggerElementRef:x,isActiveTrigger:_,isClosing:()=>m.select(`transitionStatus`)===`ending`,shouldOpen(){return!L.current}}),oe=it(y,{enabled:!I}).reference,H=e=>{let t=L.current,n=Ft(e),r=ie(n),i=x.current,a=i&&n&&N(i,n);if(r&&m.select(`open`)&&m.select(`lastOpenChangeReason`)===`trigger-hover`){m.setOpen(!1,h(S,e));return}if(t&&!r&&a&&!ee.current&&!m.select(`open`)&&i&&V(z.current)){let t=()=>{!L.current&&!ee.current&&!m.select(`open`)&&m.setOpen(!0,h(S,e,i))},n=B();n===0?(R.clear(),t()):R.start(n,t)}},se=m.useState(`triggerProps`,D);return T(`button`,e,{state:{open:v},ref:[t,E,x],props:[ae,oe,D||te!==`none`?se:void 0,{onMouseOver(e){H(e.nativeEvent)},onFocus(e){re(Ft(e.nativeEvent))&&e.preventBaseUIHandler()},onMouseLeave(){L.current=!1,R.clear(),z.current=void 0},onPointerEnter(e){z.current=e.pointerType},onPointerDown(e){z.current=e.pointerType,m.set(`closeOnClick`,l),l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},onClick(e){l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},id:g,"data-trigger-disabled":I?``:void 0,[Pt]:I?void 0:``},f],stateAttributesMapping:me})}),Rt=J.createContext(void 0);function zt(){let e=J.useContext(Rt);if(e===void 0)throw Error(b(70));return e}var Bt=J.forwardRef(function(e,t){let{keepMounted:n=!1,...i}=e;return Q().useState(`mounted`)||n?(0,X.jsx)(Rt.Provider,{value:n,children:(0,X.jsx)(r,{ref:t,...i})}):null}),Vt=J.createContext(void 0);function Ht(){let e=J.useContext(Vt);if(e===void 0)throw Error(b(71));return e}var Ut=J.forwardRef(function(e,t){let{render:n,className:r,anchor:i,positionMethod:a=`absolute`,side:o=`top`,align:s=`center`,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d=5,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m=!1,collisionAvoidance:h=ie,style:g,..._}=e,v=Q(),y=zt(),b=v.useState(`open`),x=v.useState(`mounted`),S=v.useState(`trackCursorAxis`),C=v.useState(`disableHoverablePopup`),w=v.useState(`floatingRootContext`),T=v.useState(`instantType`),E=v.useState(`transitionStatus`),D=v.useState(`adaptiveOrigin`),O=L({anchor:i,positionMethod:a,floatingRootContext:w,mounted:x,side:o,sideOffset:c,align:s,alignOffset:l,collisionBoundary:u,collisionPadding:d,sticky:p,arrowPadding:f,disableAnchorTracking:m,keepMounted:y,collisionAvoidance:h,adaptiveOrigin:D}),k=J.useMemo(()=>({open:b,side:O.side,align:O.align,anchorHidden:O.anchorHidden,instant:S===`none`?T:`tracking-cursor`}),[b,O.side,O.align,O.anchorHidden,S,T]),A=he(e,k,{styles:O.positionerStyles,transitionStatus:E,props:_,refs:[t,v.useStateSetter(`positionerElement`)],hidden:!x,inert:!b||S===`both`||C});return(0,X.jsx)(Vt.Provider,{value:O,children:A})}),Wt=J.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=Q(),{side:s,align:c}=Ht(),l=o.useState(`open`),u=o.useState(`instantType`),d=o.useState(`transitionStatus`),f=o.useState(`popupProps`),p=o.useState(`floatingRootContext`),m=o.useState(`disabled`),h=o.useState(`closeDelay`);ne({open:l,ref:o.context.popupRef,onComplete(){l&&o.context.onOpenChangeComplete?.(!0)}}),ut(p,{enabled:!m,closeDelay:h});let g=o.useStateSetter(`popupElement`);return T(`div`,e,{state:{open:l,side:s,align:c,instant:u,transitionStatus:d},ref:[t,o.context.popupRef,g],props:[ke,f,le(d),a],stateAttributesMapping:ee})}),Gt=J.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=Q(),{arrowRef:s,side:c,align:l,arrowUncentered:u,arrowStyles:d}=Ht(),f={open:o.useState(`open`),side:c,align:l,uncentered:u,instant:o.useState(`instantType`)};return T(`div`,e,{state:f,ref:[t,s],props:[{style:d,"aria-hidden":!0},a],stateAttributesMapping:re})}),Kt=function(e){let{delay:t,closeDelay:n,timeout:r=400}=e,i=J.useMemo(()=>({open:t,close:n}),[t,n]);return(0,X.jsx)(Mt.Provider,{value:t,children:(0,X.jsx)(Qe,{delay:i,timeoutMs:r,children:e.children})})};function qt(e){let t=se(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=ce(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r;return(E(n)!==a||E(r)!==o)&&(n=a,r=o),{width:n,height:r}}function Jt(e){let{popupElement:t,positionerElement:n,content:r,mounted:i,onMeasureLayout:a,onMeasureLayoutComplete:o,side:s,direction:c}=e,l=de(t,!0),u=te(),d=J.useRef(null),f=J.useRef(!0),p=J.useRef(w),h=q(a),g=q(o),_=J.useMemo(()=>Yt(s,c),[s,c]);m(()=>{if(!i){p.current=w,f.current=!0,d.current=null;return}if(!t||!n)return;p.current=Zt(t,_),Qt(t,`auto`);let e=Xt(t,`position`,`static`),r=Xt(t,`transform`,`none`),a=Xt(t,`scale`,`1`),o=Zt(n,{"--available-width":`max-content`,"--available-height":`max-content`});function s(){e(),r(),o()}function c(){s(),a()}if(h?.(),f.current||d.current===null){$t(n,`max-content`);let e=qt(t);return d.current=e,$t(n,e),c(),g?.(null,e),f.current=!1,()=>{p.current(),p.current=w}}$t(n,`max-content`);let m=d.current,v=qt(t);d.current=v,Qt(t,m),c(),g?.(m,v),$t(n,v);let y=new AbortController;return u.request(()=>{Qt(t,v),l(()=>{t.style.setProperty(`--popup-width`,`auto`),t.style.setProperty(`--popup-height`,`auto`)},y.signal)}),()=>{y.abort(),u.cancel(),p.current(),p.current=w}},[r,t,n,l,u,i,h,g,_])}function Yt(e,t){let n=e===`top`,r=e===`left`||e===(t===`rtl`?`inline-end`:`inline-start`);return!n&&!r?C:{position:`absolute`,[n?`bottom`:`top`]:`0`,[r?`right`:`left`]:`0`}}function Xt(e,t,n){let r=e.style.getPropertyValue(t);return e.style.setProperty(t,n),()=>{e.style.setProperty(t,r)}}function Zt(e,t){let n=[];for(let[r,i]of Object.entries(t))n.push(Xt(e,r,i));return n.length?()=>{n.forEach(e=>e())}:w}function Qt(e,t){let n=t===`auto`?`auto`:`${t.width}px`,r=t===`auto`?`auto`:`${t.height}px`;e.style.setProperty(`--popup-width`,n),e.style.setProperty(`--popup-height`,r)}function $t(e,t){let n=t===`max-content`?`max-content`:`${t.width}px`,r=t===`max-content`?`max-content`:`${t.height}px`;e.style.setProperty(`--positioner-width`,n),e.style.setProperty(`--positioner-height`,r)}var en={name:`adaptiveOrigin`,async fn(e){let{x:t,y:n,rects:{floating:r},elements:{floating:i},platform:a,strategy:o,placement:s}=e,c=B(i),l=c.getComputedStyle(i);if(l.transitionDuration===`0s`||l.transitionDuration===``)return{x:t,y:n,data:H};let u=await a.getOffsetParent?.(i),d={width:0,height:0};if(o===`fixed`&&c?.visualViewport)d={width:c.visualViewport.width,height:c.visualViewport.height};else if(u===c){let e=G(i);d={width:e.documentElement.clientWidth,height:e.documentElement.clientHeight}}else await a.isElement?.(u)&&(d=await a.getDimensions(u));let f=g(s),p=t,m=n;f===`left`&&(p=d.width-(t+r.width)),f===`top`&&(m=d.height-(n+r.height));let h=f===`left`?`right`:H.sideX,_=f===`top`?`bottom`:H.sideY;return{x:p,y:m,data:{sideX:h,sideY:_}}}},tn={activationDirection:e=>e?{"data-activation-direction":e}:null};function nn(e){let{store:t,side:n,children:r}=e,i=_e(),a=t.useState(`activeTriggerElement`),o=t.useState(`activeTriggerId`),s=t.useState(`open`),c=t.useState(`payload`),l=t.useState(`mounted`),u=t.useState(`popupElement`),d=t.useState(`positionerElement`),f=De(s?a:null),p=sn(o,c),h=J.useRef(null),[g,_]=J.useState(null),[v,y]=J.useState(null),b=J.useRef(null),x=J.useRef(null),S=de(b,!0),C=te(),w=J.useRef(null),[T,E]=J.useState(null),[D,O]=J.useState(!1);m(()=>(t.set(`adaptiveOrigin`,en),()=>{t.set(`adaptiveOrigin`,void 0)}),[t]);let k=q(()=>{b.current?.style.setProperty(`animation`,`none`),b.current?.style.setProperty(`transition`,`none`),x.current?.style.setProperty(`display`,`none`)}),A=q(e=>{b.current?.style.removeProperty(`animation`),b.current?.style.removeProperty(`transition`),x.current?.style.removeProperty(`display`),e&&E(e)}),j=q(()=>{w.current?.abort();let e=new AbortController;w.current=e,S(()=>{_(null),E(null),h.current=null},e.signal)}),M=J.useRef(null);m(()=>{(!s||!l)&&(M.current=null)},[s,l]),m(()=>{if(a&&f&&a!==f&&M.current!==a&&h.current){_(h.current),O(!0);let e=on(f,a);y(e),M.current=a}},[a,f]),m(()=>{g!=null&&(w.current?.abort(),O(!0),C.request(()=>{dt.flushSync(()=>{O(!1)}),j()}))},[p,g,j,C]),m(()=>{let e=b.current;if(!e)return;let t=G(e).createElement(`div`);for(let n of Array.from(e.childNodes))t.appendChild(n.cloneNode(!0));h.current=t});let N=g!=null,P;P=N?(0,X.jsxs)(J.Fragment,{children:[(0,X.jsx)(`div`,{"data-previous":!0,inert:ve(!0),ref:x,style:{...T?{"--popup-width":`${T.width}px`,"--popup-height":`${T.height}px`}:null,position:`absolute`},"data-ending-style":D?void 0:``},`previous`),(0,X.jsx)(`div`,{"data-current":!0,ref:b,"data-starting-style":D?``:void 0,children:r},p)]}):(0,X.jsx)(`div`,{"data-current":!0,ref:b,children:r},p),m(()=>{let e=x.current;!e||!g||e.replaceChildren(...Array.from(g.childNodes))},[g]),Jt({popupElement:u,positionerElement:d,mounted:l,content:c,onMeasureLayout:k,onMeasureLayoutComplete:A,side:n,direction:i});let F={activationDirection:rn(v),transitioning:N};return{children:P,state:F}}function rn(e){if(e)return`${an(e.horizontal,5,`right`,`left`)} ${an(e.vertical,5,`down`,`up`)}`}function an(e,t,n,r){return e>t?n:e<-t?r:``}function on(e,t){let n=e.getBoundingClientRect(),r=t.getBoundingClientRect(),i={x:n.left+n.width/2,y:n.top+n.height/2},a={x:r.left+r.width/2,y:r.top+r.height/2};return{horizontal:a.x-i.x,vertical:a.y-i.y}}function sn(e,t){let[n,r]=J.useState(0),i=J.useRef(e),a=J.useRef(t),o=J.useRef(!1);return m(()=>{let n=i.current,s=a.current,c=e!==n,l=t!==s;c?(r(e=>e+1),o.current=!l):o.current&&l&&(r(e=>e+1),o.current=!1),i.current=e,a.current=t},[e,t]),`${e??`current`}-${n}`}var cn=J.forwardRef(function(e,t){let{render:n,className:r,style:i,children:a,...o}=e,s=Q(),c=Ht(),l=s.useState(`instantType`),{children:u,state:d}=nn({store:s,side:c.side,children:a}),f={activationDirection:d.activationDirection,transitioning:d.transitioning,instant:l};return T(`div`,e,{state:f,ref:t,props:[o,{children:u}],stateAttributesMapping:tn})}),ln=class extends Le{constructor(){super(Dt(),`Tooltip`)}open(e){this.openByTrigger(e)}close(){this.closePopup()}get isOpen(){return this.attachedStore?.select(`open`)??!1}};function un(){return new ln}var dn=d(Gt,`tr-layer-arrow tr-tooltip-arrow`);function fn(){return un()}var pn=(0,J.createContext)(null),mn=pn.Provider;function hn(){return(0,J.useContext)(pn)}function gn({className:e,id:t,role:n,...r}){let i=hn();if(i===null)throw Error(`TRTooltip.Popup must be used within TRTooltip.Root.`);let a=t??i.fallbackId,{setPopupId:o}=i;return(0,J.useEffect)(()=>(o(a),()=>o(null)),[a,o]),(0,X.jsx)(Wt,{...r,className:c(`tr-layer tr-tooltip-content`,e),id:a,role:n??`tooltip`})}var _n=d(Bt),vn=d(Ut,`tr-layer-positioner tr-tooltip-positioner`),yn=d(Kt);function bn(e){let t=(0,J.useId)(),[n,r]=(0,J.useState)(null);return(0,X.jsx)(mn,{value:(0,J.useMemo)(()=>({descriptionId:n??t,fallbackId:t,setPopupId:r}),[t,n]),children:(0,X.jsx)(At,{...e})})}function xn({"aria-describedby":e,className:t,...n}){let r=[e,hn()?.descriptionId].filter(Boolean).join(` `);return(0,X.jsx)(Lt,{...n,"aria-describedby":r,className:c(`tr-tooltip`,t)})}var $={Root:bn,Trigger:xn,Portal:_n,Positioner:vn,Popup:gn,Arrow:dn,Provider:yn,Viewport:d(cn,`tr-layer-viewport tr-tooltip-viewport`),createHandle:fn};function Sn(){let{t:e}=s(),{toasts:t}=i.useToastManager();return(0,X.jsx)(i.Portal,{children:(0,X.jsx)(i.Viewport,{position:`block-start-center`,children:t.map(t=>(0,X.jsxs)(i.Root,{toast:t,children:[(0,X.jsxs)(i.Content,{children:[(0,X.jsx)(i.Title,{}),(0,X.jsx)(i.Description,{})]}),(0,X.jsx)(i.Close,{"aria-label":e(`common.dismiss`),children:(0,X.jsx)(Re,{"aria-hidden":!0,className:`size-tinyrack-lg`})})]},t.id))})})}function Cn(){return(0,X.jsx)(`footer`,{className:`flex justify-center px-tinyrack-lg pb-tinyrack-lg empty:hidden`,children:(0,X.jsx)(Ge,{})})}function wn({"aria-labelledby":e,children:t,className:n,loading:r,...i}){return(0,X.jsx)(Be,{...i,...(!r||i.loadingLabel===void 0)&&e?{"aria-labelledby":e}:{},...r===void 0?{}:{loading:r},className:c(`tr-icon-btn`,n),children:r?null:t})}function Tn({colorScheme:e,onToggle:t,uiSize:n=`lg`}){let{t:r}=s(),i=r(e===`dark`?`common.theme.dark`:`common.theme.light`),a=e===`dark`?St:xt;return(0,X.jsx)(`div`,{children:(0,X.jsxs)($.Root,{children:[(0,X.jsx)($.Trigger,{"data-testid":`theme-toggle`,render:(0,X.jsx)(wn,{appearance:`ghost`,"aria-label":i,onClick:t,uiSize:n,children:(0,X.jsx)(a,{})})}),(0,X.jsx)($.Portal,{children:(0,X.jsxs)($.Positioner,{children:[(0,X.jsx)($.Popup,{children:i}),(0,X.jsx)($.Arrow,{})]})})]})})}function En({brand:e=!1,actions:t}){let{colorScheme:n,toggleColorScheme:r}=Ue(),{title:i,iconUrl:a}=Ct();return(0,X.jsxs)(`div`,{className:`flex items-center gap-tinyrack-sm px-tinyrack-lg py-tinyrack-sm`,children:[e&&(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-tinyrack-sm`,children:[a&&(0,X.jsx)(`img`,{alt:``,className:`size-tinyrack-xl object-contain`,src:a}),i&&(0,X.jsx)(u,{as:`h1`,truncate:!0,variant:`headingSm`,weight:`heading`,children:i})]}),(0,X.jsxs)(`div`,{className:`ms-auto flex items-center gap-tinyrack-sm`,children:[t,(0,X.jsx)(Tn,{colorScheme:n,onToggle:r})]})]})}export{$ as a,Ct as c,ut as d,it as f,Sn as i,bt as l,wn as n,tn as o,Cn as r,nn as s,En as t,pt as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{$ as e,J as t}from"./components-C1SipCbb.js";import{t as n}from"./jsx-runtime-BFZ_fnNJ.js";import{a as r,n as i,t as a}from"./api-0SzZx6X7.js";import{n as o,t as s}from"./text-CGN4ZtUZ.js";import{t as c}from"./mutationOptions-Dfvzj6n2.js";import{r as l}from"./NullStore-BxU9yW8l.js";import{r as u}from"./language-selector-
|
|
1
|
+
import{$ as e,J as t}from"./components-C1SipCbb.js";import{t as n}from"./jsx-runtime-BFZ_fnNJ.js";import{a as r,n as i,t as a}from"./api-0SzZx6X7.js";import{n as o,t as s}from"./text-CGN4ZtUZ.js";import{t as c}from"./mutationOptions-Dfvzj6n2.js";import{r as l}from"./NullStore-BxU9yW8l.js";import{r as u}from"./language-selector-CGXk9vW_.js";import{t as d}from"./modal-LoTH9Ttl.js";import{i as f,n as p}from"./standard-schema-C8Td_miB.js";import{t as m}from"./badge-BCQspax5.js";import{t as h}from"./checkbox-OA4CFk-6.js";import{t as g}from"./link-DcBltZGP.js";import{t as _}from"./sanitized-rich-text-nFi_4i6F.js";var v=e(t(),1),y=n();function b({isOpen:e,onClose:t,title:n,content:r}){return(0,y.jsx)(d,{isOpen:e,onClose:t,size:`lg`,title:n,children:(0,y.jsx)(_,{className:`mt-tinyrack-md max-h-dvh overflow-y-auto`,html:r})})}function x({terms:e,control:t,setValue:n,errors:i,disabled:a=!1}){let{t:o}=r(),[c,u]=(0,v.useState)(null),d=f({control:t,name:`termsConsents`}),_=t=>{for(let r of e)n(`termsConsents.${r.id}`,t,{shouldValidate:!0})},x=e.every(e=>d?.[e.id]),C=e.some(e=>!e.required),w=i?.termsConsents,T=e=>e.title===e.id?S(e.id):e.title;return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsxs)(`div`,{className:`space-y-tinyrack-xs`,children:[e.length>1&&(0,y.jsxs)(`div`,{className:`flex cursor-pointer items-center gap-tinyrack-sm py-tinyrack-2xs`,children:[(0,y.jsx)(h.Root,{"aria-labelledby":`terms-all-label`,checked:x,"data-testid":`terms-checkbox`,disabled:a,onCheckedChange:_,uiSize:`lg`,children:(0,y.jsx)(h.Indicator,{})}),(0,y.jsx)(s,{id:`terms-all-label`,variant:`caption`,weight:`medium`,children:o(`terms.agreeAll`)}),C&&(0,y.jsx)(s,{color:`muted`,variant:`caption`,children:o(`terms.agreeAllOptionalIncluded`)})]}),e.map(e=>(0,y.jsx)(p,{control:t,name:`termsConsents.${e.id}`,render:({field:t})=>(0,y.jsxs)(`div`,{children:[(0,y.jsxs)(`div`,{className:`flex items-center gap-tinyrack-sm py-tinyrack-2xs`,children:[(0,y.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-tinyrack-sm`,children:[(0,y.jsx)(h.Root,{"aria-labelledby":`term-label-${e.id}`,checked:t.value===!0,"data-testid":`terms-checkbox`,disabled:a,onCheckedChange:e=>t.onChange(e===!0),uiSize:`lg`,children:(0,y.jsx)(h.Indicator,{})}),(0,y.jsx)(s,{id:`term-label-${e.id}`,truncate:!0,variant:`caption`,children:T(e)}),(0,y.jsx)(m,{"data-testid":e.required?`terms-badge-required`:`terms-badge-optional`,uiSize:`md`,variant:e.required?`danger`:`neutral`,children:e.required?o(`terms.required`):o(`terms.optional`)})]}),e.type===`link`&&e.content&&(0,y.jsx)(g,{"aria-label":o(`terms.viewSpecific`,{title:T(e)}),className:`shrink-0 text-tinyrack-xs`,href:e.content,rel:`noopener noreferrer`,target:`_blank`,children:o(`terms.view`)}),e.type===`text`&&e.content&&(0,y.jsx)(l,{appearance:`ghost`,"aria-label":o(`terms.viewSpecific`,{title:T(e)}),className:`shrink-0 text-tinyrack-xs`,onClick:()=>u(e),type:`button`,uiSize:`sm`,children:o(`terms.view`)})]}),e.userConsent?.requiresUpdate&&(0,y.jsx)(s,{as:`p`,className:`ml-tinyrack-xl`,color:`warning`,variant:`caption`,children:o(`terms.versionUpdated`)}),w?.[e.id]&&(0,y.jsx)(s,{as:`p`,className:`ml-tinyrack-xl`,color:`danger`,"data-testid":`terms-field-error`,variant:`caption`,children:w[e.id]?.message})]})},e.id))]}),(0,y.jsx)(b,{content:c?.content??``,isOpen:c!==null,onClose:()=>u(null),title:c?.title??``})]})}function S(e){return e.replaceAll(`-`,` `).replaceAll(`_`,` `).replace(/([a-zA-Z])(\d)/g,`$1 $2`).split(` `).filter(e=>e.length>0).map(e=>`${e.charAt(0).toUpperCase()}${e.slice(1)}`).join(` `)}var C=(e,t)=>o({queryKey:u.terms(t),queryFn:async()=>{let n=await e.api.terms.$get({query:{lang:t??`en`}});return i(n)}}),w=e=>C(a,e),T=c({mutationFn:async e=>{let t=await a.api.terms.consent.$post({json:e});return i(t)}});export{T as n,x as r,w as t};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{$ as e,J as t}from"./components-C1SipCbb.js";import{t as n}from"./toast-_zV1SGz6.js";import{t as r}from"./jsx-runtime-BFZ_fnNJ.js";import{L as i,a}from"./api-0SzZx6X7.js";import{t as o}from"./text-CGN4ZtUZ.js";import{t as s}from"./useMutation-C4CmK9Sb.js";import{An as c,Bn as l,Dn as u,E as d,In as f,On as p,Pn as m,Tn as h,V as g,Y as _,at as v,ct as y,fn as b,in as x,lt as S,on as C,ot as w,q as T,x as E,yn as D}from"./usePositioner-DcBnB2-O.js";import{S as O,V as k,rt as A}from"./select--ltVnlVl.js";import{r as j}from"./NullStore-BxU9yW8l.js";import{t as M}from"./triangle-alert-DSSurAZ_.js";import{t as N}from"./alert-CFUBsmUN.js";import{t as P}from"./code-RrwtZcA2.js";import{r as F,t as I}from"./standard-schema-C8Td_miB.js";import{r as L}from"./FieldItemContext-CPjig163.js";import{a as R,s as ee}from"./schemas-Dxi9xZo6.js";import{t as z}from"./field-DzNLNMM0.js";import{n as B}from"./promise-
|
|
1
|
+
import{$ as e,J as t}from"./components-C1SipCbb.js";import{t as n}from"./toast-_zV1SGz6.js";import{t as r}from"./jsx-runtime-BFZ_fnNJ.js";import{L as i,a}from"./api-0SzZx6X7.js";import{t as o}from"./text-CGN4ZtUZ.js";import{t as s}from"./useMutation-C4CmK9Sb.js";import{An as c,Bn as l,Dn as u,E as d,In as f,On as p,Pn as m,Tn as h,V as g,Y as _,at as v,ct as y,fn as b,in as x,lt as S,on as C,ot as w,q as T,x as E,yn as D}from"./usePositioner-DcBnB2-O.js";import{S as O,V as k,rt as A}from"./select--ltVnlVl.js";import{r as j}from"./NullStore-BxU9yW8l.js";import{t as M}from"./triangle-alert-DSSurAZ_.js";import{t as N}from"./alert-CFUBsmUN.js";import{t as P}from"./code-RrwtZcA2.js";import{r as F,t as I}from"./standard-schema-C8Td_miB.js";import{r as L}from"./FieldItemContext-CPjig163.js";import{a as R,s as ee}from"./schemas-Dxi9xZo6.js";import{t as z}from"./field-DzNLNMM0.js";import{n as B}from"./promise-CFWkfv2A.js";import{i as V,s as H,t as te}from"./totp-BW4BoCpi.js";import{t as ne}from"./checkbox-OA4CFk-6.js";import{t as re}from"./pin-input-DtemAOnm.js";var ie=k(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),ae=k(`info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),U=e(t(),1),W=r();function oe({recoveryCodes:e,onConfirm:t,isLoading:r=!1,className:i=``}){let{t:s}=a(),c=n.useToastManager(),[l,u]=(0,U.useState)(!1),d=(0,U.useCallback)(async()=>{await navigator.clipboard.writeText(e.join(`
|
|
2
2
|
`)),c.add({title:s(`setupTotp.recoveryCodes.copied`),type:`success`})},[e,c,s]);return(0,W.jsxs)(`div`,{className:`flex flex-col gap-tinyrack-lg ${i}`,children:[(0,W.jsx)(o,{as:`p`,color:`muted`,variant:`bodySm`,children:s(`setupTotp.recoveryCodes.description`)}),(0,W.jsx)(`div`,{className:`grid grid-cols-2 gap-tinyrack-sm rounded-tinyrack-lg border border-tinyrack-border bg-tinyrack-surface p-tinyrack-lg`,"data-testid":`recovery-codes-grid`,children:e.map(e=>(0,W.jsx)(P,{className:`rounded-tinyrack-sm bg-tinyrack-surface-muted px-tinyrack-sm py-tinyrack-3xs text-center font-tinyrack-mono text-tinyrack-sm text-tinyrack-text`,children:e},e))}),(0,W.jsx)(N,{icon:M,type:`warning`,children:s(`setupTotp.recoveryCodes.warning`)}),(0,W.jsxs)(j,{appearance:`outline`,className:`w-full gap-tinyrack-sm`,intent:`neutral`,onClick:d,type:`button`,uiSize:`lg`,children:[(0,W.jsx)(ie,{"aria-hidden":!0,className:`size-tinyrack-lg`}),s(`setupTotp.recoveryCodes.copy`)]}),(0,W.jsx)(z.Root,{children:(0,W.jsxs)(`div`,{className:`flex items-center gap-tinyrack-sm`,children:[(0,W.jsx)(ne.Root,{checked:l,"data-testid":`recovery-codes-confirm`,disabled:r,onCheckedChange:e=>u(e===!0),uiSize:`lg`,children:(0,W.jsx)(ne.Indicator,{})}),(0,W.jsx)(z.Label,{className:`cursor-pointer`,children:s(`setupTotp.recoveryCodes.confirmCheckbox`)})]})}),(0,W.jsx)(j,{className:`w-full`,"data-testid":`recovery-codes-submit`,disabled:!l||r,intent:`primary`,loading:r,onClick:t,type:`button`,uiSize:`lg`,children:s(`setupTotp.recoveryCodes.confirm`)})]})}function se({onSubmit:e,onBack:t,isPending:n,invalidMessage:r,submitLabel:i,pendingText:o,backLabel:s,className:c=``}){let{t:l}=a(),u=(0,U.useRef)(null),d=(0,U.useMemo)(()=>R({code:ee().length(6,l(`validation.totp.length`)).regex(/^\d{6}$/,l(`validation.totp.digits`))}),[l]),{setValue:f,setError:p,handleSubmit:m,watch:h,formState:{errors:g}}=F({defaultValues:{code:``},resolver:I(d)}),_=h(`code`),v=(0,U.useCallback)(async t=>{try{await e(t.code)}catch{p(`code`,{type:`manual`,message:r??l(`setupTotp.error.invalid`)}),f(`code`,``),u.current?.focus()}},[r,e,p,f,l]);return(0,W.jsxs)(`div`,{className:`flex flex-col gap-tinyrack-lg ${c}`,children:[(0,W.jsxs)(L,{className:`flex flex-col gap-tinyrack-lg`,onSubmit:m(v),children:[(0,W.jsx)(re,{autoFocus:!0,error:g.code,length:6,onChange:e=>f(`code`,e),onComplete:()=>m(v)(),ref:u,value:_}),(0,W.jsx)(j,{className:`w-full`,intent:`primary`,loading:n,loadingLabel:o??l(`setupTotp.verifying`),type:`submit`,uiSize:`lg`,children:i??l(`setupTotp.verify`)})]}),t&&(0,W.jsx)(j,{appearance:`ghost`,className:`w-full`,"data-testid":`totp-verify-back`,disabled:n,intent:`neutral`,onClick:t,type:`button`,uiSize:`lg`,children:s??l(`setupTotp.back`)})]})}function ce(e){let{open:t,defaultOpen:n,onOpenChange:r,disabled:i}=e,[a,o]=O({controlled:t,default:n,name:`Collapsible`,state:`open`}),{mounted:s,setMounted:c,transitionStatus:l}=A(a,!0,!0),u=h(),[f,p]=U.useState(),m=f===null?void 0:f??u,g=D(e=>{let t=!a,n=d(T,e.nativeEvent);r(t,n),!n.isCanceled&&o(t)});return U.useMemo(()=>({defaultPanelId:u,disabled:i,handleTrigger:g,mounted:s,open:a,panelId:m,setMounted:c,setOpen:o,setPanelIdState:p,transitionStatus:l}),[u,i,g,s,a,m,c,o,p,l])}var G=U.createContext(void 0);function K(){let e=U.useContext(G);if(e===void 0)throw Error(f(15));return e}var q=function(e){return e.open=`data-open`,e.closed=`data-closed`,e[e.startingStyle=y.startingStyle]=`startingStyle`,e[e.endingStyle=y.endingStyle]=`endingStyle`,e}({}),le=function(e){return e.panelOpen=`data-panel-open`,e}({}),ue={[q.open]:``},de={[q.closed]:``},fe={open(e){return e?{[le.panelOpen]:``}:null}},J={open(e){return e?ue:de},...S},pe=U.forwardRef(function(e,t){let{render:n,className:r,defaultOpen:i=!1,disabled:a=!1,onOpenChange:o,open:s,style:c,...l}=e,u=D(o),d=ce({open:s,defaultOpen:i,onOpenChange:u,disabled:a}),f=U.useMemo(()=>({open:d.open,disabled:d.disabled,transitionStatus:d.transitionStatus}),[d.open,d.disabled,d.transitionStatus]),m=U.useMemo(()=>({...d,onOpenChange:u,state:f}),[d,u,f]),h=p(`div`,e,{state:f,ref:t,props:l,stateAttributesMapping:J});return(0,W.jsx)(G.Provider,{value:m,children:h})}),me={...fe,...S},he=U.forwardRef(function(e,t){let{panelId:n,open:r,handleTrigger:i,state:a,disabled:o}=K(),{className:s,disabled:c=o,render:l,nativeButton:u=!0,style:d,...f}=e,{getButtonProps:m,buttonRef:h}=_({disabled:c,focusableWhenDisabled:!0,native:u});return p(`button`,e,{state:a,ref:[t,h],props:[{"aria-controls":r?n:void 0,"aria-expanded":r,onClick:i},f,m],stateAttributesMapping:me})}),Y={height:void 0,width:void 0};function ge(e){let{externalRef:t,hiddenUntilFound:n,id:r,keepMounted:i,mounted:a,onOpenChange:o,open:s,setMounted:c,setOpen:l,transitionStatus:f}=e,p=U.useRef(null),h=U.useRef(null),[_,y]=U.useState(Y),b=U.useRef(Y),S=U.useRef(!1),T=U.useRef(s),O=U.useRef(!1),[k,A]=U.useState(!1),j=U.useRef(null),M=m(t,p),N=E(s),P=w(p),F=!s&&!a,I=k?`idle`:f,L=s&&(T.current||O.current),R=!s&&a&&h.current===`css-animation`&&_.height===void 0&&_.width===void 0?b.current:_,ee=n&&F&&h.current!==`css-animation`,z=D((e,t=!0)=>{t&&(b.current=e),y(e)}),B=D(()=>{j.current?.(),j.current=null}),V=D(e=>{B(),j.current=()=>{j.current=null,e()}}),H=D(()=>{s&&a&&h.current===`css-animation`&&(O.current=!0)});u(()=>{!k||f===`starting`||A(!1)},[k,f]),U.useEffect(()=>()=>{H(),B()},[H,B]),u(()=>{let e=p.current;if(!e)return;!s&&j.current&&B();let t=_e(e,L);if(h.current=t,s&&f===`idle`&&T.current&&t===`css-animation`){b.current=X(e);return}if(s&&f===`starting`){let n=S.current;if(S.current=!1,t===`none`){z(X(e)),A(!0);return}if(t===`css-transition`){let t=ve(e);if(z(X(e)),!n)return t;let r=Q(e,`transition-duration`,`0s`);return V(r),A(!0),t}z(X(e));let r=Q(e,`animation-name`,`none`);if(!n){r();return}let i=Q(e,`animation-duration`,`0s`);r(),V(i),A(!0);return}if(!s&&a&&(f===`idle`||f===`starting`)){if(T.current=!1,O.current=!1,t===`none`){z(Y,!1),c(!1);return}z(X(e));return}if(f!==`ending`)return;if(t===`none`){c(!1);return}let n=X(e);if(!(n.height>0||n.width>0)){c(!1);return}z(n),t===`css-animation`&&Q(e,`animation-name`,`none`)()},[a,s,B,z,c,V,L,f]),v({enabled:s&&a&&I===`idle`,open:!0,ref:p,onComplete(){s&&z(Y,!1)}}),U.useEffect(()=>{if(s||!a||I!==`ending`||!p.current)return;let e=new AbortController,t=-1;function n(){N.current||(c(!1),z(Y,!1))}return t=x.request(()=>{P(n,e.signal)}),()=>{x.cancel(t),e.abort()}},[N,a,s,I,P,z,c]),u(()=>{let e=p.current;!e||!n||!F||e.setAttribute(`hidden`,`until-found`)},[F,n]),U.useEffect(function(){let e=p.current;if(!e)return;function t(e){let t=d(g,e);o(!0,t),!t.isCanceled&&(S.current=!0,l(!0))}return C(e,`beforematch`,t)},[o,l]);let te=i||n||a||s;return{height:R.height,props:{...ee?{[q.startingStyle]:``}:void 0,hidden:F,id:r},ref:M,shouldPreventOpenAnimation:L,shouldRender:te,transitionStatus:I,width:R.width}}function X(e){return{height:e.scrollHeight,width:e.scrollWidth}}function _e(e,t){let n=b(e).getComputedStyle(e),r=(n.animationName.split(`,`).map(e=>e.trim()).some(e=>e!==``&&e!==`none`)||t)&&Z(n.animationDuration),i=Z(n.transitionDuration);return r&&i||i?`css-transition`:r?`css-animation`:`none`}function Z(e){return e.split(`,`).map(e=>e.trim()).some(e=>e!==``&&Number.parseFloat(e)>0)}function Q(e,t,n){let r=e.style.getPropertyValue(t),i=e.style.getPropertyPriority(t);return e.style.setProperty(t,n),()=>{if(r===``){e.style.removeProperty(t);return}e.style.setProperty(t,r,i)}}function ve(e){let t={"justify-content":e.style.justifyContent,"align-items":e.style.alignItems,"align-content":e.style.alignContent,"justify-items":e.style.justifyItems};Object.keys(t).forEach(t=>{e.style.setProperty(t,`initial`,`important`)});function n(){Object.entries(t).forEach(([t,n])=>{if(n===``){e.style.removeProperty(t);return}e.style.setProperty(t,n)})}let r=x.request(n);return()=>{x.cancel(r),n()}}var ye=function(e){return e.collapsiblePanelHeight=`--collapsible-panel-height`,e.collapsiblePanelWidth=`--collapsible-panel-width`,e}({}),be=l(U.forwardRef(function(e,t){let{className:n,hiddenUntilFound:r,keepMounted:i,render:a,id:o,style:s,...l}=e,{defaultPanelId:d,mounted:f,onOpenChange:m,open:h,setMounted:g,setPanelIdState:_,setOpen:v,state:y,transitionStatus:b}=K(),x=r??!1,S=i??!1,C=o||void 0,w=C??d;u(()=>(_(e=>C??(e===null?void 0:e)),()=>{_(e=>e===C?null:e)}),[C,_]);let{height:T,props:E,ref:D,shouldPreventOpenAnimation:O,shouldRender:k,transitionStatus:A,width:j}=ge({externalRef:t,hiddenUntilFound:x,id:w,keepMounted:S,mounted:f,onOpenChange:m,open:h,setMounted:g,setOpen:v,transitionStatus:b}),M={...y,transitionStatus:A},N=c(s,M),P=p(`div`,{...e,style:void 0},{state:M,ref:D,props:[E,{style:{[ye.collapsiblePanelHeight]:T===void 0?`auto`:`${T}px`,[ye.collapsiblePanelWidth]:j===void 0?`auto`:`${j}px`}},l,N?{style:N}:void 0,O?{style:{animationName:`none`}}:void 0],stateAttributesMapping:J});return k?P:null}),`tr-collapsible-content`),$={Root:l(pe,`tr-collapsible`),Trigger:l(he,`tr-collapsible-summary`),Panel:be};function xe({setupData:e,onNext:t,additionalActions:n,className:r=``}){let{t:i}=a();return(0,W.jsxs)(`div`,{className:`flex flex-col gap-tinyrack-lg ${r}`,children:[(0,W.jsx)(o,{align:`center`,as:`p`,color:`muted`,variant:`bodySm`,children:i(`setupTotp.qrDescription`)}),(0,W.jsx)(`div`,{className:`flex justify-center`,children:(0,W.jsx)(`div`,{className:`rounded-tinyrack-lg border border-tinyrack-border bg-tinyrack-surface p-tinyrack-lg`,children:(0,W.jsx)(`img`,{alt:`TOTP QR Code`,className:`block size-tinyrack-measure-sm`,src:e.qr_code})})}),(0,W.jsxs)($.Root,{children:[(0,W.jsx)($.Trigger,{children:i(`setupTotp.manualEntry`)}),(0,W.jsx)($.Panel,{children:(0,W.jsx)(P,{className:`mt-tinyrack-xs block break-all rounded-tinyrack-sm bg-tinyrack-surface-muted p-tinyrack-sm`,children:e.secret})})]}),(0,W.jsx)(j,{className:`w-full`,"data-testid":`totp-qr-next`,intent:`primary`,onClick:t,type:`button`,uiSize:`lg`,children:i(`setupTotp.next`)}),n]})}function Se(e={}){let{onSetupSuccess:t,onSetupError:n,onVerifySuccess:r,onVerifyError:a,onConfirmSuccess:o,onConfirmError:c,autoStart:l=!1}=e,u=i(),[d,f]=(0,U.useState)(l?`loading`:`qr`),[p,m]=(0,U.useState)(null),[h,g]=(0,U.useState)([]),_=(0,U.useRef)(!1),v=s({...V,onSuccess:e=>{m(e),f(`qr`),t?.(e)},onError:e=>{f(`error`),n?.(e)}}),y=s({...H,onSuccess:e=>{g(e.recovery_codes),f(`recovery`),r?.(e)},onError:e=>{a?.(e)}}),b=s({...te,onSuccess:e=>{u.invalidateQueries({queryKey:B.queryKey}),o?.(e)},onError:e=>{c?.(e)}}),x=(0,U.useCallback)(()=>{_.current=!0,f(`loading`),v.mutate()},[v]),S=(0,U.useCallback)(async e=>y.mutateAsync({code:e}),[y]),C=(0,U.useCallback)(()=>{f(`qr`)},[]),w=(0,U.useCallback)(()=>{f(`verify`)},[]),T=(0,U.useCallback)(async()=>b.mutateAsync(),[b]),E=(0,U.useCallback)(()=>{f(l?`loading`:`qr`),m(null),g([]),_.current=!1,v.reset(),y.reset(),b.reset()},[l,v,y,b]);return(0,U.useEffect)(()=>{l&&!_.current&&d===`loading`&&(_.current=!0,v.mutate())},[l,d,v]),{step:d,setupData:p,recoveryCodes:h,isSetupPending:v.isPending,isVerifyPending:y.isPending,isConfirmPending:b.isPending,isPending:v.isPending||y.isPending||b.isPending,setupError:v.error,verifyError:y.error,confirmError:b.error,startSetup:x,verify:S,goToQr:C,goToVerify:w,confirmRecoveryCodes:T,reset:E}}export{ae as a,oe as i,xe as n,se as r,Se as t};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { I as noop } from "./session-
|
|
1
|
+
import { I as noop } from "./session-CSnQWUgx.js";
|
|
2
2
|
//#region ../../node_modules/.pnpm/@tanstack+query-core@5.102.8/node_modules/@tanstack/query-core/build/modern/hydration.js
|
|
3
3
|
function tryResolveSync(promise) {
|
|
4
4
|
let data;
|
package/frontend/server/assets/{root-loader.server-BjcO3GtR.js → root-loader.server-Cwm-l9OS.js}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { o as getRouteRuntime } from "./session-
|
|
2
|
-
import { t as dehydrate } from "./hydration-
|
|
3
|
-
import { getRequestLanguage, getTheme } from "./route-runtime.server-
|
|
1
|
+
import { o as getRouteRuntime } from "./session-CSnQWUgx.js";
|
|
2
|
+
import { t as dehydrate } from "./hydration-yaDCGSA8.js";
|
|
3
|
+
import { getRequestLanguage, getTheme } from "./route-runtime.server-CjDbp5w6.js";
|
|
4
4
|
//#region src/root-loader.server.ts
|
|
5
5
|
function loadRoot(request, context) {
|
|
6
6
|
const runtime = getRouteRuntime(context);
|
package/frontend/server/assets/{route-runtime.server-DnkciJ0v.js → route-runtime.server-CjDbp5w6.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _ as createI18n, c as createAppQueryClient, d as createApiClient, i as createAppConfigQueryOptions, s as routeRuntimeContext, t as createSessionQueryOptions } from "./session-
|
|
1
|
+
import { _ as createI18n, c as createAppQueryClient, d as createApiClient, i as createAppConfigQueryOptions, s as routeRuntimeContext, t as createSessionQueryOptions } from "./session-CSnQWUgx.js";
|
|
2
2
|
import { frontendRuntimeContext } from "@tinyrack/issuary-server/internal/frontend-runtime-context";
|
|
3
3
|
//#region src/libs/route-runtime.server.ts
|
|
4
4
|
function cookieValue(request, name) {
|