@plumix/admin 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{-errors-D-cmkYbY.js → -errors-BJp83S61.js} +1 -1
- package/dist/assets/{-locale-param-R7YAVhAm.js → -locale-param-Y_oYVkUX.js} +1 -1
- package/dist/assets/{_-BgcFcUpb.js → _-DJH2KLIq.js} +1 -1
- package/dist/assets/{_authenticated-DabO2Qyv.js → _authenticated-CPS6rcL1.js} +1 -1
- package/dist/assets/{_authenticated-B2GjUlkG.js → _authenticated-DECJJkSG.js} +1 -1
- package/dist/assets/{_editor-Cj750bOw.js → _editor-DTQYo5H1.js} +1 -1
- package/dist/assets/{_name-4UEpyf0-.js → _name-Cn1TxMiD.js} +1 -1
- package/dist/assets/{_page-CW9_6SD1.js → _page-6Dt_H-t-.js} +1 -1
- package/dist/assets/{_page-B65xT7CY.js → _page-Dd9iXh9Y.js} +1 -1
- package/dist/assets/{_slug-B4JG-9fs.js → _slug-DfiOgvp-.js} +1 -1
- package/dist/assets/{_token-DbYWXSFn.js → _token-B5HSAv6u.js} +1 -1
- package/dist/assets/{allowed-domains-DYhKp_Ib.js → allowed-domains-C45hb_hj.js} +1 -1
- package/dist/assets/{bootstrap-DJz3cWv9.js → bootstrap-BGjxcccw.js} +1 -1
- package/dist/assets/breadcrumb-BV7HWDmi.js +1 -0
- package/dist/assets/{create-GWJoFtGc.js → create-Drjr9dfU.js} +1 -1
- package/dist/assets/{create-BBUSAO26.js → create-YjhP8uPI.js} +1 -1
- package/dist/assets/{create-CoSsIQco.js → create-twMn3ZJK.js} +1 -1
- package/dist/assets/{device-EMoc4lMH.js → device-CU0nQStx.js} +1 -1
- package/dist/assets/dist-9yav4OBD.js +46 -0
- package/dist/assets/{edit-DlHnrl_y.js → edit-BfhVPnGf.js} +1 -1
- package/dist/assets/{edit-DR0NupUB.js → edit-Bv4iDBop.js} +1 -1
- package/dist/assets/{edit-Bz9riMHP.js → edit-C7ilZiba.js} +1 -1
- package/dist/assets/{edit-BsC2RNOq.js → edit-CrzTOGqo.js} +1 -1
- package/dist/assets/edit-DVuHDSbc.js +2 -0
- package/dist/assets/{edit-C1985Bqy.js → edit-DwrFb_ta.js} +1 -1
- package/dist/assets/{form-BhMVtuYF.js → form-5CBmFjhZ.js} +1 -1
- package/dist/assets/{index-bWipSZdM.js → index-8CVr3Qp5.js} +4 -4
- package/dist/assets/{login-Cky2mine.js → login-CxdAEUCn.js} +1 -1
- package/dist/assets/{mailer-CnGqwCP4.js → mailer-DT9FFkYI.js} +1 -1
- package/dist/assets/{meta-box-CjxoPlkT.js → meta-box-B-N73b0I.js} +1 -1
- package/dist/assets/{meta-box-field-Cgn0DXDv.js → meta-box-field-gLyOLbwB.js} +1 -1
- package/dist/assets/{meta-box-grid-DJBtTRhe.js → meta-box-grid-CRboB-BG.js} +1 -1
- package/dist/assets/{plugin-error-boundary-3Oze9sdd.js → plugin-error-boundary-DlVIsgFV.js} +1 -1
- package/dist/assets/{rich-text-field-DGbPE_N0.js → rich-text-field-CHHhfy_b.js} +3 -3
- package/dist/assets/{search-input-BpOKuC8D.js → search-input-BSW1rAKi.js} +1 -1
- package/dist/assets/{separator-DCQAFSsS.js → separator-u9O31sRo.js} +1 -1
- package/dist/assets/{settings-DCqQvJiy.js → settings-szU4x17b.js} +1 -1
- package/dist/assets/{textarea-BoWLuA0I.js → textarea-BsZaGkV-.js} +1 -1
- package/dist/assets/{toast-CQk_AYCo.js → toast-UQxADDWA.js} +1 -1
- package/dist/assets/{toggle-Bfw56q6s.js → toggle-BfrQLxbv.js} +1 -1
- package/dist/assets/{tooltip-Pch4JgRX.js → tooltip-Dm_CbtVl.js} +1 -1
- package/dist/assets/{use-formatters-BlYPsMo8.js → use-formatters-HWxEQWaC.js} +1 -1
- package/dist/assets/{users-CYvrBtzp.js → users-BHorpfgX.js} +1 -1
- package/dist/assets/{utils-BBTvNyQG.js → utils-BtfRir_X.js} +2 -2
- package/dist/assets/{valibot-BKzEbLVK.js → valibot-D1tw6tkr.js} +1 -1
- package/dist/index.html +2 -2
- package/package.json +9 -9
- package/dist/assets/breadcrumb-TUgLmtOo.js +0 -1
- package/dist/assets/dist-Bdi1pykC.js +0 -46
- package/dist/assets/edit-CG12fZGb.js +0 -2
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./rich-text-field-CHHhfy_b.js","./jsx-runtime-DUAcabCT.js","./react-DbyrFoBd.js","./react-dom-i-Mcm3wj.js","./dist-BL2bKHuR.js","./with-selector-Bf4HMdmS.js","./createLucideIcon-C0O-yxZG.js","./underline-CoVrqZEk.js","./utils-BtfRir_X.js","./dist-9yav4OBD.js","./utils-DKOQrNEG.js","./dist-B66OmIyr.js","./breadcrumb-BV7HWDmi.js","./skeleton-BnBM1862.js","./index-8CVr3Qp5.js","./orpc-DURDArDu.js","./esm-DfD3iRfG.js","./style-emitter-CDGtTiRG.js","./use-label-CykSHq9A.js","./dist-ClOzYsk5.js","./validation-CwFumc7a.js","./card-L2-kK5VK.js","./index-BtnQdcjJ.css","./input-xYuLUQID.js","./separator-u9O31sRo.js","./tooltip-Dm_CbtVl.js","./textarea-BsZaGkV-.js","./toggle-BfrQLxbv.js","./form-5CBmFjhZ.js","./alert-cwX3fWUu.js","./trash-2-Bn-rv3EX.js","./json-highlight-BbhGhG56.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{i as e,t}from"./jsx-runtime-DUAcabCT.js";import{t as n}from"./react-DbyrFoBd.js";import{i as r,n as i}from"./dist-BL2bKHuR.js";import{a,d as o,f as s,h as c,l,p as u,t as d,u as f}from"./orpc-DURDArDu.js";import{u as p}from"./esm-DfD3iRfG.js";import{F as m,I as h,L as g,P as _,R as v}from"./dist-9yav4OBD.js";import{t as y}from"./utils-DKOQrNEG.js";import{t as b}from"./createLucideIcon-C0O-yxZG.js";import{a as x,i as S,n as C,o as ee,r as te,t as ne}from"./underline-CoVrqZEk.js";import{A as w,B as re,C as T,E as ie,F as ae,G as oe,I as se,J as ce,K as le,T as ue,U as de,V as fe,W as pe,X as me,_ as he,b as ge,d as _e,f as E,g as ve,h as D,k as ye,l as O,m as be,o as xe,p as k,q as A,s as Se,u as Ce,v as we,x as Te,y as Ee}from"./breadcrumb-BV7HWDmi.js";import{a as De,n as Oe,o as ke,r as Ae,s as je,t as Me}from"./toast-UQxADDWA.js";import{t as Ne}from"./arrow-left-CWzmtp8T.js";import{t as Pe}from"./chevrons-up-down-DmmG8bmI.js";import{t as Fe}from"./textarea-BsZaGkV-.js";import{n as Ie,t as Le}from"./clipboard-D6ZMYUE8.js";import{A as Re,C as ze,G as j,H as Be,J as Ve,K as He,M as Ue,O as M,S as We,U as N,W as P,X as F,Y as Ge,Z as Ke,_ as qe,a as I,b as Je,g as Ye,h as Xe,i as L,k as R,n as Ze,o as z,p as Qe,q as $e,r as et,t as tt,v as nt,w as rt,x as it,y as at}from"./utils-BtfRir_X.js";import{n as ot,r as st,t as ct}from"./tablet-BnclzXSX.js";import{t as lt}from"./trash-2-Bn-rv3EX.js";import{a as ut,i as dt,n as ft,o as pt,r as mt,t as ht}from"./style-emitter-CDGtTiRG.js";import{n as gt,r as B,t as V}from"./use-label-CykSHq9A.js";import{D as _t,b as vt,d as yt,g as bt,h as xt,k as St,l as Ct,m as wt,p as Tt,t as Et,v as Dt,w as Ot,x as kt,y as At}from"./dist-ClOzYsk5.js";import{n as jt}from"./validation-CwFumc7a.js";import{t as Mt}from"./use-formatters-HWxEQWaC.js";import{t as Nt}from"./type-labels-DEpt0nSb.js";import{i as Pt,n as Ft,r as It,t as Lt}from"./card-L2-kK5VK.js";import{t as Rt}from"./skeleton-BnBM1862.js";import{$ as zt,Ct as Bt,Dt as Vt,F as Ht,I as H,It as Ut,L as Wt,P as Gt,Pt as U,R as Kt,Tt as qt,Z as Jt,_t as Yt,a as Xt,c as Zt,dt as Qt,f as $t,ht as en,m as tn,nt as nn,o as rn,p as an,rt as on,s as sn,tt as cn,u as ln,vt as un,wt as dn,yt as fn,zt as pn}from"./index-8CVr3Qp5.js";import{t as W}from"./input-xYuLUQID.js";import{t as mn}from"./toggle-BfrQLxbv.js";import{a as hn,f as gn,i as _n,n as vn,p as yn,t as bn}from"./form-5CBmFjhZ.js";import{t as xn}from"./valibot-D1tw6tkr.js";import{i as Sn,n as Cn,r as wn,t as Tn}from"./tooltip-Dm_CbtVl.js";import{t as En}from"./entries-MizUUcD8.js";import{t as Dn}from"./meta-box-field-gLyOLbwB.js";var On=b(`ellipsis-vertical`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`12`,cy:`5`,r:`1`,key:`gxeob9`}],[`circle`,{cx:`12`,cy:`19`,r:`1`,key:`lyex9k`}]]),kn=b(`square-dashed`,[[`path`,{d:`M5 3a2 2 0 0 0-2 2`,key:`y57alp`}],[`path`,{d:`M19 3a2 2 0 0 1 2 2`,key:`18rm91`}],[`path`,{d:`M21 19a2 2 0 0 1-2 2`,key:`1j7049`}],[`path`,{d:`M5 21a2 2 0 0 1-2-2`,key:`sbafld`}],[`path`,{d:`M9 3h1`,key:`1yesri`}],[`path`,{d:`M9 21h1`,key:`15o7lz`}],[`path`,{d:`M14 3h1`,key:`1ec4yj`}],[`path`,{d:`M14 21h1`,key:`v9vybs`}],[`path`,{d:`M3 9v1`,key:`1r0deq`}],[`path`,{d:`M21 9v1`,key:`mxsmne`}],[`path`,{d:`M3 14v1`,key:`vnatye`}],[`path`,{d:`M21 14v1`,key:`169vum`}]]),An=b(`text-align-center`,[[`path`,{d:`M21 5H3`,key:`1fi0y6`}],[`path`,{d:`M17 12H7`,key:`16if0g`}],[`path`,{d:`M19 19H5`,key:`vjpgq2`}]]),jn=b(`text-align-end`,[[`path`,{d:`M21 5H3`,key:`1fi0y6`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M21 19H7`,key:`4cu937`}]]),Mn=b(`clipboard-paste`,[[`path`,{d:`M11 14h10`,key:`1w8e9d`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v1.344`,key:`1e62lh`}],[`path`,{d:`m17 18 4-4-4-4`,key:`z2g111`}],[`path`,{d:`M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 1.793-1.113`,key:`bjbb7m`}],[`rect`,{x:`8`,y:`2`,width:`8`,height:`4`,rx:`1`,key:`ublpy`}]]),Nn=b(`copy-plus`,[[`line`,{x1:`15`,x2:`15`,y1:`12`,y2:`18`,key:`1p7wdc`}],[`line`,{x1:`12`,x2:`18`,y1:`15`,y2:`15`,key:`1nscbv`}],[`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`}]]),Pn=b(`corner-left-up`,[[`path`,{d:`M14 9 9 4 4 9`,key:`1af5af`}],[`path`,{d:`M20 20h-7a4 4 0 0 1-4-4V4`,key:`1blwi3`}]]),Fn=b(`eye`,[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`,key:`1nclc0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),In=b(`message-circle-more`,[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}],[`path`,{d:`M8 12h.01`,key:`czm47f`}],[`path`,{d:`M12 12h.01`,key:`1mp3jc`}],[`path`,{d:`M16 12h.01`,key:`1l6xoz`}]]),Ln=b(`message-circle`,[[`path`,{d:`M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719`,key:`1sd12s`}]]),Rn=b(`pencil`,[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]),zn=b(`play`,[[`path`,{d:`M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z`,key:`10ikf1`}]]),Bn=b(`redo-2`,[[`path`,{d:`m15 14 5-5-5-5`,key:`12vg1m`}],[`path`,{d:`M20 9H9.5A5.5 5.5 0 0 0 4 14.5A5.5 5.5 0 0 0 9.5 20H13`,key:`6uklza`}]]),Vn=b(`refresh-cw`,[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]),Hn=b(`undo-2`,[[`path`,{d:`M9 14 4 9l5-5`,key:`102s5s`}],[`path`,{d:`M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11`,key:`f3b9sd`}]]),Un=b(`ungroup`,[[`rect`,{x:`11`,y:`14`,width:`10`,height:`7`,rx:`2`,key:`nfm8rk`}],[`rect`,{x:`3`,y:`3`,width:`10`,height:`7`,rx:`2`,key:`1ljebb`}]]),Wn=b(`zoom-in`,[[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`,key:`13gj7c`}],[`line`,{x1:`11`,x2:`11`,y1:`8`,y2:`14`,key:`1vmskp`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`,key:`durymu`}]]),Gn=b(`zoom-out`,[[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`,key:`13gj7c`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`,key:`durymu`}]]),Kn=new Set([`id`,`title`,`role`,`lang`,`dir`]),qn=/^[a-z][a-z0-9-]*$/;function Jn(e){let t=e.toLowerCase();return!qn.test(t)||t.startsWith(`data-plumix-`)?!1:t.startsWith(`aria-`)||t.startsWith(`data-`)?!0:Kn.has(t)}var Yn=[`div`,`section`,`article`,`aside`,`header`,`footer`,`nav`,`main`,`figure`],Xn=new Set(Yn);function Zn(e){return e!==void 0&&Xn.has(e)?e:void 0}var G=e(n(),1);Object.freeze({entry:null,siteSettings:Object.freeze({}),theme:null,parent:null,depth:0,locale:`en`,shortcodes:null,editing:!1});function K(e){return Array.isArray(e)?e.every(e=>typeof e==`object`&&!!e&&typeof e.id==`string`&&typeof e.name==`string`):!1}Object.freeze({});var Qn=`0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-`,$n=12;function er(){let e=new Uint8Array($n);globalThis.crypto.getRandomValues(e);let t=``;for(let n of e)t+=Qn.charAt(n&63);return t}function tr(e){return e.map(e=>{let t={};for(let[n,r]of Object.entries(e.attrs??{}))t[n]=K(r)?tr(r):r;return{...e,id:er(),attrs:t}})}function nr(e){return{version:`plumix.v2`,blocks:e}}function rr(e){if(typeof e!=`object`||!e)return!1;let t=e;return t.version===`plumix.v2`&&K(t.blocks)}function ir(e){let t=[];for(let n of e){let e=n.variations??[],r=e.filter(e=>(e.scope??[`inserter`]).includes(`inserter`)),i=e.some(e=>e.scope?.includes(`block`));for(let e of r)t.push({name:n.name,slug:e.slug,title:e.title,description:e.description,category:n.category,icon:e.icon,keywords:e.keywords,attrs:e.attrs,innerBlocks:e.innerBlocks,example:e.example});(e.length===0||i)&&t.push({name:n.name,slug:n.name,title:n.title??n.name,description:n.description,category:n.category,icon:n.icon,keywords:n.keywords})}return t}var q=e(t(),1),ar={title:{id:`editor.document.title`},slug:{id:`editor.document.slug`},excerpt:{id:`editor.document.excerpt`},parent:{id:`editor.document.parent`},noParent:{id:`editor.document.parent.none`}},or=`__none__`;function sr({boxes:e,initialMeta:t,onMetaChange:n}){let r=V(),i=gn({defaultValues:{meta:t}}),a=yn({control:i.control,name:`meta`}),o=(0,G.useRef)(n);return(0,G.useEffect)(()=>{o.current=n}),(0,G.useEffect)(()=>{o.current(a)},[a]),(0,q.jsx)(bn,{...i,children:e.map(e=>(0,q.jsxs)(`section`,{className:`flex flex-col gap-3`,"data-testid":`entry-meta-box-${e.id}`,children:[(0,q.jsx)(`h3`,{className:`text-sm font-medium`,children:r(e.label)}),e.fields.map(e=>(0,q.jsx)(Dn,{field:e,name:`meta.${e.key}`},e.key))]},e.id))})}function cr({title:e,slug:t,onSlugChange:n,excerpt:r,parent:i,taxonomies:a,metaBoxes:o}){let s=V();return(0,q.jsxs)(`div`,{className:`flex flex-col gap-4 px-4 py-4`,"data-testid":`entry-document-panel`,children:[e?(0,q.jsxs)(M,{className:`gap-1.5`,children:[(0,q.jsx)(R,{htmlFor:`entry-title-input`,children:s(ar.title)}),(0,q.jsx)(W,{id:`entry-title-input`,type:`text`,value:e.value,onChange:t=>{e.onChange(t.target.value)},"data-testid":`plumix-editor-title-input`})]}):null,(0,q.jsxs)(M,{className:`gap-1.5`,children:[(0,q.jsx)(R,{htmlFor:`entry-slug-input`,children:s(ar.slug)}),(0,q.jsx)(W,{id:`entry-slug-input`,type:`text`,value:t,onChange:e=>{n(e.target.value)},"data-testid":`entry-slug-input`})]}),i?(0,q.jsxs)(M,{className:`gap-1.5`,children:[(0,q.jsx)(R,{htmlFor:`entry-parent-select`,children:s(ar.parent)}),(0,q.jsxs)(Gt,{value:i.value===null?or:String(i.value),onValueChange:e=>{i.onChange(e===or?null:Number(e))},children:[(0,q.jsx)(Wt,{id:`entry-parent-select`,className:`w-full`,"data-testid":`entry-parent-select`,children:(0,q.jsx)(Kt,{})}),(0,q.jsxs)(Ht,{children:[(0,q.jsx)(H,{value:or,children:s(ar.noParent)}),i.options.map(e=>(0,q.jsx)(H,{value:String(e.id),"data-testid":`entry-parent-select-option-${e.id}`,children:e.title},e.id))]})]})]}):null,a?.map(e=>(0,q.jsxs)(M,{className:`gap-1.5`,children:[(0,q.jsx)(R,{htmlFor:`entry-taxonomy-${e.name}`,children:e.label}),(0,q.jsx)(De,{id:`entry-taxonomy-${e.name}`,options:e.options,value:e.value,onChange:e.onChange,testId:`entry-taxonomy-${e.name}`})]},e.name)),r?(0,q.jsxs)(M,{className:`gap-1.5`,children:[(0,q.jsx)(R,{htmlFor:`entry-excerpt-input`,children:s(ar.excerpt)}),(0,q.jsx)(Fe,{id:`entry-excerpt-input`,rows:3,value:r.value,onChange:e=>{r.onChange(e.target.value)},className:`min-h-20`,"data-testid":`entry-excerpt-input`})]}):null,o&&o.boxes.length>0?(0,q.jsx)(sr,{boxes:o.boxes,initialMeta:o.initialMeta,onMetaChange:o.onMetaChange}):null]})}var lr=1e3;function ur(e){return!(e instanceof a)||e.code!==`CONFLICT`?!1:e.data.reason===`stale_expected_updated_at`}async function dr(e,t,n){if(!ur(e))return null;try{return(await t.fetchQuery({...d.entry.get.queryOptions({input:{id:n}}),staleTime:0})).updatedAt}catch{return null}}async function fr(e,t,n){return ur(e)?{kind:`recovered`,updatedAt:await dr(e,t,n)}:{kind:`failed`}}function pr(e,t){let n,r,i=()=>{if(r===void 0)return Promise.resolve();let t=r;return r=void 0,n=void 0,Promise.resolve(e(...t))};return{call(...e){r=e,clearTimeout(n),n=setTimeout(()=>void i(),t)},flush(){return clearTimeout(n),i()},cancel(){clearTimeout(n),n=void 0,r=void 0}}}function mr(e,t){return e===null?`none`:e.getTime()<t.getTime()?`stale`:`fresh`}function hr(e){return{key:e.name,label:e.label??e.name,type:`json`,inputType:e.type,referenceTarget:{kind:e.type,scope:e.accept===void 0?void 0:{accept:e.accept},valueShape:`object`}}}var gr=new WeakMap;function _r(e){let t=ln(e);if(!t)return;let n=gr.get(t);if(n)return n;let r=({field:e,rhf:n,disabled:r,testId:i,attrs:a})=>(0,q.jsx)(t,{field:hr(e),rhf:n,disabled:r,testId:i,attrs:a});return gr.set(t,r),r}var vr={restoring:{id:`editor.revisions.preview.restoring`},restore:{id:`editor.revisions.preview.restore`}};function yr({revisionUpdatedAt:e,revisionAuthor:t,relativeTime:n,onBackToLive:r,onRestore:a,isRestoring:o,restoreError:s=null}){let c=V();return(0,q.jsxs)(`div`,{"data-testid":`revision-preview-banner`,role:`status`,className:`flex shrink-0 flex-wrap items-center gap-3 border-b border-amber-200 bg-amber-50 px-4 py-2 text-sm text-amber-900 dark:bg-amber-950/40 dark:text-amber-100`,children:[(0,q.jsx)(`span`,{className:`font-medium`,children:(0,q.jsx)(i,{id:`editor.revisions.preview.title`,message:`Previewing revision`})}),(0,q.jsx)(`span`,{children:(0,q.jsx)(i,{id:`editor.revisions.preview.subtitle`,message:`from {when} by {author}`,values:{when:n(e),author:(0,q.jsx)(`bdi`,{children:t})},comment:`when: pre-formatted relative-time like '2 hours ago'; author: the user's display name or email`})}),(0,q.jsxs)(`div`,{className:`ms-auto flex gap-2`,children:[(0,q.jsx)(U,{variant:`outline`,size:`sm`,"data-testid":`revision-preview-back-to-live`,onClick:r,children:(0,q.jsx)(i,{id:`editor.revisions.preview.backToLive`,message:`← Back to live`})}),(0,q.jsx)(U,{variant:`default`,size:`sm`,"data-testid":`revision-preview-restore`,onClick:a,disabled:o,children:c(o?vr.restoring:vr.restore)})]}),s===null?null:(0,q.jsx)(`div`,{"data-testid":`revision-preview-restore-error`,role:`alert`,className:`text-destructive basis-full text-xs`,children:s})]})}var br={yourDraft:{id:`editor.staleDraft.yourDraft`},liveNow:{id:`editor.staleDraft.liveNow`}};function xr({open:e,autosaveSnapshot:t,liveSnapshot:n,onUseMine:r,onUseTheirs:a,isResolving:o}){let[s,c]=(0,G.useState)(!1),l=V();return(0,q.jsx)(be,{open:e,children:(0,q.jsxs)(D,{className:`max-w-4xl`,showCloseButton:!1,"data-testid":`stale-draft-dialog`,onEscapeKeyDown:e=>e.preventDefault(),onPointerDownOutside:e=>e.preventDefault(),children:[(0,q.jsxs)(we,{children:[(0,q.jsx)(Ee,{children:(0,q.jsx)(i,{id:`editor.staleDraft.title`,message:`Your draft is out of date`})}),(0,q.jsx)(ve,{children:(0,q.jsx)(i,{id:`editor.staleDraft.description`,message:`Someone else published changes to this entry while you had pending edits. Pick which version to keep before continuing.`})})]}),s?(0,q.jsxs)(`div`,{"data-testid":`stale-draft-compare-panes`,"aria-live":`polite`,className:`grid grid-cols-1 gap-3 md:grid-cols-2`,children:[(0,q.jsx)(Sr,{label:l(br.yourDraft),snapshot:t}),(0,q.jsx)(Sr,{label:l(br.liveNow),snapshot:n})]}):null,(0,q.jsxs)(he,{className:`sm:justify-between`,children:[(0,q.jsx)(U,{variant:`ghost`,size:`sm`,"data-testid":`stale-draft-compare`,onClick:()=>c(e=>!e),children:s?(0,q.jsx)(i,{id:`editor.staleDraft.hideComparison`,message:`Hide comparison`}):(0,q.jsx)(i,{id:`editor.staleDraft.compare`,message:`Compare`})}),(0,q.jsxs)(`div`,{className:`flex gap-2`,children:[(0,q.jsx)(U,{variant:`outline`,size:`sm`,"data-testid":`stale-draft-use-theirs`,onClick:a,disabled:o,children:o?(0,q.jsx)(i,{id:`editor.staleDraft.discarding`,message:`Discarding…`}):(0,q.jsx)(i,{id:`editor.staleDraft.useTheirs`,message:`Use theirs`})}),(0,q.jsx)(U,{variant:`default`,size:`sm`,"data-testid":`stale-draft-use-mine`,onClick:r,disabled:o,children:(0,q.jsx)(i,{id:`editor.staleDraft.useMine`,message:`Use mine`})})]})]})]})})}function Sr({label:e,snapshot:t}){return(0,q.jsxs)(`section`,{children:[(0,q.jsx)(`div`,{className:`text-muted-foreground mb-1 text-xs font-medium`,children:e}),(0,q.jsx)(`pre`,{className:`bg-muted max-h-72 overflow-auto rounded-md p-2 text-xs`,children:JSON.stringify(t,null,2)})]})}function Cr(e,t){return{channel:e,message:t}}function wr({role:e,post:t}){let n=!1,r=()=>void 0,i=new Promise(e=>{r=e}),a=()=>{n||(n=!0,r())};return e===`initiator`&&t({kind:`hello`}),{onMessage(n){e===`initiator`&&n.kind===`ack`&&a(),e===`responder`&&n.kind===`hello`&&(t({kind:`ack`}),a())},retry(){!n&&e===`initiator`&&t({kind:`hello`})},isReady:()=>n,whenReady:()=>i}}function Tr(e){return`kind`in e&&typeof e.kind==`string`}function Er(e,t,n,r){if(n!==r||typeof t!=`object`||!t)return null;let i=t;return i.channel!==e||i.message===void 0?null:i.message}var Dr=`plumix.editor`,Or=250;function kr({store:e,frameWindow:t,origin:n,onGeometry:r,onWheel:i,onKey:a,onRequestAdd:o,onClipboard:s,config:c}){let l=e=>{t.postMessage(Cr(Dr,e),n)},u=wr({role:`initiator`,post:l}),d=()=>{l({type:`host:tree`,tree:e.getState().tree})},f=()=>{c&&l({type:`host:config`,addBlockLabel:c.addBlockLabel})},p=()=>{l({type:`host:xray`,enabled:e.getState().xray})},m=t=>{let c=Er(Dr,t.data,t.origin,n);if(!c)return;if(Tr(c)){u.onMessage(c);return}let l=c;switch(l.type){case`canvas:ready`:f(),p(),d();break;case`canvas:select`:e.getState().select(l.id,{additive:l.additive});break;case`canvas:hover`:e.getState().setHover(l.id);break;case`canvas:geometry`:r?.(l.rects,l.slots??[]);break;case`canvas:wheel`:i?.({deltaX:l.deltaX,deltaY:l.deltaY,zoomIntent:l.zoomIntent,clientX:l.clientX,clientY:l.clientY});break;case`canvas:key`:a?.({down:l.down,code:l.code,shiftKey:l.shiftKey});break;case`canvas:requestAdd`:o?.({parentId:l.parentId,slotKey:l.slotKey});break;case`canvas:clipboard`:s?.(l.op);break}};window.addEventListener(`message`,m);let h=e.getState().tree,g=e.getState().xray,_=e.subscribe(e=>{e.tree!==h&&(h=e.tree,d()),e.xray!==g&&(g=e.xray,p())}),v=setInterval(()=>u.retry(),Or),y=u.whenReady();return y.then(()=>clearInterval(v)),{whenReady:y,pushLoaderData:e=>l({type:`host:loader-data`,data:e}),dispose:()=>{clearInterval(v),window.removeEventListener(`message`,m),_()}}}function J(e,t){for(let n of e){if(n.id===t)return n;for(let e of Object.values(n.attrs??{})){if(!K(e))continue;let n=J(e,t);if(n)return n}}}function Y(e,t,n=null){for(let r of e){if(r.id===t)return n;for(let e of Object.values(r.attrs??{})){if(!K(e))continue;let n=Y(e,t,r.id);if(n!==null)return n}}return null}function Ar(e){let t=[],n=(e,r,i)=>{for(let a of e){let e=si(a);t.push({id:a.id,name:a.name,label:a.label,depth:r,parentId:i,hasSlot:e!==null});let o=e===null?void 0:a.attrs?.[e];K(o)&&n(o,r+1,a.id)}};return n(e,0,null),t}function jr(e,t,n){let r=e.slice(),[i]=r.splice(t,1);return i&&r.splice(n,0,i),r}function Mr(e,t,n,r,i){let a=e.findIndex(e=>e.id===t),o=e.findIndex(e=>e.id===n);if(a===-1||o===-1)return null;let s=e[a];if(!s)return null;let c=jr(e,a,o),l=c[o-1],u=c[o+1],d=s.depth+Math.round(r/i),f=l?l.hasSlot?l.depth+1:l.depth:0,p=u?u.depth:0,m=Nr(c,o,Math.max(p,Math.min(d,f)),l);return{parentId:m,index:c.slice(0,o).filter(e=>e.id!==t&&e.parentId===m).length}}function Nr(e,t,n,r){return n===0||!r?null:n===r.depth?r.parentId:n>r.depth?r.id:e.slice(0,t).reverse().find(e=>e.depth===n)?.parentId??null}function Pr(e,t,n,r){if(n.parentId===t)return e;let i=J(e,t);return!i||r&&!r.includes(i.name)||!Fr(e,n)||n.parentId!==null&&li(i,n.parentId)?e:fi(ui(e,t),i,n)}function Fr(e,t){if(t.parentId===null)return!0;let n=J(e,t.parentId);if(!n)return!1;let r=t.slotKey??si(n);if(r===null)return!1;let i=n.attrs?.[r];return i===void 0||K(i)}function Ir(e,t,n,r){return r&&!r.includes(t.name)||!Fr(e,n)?e:fi(e,t,n)}function Lr(e,t){if(t.size===0)return e;let n=e.filter(e=>!t.has(e.id)),r=n.length!==e.length,i=n.map(e=>{let n=e.attrs;if(!n)return e;let i;for(let[e,r]of Object.entries(n)){if(!K(r))continue;let a=Lr(r,t);a!==r&&((i??={...n})[e]=a)}return i?(r=!0,{...e,attrs:i}):e});return r?i:e}function Rr(e,t){let n=J(e,t);if(!n)return{tree:e,newId:null};let[r]=tr([n]);if(!r)return{tree:e,newId:null};let i=Y(e,t);return{tree:fi(e,r,{parentId:i,index:oi(e,i).findIndex(e=>e.id===t)+1}),newId:r.id}}function zr(e){let t=ci(e),n=t.length===1?t[0]:void 0;if(n===void 0)return null;let r=e.attrs?.[n];return K(r)&&r.length>0?r:null}function Br(e,t){let n=J(e,t);return n?zr(n)!==null:!1}function Vr(e,t){let n=J(e,t);if(!n)return null;let r=zr(n);if(!r)return null;let i=Y(e,t),a=oi(e,i).findIndex(e=>e.id===t),o=Lr(e,new Set([t]));return r.forEach((e,t)=>{o=fi(o,e,{parentId:i,index:a+t})}),{tree:o,childIds:r.map(e=>e.id)}}function Hr(e,t,n){let r=new Set(Gr(e,t));if(r.size===0)return null;let i=Y(e,[...r][0]??``),a=oi(e,i);if([...r].some(t=>Y(e,t)!==i))return null;let o=a.filter(e=>r.has(e.id));if(o.length===0)return null;let s={id:n,name:`core/group`,attrs:{content:o}},c=a.findIndex(e=>r.has(e.id));return{tree:fi(Lr(e,r),s,{parentId:i,index:c}),groupId:n}}function Ur(e,t){let n=new Set(Gr(e,t)),r=[],i=e=>{for(let t of e){if(n.has(t.id)){r.push(t);continue}for(let e of ci(t)){let n=t.attrs?.[e];K(n)&&i(n)}}};return i(e),r}function Wr(e,t,n){let r=tr(t);if(r.length===0)return{tree:e,newIds:[]};let i=n?Y(e,n):null,a=oi(e,i),o=n?a.findIndex(e=>e.id===n):-1,s=o>=0?o+1:a.length,c=e,l=[];return r.forEach((e,t)=>{c=fi(c,e,{parentId:i,index:s+t}),l.push(e.id)}),{tree:c,newIds:l}}function Gr(e,t){return[...t].filter(n=>{let r=Y(e,n);for(;r!==null;){if(t.has(r))return!1;r=Y(e,r)}return!0})}function Kr(e,t,n){let r=Y(e,t),i=oi(e,r),a=i.findIndex(e=>e.id===t);if(a===-1)return e;let o=a+n;return o<0||o>=i.length?e:Pr(e,t,{parentId:r,index:o})}var qr=`core/table`,Jr=`core/table-header-row`,Yr=`core/table-header-cell`,Xr=`core/table-body-row`,Zr=`core/table-cell`;function Qr(e){let t=e.attrs?.cells;return K(t)?t:[]}function $r(e,t){let n=t;for(;n;){if(J(e,n)?.name===qr)return n;n=Y(e,n)}return null}function ei(e){return e.reduce((e,t)=>Math.max(e,Qr(t).length),0)}function ti(e,t){let n=J(e,t);if(n?.name!==qr)return e;let r=n.attrs?.rows;return!K(r)||r.length===0?e:ai(e,t,r.map(e=>{let t=e.name===Jr?Yr:Zr,n={id:er(),name:t};return{...e,attrs:{...e.attrs,cells:[...Qr(e),n]}}}))}function ni(e,t){let n=J(e,t);if(n?.name!==qr)return e;let r=n.attrs?.rows,i=K(r)?r:[],a=Array.from({length:Math.max(ei(i),1)},()=>({id:er(),name:Zr})),o={id:er(),name:Xr,attrs:{cells:a}};return ai(e,t,[...i,o])}function ri(e,t){let n=J(e,t);if(n?.name!==qr)return e;let r=n.attrs?.rows;return!K(r)||ei(r)<=1?e:ai(e,t,r.map(e=>{let t=Qr(e);return t.length>0?{...e,attrs:{...e.attrs,cells:t.slice(0,-1)}}:e}))}function ii(e,t){let n=J(e,t);if(n?.name!==qr)return e;let r=n.attrs?.rows,i=K(r)?r:[];return i.length<=1?e:ai(e,t,i.slice(0,-1))}function ai(e,t,n){return e.map(e=>{if(e.id===t)return{...e,attrs:{...e.attrs,rows:n}};let r=e.attrs;if(!r)return e;let i;for(let[e,a]of Object.entries(r)){if(!K(a))continue;let o=ai(a,t,n);o!==a&&((i??={...r})[e]=o)}return i?{...e,attrs:i}:e})}function oi(e,t){if(t===null)return e;let n=J(e,t);if(!n)return[];let r=si(n),i=r===null?void 0:n.attrs?.[r];return K(i)?i:[]}function si(e){for(let[t,n]of Object.entries(e.attrs??{}))if(K(n))return t;return null}function ci(e){let t=[];for(let[n,r]of Object.entries(e.attrs??{}))K(r)&&t.push(n);return t}function li(e,t){if(e.id===t)return!0;for(let n of Object.values(e.attrs??{}))if(K(n)&&n.some(e=>li(e,t)))return!0;return!1}function ui(e,t){return Lr(e,new Set([t]))}function di(e,t){return Math.max(0,Math.min(e,t))}function fi(e,t,n){if(n.parentId===null){let r=di(n.index,e.length);return[...e.slice(0,r),t,...e.slice(r)]}return e.map(e=>{if(e.id===n.parentId){let r=n.slotKey??si(e);if(r===null)return e;let i=e.attrs?.[r];if(i!==void 0&&!K(i))return e;let a=K(i)?i:[],o=di(n.index,a.length);return{...e,attrs:{...e.attrs,[r]:[...a.slice(0,o),t,...a.slice(o)]}}}let r=e.attrs;if(!r)return e;let i;for(let[e,a]of Object.entries(r)){if(!K(a))continue;let o=fi(a,t,n);o!==a&&((i??={...r})[e]=o)}return i?{...e,attrs:i}:e})}function pi(e){return JSON.stringify({kind:`plumix/blocks`,version:1,blocks:e})}function mi(e){let t;try{t=JSON.parse(e)}catch{return null}if(typeof t!=`object`||!t||t.kind!==`plumix/blocks`)return null;let n=t.blocks;return K(n)?n:null}function hi(e){return t=>!e.get(t.name)?.requiresParent}var gi={c:`copy`,x:`cut`,v:`paste`};function _i(e){if(!(e.metaKey||e.ctrlKey))return null;let t=gi[e.key.toLowerCase()];if(!t)return null;let n=e.target;return n?.isContentEditable||/^(INPUT|TEXTAREA|SELECT)$/.test(n?.tagName??``)||t!==`paste`&&!(window.getSelection()?.isCollapsed??!0)?null:t}function vi(e,t=navigator.clipboard,n){let r=async()=>{let{tree:n,selectedIds:r}=e.getState(),i=Ur(n,r);return i.length===0?!1:(await t.writeText(pi(i)),!0)},i=async()=>{await r()&&e.getState().removeSelected()},a=async()=>{let r=mi(await t.readText());if(!r)return;let i=n?r.filter(n):r;i.length>0&&e.getState().pasteBlocks(i)};return{copy:()=>r().then(()=>void 0),cut:i,paste:a,run:e=>{switch(e){case`copy`:return r().then(()=>void 0);case`cut`:return i();case`paste`:return a()}}}}function yi({className:e,children:t,...n}){return(0,q.jsxs)(m,{"data-slot":`scroll-area`,className:y(`relative`,e),...n,children:[(0,q.jsx)(v,{"data-slot":`scroll-area-viewport`,className:`focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1`,children:t}),(0,q.jsx)(bi,{}),(0,q.jsx)(_,{})]})}function bi({className:e,orientation:t=`vertical`,...n}){return(0,q.jsx)(h,{"data-slot":`scroll-area-scrollbar`,orientation:t,className:y(`flex touch-none p-px transition-colors select-none`,t===`vertical`&&`h-full w-2.5 border-l border-l-transparent`,t===`horizontal`&&`h-2.5 flex-col border-t border-t-transparent`,e),...n,children:(0,q.jsx)(g,{"data-slot":`scroll-area-thumb`,className:`bg-border relative flex-1 rounded-full`})})}var xi=`core/pattern-ref`,Si=`content`;function Ci(e,t,n){return e.get(t)?.inputs?.find(e=>e.type===`slot`&&e.name===n)?.allowedBlocks}var wi=`uncategorized`;function Ti(e,{capabilities:t,query:n,allowed:r,parentName:i}){let a=n?.trim().toLowerCase()??``,o=[...e].filter(e=>e.inserter!==!1&&(!e.capability||t.has(e.capability))&&(!r||r.includes(e.name))&&(!e.requiresParent||i!==void 0&&e.requiresParent.includes(i))),s=new Map;for(let e of ir(o)){if(a&&!Ai(e,a))continue;let t=e.category??wi,n=s.get(t);n||s.set(t,n=[]),n.push(e)}return[...s].map(([e,t])=>({category:e,entries:t}))}function Ei(e,t){let n=t?.trim().toLowerCase()??``;return n?e.filter(e=>e.name.toLowerCase().includes(n)||gt(e.title).toLowerCase().includes(n)||(e.keywords??[]).some(e=>gt(e).toLowerCase().includes(n))):e}function Di(e,t){let n=e.get(t.name),r={...n?.defaults,...t.attrs};t.innerBlocks&&(r[Si]=t.innerBlocks);for(let e of n?.inputs??[])e.type===`slot`&&e.defaultChildren&&r[e.name]===void 0&&(r[e.name]=e.defaultChildren);for(let t of Object.keys(r)){let n=r[t];K(n)&&(r[t]=n.map(t=>Oi(t,e)))}let i={id:`seed`,name:t.name,attrs:r,...n?.defaultStyles?{style:n.defaultStyles}:{}},[a=i]=tr([i]);return a}function Oi(e,t){let n=t.get(e.name),r={...n?.defaults,...e.attrs},i={};for(let[e,n]of Object.entries(r))i[e]=K(n)?n.map(e=>Oi(e,t)):n;let a=e.style??n?.defaultStyles;return{...e,attrs:Object.keys(i).length>0?i:void 0,...a?{style:a}:{}}}function ki(e){return e.insert===`reference`?tr([{id:`seed`,name:xi,attrs:{slug:e.name}}]):tr(e.content)}function Ai(e,t){return e.name.toLowerCase().includes(t)||gt(e.title).toLowerCase().includes(t)?!0:(e.keywords??[]).some(e=>gt(e).toLowerCase().includes(t))}var ji=Yt;function Mi({name:e,className:t}){return(0,q.jsx)((e?ji[e]:void 0)??un,{className:t})}var Ni=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},Pi=(e=>e?Ni(e):Ni),Fi=e=>e;function Ii(e,t=Fi){let n=G.useSyncExternalStore(e.subscribe,G.useCallback(()=>t(e.getState()),[e,t]),G.useCallback(()=>t(e.getInitialState()),[e,t]));return G.useDebugValue(n),n}var Li=class e extends Error{static{e.prototype.name=`EditorError`}constructor(e){super(e)}static missingProvider(){return new e(`useEditorStore must be used within <EditorProvider/>.`)}},Ri=.25,zi=64,Bi=32,Vi=.85,Hi=e=>Math.min(2,Math.max(Ri,e));function Ui(e,t,n){return Math.min(n-zi,Math.max(zi-t,e))}function Wi(e,t,n,r,i,a){return{panX:Ui(e,n,i),panY:Ui(t,r,a)}}function Gi(e,t,n,r){let i=Hi(Math.min(1,n/e)),a=t*i;return{zoom:i,panX:Math.round((n-e*i)/2),panY:Math.round(a<r?(r-a)/2:Bi)}}function Ki(e,t,n,r){let i=Hi(t),a=(n-e.panX)/e.zoom,o=(r-e.panY)/e.zoom;return{zoom:i,panX:n-a*i,panY:r-o*i}}function qi(e,t,n){let r=Hi(Math.min(t*Vi/e.width,n*Vi/e.height));return{zoom:r,panX:t/2-(e.x+e.width/2)*r,panY:n/2-(e.y+e.height/2)*r}}function Ji(e){return{past:[],present:e,presentKey:null,future:[]}}function X(e,t,n){return n!==null&&n===e.presentKey?{...e,present:t,future:[]}:{past:[...e.past,{value:e.present,coalesceKey:e.presentKey}].slice(-100),present:t,presentKey:n,future:[]}}function Yi(e){let t=e.past.at(-1);return t?{past:e.past.slice(0,-1),present:t.value,presentKey:t.coalesceKey,future:[{value:e.present,coalesceKey:e.presentKey},...e.future]}:e}function Xi(e){let[t,...n]=e.future;return t?{past:[...e.past,{value:e.present,coalesceKey:e.presentKey}],present:t.value,presentKey:t.coalesceKey,future:n}:e}function Zi(e){return e.past.length>0}function Qi(e){return e.future.length>0}function $i(e){return e===`tablet`?`medium`:e===`mobile`?`small`:`large`}var ea=1280;function ta(e,t){return e===`tablet`?t.tablet:e===`mobile`?t.mobile:ea}function Z(e,t,n){let r=e.map(e=>na(e,t,n));return r.some((t,n)=>t!==e[n])?r:e}function na(e,t,n){if(e.id===t)return n(e);let r=e.attrs;if(!r)return e;let i;for(let[e,a]of Object.entries(r)){if(!K(a))continue;let o=Z(a,t,n);o!==a&&((i??={...r})[e]=o)}return i?{...e,attrs:i}:e}function ra(e,t,n,r){let i=e.style??{},a=i[t]??{},o;if(r===null){if(!(n in a))return e;let{[n]:t,...r}=a;o=r}else o={...a,[n]:r};let s={...i};Object.keys(o).length===0?delete s[t]:s[t]=o;let c=Object.keys(s).length===0?void 0:s;return{...e,style:c}}function ia(e,t,n){let r=e.hidden??{};if(!!r[t]===n)return e;let i={...r};n?i[t]=!0:delete i[t];let a=Object.keys(i).length===0?void 0:i;return{...e,hidden:a}}function aa(e,t,n,r){let i=e.style??{},a=i[t]??{};if(!(n in a)||r in a)return e;let o={};for(let[e,t]of Object.entries(a))o[e===n?r:e]=t;let s={...i};return s[t]=o,{...e,style:s}}function oa(e,t,n){let r=e.htmlAttrs??{},i;if(n===null){if(!(t in r))return e;let{[t]:n,...a}=r;i=a}else i={...r,[t]:n};let a=Object.keys(i).length===0?void 0:i;return{...e,htmlAttrs:a}}function sa(e,t,n){let r=e.htmlAttrs??{};if(!(t in r)||n in r)return e;let i={};for(let[e,a]of Object.entries(r))i[e===t?n:e]=a;return{...e,htmlAttrs:i}}function ca(e){return Pi(t=>({tree:e?.tree??[],selectedIds:new Set,activeId:null,hoverId:null,device:e?.device??`desktop`,xray:!1,zoom:e?.zoom??1,panX:0,panY:0,viewportW:0,viewportH:0,breakpoints:e?.breakpoints??ht,zoomFit:!0,dragSpec:null,movingId:null,history:Ji(e?.tree??[]),rightPanel:`block`,jsonOpen:!1,setTree:e=>t({tree:e}),insertBlock:(e,n)=>t(t=>{let r=Math.max(0,Math.min(n,t.tree.length)),i=[...t.tree.slice(0,r),e,...t.tree.slice(r)];return{tree:i,activeId:e.id,selectedIds:new Set([e.id]),history:X(t.history,i,null)}}),insertBlocks:(e,n)=>t(t=>{let r=e[0];if(!r)return{};let i=Math.max(0,Math.min(n,t.tree.length)),a=[...t.tree.slice(0,i),...e,...t.tree.slice(i)];return{tree:a,activeId:r.id,selectedIds:new Set([r.id]),history:X(t.history,a,null)}}),insertBlockInto:(e,n,r)=>t(t=>{let i=Ir(t.tree,e,n,r);return i===t.tree?{}:{tree:i,activeId:e.id,selectedIds:new Set([e.id]),history:X(t.history,i,null)}}),moveBlock:(e,n,r)=>t(t=>{let i=Pr(t.tree,e,n,r);return i===t.tree?{}:{tree:i,history:X(t.history,i,null)}}),addTableColumn:e=>t(t=>{let n=ti(t.tree,e);return n===t.tree?{}:{tree:n,history:X(t.history,n,null)}}),addTableRow:e=>t(t=>{let n=ni(t.tree,e);return n===t.tree?{}:{tree:n,history:X(t.history,n,null)}}),removeTableColumn:e=>t(t=>{let n=ri(t.tree,e);return n===t.tree?{}:{tree:n,history:X(t.history,n,null)}}),removeTableRow:e=>t(t=>{let n=ii(t.tree,e);return n===t.tree?{}:{tree:n,history:X(t.history,n,null)}}),updateBlockAttrs:(e,n)=>t(t=>{let r=Z(t.tree,e,e=>({...e,attrs:{...e.attrs,...n}}));if(r===t.tree)return{};let i=`attr:${e}:${Object.keys(n).sort().join(`,`)}`;return{tree:r,history:X(t.history,r,i)}}),setBlockLabel:(e,n)=>t(t=>{let r=n.trim()||void 0,i=Z(t.tree,e,e=>({...e,label:r}));return i===t.tree?{}:{tree:i,history:X(t.history,i,`label:${e}`)}}),updateBlockStyle:(e,n,r,i)=>t(t=>{let a=Z(t.tree,e,e=>ra(e,n,r,i));if(a===t.tree)return{};let o=`style:${e}:${n}:${r}`;return{tree:a,history:X(t.history,a,o)}}),updateBlockHidden:(e,n,r)=>t(t=>{let i=Z(t.tree,e,e=>ia(e,n,r));if(i===t.tree)return{};let a=`hidden:${e}:${n}`;return{tree:i,history:X(t.history,i,a)}}),renameBlockStyleProperty:(e,n,r,i)=>t(t=>{let a=Z(t.tree,e,e=>aa(e,n,r,i));return a===t.tree?{}:{tree:a,history:X(t.history,a,null)}}),setBlockTagName:(e,n)=>t(t=>{let r=n.trim()||void 0,i=Z(t.tree,e,e=>({...e,tagName:r}));return i===t.tree?{}:{tree:i,history:X(t.history,i,null)}}),setBlockClassName:(e,n)=>t(t=>{let r=n.trim()||void 0,i=Z(t.tree,e,e=>({...e,className:r}));return i===t.tree?{}:{tree:i,history:X(t.history,i,`class:${e}`)}}),updateBlockHtmlAttr:(e,n,r)=>t(t=>{let i=Z(t.tree,e,e=>oa(e,n,r));if(i===t.tree)return{};let a=`htmlattr:${e}:${n}`;return{tree:i,history:X(t.history,i,a)}}),renameBlockHtmlAttr:(e,n,r)=>t(t=>{let i=Z(t.tree,e,e=>sa(e,n,r));return i===t.tree?{}:{tree:i,history:X(t.history,i,null)}}),select:(e,n)=>t(t=>{if(!n?.additive)return{selectedIds:new Set([e]),activeId:e};let r=new Set(t.selectedIds);return r.delete(e)?{selectedIds:r,activeId:t.activeId===e?[...r].at(-1)??null:t.activeId}:(r.add(e),{selectedIds:r,activeId:e})}),clearSelection:()=>t({selectedIds:new Set,activeId:null}),removeSelected:()=>t(e=>{let t=Lr(e.tree,e.selectedIds);return t===e.tree?{}:{tree:t,selectedIds:new Set,activeId:null,history:X(e.history,t,null)}}),duplicateSelected:()=>t(e=>{let t=e.tree,n=[];for(let r of Gr(t,e.selectedIds)){let e=Rr(t,r);t=e.tree,e.newId&&n.push(e.newId)}return t===e.tree?{}:{tree:t,selectedIds:new Set(n),activeId:n.at(-1)??null,history:X(e.history,t,null)}}),pasteBlocks:e=>t(t=>{let n=t.activeId;for(;n!==null;){let e=Y(t.tree,n);if(e===null)break;n=e}let{tree:r,newIds:i}=Wr(t.tree,e,n);return r===t.tree?{}:{tree:r,selectedIds:new Set(i),activeId:i.at(-1)??null,history:X(t.history,r,null)}}),groupSelected:()=>t(e=>{let t=Hr(e.tree,e.selectedIds,er());return t?{tree:t.tree,selectedIds:new Set([t.groupId]),activeId:t.groupId,history:X(e.history,t.tree,null)}:{}}),ungroupSelected:()=>t(e=>{if(e.activeId===null)return{};let t=Vr(e.tree,e.activeId);return t?{tree:t.tree,selectedIds:new Set(t.childIds),activeId:t.childIds.at(-1)??null,history:X(e.history,t.tree,null)}:{}}),selectParent:()=>t(e=>{if(!e.activeId)return{};let t=Y(e.tree,e.activeId);return t?{selectedIds:new Set([t]),activeId:t}:{}}),moveSelectedBy:e=>t(t=>{if(!t.activeId)return{};let n=Kr(t.tree,t.activeId,e);return n===t.tree?{}:{tree:n,history:X(t.history,n,null)}}),setHover:e=>t({hoverId:e}),setDevice:e=>t({device:e,zoomFit:!0}),toggleXray:()=>t(e=>({xray:!e.xray})),setRightPanel:e=>t({rightPanel:e}),setJsonOpen:e=>t({jsonOpen:e}),enableZoomFit:()=>t({zoomFit:!0}),setPan:(e,n)=>t({panX:e,panY:n,zoomFit:!1}),setView:({zoom:e,panX:n,panY:r})=>t({zoom:Hi(e),panX:n,panY:r,zoomFit:!1}),applyFitView:({zoom:e,panX:n,panY:r})=>t({zoom:Hi(e),panX:n,panY:r}),setViewport:(e,n)=>t(t=>t.viewportW===e&&t.viewportH===n?{}:{viewportW:e,viewportH:n}),zoomToCenter:e=>t(t=>{let n=Hi(e);return n===t.zoom?{}:t.viewportW===0?{zoom:n,zoomFit:!1}:{...Ki({zoom:t.zoom,panX:t.panX,panY:t.panY},n,t.viewportW/2,t.viewportH/2),zoomFit:!1}}),startBlockDrag:e=>t({dragSpec:e}),endBlockDrag:()=>t({dragSpec:null}),startMove:e=>t({movingId:e}),endMove:()=>t({movingId:null}),undo:()=>t(e=>{let t=Yi(e.history);return{history:t,tree:t.present}}),redo:()=>t(e=>{let t=Xi(e.history);return{history:t,tree:t.present}})}))}var la=(0,G.createContext)(null),ua=(0,G.createContext)(null);function da({initialTree:e,device:t,zoom:n,breakpoints:r,children:i}){let[a]=(0,G.useState)(()=>ca({tree:e,device:t,zoom:n,breakpoints:r})),o=(0,G.useRef)(null);return(0,q.jsx)(la.Provider,{value:a,children:(0,q.jsx)(ua.Provider,{value:o,children:i})})}function fa(){return(0,G.useContext)(ua)}function Q(e){let t=(0,G.useContext)(la);if(!t)throw Li.missingProvider();return Ii(t,e)}function pa(){let e=(0,G.useContext)(la);if(!e)throw Li.missingProvider();return e}function ma({registry:e,capabilities:t,patterns:n,onInsert:i,allowed:a,target:o,parentName:s}){let{i18n:c}=r(),[l,u]=(0,G.useState)(``),d=Q(e=>e.insertBlock),f=Q(e=>e.insertBlockInto),p=Q(e=>e.insertBlocks),m=Q(e=>e.startBlockDrag),h=Q(e=>e.tree.length),g=(0,G.useMemo)(()=>Ti(e,{capabilities:t,query:l,allowed:a,parentName:s}),[e,t,l,a,s]),_=(0,G.useMemo)(()=>Ei(n??[],l),[n,l]),v=e=>{o?f(e,{...o,index:2**53-1},a):d(e,h),i?.()},y=e=>{p(e,h),i?.()},b=g.length===0&&_.length===0,x=c._({id:`editor.catalog.searchLabel`,message:`Search blocks`});return(0,q.jsxs)(`div`,{className:`flex flex-col gap-3 p-2`,"data-testid":`block-catalog`,children:[(0,q.jsxs)(`div`,{className:`relative`,children:[(0,q.jsx)(me,{className:`text-muted-foreground absolute start-2.5 top-1/2 size-4 -translate-y-1/2`}),(0,q.jsx)(W,{type:`search`,name:`block-catalog-search`,value:l,onChange:e=>u(e.target.value),"aria-label":x,placeholder:x,className:`h-9 ps-8`,"data-testid":`block-catalog-search`})]}),b?(0,q.jsx)(`p`,{className:`text-muted-foreground px-1 py-4 text-sm`,"data-testid":`block-catalog-empty`,children:c._({id:`editor.catalog.noResults`,message:`No blocks match your search.`})}):null,g.map(t=>(0,q.jsx)(ha,{heading:t.category,testId:`block-catalog-group-${t.category}`,children:t.entries.map(t=>(0,q.jsx)(ga,{testId:`block-catalog-item-${_a(t)}`,icon:t.icon,label:B(t.title,c),onPointerDown:()=>m(t),onClick:()=>v(Di(e,t))},_a(t)))},t.category)),_.length>0?(0,q.jsx)(ha,{heading:c._({id:`editor.catalog.patterns`,message:`Patterns`}),testId:`block-catalog-patterns`,children:_.map(e=>(0,q.jsx)(ga,{testId:`block-catalog-pattern-${e.name}`,label:B(e.title,c),onClick:()=>y(ki(e))},e.name))}):null]})}function ha({heading:e,testId:t,children:n}){return(0,q.jsxs)(`div`,{"data-testid":t,children:[(0,q.jsx)(`p`,{className:`text-muted-foreground mb-1.5 px-1 text-xs font-medium capitalize`,children:e}),(0,q.jsx)(`div`,{className:`grid grid-cols-3 gap-2`,children:n})]})}function ga({testId:e,icon:t,label:n,onClick:r,onPointerDown:i}){return(0,q.jsxs)(`button`,{type:`button`,"data-testid":e,onClick:r,onPointerDown:i,title:n,className:`border-border hover:bg-accent hover:border-accent-foreground/20 flex aspect-square flex-col items-center justify-center gap-1.5 rounded-md border p-2 text-center`,children:[(0,q.jsx)(Mi,{name:t,className:`text-muted-foreground size-5`}),(0,q.jsx)(`span`,{className:`text-foreground w-full truncate text-[11px] leading-tight`,children:n})]})}function _a(e){return e.slug===e.name?e.slug:`${e.name}/${e.slug}`}var va=[.5,.75,1,1.25,1.5,2],ya=[{value:`desktop`,Icon:st},{value:`tablet`,Icon:ct},{value:`mobile`,Icon:ot}];function ba(e,t){switch(t){case`tablet`:return e._({id:`editor.toolbar.device.tablet`,message:`Tablet`});case`mobile`:return e._({id:`editor.toolbar.device.mobile`,message:`Mobile`});default:return e._({id:`editor.toolbar.device.desktop`,message:`Desktop`})}}function xa(){return(0,q.jsxs)(`header`,{className:`bg-background flex items-center gap-2 border-b px-3 py-2`,"data-testid":`plumix-editor-toolbar`,children:[(0,q.jsxs)(`div`,{className:`flex flex-1 items-center gap-1`,children:[(0,q.jsxs)(Tn,{children:[(0,q.jsx)(Sn,{asChild:!0,children:(0,q.jsx)(fe,{"data-testid":`plumix-rails-toggle`,className:`size-8 shrink-0`})}),(0,q.jsx)(Cn,{children:(0,q.jsx)(i,{id:`editor.toolbar.rails`,message:`Toggle panels`})})]}),(0,q.jsx)(Sa,{})]}),(0,q.jsx)(Ca,{}),(0,q.jsx)(`div`,{className:`flex-1`,"aria-hidden":!0})]})}function Sa(){let{i18n:e}=r();return(0,q.jsxs)(Tn,{children:[(0,q.jsx)(Sn,{asChild:!0,children:(0,q.jsx)(`span`,{className:`inline-flex`,children:(0,q.jsx)(mn,{variant:`outline`,size:`sm`,pressed:Q(e=>e.xray),onPressedChange:Q(e=>e.toggleXray),"data-testid":`plumix-xray-toggle`,"aria-label":e._({id:`editor.toolbar.xray`,message:`X-ray: outline all blocks`}),children:(0,q.jsx)(kn,{})})})}),(0,q.jsxs)(Cn,{children:[(0,q.jsx)(i,{id:`editor.toolbar.xray`,message:`X-ray: outline all blocks`}),` `,(0,q.jsx)(xe,{className:`ms-1`,children:`⇧X`})]})]})}function Ca(){let{i18n:e}=r(),t=Q(e=>e.device),n=Q(e=>e.zoom),i=Q(e=>e.setDevice),a=Q(e=>e.zoomToCenter),o=Q(e=>e.enableZoomFit);return(0,q.jsxs)(`div`,{className:`flex items-center gap-1`,"data-testid":`plumix-canvas-controls`,children:[(0,q.jsx)(tt,{type:`single`,variant:`outline`,size:`sm`,"aria-label":e._({id:`editor.toolbar.device.group`,message:`Device`}),value:t,onValueChange:e=>{e&&i(e)},children:ya.map(({value:t,Icon:n})=>(0,q.jsx)(Ze,{value:t,"data-testid":`plumix-device-${t}`,"aria-label":ba(e,t),children:(0,q.jsx)(n,{})},t))}),(0,q.jsx)(U,{type:`button`,variant:`ghost`,size:`icon-sm`,"data-testid":`plumix-zoom-out`,onClick:()=>a([...va].reverse().find(e=>e<n-.01)??n),"aria-label":e._({id:`editor.toolbar.zoomOut`,message:`Zoom out`}),children:(0,q.jsx)(Gn,{})}),(0,q.jsxs)(`button`,{type:`button`,"data-testid":`plumix-zoom-percent`,onClick:o,className:`text-muted-foreground hover:text-foreground w-12 text-center text-xs tabular-nums`,title:e._({id:`editor.toolbar.fitWidth`,message:`Fit to width`}),children:[Math.round(n*100),`%`]}),(0,q.jsx)(U,{type:`button`,variant:`ghost`,size:`icon-sm`,"data-testid":`plumix-zoom-in`,onClick:()=>a(va.find(e=>e>n+.01)??n),"aria-label":e._({id:`editor.toolbar.zoomIn`,message:`Zoom in`}),children:(0,q.jsx)(Wn,{})})]})}function wa(){let e=pa();return(0,G.useEffect)(()=>{let t=t=>{if(!(t.metaKey||t.ctrlKey)||t.key.toLowerCase()!==`z`||t.repeat)return;let n=t.target;n?.isContentEditable||n?.tagName===`INPUT`||n?.tagName===`TEXTAREA`||n?.tagName===`SELECT`||(t.preventDefault(),t.shiftKey?e.getState().redo():e.getState().undo())};return window.addEventListener(`keydown`,t),()=>window.removeEventListener(`keydown`,t)},[e]),null}function Ta(e,t,n){return{left:t.left+e.x*n,top:t.top+e.y*n,width:e.width*n,height:e.height*n}}var Ea=4;function Da({box:e}){let t=pa(),n=Q(e=>e.activeId),r=Q(e=>e.selectedIds.size),a=Q(e=>e.activeId?Y(e.tree,e.activeId)!==null:!1),o=Q(e=>{let t=Gr(e.tree,e.selectedIds);if(t.length===0)return!1;let n=Y(e.tree,t[0]??``);return t.every(t=>Y(e.tree,t)===n)}),s=Q(e=>e.activeId?Br(e.tree,e.activeId):!1);if(!n)return null;let c=e=>()=>e(),l=t.getState(),u=r>1;return(0,q.jsx)(wn,{delayDuration:300,children:(0,q.jsxs)(`div`,{"data-testid":`plumix-selection-toolbar`,className:`bg-background flex items-center gap-0.5 rounded-md border p-0.5 shadow-sm`,style:{position:`absolute`,left:Math.max(0,e.left),top:Math.max(0,e.top-36-Ea),pointerEvents:`auto`,zIndex:30},children:[(0,q.jsxs)(Tn,{children:[(0,q.jsx)(Sn,{asChild:!0,children:(0,q.jsx)(U,{type:`button`,variant:`ghost`,size:`icon-sm`,"data-testid":`selection-toolbar-drag`,"aria-label":`Drag to move`,disabled:u,onPointerDown:e=>{e.preventDefault(),l.startMove(n)},className:`cursor-grab active:cursor-grabbing`,children:(0,q.jsx)(Ke,{className:`size-4`})})}),(0,q.jsx)(Cn,{children:(0,q.jsx)(i,{id:`editor.selection.drag`,message:`Drag to move`})})]}),r>1?(0,q.jsx)(`span`,{"data-testid":`selection-toolbar-count`,className:`text-muted-foreground px-1.5 text-xs tabular-nums`,children:(0,q.jsx)(i,{id:`editor.selection.count`,message:`{count} selected`,values:{count:r}})}):null,(0,q.jsx)(Oa,{testId:`selection-toolbar-select-parent`,icon:(0,q.jsx)(Pn,{className:`size-4`}),disabled:!a||u,onClick:c(()=>l.selectParent()),label:(0,q.jsx)(i,{id:`editor.selection.selectParent`,message:`Select parent`})}),(0,q.jsx)(Oa,{testId:`selection-toolbar-move-up`,icon:(0,q.jsx)(ke,{className:`size-4`}),disabled:u,onClick:c(()=>l.moveSelectedBy(-1)),label:(0,q.jsx)(i,{id:`editor.selection.moveUp`,message:`Move up`})}),(0,q.jsx)(Oa,{testId:`selection-toolbar-move-down`,icon:(0,q.jsx)(je,{className:`size-4`}),disabled:u,onClick:c(()=>l.moveSelectedBy(1)),label:(0,q.jsx)(i,{id:`editor.selection.moveDown`,message:`Move down`})}),(0,q.jsx)(Oa,{testId:`selection-toolbar-group`,icon:(0,q.jsx)(Bt,{className:`size-4`}),disabled:!o,onClick:c(()=>l.groupSelected()),label:(0,q.jsx)(i,{id:`editor.selection.group`,message:`Group`})}),s?(0,q.jsx)(Oa,{testId:`selection-toolbar-ungroup`,icon:(0,q.jsx)(Un,{className:`size-4`}),onClick:c(()=>l.ungroupSelected()),label:(0,q.jsx)(i,{id:`editor.selection.ungroup`,message:`Ungroup`})}):null,(0,q.jsx)(Oa,{testId:`selection-toolbar-duplicate`,icon:(0,q.jsx)(Ie,{className:`size-4`}),onClick:c(()=>l.duplicateSelected()),label:(0,q.jsx)(i,{id:`editor.selection.duplicate`,message:`Duplicate`})}),(0,q.jsx)(Oa,{testId:`selection-toolbar-delete`,icon:(0,q.jsx)(lt,{className:`size-4`}),onClick:c(()=>l.removeSelected()),label:(0,q.jsx)(i,{id:`editor.selection.delete`,message:`Delete`}),className:`text-destructive hover:text-destructive`})]})})}function Oa({testId:e,icon:t,label:n,disabled:r,onClick:i,className:a}){return(0,q.jsxs)(Tn,{children:[(0,q.jsx)(Sn,{asChild:!0,children:(0,q.jsx)(U,{type:`button`,variant:`ghost`,size:`icon-sm`,"data-testid":e,disabled:r,onClick:i,className:a,children:t})}),(0,q.jsx)(Cn,{children:n})]})}function ka({slots:e,tree:t,registry:n,draggingName:r,frame:i,zoom:a,clientX:o,clientY:s}){let c=null,l=1/0;for(let u of e){let e=Ta(u,i,a);if(o<e.left||o>e.left+e.width||s<e.top||s>e.top+e.height)continue;let d=J(t,u.parentId);if(!d)continue;let f=Ci(n,d.name,u.slotKey);if(f&&!f.includes(r))continue;let p=e.width*e.height;p<l&&(l=p,c={parentId:u.parentId,slotKey:u.slotKey,box:e})}return c}function Aa(e,t,n){let r=e.findIndex(e=>e.id===t);return r!==-1&&r<n?n-1:n}function ja(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(r&&t<r.y+r.height/2)return n}return e.length}function Ma(e,t){let n=ja(e,t),r=e[e.length-1];if(!r)return{index:0,indicatorY:null};let i=e[n];return{index:n,indicatorY:i?i.y:r.y+r.height}}function Na({iframeRef:e,geometryRef:t,registry:n}){let{i18n:i}=r(),a=pa(),o=Q(e=>e.dragSpec),s=Q(e=>e.movingId),[c,l]=(0,G.useState)(null),[u,d]=(0,G.useState)(null),[f,p]=(0,G.useState)(null),[m,h]=(0,G.useState)(null),g=(0,G.useCallback)((e,t)=>{p({parentId:e,slotKey:t})},[]);return(0,G.useEffect)(()=>{if(!f)return;let e=()=>p(null);return window.addEventListener(`blur`,e),()=>window.removeEventListener(`blur`,e)},[f]),(0,G.useEffect)(()=>{let r=e.current;if(!r)return;let c=o?.name??(s?J(a.getState().tree,s)?.name:void 0);if(!c)return;let u=()=>{o?a.getState().endBlockDrag():a.getState().endMove()},f=(e,n)=>{let i=r.getBoundingClientRect();if(!(e>=i.left&&e<=i.right&&n>=i.top&&n<=i.bottom))return null;let o={left:i.left,top:i.top},{tree:s,zoom:c}=a.getState();return Ma(s.flatMap(e=>{let n=t.current.rects.get(e.id);if(!n)return[];let r=Ta(n,o,c);return[{y:r.top,height:r.height}]}),n)},p=(e,i)=>{let o=r.getBoundingClientRect(),{tree:s,zoom:l}=a.getState();return ka({slots:t.current.slots,tree:s,registry:n,draggingName:c,frame:{left:o.left,top:o.top},zoom:l,clientX:e,clientY:i})},m=e=>{let t=p(e.clientX,e.clientY);d(t),l(t?null:f(e.clientX,e.clientY)?.indicatorY??null)},g=e=>{let t=n.get(c)?.requiresParent,r=()=>{h(i._({id:`editor.canvas.cantPlaceHere`,message:`This block can't be placed here.`})),u()},l=p(e.clientX,e.clientY);if(l){let e=J(a.getState().tree,l.parentId);if(t&&(!e||!t.includes(e.name))){r();return}let i={parentId:l.parentId,slotKey:l.slotKey,index:2**53-1},c=e?Ci(n,e.name,l.slotKey):void 0;o?a.getState().insertBlockInto(Di(n,o),i,c):s&&a.getState().moveBlock(s,i,c)}else{let i=f(e.clientX,e.clientY);if(i){if(t){r();return}if(o)a.getState().insertBlock(Di(n,o),i.index);else if(s){let e=Aa(a.getState().tree,s,i.index);a.getState().moveBlock(s,{parentId:null,index:e})}}}u()},_=()=>u(),v=e=>{e.key===`Escape`&&u()};return window.addEventListener(`pointermove`,m),window.addEventListener(`pointerup`,g),window.addEventListener(`pointercancel`,_),window.addEventListener(`keydown`,v),()=>{window.removeEventListener(`pointermove`,m),window.removeEventListener(`pointerup`,g),window.removeEventListener(`pointercancel`,_),window.removeEventListener(`keydown`,v),l(null),d(null)}},[o,s,a,n,i,e,t]),(0,G.useEffect)(()=>{if(!m)return;let e=setTimeout(()=>h(null),2500);return()=>clearTimeout(e)},[m]),{dropY:c,dropSlot:u,pendingAdd:f,setPendingAdd:p,requestAdd:g,rejection:m}}function Pa({iframeRef:e,containerRef:t,frameWidth:n}){let r=pa(),i=Q(e=>e.zoomFit),a=Q(e=>e.zoom),o=Q(e=>e.panX),s=Q(e=>e.panY),[c,l]=(0,G.useState)({rects:new Map,slots:[],frame:null,container:null}),u=(0,G.useRef)(c),[d,f]=(0,G.useState)(null),p=(0,G.useCallback)(()=>{let t=e.current?.contentDocument;t&&f(t.documentElement.scrollHeight)},[e]),m=(0,G.useCallback)(()=>{let n=e.current?.getBoundingClientRect(),r=t.current?.getBoundingClientRect();return{frame:n?{left:n.left,top:n.top}:null,container:r?{left:r.left,top:r.top,width:r.width,height:r.height}:null}},[e,t]),h=(0,G.useCallback)((e,t)=>{let n={rects:new Map(e.map(e=>[e.id,e])),slots:t,...m()};u.current=n,l(n),p()},[m,p]);(0,G.useEffect)(()=>{let e=t.current;if(!e)return;let n=()=>{let e={...u.current,...m()};u.current=e,l(e)};e.addEventListener(`scroll`,n,{passive:!0}),window.addEventListener(`resize`,n);let r=typeof ResizeObserver>`u`?null:new ResizeObserver(n);return r?.observe(e),()=>{e.removeEventListener(`scroll`,n),window.removeEventListener(`resize`,n),r?.disconnect()}},[m,t]);let g=c.container?.width,_=c.container?.height;return(0,G.useEffect)(()=>{if(!i||!g||!_)return;let e=Gi(n,d??800,g,_),t=r.getState();(t.zoom!==e.zoom||t.panX!==e.panX||t.panY!==e.panY)&&t.applyFitView(e)},[i,n,d,g,_,r]),(0,G.useEffect)(()=>{let t=requestAnimationFrame(()=>{let t={...u.current,...m()};u.current=t,l(t);let n=e.current,i=r.getState();if(t.container&&n&&!i.zoomFit){let e=n.getBoundingClientRect(),r=Wi(i.panX,i.panY,e.width,e.height,t.container.width,t.container.height);(r.panX!==i.panX||r.panY!==i.panY)&&i.setPan(r.panX,r.panY)}});return()=>cancelAnimationFrame(t)},[o,s,a,n,d,m,r,e]),(0,G.useEffect)(()=>{g&&_&&r.getState().setViewport(g,_)},[g,_,r]),{geometry:c,geometryRef:u,contentHeight:d,measureContent:p,applyReport:h}}function Fa(e,t){return e===`Space`?!0:t&&(e===`Digit0`||e===`Digit1`||e===`Digit2`||e===`KeyX`)}function Ia(e){return e instanceof HTMLElement&&(e.isContentEditable||/^(INPUT|TEXTAREA|SELECT)$/.test(e.tagName))}function La({panByClientDelta:e,commitLive:t,zoomToSelection:n,liveViewRef:r}){let i=pa(),[a,o]=(0,G.useState)(!1),s=(0,G.useRef)(null);return(0,G.useEffect)(()=>{let a=!1,c=!1,l=0,u=0,d=0,f=0,p=()=>{a=!1,c=!1,o(!1)},m=(e,t,r)=>{if(!e){t===`Space`&&p();return}if(t===`Space`){a||(a=!0,o(!0));return}r&&(t===`Digit1`?i.getState().enableZoomFit():t===`Digit2`?n():t===`Digit0`?i.getState().zoomToCenter(1):t===`KeyX`&&i.getState().toggleXray())};s.current=m;let h=e=>{e.repeat||Ia(e.target)||!Fa(e.code,e.shiftKey)||(e.code===`Space`&&e.preventDefault(),m(!0,e.code,e.shiftKey))},g=e=>{e.code===`Space`&&m(!1,e.code,!1)},_=e=>{a&&(c=!0,l=e.clientX,u=e.clientY,d=r.current.panX,f=r.current.panY)},v=t=>{c&&e(t.clientX-l,t.clientY-u,d,f)},y=()=>{c&&t(),c=!1};return window.addEventListener(`keydown`,h),window.addEventListener(`keyup`,g),window.addEventListener(`pointerdown`,_),window.addEventListener(`pointermove`,v),window.addEventListener(`pointerup`,y),()=>{window.removeEventListener(`keydown`,h),window.removeEventListener(`keyup`,g),window.removeEventListener(`pointerdown`,_),window.removeEventListener(`pointermove`,v),window.removeEventListener(`pointerup`,y),s.current=null,p()}},[i,n,e,t,r]),{panReady:a,keyHandlerRef:s}}function Ra({iframeRef:e,containerRef:t,geometryRef:n}){let r=pa(),i=Q(e=>e.zoom),a=Q(e=>e.panX),o=Q(e=>e.panY),s=(0,G.useRef)(null),c=(0,G.useRef)({zoom:i,panX:a,panY:o}),l=(0,G.useRef)(!1),[u,d]=(0,G.useState)(!1),f=(0,G.useRef)(null),p=(0,G.useCallback)(()=>{f.current&&=(clearTimeout(f.current),null),l.current&&(l.current=!1,d(!1),r.getState().setView(c.current))},[r]),m=(0,G.useCallback)(e=>{c.current=e;let t=s.current;t&&(t.style.transform=`translate(${String(e.panX)}px, ${String(e.panY)}px) scale(${String(e.zoom)})`),l.current||(l.current=!0,d(!0)),f.current&&clearTimeout(f.current),f.current=setTimeout(p,150)},[p]),h=(0,G.useCallback)((t,r,i,a)=>{let o=n.current.container,s=e.current;if(!o||!s)return;let l=s.getBoundingClientRect();m({zoom:c.current.zoom,...Wi(i+t,a+r,l.width,l.height,o.width,o.height)})},[m,n,e]),g=(0,G.useCallback)(e=>{if(e.button!==0)return;e.preventDefault();let t=e.clientX,n=e.clientY,r=c.current.panX,i=c.current.panY,a=e.currentTarget;a.setPointerCapture(e.pointerId);let o=e=>h(e.clientX-t,e.clientY-n,r,i),s=()=>{p(),a.releasePointerCapture(e.pointerId),a.removeEventListener(`pointermove`,o),a.removeEventListener(`pointerup`,s),a.removeEventListener(`pointercancel`,s)};a.addEventListener(`pointermove`,o),a.addEventListener(`pointerup`,s),a.addEventListener(`pointercancel`,s)},[h,p]);(0,G.useEffect)(()=>{l.current||(c.current={zoom:i,panX:a,panY:o})},[i,a,o]),(0,G.useEffect)(()=>()=>{f.current&&clearTimeout(f.current)},[]),(0,G.useLayoutEffect)(()=>{if(l.current&&s.current){let e=c.current;s.current.style.transform=`translate(${String(e.panX)}px, ${String(e.panY)}px) scale(${String(e.zoom)})`}});let _=(0,G.useCallback)((t,r,i,a,o)=>{let s=e.current,l=n.current.container;if(!s||!l)return;let u=s.getBoundingClientRect(),{panX:d,panY:f,zoom:p}=c.current;if(i){let e=Hi(p*Math.exp(-r*.0015));if(e===p)return;let t=Ki({zoom:p,panX:d,panY:f},e,a,o),n=u.width/p,i=u.height/p;m({zoom:t.zoom,...Wi(t.panX,t.panY,n*t.zoom,i*t.zoom,l.width,l.height)})}else m({zoom:p,...Wi(d-t,f-r,u.width,u.height,l.width,l.height)})},[m,n,e]),v=(0,G.useCallback)(()=>{let e=r.getState(),t=n.current.container,i=e.activeId?n.current.rects.get(e.activeId):void 0;!t||!i||i.width===0||i.height===0||e.setView(qi(i,t.width,t.height))},[r,n]);return(0,G.useEffect)(()=>{let e=t.current;if(!e)return;let n=t=>{t.preventDefault();let n=e.getBoundingClientRect();_(t.deltaX,t.deltaY,t.ctrlKey||t.metaKey,t.clientX-n.left,t.clientY-n.top)};return e.addEventListener(`wheel`,n,{passive:!1}),()=>e.removeEventListener(`wheel`,n)},[_,t]),{stageRef:s,gesturing:u,liveViewRef:c,panByClientDelta:h,commitLive:p,onHandlePointerDown:g,handleWheel:_,zoomToSelection:v}}var za=`#2563eb`,Ba=`rgba(37,99,235,0.5)`,Va=`rgba(37,99,235,0.4)`;function Ha({previewUrl:e,origin:t,registry:n,capabilities:i,readOnly:a=!1}){let{i18n:o}=r(),s=o._({id:`editor.canvas.addBlock`,message:`Add a block`}),c=pa(),l=(0,G.useMemo)(()=>vi(c,navigator.clipboard,hi(n)),[c,n]),u=fa(),d=Q(e=>e.device),f=Q(e=>e.zoom),p=Q(e=>e.panX),m=Q(e=>e.panY),h=ta(d,Q(e=>e.breakpoints)),g=Q(e=>e.activeId),_=Q(e=>e.selectedIds),v=Q(e=>e.hoverId),y=Q(e=>e.dragSpec),b=Q(e=>e.movingId),x=(0,G.useRef)(null),S=(0,G.useRef)(null),{geometry:C,geometryRef:ee,contentHeight:te,measureContent:ne,applyReport:w}=Pa({iframeRef:x,containerRef:S,frameWidth:h}),{stageRef:re,gesturing:T,liveViewRef:ie,panByClientDelta:ae,commitLive:oe,onHandlePointerDown:se,handleWheel:ce,zoomToSelection:le}=Ra({iframeRef:x,containerRef:S,geometryRef:ee}),{panReady:ue,keyHandlerRef:de}=La({panByClientDelta:ae,commitLive:oe,zoomToSelection:le,liveViewRef:ie}),{dropY:fe,dropSlot:pe,pendingAdd:me,setPendingAdd:he,requestAdd:ge,rejection:_e}=Na({iframeRef:x,geometryRef:ee,registry:n});(0,G.useEffect)(()=>{let e=x.current?.contentWindow;if(!e)return;let n=kr({store:c,frameWindow:e,origin:t,onGeometry:w,onWheel:({deltaX:e,deltaY:t,zoomIntent:n,clientX:r,clientY:i})=>{let{panX:a,panY:o,zoom:s}=c.getState();ce(e,t,n,a+r*s,o+i*s)},onKey:({down:e,code:t,shiftKey:n})=>de.current?.(e,t,n),onRequestAdd:({parentId:e,slotKey:t})=>ge(e,t),onClipboard:e=>void l.run(e),config:{addBlockLabel:s}});return u&&(u.current=n.pushLoaderData),()=>{u&&(u.current=null),n.dispose()}},[c,t,w,u,ce,de,ge,s,l]),(0,G.useEffect)(()=>{let e=e=>{let t=_i(e);t&&(e.preventDefault(),l.run(t))};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[l]);let E=C.container,ve=g?C.rects.get(g):void 0,D=ve&&C.frame&&E?Ga(Ta(ve,C.frame,f),E):null,ye=(e,t,n)=>{if(!e||!C.frame||!E)return null;let r=C.rects.get(e);if(!r)return null;let i=Ga(Ta(r,C.frame,f),E);return(0,q.jsx)(`div`,{"data-testid":n,style:{position:`absolute`,left:i.left,top:i.top,width:i.width,height:i.height,outline:`2px solid ${t}`,pointerEvents:`none`,zIndex:10}},n)},O=me?.parentId&&me.slotKey?{parentId:me.parentId,slotKey:me.slotKey}:void 0,be=O?J(c.getState().tree,O.parentId)?.name:void 0,xe=O&&be?Ci(n,be,O.slotKey):void 0,k=O&&C.frame?C.slots.find(e=>e.parentId===O.parentId&&e.slotKey===O.slotKey):void 0,A=k&&C.frame?Ta(k,C.frame,f):E;return(0,q.jsxs)(`div`,{ref:S,"data-testid":`plumix-canvas-frame`,style:{position:`relative`,flex:1,overflow:`hidden`,touchAction:`none`,background:`var(--muted)`,cursor:ue?`grab`:`default`},children:[(0,q.jsxs)(`div`,{ref:re,style:{position:`absolute`,top:0,left:0,width:h,height:te??800,transform:`translate(${String(p)}px, ${String(m)}px) scale(${String(f)})`,transformOrigin:`top left`},children:[!a&&(0,q.jsx)(Wa,{device:d,frameWidth:h,onPointerDown:se}),(0,q.jsx)(`iframe`,{ref:x,src:e,title:`plumix-editor-canvas`,onLoad:ne,style:{display:`block`,width:h,height:te??800,border:0,pointerEvents:y||b||ue?`none`:void 0}})]}),!a&&E&&!T&&(0,q.jsxs)(`div`,{"data-testid":`plumix-overlay-clip`,style:{position:`fixed`,left:E.left,top:E.top,width:E.width,height:E.height,overflow:`hidden`,pointerEvents:`none`,zIndex:10},children:[ye(v,Va,`plumix-overlay-hover`),[..._].filter(e=>e!==g).map(e=>ye(e,Ba,`plumix-overlay-member-${e}`)),ye(g,za,`plumix-overlay-selected`),D&&(0,q.jsx)(Da,{box:D}),pe&&(0,q.jsx)(`div`,{"data-testid":`plumix-slot-drop-indicator`,style:{position:`absolute`,left:pe.box.left-E.left,top:pe.box.top-E.top,width:pe.box.width,height:pe.box.height,outline:`2px dashed ${za}`,background:`rgba(37,99,235,0.08)`,pointerEvents:`none`,zIndex:20}}),fe!==null&&C.frame&&(0,q.jsx)(`div`,{"data-testid":`plumix-drop-indicator`,style:{position:`absolute`,left:C.frame.left-E.left,top:fe-E.top,width:h*f,height:2,background:za,pointerEvents:`none`,zIndex:20}})]}),!a&&me&&(0,q.jsxs)(He,{open:!0,onOpenChange:e=>{e||he(null)},children:[(0,q.jsx)($e,{style:{position:`fixed`,left:A?.left??0,top:A?.top??0,width:A?.width??0,height:A?.height??0,pointerEvents:`none`}}),(0,q.jsx)(Ve,{"data-testid":`plumix-inserter-popover`,align:`start`,className:`w-72 p-0`,children:(0,q.jsx)(yi,{className:`[&>[data-slot=scroll-area-viewport]]:max-h-96`,children:(0,q.jsx)(ma,{registry:n,capabilities:i,allowed:xe,parentName:be,target:O,onInsert:()=>he(null)})})})]}),!a&&_e&&(0,q.jsx)(`div`,{role:`status`,"data-testid":`plumix-add-rejection`,style:{position:`absolute`,left:`50%`,bottom:16,transform:`translateX(-50%)`,zIndex:30,padding:`0.5rem 0.75rem`,borderRadius:8,fontSize:`0.8125rem`,color:`var(--destructive-foreground, #fff)`,background:`var(--destructive, #dc2626)`,boxShadow:`0 2px 8px rgba(0,0,0,0.2)`,pointerEvents:`none`},children:_e})]})}var Ua=32;function Wa({device:e,frameWidth:t,onPointerDown:n}){let{i18n:i}=r();return(0,q.jsx)(`div`,{"data-testid":`plumix-canvas-handle`,onPointerDown:n,title:i._({id:`editor.canvas.pan`,message:`Drag to move the canvas`}),className:`bg-background text-foreground flex cursor-grab items-center px-4 text-sm font-medium select-none active:cursor-grabbing`,style:{position:`absolute`,left:0,top:-40,width:t,height:Ua,touchAction:`none`},children:ba(i,e)})}function Ga(e,t){return{...e,left:e.left-t.left,top:e.top-t.top}}var Ka=(0,G.lazy)(()=>Ut(()=>import(`./rich-text-field-CHHhfy_b.js`).then(e=>({default:e.RichTextField})),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30]),import.meta.url)),qa=()=>void 0,Ja=e=>`block-input-${e}`;function Ya({input:e,value:t,onChange:n,resolvePluginFieldType:i,attrs:a}){let{i18n:o}=r(),s=(0,G.useId)(),c=`${s}-label`,l=Ja(e.name),u=e.label==null?e.name:B(e.label,o),d=e.options??[],f=(()=>{switch(e.type){case`textarea`:return(0,q.jsx)(Fe,{id:s,"data-testid":l,value:Za(t),onChange:e=>n(e.target.value)});case`number`:return(0,q.jsx)(W,{id:s,"data-testid":l,type:`number`,value:Za(t),onChange:e=>{let t=e.target.valueAsNumber;n(Number.isNaN(t)?null:t)}});case`checkbox`:return(0,q.jsx)(Ue,{id:s,"data-testid":l,checked:t===!0,onCheckedChange:e=>n(e===!0)});case`boolean`:return(0,q.jsx)(Qe,{id:s,"data-testid":l,checked:t===!0,onCheckedChange:e=>n(e===!0)});case`select`:return(0,q.jsxs)(Gt,{value:eo(t),onValueChange:e=>n(no(d,to(e))),children:[(0,q.jsx)(Wt,{id:s,"data-testid":l,className:`w-full`,children:(0,q.jsx)(Kt,{placeholder:e.placeholder?B(e.placeholder,o):void 0})}),(0,q.jsx)(Ht,{children:d.map(e=>(0,q.jsx)(H,{value:eo(e.value),"data-testid":`${l}-option-${$(e.value)}`,children:B(e.label,o)},$(e.value)))})]});case`radio`:return(0,q.jsx)(`div`,{role:`radiogroup`,"aria-labelledby":c,"data-testid":l,children:d.map(e=>(0,q.jsxs)(`label`,{className:`flex gap-2 text-sm`,children:[(0,q.jsx)(`input`,{type:`radio`,name:s,value:$(e.value),checked:$(t)===$(e.value),onChange:()=>n(e.value),"data-testid":`${l}-${$(e.value)}`}),B(e.label,o)]},$(e.value)))});case`richtext`:return(0,q.jsx)(G.Suspense,{fallback:(0,q.jsx)(Xa,{testId:l}),children:(0,q.jsx)(Ka,{value:Za(t),onChange:n,testId:l})});case`combobox`:return(0,q.jsx)(Qa,{id:s,testId:l,value:t,options:d,onChange:n});default:{let r=i?.(e.type);return r?(0,G.createElement)(r,{field:e,rhf:{value:t,onChange:n,onBlur:qa,name:e.name},disabled:!1,testId:l,attrs:a??{}}):(0,q.jsx)(W,{id:s,"data-testid":l,value:Za(t),onChange:e=>n(e.target.value)})}}})(),p=e.type===`boolean`||e.type===`checkbox`;return(0,q.jsxs)(M,{orientation:p?`horizontal`:`vertical`,className:p?void 0:`gap-1.5`,children:[(0,q.jsx)(R,{htmlFor:s,id:c,children:u}),f]})}function Xa({testId:e}){return(0,q.jsxs)(`div`,{className:`flex flex-col gap-1.5`,"data-testid":`${e}-loading`,"aria-busy":`true`,children:[(0,q.jsx)(`div`,{className:`flex flex-wrap items-center gap-0.5`,children:Array.from({length:14},(e,t)=>(0,q.jsx)(`div`,{className:`bg-muted size-8 animate-pulse rounded-md`},t))}),(0,q.jsx)(`div`,{className:`border-input bg-muted/40 min-h-32 w-full animate-pulse rounded-md border`}),(0,q.jsx)(`div`,{className:`bg-muted h-3 w-48 animate-pulse rounded`})]})}function Za(e){return typeof e==`string`?e:typeof e==`number`||typeof e==`boolean`?String(e):``}function Qa({id:e,testId:t,value:n,options:i,onChange:a}){let{i18n:o}=r(),[s,c]=(0,G.useState)(!1),[l,u]=(0,G.useState)(``),d=Za(n),f=i.find(e=>$(e.value)===d),p=l.trim(),m=p!==``&&!i.some(e=>$(e.value)===p),h=e=>{a(e),u(``),c(!1)},g=f?B(f.label,o):d||o._({id:`editor.combobox.placeholder`,message:`Select…`});return(0,q.jsxs)(He,{open:s,onOpenChange:c,children:[(0,q.jsx)(Ge,{asChild:!0,children:(0,q.jsxs)(U,{type:`button`,variant:`outline`,role:`combobox`,"aria-expanded":s,id:e,"data-testid":t,className:y(`w-full justify-between font-normal`,d===``&&`text-muted-foreground`),children:[(0,q.jsx)(`span`,{className:`truncate`,children:g}),(0,q.jsx)(Pe,{className:`opacity-50`})]})}),(0,q.jsx)(Ve,{className:`p-0`,align:`start`,style:{width:`var(--radix-popover-trigger-width)`},children:(0,q.jsxs)(Se,{children:[(0,q.jsx)(_e,{value:l,onValueChange:u,placeholder:o._({id:`editor.combobox.search`,message:`Search…`}),"data-testid":`${t}-search`}),(0,q.jsxs)(k,{children:[m?(0,q.jsxs)(E,{value:p,onSelect:()=>h(p),"data-testid":`${t}-create`,children:[(0,q.jsx)(F,{className:`me-2 size-4`}),p]}):(0,q.jsx)(O,{children:(0,q.jsx)(`span`,{className:`text-muted-foreground text-sm`,children:o._({id:`editor.combobox.none`,message:`No match.`})})}),(0,q.jsx)(Ce,{children:i.map(e=>(0,q.jsxs)(E,{value:$(e.value),keywords:[B(e.label,o)],onSelect:()=>h(e.value),"data-testid":`${t}-option-${$(e.value)}`,children:[B(e.label,o),$(e.value)===d?(0,q.jsx)(qt,{className:`ms-auto size-4`}):null]},$(e.value)))})]})]})})]})}function $(e){return Za(e)}var $a=`__plumix_empty__`;function eo(e){if(e==null)return``;let t=$(e);return t===``?$a:t}function to(e){return e===$a?``:e}function no(e,t){let n=e.find(e=>$(e.value)===t);return n?n.value:t}function ro({registry:e,onRefreshBlockLoader:t,resolvePluginFieldType:n}){let r=Q(e=>e.activeId),a=Q(e=>e.tree),o=Q(e=>e.device),s=Q(e=>e.updateBlockAttrs),c=Q(e=>e.updateBlockStyle),l=Q(e=>e.insertBlockInto),u=Q(e=>e.addTableColumn),d=Q(e=>e.addTableRow),f=Q(e=>e.removeTableColumn),p=Q(e=>e.removeTableRow),m=fa(),h=$i(o),g=r?J(a,r):void 0,_=g?$r(a,g.id):null,v=(0,G.useCallback)((e,t)=>{r&&s(r,{[e]:t})},[r,s]),y=(0,G.useCallback)(async()=>{if(!r||!t)return;let e=await t(r);m?.current?.(e)},[r,t,m]),b=(0,G.useCallback)(()=>{g&&l(Di(e,{name:`core/column`,slug:`core/column`,title:`Column`}),{parentId:g.id,slotKey:`columns`,index:2**53-1},[`core/column`])},[g,e,l]),x=(0,G.useCallback)(()=>{_&&d(_)},[_,d]),S=(0,G.useCallback)(()=>{_&&u(_)},[_,u]),C=(0,G.useCallback)(()=>{_&&p(_)},[_,p]),ee=(0,G.useCallback)(()=>{_&&f(_)},[_,f]);if(!g)return(0,q.jsx)(`div`,{className:`text-muted-foreground p-4 text-sm`,"data-testid":`block-inspector-empty`,children:(0,q.jsx)(i,{id:`editor.inspector.empty`,message:`Select a block to edit its attributes.`})});let te=e.get(g.name),ne=(te?.inputs??[]).filter(e=>e.type!==`slot`),w=!!(t&&te?.loaders),re=g.name===`core/columns`;return(0,q.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,"data-testid":`block-inspector`,children:[ne.map(e=>{let t=e.styleProperty;return(0,q.jsx)(Ya,{input:e,resolvePluginFieldType:n,attrs:g.attrs,value:t?ft(g.style?.[h]?.[t])??void 0:g.attrs?.[e.name],onChange:n=>{if(!t){v(e.name,n);return}r&&c(r,h,t,typeof n==`string`&&n!==``?n:null)}},e.name)}),re&&(0,q.jsxs)(U,{type:`button`,variant:`outline`,size:`sm`,"data-testid":`inspector-add-column`,onClick:b,children:[(0,q.jsx)(F,{}),(0,q.jsx)(i,{id:`editor.inspector.addColumn`,message:`Add column`})]}),_&&(0,q.jsxs)(`div`,{className:`grid grid-cols-2 gap-2`,children:[(0,q.jsxs)(U,{type:`button`,variant:`outline`,size:`sm`,"data-testid":`inspector-add-table-row`,onClick:x,children:[(0,q.jsx)(F,{}),(0,q.jsx)(i,{id:`editor.inspector.addRow`,message:`Add row`})]}),(0,q.jsxs)(U,{type:`button`,variant:`outline`,size:`sm`,"data-testid":`inspector-add-table-column`,onClick:S,children:[(0,q.jsx)(F,{}),(0,q.jsx)(i,{id:`editor.inspector.addColumn`,message:`Add column`})]}),(0,q.jsxs)(U,{type:`button`,variant:`outline`,size:`sm`,className:`text-destructive hover:text-destructive`,"data-testid":`inspector-remove-table-row`,onClick:C,children:[(0,q.jsx)(fn,{}),(0,q.jsx)(i,{id:`editor.inspector.removeRow`,message:`Remove row`})]}),(0,q.jsxs)(U,{type:`button`,variant:`outline`,size:`sm`,className:`text-destructive hover:text-destructive`,"data-testid":`inspector-remove-table-column`,onClick:ee,children:[(0,q.jsx)(fn,{}),(0,q.jsx)(i,{id:`editor.inspector.removeColumn`,message:`Remove column`})]})]}),w&&(0,q.jsxs)(U,{type:`button`,variant:`outline`,size:`sm`,"data-testid":`refresh-block-loader`,onClick:()=>void y(),children:[(0,q.jsx)(Vn,{}),(0,q.jsx)(i,{id:`editor.inspector.refreshData`,message:`Refresh data`})]})]})}function io({title:e,onTitleChange:t,onBack:n,publish:i,previewLink:a,liveUrl:o}){let{i18n:s}=r(),c=Q(e=>Zi(e.history)),l=Q(e=>Qi(e.history)),u=Q(e=>e.undo),d=Q(e=>e.redo),f=Q(e=>e.setJsonOpen);return(0,q.jsxs)(`header`,{className:`bg-background flex h-(--header-height) shrink-0 items-center gap-2 border-b px-3`,"data-testid":`plumix-editor-header`,children:[(0,q.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-2`,children:[n?(0,q.jsx)(U,{type:`button`,variant:`ghost`,size:`icon-sm`,className:`shrink-0`,"data-testid":`plumix-editor-back`,onClick:n,"aria-label":s._({id:`editor.header.back`,message:`Back`}),children:(0,q.jsx)(Ne,{})}):null,e===void 0?null:t?(0,q.jsx)(W,{value:e,onChange:e=>t(e.target.value),"data-testid":`plumix-editor-title-input`,"aria-label":s._({id:`editor.header.title`,message:`Title`}),className:`hover:bg-accent focus-visible:bg-background h-8 max-w-md min-w-0 border-transparent bg-transparent text-sm font-medium shadow-none`,placeholder:s._({id:`editor.header.untitled`,message:`Untitled`})}):(0,q.jsx)(`span`,{className:`truncate text-sm font-medium`,"data-testid":`plumix-editor-title`,children:e})]}),(0,q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,q.jsx)(U,{type:`button`,variant:`ghost`,size:`icon-sm`,"data-testid":`plumix-undo`,disabled:!c,onClick:u,"aria-label":s._({id:`editor.toolbar.undo`,message:`Undo`}),children:(0,q.jsx)(Hn,{})}),(0,q.jsx)(U,{type:`button`,variant:`ghost`,size:`icon-sm`,"data-testid":`plumix-redo`,disabled:!l,onClick:d,"aria-label":s._({id:`editor.toolbar.redo`,message:`Redo`}),children:(0,q.jsx)(Bn,{})}),(0,q.jsx)(U,{type:`button`,variant:`ghost`,size:`icon-sm`,"data-testid":`plumix-view-source`,onClick:()=>f(!0),"aria-label":s._({id:`editor.header.source`,message:`View source`}),children:(0,q.jsx)(ee,{})}),(0,q.jsx)(oo,{previewLink:a,liveUrl:o}),i?(0,q.jsx)(ao,{publish:i}):null]})]})}function ao({publish:e}){let{draftMode:t}=e;if(t)return(0,q.jsx)(U,{type:`button`,size:`sm`,"data-testid":`editor-draft-publish`,disabled:t.isSaving||t.isPublishing||t.isDiscarding||!t.hasPendingDraft,onClick:t.onPublishDraft,children:(0,q.jsx)(i,{id:`editor.toolbar.publish`,message:`Publish`})});let{isPublishing:n=!1,isPublished:r=!1}=e;return(0,q.jsx)(U,{type:`button`,size:`sm`,"data-testid":`plumix-editor-publish-button`,disabled:n||r,onClick:e.onPublish,children:(0,q.jsx)(i,{id:`editor.toolbar.publish`,message:`Publish`})})}function oo({previewLink:e,liveUrl:t}){let{i18n:n}=r(),a=e=>{window.open(e,`_blank`,`noopener,noreferrer`)};return(0,q.jsxs)(ge,{children:[(0,q.jsx)(ie,{asChild:!0,children:(0,q.jsx)(U,{type:`button`,variant:`ghost`,size:`icon-sm`,"data-testid":`plumix-preview-menu`,"aria-label":n._({id:`editor.header.preview`,message:`Preview`}),children:(0,q.jsx)(Fn,{})})}),(0,q.jsxs)(Te,{align:`end`,children:[(0,q.jsxs)(T,{"data-testid":`plumix-preview-draft`,disabled:!e,onSelect:()=>e&&a(e),children:[(0,q.jsx)(Rn,{}),(0,q.jsx)(i,{id:`editor.header.viewDraft`,message:`View current draft`})]}),(0,q.jsxs)(T,{"data-testid":`plumix-preview-live`,disabled:!t,onSelect:()=>t&&a(t),children:[(0,q.jsx)(zn,{}),(0,q.jsx)(i,{id:`editor.header.viewLive`,message:`View live entry`})]})]})]})}var so=(0,G.lazy)(()=>Ut(()=>import(`./json-highlight-BbhGhG56.js`),__vite__mapDeps([31,1]),import.meta.url)),co=`json-inspector-output`,lo=`bg-muted max-h-[70vh] overflow-auto rounded p-3 text-xs leading-relaxed`;function uo(){let[e,t]=(0,G.useState)(`page`),n=Q(e=>e.tree),r=Q(e=>e.activeId),a=e===`block`&&r?J(n,r):null,o=e===`page`?n:a;return(0,q.jsxs)(`div`,{className:`flex min-h-0 flex-col gap-2`,"data-testid":`json-inspector`,children:[(0,q.jsxs)(`div`,{className:`flex gap-1`,role:`tablist`,children:[(0,q.jsx)(mo,{scope:`page`,active:e===`page`,onClick:()=>t(`page`),children:(0,q.jsx)(i,{id:`editor.json.page`,message:`Page`})}),(0,q.jsx)(mo,{scope:`block`,active:e===`block`,onClick:()=>t(`block`),children:(0,q.jsx)(i,{id:`editor.json.block`,message:`Block`})})]}),e===`block`&&!a?(0,q.jsx)(`p`,{className:`text-muted-foreground text-sm`,"data-testid":`json-inspector-empty`,children:(0,q.jsx)(i,{id:`editor.json.empty`,message:`Select a block to inspect.`})}):(0,q.jsx)(fo,{json:JSON.stringify(o,null,2)})]})}function fo({json:e}){return(0,q.jsx)(G.Suspense,{fallback:(0,q.jsx)(`pre`,{className:lo,"data-testid":co,children:e}),children:(0,q.jsx)(so,{json:e,testId:co,className:lo})})}function po(){return(0,q.jsx)(be,{open:Q(e=>e.jsonOpen),onOpenChange:Q(e=>e.setJsonOpen),children:(0,q.jsxs)(D,{className:`flex max-h-[85vh] flex-col gap-3 sm:max-w-3xl`,"data-testid":`json-source-dialog`,children:[(0,q.jsx)(we,{children:(0,q.jsx)(Ee,{children:(0,q.jsx)(i,{id:`editor.json.title`,message:`Source`})})}),(0,q.jsx)(uo,{})]})})}function mo({scope:e,active:t,onClick:n,children:r}){return(0,q.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":t,"data-testid":`json-inspector-toggle-${e}`,onClick:n,className:`hover:bg-accent aria-selected:bg-accent rounded px-2 py-1 text-sm`,children:r})}var ho=16;function go({registry:e}){let{i18n:t}=r(),n=pa(),a=Q(e=>e.tree),o=Q(e=>e.activeId),s=Q(e=>e.select),c=Q(e=>e.moveBlock),l=Q(e=>e.setBlockLabel),u=Q(e=>e.removeSelected),d=Q(e=>e.duplicateSelected),f=(0,G.useMemo)(()=>Ar(a),[a]),p=(0,G.useMemo)(()=>vi(n,navigator.clipboard,hi(e)),[n,e]),m=(e,t)=>{switch(s(e),t){case`copy`:p.copy();break;case`paste`:p.paste();break;case`duplicate`:d();break;case`delete`:u();break}},h=We(it(at,{activationConstraint:{distance:4}})),g=n=>{let r=e.get(n);return r?.title==null?n:B(r.title,t)};return f.length===0?(0,q.jsx)(`div`,{className:`text-muted-foreground p-3 text-sm`,"data-testid":`layers-empty`,children:(0,q.jsx)(i,{id:`editor.layers.empty`,message:`No blocks yet.`})}):(0,q.jsx)(`div`,{className:`p-2`,"data-testid":`layers-tree`,children:(0,q.jsx)(nt,{sensors:h,collisionDetection:Je,onDragEnd:e=>{let t=e.over?.id,n=e.active.id;if(t==null||t===n)return;let r=Mr(f,String(n),String(t),e.delta.x,ho);r&&c(String(n),r)},children:(0,q.jsx)(Xe,{items:f.map(e=>e.id),strategy:qe,children:f.map(t=>(0,q.jsx)(_o,{item:t,icon:e.get(t.name)?.icon,label:t.label??g(t.name),active:t.id===o,onSelect:()=>s(t.id),onRename:e=>l(t.id,e),onAction:e=>m(t.id,e)},t.id))})})})}function _o({item:e,icon:t,label:n,active:a,onSelect:o,onRename:s,onAction:c}){let{i18n:l}=r(),{attributes:u,listeners:d,setNodeRef:f,transform:p,transition:m}=Ye({id:e.id}),[h,g]=(0,G.useState)(!1),[_,v]=(0,G.useState)(n),y=()=>{v(e.label??``),g(!0)},b=()=>{g(!1),s(_)},x=e=>{e.key===`Enter`&&b(),e.key===`Escape`&&g(!1)},S=e=>{(e.key===`Delete`||e.key===`Backspace`)&&(e.preventDefault(),c(`delete`))};return(0,q.jsx)(`div`,{ref:f,style:{transform:ze.Transform.toString(p),transition:m,paddingInlineStart:e.depth*ho},className:`group flex items-center gap-1`,children:h?(0,q.jsx)(`input`,{autoFocus:!0,value:_,onChange:e=>v(e.target.value),onBlur:b,onKeyDown:x,"data-testid":`layer-rename-${e.id}`,placeholder:n,className:`border-input bg-background w-full rounded border p-1 text-sm`}):(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)(`button`,{type:`button`,"data-testid":`layer-${e.id}`,"aria-current":a?`true`:void 0,onClick:o,onDoubleClick:y,className:`hover:bg-accent aria-[current]:bg-accent flex min-w-0 flex-1 items-center gap-1.5 rounded p-1.5 text-start text-sm`,...u,...d,onKeyDown:S,children:[(0,q.jsx)(Mi,{name:t,className:`text-muted-foreground size-4 shrink-0`}),(0,q.jsx)(`span`,{className:`truncate`,children:n})]}),(0,q.jsxs)(ge,{children:[(0,q.jsx)(ie,{asChild:!0,children:(0,q.jsx)(U,{type:`button`,variant:`ghost`,size:`icon-sm`,"data-testid":`layer-menu-${e.id}`,"aria-label":l._({id:`editor.layers.actions`,message:`Block actions`}),className:`shrink-0 opacity-0 group-hover:opacity-100 focus-visible:opacity-100 data-[state=open]:opacity-100`,children:(0,q.jsx)(On,{className:`size-4`})})}),(0,q.jsxs)(Te,{align:`end`,children:[(0,q.jsxs)(T,{"data-testid":`layer-copy-${e.id}`,onSelect:()=>c(`copy`),children:[(0,q.jsx)(Ie,{}),(0,q.jsx)(i,{id:`editor.layers.copy`,message:`Copy`})]}),(0,q.jsxs)(T,{"data-testid":`layer-paste-${e.id}`,onSelect:()=>c(`paste`),children:[(0,q.jsx)(Mn,{}),(0,q.jsx)(i,{id:`editor.layers.paste`,message:`Paste`})]}),(0,q.jsxs)(T,{"data-testid":`layer-duplicate-${e.id}`,onSelect:()=>c(`duplicate`),children:[(0,q.jsx)(Nn,{}),(0,q.jsx)(i,{id:`editor.layers.duplicate`,message:`Duplicate`})]}),(0,q.jsx)(ue,{}),(0,q.jsxs)(T,{"data-testid":`layer-delete-${e.id}`,onSelect:()=>c(`delete`),className:`text-destructive focus:text-destructive`,children:[(0,q.jsx)(lt,{}),(0,q.jsx)(i,{id:`editor.layers.delete`,message:`Delete`})]})]})]})]})})}var vo=[`id`,`title`,`role`,`lang`,`dir`,`aria-label`,`aria-describedby`,`aria-hidden`,`aria-live`,`data-testid`];function yo({attributes:e,onChange:t,onRename:n}){let r=Object.keys(e);return(0,q.jsxs)(`div`,{className:`flex flex-col gap-1`,"data-testid":`html-attributes`,children:[r.map(i=>(0,q.jsx)(bo,{name:i,value:e[i]??``,siblingKeys:r,onChange:t,onRename:n},i)),r.length===0?(0,q.jsx)(`p`,{className:`text-muted-foreground text-xs`,"data-testid":`html-attributes-empty`,children:(0,q.jsx)(i,{id:`editor.htmlAttrs.none`,message:`No attributes set.`})}):null,(0,q.jsx)(xo,{onAdd:t,existingKeys:r})]})}function bo({name:e,value:t,siblingKeys:n,onChange:r,onRename:a}){let[o,s]=(0,G.useState)(e);return(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,"data-testid":`html-attr-${e}`,children:[(0,q.jsx)(W,{className:`h-8 w-1/3 shrink-0`,"data-testid":`html-attr-${e}-key`,value:o,onChange:e=>s(e.target.value),onBlur:()=>{let t=o.trim().toLowerCase();t!==e.toLowerCase()&&Jn(t)&&!n.some(e=>e.toLowerCase()===t)?a(e,t):s(e)},onKeyDown:e=>{e.key===`Enter`&&e.currentTarget.blur()}}),(0,q.jsx)(W,{className:`h-8`,"data-testid":`html-attr-${e}-value`,value:t,onChange:t=>r(e,t.target.value)}),(0,q.jsxs)(U,{type:`button`,variant:`ghost`,size:`icon`,className:`text-destructive hover:text-destructive size-8 shrink-0`,"data-testid":`html-attr-${e}-remove`,onClick:()=>r(e,null),children:[(0,q.jsx)(lt,{}),(0,q.jsx)(`span`,{className:`sr-only`,children:(0,q.jsx)(i,{id:`editor.htmlAttrs.remove`,message:`Remove`})})]})]})}function xo({onAdd:e,existingKeys:t}){let{i18n:n}=r(),[a,o]=(0,G.useState)(!1),[s,c]=(0,G.useState)(``),[l,u]=(0,G.useState)(``),[d,f]=(0,G.useState)(``),p=n._({id:`editor.htmlAttrs.add.key`,message:`attribute`}),m=n._({id:`editor.htmlAttrs.add.value`,message:`value`}),h=new Set(t.map(e=>e.toLowerCase())),g=vo.filter(e=>!h.has(e)),_=s.trim().toLowerCase(),v=Jn(_)&&!h.has(_)&&!vo.includes(_),b=e=>{u(e),c(``),o(!1)},x=l!==``&&!h.has(l)&&d.trim()!==``;return(0,q.jsxs)(`form`,{className:`flex items-center gap-2 pt-1`,"data-testid":`html-attr-add`,onSubmit:t=>{t.preventDefault(),x&&(e(l,d),u(``),f(``))},children:[(0,q.jsxs)(He,{open:a,onOpenChange:o,children:[(0,q.jsx)(Ge,{asChild:!0,children:(0,q.jsxs)(U,{type:`button`,variant:`outline`,size:`sm`,role:`combobox`,"aria-expanded":a,"aria-label":l===``?p:l,"data-testid":`html-attr-add-key`,className:y(`h-8 w-1/3 shrink-0 justify-between gap-1 font-normal`,l===``&&`text-muted-foreground`),children:[(0,q.jsx)(`span`,{className:`truncate`,children:l===``?(0,q.jsx)(i,{id:`editor.htmlAttrs.add.key`,message:`attribute`}):l}),(0,q.jsx)(Pe,{className:`opacity-50`})]})}),(0,q.jsx)(Ve,{className:`w-56 p-0`,align:`start`,children:(0,q.jsxs)(Se,{children:[(0,q.jsx)(_e,{value:s,onValueChange:c,placeholder:n._({id:`editor.htmlAttrs.add.search`,message:`Search attribute…`}),"data-testid":`html-attr-add-key-search`}),(0,q.jsxs)(k,{children:[v?(0,q.jsxs)(E,{value:_,onSelect:()=>b(_),"data-testid":`html-attr-add-key-create`,children:[(0,q.jsx)(F,{className:`me-2 size-4`}),(0,q.jsx)(`span`,{className:`sr-only`,children:(0,q.jsx)(i,{id:`editor.htmlAttrs.add.create`,message:`Create`})}),_]}):(0,q.jsx)(O,{children:(0,q.jsx)(i,{id:`editor.htmlAttrs.add.none`,message:`No attribute.`})}),(0,q.jsx)(Ce,{children:g.map(e=>(0,q.jsx)(E,{value:e,onSelect:()=>b(e),"data-testid":`html-attr-add-key-option-${e}`,children:e},e))})]})]})})]}),(0,q.jsx)(W,{name:`html-attr-add-value`,className:`h-8`,"data-testid":`html-attr-add-value`,"aria-label":m,placeholder:m,value:d,onChange:e=>f(e.target.value)}),(0,q.jsxs)(U,{type:`submit`,variant:`ghost`,size:`icon`,className:`size-8 shrink-0`,disabled:!x,"data-testid":`html-attr-add-submit`,children:[(0,q.jsx)(F,{}),(0,q.jsx)(`span`,{className:`sr-only`,children:(0,q.jsx)(i,{id:`editor.htmlAttrs.add`,message:`Add attribute`})})]})]})}var So=/^#[0-9a-fA-F]{6}$/,Co=`__none__`;function wo({label:e,property:t,category:n,value:r,tokens:a,onChange:o}){let s=`style-control-${t}`,c=(0,G.useId)(),l=n?a[n]??{}:{},[u,d]=(0,G.useState)(Object.keys(l).length>0?`token`:`custom`),f=n&&r!==void 0?ut(r,n):null,p=n===void 0||(r===void 0?u===`custom`:f===null),m=n===`color`,h=p&&r!==void 0?r:``;return(0,q.jsxs)(M,{className:`gap-1`,"data-testid":s,children:[(0,q.jsxs)(`div`,{className:`flex flex-col gap-0.5`,children:[(0,q.jsx)(R,{htmlFor:c,className:`text-xs`,children:e}),n?(0,q.jsxs)(`div`,{className:`flex justify-end gap-0.5 text-xs`,children:[(0,q.jsx)(To,{testId:`${s}-mode-token`,active:!p,onClick:()=>{d(`token`),r!==void 0&&f===null&&o(null)},children:(0,q.jsx)(i,{id:`editor.styles.mode.token`,message:`Token`})}),(0,q.jsx)(To,{testId:`${s}-mode-custom`,active:p,onClick:()=>{d(`custom`),f!==null&&o(null)},children:(0,q.jsx)(i,{id:`editor.styles.mode.custom`,message:`Custom`})})]}):null]}),p?(0,q.jsxs)(`div`,{className:`flex gap-1`,children:[m?(0,q.jsx)(`input`,{type:`color`,"data-testid":`${s}-swatch`,"aria-label":`${e} color`,value:So.test(h)?h:`#000000`,onChange:e=>o(e.target.value),className:`border-input size-9 shrink-0 cursor-pointer rounded-md border bg-transparent p-1`}):null,(0,q.jsx)(W,{id:c,"data-testid":`${s}-custom`,value:h,onChange:e=>o(e.target.value===``?null:e.target.value)})]}):(0,q.jsxs)(Gt,{value:f??Co,onValueChange:e=>o(e===Co?null:pt(e,n,a)),children:[(0,q.jsx)(Wt,{id:c,className:`w-full`,"data-testid":`${s}-token`,children:(0,q.jsx)(Kt,{})}),(0,q.jsxs)(Ht,{children:[(0,q.jsx)(H,{value:Co,"data-testid":`${s}-token-none`,children:`—`}),Object.keys(l).map(e=>(0,q.jsx)(H,{value:e,"data-testid":`${s}-token-${e}`,children:l[e]?.label??e},e))]})]})]})}function To({testId:e,active:t,onClick:n,children:r}){return(0,q.jsx)(`button`,{type:`button`,"data-testid":e,onClick:n,className:y(`rounded px-1.5 py-0.5`,t?`bg-accent text-accent-foreground`:`text-muted-foreground hover:text-foreground`),children:r})}var Eo=`alignContent.alignItems.alignSelf.animation.appearance.aspectRatio.backdropFilter.background.backgroundColor.backgroundImage.backgroundPosition.backgroundRepeat.backgroundSize.border.borderBottom.borderBottomLeftRadius.borderBottomRightRadius.borderColor.borderLeft.borderRadius.borderRight.borderStyle.borderTop.borderTopLeftRadius.borderTopRightRadius.borderWidth.bottom.boxShadow.boxSizing.clear.color.columnGap.content.cursor.display.fill.filter.flex.flexBasis.flexDirection.flexGrow.flexShrink.flexWrap.float.font.fontFamily.fontSize.fontStyle.fontWeight.gap.gridArea.gridAutoColumns.gridAutoFlow.gridAutoRows.gridColumn.gridRow.gridTemplateColumns.gridTemplateRows.height.inset.justifyContent.justifyItems.justifySelf.left.letterSpacing.lineHeight.listStyle.listStyleType.margin.marginBottom.marginLeft.marginRight.marginTop.maxHeight.maxWidth.minHeight.minWidth.objectFit.objectPosition.opacity.order.outline.overflow.overflowX.overflowY.padding.paddingBottom.paddingLeft.paddingRight.paddingTop.placeContent.placeItems.pointerEvents.position.right.rowGap.stroke.textAlign.textDecoration.textOverflow.textShadow.textTransform.top.transform.transformOrigin.transition.translate.userSelect.verticalAlign.visibility.whiteSpace.width.wordBreak.zIndex`.split(`.`),Do=/^(--)?[a-zA-Z][a-zA-Z-]*$/,Oo=`__none__`;function ko({declarations:e,tokens:t,onChange:n,onRename:r}){let a=e.map(e=>e.property);return(0,q.jsxs)(`div`,{className:`flex flex-col gap-1`,"data-testid":`style-declarations`,children:[e.map(({property:e,value:i})=>(0,q.jsx)(Ao,{property:e,value:i,siblingKeys:a,tokens:t,onChange:n,onRename:r},e)),e.length===0?(0,q.jsx)(`p`,{className:`text-muted-foreground text-xs`,"data-testid":`style-declarations-empty`,children:(0,q.jsx)(i,{id:`editor.styles.none`,message:`No styles set for this device.`})}):null,(0,q.jsx)(jo,{onAdd:n,existingKeys:a})]})}function Ao({property:e,value:t,siblingKeys:n,tokens:r,onChange:a,onRename:o}){let[s,c]=(0,G.useState)(e),l=mt(e),u=l?r[l]??{}:{},d=l?ut(t,l):null,f=e=>l?dt(e,l):e;return(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,"data-testid":`style-declaration-${e}`,children:[(0,q.jsx)(W,{className:`h-8 w-1/3 shrink-0`,"data-testid":`style-declaration-${e}-key`,value:s,onChange:e=>c(e.target.value),onBlur:()=>{let t=s.trim();t!==e&&Do.test(t)&&!n.includes(t)?o(e,t):c(e)},onKeyDown:e=>{e.key===`Enter`&&e.currentTarget.blur()}}),d===null?(0,q.jsx)(W,{className:`h-8`,"data-testid":`style-declaration-${e}-value`,value:t,onChange:t=>a(e,t.target.value)}):(0,q.jsxs)(Gt,{value:d,onValueChange:t=>a(e,t===Oo||!l?null:pt(t,l,r)),children:[(0,q.jsx)(Wt,{size:`sm`,className:`w-full`,"data-testid":`style-declaration-${e}-token`,children:(0,q.jsx)(Kt,{})}),(0,q.jsxs)(Ht,{children:[(0,q.jsx)(H,{value:Oo,"data-testid":`style-declaration-${e}-token-none`,children:`—`}),d in u?null:(0,q.jsx)(H,{value:d,children:f(d)}),Object.keys(u).map(t=>(0,q.jsx)(H,{value:t,"data-testid":`style-declaration-${e}-token-${t}`,children:f(t)},t))]})]}),(0,q.jsxs)(U,{type:`button`,variant:`ghost`,size:`icon`,className:`text-destructive hover:text-destructive size-8 shrink-0`,"data-testid":`style-declaration-${e}-remove`,onClick:()=>a(e,null),children:[(0,q.jsx)(lt,{}),(0,q.jsx)(`span`,{className:`sr-only`,children:(0,q.jsx)(i,{id:`editor.styles.remove`,message:`Remove`})})]})]})}function jo({onAdd:e,existingKeys:t}){let{i18n:n}=r(),[a,o]=(0,G.useState)(!1),[s,c]=(0,G.useState)(``),[l,u]=(0,G.useState)(``),[d,f]=(0,G.useState)(``),p=n._({id:`editor.styles.add.key`,message:`property`}),m=n._({id:`editor.styles.add.value`,message:`value`}),h=new Set(t),g=Eo.filter(e=>!h.has(e)),_=s.trim(),v=new Set([...Eo,...t].map(e=>e.toLowerCase())),b=Do.test(_)&&!v.has(_.toLowerCase()),x=e=>{u(e),c(``),o(!1)},S=l!==``&&!h.has(l)&&d.trim()!==``;return(0,q.jsxs)(`form`,{className:`flex items-center gap-2 pt-1`,"data-testid":`style-declaration-add`,onSubmit:t=>{t.preventDefault(),S&&(e(l,d),u(``),f(``))},children:[(0,q.jsxs)(He,{open:a,onOpenChange:o,children:[(0,q.jsx)(Ge,{asChild:!0,children:(0,q.jsxs)(U,{type:`button`,variant:`outline`,size:`sm`,role:`combobox`,"aria-expanded":a,"aria-label":l===``?p:l,"data-testid":`style-declaration-add-key`,className:y(`h-8 w-1/3 shrink-0 justify-between gap-1 font-normal`,l===``&&`text-muted-foreground`),children:[(0,q.jsx)(`span`,{className:`truncate`,children:l===``?(0,q.jsx)(i,{id:`editor.styles.add.key`,message:`property`}):l}),(0,q.jsx)(Pe,{className:`opacity-50`})]})}),(0,q.jsx)(Ve,{className:`w-56 p-0`,align:`start`,children:(0,q.jsxs)(Se,{children:[(0,q.jsx)(_e,{value:s,onValueChange:c,placeholder:n._({id:`editor.styles.add.search`,message:`Search property…`}),"data-testid":`style-declaration-add-key-search`}),(0,q.jsxs)(k,{children:[b?(0,q.jsxs)(E,{value:_,onSelect:()=>x(_),"data-testid":`style-declaration-add-key-create`,children:[(0,q.jsx)(F,{className:`me-2 size-4`}),(0,q.jsx)(`span`,{className:`sr-only`,children:(0,q.jsx)(i,{id:`editor.styles.add.create`,message:`Create`})}),_]}):(0,q.jsx)(O,{children:(0,q.jsx)(i,{id:`editor.styles.add.none`,message:`No property.`})}),(0,q.jsx)(Ce,{children:g.map(e=>(0,q.jsx)(E,{value:e,onSelect:()=>x(e),"data-testid":`style-declaration-add-key-option-${e}`,children:e},e))})]})]})})]}),(0,q.jsx)(W,{name:`style-declaration-add-value`,className:`h-8`,"data-testid":`style-declaration-add-value`,"aria-label":m,placeholder:m,value:d,onChange:e=>f(e.target.value)}),(0,q.jsxs)(U,{type:`submit`,variant:`ghost`,size:`icon`,className:`size-8 shrink-0`,disabled:!S,"data-testid":`style-declaration-add-submit`,children:[(0,q.jsx)(F,{}),(0,q.jsx)(`span`,{className:`sr-only`,children:(0,q.jsx)(i,{id:`editor.styles.add`,message:`Add style`})})]})]})}var Mo={id:`size`,label:(0,q.jsx)(i,{id:`editor.styles.size`,message:`Size`}),controls:[{property:`width`,label:`Width`},{property:`height`,label:`Height`},{property:`minWidth`,label:`Min width`},{property:`minHeight`,label:`Min height`},{property:`maxWidth`,label:`Max width`},{property:`maxHeight`,label:`Max height`}]},No={id:`background`,label:(0,q.jsx)(i,{id:`editor.styles.background`,message:`Background`}),controls:[{property:`background`,label:`Background`,category:`color`,fullWidth:!0}]},Po={id:`typography`,label:(0,q.jsx)(i,{id:`editor.styles.typography`,message:`Typography`}),controls:[{property:`color`,label:`Text color`,category:`color`},{property:`fontFamily`,label:`Font family`,category:`fontFamily`},{property:`fontSize`,label:`Font size`,category:`fontSize`},{property:`fontWeight`,label:`Font weight`,category:`fontWeight`},{property:`lineHeight`,label:`Line height`,category:`lineHeight`},{property:`letterSpacing`,label:`Letter spacing`,category:`letterSpacing`}]},Fo={id:`border`,label:(0,q.jsx)(i,{id:`editor.styles.border`,message:`Border`}),controls:[{property:`borderStyle`,label:`Style`,options:[`none`,`solid`,`dashed`,`dotted`,`double`]},{property:`borderColor`,label:`Color`,category:`color`,fullWidth:!0},{property:`borderWidth`,label:`Width`,category:`borderWidth`},{property:`borderRadius`,label:`Radius`,category:`borderRadius`}]},Io=[`layout`,`size`,`visibility`,`background`,`typography`,`spacing`,`border`,`effects`];function Lo({tokens:e,resolvePluginFieldType:t}){let n=Q(e=>e.activeId),r=Q(e=>e.device),a=Q(e=>e.activeId?J(e.tree,e.activeId):null),o=Q(e=>e.updateBlockStyle),s=Q(e=>e.updateBlockHidden),c=Q(e=>e.renameBlockStyleProperty),l=Q(e=>e.setBlockTagName),u=Q(e=>e.setBlockClassName),d=Q(e=>e.updateBlockHtmlAttr),f=Q(e=>e.renameBlockHtmlAttr);if(!n||!a)return(0,q.jsx)(`p`,{className:`text-muted-foreground p-4 text-sm`,"data-testid":`styles-tab-empty`,children:(0,q.jsx)(i,{id:`editor.styles.empty`,message:`Select a block to style it.`})});let p=$i(r),m=a.style?.[p],h=e=>ft(m?.[e])??void 0,g=Object.entries(m??{}).flatMap(([e,t])=>typeof t==`string`?[{property:e,value:t}]:[]),_=e=>t=>o(n,p,e,t);return(0,q.jsxs)(`div`,{className:`flex flex-col gap-2 p-3`,"data-testid":`styles-tab`,children:[(0,q.jsxs)(`p`,{className:`text-muted-foreground text-xs`,"data-testid":`styles-tab-scope`,children:[(0,q.jsx)(i,{id:`editor.styles.scope`,message:`Editing`}),` · `,r]}),(0,q.jsxs)(Be,{type:`multiple`,defaultValue:Io,children:[(0,q.jsxs)(P,{value:`layout`,children:[(0,q.jsx)(j,{"data-testid":`styles-section-layout`,children:(0,q.jsx)(i,{id:`editor.styles.layout`,message:`Layout`})}),(0,q.jsx)(N,{children:(0,q.jsx)(Ko,{valueOf:h,setter:_,tokens:e})})]}),(0,q.jsx)(Ro,{section:Mo,valueOf:h,setter:_,tokens:e}),(0,q.jsxs)(P,{value:`visibility`,children:[(0,q.jsx)(j,{"data-testid":`styles-section-visibility`,children:(0,q.jsx)(i,{id:`editor.styles.visibility`,message:`Visibility`})}),(0,q.jsx)(N,{children:(0,q.jsx)(Wo,{hidden:a.hidden,onToggle:(e,t)=>s(n,e,t)})})]}),(0,q.jsx)(Ro,{section:No,valueOf:h,setter:_,tokens:e,resolvePluginFieldType:t}),(0,q.jsx)(Ro,{section:Po,valueOf:h,setter:_,tokens:e}),(0,q.jsxs)(P,{value:`spacing`,children:[(0,q.jsx)(j,{"data-testid":`styles-section-spacing`,children:(0,q.jsx)(i,{id:`editor.styles.spacing`,message:`Spacing`})}),(0,q.jsx)(N,{children:(0,q.jsx)(fs,{tokens:e,valueOf:h,setter:_})})]}),(0,q.jsx)(Ro,{section:Fo,valueOf:h,setter:_,tokens:e}),(0,q.jsxs)(P,{value:`effects`,children:[(0,q.jsx)(j,{"data-testid":`styles-section-effects`,children:(0,q.jsx)(i,{id:`editor.styles.effects`,message:`Shadows & Effects`})}),(0,q.jsx)(N,{className:`flex flex-col gap-3`,children:(0,q.jsx)(rs,{tokens:e,valueOf:h,setter:_})})]}),(0,q.jsxs)(P,{value:`declarations`,children:[(0,q.jsx)(j,{"data-testid":`styles-section-declarations`,children:(0,q.jsx)(i,{id:`editor.styles.customCss`,message:`Custom CSS`})}),(0,q.jsxs)(N,{className:`flex flex-col gap-3`,children:[(0,q.jsx)(ds,{className:a.className,onChange:e=>u(n,e)}),(0,q.jsx)(`div`,{className:`border-border border-t pt-3`,children:(0,q.jsx)(ko,{declarations:g,tokens:e,onChange:(e,t)=>_(e)(t),onRename:(e,t)=>c(n,p,e,t)})})]})]}),(0,q.jsxs)(P,{value:`html`,children:[(0,q.jsx)(j,{"data-testid":`styles-section-html`,children:(0,q.jsx)(i,{id:`editor.htmlAttrs.title`,message:`HTML attributes`})}),(0,q.jsxs)(N,{className:`flex flex-col gap-3`,children:[(0,q.jsx)(us,{value:a.tagName,onChange:e=>l(n,e)}),(0,q.jsx)(yo,{attributes:a.htmlAttrs??{},onChange:(e,t)=>d(n,e,t),onRename:(e,t)=>f(n,e,t)})]})]})]})]})}function Ro({section:e,valueOf:t,setter:n,tokens:r,resolvePluginFieldType:i}){return(0,q.jsxs)(P,{value:e.id,children:[(0,q.jsx)(j,{"data-testid":`styles-section-${e.id}`,children:e.label}),(0,q.jsxs)(N,{className:`flex flex-col gap-3`,children:[(0,q.jsx)(`div`,{className:`grid grid-cols-2 gap-x-2 gap-y-3`,children:e.controls.map(e=>(0,q.jsx)(`div`,{className:e.options||e.fullWidth?`col-span-2`:void 0,children:e.options?(0,q.jsx)(Jo,{label:e.label,property:e.property,options:e.options,value:t(e.property),onChange:n(e.property)}):(0,q.jsx)(wo,{label:e.label,property:e.property,category:e.category,value:t(e.property),tokens:r,onChange:n(e.property)})},e.property))}),e.id===`typography`&&(0,q.jsx)(Ho,{valueOf:t,setter:n}),e.id===`background`&&(0,q.jsx)(ts,{value:t(`backgroundImage`),onChange:n(`backgroundImage`),resolvePluginFieldType:i})]})]})}var zo=[{id:`bold`,property:`fontWeight`,on:`bold`,Icon:x,label:`Bold`},{id:`italic`,property:`fontStyle`,on:`italic`,Icon:S,label:`Italic`},{id:`underline`,property:`textDecoration`,on:`underline`,Icon:ne,label:`Underline`},{id:`strikethrough`,property:`textDecoration`,on:`line-through`,Icon:C,label:`Strikethrough`}],Bo=[{value:`left`,Icon:Vt,label:`Align left`},{value:`center`,Icon:An,label:`Align center`},{value:`right`,Icon:jn,label:`Align right`}];function Vo({value:e,testid:t,label:n,children:r}){return(0,q.jsxs)(Tn,{children:[(0,q.jsx)(Sn,{asChild:!0,children:(0,q.jsx)(Ze,{value:e,"data-testid":t,"aria-label":n,className:`px-2`,children:r})}),(0,q.jsx)(Cn,{children:n})]})}function Ho({valueOf:e,setter:t}){let{i18n:n}=r();return(0,q.jsx)(wn,{delayDuration:300,children:(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-1`,"data-testid":`style-text-controls`,children:[(0,q.jsx)(tt,{type:`multiple`,variant:`outline`,size:`sm`,"aria-label":n._({id:`editor.styles.textFormatting`,message:`Text formatting`}),value:zo.filter(t=>e(t.property)===t.on).map(e=>e.id),onValueChange:n=>{for(let r of zo){let i=e(r.property)===r.on,a=n.includes(r.id);i!==a&&t(r.property)(a?r.on:null)}},children:zo.map(e=>(0,q.jsx)(Vo,{value:e.id,testid:`style-mark-${e.id}`,label:Xo(n,e.id),children:(0,q.jsx)(e.Icon,{})},e.id))}),(0,q.jsx)(tt,{type:`single`,variant:`outline`,size:`sm`,"aria-label":n._({id:`editor.styles.textAlignment`,message:`Text alignment`}),value:e(`textAlign`)??``,onValueChange:e=>t(`textAlign`)(e||null),children:Bo.map(({value:e,Icon:t})=>(0,q.jsx)(Vo,{value:e,testid:`style-align-${e}`,label:Zo(n,e),children:(0,q.jsx)(t,{})},e))})]})})}var Uo=[{id:`desktop`,bucket:`large`,label:(0,q.jsx)(i,{id:`editor.styles.visibility.desktop`,message:`Hide on desktop`})},{id:`tablet`,bucket:`medium`,label:(0,q.jsx)(i,{id:`editor.styles.visibility.tablet`,message:`Hide on tablet`})},{id:`mobile`,bucket:`small`,label:(0,q.jsx)(i,{id:`editor.styles.visibility.mobile`,message:`Hide on mobile`})}];function Wo({hidden:e,onToggle:t}){return(0,q.jsx)(`div`,{className:`flex flex-col gap-3`,"data-testid":`style-visibility-controls`,children:Uo.map(n=>{let r=e?.[n.bucket]??!1;return(0,q.jsxs)(M,{orientation:`horizontal`,children:[(0,q.jsx)(R,{htmlFor:`visibility-${n.id}`,className:`text-xs`,children:n.label}),(0,q.jsx)(Qe,{id:`visibility-${n.id}`,checked:r,onCheckedChange:e=>t(n.bucket,e),"data-testid":`style-visibility-${n.id}`})]},n.id)})})}var Go={block:`Block`,flex:`Flex`,grid:`Grid`,row:`Row`,column:`Column`,"flex-start":`Start`,center:`Center`,"flex-end":`End`,"space-between":`Between`,stretch:`Stretch`};function Ko({valueOf:e,setter:t,tokens:n}){let r=e(`display`),i=r===`flex`;return(0,q.jsxs)(`div`,{className:`flex flex-col gap-3`,"data-testid":`style-layout-controls`,children:[(0,q.jsx)(Yo,{label:`Display`,property:`display`,options:[`block`,`flex`,`grid`],valueOf:e,setter:t}),i?(0,q.jsx)(Yo,{label:`Direction`,property:`flexDirection`,options:[`row`,`column`],valueOf:e,setter:t}):null,i||r===`grid`?(0,q.jsx)(wo,{label:`Gap`,property:`gap`,category:`spacing`,value:e(`gap`),tokens:n,onChange:t(`gap`)}):null,i?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(Yo,{label:`Justify`,property:`justifyContent`,options:[`flex-start`,`center`,`flex-end`,`space-between`],valueOf:e,setter:t}),(0,q.jsx)(Yo,{label:`Align`,property:`alignItems`,options:[`flex-start`,`center`,`flex-end`,`stretch`],valueOf:e,setter:t})]}):null,(0,q.jsx)(Yo,{label:`Align self`,property:`alignSelf`,options:[`flex-start`,`center`,`flex-end`,`stretch`],valueOf:e,setter:t})]})}var qo=`__unset__`;function Jo({label:e,property:t,options:n,value:r,onChange:i}){let a=`style-control-${t}`,o=(0,G.useId)();return(0,q.jsxs)(M,{className:`gap-1`,"data-testid":a,children:[(0,q.jsx)(R,{htmlFor:o,className:`text-xs`,children:e}),(0,q.jsxs)(Gt,{value:r??qo,onValueChange:e=>i(e===qo?null:e),children:[(0,q.jsx)(Wt,{id:o,className:`w-full`,"data-testid":`${a}-select`,children:(0,q.jsx)(Kt,{})}),(0,q.jsxs)(Ht,{children:[(0,q.jsx)(H,{value:qo,"data-testid":`${a}-option-unset`,children:`—`}),n.map(e=>(0,q.jsx)(H,{value:e,"data-testid":`${a}-option-${e}`,children:e},e))]})]})]})}function Yo({label:e,property:t,options:n,valueOf:r,setter:i}){let a=(0,G.useId)();return(0,q.jsxs)(M,{className:`gap-1`,children:[(0,q.jsx)(Re,{id:a,className:`text-xs`,children:e}),(0,q.jsx)(tt,{type:`single`,variant:`outline`,size:`sm`,"aria-labelledby":a,value:r(t)??``,onValueChange:e=>i(t)(e||null),children:n.map(e=>(0,q.jsx)(Ze,{value:e,"data-testid":`style-${t}-${e}`,className:`text-xs`,children:Go[e]??e},e))})]})}function Xo(e,t){switch(t){case`italic`:return e._({id:`editor.styles.mark.italic`,message:`Italic`});case`underline`:return e._({id:`editor.styles.mark.underline`,message:`Underline`});case`strikethrough`:return e._({id:`editor.styles.mark.strikethrough`,message:`Strikethrough`});default:return e._({id:`editor.styles.mark.bold`,message:`Bold`})}}function Zo(e,t){switch(t){case`center`:return e._({id:`editor.styles.align.center`,message:`Align center`});case`right`:return e._({id:`editor.styles.align.right`,message:`Align right`});default:return e._({id:`editor.styles.align.left`,message:`Align left`})}}var Qo=[`Top`,`Right`,`Bottom`,`Left`],$o=[{prefix:`margin`,testId:`box-model-margin`,label:(0,q.jsx)(i,{id:`editor.styles.margin`,message:`Margin`})},{prefix:`padding`,testId:`box-model-padding`,label:(0,q.jsx)(i,{id:`editor.styles.padding`,message:`Padding`})}];function es(e){return e?.match(/^url\((['"]?)(.*)\1\)$/)?.[2]??``}function ts({value:e,onChange:t,resolvePluginFieldType:n}){let r=n?.(`mediaUrl`);return r?(0,q.jsxs)(M,{className:`gap-1`,"data-testid":`style-control-backgroundImage`,children:[(0,q.jsx)(Re,{className:`text-xs`,children:(0,q.jsx)(i,{id:`editor.styles.fillImage`,message:`Fill image`})}),(0,G.createElement)(r,{field:{name:`backgroundImage`,type:`mediaUrl`,accept:`image/`},rhf:{value:es(e),onChange:e=>t(typeof e==`string`&&e!==``?`url("${e}")`:null),onBlur:()=>void 0,name:`backgroundImage`},disabled:!1,testId:`style-control-backgroundImage`})]}):(0,q.jsx)(ns,{value:e,onChange:t})}function ns({value:e,onChange:t}){let n=(0,G.useId)();return(0,q.jsxs)(M,{className:`gap-1`,"data-testid":`style-control-backgroundImage`,children:[(0,q.jsx)(R,{htmlFor:n,className:`text-xs`,children:(0,q.jsx)(i,{id:`editor.styles.fillImage`,message:`Fill image`})}),(0,q.jsx)(W,{id:n,value:es(e),onChange:e=>{let n=e.target.value.trim();t(n===``?null:`url("${n}")`)},placeholder:`https://…`,"data-testid":`style-control-backgroundImage-url`})]})}function rs({tokens:e,valueOf:t,setter:n}){return(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(cs,{value:t(`opacity`),onChange:n(`opacity`)}),(0,q.jsx)(wo,{label:`Box shadow`,property:`boxShadow`,category:`boxShadow`,value:t(`boxShadow`),tokens:e,onChange:n(`boxShadow`)}),(0,q.jsx)(ss,{value:t(`textShadow`),onChange:n(`textShadow`)})]})}var is={x:`1`,y:`1`,blur:`3`,color:`#000000`};function as(e){if(!e)return is;let t=e.trim().split(/\s+/),n=(e,t)=>e?e.replace(`px`,``):t;return{x:n(t[0],is.x),y:n(t[1],is.y),blur:n(t[2],is.blur),color:t[3]??is.color}}function os(e){return`${e.x}px ${e.y}px ${e.blur}px ${e.color}`}function ss({value:e,onChange:t}){let n=(0,G.useId)(),r=e!==void 0,a=as(e),o=e=>n=>t(os({...a,[e]:n}));return(0,q.jsxs)(`div`,{className:`flex flex-col gap-2`,"data-testid":`style-text-shadow`,children:[(0,q.jsxs)(M,{orientation:`horizontal`,children:[(0,q.jsx)(R,{htmlFor:`${n}-toggle`,className:`text-xs`,children:(0,q.jsx)(i,{id:`editor.styles.textShadow`,message:`Text shadow`})}),(0,q.jsx)(Qe,{id:`${n}-toggle`,checked:r,onCheckedChange:e=>t(e?os(is):null),"data-testid":`style-text-shadow-toggle`,"aria-label":`Text shadow`})]}),r?(0,q.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,q.jsx)(`input`,{type:`color`,value:So.test(a.color)?a.color:`#000000`,onChange:e=>o(`color`)(e.target.value),className:`border-input h-8 w-full cursor-pointer rounded-md border bg-transparent p-1`,"data-testid":`style-text-shadow-color`,"aria-label":`Text shadow color`}),(0,q.jsx)(`div`,{className:`grid grid-cols-3 gap-2`,children:[`x`,`y`,`blur`].map(e=>(0,q.jsxs)(M,{className:`gap-1`,children:[(0,q.jsx)(R,{htmlFor:`${n}-${e}`,className:`text-xs capitalize`,children:e}),(0,q.jsx)(W,{id:`${n}-${e}`,type:`number`,value:a[e],onChange:t=>o(e)(t.target.value||`0`),className:`h-8`,"data-testid":`style-text-shadow-${e}`})]},e))})]}):null]})}function cs({value:e,onChange:t}){let n=(0,G.useId)(),r=e===void 0?1:Number(e),a=Number.isFinite(r)?r:1;return(0,q.jsxs)(M,{className:`gap-1`,"data-testid":`style-control-opacity`,children:[(0,q.jsx)(R,{htmlFor:n,className:`text-xs`,children:(0,q.jsx)(i,{id:`editor.styles.opacity`,message:`Opacity`})}),(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(rt,{min:0,max:1,step:.05,value:[a],onValueChange:e=>{let n=e[0];typeof n==`number`&&t(String(n))},className:`flex-1`,"data-testid":`style-control-opacity-slider`,"aria-label":`Opacity`}),(0,q.jsx)(W,{id:n,type:`number`,min:0,max:1,step:.1,value:e??``,placeholder:`1`,onChange:e=>t(e.target.value===``?null:e.target.value),className:`h-8 w-16`,"data-testid":`style-control-opacity-input`})]})]})}var ls=`__default__`;function us({value:e,onChange:t}){let n=Zn(e),r=(0,G.useId)();return(0,q.jsxs)(M,{className:`gap-1`,"data-testid":`block-tag-name`,children:[(0,q.jsx)(R,{htmlFor:r,className:`text-xs`,children:(0,q.jsx)(i,{id:`editor.htmlAttrs.tagName`,message:`Tag name`})}),(0,q.jsxs)(Gt,{value:n??ls,onValueChange:e=>t(e===ls?``:e),children:[(0,q.jsx)(Wt,{id:r,className:`w-full`,"data-testid":`block-tag-name-select`,children:(0,q.jsx)(Kt,{})}),(0,q.jsxs)(Ht,{children:[(0,q.jsx)(H,{value:ls,"data-testid":`block-tag-name-option-default`,children:(0,q.jsx)(i,{id:`editor.htmlAttrs.tagName.default`,message:`Default`})}),Yn.map(e=>(0,q.jsx)(H,{value:e,"data-testid":`block-tag-name-option-${e}`,children:e},e))]})]})]})}function ds({className:e,onChange:t}){let{i18n:n}=r(),a=(0,G.useId)();return(0,q.jsxs)(M,{className:`gap-1`,children:[(0,q.jsx)(R,{htmlFor:a,className:`text-xs`,children:(0,q.jsx)(i,{id:`editor.styles.cssClasses`,message:`CSS classes`})}),(0,q.jsx)(W,{id:a,value:e??``,onChange:e=>t(e.target.value),placeholder:n._({id:`editor.styles.cssClasses.placeholder`,message:`my-class other-class`}),"data-testid":`style-css-classes`})]})}function fs({tokens:e,valueOf:t,setter:n}){return(0,q.jsx)(`div`,{className:`flex flex-col gap-3`,children:$o.map(r=>(0,q.jsxs)(`div`,{className:`border-border flex flex-col gap-2 rounded-md border p-2`,"data-testid":r.testId,children:[(0,q.jsx)(`span`,{className:`text-muted-foreground text-xs`,children:r.label}),(0,q.jsx)(`div`,{className:`grid grid-cols-2 gap-x-2 gap-y-2`,children:Qo.map(i=>{let a=`${r.prefix}${i}`;return(0,q.jsx)(wo,{label:i,property:a,category:`spacing`,value:t(a),tokens:e,onChange:n(a)},a)})})]},r.prefix))})}var ps=new Set;function ms({defaultValue:e,previewUrl:t,origin:n,registry:r,capabilities:a=ps,patterns:o,breakpoints:s,tokens:c,readOnly:l=!1,previewBanner:u,previewLink:d,liveUrl:f,title:p,onTitleChange:m,onBack:h,onChange:g,documentPanel:_,publish:v,overlay:y,onRefreshBlockLoader:b,resolvePluginFieldType:x}){return l?(0,q.jsxs)(da,{initialTree:e?.blocks,breakpoints:s,children:[(0,q.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col`,"data-testid":`plumix-editor-preview`,children:[u,(0,q.jsx)(Ha,{previewUrl:t,origin:n,registry:r,capabilities:a,readOnly:!0})]}),y]}):(0,q.jsxs)(da,{initialTree:e?.blocks,breakpoints:s,children:[(0,q.jsxs)(re,{className:`flex h-full min-h-0 flex-col`,style:{"--sidebar-width":`18rem`,"--header-height":`3.25rem`},"data-testid":`plumix-editor-layout`,children:[(0,q.jsx)(io,{title:p,onTitleChange:m,onBack:h,publish:v,previewLink:d,liveUrl:f}),(0,q.jsxs)(`div`,{className:`flex min-h-0 flex-1`,children:[(0,q.jsx)(ye,{side:`left`,collapsible:`offcanvas`,className:`top-(--header-height) !h-[calc(100svh-var(--header-height))]`,"data-testid":`plumix-editor-left`,children:(0,q.jsxs)(et,{defaultValue:`blocks`,className:`flex h-full min-h-0 flex-col`,children:[(0,q.jsx)(ae,{children:(0,q.jsxs)(I,{children:[(0,q.jsx)(z,{value:`blocks`,"data-testid":`plumix-tab-blocks`,children:(0,q.jsx)(i,{id:`editor.tab.blocks`,message:`Blocks`})}),(0,q.jsx)(z,{value:`layers`,"data-testid":`plumix-tab-layers`,children:(0,q.jsx)(i,{id:`editor.tab.layers`,message:`Layers`})})]})}),(0,q.jsxs)(w,{children:[(0,q.jsx)(L,{value:`blocks`,children:(0,q.jsx)(ma,{registry:r,capabilities:a,patterns:o})}),(0,q.jsx)(L,{value:`layers`,children:(0,q.jsx)(go,{registry:r})})]})]})}),(0,q.jsxs)(se,{className:`min-w-0`,children:[(0,q.jsx)(xa,{}),(0,q.jsx)(Ha,{previewUrl:t,origin:n,registry:r,capabilities:a})]}),(0,q.jsx)(hs,{registry:r,tokens:c,documentPanel:_,onRefreshBlockLoader:b,resolvePluginFieldType:x})]})]}),(0,q.jsx)(wa,{}),(0,q.jsx)(po,{}),y,g?(0,q.jsx)(gs,{onChange:g}):null]})}function hs({registry:e,tokens:t,documentPanel:n,onRefreshBlockLoader:r,resolvePluginFieldType:a}){let o=Q(e=>e.rightPanel),s=Q(e=>e.setRightPanel);return(0,q.jsx)(ye,{side:`right`,collapsible:`offcanvas`,className:`top-(--header-height) !h-[calc(100svh-var(--header-height))]`,"data-testid":`plumix-editor-right`,children:(0,q.jsxs)(et,{value:o,onValueChange:e=>s(e),className:`flex h-full min-h-0 flex-col`,children:[(0,q.jsx)(ae,{children:(0,q.jsxs)(I,{children:[(0,q.jsx)(z,{value:`block`,"data-testid":`plumix-tab-block`,children:(0,q.jsx)(i,{id:`editor.tab.block`,message:`Block`})}),(0,q.jsx)(z,{value:`styles`,"data-testid":`plumix-tab-styles`,children:(0,q.jsx)(i,{id:`editor.tab.styles`,message:`Styles`})}),(0,q.jsx)(z,{value:`page`,"data-testid":`plumix-tab-page`,children:(0,q.jsx)(i,{id:`editor.tab.page`,message:`Page`})})]})}),(0,q.jsxs)(w,{children:[(0,q.jsx)(L,{value:`block`,children:(0,q.jsx)(ro,{registry:e,onRefreshBlockLoader:r,resolvePluginFieldType:a})}),(0,q.jsx)(L,{value:`styles`,children:(0,q.jsx)(Lo,{tokens:t??{},resolvePluginFieldType:a})}),(0,q.jsx)(L,{value:`page`,"data-testid":`plumix-page-panel`,children:n??(0,q.jsx)(`p`,{className:`text-muted-foreground p-4 text-sm`,children:(0,q.jsx)(i,{id:`editor.page.empty`,message:`No document settings.`})})})]})]})})}function gs({onChange:e}){let t=pa(),n=(0,G.useRef)(e);return(0,G.useEffect)(()=>{n.current=e}),(0,G.useEffect)(()=>t.subscribe((e,t)=>{e.tree!==t.tree&&n.current(nr(e.tree))}),[t]),null}pn();var _s=xt({title:At(Ot(),_t(),yt(1),Ct(300)),slug:At(Ot(),_t(),yt(1),Ct(200),kt(/^[a-z0-9]+(?:-[a-z0-9]+)*$/,`Slug must be lowercase letters, numbers, and dashes`)),content:Tt(St()),excerpt:bt(At(Ot(),Ct(600)),``),status:Dt([`draft`,`published`,`scheduled`,`trash`]),meta:vt(Ot(),St()),terms:vt(Ot(),Et(wt())),parentId:Tt(jt)}),vs={statusSaved:{id:`editor.plainForm.status.saved`},statusSaving:{id:`editor.plainForm.status.saving`},statusError:{id:`editor.plainForm.status.error`},titlePlaceholder:{id:`editor.plainForm.titlePlaceholder`},titleAriaLabel:{id:`editor.plainForm.titleAriaLabel`}},ys={saved:vs.statusSaved,saving:vs.statusSaving,error:vs.statusError};function bs(e,t){return e?`saving`:t?`error`:`saved`}function xs({initialValues:e,metaBoxes:t,headline:n,isSubmitting:r,serverError:a,onSubmit:o,revisionsTrigger:s,previewLinkAction:c,autosaveMs:l=0}){let u=V(),d=gn({resolver:xn(_s),defaultValues:e}),f=yn({control:d.control,name:`status`}),p=bs(r,a),m=yn({control:d.control}),h=d.formState.isDirty,g=(0,G.useRef)(o);return(0,G.useEffect)(()=>{g.current=o}),(0,G.useEffect)(()=>{if(l<=0||!h||r)return;let e=setTimeout(()=>{d.handleSubmit(e=>g.current(e))()},l);return()=>clearTimeout(e)},[m,l,h,r,d]),(0,q.jsx)(bn,{...d,children:(0,q.jsxs)(`form`,{className:`mx-auto flex max-w-2xl flex-col gap-4 p-6`,"data-testid":`plain-form-layout`,onSubmit:e=>{d.handleSubmit(o)(e)},children:[(0,q.jsx)(`h1`,{className:`sr-only`,children:n}),(0,q.jsxs)(`header`,{className:`flex items-center gap-3 border-b pb-3`,"data-testid":`plain-form-header`,children:[(0,q.jsx)(_n,{control:d.control,name:`title`,render:({field:e})=>(0,q.jsx)(hn,{className:`flex-1`,children:(0,q.jsx)(vn,{children:(0,q.jsx)(W,{...e,type:`text`,placeholder:u(vs.titlePlaceholder),"aria-label":u(vs.titleAriaLabel),"data-testid":`plain-form-title-input`})})})}),(0,q.jsx)(`span`,{className:`bg-muted rounded px-2 py-1 text-xs`,"data-testid":`plain-form-status-pill`,"data-status":p,children:u(ys[p])}),c,s,(0,q.jsx)(U,{type:`submit`,variant:`outline`,"data-testid":`plain-form-save-button`,disabled:r,children:(0,q.jsx)(i,{id:`editor.plainForm.save`,message:`Save`})}),(0,q.jsx)(U,{type:`button`,"data-testid":`plain-form-publish-button`,disabled:r||f===`published`,onClick:()=>{d.setValue(`status`,`published`),d.handleSubmit(o)()},children:(0,q.jsx)(i,{id:`editor.plainForm.publish`,message:`Publish`})})]}),t.map(e=>(0,q.jsx)(`section`,{"aria-labelledby":`plain-form-meta-box-heading-${e.id}`,"data-testid":`plain-form-meta-box-${e.id}`,children:(0,q.jsxs)(Lt,{className:`@container`,children:[(0,q.jsxs)(Pt,{children:[(0,q.jsx)(`h2`,{id:`plain-form-meta-box-heading-${e.id}`,className:`text-lg leading-none font-semibold`,"data-testid":`plain-form-meta-box-heading-${e.id}`,children:u(e.label)}),e.description?(0,q.jsx)(It,{children:u(e.description)}):null]}),(0,q.jsx)(Ft,{className:`flex flex-col gap-4`,children:e.fields.map(e=>(0,q.jsx)(Dn,{field:e,name:`meta.${e.key}`,disabled:r},e.key))})]})},e.id))]})})}var Ss={preview:{id:`editor.preview.open`},previewTooltip:{id:`editor.preview.tooltip`},more:{id:`editor.preview.more`},copy:{id:`editor.previewLink.copy`},copied:{id:`editor.previewLink.copied`},failed:{id:`editor.previewLink.failed`}};function Cs({mintPreviewLink:e}){let t=V(),[n,r]=(0,G.useState)(!1);function i(){let n=window.open(``,`_blank`);r(!0),e().then(({url:e})=>{let t=new URL(e,window.location.origin).href;n?(n.opener=null,n.location.href=t):window.open(t,`_blank`,`noopener,noreferrer`)}).catch(()=>{n?.close(),Me(t(Ss.failed))}).finally(()=>{r(!1)})}async function a(){r(!0);let n=e().then(({url:e})=>new URL(e,window.location.origin).href);try{await Le(n),Oe(t(Ss.copied))}catch{Me(t(Ss.failed))}finally{r(!1)}}return(0,q.jsxs)(`div`,{className:`flex items-center`,children:[(0,q.jsxs)(Tn,{children:[(0,q.jsx)(Sn,{asChild:!0,children:(0,q.jsxs)(U,{variant:`ghost`,size:`sm`,className:`gap-1.5`,"data-testid":`editor-preview`,onClick:i,disabled:n,children:[(0,q.jsx)(Fn,{className:`size-4`,"aria-hidden":!0}),t(Ss.preview)]})}),(0,q.jsx)(Cn,{children:t(Ss.previewTooltip)})]}),(0,q.jsxs)(ge,{children:[(0,q.jsx)(ie,{asChild:!0,children:(0,q.jsx)(U,{variant:`ghost`,size:`icon`,className:`size-8`,"data-testid":`editor-preview-menu`,disabled:n,"aria-label":t(Ss.more),children:(0,q.jsx)(dn,{className:`size-4`,"aria-hidden":!0})})}),(0,q.jsx)(Te,{align:`end`,children:(0,q.jsxs)(T,{"data-testid":`editor-copy-preview-link`,onClick:()=>void a(),children:[(0,q.jsx)(te,{className:`size-4`,"aria-hidden":!0}),t(Ss.copy)]})})]})]})}var ws={thisRevision:{id:`editor.revisions.diffDialog.pane.thisRevision`},current:{id:`editor.revisions.diffDialog.pane.current`}};function Ts({entryId:e,revisionId:t,onOpenChange:n,fetchRevision:r,fetchCurrent:a}){let o=V(),[c,l]=(0,G.useState)(t);t!==null&&t!==c&&l(t);let u=s({queryKey:[`entry.revision.diff`,c],enabled:c!==null,queryFn:()=>r(c??0)}),d=s({queryKey:[`entry.current.diff`,e],enabled:c!==null,queryFn:()=>a(e)});return(0,q.jsx)(be,{open:t!==null,onOpenChange:n,children:(0,q.jsxs)(D,{className:`max-w-4xl`,"data-testid":`revision-diff-modal`,showCloseButton:!0,children:[(0,q.jsxs)(we,{children:[(0,q.jsx)(Ee,{children:(0,q.jsx)(i,{id:`editor.revisions.diffDialog.title`,message:`Revision JSON diff`})}),(0,q.jsx)(ve,{children:(0,q.jsx)(i,{id:`editor.revisions.diffDialog.description`,message:`Side-by-side: this revision (left) vs. the current entry (right).`})})]}),(0,q.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 md:grid-cols-2`,children:[(0,q.jsx)(Es,{label:o(ws.thisRevision),snapshot:u.data,isError:u.isError}),(0,q.jsx)(Es,{label:o(ws.current),snapshot:d.data,isError:d.isError})]})]})})}function Es({label:e,snapshot:t,isError:n}){let r=(0,G.useId)();return n?(0,q.jsxs)(`section`,{"aria-labelledby":r,children:[(0,q.jsx)(`div`,{id:r,className:`text-muted-foreground mb-1 text-xs font-medium`,children:e}),(0,q.jsx)(`pre`,{className:`bg-muted max-h-96 overflow-auto rounded-md p-2 text-xs`,"data-testid":`revision-diff-modal-error`,children:(0,q.jsx)(i,{id:`editor.revisions.diffDialog.pane.error`,message:`Failed to load snapshot.`})})]}):t?(0,q.jsxs)(`section`,{"aria-labelledby":r,children:[(0,q.jsx)(`div`,{id:r,className:`text-muted-foreground mb-1 text-xs font-medium`,children:e}),(0,q.jsx)(`pre`,{className:`bg-muted max-h-96 overflow-auto rounded-md p-2 text-xs`,children:JSON.stringify(t,null,2)})]}):(0,q.jsxs)(`section`,{"aria-labelledby":r,"aria-busy":`true`,children:[(0,q.jsx)(`div`,{id:r,className:`text-muted-foreground mb-1 text-xs font-medium`,children:e}),(0,q.jsx)(`div`,{"data-testid":`revision-diff-modal-loading`,className:`max-h-96 space-y-2 rounded-md border p-3`,children:Array.from({length:8},(e,t)=>(0,q.jsx)(Rt,{className:t%3==0?`h-3 w-2/3`:`h-3`},t))})]})}var Ds={loadingAria:{id:`editor.revisions.sheet.loadingAria`},unknownAuthor:{id:`editor.revisions.sheet.unknownAuthor`},loadingMore:{id:`editor.revisions.sheet.loadingMore`},loadMore:{id:`editor.revisions.sheet.loadMore`},commentPlaceholder:{id:`editor.revisions.sheet.commentPlaceholder`},commentSaving:{id:`editor.revisions.sheet.commentSaving`},commentSave:{id:`editor.revisions.sheet.commentSave`},diffAriaLabel:{id:`editor.revisions.sheet.diffAriaLabel`}};function Os({entryId:e,fetchPage:t,relativeTime:n,fetchRevision:r,fetchCurrent:a,onPreview:o,onSaveMessage:s}){let[c,u]=(0,G.useState)(!1),d=l({queryKey:[`entry.revisions`,e],enabled:c,initialPageParam:null,queryFn:({pageParam:n})=>t({entryId:e,cursor:n}),getNextPageParam:e=>e.nextCursor}),[f,p]=(0,G.useState)(null),m=d.data?.pages.flatMap(e=>e.revisions)??[],h=!!d.data?.pages.at(-1)?.nextCursor;function g(e){o(e),u(!1)}return(0,q.jsxs)(de,{open:c,onOpenChange:e=>{u(e),e||p(null)},children:[(0,q.jsx)(ce,{asChild:!0,children:(0,q.jsx)(U,{variant:`outline`,size:`sm`,"data-testid":`revisions-sheet-trigger`,children:(0,q.jsx)(i,{id:`editor.revisions.sheet.trigger`,message:`Revisions`})})}),(0,q.jsxs)(pe,{side:`right`,"data-plumix-revisions-sheet":``,className:`overflow-y-auto`,children:[(0,q.jsxs)(le,{children:[(0,q.jsx)(A,{children:(0,q.jsx)(i,{id:`editor.revisions.sheet.title`,message:`Revisions`})}),(0,q.jsx)(oe,{children:(0,q.jsx)(i,{id:`editor.revisions.sheet.description`,message:`Every save creates a new revision. Newest first.`})})]}),(()=>{let e=(0,q.jsx)(ks,{isLoading:d.isLoading,isError:d.isError,allRevisions:m,relativeTime:n,onPreview:g,onOpenDiff:p,onSaveMessage:s,hasMore:h,isFetchingNextPage:d.isFetchingNextPage,fetchNextPage:()=>void d.fetchNextPage()});return(0,q.jsxs)(et,{defaultValue:`all`,className:`mt-2`,children:[(0,q.jsxs)(I,{className:`w-full`,children:[(0,q.jsx)(z,{value:`all`,"data-testid":`revisions-tab-all`,children:(0,q.jsx)(i,{id:`editor.revisions.sheet.tab.all`,message:`All`})}),(0,q.jsx)(z,{value:`publishes`,"data-testid":`revisions-tab-publishes`,children:(0,q.jsx)(i,{id:`editor.revisions.sheet.tab.publishes`,message:`Publishes`})}),(0,q.jsx)(z,{value:`autosaves`,"data-testid":`revisions-tab-autosaves`,children:(0,q.jsx)(i,{id:`editor.revisions.sheet.tab.autosaves`,message:`Autosaves`})})]}),(0,q.jsx)(L,{value:`all`,children:e}),(0,q.jsx)(L,{value:`publishes`,children:e}),(0,q.jsx)(L,{value:`autosaves`,children:(0,q.jsx)(`div`,{"data-testid":`revisions-autosaves-empty`,className:`text-muted-foreground px-4 py-6 text-sm`,children:(0,q.jsx)(i,{id:`editor.revisions.sheet.autosavesEmpty`,message:`Autosaves will appear here once drafts-of-published lands.`})})})]})})()]}),(0,q.jsx)(Ts,{entryId:e,revisionId:f,onOpenChange:e=>{e||p(null)},fetchRevision:r,fetchCurrent:a})]})}function ks({isLoading:e,isError:t,allRevisions:n,relativeTime:r,onPreview:a,onOpenDiff:o,onSaveMessage:s,hasMore:c,isFetchingNextPage:l,fetchNextPage:u}){let d=V();return(0,q.jsxs)(q.Fragment,{children:[e?(0,q.jsx)(`ul`,{"data-testid":`revisions-sheet-loading`,"aria-label":d(Ds.loadingAria),"aria-busy":`true`,className:`divide-y px-4 py-2`,children:Array.from({length:4},(e,t)=>(0,q.jsxs)(`li`,{className:`flex items-center gap-1 py-2`,children:[(0,q.jsxs)(`div`,{className:`min-w-0 flex-1 p-2`,children:[(0,q.jsx)(Rt,{className:`mb-2 h-4 w-2/3`}),(0,q.jsx)(Rt,{className:`h-3 w-1/3`})]}),(0,q.jsx)(Rt,{className:`h-7 w-7 shrink-0 rounded-md`})]},t))}):null,t?(0,q.jsx)(`div`,{"data-testid":`revisions-sheet-error`,className:`text-destructive px-4 py-6`,children:(0,q.jsx)(i,{id:`editor.revisions.sheet.error`,message:`Failed to load revisions.`})}):null,!e&&n.length===0?(0,q.jsx)(`div`,{"data-testid":`revisions-sheet-empty`,className:`px-4 py-6`,children:(0,q.jsx)(i,{id:`editor.revisions.sheet.empty`,message:`No revisions yet.`})}):null,n.length>0?(0,q.jsx)(`ul`,{"data-testid":`revisions-sheet-list`,className:`divide-y px-4 py-2`,children:n.map(e=>(0,q.jsx)(As,{revision:e,relativeTime:r,onPreview:a,onOpenDiff:o,onSaveMessage:s},e.id))}):null,c?(0,q.jsx)(`div`,{className:`px-4 py-4`,children:(0,q.jsx)(U,{variant:`outline`,size:`sm`,"data-testid":`revisions-sheet-load-more`,onClick:u,disabled:l,children:d(l?Ds.loadingMore:Ds.loadMore)})}):null]})}function As({revision:e,relativeTime:t,onPreview:n,onOpenDiff:r,onSaveMessage:a}){let o=V(),[s,c]=(0,G.useState)(!1),[l,u]=(0,G.useState)(e.message??``),[d,f]=(0,G.useState)(!1);function p(){if(s){c(!1);return}u(e.message??``),c(!0)}async function m(){let t=l.trim();f(!0);try{await a({revisionId:e.id,message:t.length===0?null:t}),c(!1)}finally{f(!1)}}return(0,q.jsxs)(`li`,{"data-testid":`revisions-sheet-item-${e.id}`,className:`flex flex-col gap-1 py-2`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,q.jsxs)(`button`,{type:`button`,"data-testid":`revisions-sheet-item-${e.id}-select`,onClick:()=>n(e.id),className:`hover:bg-accent min-w-0 flex-1 rounded-md p-2 text-start`,children:[(0,q.jsx)(`div`,{className:`truncate text-sm font-medium`,children:e.title}),(0,q.jsxs)(`div`,{className:`text-muted-foreground text-xs`,children:[(0,q.jsx)(`span`,{children:e.authorName??e.authorEmail??o(Ds.unknownAuthor)}),` · `,(0,q.jsx)(`span`,{children:t(e.updatedAt)})]})]}),(0,q.jsx)(`button`,{type:`button`,"data-testid":`revisions-sheet-item-${e.id}-comment`,"aria-label":e.message===null?`Add comment`:`Edit comment`,"aria-pressed":s,onClick:p,className:`text-muted-foreground hover:bg-accent hover:text-foreground inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-md`,children:e.message===null?(0,q.jsx)(Ln,{className:`h-4 w-4`,"aria-hidden":!0}):(0,q.jsx)(In,{className:`text-foreground h-4 w-4`,"aria-hidden":!0})}),(0,q.jsx)(`button`,{type:`button`,"data-testid":`revisions-sheet-item-${e.id}-diff`,"aria-label":o(Ds.diffAriaLabel),onClick:()=>r(e.id),className:`text-muted-foreground hover:bg-accent hover:text-foreground inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-md font-mono text-xs`,children:`</>`})]}),s?(0,q.jsxs)(`div`,{"data-testid":`revisions-sheet-item-${e.id}-comment-editor`,className:`flex items-start gap-2 px-2`,children:[(0,q.jsx)(W,{type:`text`,"data-testid":`revisions-sheet-item-${e.id}-comment-input`,value:l,maxLength:280,placeholder:o(Ds.commentPlaceholder),onChange:e=>u(e.target.value),onKeyDown:e=>{e.key===`Escape`&&c(!1),e.key===`Enter`&&!d&&!e.nativeEvent.isComposing&&m()},className:`h-8 text-xs`}),(0,q.jsx)(U,{variant:`default`,size:`sm`,"data-testid":`revisions-sheet-item-${e.id}-comment-save`,onClick:()=>void m(),disabled:d,children:o(d?Ds.commentSaving:Ds.commentSave)}),(0,q.jsx)(U,{variant:`outline`,size:`sm`,"data-testid":`revisions-sheet-item-${e.id}-comment-cancel`,onClick:()=>c(!1),disabled:d,children:(0,q.jsx)(i,{id:`editor.revisions.sheet.commentCancel`,message:`Cancel`})})]}):e.message===null?null:(0,q.jsx)(`div`,{"data-testid":`revisions-sheet-item-${e.id}-comment-display`,className:`text-muted-foreground truncate px-2 text-xs italic`,children:e.message})]})}function js({entryId:e,enabled:t,onPreview:n}){let r=c(),{formatRelative:i}=Mt();return(0,G.useMemo)(()=>t?(0,q.jsx)(Os,{entryId:e,relativeTime:i,fetchPage:({entryId:e,cursor:t})=>d.entry.revisions.list.call({entryId:e,cursor:t}),fetchRevision:async e=>{let t=await d.entry.revisions.get.call({revisionId:e});return{title:t.title,slug:t.slug,excerpt:t.excerpt,content:t.content,meta:t.meta}},fetchCurrent:async e=>{let t=await d.entry.get.call({id:e});return{title:t.title,slug:t.slug,excerpt:t.excerpt,content:t.content,meta:t.meta}},onPreview:n,onSaveMessage:async({revisionId:t,message:n})=>{await d.entry.revisions.setMessage.call({revisionId:t,message:n}),await r.invalidateQueries({queryKey:[`entry.revisions`,e]})}}):null,[e,t,n,r,i])}var Ms={saveFailed:{id:`editor.entry.edit.saveFailed`}};function Ns({entryType:e,id:t,supportsRevisions:n,capabilities:r}){let i=V(),{data:a}=o(d.entry.get.queryOptions({input:{id:t}})),s=c(),l=(0,G.useRef)(a.updatedAt),[u,m]=(0,G.useState)(null),h=Jt(e.name,r),g=f({mutationFn:e=>d.entry.update.call({id:t,title:e.title,status:e.status,meta:e.meta,expectedLiveUpdatedAt:l.current}),onSuccess:async e=>{m(null),l.current=e.updatedAt,await s.invalidateQueries({queryKey:d.entry.get.queryOptions({input:{id:t}}).queryKey})},onError:e=>{m(e instanceof Error?e.message:Ms.saveFailed)}}),_=p({from:`/entries/$slug/$id/edit`}),v=js({entryId:t,enabled:n,onPreview:(0,G.useCallback)(e=>{_({search:t=>({...t,revision:e})})},[_])}),y={title:a.title,slug:a.slug,content:a.content,excerpt:a.excerpt??``,status:a.status,meta:a.meta,terms:{},parentId:a.parentId},b=a.title.trim()===``?i(Nt(e,`editItem`)):a.title,x=g.isPending||u===null?null:i(u);return(0,q.jsx)(xs,{initialValues:y,metaBoxes:h,headline:b,isSubmitting:g.isPending,serverError:x,autosaveMs:500,revisionsTrigger:v,previewLinkAction:e.isPublic===!1?void 0:(0,q.jsx)(Cs,{mintPreviewLink:()=>d.entry.createPreviewLink.call({id:t})}),onSubmit:e=>g.mutate({title:e.title,status:e.status,meta:e.meta})},String(t))}var Ps={published:{id:`editor.toast.published`},publishFailed:{id:`editor.toast.publishFailed`},autosaveFailed:{id:`editor.toast.autosaveFailed`},discarded:{id:`editor.toast.discarded`},discardFailed:{id:`editor.toast.discardFailed`},staleLoading:{id:`editor.stale.loading`},revisionConflict:{id:`editor.revision.conflict`}},Fs=en($t()),Is=cn(),Ls=nn(),Rs=on();function zs(){let{slug:e,id:t}=Xt.useParams(),{user:n}=Xt.useRouteContext(),{revision:r}=Xt.useSearch(),{data:i}=o(d.entry.get.queryOptions({input:{id:t,preview:!0}})),[a,s]=(0,G.useState)(0),c=(0,G.useCallback)(()=>s(e=>e+1),[]);if(r!==void 0)return(0,q.jsx)(Vs,{id:t,revisionId:r,capabilities:n.capabilities},`revision:${String(r)}`);let l=zt(e);if(!sn(l)&&l)return(0,q.jsx)(Ns,{entryType:l,id:t,supportsRevisions:Zt(l),capabilities:n.capabilities});let u=i._preview?.source??`live`;return(0,q.jsx)(Bs,{capabilities:n.capabilities,entryType:l,userId:n.id,onReseed:c},`${u}:${a}`)}function Bs({capabilities:e,entryType:t,userId:n,onReseed:r}){let{slug:i,id:a}=Xt.useParams(),l=p(),{data:m}=o(d.entry.get.queryOptions({input:{id:a,preview:!0}})),{data:h}=o(tn(a)),g=c(),_=V(),v=t?.name,y=(0,G.useMemo)(()=>new Set(e),[e]),[b,x]=(0,G.useState)(!1),S=(0,G.useRef)(m.updatedAt),C=(0,G.useRef)(!1),ee=rr(m.content)?m.content:nr([]),te=(0,G.useRef)(ee),ne=(0,G.useRef)(JSON.stringify(ee.blocks)),[w,re]=(0,G.useState)(m.excerpt??``),T=(0,G.useRef)(w),ie=(0,G.useRef)(m.excerpt??``),ae=(0,G.useRef)(m.meta),oe=(0,G.useRef)(JSON.stringify(m.meta)),[se,ce]=(0,G.useState)(m.title),[le,ue]=(0,G.useState)(m.slug),[de,fe]=(0,G.useState)(m.parentId),pe=(0,G.useRef)(se),me=(0,G.useRef)(le),he=(0,G.useRef)(de),ge=(0,G.useRef)(m.title),_e=(0,G.useRef)(m.slug),E=(0,G.useRef)(m.parentId),ve=(0,G.useMemo)(()=>{let n=new Set(t?.termTaxonomies??[]);return Qt(e).filter(e=>n.has(e.name)&&y.has(`term:${e.name}:assign`))},[t,e,y]),[D,ye]=(0,G.useState)(()=>Object.fromEntries(ve.map(e=>[e.name,(m.terms[e.name]??[]).map(String)]))),O=(0,G.useRef)(D),be=(0,G.useRef)(D);(0,G.useEffect)(()=>{T.current=w,pe.current=se,me.current=le,he.current=de,O.current=D});let xe=(0,G.useCallback)(async e=>{let t=await fr(e,g,a);if(t.kind===`recovered`){t.updatedAt&&(S.current=t.updatedAt);return}C.current||(C.current=!0,Me(_(Ps.autosaveFailed)))},[g,a,_]),k=(0,G.useMemo)(()=>pr(async()=>{let e=te.current.blocks,t=JSON.stringify(e),n=t!==ne.current,r=T.current,i=r!==ie.current,o=JSON.stringify(ae.current),s=o!==oe.current;if(!(!n&&!i&&!s))try{let c=await d.entry.update.call({id:a,...n?{content:{version:`plumix.v2`,blocks:e}}:{},...i?{excerpt:r.length===0?null:r}:{},...s?{meta:ae.current}:{},expectedLiveUpdatedAt:S.current});c.type===m.type?S.current=c.updatedAt:x(!0),n&&(ne.current=t),i&&(ie.current=r),s&&(oe.current=o),C.current=!1}catch(e){await xe(e)}},lr),[a,m.type,xe]),A=(0,G.useMemo)(()=>pr(async()=>{let e=pe.current.trim(),t=me.current.trim(),n=he.current,r=O.current,i=be.current,o=Object.keys(r).filter(e=>JSON.stringify(r[e])!==JSON.stringify(i[e]??[])),s=e.length>0&&e!==ge.current,c=t.length>0&&t!==_e.current,l=n!==E.current,u=o.length>0;if(!s&&!c&&!l&&!u)return;let f=Object.fromEntries(o.map(e=>[e,(r[e]??[]).map(Number)]));try{let p=await d.entry.update.call({id:a,...s?{title:e}:{},...c?{slug:t}:{},...l?{parentId:n}:{},...u?{terms:f}:{},saveAs:`live`,expectedLiveUpdatedAt:S.current});S.current=p.updatedAt,s&&(ge.current=p.title),c&&(_e.current=p.slug),l&&(E.current=p.parentId),u&&(be.current={...i,...Object.fromEntries(o.map(e=>[e,r[e]??[]]))}),C.current=!1}catch(e){await xe(e)}},lr),[a,xe]);(0,G.useEffect)(()=>()=>{k.flush(),A.flush()},[k,A]);let Se=(0,G.useCallback)(e=>{te.current=e,k.call()},[k]),Ce=(0,G.useCallback)(e=>{ce(e),A.call()},[A,ce]),we=(0,G.useCallback)(e=>{ue(e),A.call()},[A,ue]),Te=(0,G.useCallback)(e=>{fe(e),A.call()},[A,fe]),Ee=(0,G.useCallback)((e,t)=>{ye(n=>({...n,[e]:[...t]})),A.call()},[A,ye]),De=(0,G.useCallback)(e=>{re(e),k.call()},[k,re]),ke=(0,G.useCallback)(e=>{ae.current=e,JSON.stringify(e)!==oe.current&&k.call()},[k]),je=(0,G.useCallback)(async()=>{await Promise.all([k.flush(),A.flush()]),await l({to:`/entries/$slug`,params:{slug:i},search:En})},[k,A,l,i]),Ne=(0,G.useMemo)(()=>v?Jt(v,e):[],[v,e]),Pe=t?.supports?.includes(`title`)??!1,Fe=t?.supports?.includes(`excerpt`)??!1,Ie=t?.isHierarchical===!0,Le=s({...d.entry.list.queryOptions({input:{type:v??``,limit:100,orderBy:`title`,order:`asc`}}),enabled:Ie&&v!==void 0}),Re=(0,G.useMemo)(()=>(Le.data??[]).filter(e=>e.id!==a).map(e=>({id:e.id,title:e.title})),[Le.data,a]),ze=u({queries:ve.map(e=>({...d.term.list.queryOptions({input:{taxonomy:e.name,limit:200}})}))}),j=(0,G.useMemo)(()=>ve.map((e,t)=>({name:e.name,label:_(e.label),options:Ae(ze[t]?.data??[],e.isHierarchical===!0),value:D[e.name]??[],onChange:t=>Ee(e.name,t)})),[ve,ze,D,Ee,_]),Be=(0,G.useMemo)(()=>(0,q.jsx)(cr,{slug:le,onSlugChange:we,excerpt:Fe?{value:w,onChange:De}:void 0,parent:Ie?{value:de,options:Re,onChange:Te}:void 0,taxonomies:j.length>0?j:void 0,metaBoxes:Ne.length>0?{boxes:Ne,initialMeta:m.meta,onMetaChange:ke}:void 0}),[le,we,Fe,w,De,Ie,de,Re,Te,j,Ne,m.meta,ke]),Ve=rn({entryType:t,currentStatus:m.status,isAuthor:m.authorId===n,capabilities:y})===`edit-with-draft`,He=m.status===`published`,Ue=m._preview?.source===`autosave`||b,M=m._preview?mr(m._preview.autosaveUpdatedAt,m._preview.liveUpdatedAt):`none`,[We,N]=(0,G.useState)(!1),P=M===`stale`&&!We,F=m._preview?.liveUpdatedAt,Ge=(0,G.useCallback)(()=>Promise.all([g.invalidateQueries({queryKey:d.entry.get.queryOptions({input:{id:a}}).queryKey}),g.invalidateQueries({queryKey:d.entry.get.queryOptions({input:{id:a,preview:!0}}).queryKey}),...v?[g.invalidateQueries({queryKey:d.entry.list.key({input:{type:v}})}),g.invalidateQueries({queryKey:[`entry.revisions`,a]})]:[]]),[a,v,g]),Ke=f({mutationFn:async()=>{let e=await d.entry.update.call({id:a,status:`published`,expectedLiveUpdatedAt:S.current});return S.current=e.updatedAt,e},onSuccess:()=>(C.current=!1,Oe(_(Ps.published)),Ge()),onError:()=>Me(_(Ps.publishFailed))}),qe=f({mutationFn:()=>d.entry.publish.call({id:a,expectedLiveUpdatedAt:S.current}),onSuccess:async e=>{C.current=!1,Oe(_(Ps.published)),S.current=e.updatedAt,x(!1),await Ge()},onError:()=>Me(_(Ps.publishFailed))}),I=f({mutationFn:()=>d.entry.discardDraft.call({id:a}),onSuccess:async()=>{Oe(_(Ps.discarded)),x(!1),await Ge(),k.cancel(),A.cancel(),r()},onError:()=>Me(_(Ps.discardFailed))}),Je=(0,G.useCallback)(()=>Ke.mutate(),[Ke]),Ye=(0,G.useCallback)(()=>k.flush(),[k]),Xe=(0,G.useCallback)(()=>qe.mutate(),[qe]),L=(0,G.useCallback)(()=>I.mutate(),[I]),R=(0,G.useCallback)(()=>{F&&(S.current=F),N(!0)},[F]),Ze=(0,G.useCallback)(()=>{I.mutate(void 0,{onSuccess:()=>N(!0)})},[I]),z=(0,G.useMemo)(()=>Ve?{draftMode:{hasPendingDraft:Ue,onSaveDraft:Ye,onPublishDraft:Xe,onDiscardDraft:L,isSaving:!1,isPublishing:qe.isPending,isDiscarding:I.isPending}}:{onPublish:Je,isPublished:He,isPublishing:Ke.isPending},[Ve,Ue,Ye,Xe,L,qe.isPending,I.isPending,Je,He,Ke.isPending]),Qe=s({...d.entry.get.queryOptions({input:{id:a}}),enabled:P}),$e=(0,q.jsx)(xr,{open:P,autosaveSnapshot:{title:m.title,content:m.content,excerpt:m.excerpt},liveSnapshot:Qe.data?{title:Qe.data.title,content:Qe.data.content,excerpt:Qe.data.excerpt}:{title:_(Ps.staleLoading),content:null,excerpt:null},onUseMine:R,onUseTheirs:Ze,isResolving:I.isPending}),et=new URL(h.url,window.location.origin),tt=et.toString();et.searchParams.set(`plumix.edit`,``);let nt=new URL(h.url,window.location.origin);nt.search=``;let rt=He?nt.toString():void 0;return(0,q.jsx)(ms,{previewUrl:et.toString(),origin:et.origin,defaultValue:rr(m.content)?m.content:void 0,registry:Fs,capabilities:y,patterns:Is,breakpoints:Ls,tokens:Rs,previewLink:tt,liveUrl:rt,title:Pe?se:void 0,onTitleChange:Pe?Ce:void 0,onBack:()=>void je(),onChange:Se,documentPanel:Be,publish:z,overlay:$e,onRefreshBlockLoader:e=>d.entry.refreshBlockLoader.call({id:a,blockId:e}).then(e=>e.data),resolvePluginFieldType:_r})}function Vs({id:e,revisionId:t,capabilities:n}){let r=Xt.useNavigate(),i=c(),l=V(),{formatRelative:u}=Mt(),p=(0,G.useMemo)(()=>new Set(n),[n]),{data:m}=o(tn(e)),h=s(d.entry.revisions.get.queryOptions({input:{revisionId:t}})),g=s(d.entry.get.queryOptions({input:{id:e}})),_=(0,G.useCallback)(()=>void r({search:e=>({...e,revision:void 0})}),[r]),v=g.data?.updatedAt,y=f({mutationFn:()=>d.entry.revisions.restore.call({revisionId:t,expectedLiveUpdatedAt:v}),onSuccess:async()=>{await Promise.all([i.invalidateQueries({queryKey:d.entry.get.queryOptions({input:{id:e}}).queryKey}),i.invalidateQueries({queryKey:d.entry.get.queryOptions({input:{id:e,preview:!0}}).queryKey})]),_()}}),b=h.data;if(!b||!g.data)return(0,q.jsx)(an,{});let x=new URL(m.url,window.location.origin);x.searchParams.set(`plumix.edit`,``);let S=y.error instanceof a&&y.error.code===`CONFLICT`?Ps.revisionConflict:y.error instanceof Error?y.error.message:null,C=S===null?null:l(S),ee=b.authorName??b.authorEmail??`#${String(t)}`;return(0,q.jsx)(ms,{previewUrl:x.toString(),origin:x.origin,defaultValue:rr(b.content)?b.content:void 0,registry:Fs,capabilities:p,breakpoints:Ls,readOnly:!0,previewBanner:(0,q.jsx)(yr,{revisionUpdatedAt:b.updatedAt,revisionAuthor:ee,relativeTime:u,onBackToLive:_,onRestore:()=>y.mutate(),isRestoring:y.isPending,restoreError:C})})}export{zs as component};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as e,t}from"./jsx-runtime-DUAcabCT.js";import{n}from"./dist-BL2bKHuR.js";import{t as r}from"./use-label-CykSHq9A.js";import{gt as i,i as a}from"./index-
|
|
1
|
+
import{i as e,t}from"./jsx-runtime-DUAcabCT.js";import{n}from"./dist-BL2bKHuR.js";import{t as r}from"./use-label-CykSHq9A.js";import{gt as i,i as a}from"./index-8CVr3Qp5.js";var o=e(t());function s(){return(0,o.jsx)(c,{message:r()(a.notFoundMessage)})}function c({message:e}){return(0,o.jsx)(i,{title:(0,o.jsx)(n,{id:`terms.edit.notFound.title`,message:`Not found`}),description:e})}export{s as errorComponent};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as e,t}from"./jsx-runtime-DUAcabCT.js";import{t as n}from"./react-DbyrFoBd.js";import{kt as r}from"./dist-Bdi1pykC.js";import{t as i}from"./utils-DKOQrNEG.js";var a=e(t(),1),o=e(n(),1),s=e=>e.type===`checkbox`,c=e=>e instanceof Date,l=e=>e==null,u=e=>typeof e==`object`,d=e=>!l(e)&&!Array.isArray(e)&&u(e)&&!c(e),f=e=>d(e)&&e.target?s(e.target)?e.target.checked:e.target.value:e,p=(e,t)=>t.split(`.`).some((t,n,r)=>!isNaN(Number(t))&&e.has(r.slice(0,n).join(`.`))),m=e=>{let t=e.constructor&&e.constructor.prototype;return d(t)&&t.hasOwnProperty(`isPrototypeOf`)},h=typeof window<`u`&&window.HTMLElement!==void 0&&typeof document<`u`;function g(e){if(e instanceof Date)return new Date(e);let t=typeof FileList<`u`&&e instanceof FileList;if(h&&(e instanceof Blob||t))return e;let n=Array.isArray(e);if(!n&&!(d(e)&&m(e)))return e;let r=n?[]:Object.create(Object.getPrototypeOf(e));for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[t]=g(e[t]));return r}var _={BLUR:`blur`,FOCUS_OUT:`focusout`,CHANGE:`change`,SUBMIT:`submit`,TRIGGER:`trigger`,VALID:`valid`},v={onBlur:`onBlur`,onChange:`onChange`,onSubmit:`onSubmit`,onTouched:`onTouched`,all:`all`},y={max:`max`,min:`min`,maxLength:`maxLength`,minLength:`minLength`,pattern:`pattern`,required:`required`,validate:`validate`},b=`root`,x=[`__proto__`,`constructor`,`prototype`],S=/^\w*$/,C=e=>S.test(e),w=e=>e===void 0,T=/[.[\]'"]/,E=e=>e.split(T).filter(Boolean),D=(e,t,n)=>{if(!t||!d(e))return n;let r=C(t)?[t]:E(t);if(r.some(e=>x.includes(e)))return n;let i=r.reduce((e,t)=>l(e)?void 0:e[t],e);return w(i)||i===e?w(e[t])?n:e[t]:i},O=e=>typeof e==`boolean`,k=e=>typeof e==`function`,A=(e,t,n)=>{let r=-1,i=C(t)?[t]:E(t),a=i.length,o=a-1;for(;++r<a;){let t=i[r],a=n;if(r!==o){let n=e[t];a=d(n)||Array.isArray(n)?n:isNaN(+i[r+1])?{}:[]}if(x.includes(t))return;e[t]=a,e=e[t]}},j=o.createContext(null);j.displayName=`HookFormControlContext`;var M=()=>o.useContext(j),N=(e,t,n,r=!0)=>{let i={};for(let a in e)Object.defineProperty(i,a,{get:()=>{let i=a;return t._proxyFormState[i]!==v.all&&(t._proxyFormState[i]=!r||v.all),n&&(n[i]=!0),e[i]}});return i},P=h?o.useLayoutEffect:o.useEffect;function F(e){let t=M(),{control:n=t,disabled:r,name:i,exact:a}=e||{},[s,c]=o.useState(()=>({...n._formState,defaultValues:n._defaultValues})),l=o.useRef({isDirty:!1,isLoading:!1,dirtyFields:!1,touchedFields:!1,validatingFields:!1,isValidating:!1,isValid:!1,errors:!1});return P(()=>n._subscribe({name:i,formState:l.current,exact:a,callback:e=>{!r&&c({...n._formState,...e,defaultValues:n._defaultValues})}}),[i,r,a]),o.useEffect(()=>{l.current.isValid&&n._setValid(!0)},[n]),o.useMemo(()=>N(s,n,l.current,!1),[s,n])}var I=e=>typeof e==`string`,ee=(e,t,n,r,i)=>I(e)?(r&&t.watch.add(e),D(n,e,i)):Array.isArray(e)?e.map(e=>(r&&t.watch.add(e),D(n,e))):(r&&(t.watchAll=!0),n),te=e=>l(e)||!u(e),ne=(e,t)=>t.length===0&&!Array.isArray(e)&&!m(e);function L(e,t,n=new WeakMap){if(e===t)return!0;if(te(e)||te(t))return Object.is(e,t);if(c(e)&&c(t))return Object.is(e.getTime(),t.getTime());let r=Object.keys(e),i=Object.keys(t);if(r.length!==i.length)return!1;if(ne(e,r)||ne(t,i))return Object.is(e,t);if(!r.length&&Array.isArray(e)!==Array.isArray(t))return!1;let a=n.get(e);if(a&&a.has(t))return!0;if(a)a.add(t);else{let r=new WeakSet;r.add(t),n.set(e,r)}for(let i of r){let r=e[i];if(!(i in t))return!1;if(i!==`ref`){let e=t[i];if(c(r)&&c(e)||(d(r)||Array.isArray(r))&&(d(e)||Array.isArray(e))?!L(r,e,n):!Object.is(r,e))return!1}}return!0}function R(e){let t=M(),{control:n=t,name:r,defaultValue:i,disabled:a,exact:s,compute:c}=e||{},l=o.useRef(i),u=o.useRef(c),d=o.useRef(void 0),f=o.useRef(n),p=o.useRef(r);u.current=c;let[m,h]=o.useState(()=>{let e=n._getWatch(r,l.current);return u.current?u.current(e):e}),g=o.useCallback(e=>{let t=ee(r,n._names,e||n._formValues,!1,l.current);return u.current?u.current(t):t},[n._formValues,n._names,r]),_=o.useCallback(e=>{if(!a){let t=ee(r,n._names,e||n._formValues,!1,l.current);if(u.current){let e=u.current(t);L(e,d.current)||(h(e),d.current=e)}else h(t)}},[n._formValues,n._names,a,r]);P(()=>((f.current!==n||!L(p.current,r))&&(f.current=n,p.current=r,_()),n._subscribe({name:r,formState:{values:!0},exact:s,callback:e=>{_(e.values)}})),[n,s,r,_]),o.useEffect(()=>n._removeUnmounted());let v=f.current!==n,y=p.current,b=o.useMemo(()=>{if(a)return null;let e=!v&&!L(y,r);return v||e?g():null},[a,v,r,y,g]);return b===null?m:b}function z(e){let t=M(),{name:n,disabled:r,control:i=t,shouldUnregister:a,defaultValue:s,exact:c=!0}=e,l=p(i._names.array,n),u=R({control:i,name:n,defaultValue:o.useMemo(()=>D(i._formValues,n,D(i._defaultValues,n,s)),[i,n,s]),exact:c}),d=F({control:i,name:n,exact:c}),m=o.useRef(e),h=o.useRef(null),v=o.useRef(i.register(n,{...e.rules,value:u,...O(e.disabled)?{disabled:e.disabled}:{}}));m.current=e;let y=o.useMemo(()=>Object.defineProperties({},{invalid:{enumerable:!0,get:()=>!!D(d.errors,n)},isDirty:{enumerable:!0,get:()=>!!D(d.dirtyFields,n)},isTouched:{enumerable:!0,get:()=>!!D(d.touchedFields,n)},isValidating:{enumerable:!0,get:()=>!!D(d.validatingFields,n)},error:{enumerable:!0,get:()=>D(d.errors,n)}}),[d,n]),b=o.useCallback(e=>{let t=f(e);return D(i._fields,n)||(v.current=i.register(n,{...m.current.rules,value:t})),v.current.onChange({target:{value:f(e),name:n},type:_.CHANGE})},[n,i]),x=o.useCallback(()=>v.current.onBlur({target:{value:D(i._formValues,n),name:n},type:_.BLUR}),[n,i._formValues]),S=o.useCallback(e=>{e&&(h.current={focus:()=>k(e.focus)&&e.focus(),select:()=>k(e.select)&&e.select(),setCustomValidity:t=>k(e.setCustomValidity)&&e.setCustomValidity(t),reportValidity:()=>k(e.reportValidity)&&e.reportValidity()});let t=D(i._fields,n);t&&t._f&&e&&(t._f.ref=h.current)},[i._fields,n]),C=o.useMemo(()=>({name:n,value:u,...O(r)||d.disabled?{disabled:d.disabled||r}:{},onChange:b,onBlur:x,ref:S}),[n,r,d.disabled,b,x,S,u]);return o.useEffect(()=>{let e=i._options.shouldUnregister||a;i.register(n,{...m.current.rules,...O(m.current.disabled)?{disabled:m.current.disabled}:{}});let t=(e,t)=>{let n=D(i._fields,e);n&&n._f&&(n._f.mount=t)};if(t(n,!0),e){let e=g(D(a?i._defaultValues:i._options.values||i._defaultValues,n,D(i._options.defaultValues,n,m.current.defaultValue)));A(i._defaultValues,n,e),w(D(i._formValues,n))&&A(i._formValues,n,e)}if(!l&&i.register(n),h.current){let e=D(i._fields,n);e&&e._f&&(e._f.ref=h.current)}return()=>{(l?e&&!i._state.action:e)?i.unregister(n):t(n,!1)}},[n,i,l,a]),o.useEffect(()=>{i._setDisabledField({disabled:r,name:n})},[r,n,i]),o.useMemo(()=>({field:C,formState:d,fieldState:y}),[C,d,y])}var re=e=>e.render(z(e)),ie=o.createContext(null);ie.displayName=`HookFormContext`;var ae=()=>o.useContext(ie),oe=({children:e,watch:t,getValues:n,getFieldState:r,setError:i,clearErrors:a,setValue:s,setValues:c,trigger:l,formState:u,resetField:d,reset:f,handleSubmit:p,unregister:m,control:h,register:g,setFocus:_,subscribe:v})=>{let y=o.useMemo(()=>({watch:t,getValues:n,getFieldState:r,setError:i,clearErrors:a,setValue:s,setValues:c,trigger:l,formState:u,resetField:d,reset:f,handleSubmit:p,unregister:m,control:h,register:g,setFocus:_,subscribe:v}),[a,h,u,r,n,p,g,f,d,i,_,s,c,v,l,m,t]);return o.createElement(ie.Provider,{value:y},o.createElement(j.Provider,{value:y.control},e))},se=(e,t,n,r,i)=>t?{...n[e],types:{...n[e]&&n[e].types?n[e].types:{},[r]:i||!0}}:{},ce=e=>Array.isArray(e)?e.filter(Boolean):[],le=e=>Array.isArray(e)?e:[e],ue=()=>{let e=[];return{get observers(){return e},next:t=>{for(let n of e)n.next&&n.next(t)},subscribe:t=>(e.push(t),{unsubscribe:()=>{e=e.filter(e=>e!==t)}}),unsubscribe:()=>{e=[]}}};function de(e,t){let n={};for(let r in e)if(e.hasOwnProperty(r)){let i=e[r],a=t[r];if(i&&d(i)&&a){let e=de(i,a);d(e)&&(n[r]=e)}else e[r]&&(n[r]=a)}return n}var B=e=>d(e)&&!Object.keys(e).length,fe=e=>e.type===`file`,pe=e=>{if(!h)return!1;let t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},me=e=>e.type===`select-multiple`,V=e=>e.type===`radio`,he=e=>V(e)||s(e),ge=e=>pe(e)&&e.isConnected;function _e(e,t){let n=t.slice(0,-1).length,r=0;for(;r<n;){if(l(e)){e=void 0;break}e=e[t[r]],r++}return e}function ve(e){for(let t in e)if(e.hasOwnProperty(t)&&!w(e[t]))return!1;return!0}function H(e,t){if(I(t)&&Object.prototype.hasOwnProperty.call(e,t))return delete e[t],e;let n=Array.isArray(t)?t:C(t)?[t]:E(t),r=n.length===1?e:_e(e,n),i=n.length-1,a=n[i];return r&&delete r[a],i!==0&&(d(r)&&B(r)||Array.isArray(r)&&ve(r))&&H(e,n.slice(0,-1)),e}var U=e=>{for(let t in e)if(k(e[t]))return!0;return!1};function ye(e){return Array.isArray(e)||d(e)&&!U(e)}function W(e,t={}){for(let n in e){let r=e[n];ye(r)?(t[n]=Array.isArray(r)?[]:{},W(r,t[n])):w(r)||(t[n]=!0)}return t}function G(e){if(e!==!1){if(e===!0)return!0;if(Array.isArray(e)){let t=e.map(e=>G(e));return t.some(e=>e!==void 0)?t:void 0}if(d(e)){let t={};for(let n in e){let r=G(e[n]);w(r)||(t[n]=r)}return Object.keys(t).length?t:void 0}}}function K(e,t,n){n||=W(t);for(let r in e){let i=e[r];if(ye(i))w(t)||te(n[r])?n[r]=W(i,Array.isArray(i)?[]:{}):K(i,l(t)?{}:t[r],n[r]);else{let e=t[r];n[r]=!L(i,e)}}return G(n)||{}}var be={value:!1,isValid:!1},q={value:!0,isValid:!0},J=e=>{if(Array.isArray(e)){if(e.length>1){let t=e.filter(e=>e&&e.checked&&!e.disabled).map(e=>e.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!w(e[0].attributes.value)?w(e[0].value)||e[0].value===``?q:{value:e[0].value,isValid:!0}:q:be}return be},xe=(e,{valueAsNumber:t,valueAsDate:n,setValueAs:r})=>w(e)?e:t?e===``?NaN:e&&+e:n&&I(e)?new Date(e):r?r(e):e,Se={isValid:!1,value:null},Y=e=>Array.isArray(e)?e.reduce((e,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:e,Se):Se;function Ce(e){let t=e.ref;return fe(t)?t.files:V(t)?Y(e.refs).value:me(t)?[...t.selectedOptions].map(({value:e})=>e):s(t)?J(e.refs).value:xe(w(t.value)?e.ref.value:t.value,e)}var we=(e,t,n,r)=>{let i={};for(let n of e){let e=D(t,n);e&&A(i,n,e._f)}return{criteriaMode:n,names:[...e],fields:i,shouldUseNativeValidation:r}},X=e=>e instanceof RegExp,Te=e=>w(e)?e:X(e)?e.source:d(e)?X(e.value)?e.value.source:e.value:e,Ee=e=>({isOnSubmit:!e||e===v.onSubmit,isOnBlur:e===v.onBlur,isOnChange:e===v.onChange,isOnAll:e===v.all,isOnTouch:e===v.onTouched}),De=`AsyncFunction`,Oe=e=>{if(!e||!e.validate)return!1;if(k(e.validate))return e.validate.constructor.name===De;if(d(e.validate)){for(let t in e.validate)if(e.validate[t].constructor.name===De)return!0}return!1},ke=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),Ae=(e,t,n)=>{if(n)return!1;if(t.watchAll||t.watch.has(e))return!0;for(let n of t.watch)if(e.startsWith(n)&&e.charAt(n.length)===`.`)return!0;return!1},je=(e,t,n,r)=>{for(let i of n||Object.keys(e)){let n=D(e,i);if(n){let{_f:e,...a}=n;if(e){if(e.refs&&e.refs[0]&&t(e.refs[0],i)&&!r||e.ref&&t(e.ref,e.name)&&!r)return!0;if(je(a,t))break}else if(d(a)&&je(a,t))break}}};function Me(e,t,n){let r=D(e,n);if(r||C(n))return{error:r,name:n};let i=n.split(`.`);for(;i.length;){let r=i.join(`.`),a=D(t,r),o=D(e,r);if(a&&!Array.isArray(a)&&n!==r)return{name:n};if(o&&o.type)return{name:r,error:o};if(o&&o.root&&o.root.type)return{name:`${r}.root`,error:o.root};i.pop()}return{name:n}}var Ne=(e,t,n,r)=>{n(e);let{name:i,...a}=e,o=Object.keys(a);return!o.length||r&&o.length>=Object.keys(t).length||o.find(e=>t[e]===(!r||v.all))},Pe=(e,t,n)=>!e||!t||e===t||le(e).some(e=>e&&(n?e===t:e.startsWith(t)||t.startsWith(e))),Fe=(e,t,n,r,i)=>i.isOnAll?!1:!n&&i.isOnTouch?!(t||e):(n?r.isOnBlur:i.isOnBlur)?!e:(n?r.isOnChange:i.isOnChange)?e:!0,Ie=(e,t)=>!ce(D(e,t)).length&&H(e,t),Le=(e,t,n)=>{let r=D(e,n),i=Array.isArray(r)?r:[];return A(i,b,t[n]),A(e,n,i),e};function Z(e,t,n=`validate`){if(I(e)||Array.isArray(e)&&e.every(I)||O(e)&&!e)return{type:n,message:I(e)?e:``,ref:t}}var Q=e=>d(e)&&!X(e)?e:{value:e,message:``},Re=async(e,t,n,r,i,a)=>{let{ref:o,refs:c,required:u,maxLength:f,minLength:p,min:m,max:h,pattern:g,validate:_,name:v,valueAsNumber:b,mount:x}=e._f,S=D(n,v);if(!x||t.has(v))return{};let C=c?c[0]:o,T=e=>{if(i&&C.reportValidity){let t=O(e)?``:e||``;c?c.forEach(e=>e.setCustomValidity(t)):C.setCustomValidity(t),C.reportValidity()}},E={},A=V(o),j=s(o),M=A||j,N=(b||fe(o))&&w(o.value)&&w(S)||pe(o)&&o.value===``||S===``||Array.isArray(S)&&!S.length,P=se.bind(null,v,r,E),F=(e,t,n,r=y.maxLength,i=y.minLength)=>{let a=e?t:n;E[v]={type:e?r:i,message:a,ref:o,...P(e?r:i,a)}};if(a?!Array.isArray(S)||!S.length:u&&(!M&&(N||l(S))||O(S)&&!S||j&&!J(c).isValid||A&&!Y(c).isValid)){let{value:e,message:t}=I(u)?{value:!!u,message:u}:Q(u);if(e&&(E[v]={type:y.required,message:t,ref:C,...P(y.required,t)},!r))return T(t),E}if(!N&&(!l(m)||!l(h))){let e,t,n=Q(h),i=Q(m);if(!l(S)&&!isNaN(S)){let r=o.valueAsNumber||S&&+S;l(n.value)||(e=r>n.value),l(i.value)||(t=r<i.value)}else{let r=o.valueAsDate||new Date(S),a=e=>new Date(new Date().toDateString()+` `+e),s=o.type==`time`,c=o.type==`week`;I(n.value)&&S&&(e=s?a(S)>a(n.value):c?S>n.value:r>new Date(n.value)),I(i.value)&&S&&(t=s?a(S)<a(i.value):c?S<i.value:r<new Date(i.value))}if((e||t)&&(F(!!e,n.message,i.message,y.max,y.min),!r))return T(E[v].message),E}if((f||p)&&!N&&(I(S)||a&&Array.isArray(S))){let e=Q(f),t=Q(p),n=!l(e.value)&&S.length>+e.value,i=!l(t.value)&&S.length<+t.value;if((n||i)&&(F(n,e.message,t.message),!r))return T(E[v].message),E}if(g&&!N&&I(S)){let{value:e,message:t}=Q(g);if(X(e)&&!S.match(e)&&(E[v]={type:y.pattern,message:t,ref:o,...P(y.pattern,t)},!r))return T(t),E}if(_){if(k(_)){let e=Z(await _(S,n),C);if(e&&(E[v]={...e,...P(y.validate,e.message)},!r))return T(e.message),E}else if(d(_)){let e={};for(let t in _){if(!B(e)&&!r)break;let i=Z(await _[t](S,n),C,t);i&&(e={...i,...P(t,i.message)},T(i.message),r&&(E[v]=e))}if(!B(e)&&(E[v]={ref:C,...e},!r))return E}}return T(!0),E},ze={mode:v.onSubmit,reValidateMode:v.onChange,shouldFocusError:!0},Be=`form`,Ve={submitCount:0,isDirty:!1,isReady:!1,isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{}};function He(e={}){let t={...ze,...e},n={...g(Ve),isLoading:k(t.defaultValues),errors:t.errors||{},disabled:t.disabled||!1},r={},i=(d(t.defaultValues)||d(t.values))&&g(t.defaultValues||t.values)||{},a=t.shouldUnregister?{}:g(i),o={action:!1,mount:!1,watch:!1,keepIsValid:!1},u={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set,registerName:new Set},m,x=0,S=0,T=Ee(t.mode),j=Ee(t.reValidateMode),M={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},N={...M},P={...N},F={array:ue(),state:ue()},te=t.criteriaMode===v.all,ne=e=>t=>{clearTimeout(x),x=setTimeout(e,t)},R=async e=>{if(!o.keepIsValid&&!t.disabled&&(N.isValid||P.isValid||e)){let e;t.resolver?(e=B((await U()).errors),z()):e=await G({fields:r,onlyCheckValid:!0,eventType:_.VALID}),e!==n.isValid&&F.state.next({isValid:e})}},z=(e,r)=>{!t.disabled&&(N.isValidating||N.validatingFields||P.isValidating||P.validatingFields)&&((e||Array.from(u.mount)).forEach(e=>{e&&(r?A(n.validatingFields,e,r):H(n.validatingFields,e))}),F.state.next({validatingFields:n.validatingFields,isValidating:!B(n.validatingFields)}))},re=()=>{n.dirtyFields=K(i,a)},ie=(e,i=[],s,c,l=!0,u=!0)=>{if(c&&s&&!t.disabled){if(o.action=!0,u&&Array.isArray(D(r,e))){let t=s(D(r,e),c.argA,c.argB);l&&A(r,e,t)}if(u&&Array.isArray(D(n.errors,e))){let t=s(D(n.errors,e),c.argA,c.argB);l&&A(n.errors,e,t),Ie(n.errors,e)}if((N.touchedFields||P.touchedFields)&&u&&Array.isArray(D(n.touchedFields,e))){let t=s(D(n.touchedFields,e),c.argA,c.argB);l&&A(n.touchedFields,e,t)}(N.dirtyFields||P.dirtyFields)&&re(),F.state.next({name:e,isDirty:q(e,i),dirtyFields:n.dirtyFields,errors:n.errors,isValid:n.isValid})}else A(a,e,i)},ae=(e,t)=>{A(n.errors,e,t),n.errors={...n.errors},F.state.next({errors:n.errors})},oe=e=>{n.errors=e,F.state.next({errors:n.errors,isValid:!1})},se=e=>{let t=C(e)?[e]:E(e),n=a,r=i;for(let e=0;e<t.length-1;e++){let i=t[e];if(n=l(n)?n:n[i],r=l(r)?r:r[i],n===null&&r!==null)return!0}return!1},V=(t,s,c,l)=>{let d=D(r,t);if(d){if(se(t))return;let r=w(D(a,t)),f=D(a,t,w(c)?D(i,t):c);w(f)||l&&l.defaultChecked||s?A(a,t,s?f:Ce(d._f)):Y(t,f),o.mount&&!o.action&&(R(),r&&n.isDirty&&(N.isDirty||P.isDirty)&&(q()||(n.isDirty=!1,F.state.next({...n}))),e.shouldUnregister&&r&&!w(D(a,t))&&Ae(t,u)&&(o.watch=!0))}},_e=(e,r,o,s,c)=>{let l=!1,u=!1,d={name:e};if(!t.disabled){if(!o||s){let t=L(D(i,e),r);(N.isDirty||P.isDirty)&&(u=n.isDirty,n.isDirty=d.isDirty=!t||q(),l=u!==d.isDirty),u=!!D(n.dirtyFields,e),t===n.isDirty?t?H(n.dirtyFields,e):A(n.dirtyFields,e,!0):n.dirtyFields=K(i,a),d.dirtyFields=n.dirtyFields,l||=(N.dirtyFields||P.dirtyFields)&&u!==!t}if(o){let t=D(n.touchedFields,e);t||(A(n.touchedFields,e,o),d.touchedFields=n.touchedFields,l||=(N.touchedFields||P.touchedFields)&&t!==o)}l&&c&&F.state.next(d)}return l?d:{}},ve=(e,r,i,a)=>{let o=D(n.errors,e),s=(N.isValid||P.isValid)&&O(r)&&n.isValid!==r;if(t.delayError&&i?(m=ne(()=>ae(e,i)),m(t.delayError)):(clearTimeout(x),m=null,i?A(n.errors,e,i):H(n.errors,e),n.errors={...n.errors}),(i?!L(o,i):o)||!B(a)||s){let t={...a,...s&&O(r)?{isValid:r}:{},errors:n.errors,name:e};n={...n,...t},F.state.next(t)}},U=async e=>(z(e,!0),await t.resolver(a,t.context,we(e||u.mount,r,t.criteriaMode,t.shouldUseNativeValidation))),ye=async e=>{let{errors:t}=await U(e);if(z(e),e){for(let r of e){let e=D(t,r);e?u.array.has(r)&&d(e)&&!Object.keys(e).some(e=>!Number.isNaN(Number(e)))?Le(n.errors,{[r]:e},r):A(n.errors,r,e):H(n.errors,r)}n.errors={...n.errors}}else n.errors=t;return t},W=async({name:t,eventType:r})=>{if(e.validate){let i=await e.validate({formValues:a,formState:n,name:t,eventType:r});if(d(i))for(let e in i){let t=i[e];t&&$(`${Be}.${e}`,{message:I(t.message)?t.message:``,type:t.type||y.validate})}else I(i)||!i?$(Be,{message:i||``,type:y.validate}):qe(Be);return i}return!0},G=async({fields:r,onlyCheckValid:i,name:o,eventType:s,context:c={valid:!0,runRootValidation:!1}})=>{if(e.validate&&(c.runRootValidation=!0,!await W({name:o,eventType:s})&&(c.valid=!1,i)))return c.valid;for(let o in r){let l=r[o];if(l){let{_f:r,...d}=l;if(r){let o=u.array.has(r.name),s=l._f&&Oe(l._f),d=N.validatingFields||N.isValidating||P.validatingFields||P.isValidating;s&&d&&z([r.name],!0);let f=await Re(l,u.disabled,a,te,t.shouldUseNativeValidation&&!i,o);if(s&&d&&z([r.name]),f[r.name]&&(c.valid=!1,i)||(!i&&(D(f,r.name)?o?Le(n.errors,f,r.name):A(n.errors,r.name,f[r.name]):H(n.errors,r.name)),e.shouldUseNativeValidation&&f[r.name]))break}!B(d)&&await G({context:c,onlyCheckValid:i,fields:d,name:o,eventType:s})}}return c.valid},be=()=>{for(let e of u.unMount){let t=D(r,e);t&&(t._f.refs?t._f.refs.every(e=>!ge(e)):!ge(t._f.ref))&&Ze(e)}u.unMount=new Set},q=(e,n)=>!t.disabled&&(e&&n&&A(a,e,n),!L(o.mount?a:i,i)),J=(e,t,n)=>ee(e,u,{...o.mount?a:w(t)?i:I(e)?{[e]:t}:t},n,t),Se=e=>ce(D(o.mount?a:i,e,t.shouldUnregister?D(i,e,[]):[])),Y=(e,t,n={},i=!1,o=!1)=>{let c=D(r,e),u=t;if(c){let n=c._f;n&&(!n.disabled&&A(a,e,xe(t,n)),u=pe(n.ref)&&l(t)?``:t,me(n.ref)?[...n.ref.options].forEach(e=>e.selected=u.includes(e.value)):n.refs?s(n.ref)?n.refs.forEach(e=>{(!e.defaultChecked||!e.disabled)&&(Array.isArray(u)?e.checked=!!u.find(t=>t===e.value):e.checked=u===e.value||!!u)}):n.refs.forEach(e=>e.checked=e.value===u):fe(n.ref)?n.ref.value=``:(n.ref.value=u,!n.ref.type&&!o&&F.state.next({name:e,values:i?a:g(a)})))}(n.shouldDirty||n.shouldTouch)&&_e(e,u,n.shouldTouch,n.shouldDirty,!o),n.shouldValidate&&We(e)},X=(e,t,n,i=!1,a=!1)=>{for(let o in t){if(!t.hasOwnProperty(o))return;let s=t[o],l=e+`.`+o,f=D(r,l);(u.array.has(e)||d(s)||f&&!f._f)&&!c(s)?X(l,s,n,i,a):Y(l,s,n,i,a)}},De=(e,t,i,s,c=!1)=>{let d=D(r,e),f=u.array.has(e),p=s?t:g(t),m=L(D(a,e),p);if(m||A(a,e,p),f)F.array.next({name:e,values:s?a:g(a)}),(N.isDirty||N.dirtyFields||P.isDirty||P.dirtyFields)&&i.shouldDirty&&(re(),c||F.state.next({name:e,dirtyFields:n.dirtyFields,isDirty:q(e,p)}));else{let t=Array.isArray(p)&&!p.length||B(p);!d||d._f||l(p)||t?Y(e,p,i,s,c):X(e,p,i,s,c)}if(!m&&!c){let t=Ae(e,u),r=s?a:g(a);F.state.next({...t&&n,name:o.mount||t?e:void 0,values:r})}},Z=(e,t,n={})=>De(e,t,n,!1),Q=(e,t={})=>{let r=k(e)?e(a):e;if(!L(a,r)){a={...a,...r};for(let e of u.mount)De(e,D(r,e),t,!0,!0);F.state.next({...n,name:void 0,type:void 0,...S?{values:a}:{}}),t.shouldValidate&&R()}},He=async i=>{o.mount=!0;let s=i.target,l=s.name,d=!0,p=D(r,l),h=e=>{d=Number.isNaN(e)||c(e)&&isNaN(e.getTime())||L(e,D(a,l,e))};if(p){let o,c,v=s.type?Ce(p._f):f(i),y=i.type===_.BLUR||i.type===_.FOCUS_OUT,b=!ke(p._f)&&!e.validate&&!t.resolver&&!D(n.errors,l)&&!p._f.deps,x=b||Fe(y,D(n.touchedFields,l),n.isSubmitted,j,T),C=Ae(l,u,y);A(a,l,v),y?(!s||!s.readOnly)&&(p._f.onBlur&&p._f.onBlur(i),m&&m(0)):p._f.onChange&&p._f.onChange(i);let w=_e(l,v,y),E=!B(w)||C;if(!y&&F.state.next({name:l,type:i.type,...S?{values:g(a)}:{}}),x)return(!b||!n.isValid)&&(N.isValid||P.isValid)&&(t.mode===`onBlur`?y&&R():y||R()),E&&F.state.next({name:l,...C?{}:w});if(!t.resolver&&e.validate&&await W({name:l,eventType:i.type}),!y&&C&&F.state.next({...n}),t.resolver){let{errors:e}=await U([l]);if(z([l]),h(v),!d){!B(w)&&F.state.next(w);return}let t=Me(n.errors,r,l),i=Me(e,r,t.name||l);o=i.error,l=i.name,c=B(e)}else z([l],!0),o=(await Re(p,u.disabled,a,te,t.shouldUseNativeValidation))[l],z([l]),h(v),d&&(o?c=!1:(N.isValid||P.isValid)&&(c=await G({fields:r,onlyCheckValid:!0,name:l,eventType:i.type})));d&&(p._f.deps&&(!Array.isArray(p._f.deps)||p._f.deps.length>0)&&We(p._f.deps),ve(l,c,o,w))}},Ue=(e,t)=>{if(D(n.errors,t)&&e.focus)return e.focus(),1},We=async(e,i={})=>{let a,o,s=le(e);if(t.resolver){let t=await ye(w(e)?e:s);a=B(t),o=e?!s.some(e=>D(t,e)):a}else e?(o=(await Promise.all(s.map(async e=>{let t=D(r,e);return await G({fields:t&&t._f?{[e]:t}:t,eventType:_.TRIGGER})}))).every(Boolean),!(!o&&!n.isValid)&&R()):o=a=await G({fields:r,name:e,eventType:_.TRIGGER});return F.state.next({...!I(e)||(N.isValid||P.isValid)&&a!==n.isValid?{}:{name:e},...t.resolver||!e?{isValid:a}:{},errors:n.errors}),i.shouldFocus&&!o&&je(r,Ue,e?s:u.mount),o},Ge=(e,t)=>{let r={...o.mount?a:i};return t&&(r=de(t.dirtyFields?n.dirtyFields:n.touchedFields,r)),w(e)?r:I(e)?D(r,e):e.map(e=>D(r,e))},Ke=(e,t)=>({invalid:!!D((t||n).errors,e),isDirty:!!D((t||n).dirtyFields,e),error:D((t||n).errors,e),isValidating:!!D(n.validatingFields,e),isTouched:!!D((t||n).touchedFields,e)}),qe=e=>{let t=e?le(e):void 0;t?.forEach(e=>H(n.errors,e)),t?t.forEach(e=>{F.state.next({name:e,errors:n.errors})}):F.state.next({errors:{}})},$=(e,t,i)=>{let a=(D(r,e,{_f:{}})._f||{}).ref,{ref:o,message:s,type:c,...l}=D(n.errors,e)||{};A(n.errors,e,{...l,...t,ref:a}),F.state.next({name:e,errors:n.errors,isValid:!1}),i&&i.shouldFocus&&a&&a.focus&&a.focus()},Je=(e,t)=>{if(k(e)){S++;let{unsubscribe:n}=F.state.subscribe({next:n=>`values`in n&&e(n.values||J(void 0,t),n)}),r=!1;return{unsubscribe:()=>{r||(r=!0,S--,n())}}}return J(e,t,!0)},Ye=e=>{let t=!!e.formState?.values;t&&S++;let{unsubscribe:r}=F.state.subscribe({next:t=>{if(Pe(e.name,t.name,e.exact)&&Ne(t,e.formState||N,st,e.reRenderRoot)){let r={...a};e.callback({values:r,...n,...t,defaultValues:i})}}});if(!t)return r;let o=!1;return()=>{o||(o=!0,S--,r())}},Xe=e=>(o.mount=!0,P={...P,...e.formState},Ye({...e,formState:{...M,...e.formState}})),Ze=(e,o={})=>{for(let s of e?le(e):u.mount)u.mount.delete(s),u.array.delete(s),o.keepValue||(H(r,s),H(a,s)),!o.keepError&&H(n.errors,s),!o.keepDirty&&H(n.dirtyFields,s),!o.keepTouched&&H(n.touchedFields,s),!o.keepIsValidating&&H(n.validatingFields,s),!t.shouldUnregister&&!o.keepDefaultValue&&H(i,s);F.state.next({values:g(a)}),F.state.next({...n,...o.keepDirty?{isDirty:q()}:{}}),!o.keepIsValid&&R()},Qe=({disabled:e,name:t})=>{if(O(e)&&o.mount||e||u.disabled.has(t)){let n=u.disabled.has(t)!==!!e;e?u.disabled.add(t):u.disabled.delete(t),n&&o.mount&&!o.action&&R()}},$e=(e,n={})=>{let a=D(r,e),s=O(n.disabled)||O(t.disabled),c=!u.registerName.has(e)&&a&&a._f&&!a._f.mount;return A(r,e,{...a||{},_f:{...a&&a._f?a._f:{ref:{name:e}},name:e,mount:!0,...n}}),u.mount.add(e),a&&!c?Qe({disabled:O(n.disabled)?n.disabled:t.disabled,name:e}):V(e,!0,n.value),{...s?{disabled:n.disabled||t.disabled}:{},...t.progressive?{required:!!n.required,min:Te(n.min),max:Te(n.max),minLength:Te(n.minLength),maxLength:Te(n.maxLength),pattern:Te(n.pattern)}:{},name:e,onChange:He,onBlur:He,ref:s=>{if(s){u.registerName.add(e),$e(e,n),u.registerName.delete(e),a=D(r,e);let t=w(s.value)&&s.querySelectorAll&&s.querySelectorAll(`input,select,textarea`)[0]||s,o=he(t),c=a._f.refs||[];if(o?c.find(e=>e===t):t===a._f.ref)return;A(r,e,{_f:{...a._f,...o?{refs:[...c.filter(ge),t,...Array.isArray(D(i,e))?[{}]:[]],ref:{type:t.type,name:e}}:{ref:t}}}),V(e,!1,void 0,t)}else a=D(r,e,{}),a._f&&(a._f.mount=!1),(t.shouldUnregister||n.shouldUnregister)&&!(p(u.array,e)&&o.action)&&u.unMount.add(e)}}},et=()=>t.shouldFocusError&&!t.shouldUseNativeValidation&&je(r,Ue,u.mount),tt=e=>{O(e)&&(F.state.next({disabled:e}),je(r,(t,n)=>{let i=D(r,n);i&&(t.disabled=i._f.disabled||e,Array.isArray(i._f.refs)&&i._f.refs.forEach(t=>{t.disabled=i._f.disabled||e}))},0,!1))},nt=(e,i)=>async o=>{let s;o&&(o.preventDefault&&o.preventDefault(),o.persist&&o.persist());let c=g(a);if(F.state.next({isSubmitting:!0}),t.resolver){let{errors:e,values:t}=await U();z(),n.errors=e,c=g(t)}else await G({fields:r,eventType:_.SUBMIT});if(u.disabled.size)for(let e of u.disabled)H(c,e);if(H(n.errors,b),B(n.errors)){F.state.next({errors:{}});try{await e(c,o)}catch(e){s=e}}else i&&await i({...n.errors},o),et(),setTimeout(et);if(F.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:B(n.errors)&&!s,submitCount:n.submitCount+1,errors:n.errors}),s)throw s},rt=(e,t={})=>{D(r,e)&&(w(t.defaultValue)?Z(e,g(D(i,e))):(Z(e,t.defaultValue),A(i,e,g(t.defaultValue))),t.keepTouched||H(n.touchedFields,e),t.keepDirty||(H(n.dirtyFields,e),n.isDirty=t.defaultValue?q(e,g(D(i,e))):q()),t.keepError||(H(n.errors,e),N.isValid&&R()),F.state.next({...n}))},it=(e,s={})=>{let c=e?g(e):i,l=g(c),d=B(e),f=l;if(s.keepDefaultValues||(i=c),!s.keepValues){if(s.keepDirtyValues){let e=new Set([...u.mount,...Object.keys(K(i,a))]);for(let t of Array.from(e)){let e=D(n.dirtyFields,t),r=D(a,t),i=D(f,t);e&&!w(r)?A(f,t,r):!e&&!w(i)&&Z(t,i)}}else{if(h&&w(e))for(let e of u.mount){let t=D(r,e);if(t&&t._f){let e=Array.isArray(t._f.refs)?t._f.refs[0]:t._f.ref;if(pe(e)){let t=e.closest(`form`);if(t){t.reset();break}}}}if(s.keepFieldsRef)for(let e of u.mount)Z(e,D(f,e));else r={}}if(t.shouldUnregister){if(a=s.keepDefaultValues?g(i):{},s.keepFieldsRef)for(let e of u.mount)A(a,e,D(f,e))}else a=g(f);F.array.next({values:{...f}}),F.state.next({values:{...f}})}u={mount:s.keepDirtyValues?u.mount:new Set,unMount:new Set,array:new Set,registerName:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:``},o.mount=!N.isValid||!!s.keepIsValid||!!s.keepDirtyValues||!t.shouldUnregister&&!B(f),o.watch=!!t.shouldUnregister,o.keepIsValid=!!s.keepIsValid,o.action=!1,s.keepErrors||(n.errors={}),F.state.next({submitCount:s.keepSubmitCount?n.submitCount:0,isDirty:d?!1:s.keepDirty?n.isDirty:s.keepValues?q():!!(s.keepDefaultValues&&!L(e,i)),isSubmitted:s.keepIsSubmitted?n.isSubmitted:!1,dirtyFields:d?{}:s.keepDirtyValues?s.keepDefaultValues&&a?K(i,a):n.dirtyFields:s.keepDefaultValues&&e?K(i,e):s.keepDirty?n.dirtyFields:{},touchedFields:s.keepTouched?n.touchedFields:{},errors:s.keepErrors?n.errors:{},isSubmitSuccessful:s.keepIsSubmitSuccessful?n.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:i})},at=(e,n)=>it(k(e)?e(a):e,{...t.resetOptions,...n}),ot=(e,t={})=>{let n=D(r,e),i=n&&n._f;if(i){let e=i.refs?i.refs[0]:i.ref;e.focus&&setTimeout(()=>{e.focus(),t.shouldSelect&&k(e.select)&&e.select()})}},st=e=>{n={...n,...e}},ct={control:{register:$e,unregister:Ze,getFieldState:Ke,handleSubmit:nt,setError:$,_subscribe:Ye,_runSchema:U,_updateIsValidating:z,_focusError:et,_getWatch:J,_getDirty:q,_setValid:R,_setFieldArray:ie,_setDisabledField:Qe,_setErrors:oe,_getFieldArray:Se,_reset:it,_resetDefaultValues:()=>k(t.defaultValues)&&t.defaultValues().then(e=>{at(e,t.resetOptions),F.state.next({isLoading:!1})}),_removeUnmounted:be,_disableForm:tt,_subjects:F,_proxyFormState:N,get _fields(){return r},get _formValues(){return a},get _state(){return o},set _state(e){o=e},get _defaultValues(){return i},get _names(){return u},set _names(e){u=e},get _formState(){return n},get _options(){return t},set _options(e){t={...t,...e},T=Ee(t.mode),j=Ee(t.reValidateMode)}},subscribe:Xe,trigger:We,register:$e,handleSubmit:nt,watch:Je,setValue:Z,setValues:Q,getValues:Ge,reset:at,resetField:rt,resetDefaultValues:(e,t={})=>{if(i=g(e),!t.keepDirty){let e=K(i,a);n.dirtyFields=e,n.isDirty=!B(e)}t.keepIsValid||R(),F.state.next({...n,defaultValues:i})},clearErrors:qe,unregister:Ze,setError:$,setFocus:ot,getFieldState:Ke};return{...ct,formControl:ct}}function Ue(e={}){let t=o.useRef(void 0),n=o.useRef(void 0),r=o.useRef(e.formControl),[i,a]=o.useState(()=>({...g(Ve),isLoading:k(e.defaultValues),errors:e.errors||{},disabled:e.disabled||!1,defaultValues:k(e.defaultValues)?void 0:e.defaultValues}));if(!t.current||e.formControl&&r.current!==e.formControl)if(r.current=e.formControl,e.formControl)t.current={...e.formControl,formState:i},e.defaultValues&&!k(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{let{formControl:n,...r}=He(e);t.current={...r,formState:i}}let s=t.current.control;return s._options=e,P(()=>{let e=s._subscribe({formState:s._proxyFormState,callback:()=>a({...s._formState,defaultValues:s._defaultValues}),reRenderRoot:!0});return a(e=>({...e,isReady:!0})),s._formState.isReady=!0,e},[s]),o.useEffect(()=>s._disableForm(e.disabled),[s,e.disabled]),o.useEffect(()=>{e.mode&&(s._options.mode=e.mode),e.reValidateMode&&(s._options.reValidateMode=e.reValidateMode)},[s,e.mode,e.reValidateMode]),o.useEffect(()=>{e.errors&&(s._setErrors(e.errors),s._focusError())},[s,e.errors]),o.useEffect(()=>{e.shouldUnregister&&s._subjects.state.next({values:s._getWatch()})},[s,e.shouldUnregister]),o.useEffect(()=>{if(s._proxyFormState.isDirty){let e=s._getDirty();e!==i.isDirty&&s._subjects.state.next({isDirty:e})}},[s,i.isDirty]),o.useEffect(()=>{e.values&&!L(e.values,n.current)?(s._reset(e.values,{keepFieldsRef:!0,...s._options.resetOptions}),s._options.resetOptions?.keepIsValid||s._setValid(),n.current=e.values,a(e=>({...e}))):s._resetDefaultValues()},[s,e.values]),o.useEffect(()=>{s._state.mount||(s._setValid(),s._state.mount=!0),s._state.watch&&(s._state.watch=!1,s._subjects.state.next({...s._formState})),s._removeUnmounted()}),t.current.formState=o.useMemo(()=>N(i,s),[s,i]),t.current}function We({className:e,...t}){return(0,a.jsx)(`label`,{"data-slot":`label`,className:i(`text-sm leading-none font-medium select-none peer-disabled:cursor-not-allowed peer-disabled:opacity-50`,e),...t})}var Ge=oe,Ke=o.createContext({}),qe=({...e})=>(0,a.jsx)(Ke.Provider,{value:{name:e.name},children:(0,a.jsx)(re,{...e})}),$=()=>{let e=o.useContext(Ke),t=o.useContext(Je),{getFieldState:n}=ae(),r=F({name:e.name}),i=n(e.name,r);if(!e)throw Error(`useFormField should be used within <FormField>`);let{id:a}=t;return{id:a,name:e.name,formItemId:`${a}-form-item`,formDescriptionId:`${a}-form-item-description`,formMessageId:`${a}-form-item-message`,...i}},Je=o.createContext({});function Ye({className:e,...t}){let n=o.useId();return(0,a.jsx)(Je.Provider,{value:{id:n},children:(0,a.jsx)(`div`,{"data-slot":`form-item`,className:i(`grid gap-2`,e),...t})})}function Xe({className:e,...t}){let{error:n,formItemId:r}=$();return(0,a.jsx)(We,{"data-slot":`form-label`,"data-error":!!n,className:i(`data-[error=true]:text-destructive`,e),htmlFor:r,...t})}function Ze({...e}){let{error:t,formItemId:n,formDescriptionId:i,formMessageId:o}=$();return(0,a.jsx)(r,{"data-slot":`form-control`,id:n,"aria-describedby":t?`${i} ${o}`:`${i}`,"aria-invalid":!!t,...e})}function Qe({className:e,...t}){let{formDescriptionId:n}=$();return(0,a.jsx)(`p`,{"data-slot":`form-description`,id:n,className:i(`text-muted-foreground text-sm`,e),...t})}function $e({className:e,...t}){let{error:n,formMessageId:r}=$(),o=n?String(n?.message??``):t.children;return o?(0,a.jsx)(`p`,{"data-slot":`form-message`,id:r,className:i(`text-destructive text-sm`,e),...t,children:o}):null}export{Ye as a,We as c,A as d,Ue as f,qe as i,se as l,Ze as n,Xe as o,R as p,Qe as r,$e as s,Ge as t,D as u};
|
|
1
|
+
import{i as e,t}from"./jsx-runtime-DUAcabCT.js";import{t as n}from"./react-DbyrFoBd.js";import{Pt as r}from"./dist-9yav4OBD.js";import{t as i}from"./utils-DKOQrNEG.js";var a=e(t(),1),o=e(n(),1),s=e=>e.type===`checkbox`,c=e=>e instanceof Date,l=e=>e==null,u=e=>typeof e==`object`,d=e=>!l(e)&&!Array.isArray(e)&&u(e)&&!c(e),f=e=>d(e)&&e.target?s(e.target)?e.target.checked:e.target.value:e,p=(e,t)=>t.split(`.`).some((t,n,r)=>!isNaN(Number(t))&&e.has(r.slice(0,n).join(`.`))),m=e=>{let t=e.constructor&&e.constructor.prototype;return d(t)&&t.hasOwnProperty(`isPrototypeOf`)},h=typeof window<`u`&&window.HTMLElement!==void 0&&typeof document<`u`;function g(e){if(e instanceof Date)return new Date(e);let t=typeof FileList<`u`&&e instanceof FileList;if(h&&(e instanceof Blob||t))return e;let n=Array.isArray(e);if(!n&&!(d(e)&&m(e)))return e;let r=n?[]:Object.create(Object.getPrototypeOf(e));for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[t]=g(e[t]));return r}var _={BLUR:`blur`,FOCUS_OUT:`focusout`,CHANGE:`change`,SUBMIT:`submit`,TRIGGER:`trigger`,VALID:`valid`},v={onBlur:`onBlur`,onChange:`onChange`,onSubmit:`onSubmit`,onTouched:`onTouched`,all:`all`},y={max:`max`,min:`min`,maxLength:`maxLength`,minLength:`minLength`,pattern:`pattern`,required:`required`,validate:`validate`},b=`root`,x=[`__proto__`,`constructor`,`prototype`],S=/^\w*$/,C=e=>S.test(e),w=e=>e===void 0,T=/[.[\]'"]/,E=e=>e.split(T).filter(Boolean),D=(e,t,n)=>{if(!t||!d(e))return n;let r=C(t)?[t]:E(t);if(r.some(e=>x.includes(e)))return n;let i=r.reduce((e,t)=>l(e)?void 0:e[t],e);return w(i)||i===e?w(e[t])?n:e[t]:i},O=e=>typeof e==`boolean`,k=e=>typeof e==`function`,A=(e,t,n)=>{let r=-1,i=C(t)?[t]:E(t),a=i.length,o=a-1;for(;++r<a;){let t=i[r],a=n;if(r!==o){let n=e[t];a=d(n)||Array.isArray(n)?n:isNaN(+i[r+1])?{}:[]}if(x.includes(t))return;e[t]=a,e=e[t]}},j=o.createContext(null);j.displayName=`HookFormControlContext`;var M=()=>o.useContext(j),N=(e,t,n,r=!0)=>{let i={};for(let a in e)Object.defineProperty(i,a,{get:()=>{let i=a;return t._proxyFormState[i]!==v.all&&(t._proxyFormState[i]=!r||v.all),n&&(n[i]=!0),e[i]}});return i},P=h?o.useLayoutEffect:o.useEffect;function F(e){let t=M(),{control:n=t,disabled:r,name:i,exact:a}=e||{},[s,c]=o.useState(()=>({...n._formState,defaultValues:n._defaultValues})),l=o.useRef({isDirty:!1,isLoading:!1,dirtyFields:!1,touchedFields:!1,validatingFields:!1,isValidating:!1,isValid:!1,errors:!1});return P(()=>n._subscribe({name:i,formState:l.current,exact:a,callback:e=>{!r&&c({...n._formState,...e,defaultValues:n._defaultValues})}}),[i,r,a]),o.useEffect(()=>{l.current.isValid&&n._setValid(!0)},[n]),o.useMemo(()=>N(s,n,l.current,!1),[s,n])}var I=e=>typeof e==`string`,ee=(e,t,n,r,i)=>I(e)?(r&&t.watch.add(e),D(n,e,i)):Array.isArray(e)?e.map(e=>(r&&t.watch.add(e),D(n,e))):(r&&(t.watchAll=!0),n),te=e=>l(e)||!u(e),ne=(e,t)=>t.length===0&&!Array.isArray(e)&&!m(e);function L(e,t,n=new WeakMap){if(e===t)return!0;if(te(e)||te(t))return Object.is(e,t);if(c(e)&&c(t))return Object.is(e.getTime(),t.getTime());let r=Object.keys(e),i=Object.keys(t);if(r.length!==i.length)return!1;if(ne(e,r)||ne(t,i))return Object.is(e,t);if(!r.length&&Array.isArray(e)!==Array.isArray(t))return!1;let a=n.get(e);if(a&&a.has(t))return!0;if(a)a.add(t);else{let r=new WeakSet;r.add(t),n.set(e,r)}for(let i of r){let r=e[i];if(!(i in t))return!1;if(i!==`ref`){let e=t[i];if(c(r)&&c(e)||(d(r)||Array.isArray(r))&&(d(e)||Array.isArray(e))?!L(r,e,n):!Object.is(r,e))return!1}}return!0}function R(e){let t=M(),{control:n=t,name:r,defaultValue:i,disabled:a,exact:s,compute:c}=e||{},l=o.useRef(i),u=o.useRef(c),d=o.useRef(void 0),f=o.useRef(n),p=o.useRef(r);u.current=c;let[m,h]=o.useState(()=>{let e=n._getWatch(r,l.current);return u.current?u.current(e):e}),g=o.useCallback(e=>{let t=ee(r,n._names,e||n._formValues,!1,l.current);return u.current?u.current(t):t},[n._formValues,n._names,r]),_=o.useCallback(e=>{if(!a){let t=ee(r,n._names,e||n._formValues,!1,l.current);if(u.current){let e=u.current(t);L(e,d.current)||(h(e),d.current=e)}else h(t)}},[n._formValues,n._names,a,r]);P(()=>((f.current!==n||!L(p.current,r))&&(f.current=n,p.current=r,_()),n._subscribe({name:r,formState:{values:!0},exact:s,callback:e=>{_(e.values)}})),[n,s,r,_]),o.useEffect(()=>n._removeUnmounted());let v=f.current!==n,y=p.current,b=o.useMemo(()=>{if(a)return null;let e=!v&&!L(y,r);return v||e?g():null},[a,v,r,y,g]);return b===null?m:b}function z(e){let t=M(),{name:n,disabled:r,control:i=t,shouldUnregister:a,defaultValue:s,exact:c=!0}=e,l=p(i._names.array,n),u=R({control:i,name:n,defaultValue:o.useMemo(()=>D(i._formValues,n,D(i._defaultValues,n,s)),[i,n,s]),exact:c}),d=F({control:i,name:n,exact:c}),m=o.useRef(e),h=o.useRef(null),v=o.useRef(i.register(n,{...e.rules,value:u,...O(e.disabled)?{disabled:e.disabled}:{}}));m.current=e;let y=o.useMemo(()=>Object.defineProperties({},{invalid:{enumerable:!0,get:()=>!!D(d.errors,n)},isDirty:{enumerable:!0,get:()=>!!D(d.dirtyFields,n)},isTouched:{enumerable:!0,get:()=>!!D(d.touchedFields,n)},isValidating:{enumerable:!0,get:()=>!!D(d.validatingFields,n)},error:{enumerable:!0,get:()=>D(d.errors,n)}}),[d,n]),b=o.useCallback(e=>{let t=f(e);return D(i._fields,n)||(v.current=i.register(n,{...m.current.rules,value:t})),v.current.onChange({target:{value:f(e),name:n},type:_.CHANGE})},[n,i]),x=o.useCallback(()=>v.current.onBlur({target:{value:D(i._formValues,n),name:n},type:_.BLUR}),[n,i._formValues]),S=o.useCallback(e=>{e&&(h.current={focus:()=>k(e.focus)&&e.focus(),select:()=>k(e.select)&&e.select(),setCustomValidity:t=>k(e.setCustomValidity)&&e.setCustomValidity(t),reportValidity:()=>k(e.reportValidity)&&e.reportValidity()});let t=D(i._fields,n);t&&t._f&&e&&(t._f.ref=h.current)},[i._fields,n]),C=o.useMemo(()=>({name:n,value:u,...O(r)||d.disabled?{disabled:d.disabled||r}:{},onChange:b,onBlur:x,ref:S}),[n,r,d.disabled,b,x,S,u]);return o.useEffect(()=>{let e=i._options.shouldUnregister||a;i.register(n,{...m.current.rules,...O(m.current.disabled)?{disabled:m.current.disabled}:{}});let t=(e,t)=>{let n=D(i._fields,e);n&&n._f&&(n._f.mount=t)};if(t(n,!0),e){let e=g(D(a?i._defaultValues:i._options.values||i._defaultValues,n,D(i._options.defaultValues,n,m.current.defaultValue)));A(i._defaultValues,n,e),w(D(i._formValues,n))&&A(i._formValues,n,e)}if(!l&&i.register(n),h.current){let e=D(i._fields,n);e&&e._f&&(e._f.ref=h.current)}return()=>{(l?e&&!i._state.action:e)?i.unregister(n):t(n,!1)}},[n,i,l,a]),o.useEffect(()=>{i._setDisabledField({disabled:r,name:n})},[r,n,i]),o.useMemo(()=>({field:C,formState:d,fieldState:y}),[C,d,y])}var re=e=>e.render(z(e)),ie=o.createContext(null);ie.displayName=`HookFormContext`;var ae=()=>o.useContext(ie),oe=({children:e,watch:t,getValues:n,getFieldState:r,setError:i,clearErrors:a,setValue:s,setValues:c,trigger:l,formState:u,resetField:d,reset:f,handleSubmit:p,unregister:m,control:h,register:g,setFocus:_,subscribe:v})=>{let y=o.useMemo(()=>({watch:t,getValues:n,getFieldState:r,setError:i,clearErrors:a,setValue:s,setValues:c,trigger:l,formState:u,resetField:d,reset:f,handleSubmit:p,unregister:m,control:h,register:g,setFocus:_,subscribe:v}),[a,h,u,r,n,p,g,f,d,i,_,s,c,v,l,m,t]);return o.createElement(ie.Provider,{value:y},o.createElement(j.Provider,{value:y.control},e))},se=(e,t,n,r,i)=>t?{...n[e],types:{...n[e]&&n[e].types?n[e].types:{},[r]:i||!0}}:{},ce=e=>Array.isArray(e)?e.filter(Boolean):[],le=e=>Array.isArray(e)?e:[e],ue=()=>{let e=[];return{get observers(){return e},next:t=>{for(let n of e)n.next&&n.next(t)},subscribe:t=>(e.push(t),{unsubscribe:()=>{e=e.filter(e=>e!==t)}}),unsubscribe:()=>{e=[]}}};function de(e,t){let n={};for(let r in e)if(e.hasOwnProperty(r)){let i=e[r],a=t[r];if(i&&d(i)&&a){let e=de(i,a);d(e)&&(n[r]=e)}else e[r]&&(n[r]=a)}return n}var B=e=>d(e)&&!Object.keys(e).length,fe=e=>e.type===`file`,pe=e=>{if(!h)return!1;let t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},me=e=>e.type===`select-multiple`,V=e=>e.type===`radio`,he=e=>V(e)||s(e),ge=e=>pe(e)&&e.isConnected;function _e(e,t){let n=t.slice(0,-1).length,r=0;for(;r<n;){if(l(e)){e=void 0;break}e=e[t[r]],r++}return e}function ve(e){for(let t in e)if(e.hasOwnProperty(t)&&!w(e[t]))return!1;return!0}function H(e,t){if(I(t)&&Object.prototype.hasOwnProperty.call(e,t))return delete e[t],e;let n=Array.isArray(t)?t:C(t)?[t]:E(t),r=n.length===1?e:_e(e,n),i=n.length-1,a=n[i];return r&&delete r[a],i!==0&&(d(r)&&B(r)||Array.isArray(r)&&ve(r))&&H(e,n.slice(0,-1)),e}var U=e=>{for(let t in e)if(k(e[t]))return!0;return!1};function ye(e){return Array.isArray(e)||d(e)&&!U(e)}function W(e,t={}){for(let n in e){let r=e[n];ye(r)?(t[n]=Array.isArray(r)?[]:{},W(r,t[n])):w(r)||(t[n]=!0)}return t}function G(e){if(e!==!1){if(e===!0)return!0;if(Array.isArray(e)){let t=e.map(e=>G(e));return t.some(e=>e!==void 0)?t:void 0}if(d(e)){let t={};for(let n in e){let r=G(e[n]);w(r)||(t[n]=r)}return Object.keys(t).length?t:void 0}}}function K(e,t,n){n||=W(t);for(let r in e){let i=e[r];if(ye(i))w(t)||te(n[r])?n[r]=W(i,Array.isArray(i)?[]:{}):K(i,l(t)?{}:t[r],n[r]);else{let e=t[r];n[r]=!L(i,e)}}return G(n)||{}}var be={value:!1,isValid:!1},q={value:!0,isValid:!0},J=e=>{if(Array.isArray(e)){if(e.length>1){let t=e.filter(e=>e&&e.checked&&!e.disabled).map(e=>e.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!w(e[0].attributes.value)?w(e[0].value)||e[0].value===``?q:{value:e[0].value,isValid:!0}:q:be}return be},xe=(e,{valueAsNumber:t,valueAsDate:n,setValueAs:r})=>w(e)?e:t?e===``?NaN:e&&+e:n&&I(e)?new Date(e):r?r(e):e,Se={isValid:!1,value:null},Y=e=>Array.isArray(e)?e.reduce((e,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:e,Se):Se;function Ce(e){let t=e.ref;return fe(t)?t.files:V(t)?Y(e.refs).value:me(t)?[...t.selectedOptions].map(({value:e})=>e):s(t)?J(e.refs).value:xe(w(t.value)?e.ref.value:t.value,e)}var we=(e,t,n,r)=>{let i={};for(let n of e){let e=D(t,n);e&&A(i,n,e._f)}return{criteriaMode:n,names:[...e],fields:i,shouldUseNativeValidation:r}},X=e=>e instanceof RegExp,Te=e=>w(e)?e:X(e)?e.source:d(e)?X(e.value)?e.value.source:e.value:e,Ee=e=>({isOnSubmit:!e||e===v.onSubmit,isOnBlur:e===v.onBlur,isOnChange:e===v.onChange,isOnAll:e===v.all,isOnTouch:e===v.onTouched}),De=`AsyncFunction`,Oe=e=>{if(!e||!e.validate)return!1;if(k(e.validate))return e.validate.constructor.name===De;if(d(e.validate)){for(let t in e.validate)if(e.validate[t].constructor.name===De)return!0}return!1},ke=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),Ae=(e,t,n)=>{if(n)return!1;if(t.watchAll||t.watch.has(e))return!0;for(let n of t.watch)if(e.startsWith(n)&&e.charAt(n.length)===`.`)return!0;return!1},je=(e,t,n,r)=>{for(let i of n||Object.keys(e)){let n=D(e,i);if(n){let{_f:e,...a}=n;if(e){if(e.refs&&e.refs[0]&&t(e.refs[0],i)&&!r||e.ref&&t(e.ref,e.name)&&!r)return!0;if(je(a,t))break}else if(d(a)&&je(a,t))break}}};function Me(e,t,n){let r=D(e,n);if(r||C(n))return{error:r,name:n};let i=n.split(`.`);for(;i.length;){let r=i.join(`.`),a=D(t,r),o=D(e,r);if(a&&!Array.isArray(a)&&n!==r)return{name:n};if(o&&o.type)return{name:r,error:o};if(o&&o.root&&o.root.type)return{name:`${r}.root`,error:o.root};i.pop()}return{name:n}}var Ne=(e,t,n,r)=>{n(e);let{name:i,...a}=e,o=Object.keys(a);return!o.length||r&&o.length>=Object.keys(t).length||o.find(e=>t[e]===(!r||v.all))},Pe=(e,t,n)=>!e||!t||e===t||le(e).some(e=>e&&(n?e===t:e.startsWith(t)||t.startsWith(e))),Fe=(e,t,n,r,i)=>i.isOnAll?!1:!n&&i.isOnTouch?!(t||e):(n?r.isOnBlur:i.isOnBlur)?!e:(n?r.isOnChange:i.isOnChange)?e:!0,Ie=(e,t)=>!ce(D(e,t)).length&&H(e,t),Le=(e,t,n)=>{let r=D(e,n),i=Array.isArray(r)?r:[];return A(i,b,t[n]),A(e,n,i),e};function Z(e,t,n=`validate`){if(I(e)||Array.isArray(e)&&e.every(I)||O(e)&&!e)return{type:n,message:I(e)?e:``,ref:t}}var Q=e=>d(e)&&!X(e)?e:{value:e,message:``},Re=async(e,t,n,r,i,a)=>{let{ref:o,refs:c,required:u,maxLength:f,minLength:p,min:m,max:h,pattern:g,validate:_,name:v,valueAsNumber:b,mount:x}=e._f,S=D(n,v);if(!x||t.has(v))return{};let C=c?c[0]:o,T=e=>{if(i&&C.reportValidity){let t=O(e)?``:e||``;c?c.forEach(e=>e.setCustomValidity(t)):C.setCustomValidity(t),C.reportValidity()}},E={},A=V(o),j=s(o),M=A||j,N=(b||fe(o))&&w(o.value)&&w(S)||pe(o)&&o.value===``||S===``||Array.isArray(S)&&!S.length,P=se.bind(null,v,r,E),F=(e,t,n,r=y.maxLength,i=y.minLength)=>{let a=e?t:n;E[v]={type:e?r:i,message:a,ref:o,...P(e?r:i,a)}};if(a?!Array.isArray(S)||!S.length:u&&(!M&&(N||l(S))||O(S)&&!S||j&&!J(c).isValid||A&&!Y(c).isValid)){let{value:e,message:t}=I(u)?{value:!!u,message:u}:Q(u);if(e&&(E[v]={type:y.required,message:t,ref:C,...P(y.required,t)},!r))return T(t),E}if(!N&&(!l(m)||!l(h))){let e,t,n=Q(h),i=Q(m);if(!l(S)&&!isNaN(S)){let r=o.valueAsNumber||S&&+S;l(n.value)||(e=r>n.value),l(i.value)||(t=r<i.value)}else{let r=o.valueAsDate||new Date(S),a=e=>new Date(new Date().toDateString()+` `+e),s=o.type==`time`,c=o.type==`week`;I(n.value)&&S&&(e=s?a(S)>a(n.value):c?S>n.value:r>new Date(n.value)),I(i.value)&&S&&(t=s?a(S)<a(i.value):c?S<i.value:r<new Date(i.value))}if((e||t)&&(F(!!e,n.message,i.message,y.max,y.min),!r))return T(E[v].message),E}if((f||p)&&!N&&(I(S)||a&&Array.isArray(S))){let e=Q(f),t=Q(p),n=!l(e.value)&&S.length>+e.value,i=!l(t.value)&&S.length<+t.value;if((n||i)&&(F(n,e.message,t.message),!r))return T(E[v].message),E}if(g&&!N&&I(S)){let{value:e,message:t}=Q(g);if(X(e)&&!S.match(e)&&(E[v]={type:y.pattern,message:t,ref:o,...P(y.pattern,t)},!r))return T(t),E}if(_){if(k(_)){let e=Z(await _(S,n),C);if(e&&(E[v]={...e,...P(y.validate,e.message)},!r))return T(e.message),E}else if(d(_)){let e={};for(let t in _){if(!B(e)&&!r)break;let i=Z(await _[t](S,n),C,t);i&&(e={...i,...P(t,i.message)},T(i.message),r&&(E[v]=e))}if(!B(e)&&(E[v]={ref:C,...e},!r))return E}}return T(!0),E},ze={mode:v.onSubmit,reValidateMode:v.onChange,shouldFocusError:!0},Be=`form`,Ve={submitCount:0,isDirty:!1,isReady:!1,isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{}};function He(e={}){let t={...ze,...e},n={...g(Ve),isLoading:k(t.defaultValues),errors:t.errors||{},disabled:t.disabled||!1},r={},i=(d(t.defaultValues)||d(t.values))&&g(t.defaultValues||t.values)||{},a=t.shouldUnregister?{}:g(i),o={action:!1,mount:!1,watch:!1,keepIsValid:!1},u={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set,registerName:new Set},m,x=0,S=0,T=Ee(t.mode),j=Ee(t.reValidateMode),M={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},N={...M},P={...N},F={array:ue(),state:ue()},te=t.criteriaMode===v.all,ne=e=>t=>{clearTimeout(x),x=setTimeout(e,t)},R=async e=>{if(!o.keepIsValid&&!t.disabled&&(N.isValid||P.isValid||e)){let e;t.resolver?(e=B((await U()).errors),z()):e=await G({fields:r,onlyCheckValid:!0,eventType:_.VALID}),e!==n.isValid&&F.state.next({isValid:e})}},z=(e,r)=>{!t.disabled&&(N.isValidating||N.validatingFields||P.isValidating||P.validatingFields)&&((e||Array.from(u.mount)).forEach(e=>{e&&(r?A(n.validatingFields,e,r):H(n.validatingFields,e))}),F.state.next({validatingFields:n.validatingFields,isValidating:!B(n.validatingFields)}))},re=()=>{n.dirtyFields=K(i,a)},ie=(e,i=[],s,c,l=!0,u=!0)=>{if(c&&s&&!t.disabled){if(o.action=!0,u&&Array.isArray(D(r,e))){let t=s(D(r,e),c.argA,c.argB);l&&A(r,e,t)}if(u&&Array.isArray(D(n.errors,e))){let t=s(D(n.errors,e),c.argA,c.argB);l&&A(n.errors,e,t),Ie(n.errors,e)}if((N.touchedFields||P.touchedFields)&&u&&Array.isArray(D(n.touchedFields,e))){let t=s(D(n.touchedFields,e),c.argA,c.argB);l&&A(n.touchedFields,e,t)}(N.dirtyFields||P.dirtyFields)&&re(),F.state.next({name:e,isDirty:q(e,i),dirtyFields:n.dirtyFields,errors:n.errors,isValid:n.isValid})}else A(a,e,i)},ae=(e,t)=>{A(n.errors,e,t),n.errors={...n.errors},F.state.next({errors:n.errors})},oe=e=>{n.errors=e,F.state.next({errors:n.errors,isValid:!1})},se=e=>{let t=C(e)?[e]:E(e),n=a,r=i;for(let e=0;e<t.length-1;e++){let i=t[e];if(n=l(n)?n:n[i],r=l(r)?r:r[i],n===null&&r!==null)return!0}return!1},V=(t,s,c,l)=>{let d=D(r,t);if(d){if(se(t))return;let r=w(D(a,t)),f=D(a,t,w(c)?D(i,t):c);w(f)||l&&l.defaultChecked||s?A(a,t,s?f:Ce(d._f)):Y(t,f),o.mount&&!o.action&&(R(),r&&n.isDirty&&(N.isDirty||P.isDirty)&&(q()||(n.isDirty=!1,F.state.next({...n}))),e.shouldUnregister&&r&&!w(D(a,t))&&Ae(t,u)&&(o.watch=!0))}},_e=(e,r,o,s,c)=>{let l=!1,u=!1,d={name:e};if(!t.disabled){if(!o||s){let t=L(D(i,e),r);(N.isDirty||P.isDirty)&&(u=n.isDirty,n.isDirty=d.isDirty=!t||q(),l=u!==d.isDirty),u=!!D(n.dirtyFields,e),t===n.isDirty?t?H(n.dirtyFields,e):A(n.dirtyFields,e,!0):n.dirtyFields=K(i,a),d.dirtyFields=n.dirtyFields,l||=(N.dirtyFields||P.dirtyFields)&&u!==!t}if(o){let t=D(n.touchedFields,e);t||(A(n.touchedFields,e,o),d.touchedFields=n.touchedFields,l||=(N.touchedFields||P.touchedFields)&&t!==o)}l&&c&&F.state.next(d)}return l?d:{}},ve=(e,r,i,a)=>{let o=D(n.errors,e),s=(N.isValid||P.isValid)&&O(r)&&n.isValid!==r;if(t.delayError&&i?(m=ne(()=>ae(e,i)),m(t.delayError)):(clearTimeout(x),m=null,i?A(n.errors,e,i):H(n.errors,e),n.errors={...n.errors}),(i?!L(o,i):o)||!B(a)||s){let t={...a,...s&&O(r)?{isValid:r}:{},errors:n.errors,name:e};n={...n,...t},F.state.next(t)}},U=async e=>(z(e,!0),await t.resolver(a,t.context,we(e||u.mount,r,t.criteriaMode,t.shouldUseNativeValidation))),ye=async e=>{let{errors:t}=await U(e);if(z(e),e){for(let r of e){let e=D(t,r);e?u.array.has(r)&&d(e)&&!Object.keys(e).some(e=>!Number.isNaN(Number(e)))?Le(n.errors,{[r]:e},r):A(n.errors,r,e):H(n.errors,r)}n.errors={...n.errors}}else n.errors=t;return t},W=async({name:t,eventType:r})=>{if(e.validate){let i=await e.validate({formValues:a,formState:n,name:t,eventType:r});if(d(i))for(let e in i){let t=i[e];t&&$(`${Be}.${e}`,{message:I(t.message)?t.message:``,type:t.type||y.validate})}else I(i)||!i?$(Be,{message:i||``,type:y.validate}):qe(Be);return i}return!0},G=async({fields:r,onlyCheckValid:i,name:o,eventType:s,context:c={valid:!0,runRootValidation:!1}})=>{if(e.validate&&(c.runRootValidation=!0,!await W({name:o,eventType:s})&&(c.valid=!1,i)))return c.valid;for(let o in r){let l=r[o];if(l){let{_f:r,...d}=l;if(r){let o=u.array.has(r.name),s=l._f&&Oe(l._f),d=N.validatingFields||N.isValidating||P.validatingFields||P.isValidating;s&&d&&z([r.name],!0);let f=await Re(l,u.disabled,a,te,t.shouldUseNativeValidation&&!i,o);if(s&&d&&z([r.name]),f[r.name]&&(c.valid=!1,i)||(!i&&(D(f,r.name)?o?Le(n.errors,f,r.name):A(n.errors,r.name,f[r.name]):H(n.errors,r.name)),e.shouldUseNativeValidation&&f[r.name]))break}!B(d)&&await G({context:c,onlyCheckValid:i,fields:d,name:o,eventType:s})}}return c.valid},be=()=>{for(let e of u.unMount){let t=D(r,e);t&&(t._f.refs?t._f.refs.every(e=>!ge(e)):!ge(t._f.ref))&&Ze(e)}u.unMount=new Set},q=(e,n)=>!t.disabled&&(e&&n&&A(a,e,n),!L(o.mount?a:i,i)),J=(e,t,n)=>ee(e,u,{...o.mount?a:w(t)?i:I(e)?{[e]:t}:t},n,t),Se=e=>ce(D(o.mount?a:i,e,t.shouldUnregister?D(i,e,[]):[])),Y=(e,t,n={},i=!1,o=!1)=>{let c=D(r,e),u=t;if(c){let n=c._f;n&&(!n.disabled&&A(a,e,xe(t,n)),u=pe(n.ref)&&l(t)?``:t,me(n.ref)?[...n.ref.options].forEach(e=>e.selected=u.includes(e.value)):n.refs?s(n.ref)?n.refs.forEach(e=>{(!e.defaultChecked||!e.disabled)&&(Array.isArray(u)?e.checked=!!u.find(t=>t===e.value):e.checked=u===e.value||!!u)}):n.refs.forEach(e=>e.checked=e.value===u):fe(n.ref)?n.ref.value=``:(n.ref.value=u,!n.ref.type&&!o&&F.state.next({name:e,values:i?a:g(a)})))}(n.shouldDirty||n.shouldTouch)&&_e(e,u,n.shouldTouch,n.shouldDirty,!o),n.shouldValidate&&We(e)},X=(e,t,n,i=!1,a=!1)=>{for(let o in t){if(!t.hasOwnProperty(o))return;let s=t[o],l=e+`.`+o,f=D(r,l);(u.array.has(e)||d(s)||f&&!f._f)&&!c(s)?X(l,s,n,i,a):Y(l,s,n,i,a)}},De=(e,t,i,s,c=!1)=>{let d=D(r,e),f=u.array.has(e),p=s?t:g(t),m=L(D(a,e),p);if(m||A(a,e,p),f)F.array.next({name:e,values:s?a:g(a)}),(N.isDirty||N.dirtyFields||P.isDirty||P.dirtyFields)&&i.shouldDirty&&(re(),c||F.state.next({name:e,dirtyFields:n.dirtyFields,isDirty:q(e,p)}));else{let t=Array.isArray(p)&&!p.length||B(p);!d||d._f||l(p)||t?Y(e,p,i,s,c):X(e,p,i,s,c)}if(!m&&!c){let t=Ae(e,u),r=s?a:g(a);F.state.next({...t&&n,name:o.mount||t?e:void 0,values:r})}},Z=(e,t,n={})=>De(e,t,n,!1),Q=(e,t={})=>{let r=k(e)?e(a):e;if(!L(a,r)){a={...a,...r};for(let e of u.mount)De(e,D(r,e),t,!0,!0);F.state.next({...n,name:void 0,type:void 0,...S?{values:a}:{}}),t.shouldValidate&&R()}},He=async i=>{o.mount=!0;let s=i.target,l=s.name,d=!0,p=D(r,l),h=e=>{d=Number.isNaN(e)||c(e)&&isNaN(e.getTime())||L(e,D(a,l,e))};if(p){let o,c,v=s.type?Ce(p._f):f(i),y=i.type===_.BLUR||i.type===_.FOCUS_OUT,b=!ke(p._f)&&!e.validate&&!t.resolver&&!D(n.errors,l)&&!p._f.deps,x=b||Fe(y,D(n.touchedFields,l),n.isSubmitted,j,T),C=Ae(l,u,y);A(a,l,v),y?(!s||!s.readOnly)&&(p._f.onBlur&&p._f.onBlur(i),m&&m(0)):p._f.onChange&&p._f.onChange(i);let w=_e(l,v,y),E=!B(w)||C;if(!y&&F.state.next({name:l,type:i.type,...S?{values:g(a)}:{}}),x)return(!b||!n.isValid)&&(N.isValid||P.isValid)&&(t.mode===`onBlur`?y&&R():y||R()),E&&F.state.next({name:l,...C?{}:w});if(!t.resolver&&e.validate&&await W({name:l,eventType:i.type}),!y&&C&&F.state.next({...n}),t.resolver){let{errors:e}=await U([l]);if(z([l]),h(v),!d){!B(w)&&F.state.next(w);return}let t=Me(n.errors,r,l),i=Me(e,r,t.name||l);o=i.error,l=i.name,c=B(e)}else z([l],!0),o=(await Re(p,u.disabled,a,te,t.shouldUseNativeValidation))[l],z([l]),h(v),d&&(o?c=!1:(N.isValid||P.isValid)&&(c=await G({fields:r,onlyCheckValid:!0,name:l,eventType:i.type})));d&&(p._f.deps&&(!Array.isArray(p._f.deps)||p._f.deps.length>0)&&We(p._f.deps),ve(l,c,o,w))}},Ue=(e,t)=>{if(D(n.errors,t)&&e.focus)return e.focus(),1},We=async(e,i={})=>{let a,o,s=le(e);if(t.resolver){let t=await ye(w(e)?e:s);a=B(t),o=e?!s.some(e=>D(t,e)):a}else e?(o=(await Promise.all(s.map(async e=>{let t=D(r,e);return await G({fields:t&&t._f?{[e]:t}:t,eventType:_.TRIGGER})}))).every(Boolean),!(!o&&!n.isValid)&&R()):o=a=await G({fields:r,name:e,eventType:_.TRIGGER});return F.state.next({...!I(e)||(N.isValid||P.isValid)&&a!==n.isValid?{}:{name:e},...t.resolver||!e?{isValid:a}:{},errors:n.errors}),i.shouldFocus&&!o&&je(r,Ue,e?s:u.mount),o},Ge=(e,t)=>{let r={...o.mount?a:i};return t&&(r=de(t.dirtyFields?n.dirtyFields:n.touchedFields,r)),w(e)?r:I(e)?D(r,e):e.map(e=>D(r,e))},Ke=(e,t)=>({invalid:!!D((t||n).errors,e),isDirty:!!D((t||n).dirtyFields,e),error:D((t||n).errors,e),isValidating:!!D(n.validatingFields,e),isTouched:!!D((t||n).touchedFields,e)}),qe=e=>{let t=e?le(e):void 0;t?.forEach(e=>H(n.errors,e)),t?t.forEach(e=>{F.state.next({name:e,errors:n.errors})}):F.state.next({errors:{}})},$=(e,t,i)=>{let a=(D(r,e,{_f:{}})._f||{}).ref,{ref:o,message:s,type:c,...l}=D(n.errors,e)||{};A(n.errors,e,{...l,...t,ref:a}),F.state.next({name:e,errors:n.errors,isValid:!1}),i&&i.shouldFocus&&a&&a.focus&&a.focus()},Je=(e,t)=>{if(k(e)){S++;let{unsubscribe:n}=F.state.subscribe({next:n=>`values`in n&&e(n.values||J(void 0,t),n)}),r=!1;return{unsubscribe:()=>{r||(r=!0,S--,n())}}}return J(e,t,!0)},Ye=e=>{let t=!!e.formState?.values;t&&S++;let{unsubscribe:r}=F.state.subscribe({next:t=>{if(Pe(e.name,t.name,e.exact)&&Ne(t,e.formState||N,st,e.reRenderRoot)){let r={...a};e.callback({values:r,...n,...t,defaultValues:i})}}});if(!t)return r;let o=!1;return()=>{o||(o=!0,S--,r())}},Xe=e=>(o.mount=!0,P={...P,...e.formState},Ye({...e,formState:{...M,...e.formState}})),Ze=(e,o={})=>{for(let s of e?le(e):u.mount)u.mount.delete(s),u.array.delete(s),o.keepValue||(H(r,s),H(a,s)),!o.keepError&&H(n.errors,s),!o.keepDirty&&H(n.dirtyFields,s),!o.keepTouched&&H(n.touchedFields,s),!o.keepIsValidating&&H(n.validatingFields,s),!t.shouldUnregister&&!o.keepDefaultValue&&H(i,s);F.state.next({values:g(a)}),F.state.next({...n,...o.keepDirty?{isDirty:q()}:{}}),!o.keepIsValid&&R()},Qe=({disabled:e,name:t})=>{if(O(e)&&o.mount||e||u.disabled.has(t)){let n=u.disabled.has(t)!==!!e;e?u.disabled.add(t):u.disabled.delete(t),n&&o.mount&&!o.action&&R()}},$e=(e,n={})=>{let a=D(r,e),s=O(n.disabled)||O(t.disabled),c=!u.registerName.has(e)&&a&&a._f&&!a._f.mount;return A(r,e,{...a||{},_f:{...a&&a._f?a._f:{ref:{name:e}},name:e,mount:!0,...n}}),u.mount.add(e),a&&!c?Qe({disabled:O(n.disabled)?n.disabled:t.disabled,name:e}):V(e,!0,n.value),{...s?{disabled:n.disabled||t.disabled}:{},...t.progressive?{required:!!n.required,min:Te(n.min),max:Te(n.max),minLength:Te(n.minLength),maxLength:Te(n.maxLength),pattern:Te(n.pattern)}:{},name:e,onChange:He,onBlur:He,ref:s=>{if(s){u.registerName.add(e),$e(e,n),u.registerName.delete(e),a=D(r,e);let t=w(s.value)&&s.querySelectorAll&&s.querySelectorAll(`input,select,textarea`)[0]||s,o=he(t),c=a._f.refs||[];if(o?c.find(e=>e===t):t===a._f.ref)return;A(r,e,{_f:{...a._f,...o?{refs:[...c.filter(ge),t,...Array.isArray(D(i,e))?[{}]:[]],ref:{type:t.type,name:e}}:{ref:t}}}),V(e,!1,void 0,t)}else a=D(r,e,{}),a._f&&(a._f.mount=!1),(t.shouldUnregister||n.shouldUnregister)&&!(p(u.array,e)&&o.action)&&u.unMount.add(e)}}},et=()=>t.shouldFocusError&&!t.shouldUseNativeValidation&&je(r,Ue,u.mount),tt=e=>{O(e)&&(F.state.next({disabled:e}),je(r,(t,n)=>{let i=D(r,n);i&&(t.disabled=i._f.disabled||e,Array.isArray(i._f.refs)&&i._f.refs.forEach(t=>{t.disabled=i._f.disabled||e}))},0,!1))},nt=(e,i)=>async o=>{let s;o&&(o.preventDefault&&o.preventDefault(),o.persist&&o.persist());let c=g(a);if(F.state.next({isSubmitting:!0}),t.resolver){let{errors:e,values:t}=await U();z(),n.errors=e,c=g(t)}else await G({fields:r,eventType:_.SUBMIT});if(u.disabled.size)for(let e of u.disabled)H(c,e);if(H(n.errors,b),B(n.errors)){F.state.next({errors:{}});try{await e(c,o)}catch(e){s=e}}else i&&await i({...n.errors},o),et(),setTimeout(et);if(F.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:B(n.errors)&&!s,submitCount:n.submitCount+1,errors:n.errors}),s)throw s},rt=(e,t={})=>{D(r,e)&&(w(t.defaultValue)?Z(e,g(D(i,e))):(Z(e,t.defaultValue),A(i,e,g(t.defaultValue))),t.keepTouched||H(n.touchedFields,e),t.keepDirty||(H(n.dirtyFields,e),n.isDirty=t.defaultValue?q(e,g(D(i,e))):q()),t.keepError||(H(n.errors,e),N.isValid&&R()),F.state.next({...n}))},it=(e,s={})=>{let c=e?g(e):i,l=g(c),d=B(e),f=l;if(s.keepDefaultValues||(i=c),!s.keepValues){if(s.keepDirtyValues){let e=new Set([...u.mount,...Object.keys(K(i,a))]);for(let t of Array.from(e)){let e=D(n.dirtyFields,t),r=D(a,t),i=D(f,t);e&&!w(r)?A(f,t,r):!e&&!w(i)&&Z(t,i)}}else{if(h&&w(e))for(let e of u.mount){let t=D(r,e);if(t&&t._f){let e=Array.isArray(t._f.refs)?t._f.refs[0]:t._f.ref;if(pe(e)){let t=e.closest(`form`);if(t){t.reset();break}}}}if(s.keepFieldsRef)for(let e of u.mount)Z(e,D(f,e));else r={}}if(t.shouldUnregister){if(a=s.keepDefaultValues?g(i):{},s.keepFieldsRef)for(let e of u.mount)A(a,e,D(f,e))}else a=g(f);F.array.next({values:{...f}}),F.state.next({values:{...f}})}u={mount:s.keepDirtyValues?u.mount:new Set,unMount:new Set,array:new Set,registerName:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:``},o.mount=!N.isValid||!!s.keepIsValid||!!s.keepDirtyValues||!t.shouldUnregister&&!B(f),o.watch=!!t.shouldUnregister,o.keepIsValid=!!s.keepIsValid,o.action=!1,s.keepErrors||(n.errors={}),F.state.next({submitCount:s.keepSubmitCount?n.submitCount:0,isDirty:d?!1:s.keepDirty?n.isDirty:s.keepValues?q():!!(s.keepDefaultValues&&!L(e,i)),isSubmitted:s.keepIsSubmitted?n.isSubmitted:!1,dirtyFields:d?{}:s.keepDirtyValues?s.keepDefaultValues&&a?K(i,a):n.dirtyFields:s.keepDefaultValues&&e?K(i,e):s.keepDirty?n.dirtyFields:{},touchedFields:s.keepTouched?n.touchedFields:{},errors:s.keepErrors?n.errors:{},isSubmitSuccessful:s.keepIsSubmitSuccessful?n.isSubmitSuccessful:!1,isSubmitting:!1,defaultValues:i})},at=(e,n)=>it(k(e)?e(a):e,{...t.resetOptions,...n}),ot=(e,t={})=>{let n=D(r,e),i=n&&n._f;if(i){let e=i.refs?i.refs[0]:i.ref;e.focus&&setTimeout(()=>{e.focus(),t.shouldSelect&&k(e.select)&&e.select()})}},st=e=>{n={...n,...e}},ct={control:{register:$e,unregister:Ze,getFieldState:Ke,handleSubmit:nt,setError:$,_subscribe:Ye,_runSchema:U,_updateIsValidating:z,_focusError:et,_getWatch:J,_getDirty:q,_setValid:R,_setFieldArray:ie,_setDisabledField:Qe,_setErrors:oe,_getFieldArray:Se,_reset:it,_resetDefaultValues:()=>k(t.defaultValues)&&t.defaultValues().then(e=>{at(e,t.resetOptions),F.state.next({isLoading:!1})}),_removeUnmounted:be,_disableForm:tt,_subjects:F,_proxyFormState:N,get _fields(){return r},get _formValues(){return a},get _state(){return o},set _state(e){o=e},get _defaultValues(){return i},get _names(){return u},set _names(e){u=e},get _formState(){return n},get _options(){return t},set _options(e){t={...t,...e},T=Ee(t.mode),j=Ee(t.reValidateMode)}},subscribe:Xe,trigger:We,register:$e,handleSubmit:nt,watch:Je,setValue:Z,setValues:Q,getValues:Ge,reset:at,resetField:rt,resetDefaultValues:(e,t={})=>{if(i=g(e),!t.keepDirty){let e=K(i,a);n.dirtyFields=e,n.isDirty=!B(e)}t.keepIsValid||R(),F.state.next({...n,defaultValues:i})},clearErrors:qe,unregister:Ze,setError:$,setFocus:ot,getFieldState:Ke};return{...ct,formControl:ct}}function Ue(e={}){let t=o.useRef(void 0),n=o.useRef(void 0),r=o.useRef(e.formControl),[i,a]=o.useState(()=>({...g(Ve),isLoading:k(e.defaultValues),errors:e.errors||{},disabled:e.disabled||!1,defaultValues:k(e.defaultValues)?void 0:e.defaultValues}));if(!t.current||e.formControl&&r.current!==e.formControl)if(r.current=e.formControl,e.formControl)t.current={...e.formControl,formState:i},e.defaultValues&&!k(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{let{formControl:n,...r}=He(e);t.current={...r,formState:i}}let s=t.current.control;return s._options=e,P(()=>{let e=s._subscribe({formState:s._proxyFormState,callback:()=>a({...s._formState,defaultValues:s._defaultValues}),reRenderRoot:!0});return a(e=>({...e,isReady:!0})),s._formState.isReady=!0,e},[s]),o.useEffect(()=>s._disableForm(e.disabled),[s,e.disabled]),o.useEffect(()=>{e.mode&&(s._options.mode=e.mode),e.reValidateMode&&(s._options.reValidateMode=e.reValidateMode)},[s,e.mode,e.reValidateMode]),o.useEffect(()=>{e.errors&&(s._setErrors(e.errors),s._focusError())},[s,e.errors]),o.useEffect(()=>{e.shouldUnregister&&s._subjects.state.next({values:s._getWatch()})},[s,e.shouldUnregister]),o.useEffect(()=>{if(s._proxyFormState.isDirty){let e=s._getDirty();e!==i.isDirty&&s._subjects.state.next({isDirty:e})}},[s,i.isDirty]),o.useEffect(()=>{e.values&&!L(e.values,n.current)?(s._reset(e.values,{keepFieldsRef:!0,...s._options.resetOptions}),s._options.resetOptions?.keepIsValid||s._setValid(),n.current=e.values,a(e=>({...e}))):s._resetDefaultValues()},[s,e.values]),o.useEffect(()=>{s._state.mount||(s._setValid(),s._state.mount=!0),s._state.watch&&(s._state.watch=!1,s._subjects.state.next({...s._formState})),s._removeUnmounted()}),t.current.formState=o.useMemo(()=>N(i,s),[s,i]),t.current}function We({className:e,...t}){return(0,a.jsx)(`label`,{"data-slot":`label`,className:i(`text-sm leading-none font-medium select-none peer-disabled:cursor-not-allowed peer-disabled:opacity-50`,e),...t})}var Ge=oe,Ke=o.createContext({}),qe=({...e})=>(0,a.jsx)(Ke.Provider,{value:{name:e.name},children:(0,a.jsx)(re,{...e})}),$=()=>{let e=o.useContext(Ke),t=o.useContext(Je),{getFieldState:n}=ae(),r=F({name:e.name}),i=n(e.name,r);if(!e)throw Error(`useFormField should be used within <FormField>`);let{id:a}=t;return{id:a,name:e.name,formItemId:`${a}-form-item`,formDescriptionId:`${a}-form-item-description`,formMessageId:`${a}-form-item-message`,...i}},Je=o.createContext({});function Ye({className:e,...t}){let n=o.useId();return(0,a.jsx)(Je.Provider,{value:{id:n},children:(0,a.jsx)(`div`,{"data-slot":`form-item`,className:i(`grid gap-2`,e),...t})})}function Xe({className:e,...t}){let{error:n,formItemId:r}=$();return(0,a.jsx)(We,{"data-slot":`form-label`,"data-error":!!n,className:i(`data-[error=true]:text-destructive`,e),htmlFor:r,...t})}function Ze({...e}){let{error:t,formItemId:n,formDescriptionId:i,formMessageId:o}=$();return(0,a.jsx)(r,{"data-slot":`form-control`,id:n,"aria-describedby":t?`${i} ${o}`:`${i}`,"aria-invalid":!!t,...e})}function Qe({className:e,...t}){let{formDescriptionId:n}=$();return(0,a.jsx)(`p`,{"data-slot":`form-description`,id:n,className:i(`text-muted-foreground text-sm`,e),...t})}function $e({className:e,...t}){let{error:n,formMessageId:r}=$(),o=n?String(n?.message??``):t.children;return o?(0,a.jsx)(`p`,{"data-slot":`form-message`,id:r,className:i(`text-destructive text-sm`,e),...t,children:o}):null}export{Ye as a,We as c,A as d,Ue as f,qe as i,se as l,Ze as n,Xe as o,R as p,Qe as r,$e as s,Ge as t,D as u};
|