@blocklet/pages-kit-inner-components 0.6.25 → 0.6.26

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.
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),v=require("./chunks/state-tEydRMV8.js"),Y=require("@arcblock/ux/lib/Empty"),N=require("@arcblock/ux/lib/Locale/context"),O=require("@iconify-icon/react"),K=require("@mui/icons-material/Check"),e=require("@mui/material"),D=require("ahooks"),u=require("react"),S=require("./chunks/index-HBobmmAN.js"),m=require("@arcblock/ux/lib/Theme");require("@blocklet/pages-kit/builtin/color-picker");require("@blocklet/pages-kit/utils/style");require("@emotion/css");require("lodash/without");const p=require("@mui/material/colors");require("@blocklet/pages-kit/builtin/uploader");require("react-use");require("lodash/cloneDeep");require("@mui/icons-material");require("react-dnd");require("@mui/lab");require("immer");require("lodash/omit");require("react-router-dom");require("@arcblock/ux/lib/Button");require("is-uri");require("@arcblock/ux/lib/Toast");require("@mui/material/Tooltip");require("@mui/icons-material/KeyboardArrowLeft");const J=require("@mui/material/Box");require("@mui/material/DialogTitle");require("@mui/material/IconButton");require("@mui/material/Dialog");require("@mui/material/useMediaQuery");const Z=require("@emotion/react");require("@mui/material/Alert");require("@mui/material/AlertTitle");require("react-error-boundary");require("ufo");require("lodash/isEmpty");require("yaml");require("@mui/material/Typography");require("joi");const A=require("@blocklet/aigne-hub/api"),ee=require("@blocklet/js-sdk");require("@mui/x-date-pickers");require("@mui/x-date-pickers/AdapterDayjs");require("@mui/x-date-pickers/LocalizationProvider");require("circular-natal-horoscope-js/dist");const te=require("dayjs"),oe=require("dayjs/plugin/timezone"),re=require("dayjs/plugin/utc");require("fast-deep-equal");require("lodash/isNil");require("tz-lookup");require("@mui/icons-material/CheckCircleOutline");require("lodash/uniq");require("lodash/get");require("lodash/set");const G=require("@blocklet/pages-kit/utils/common"),ie=require("@blocklet/pages-kit/components"),_=o=>o&&o.__esModule?o:{default:o},$=_(Y),ne=_(K),se=_(J),W=_(te),ae=_(oe),le=_(re);p.red[300],p.pink[300],p.purple[300],p.indigo[300],p.blue[300],p.cyan[300],p.teal[300],p.green[300],p.lime[300],p.yellow[300],p.amber[300],p.orange[300],p.brown[300],p.grey[300],p.blueGrey[300];m.styled(e.Box)`
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),v=require("./chunks/state-tEydRMV8.js"),Y=require("@arcblock/ux/lib/Empty"),N=require("@arcblock/ux/lib/Locale/context"),O=require("@iconify-icon/react"),K=require("@mui/icons-material/Check"),e=require("@mui/material"),D=require("ahooks"),u=require("react"),S=require("./chunks/index-B5nhwNMT.js"),m=require("@arcblock/ux/lib/Theme");require("@blocklet/pages-kit/builtin/color-picker");require("@blocklet/pages-kit/utils/style");require("@emotion/css");require("lodash/without");const p=require("@mui/material/colors");require("@blocklet/pages-kit/builtin/uploader");require("react-use");require("lodash/cloneDeep");require("@mui/icons-material");require("react-dnd");require("@mui/lab");require("immer");require("lodash/omit");require("react-router-dom");require("@arcblock/ux/lib/Button");require("is-uri");require("@arcblock/ux/lib/Toast");require("@mui/material/Tooltip");require("@mui/icons-material/KeyboardArrowLeft");const J=require("@mui/material/Box");require("@mui/material/DialogTitle");require("@mui/material/IconButton");require("@mui/material/Dialog");require("@mui/material/useMediaQuery");const Z=require("@emotion/react");require("@mui/material/Alert");require("@mui/material/AlertTitle");require("react-error-boundary");require("ufo");require("lodash/isEmpty");require("yaml");require("@mui/material/Typography");require("joi");const A=require("@blocklet/aigne-hub/api"),ee=require("@blocklet/js-sdk");require("@mui/x-date-pickers");require("@mui/x-date-pickers/AdapterDayjs");require("@mui/x-date-pickers/LocalizationProvider");require("circular-natal-horoscope-js/dist");const te=require("dayjs"),oe=require("dayjs/plugin/timezone"),re=require("dayjs/plugin/utc");require("fast-deep-equal");require("lodash/isNil");require("tz-lookup");require("@mui/icons-material/CheckCircleOutline");require("lodash/uniq");require("lodash/get");require("lodash/set");const G=require("@blocklet/pages-kit/utils/common"),ie=require("@blocklet/pages-kit/components"),_=o=>o&&o.__esModule?o:{default:o},$=_(Y),ne=_(K),se=_(J),W=_(te),ae=_(oe),le=_(re);p.red[300],p.pink[300],p.purple[300],p.indigo[300],p.blue[300],p.cyan[300],p.teal[300],p.green[300],p.lime[300],p.yellow[300],p.amber[300],p.orange[300],p.brown[300],p.grey[300],p.blueGrey[300];m.styled(e.Box)`
2
2
  .color-item {
3
3
  position: relative;
4
4
  }
@@ -0,0 +1,39 @@
1
+ "use strict";const e=require("react/jsx-runtime"),k=require("./state-tEydRMV8.js"),$=require("@arcblock/ux/lib/Locale/context"),te=require("@arcblock/ux/lib/Result"),I=require("@arcblock/ux/lib/Theme"),ne=require("@blocklet/pages-kit/builtin/page/header"),oe=require("@blocklet/pages-kit/contexts/color"),G=require("@blocklet/pages-kit/utils/data-source"),re=require("@blocklet/pages-kit/utils/route"),se=require("@blocklet/ui-react/lib/Header"),ae=require("@emotion/css"),B=require("@emotion/react"),y=require("@mui/material"),F=require("ahooks"),ie=require("isomorphic-dompurify"),ce=require("lodash/cloneDeep"),le=require("lodash/isEmpty"),ue=require("lodash/isEqual"),p=require("react"),de=require("react-helmet"),P=require("react-router-dom"),W=require("react-use"),S=require("ufo"),_=require("./index-B5nhwNMT.js"),pe=require("@blocklet/ui-react/lib/Footer");require("webfontloader");const z=require("./session-BRtsDvA-.js"),R=t=>t&&t.__esModule?t:{default:t},K=R(te),ge=R(se),me=R(ie),L=R(ce),he=R(le),Y=R(ue),fe=R(pe),xe=I.styled(y.Box)`
2
+ display: contents;
3
+ & > div > div > .MuiContainer-root {
4
+ max-width: unset;
5
+ }
6
+ `;function je({meta:t,...n}){const c=I.useTheme();return e.jsx(xe,{children:e.jsx(fe.default,{...n,meta:t,theme:c||{}})})}function J(t){return e.jsx(y.Box,{...t,sx:[{display:"flex",flex:1,height:"100%",alignItems:"center",justifyContent:"center"},...Array.isArray(t.sx)?t.sx:[t.sx]],children:e.jsx(y.CircularProgress,{size:30})})}function ye(t){return e.jsx(be,{...t})}const be=I.styled(y.Box)`
7
+ position: fixed;
8
+ left: 0;
9
+ top: 0;
10
+ z-index: 999999999999;
11
+ width: 80px;
12
+ font-size: 12px;
13
+ text-align: center;
14
+ opacity: 0.7;
15
+ transform: translateX(-23%) translateY(70%) rotate(-45deg);
16
+ pointer-events: none;
17
+ `,ve=`Avenir, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial,
18
+ sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'`;function Pe({titleFontFamily:t,descriptionFontFamily:n}){const r=y.useTheme()?.typography?.fontFamily;p.useEffect(()=>{},[t,n]);const i=`${r}, ${ve}`;return e.jsx(B.Global,{styles:B.css`
19
+ #app {
20
+ font-family: ${i};
21
+
22
+ .page-kit-section__title {
23
+ font-family: ${i};
24
+ }
25
+
26
+ .page-kit-section__description {
27
+ font-family: ${i};
28
+ }
29
+ }
30
+ `})}function V(t){return t!=null}function we(){const[t]=P.useSearchParams(),{session:n}=z.useSessionContext(),c=z.useIsRoleOrMultiTenant("owner","admin","pagesEditor","member"),r=p.useMemo(()=>{const o=t.get("mode");return _.STATE_MODES.includes(o)?o:"production"},[t]),i=r==="production"?r:n.user?c?r:"production":null;return i?e.jsx(Q,{mode:i}):null}function Q({mode:t}){if(t!=="draft"){const n=window.__PAGE_STATE__;return n?e.jsx(E,{mode:t,state:n}):e.jsx(Re,{mode:t,children:({state:c})=>e.jsx(E,{mode:t,state:c})})}return e.jsx(Se,{children:({state:n})=>e.jsx(E,{mode:t,state:n})})}const ke=p.lazy(()=>Promise.resolve().then(()=>require("./publish-button-1rzLInzU.js"))),Se=p.lazy(()=>Promise.resolve().then(()=>require("./draft-data-BM4piqW0.js")));function Re({mode:t,children:n}){const r=document.querySelector('meta[property="pages:version"]')?.content,i=k.useProjectId(),o=p.useMemo(()=>{if(r==="{{pagesPublishedAt}}"){const l=localStorage.getItem(k.getProjectPageVersionKey(i??""));return Number(l)?Number(l):new Date().getTime()}return Number(r)},[r]),{loading:m,value:a}=W.useAsync(()=>_.getPages({mode:t,version:o}),[t,o]);return m?e.jsx(J,{}):a?n({state:a}):null}function E({mode:t,state:n}){const{t:c,locale:r}=$.useLocaleContext(),[i]=P.useSearchParams(),o=k.useProjectId(),m=k.useProjectSlug(),a=i.get("hiddenBadge")==="true",l=i.get("showPublish")==="true",{pageIds:f,pages:u,routeIds:b,routes:d,supportedLocales:x,config:{defaultLocale:v},resources:C}=n,j=k.getAllComponents(n),h=p.useMemo(()=>x?.some(g=>g.locale===r)?r:void 0,[r,x]),q=Object.values(d||{}).find(g=>g?.path==="/")||Object.values(u).find(g=>g?.slug==="/")?void 0:Object.values(u)[0],O=p.useMemo(()=>t==="production"?f.map(g=>{const s=u[g];return s&&{id:s.id,path:S.joinURL("/",m||o||"",s.slug)}}).filter(V):b.map(g=>{const s=d[g];return s?{id:s.id,path:S.joinURL("/",m||o||"",s.path,`?mode=${t}&showPublish=true`)}:null}).filter(V),[f,u,t,d,b,o,m]),T=([...g])=>(t!=="production"&&l&&g.unshift(e.jsx(p.Suspense,{fallback:e.jsx("div",{}),children:e.jsx(ke,{ref:{current:null},mode:"production",state:n})})),g);return e.jsxs(_.Provider,{value:{pages:O},children:[e.jsxs(P.Routes,{children:[q&&e.jsx(P.Route,{index:!0,element:e.jsx(P.Navigate,{to:S.joinURL("/",h||"",q.slug)})}),b?.map(g=>{const s=d?.[g];if(!s||!s.displayTemplateId)return null;const A=u[s.displayTemplateId];if(!A)return null;let D=[];return s.params&&s.params.length>0&&(D=re.generateParamCombinations({basePath:s.path,params:s.params,routeId:s.id,paramsOptions:s.paramsOptions,currentIndex:0,currentParams:[],currentOptionIds:[],result:[]})?.map(H=>{const N=H.paramOptionIds.join("-");return e.jsx(P.Route,{path:S.joinURL(":projectIdOrSlug?",H.path),element:e.jsx(U,{mode:t,components:j,page:A,locale:h,defaultLocale:v,headerAddons:T,state:n,pageData:s.dataSource?.pathDataMappings?.[N]?.dataCache?.[h||v||"en"]})},N)})),D.push(e.jsx(P.Route,{path:S.joinURL(":projectIdOrSlug?",s.path),element:e.jsx(U,{mode:t,components:j,page:A,locale:h,defaultLocale:v,headerAddons:T,state:n,pageData:s.dataSource?.pathDataMappings?.[s.id]?.dataCache?.[h||v||"en"]})},s.id)),D}),f.map(g=>{const s=u[g];return s?e.jsx(P.Route,{path:S.joinURL(":projectIdOrSlug?",s.slug),element:e.jsx(M,{mode:t,components:j,page:s,locale:h,defaultLocale:v,headerAddons:T})},s.id):null}),C.pages&&Object.values(C.pages).map(({blockletId:g,page:s})=>e.jsx(P.Route,{path:S.joinURL("/",`@${g}`,s.slug),element:e.jsx(M,{mode:t,components:j,page:s,locale:h,defaultLocale:v,headerAddons:T})},s.id)),e.jsx(P.Route,{path:"*",element:e.jsx(y.Box,{sx:{width:"100vw",height:"100vh",display:"flex",justifyContent:"center",alignItems:"center"},children:e.jsx(K.default,{status:404,extra:e.jsx(ee,{href:"/",children:c("common.back")}),sx:{bgcolor:"transparent",width:"100%",height:"100%"}})})})]}),t!=="production"&&!a&&e.jsx(ye,{sx:{bgcolor:"info.light"},children:t}),e.jsx(Pe,{})]})}function U({mode:t,pageData:n,components:c,page:r,locale:i,defaultLocale:o,headerAddons:m,state:a}){const l=F.useReactive({page:null});p.useEffect(()=>{const u=r||null;u?l.page=L.default(u):l.page=null},[r,JSON.stringify(r),l]);const f=p.useRef(void 0);return p.useEffect(()=>{Y.default(n,f.current)||n&&l.page&&(G.setPageDataSource(l.page,a,i,n),f.current=L.default(n))},[l.page,n,i,a]),l.page?e.jsx(M,{mode:t,components:c,page:l.page,locale:i,defaultLocale:o,headerAddons:m}):null}function Ce({mode:t,state:n,path:c,pageData:r}){const{t:i,locale:o}=$.useLocaleContext(),{pages:m,supportedLocales:a,config:{defaultLocale:l},resources:f}=n,u=Object.values(m).find(j=>j?.slug===c),b=Object.values(f.pages||{}).find(j=>j.page.slug===c),d=p.useMemo(()=>a?.some(j=>j.locale===o)?o:void 0,[o,a]),x=F.useReactive({page:null});p.useEffect(()=>{const j=u||b?.page||null;j?x.page=L.default(j):x.page=null},[u,b]);const v=p.useRef(void 0);if(p.useEffect(()=>{Y.default(r,v.current)||r&&x.page&&(G.setPageDataSource(x.page,n,d,r),v.current=L.default(r))},[{}]),!u&&!b?.page)return e.jsx(y.Box,{sx:{width:"100vw",height:"100vh",display:"flex",justifyContent:"center",alignItems:"center"},children:e.jsx(K.default,{style:{background:"inherit"},status:404,extra:e.jsx(ee,{href:"/",children:i("common.back")})})});const C=k.getAllComponents(n);return x.page?e.jsx(M,{mode:t,components:C,page:x.page,locale:d,defaultLocale:l}):null}function M({mode:t,components:n,page:c,locale:r,defaultLocale:i,headerAddons:o}){const m=oe.useColorConvert(),a=c.locales?.[r]??c.locales?.[i]??{},l=a.title||window.blocklet?.appName,f=a.description||window.blocklet?.appDescription,u=k.autoResizeImage(k.getImageAbsoluteUrl(a.image),540),{logo:b,brand:d,description:x,...v}=ne.useHeaderState(),C=p.useMemo(()=>h=>{let w=o?.(h)??h;return w=v.addons?.(w)??w,w},[v.addons,o]),j=p.useMemo(()=>a.header?.translucent?Z:X,[a.header?.translucent]);return e.jsxs(_.PageProvider,{page:c,defaultLocale:i,currentLocale:r,children:[e.jsx(B.Global,{styles:B.css`
31
+ body {
32
+ background-color: ${m(!a.backgroundColor||a.backgroundColor==="transparent"?"background.default":a.backgroundColor)} !important;
33
+ }
34
+ `}),e.jsx(j,{hideNavMenu:!!a.header?.hideNavMenus,translucentTextColor:a.header?.translucentTextColor,...b?{logo:b}:{},...d?{brand:d}:{},...x?{description:x}:{},className:ae.cx(a.header?.sticky&&"sticky","page-header"),maxWidth:!1,addons:C}),e.jsx(P.ScrollRestoration,{}),e.jsxs(de.Helmet,{children:[e.jsx("title",{children:l}),e.jsx("meta",{name:"og:title",content:l}),e.jsx("meta",{name:"og:description",content:f}),e.jsx("meta",{name:"og:image",content:u}),e.jsx("meta",{name:"twitter:image:src",content:u}),e.jsx("meta",{name:"twitter:image",content:u}),e.jsx("meta",{property:"twitter:description",content:f}),e.jsx("meta",{property:"twitter:title",content:l}),e.jsx("meta",{name:"description",content:f})]}),e.jsx(y.Stack,{className:"PageView-root",sx:{flexGrow:1,"& .BlockBase-root:first-child":{pt:"0 !important"}},children:c.sectionIds.map(h=>{const w=c.sections[h];if(!w||w.visibility==="hidden")return null;const q=c.dataSource?.[h]?.[r],O=c.dataSource?.[h]?.[i]??{};return e.jsx(y.Box,{sx:{position:"relative"},children:e.jsx(_.BlockRenderer,{id:h,type:w.component,mode:t,section:w,config:{...he.default(q)?O:q,locale:r,dev:t==="draft"?{mode:t,components:n,defaultLocale:i}:{mode:t,defaultLocale:i}},page:c},h)},h)})}),!a.footer?.hidden&&e.jsx(je,{})]})}const X=I.styled(ge.default)`
35
+ &.sticky {
36
+ position: sticky;
37
+ top: 0;
38
+ }
39
+ `;function qe({logo:t}){const[n,c]=p.useState(),r=y.useMediaQuery(o=>o.breakpoints.down("sm")),{value:i}=W.useAsync(()=>{const o=new URL(r?window?.blocklet?.appLogo||"/.well-known/service/blocklet/logo":window?.blocklet?.appLogoRect||"/.well-known/service/blocklet/logo-rect",window.location.origin);o.searchParams.delete("imageFilter"),o.searchParams.delete("f");const m=o.toString();return new Promise(a=>{fetch(m).then(l=>{l.headers.get("content-type")?.includes("svg")&&l.text().then(u=>{c(u),a(null)}),a(l.url)})})},[r]);if(t)return t;if(n)return e.jsx(y.Box,{sx:{filter:"initial !important"},dangerouslySetInnerHTML:{__html:me.default.sanitize(n)}});if(i){const o=new URL(i);o.searchParams.set("imageFilter","convert"),o.searchParams.set("f","png"),o.searchParams.set("h","80");const m=o.toString();return e.jsx("img",{src:m,alt:"logo"})}return null}function Z({logo:t,translucentTextColor:n,...c}){const i=F.useScroll(document.getElementById("app"),d=>d.top<1200),o=y.useTheme(),m=o.palette.mode==="dark",a=Math.min(i?.top??0,800),l=p.useMemo(()=>{let d=Math.min(a/800,1),x="";return d>.1?(d=Math.max(d,.6),x=y.alpha(o.palette.text.primary,d)):x=n||"#EEEEEE",{backgroundOpacity:d,textColor:x,isReversed:d<.7}},[a,800,o.palette.text.primary,n]),{backgroundOpacity:f,textColor:u,isReversed:b}=l;return e.jsx(X,{logo:e.jsx(qe,{logo:t}),...c,sx:{position:"fixed !important",top:0,left:0,right:0,zIndex:o.zIndex.appBar,backgroundColor:"transparent !important","&::before":{content:'""',position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:-1,backgroundColor:y.alpha(o.palette.background.default,f),backdropFilter:f>=.6?"blur(10px)":"blur(0px)",transition:"backgroundColor 0.3s ease-in-out"},transition:"color 0.3s ease-in-out",".navmenu-root>.navmenu-sub>span,\n .navmenu-root>.navmenu-item,\n .header-addons>button,\n .header-addons>a,\n .header-addons>div>button":{color:`${u} !important`},".header-logo":{color:`${u} !important`},"& .navmenu--horizontal":{bgcolor:"transparent !important"},".header-logo > div":{filter:m?"unset":`invert(${b?1:0})`,transition:"filter 0.3s ease-in-out"}}})}const ee=I.styled(y.Button)``;exports.Home=we;exports.HomeView=Q;exports.Loading=J;exports.PageRoutes=E;exports.PageView=M;exports.PageViewByPath=Ce;exports.PageViewWithDataSource=U;exports.TranslucentHeader=Z;
@@ -418,7 +418,7 @@
418
418
  color: #999;
419
419
  padding: 8px;
420
420
  height: 200px;
421
- `,an="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAbAAAACUCAMAAADF2oyMAAAATlBMVEU1Njrq6uqGiIrT09RMTVA/QERXWFvf39+QkJJ4eXt8foCmp6iam51iY2a9vb6PkJKEhYdqa25eX2KBg4VdX2LIyMlERkk6Oz/HyMlOUFPHL+B4AAADfElEQVR42uzci5aaMBRG4ROBACUgjrWX93/RVmeNoe3IQJcJP2v29wa4hRwiYgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGX0IpW2q7PvKNuHH7lK434ohjN7e0Zia0f12sg39PPzmLbs+1O4PRef/6eVMTOOuCtvQl8PVi+XVD+4dl/avT0ctWONe2YYOhxzF5nNFRTn9dNSCvfUabENt9mJVcDNCdf901II18Vu1oepL5mJl4R6LH0ez+bVHs1f2Yr52d0M4lZVZ5U/Hwd3V3sya7RcL0V6Zi7Wxy7GyibKNZ14rsbqr9spazN9zjfaPmKxzasGUemUsVtZxtHhHeQ+lFkyrV7ZiVeFejfbAqBlMrVeuYsHd1P3cTCIYTK9XnmKle+VtRq8XTLFXlmJFvB4+1sgF0+yVulic6Dub08itYaq90hf7seC4G7mho5PtNSnWWwLe3bSzveTGeuVek2InM0tz6MV8L7Vg2r3SFis+PMEapxbsrddFtJdZ1SYpFq+I5VwvtWD3XpXJ+p6q2OiuhrleasH20CtdseCujjO91IJ1bp062FO9nA8LJSk2uM2fN1onuNWO9kT9YbUXi540c3jbjdqtVtsTnQ+rne2J3I30akCwqe3XpJWObrVgT/RyWK3/1MHWDx1He6p+/dDxqS+Je7htTnXrHIcO6UPf3cZU0s2pH3sb6/dRLPZKc+zB9kW9WLpeNm7/VPr/OEoXS/mDmN/h1KFe7N7rqyVQL9+9KQdXtCZCt1jCXnFvrl48UfYmQrVY0l7x+bVx6dM6nanQLJa2V9yvryv7QFmozSeKxVL3iqdYWDhKyyxiksUS9oqGRRfF0W3/x+/HxUR+H/p2Tt8rPoXdfzD+K25ivRWrJYql7RWFjw+6r53mlohSsSW9Mv/dqNC7wdYplqvX9A99XTn7foFa7IJ404oUu/fyllpcod7dyRivOYUf/dAolqlXPOiYrLSJqrnm0pvop1qlF6sk6jX/2ofjyVdmVXkK15Ff4gs8qxV4XDJnr/kXq8jdnD4sdrENtct75Xl1kd58OHWqncAadi4tm/mTbJDZo3+kHMfKNlV5/91yay/7zPWJ+a5wf6gDucT5MQy3asWlG3VHQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgF/twQEJAAAAgKD/r9sRqAAAwEH1Hh4GzTWP1QAAAABJRU5ErkJggg==",sn="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAbAAAACUCAMAAADF2oyMAAAASFBMVEX///9gY2e6vL50d3rr7O3Dxcbh4uNqbXGwsbP3+PibnaClp6n19fXY2dqvsbOIio3c3t6/wcLLzM7U1dZ+gIPd3t7y8/Pm5ucjQ3xVAAADeElEQVR42uzcjXaaMBiH8TfhswSkMrfd/52u2lPj1gqyY8Kf0+d3B/AIeY2IAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABkDCGUtqlyGF5sE7XvToV7U4zB1/aF1tR492ayDZX+TW3ZDaFxfym6+lMvZ2Jad1bYhip/9mp5DaP7wqn65+yoBWvdO9uQ96mLLeeKivL27KgF++g12oam7MX64GaE/np21IK18VO1oZcqc7GycPfF09Fufu/R7JW9WN24qzFMZW/W19NhdFdNbWbt9ouFaK/MxarY5dDbjbKKV14lsbqr9sparL7m8vZJTNY5tWBKvTIWK5s4WnyhvIZSC6bVK1uxvnDvvN3hNYOp9cpVLLiLZpibSQSD6fXKU6x072qbMegFU+yVpVjxcT+c08oF0+yVulic6Dub08qtYaq90hc7PXDcrdzQ0cn2uik2WAK1u6hme8mN9cq9bor9MLM0h17M91ILpt0rbbFi8QJrnVqwj14n0V5vxaYkxeIdsZzrpRbs2qs3WcmKeXc2zvVSC7aHXumKBXd2mOmlFqxz6zTBnur16B+UpNjoNn/eaJ3gVjvYEw1+tVeLnjRz1LYbjVutsSc6+tWO9kTuQno1INit7deklQ5utWBP9OpXG751sPVDx8Gealg/dHzrW+Ievjan2uyIQ4f0oe9uYyplLzvtbazfR7HYK82xB9sX9WLpepnf/qn0/3GQLpbyB7F6h1OHerFrr5+WQPP47k05uqIyEbrFEvaKe3PNwxPlYCJUiyXtFZ9f848+rdOZCs1iaXvF/fqmtwVlIRZMsljqXvESCw+O0jKLmGSxhL2i8aGbonfb//H7fjGR34d+HdP3ik9hDwvjv+Im1kexRqJY2l5RWD7ooXGaWyJKxRZ75f+7UaH3BVunWIJei3/o68rZ9ws0YjfEi0qk2LXXb0strlBf7mT4c07hRz80imXqFQ86JivtRt+ec+lN9LcqhRerVOl6Lb/24TDVvVlfTuE88kt8gGdVAo9L5uq1/GIVuS+nd4udbENT3l7Lry7Smw9vTY0TWMOOpS3Kc5GNMnv0M68r7G1TL3X9YrlVp33m+sbqrnB/aQK5xNU+jJdqxanzuqMhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAn/bggAQAAABA0P/X7QhUAADgIJJyHRS4a1yAAAAAAElFTkSuQmCC",ln="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALAAAACUBAMAAADBpL5NAAAAMFBMVEU1Njrx8/Tl5+na292HiYtkZWmfoKKTlZd8fYBNTlHCxMW3uLmrrK5wcXVYWV1BQkZS3k1PAAAAjElEQVRo3u3VMa4BUBBA0Sl+8kt5RIRoLEGhF4Vep9UprUTETqzFhhiJDci8QpyzgNveAAAAAHgbbI+X6GHT2iQ6+G9Pp6i3y/A46t0yPIt6iwwPo157iXrL7I6i3iHD86h3zfA06v1leB0d3FtbRRf7c8C38zzP8zzP8zx+hed5nud5nucBAAAAfOwBSdMdvKmNQoYAAAAASUVORK5CYII=",cn="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALAAAACUBAMAAADBpL5NAAAAMFBMVEX///9gY2fX2Nm5u710d3pqbXHr6+zDxcawsbOlp6n19fXh4uPNzs+cnaCRlJaIio3fYqQbAAAAjUlEQVRo3u3Vsa0BUBSA4ZO85kV3BdGIqLQahZINbKAxhcYKKgtZxCYciQXk3EJ83wB/+wcAAADA22BzPUQP69am0cF/ezpHvUWGh1HvnuF51NtneBz12kvU22Z3FPUuGZ5FvWOGJ1HvL8Or6ODW2i66WJ4Cvp3neZ7neZ7n8Ss8z/M8z/M8DwAAAOBjD78dHWIa7LA2AAAAAElFTkSuQmCC",An="data:image/png;base64,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",dn="data:image/png;base64,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",un="data:image/png;base64,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",gn="data:image/png;base64,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",mn="data:image/png;base64,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",xn="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyAAAADUCAMAAABTRbfIAAAAOVBMVEX///9zc3OEhIS5ubnc3Nzu7u6oqKiWlpbLy8unp6d8fHz29vaNjY2wsLDCwsLl5eXT09Pk5OSfn5/gmidqAAAHJElEQVR42uzZ3U6DMACA0f4wyoCh8v4P6wwjMROGXFmTcy6AcEnzAW0DAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMCWLo1dADbleJcDsN2HQmC/D4XAfh8Kgf0+FHLG0EztXA7NbW4Cr711t7aMKZUy5/e3UKNbjAo5Ych9/LXkce67TOXpUfZluoTKXJeBjHdj/HINvPCR4impuhGvwzCVuKnUtd2w9JHzclTIkUuKJ6UhcOoznHI9L5VHH+s+iEKOjPG0OfAjj//xZzqUddpx+36OxUtvRxMXaW4PlRQXdc49/06TnnJIY0n9070a1jeGx6Rj/ZK060UcFbLtemr0ut66xyd7d7rdJgyEYXhGSyS0AMn9X2xNXDl1IgOiCYzD9/zq6XJOK/NWIAv4Imb+4LK39Ncw5iRrtagrZwD/BEJO7llWr5KmYyWe2LYJxxHc2MSF6+OXX/VJ0PKGKpNFCeRjWlEkj4T9Yq3/ezipg7mn+iKgM1RlOjGFuLLG8m8gFJXQ//QUXwQ6kuXJSKv1PCEofYR6HvWVwjDQoaxTztLnQMh200/Lw8cfbNdADK3mj/87S1L6CD3N6oOMQopbIKIhkGdX+kiWFlglrBAEgkB+XDnqu0iLYifkOgSBIJC9qKb1W83vEomAQBDIT9Olj7bfn0kCBPJfgdhh9FUdT64/Hs2pv341zcd7x2W4dxVH/fKhsoo1vHzQo5wPVWogNiteSXVCTqkPoHii2nd6qEg7enV8x3wNxPAdMZ+p0EAyryTpjGF/mifBPtgi4anC7r9Vp2deH0jRkwgyA+l4vRNvPLGKJ/7hyZd5fLiGSHvpeVUgMgsRGYjmFXDPZtkE27qHyO07Ypa3BRJEXIhIDCQqXiJ0NHdVJhDbGojZd8Q6vkpvL8VQ2WryUrgk6T89iYH4srMo0qJoOkGjuS/Pk659F6rb9RTmmrGz65d5beLjtwgKDuStcWn/rFchiSdmLhABNwwMZaFtfSBlqU3CSpbEQFrvDXBi/rvZleVJovZAyO14/I08MS2BlIQlPGlCYiA80a2rJKe7COl54rcE0u94Vqp5Qm2BRASyFIin1YyY+XhPZRrYEkjc8RxL84VqDISUlOtKBPK0eJK23SrqZtexEAgCeX6GJ3lbIHn+yTAIBIE8vZ4n47ZAxvkxRiAI5OmVSWBTIHZ++kEgCOTpvfGEtgVCPHcrBgJBIM/vep29NRA1t4x1xkCsU1X8TlV1luoQiACpHHjbA1FUdcpAFF/IfIY6Atn+iaaFQAQ8fO85Ahl5E09VCESA6hxg+7EWyKgtApnleZORqhCIALVAbGDuvgbSfd0MlebmnxMGEgO/k/giJwTSYH4OyHzR3QdSjkNcpM8aFDdLr/QAAjlebZk3862Q/nbLR1e7bWTuLUSnDATLvL9Nrvyrh3CLwZdB7GoPdhjwRSEC+eXKbvdqISWQ0lF4rQ1ZT3UIBIE8v7JZsVqIvgYykq72QbqMeRUCQSDPr9zTUS/EG74wY70PcrMf+z6BlFkOgSCQH+F4EuuFhJ4vfLj2IfSGKcocMiEQBPIjdLmOqBfCk3of5Pe7BCmBPIRAEEi77S8zLYXM9UFu4X4pBCIvEI9Atp1jmVoh831Ynj9oEYioQCjwhUMgrfqHVxJDmOuDuoURRiCyAkk8MQhk2/4hUy1kpg9bvjp8BIHICiTzO20RSMW2Z0oOod7H/d6TOgQiLBDDfwX1DoG0TSF9tRD1qA/PS+OFQGQFQh3fQSDf8QIdm3P95xUvHHwIRFogUSGQ/xm41H7Fp2gOApEVCFmHQHZ6iadeMbwIRFogRN4hkC2y+NdAI5BvEo3XVwhkvZiaCtGrnsaBQCQGgi8KN7GqYU7I626lRiAI5Pco3wkmu/ZKL7zSLASCQH6Tka+Up1ljWPusGgSCQH6T25Hf2RULhcHTAgSCQH6XQfFCIqZjPuL8qgQSNm1g7el4QeALMLlxcMazB0JWceF8pE+id1woSzvzWz6dQcw7CjVfdCRKaHxmUydwFtxb5g9Om3hLZ9SOP+RIezM80Vs2Hxk6XswcsrAXxCae2Lb/PhOdm1d8Rznnkgr8L2Vof5Hb7+/VfM4XF6+Um04GbGKBs+ABNM8LOtIRHL9zvVln7MufIKgyfOWyXpQdX410erYTmAeR4XZizrBkctxMERBZr7gqteQh4OPEOcEsG7jB6dew7gza8SdOGzpSTLxBwhXI9z2LPkhYEBQjmj47py7S20tvBBxomlsFCV8SCmY7buAwfwhnvVO8mnrrBVQtnPVvTq3gXnrkAQAAAAAAAAAAAAAAAAAAAAAAAAAAf9qDAwEAAAAAQf7Wg1wBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfAVJJDh1XYSoHQAAAABJRU5ErkJggg==",pn=[{name:"chrome",mode:{light:{top:{background:"#dfe1e5",left:dn},bottom:{background:"#fff",inputStyle:{background:"#f1f3f4",borderRadius:"10em"},left:sn,right:cn}},dark:{top:{background:"#202124",left:An},bottom:{background:"#35363a",inputStyle:{background:"#202124",borderRadius:"10em"},left:an,right:ln}}}},{name:"safari",mode:{light:{top:{background:"#fff",inputStyle:{background:"#0000000d",borderRadius:"4px"},left:gn,right:xn}},dark:{top:{background:"#191c1f",inputStyle:{background:"#0c0f12",borderRadius:"4px"},left:un,right:mn}}}}],De={width:"1px",style:"solid",color:"divider"};function Je(e){return typeof e=="string"&&e.startsWith("custom:")}function hn(e){if(!Je(e))return De;try{const t=e?.substring(7)||"",[n="1px",i="solid",...r]=t.split(" ");return{width:n,style:i,color:r.join(" ")||"divider"}}catch{return De}}function fn(e){if(!e||e==="none")return{border:"none"};if(Je(e)){const{width:t,style:n,color:i}=hn(e);return{border:"none",borderWidth:t,borderStyle:n,borderColor:i}}return{}}function qe(e){return typeof e=="string"&&e.startsWith("custom:")}function yn(e){if(!qe(e))return"0";try{return e?.substring(7)||"0"}catch{return"0"}}const le=e=>typeof e=="string"&&e.startsWith("custom:"),Re=e=>le(e)?e.replace("custom:",""):"";function bn(e){return!e||e==="none"?{borderRadius:0}:qe(e)?{borderRadius:yn(e)}:{}}function Bn({ref:e=void 0,type:t,sx:n,children:i,...r}){const a=d.useTheme(),c=a.palette.mode==="dark",l=d.useMediaQuery(a.breakpoints.down("sm"))?20:32,A={overflow:"hidden !important",display:"grid !important"},u="layout-block-frame",g=[A,...Array.isArray(n)?n:[n]];return p.useCallback(()=>{const m=Xt(t||""),B=Kt(t||"");if(m)return g.push({img:{objectFit:"contain !important",bgcolor:f=>f.palette.background.default,borderRadius:"0 !important",position:"relative"}}),o.jsx(ze.default,{className:u,type:t,sx:[{".screenshot--container":{...A,...Z.default(n,["p","px","py","pl","pr","pt","pb","ml","mr","mt","mb","alignItems"])}}],children:i});if(B){const f=t?.includes("chrome")?"chrome":"safari",b=pn.find(H=>H.name===f);if(!b)return o.jsx(d.Box,{className:u,ref:e,sx:g,...r,children:i});const v=b.mode[c?"dark":"light"],k=v.top,j=v.bottom,D=f==="chrome";return o.jsxs(d.Box,{className:u,sx:{width:"100%",height:"100%",border:1,borderColor:"divider",overflow:"hidden"},children:[o.jsxs(d.Box,{sx:{display:"flex",flexDirection:"column"},children:[k&&o.jsxs(d.Box,{sx:{backgroundColor:k.background,height:l,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[k.left&&o.jsx(d.Box,{sx:{height:"100%",display:"flex",alignItems:"center"},component:"img",src:k.left,alt:`${f}-browser-left`}),k.inputStyle&&o.jsx(d.Box,{sx:{my:"auto",ml:1,height:"60%",width:"100%",...k.inputStyle}}),k.right&&o.jsx(d.Box,{component:"img",src:k.right,alt:`${f}-browser-right`,sx:{height:"100%",display:"flex",alignItems:"center"}})]}),j&&o.jsxs(d.Box,{sx:{height:l,display:"flex",alignItems:"center",justifyContent:"space-between",background:j.background},children:[j.left&&o.jsx(d.Box,{component:"img",src:j.left,alt:`${f}-browser-left`,sx:{height:"100%",display:"flex",alignItems:"center"}}),j.inputStyle&&o.jsx(d.Box,{sx:{my:"auto",mx:1,height:"60%",width:"100%",...j.inputStyle}}),j.right&&o.jsx(d.Box,{component:"img",src:j.right,alt:`${f}-browser-right`,sx:{height:"100%",display:"flex",alignItems:"center"}})]})]}),o.jsx(d.Box,{ref:e,sx:[...g,{position:"relative",height:`calc(100% - ${D?l*2:l}px)`}],...r,children:i})]})}return o.jsx(d.Box,{className:u,ref:e,sx:g,...r,children:i})},[t,i,g,c,l])()}const kn="none",vn="none",wn="none",Cn="100%",jn="center",In="start",En="none",Sn="none",Dn="full",Rn=12,Qn=({gridSettings:e,section:t,index:n,columns:i,simulateMode:r="desktop",isBackground:a})=>{const c=e?.[r]??{},s=c[t.id],l=Pn(c);return{i:t.id,static:t?.locked||a,...a?{x:0,y:0,w:i,h:1,isResizable:!1}:{x:s?.x??0,y:s?.y??n,w:s?.w??i,h:s?.h??1,isResizable:!0},minH:1,maxH:1,maxY:l}},Pn=e=>Object.values(e).reduce((t,n)=>Math.max(t,n.y||0),0)||0,Mn=e=>{const{dev:t,id:n,section:i,onBlockRender:r}=e,a=t?.mode,c=d.useMediaQuery(h=>h.breakpoints.down("sm")),{t:s}=St.useLocaleContext(),{getPageMeta:l}=He(),A=l(),{sections:u,sectionIds:g,config:x}=i,{columns:m=Rn,gridSettings:B,gap:f,padding:b,paddingX:v,paddingY:k,height:j,maxWidth:D,background:H,backgroundVideoPoster:me,alignContent:xe,justifyContent:pe,border:oe,borderRadius:he,backgroundFullWidth:fe}=x||{},ne=p.useMemo(()=>{const C=Q({type:"layoutBlockGap",value:f??kn,format:"sx"}),L={...C,gap:Object.keys(C.gap||{}).reduce((z,R)=>(z[R]=-C.gap[R],z),{})};return{item:C,container:L}},[f]),Ke=p.useMemo(()=>{const h=v??b??vn;return le(h)?{px:Re(h)}:Q({type:"layoutBlockPaddingX",value:h,format:"sx"})},[v,b]),Ze=p.useMemo(()=>{const h=k??b??wn;return le(h)?{py:Re(h)}:Q({type:"layoutBlockPaddingY",value:h,format:"sx"})},[k,b]),ie=p.useMemo(()=>Q({type:"layoutBlockAlignContent",value:xe??jn,format:"sx"}),[xe]),re=p.useMemo(()=>Q({type:"layoutBlockJustifyContent",value:pe??In,format:"sx"}),[pe]),_e=p.useMemo(()=>{const h=oe??En,C=fn(h);return Object.keys(C).length>0?C:Q({type:"layoutBlockBorder",value:h,format:"sx"})},[oe]),$e=p.useMemo(()=>{const h=he??Sn,C=bn(h);return Object.keys(C).length>0?C:Q({type:"layoutBlockBorderRadius",value:h,format:"sx"})},[he]),et=p.useMemo(()=>Q({type:"layoutBlockHeight",value:j??Cn,format:"sx"}),[j]),tt=p.useMemo(()=>Q({type:"maxWidth",value:D??Dn,format:"sx"}),[D]),ye=p.useCallback((h,C=!1,L=0,z)=>{if(!r||!h||!h.component||h.visibility==="hidden")return null;const R=Qn({gridSettings:B,section:h,index:L,columns:m,simulateMode:c?"mobile":"desktop",isBackground:C}),V=R?.x??0,U=R?.y??0,ot=R?.w??m,nt=R?.h??1,it=R?.maxY??0,rt=!!i?.config?.backgroundSectionId;return o.jsx(d.Box,{className:C?"layout-block-content-background":"layout-block-content",sx:{...C?{gridColumn:"1 / -1",gridRow:`1 / ${it+1}`,zIndex:0,width:"100%",height:"100%",overflow:"hidden","& > .BlockBase-root":{width:"100%",height:"100%"}}:{position:"relative",gridColumn:`${V+1} / span ${ot}`,gridRow:`${U+(rt?0:1)} / span ${nt}`,zIndex:1,minWidth:0,minHeight:0,overflow:"hidden",...U>0?{mt:ne?.item?.gap}:{},...V>0?{ml:ne?.item?.gap}:{},"& > .BlockBase-root":{height:"100%",width:"100%",boxSizing:"border-box",position:"relative",...ie,...re}}},children:z||r({id:h.id,type:h.component,config:{},section:{...h},mode:a})},h.id)},[n,a,r,B,m,c,ne,ie,re,fe,A]),{backgroundElements:be,contentElements:Be}=p.useMemo(()=>{const h=[],C=[];return g?.forEach((L,z)=>{const R=u?.[L];if(!R)return;const V=i?.config?.backgroundSectionId===L,U=ye(R,V,z);U&&(V?h.push(U):C.push(U))}),{backgroundElements:h||[],contentElements:C||[]}},[ye,u,g,H,me]);return a==="draft"&&!be?.length&&!Be?.length?o.jsxs(d.Box,{sx:{gridColumn:"1 / -1",gridRow:"1",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:2,border:h=>`2px dashed ${h.palette.divider}`,borderRadius:2,padding:4,color:"text.secondary",textAlign:"center",minHeight:"160px",position:"relative"},children:[o.jsx(d.Box,{sx:{fontSize:"48px",opacity:.5},children:"📐"}),o.jsx(d.Box,{sx:{fontSize:"16px",fontWeight:500,marginBottom:1},children:"Section Layout"}),o.jsx(d.Box,{sx:{opacity:.7,whiteSpace:"pre-line"},children:s("maker.layoutBlock.draftPlaceholder")}),o.jsx(d.Box,{sx:{position:"absolute",top:0,left:0,right:0,bottom:0,pointerEvents:"none",opacity:.1,background:h=>`
421
+ `,an="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAbAAAACUCAMAAADF2oyMAAAATlBMVEU1Njrq6uqGiIrT09RMTVA/QERXWFvf39+QkJJ4eXt8foCmp6iam51iY2a9vb6PkJKEhYdqa25eX2KBg4VdX2LIyMlERkk6Oz/HyMlOUFPHL+B4AAADfElEQVR42uzci5aaMBRG4ROBACUgjrWX93/RVmeNoe3IQJcJP2v29wa4hRwiYgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGX0IpW2q7PvKNuHH7lK434ohjN7e0Zia0f12sg39PPzmLbs+1O4PRef/6eVMTOOuCtvQl8PVi+XVD+4dl/avT0ctWONe2YYOhxzF5nNFRTn9dNSCvfUabENt9mJVcDNCdf901II18Vu1oepL5mJl4R6LH0ez+bVHs1f2Yr52d0M4lZVZ5U/Hwd3V3sya7RcL0V6Zi7Wxy7GyibKNZ14rsbqr9spazN9zjfaPmKxzasGUemUsVtZxtHhHeQ+lFkyrV7ZiVeFejfbAqBlMrVeuYsHd1P3cTCIYTK9XnmKle+VtRq8XTLFXlmJFvB4+1sgF0+yVulic6Dub08itYaq90hf7seC4G7mho5PtNSnWWwLe3bSzveTGeuVek2InM0tz6MV8L7Vg2r3SFis+PMEapxbsrddFtJdZ1SYpFq+I5VwvtWD3XpXJ+p6q2OiuhrleasH20CtdseCujjO91IJ1bp062FO9nA8LJSk2uM2fN1onuNWO9kT9YbUXi540c3jbjdqtVtsTnQ+rne2J3I30akCwqe3XpJWObrVgT/RyWK3/1MHWDx1He6p+/dDxqS+Je7htTnXrHIcO6UPf3cZU0s2pH3sb6/dRLPZKc+zB9kW9WLpeNm7/VPr/OEoXS/mDmN/h1KFe7N7rqyVQL9+9KQdXtCZCt1jCXnFvrl48UfYmQrVY0l7x+bVx6dM6nanQLJa2V9yvryv7QFmozSeKxVL3iqdYWDhKyyxiksUS9oqGRRfF0W3/x+/HxUR+H/p2Tt8rPoXdfzD+K25ivRWrJYql7RWFjw+6r53mlohSsSW9Mv/dqNC7wdYplqvX9A99XTn7foFa7IJ404oUu/fyllpcod7dyRivOYUf/dAolqlXPOiYrLSJqrnm0pvop1qlF6sk6jX/2ofjyVdmVXkK15Ff4gs8qxV4XDJnr/kXq8jdnD4sdrENtct75Xl1kd58OHWqncAadi4tm/mTbJDZo3+kHMfKNlV5/91yay/7zPWJ+a5wf6gDucT5MQy3asWlG3VHQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgF/twQEJAAAAgKD/r9sRqAAAwEH1Hh4GzTWP1QAAAABJRU5ErkJggg==",sn="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAbAAAACUCAMAAADF2oyMAAAASFBMVEX///9gY2e6vL50d3rr7O3Dxcbh4uNqbXGwsbP3+PibnaClp6n19fXY2dqvsbOIio3c3t6/wcLLzM7U1dZ+gIPd3t7y8/Pm5ucjQ3xVAAADeElEQVR42uzcjXaaMBiH8TfhswSkMrfd/52u2lPj1gqyY8Kf0+d3B/AIeY2IAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABkDCGUtqlyGF5sE7XvToV7U4zB1/aF1tR492ayDZX+TW3ZDaFxfym6+lMvZ2Jad1bYhip/9mp5DaP7wqn65+yoBWvdO9uQ96mLLeeKivL27KgF++g12oam7MX64GaE/np21IK18VO1oZcqc7GycPfF09Fufu/R7JW9WN24qzFMZW/W19NhdFdNbWbt9ouFaK/MxarY5dDbjbKKV14lsbqr9sparL7m8vZJTNY5tWBKvTIWK5s4WnyhvIZSC6bVK1uxvnDvvN3hNYOp9cpVLLiLZpibSQSD6fXKU6x072qbMegFU+yVpVjxcT+c08oF0+yVulic6Dub08qtYaq90hc7PXDcrdzQ0cn2uik2WAK1u6hme8mN9cq9bor9MLM0h17M91ILpt0rbbFi8QJrnVqwj14n0V5vxaYkxeIdsZzrpRbs2qs3WcmKeXc2zvVSC7aHXumKBXd2mOmlFqxz6zTBnur16B+UpNjoNn/eaJ3gVjvYEw1+tVeLnjRz1LYbjVutsSc6+tWO9kTuQno1INit7deklQ5utWBP9OpXG751sPVDx8Gealg/dHzrW+Ievjan2uyIQ4f0oe9uYyplLzvtbazfR7HYK82xB9sX9WLpepnf/qn0/3GQLpbyB7F6h1OHerFrr5+WQPP47k05uqIyEbrFEvaKe3PNwxPlYCJUiyXtFZ9f848+rdOZCs1iaXvF/fqmtwVlIRZMsljqXvESCw+O0jKLmGSxhL2i8aGbonfb//H7fjGR34d+HdP3ik9hDwvjv+Im1kexRqJY2l5RWD7ooXGaWyJKxRZ75f+7UaH3BVunWIJei3/o68rZ9ws0YjfEi0qk2LXXb0strlBf7mT4c07hRz80imXqFQ86JivtRt+ec+lN9LcqhRerVOl6Lb/24TDVvVlfTuE88kt8gGdVAo9L5uq1/GIVuS+nd4udbENT3l7Lry7Smw9vTY0TWMOOpS3Kc5GNMnv0M68r7G1TL3X9YrlVp33m+sbqrnB/aQK5xNU+jJdqxanzuqMhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAn/bggAQAAABA0P/X7QhUAADgIJJyHRS4a1yAAAAAAElFTkSuQmCC",ln="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALAAAACUBAMAAADBpL5NAAAAMFBMVEU1Njrx8/Tl5+na292HiYtkZWmfoKKTlZd8fYBNTlHCxMW3uLmrrK5wcXVYWV1BQkZS3k1PAAAAjElEQVRo3u3VMa4BUBBA0Sl+8kt5RIRoLEGhF4Vep9UprUTETqzFhhiJDci8QpyzgNveAAAAAHgbbI+X6GHT2iQ6+G9Pp6i3y/A46t0yPIt6iwwPo157iXrL7I6i3iHD86h3zfA06v1leB0d3FtbRRf7c8C38zzP8zzP8zx+hed5nud5nucBAAAAfOwBSdMdvKmNQoYAAAAASUVORK5CYII=",cn="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALAAAACUBAMAAADBpL5NAAAAMFBMVEX///9gY2fX2Nm5u710d3pqbXHr6+zDxcawsbOlp6n19fXh4uPNzs+cnaCRlJaIio3fYqQbAAAAjUlEQVRo3u3Vsa0BUBSA4ZO85kV3BdGIqLQahZINbKAxhcYKKgtZxCYciQXk3EJ83wB/+wcAAADA22BzPUQP69am0cF/ezpHvUWGh1HvnuF51NtneBz12kvU22Z3FPUuGZ5FvWOGJ1HvL8Or6ODW2i66WJ4Cvp3neZ7neZ7n8Ss8z/M8z/M8DwAAAOBjD78dHWIa7LA2AAAAAElFTkSuQmCC",An="data:image/png;base64,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",dn="data:image/png;base64,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",un="data:image/png;base64,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",gn="data:image/png;base64,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",mn="data:image/png;base64,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",xn="data:image/png;base64,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",pn=[{name:"chrome",mode:{light:{top:{background:"#dfe1e5",left:dn},bottom:{background:"#fff",inputStyle:{background:"#f1f3f4",borderRadius:"10em"},left:sn,right:cn}},dark:{top:{background:"#202124",left:An},bottom:{background:"#35363a",inputStyle:{background:"#202124",borderRadius:"10em"},left:an,right:ln}}}},{name:"safari",mode:{light:{top:{background:"#fff",inputStyle:{background:"#0000000d",borderRadius:"4px"},left:gn,right:xn}},dark:{top:{background:"#191c1f",inputStyle:{background:"#0c0f12",borderRadius:"4px"},left:un,right:mn}}}}],De={width:"1px",style:"solid",color:"divider"};function Je(e){return typeof e=="string"&&e.startsWith("custom:")}function hn(e){if(!Je(e))return De;try{const t=e?.substring(7)||"",[n="1px",i="solid",...r]=t.split(" ");return{width:n,style:i,color:r.join(" ")||"divider"}}catch{return De}}function fn(e){if(!e||e==="none")return{border:"none"};if(Je(e)){const{width:t,style:n,color:i}=hn(e);return{border:"none",borderWidth:t,borderStyle:n,borderColor:i}}return{}}function qe(e){return typeof e=="string"&&e.startsWith("custom:")}function yn(e){if(!qe(e))return"0";try{return e?.substring(7)||"0"}catch{return"0"}}const le=e=>typeof e=="string"&&e.startsWith("custom:"),Re=e=>le(e)?e.replace("custom:",""):"";function bn(e){return!e||e==="none"?{borderRadius:0}:qe(e)?{borderRadius:yn(e)}:{}}function Bn({ref:e=void 0,type:t,sx:n,children:i,...r}){const a=d.useTheme(),c=a.palette.mode==="dark",l=d.useMediaQuery(a.breakpoints.down("sm"))?20:32,A={overflow:"hidden !important",display:"grid !important",boxSizing:"border-box"},u="layout-block-frame",g=[A,...Array.isArray(n)?n:[n]];return p.useCallback(()=>{const m=Xt(t||""),B=Kt(t||"");if(m)return g.push({img:{objectFit:"contain !important",bgcolor:f=>f.palette.background.default,borderRadius:"0 !important",position:"relative"}}),o.jsx(ze.default,{className:u,type:t,sx:[{".screenshot--container":{...A,...Z.default(n,["p","px","py","pl","pr","pt","pb","ml","mr","mt","mb","alignItems"])}}],children:i});if(B){const f=t?.includes("chrome")?"chrome":"safari",b=pn.find(H=>H.name===f);if(!b)return o.jsx(d.Box,{className:u,ref:e,sx:g,...r,children:i});const v=b.mode[c?"dark":"light"],k=v.top,j=v.bottom,D=f==="chrome";return o.jsxs(d.Box,{sx:{width:"100%",height:"100%",border:1,borderColor:"divider",overflow:"hidden"},children:[o.jsxs(d.Box,{sx:{display:"flex",flexDirection:"column"},children:[k&&o.jsxs(d.Box,{sx:{backgroundColor:k.background,height:l,display:"flex",alignItems:"center",justifyContent:"space-between"},children:[k.left&&o.jsx(d.Box,{sx:{height:"100%",display:"flex",alignItems:"center"},component:"img",src:k.left,alt:`${f}-browser-left`}),k.inputStyle&&o.jsx(d.Box,{sx:{my:"auto",ml:1,height:"60%",width:"100%",...k.inputStyle}}),k.right&&o.jsx(d.Box,{component:"img",src:k.right,alt:`${f}-browser-right`,sx:{height:"100%",display:"flex",alignItems:"center"}})]}),j&&o.jsxs(d.Box,{sx:{height:l,display:"flex",alignItems:"center",justifyContent:"space-between",background:j.background},children:[j.left&&o.jsx(d.Box,{component:"img",src:j.left,alt:`${f}-browser-left`,sx:{height:"100%",display:"flex",alignItems:"center"}}),j.inputStyle&&o.jsx(d.Box,{sx:{my:"auto",mx:1,height:"60%",width:"100%",...j.inputStyle}}),j.right&&o.jsx(d.Box,{component:"img",src:j.right,alt:`${f}-browser-right`,sx:{height:"100%",display:"flex",alignItems:"center"}})]})]}),o.jsx(d.Box,{ref:e,className:u,sx:[...g,{position:"relative",height:`calc(100% - ${D?l*2:l}px)`}],...r,children:i})]})}return o.jsx(d.Box,{className:u,ref:e,sx:g,...r,children:i})},[t,i,g,c,l])()}const kn="none",vn="none",wn="none",Cn="100%",jn="center",In="start",En="none",Sn="none",Dn="full",Rn=12,Qn=({gridSettings:e,section:t,index:n,columns:i,simulateMode:r="desktop",isBackground:a})=>{const c=e?.[r]??{},s=c[t.id],l=Pn(c);return{i:t.id,static:t?.locked||a,...a?{x:0,y:0,w:i,h:1,isResizable:!1}:{x:s?.x??0,y:s?.y??n,w:s?.w??i,h:s?.h??1,isResizable:!0},minH:1,maxH:1,maxY:l}},Pn=e=>Object.values(e).reduce((t,n)=>Math.max(t,n.y||0),0)||0,Mn=e=>{const{dev:t,id:n,section:i,onBlockRender:r}=e,a=t?.mode,c=d.useMediaQuery(h=>h.breakpoints.down("sm")),{t:s}=St.useLocaleContext(),{getPageMeta:l}=He(),A=l(),{sections:u,sectionIds:g,config:x}=i,{columns:m=Rn,gridSettings:B,gap:f,padding:b,paddingX:v,paddingY:k,height:j,maxWidth:D,background:H,backgroundVideoPoster:me,alignContent:xe,justifyContent:pe,border:oe,borderRadius:he,backgroundFullWidth:fe}=x||{},ne=p.useMemo(()=>{const C=Q({type:"layoutBlockGap",value:f??kn,format:"sx"}),L={...C,gap:Object.keys(C.gap||{}).reduce((z,R)=>(z[R]=-C.gap[R],z),{})};return{item:C,container:L}},[f]),Ke=p.useMemo(()=>{const h=v??b??vn;return le(h)?{px:Re(h)}:Q({type:"layoutBlockPaddingX",value:h,format:"sx"})},[v,b]),Ze=p.useMemo(()=>{const h=k??b??wn;return le(h)?{py:Re(h)}:Q({type:"layoutBlockPaddingY",value:h,format:"sx"})},[k,b]),ie=p.useMemo(()=>Q({type:"layoutBlockAlignContent",value:xe??jn,format:"sx"}),[xe]),re=p.useMemo(()=>Q({type:"layoutBlockJustifyContent",value:pe??In,format:"sx"}),[pe]),_e=p.useMemo(()=>{const h=oe??En,C=fn(h);return Object.keys(C).length>0?C:Q({type:"layoutBlockBorder",value:h,format:"sx"})},[oe]),$e=p.useMemo(()=>{const h=he??Sn,C=bn(h);return Object.keys(C).length>0?C:Q({type:"layoutBlockBorderRadius",value:h,format:"sx"})},[he]),et=p.useMemo(()=>Q({type:"layoutBlockHeight",value:j??Cn,format:"sx"}),[j]),tt=p.useMemo(()=>Q({type:"maxWidth",value:D??Dn,format:"sx"}),[D]),ye=p.useCallback((h,C=!1,L=0,z)=>{if(!r||!h||!h.component||h.visibility==="hidden")return null;const R=Qn({gridSettings:B,section:h,index:L,columns:m,simulateMode:c?"mobile":"desktop",isBackground:C}),V=R?.x??0,U=R?.y??0,ot=R?.w??m,nt=R?.h??1,it=R?.maxY??0,rt=!!i?.config?.backgroundSectionId;return o.jsx(d.Box,{className:C?"layout-block-content-background":"layout-block-content",sx:{...C?{gridColumn:"1 / -1",gridRow:`1 / ${it+1}`,zIndex:0,width:"100%",height:"100%",overflow:"hidden","& > .BlockBase-root":{width:"100%",height:"100%"}}:{position:"relative",gridColumn:`${V+1} / span ${ot}`,gridRow:`${U+(rt?0:1)} / span ${nt}`,zIndex:1,minWidth:0,minHeight:0,overflow:"hidden",...U>0?{mt:ne?.item?.gap}:{},...V>0?{ml:ne?.item?.gap}:{},"& > .BlockBase-root":{height:"100%",width:"100%",boxSizing:"border-box",position:"relative",...ie,...re}}},children:z||r({id:h.id,type:h.component,config:{},section:{...h},mode:a})},h.id)},[n,a,r,B,m,c,ne,ie,re,fe,A]),{backgroundElements:be,contentElements:Be}=p.useMemo(()=>{const h=[],C=[];return g?.forEach((L,z)=>{const R=u?.[L];if(!R)return;const V=i?.config?.backgroundSectionId===L,U=ye(R,V,z);U&&(V?h.push(U):C.push(U))}),{backgroundElements:h||[],contentElements:C||[]}},[ye,u,g,H,me]);return a==="draft"&&!be?.length&&!Be?.length?o.jsxs(d.Box,{sx:{gridColumn:"1 / -1",gridRow:"1",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:2,border:h=>`2px dashed ${h.palette.divider}`,borderRadius:2,padding:4,color:"text.secondary",textAlign:"center",minHeight:"160px",position:"relative"},children:[o.jsx(d.Box,{sx:{fontSize:"48px",opacity:.5},children:"📐"}),o.jsx(d.Box,{sx:{fontSize:"16px",fontWeight:500,marginBottom:1},children:"Section Layout"}),o.jsx(d.Box,{sx:{opacity:.7,whiteSpace:"pre-line"},children:s("maker.layoutBlock.draftPlaceholder")}),o.jsx(d.Box,{sx:{position:"absolute",top:0,left:0,right:0,bottom:0,pointerEvents:"none",opacity:.1,background:h=>`
422
422
  repeating-linear-gradient(
423
423
  90deg,
424
424
  transparent,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),N=require("./state-tEydRMV8.js"),q=require("@arcblock/ux/lib/Locale/context"),Y=require("@arcblock/ux/lib/Toast"),Z=require("@blocklet/pages-kit/utils/route"),C=require("@mui/icons-material"),F=require("@mui/lab"),s=require("@mui/material"),ee=require("immer"),te=require("lodash/difference"),a=require("react"),se=require("react-use"),ne=require("./home-De44UTmv.js"),H=require("./index-HBobmmAN.js"),J=o=>o&&o.__esModule?o:{default:o},z=J(Y),V=J(te);function ie(o){const[x,g]=a.useState(!1);return e.jsx(F.LoadingButton,{...o,loading:o.loading||x,onClick:c=>{const m=o.onClick?.(c);m instanceof Promise&&(g(!0),m.finally(()=>{g(!1)}))}})}const oe=s.createSvgIcon(e.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e.jsx("path",{d:"M7.75732 16.2426L16.2426 7.75736",stroke:"#4B5563",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e.jsx("path",{d:"M16.2426 16.2426L7.75732 7.75735",stroke:"#4B5563",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]}),"Close");function re(){const[o,x]=a.useState(),g=a.useMemo(()=>o?e.jsx(s.Dialog,{...o}):null,[o]),c=a.useCallback(()=>{x(void 0)},[]),m=a.useCallback(({title:b,content:d,cancelText:P="Cancel",okText:f="Ok",onOk:y,onClose:u,okIcon:L,okColor:k="primary",cancelColor:h="primary",DialogContentProps:v,form:R,...I})=>{x({...I,open:!0,children:e.jsxs("form",{onSubmit:B=>B.preventDefault(),children:[b&&e.jsxs(s.DialogTitle,{className:"between",zIndex:"appBar",bgcolor:"background.paper",sx:{borderBottom:B=>`1px solid ${B.palette.divider}`},children:[e.jsx(s.Box,{children:b}),e.jsx(s.IconButton,{size:"small",onClick:async()=>{c(),u?.()},children:e.jsx(oe,{})})]}),d&&e.jsx(s.DialogContent,{...v,sx:{mt:-3,...v?.sx,bgcolor:"background.paper"},children:e.jsx(s.Box,{sx:{pt:3},children:d})}),e.jsxs(s.DialogActions,{sx:{bgcolor:"background.paper"},children:[e.jsx(s.Button,{variant:"outlined",color:h||"primary",onClick:u??c,children:P}),e.jsx(ie,{variant:"contained",color:k||"primary",startIcon:L,loadingPosition:L?"start":"center",onClick:async()=>{await y?.(),c()},type:"submit",children:f})]})]}),onClose:u??c})},[c]);return{dialog:g,showDialog:m,closeDialog:c}}const ae=({ref:o,mode:x,state:g})=>{const{t:c}=q.useLocaleContext(),[m,b]=a.useState(!1),{dialog:d,showDialog:P}=re(),f=N.useProjectId(),y=a.useCallback(L=>{let k=[];P({title:c("maker.publishToProduction"),content:e.jsxs(s.Box,{sx:{minWidth:300},children:[e.jsx(s.Alert,{color:"warning",icon:e.jsx(C.Warning,{}),children:c("maker.publishToProductionTip")}),e.jsx(s.Box,{sx:{maxHeight:"50vh",overflow:"auto",mt:2},children:e.jsx(ce,{state:g,toMode:x,onChange:h=>k=h,defaultRouteIds:L})})]}),okText:c("maker.publish"),cancelText:c("common.cancel"),onOk:async()=>{if(k?.length===0){const h=c("maker.publishSelectPagesMessage");throw z.default.error(h),new Error(h)}localStorage.setItem(N.getProjectPageVersionKey(f??""),String(new Date().getTime())),b(!0);try{await H.publishPages({mode:x,routes:k}),z.default.success(c("maker.publishSuccessMessage"))}catch(h){throw z.default.error(h.message),h}finally{b(!1)}}})},[x,g,c,f,P]);a.useImperativeHandle(o,()=>({openPublishDialog:y}));const u=a.useCallback(()=>{y()},[y]);return e.jsxs(e.Fragment,{children:[e.jsx(F.LoadingButton,{color:"primary",variant:"contained",size:"small",sx:{mr:1},onClick:u,loading:m,disabled:m,children:c("maker.publish")}),d]})};function le({routePathInfo:o,checked:x,onClick:g,route:c}){const{t:m}=q.useLocaleContext(),b=!o.routeMetaData?.publishedAt||o.routeMetaData?.updatedAt&&new Date(o.routeMetaData?.updatedAt)>new Date(o.routeMetaData?.publishedAt);return e.jsx(s.ListItem,{sx:{pl:4,pr:3},disablePadding:!0,secondaryAction:e.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",minWidth:"auto"},children:[b&&e.jsx(s.Box,{className:"visible",title:m("maker.pages.needPublish"),sx:{mr:.35,color:"warning.main",display:"flex",alignItems:"center"},children:e.jsx(s.Tooltip,{title:m("maker.pages.needPublish"),children:e.jsx(C.Sync,{fontSize:"small",sx:{fontSize:"16px"}})})}),(!o.routeMetaData?.isPublic||!c.isPublic)&&e.jsx(s.Box,{className:"visible",sx:{color:"warning.main"},children:e.jsx(s.Tooltip,{title:m("maker.pages.notPublic"),children:e.jsx(C.VisibilityOff,{fontSize:"small",sx:{fontSize:"16px"}})})})]}),children:e.jsxs(s.ListItemButton,{onClick:g,dense:!0,children:[e.jsx(s.ListItemIcon,{children:e.jsx(s.Checkbox,{edge:"start",checked:x,tabIndex:-1})}),e.jsx(s.ListItemText,{primary:o.path,slotProps:{primary:{fontSize:"0.8rem",fontStyle:"italic",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",pr:1}}})]})})}function ce({state:o,toMode:x,onChange:g,defaultRouteIds:c}){const{t:m,locale:b}=q.useLocaleContext(),[d,P]=a.useState(!1),[f,y]=a.useState(()=>c?Object.fromEntries(c.filter(t=>!t.includes("-")).map(t=>[t,!0])):{}),[u,L]=a.useState({}),[k,h]=a.useState(()=>c?Object.fromEntries(c.filter(t=>t.includes("-")).map(t=>[t,!0])):{}),[v,R]=a.useState({}),{loading:I,error:B,value:w}=se.useAsync(()=>H.getPages({mode:x}),[x]);if(B)throw B;const j=a.useMemo(()=>o.routeIds||[],[o]),M=a.useMemo(()=>w?.pageIds||[],[w]),D=a.useMemo(()=>!j||!o.routes?[]:JSON.parse(JSON.stringify(j)).sort((n,i)=>{const r=o.routes?.[n],l=o.routes?.[i];return r?.publishedAt&&new Date(r.publishedAt).getTime()<new Date(r.updatedAt).getTime()?-1:l?.publishedAt&&new Date(l.publishedAt).getTime()<new Date(l.updatedAt).getTime()?1:new Date(r?.updatedAt??"").getTime()-new Date(l?.updatedAt??"").getTime()}),[o,j]),E=a.useMemo(()=>{if(!D)return[];if(!u)return D;const t=[...D].filter(n=>!u[n]);return Object.values(u).forEach(n=>{n.forEach(i=>{t.push(`${i.originalRouteId}-${i.paramOptionIds.join("-")}`)})}),t},[D,u]),O=a.useMemo(()=>!w||!M||!E?[]:V.default(M,E),[E,w,M]),T=a.useMemo(()=>j?[...j].concat(O):O,[j,O]),$=a.useCallback(()=>{const t={};D?.forEach(n=>{const i=o.routes?.[n];if(i&&i.params&&i.params.length>0&&i.paramsOptions&&i.paramsOptions.length>0){const r=Z.generateParamCombinations({basePath:i.path,params:i.params,routeId:i.id,paramsOptions:i.paramsOptions,currentIndex:0,currentParams:[],currentOptionIds:[],result:[]});r.length>0&&(t[i.id]=r)}}),L(t)},[D,o.routes]);a.useEffect(()=>{$()},[$]),a.useEffect(()=>{R(t=>{const n={...t};return Object.keys(u).forEach(i=>{u[i]&&u[i]?.length>0&&n[i]===void 0&&(n[i]=!0)}),n})},[u]);const W=a.useRef(!0);a.useEffect(()=>{h(t=>{const n={...t};return Object.keys(u).length===0||(Object.keys(u).forEach(i=>{const r=u[i]||[],l=d||!!f[i];r.forEach(A=>{const p=`${i}-${A.paramOptionIds.join("-")}`;W.current?n[p]=l||t[p]||!1:n[p]=l})}),W.current=!1),n})},[f,u,d]);const U=(t,n)=>{n.stopPropagation(),R(i=>{const r={...i};return r[t]=!r[t],r})},_=a.useCallback(t=>{y(n=>{const i=ee.produce(n,r=>{d?(Object.assign(r,Object.fromEntries(T.map(l=>[l,!0]))),delete r[t]):r[t]?(delete r[t],O.includes(t)&&(j||[]).filter(l=>o.pages[l]?.slug===w?.pages[t]?.slug).forEach(l=>{delete r[l]})):(r[t]=!0,j&&j.includes(t)&&O.filter(l=>w?.pages[l]?.slug===o.pages[t]?.slug).forEach(l=>{r[l]=!0}))});return P(V.default(T,Object.keys(i)).length===0),i})},[d,T,O,o,w,j]),G=a.useCallback((t,n)=>{const i=`${t}-${n.paramOptionIds.join("-")}`;h(r=>{const l={...r};l[i]=!l[i];const A=u[t]?.every(p=>l[`${t}-${p.paramOptionIds.join("-")}`])??!1;return y(p=>{if(A&&!p[t])return{...p,[t]:!0};if(!A&&p[t]){const S={...p};return delete S[t],S}return p}),l})},[u]),Q=a.useCallback(()=>{P(t=>(t&&y({}),!t))},[]);return a.useEffect(()=>{const t=d?T:Object.keys(f),n=Object.entries(k).filter(([,r])=>r).map(([r])=>r).filter(r=>r!==void 0),i=Array.from(new Set([...t,...n]));g(d?null:i)},[d,f,k,T,g]),I?e.jsx(ne.Loading,{sx:{my:4}}):e.jsxs(s.List,{disablePadding:!0,sx:{maxWidth:700},children:[e.jsx(s.ListItem,{sx:{position:"sticky",top:0,zIndex:1},disablePadding:!0,children:e.jsxs(s.ListItemButton,{onClick:Q,dense:!0,children:[e.jsx(s.ListItemIcon,{children:e.jsx(s.Checkbox,{edge:"start",checked:d,tabIndex:-1})}),e.jsx(s.ListItemText,{primary:m("common.all")})]})}),D.map(t=>{const n=o.routes?.[t];if(!n)return null;const i=!1,r=u&&u[t]&&u[t]?.length>0,l=v[t]!==!1,A=u[t]||[],p=!n.publishedAt||n.updatedAt&&new Date(n.updatedAt).getTime()>new Date(n.publishedAt).getTime();return e.jsxs(s.Box,{children:[e.jsx(s.ListItem,{sx:{pr:4},disablePadding:!0,secondaryAction:e.jsxs(s.Box,{sx:{display:"flex",alignItems:"center"},children:[p&&e.jsx(s.Tooltip,{title:m("maker.pages.needPublish"),children:e.jsx(C.Sync,{fontSize:"small",sx:{color:"warning.main",fontSize:16,mr:.35}})}),!n.isPublic&&e.jsx(s.Tooltip,{title:m("maker.pages.notPublic"),children:e.jsx(C.VisibilityOff,{fontSize:"small",sx:{color:"warning.main",fontSize:16,mr:.35}})}),i,r&&e.jsx(s.Box,{onClick:S=>U(t,S),sx:{display:"inline-flex",alignItems:"center",mr:.35,cursor:"pointer",color:"info.main"},children:l?e.jsx(C.KeyboardArrowDown,{fontSize:"small",sx:{fontSize:"18px"}}):e.jsx(C.KeyboardArrowRight,{fontSize:"small",sx:{fontSize:"18px"}})})]}),children:e.jsxs(s.ListItemButton,{onClick:()=>_(t),dense:!0,children:[e.jsx(s.ListItemIcon,{children:e.jsx(s.Checkbox,{edge:"start",checked:d||!!f[t],tabIndex:-1})}),e.jsx(s.ListItemText,{primary:n.path,slotProps:{primary:{noWrap:!0,textOverflow:"ellipsis"},secondary:{noWrap:!0,textOverflow:"ellipsis"}}})]})}),r&&e.jsx(s.Collapse,{in:l,children:e.jsx(s.Box,{children:A.map(S=>{const K=`${t}-${S.paramOptionIds.join("-")}`,X=k[K]||!1;return e.jsx(le,{routePathInfo:S,checked:d||X,onClick:()=>G(t,S),route:n},K)})})})]},t)}),O.map(t=>{const n=w?.pages[t];return n?e.jsx(s.ListItem,{disablePadding:!0,secondaryAction:e.jsx(s.Chip,{color:"warning",label:"deleted",size:"small"}),children:e.jsxs(s.ListItemButton,{onClick:()=>_(t),dense:!0,children:[e.jsx(s.ListItemIcon,{children:e.jsx(s.Checkbox,{edge:"start",checked:d||!!f[t],tabIndex:-1})}),e.jsx(s.ListItemText,{primary:n.slug,secondary:n.locales?.[b]?.title,slotProps:{primary:{noWrap:!0,textOverflow:"ellipsis"},secondary:{noWrap:!0,textOverflow:"ellipsis"}}})]})},t):null})]})}exports.default=ae;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),N=require("./state-tEydRMV8.js"),q=require("@arcblock/ux/lib/Locale/context"),Y=require("@arcblock/ux/lib/Toast"),Z=require("@blocklet/pages-kit/utils/route"),C=require("@mui/icons-material"),F=require("@mui/lab"),s=require("@mui/material"),ee=require("immer"),te=require("lodash/difference"),a=require("react"),se=require("react-use"),ne=require("./home-DtcV9AQz.js"),H=require("./index-B5nhwNMT.js"),J=o=>o&&o.__esModule?o:{default:o},z=J(Y),V=J(te);function ie(o){const[x,g]=a.useState(!1);return e.jsx(F.LoadingButton,{...o,loading:o.loading||x,onClick:c=>{const m=o.onClick?.(c);m instanceof Promise&&(g(!0),m.finally(()=>{g(!1)}))}})}const oe=s.createSvgIcon(e.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[e.jsx("path",{d:"M7.75732 16.2426L16.2426 7.75736",stroke:"#4B5563",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),e.jsx("path",{d:"M16.2426 16.2426L7.75732 7.75735",stroke:"#4B5563",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]}),"Close");function re(){const[o,x]=a.useState(),g=a.useMemo(()=>o?e.jsx(s.Dialog,{...o}):null,[o]),c=a.useCallback(()=>{x(void 0)},[]),m=a.useCallback(({title:b,content:d,cancelText:P="Cancel",okText:f="Ok",onOk:y,onClose:u,okIcon:L,okColor:k="primary",cancelColor:h="primary",DialogContentProps:v,form:R,...I})=>{x({...I,open:!0,children:e.jsxs("form",{onSubmit:B=>B.preventDefault(),children:[b&&e.jsxs(s.DialogTitle,{className:"between",zIndex:"appBar",bgcolor:"background.paper",sx:{borderBottom:B=>`1px solid ${B.palette.divider}`},children:[e.jsx(s.Box,{children:b}),e.jsx(s.IconButton,{size:"small",onClick:async()=>{c(),u?.()},children:e.jsx(oe,{})})]}),d&&e.jsx(s.DialogContent,{...v,sx:{mt:-3,...v?.sx,bgcolor:"background.paper"},children:e.jsx(s.Box,{sx:{pt:3},children:d})}),e.jsxs(s.DialogActions,{sx:{bgcolor:"background.paper"},children:[e.jsx(s.Button,{variant:"outlined",color:h||"primary",onClick:u??c,children:P}),e.jsx(ie,{variant:"contained",color:k||"primary",startIcon:L,loadingPosition:L?"start":"center",onClick:async()=>{await y?.(),c()},type:"submit",children:f})]})]}),onClose:u??c})},[c]);return{dialog:g,showDialog:m,closeDialog:c}}const ae=({ref:o,mode:x,state:g})=>{const{t:c}=q.useLocaleContext(),[m,b]=a.useState(!1),{dialog:d,showDialog:P}=re(),f=N.useProjectId(),y=a.useCallback(L=>{let k=[];P({title:c("maker.publishToProduction"),content:e.jsxs(s.Box,{sx:{minWidth:300},children:[e.jsx(s.Alert,{color:"warning",icon:e.jsx(C.Warning,{}),children:c("maker.publishToProductionTip")}),e.jsx(s.Box,{sx:{maxHeight:"50vh",overflow:"auto",mt:2},children:e.jsx(ce,{state:g,toMode:x,onChange:h=>k=h,defaultRouteIds:L})})]}),okText:c("maker.publish"),cancelText:c("common.cancel"),onOk:async()=>{if(k?.length===0){const h=c("maker.publishSelectPagesMessage");throw z.default.error(h),new Error(h)}localStorage.setItem(N.getProjectPageVersionKey(f??""),String(new Date().getTime())),b(!0);try{await H.publishPages({mode:x,routes:k}),z.default.success(c("maker.publishSuccessMessage"))}catch(h){throw z.default.error(h.message),h}finally{b(!1)}}})},[x,g,c,f,P]);a.useImperativeHandle(o,()=>({openPublishDialog:y}));const u=a.useCallback(()=>{y()},[y]);return e.jsxs(e.Fragment,{children:[e.jsx(F.LoadingButton,{color:"primary",variant:"contained",size:"small",sx:{mr:1},onClick:u,loading:m,disabled:m,children:c("maker.publish")}),d]})};function le({routePathInfo:o,checked:x,onClick:g,route:c}){const{t:m}=q.useLocaleContext(),b=!o.routeMetaData?.publishedAt||o.routeMetaData?.updatedAt&&new Date(o.routeMetaData?.updatedAt)>new Date(o.routeMetaData?.publishedAt);return e.jsx(s.ListItem,{sx:{pl:4,pr:3},disablePadding:!0,secondaryAction:e.jsxs(s.Box,{sx:{display:"flex",alignItems:"center",minWidth:"auto"},children:[b&&e.jsx(s.Box,{className:"visible",title:m("maker.pages.needPublish"),sx:{mr:.35,color:"warning.main",display:"flex",alignItems:"center"},children:e.jsx(s.Tooltip,{title:m("maker.pages.needPublish"),children:e.jsx(C.Sync,{fontSize:"small",sx:{fontSize:"16px"}})})}),(!o.routeMetaData?.isPublic||!c.isPublic)&&e.jsx(s.Box,{className:"visible",sx:{color:"warning.main"},children:e.jsx(s.Tooltip,{title:m("maker.pages.notPublic"),children:e.jsx(C.VisibilityOff,{fontSize:"small",sx:{fontSize:"16px"}})})})]}),children:e.jsxs(s.ListItemButton,{onClick:g,dense:!0,children:[e.jsx(s.ListItemIcon,{children:e.jsx(s.Checkbox,{edge:"start",checked:x,tabIndex:-1})}),e.jsx(s.ListItemText,{primary:o.path,slotProps:{primary:{fontSize:"0.8rem",fontStyle:"italic",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",pr:1}}})]})})}function ce({state:o,toMode:x,onChange:g,defaultRouteIds:c}){const{t:m,locale:b}=q.useLocaleContext(),[d,P]=a.useState(!1),[f,y]=a.useState(()=>c?Object.fromEntries(c.filter(t=>!t.includes("-")).map(t=>[t,!0])):{}),[u,L]=a.useState({}),[k,h]=a.useState(()=>c?Object.fromEntries(c.filter(t=>t.includes("-")).map(t=>[t,!0])):{}),[v,R]=a.useState({}),{loading:I,error:B,value:w}=se.useAsync(()=>H.getPages({mode:x}),[x]);if(B)throw B;const j=a.useMemo(()=>o.routeIds||[],[o]),M=a.useMemo(()=>w?.pageIds||[],[w]),D=a.useMemo(()=>!j||!o.routes?[]:JSON.parse(JSON.stringify(j)).sort((n,i)=>{const r=o.routes?.[n],l=o.routes?.[i];return r?.publishedAt&&new Date(r.publishedAt).getTime()<new Date(r.updatedAt).getTime()?-1:l?.publishedAt&&new Date(l.publishedAt).getTime()<new Date(l.updatedAt).getTime()?1:new Date(r?.updatedAt??"").getTime()-new Date(l?.updatedAt??"").getTime()}),[o,j]),E=a.useMemo(()=>{if(!D)return[];if(!u)return D;const t=[...D].filter(n=>!u[n]);return Object.values(u).forEach(n=>{n.forEach(i=>{t.push(`${i.originalRouteId}-${i.paramOptionIds.join("-")}`)})}),t},[D,u]),O=a.useMemo(()=>!w||!M||!E?[]:V.default(M,E),[E,w,M]),T=a.useMemo(()=>j?[...j].concat(O):O,[j,O]),$=a.useCallback(()=>{const t={};D?.forEach(n=>{const i=o.routes?.[n];if(i&&i.params&&i.params.length>0&&i.paramsOptions&&i.paramsOptions.length>0){const r=Z.generateParamCombinations({basePath:i.path,params:i.params,routeId:i.id,paramsOptions:i.paramsOptions,currentIndex:0,currentParams:[],currentOptionIds:[],result:[]});r.length>0&&(t[i.id]=r)}}),L(t)},[D,o.routes]);a.useEffect(()=>{$()},[$]),a.useEffect(()=>{R(t=>{const n={...t};return Object.keys(u).forEach(i=>{u[i]&&u[i]?.length>0&&n[i]===void 0&&(n[i]=!0)}),n})},[u]);const W=a.useRef(!0);a.useEffect(()=>{h(t=>{const n={...t};return Object.keys(u).length===0||(Object.keys(u).forEach(i=>{const r=u[i]||[],l=d||!!f[i];r.forEach(A=>{const p=`${i}-${A.paramOptionIds.join("-")}`;W.current?n[p]=l||t[p]||!1:n[p]=l})}),W.current=!1),n})},[f,u,d]);const U=(t,n)=>{n.stopPropagation(),R(i=>{const r={...i};return r[t]=!r[t],r})},_=a.useCallback(t=>{y(n=>{const i=ee.produce(n,r=>{d?(Object.assign(r,Object.fromEntries(T.map(l=>[l,!0]))),delete r[t]):r[t]?(delete r[t],O.includes(t)&&(j||[]).filter(l=>o.pages[l]?.slug===w?.pages[t]?.slug).forEach(l=>{delete r[l]})):(r[t]=!0,j&&j.includes(t)&&O.filter(l=>w?.pages[l]?.slug===o.pages[t]?.slug).forEach(l=>{r[l]=!0}))});return P(V.default(T,Object.keys(i)).length===0),i})},[d,T,O,o,w,j]),G=a.useCallback((t,n)=>{const i=`${t}-${n.paramOptionIds.join("-")}`;h(r=>{const l={...r};l[i]=!l[i];const A=u[t]?.every(p=>l[`${t}-${p.paramOptionIds.join("-")}`])??!1;return y(p=>{if(A&&!p[t])return{...p,[t]:!0};if(!A&&p[t]){const S={...p};return delete S[t],S}return p}),l})},[u]),Q=a.useCallback(()=>{P(t=>(t&&y({}),!t))},[]);return a.useEffect(()=>{const t=d?T:Object.keys(f),n=Object.entries(k).filter(([,r])=>r).map(([r])=>r).filter(r=>r!==void 0),i=Array.from(new Set([...t,...n]));g(d?null:i)},[d,f,k,T,g]),I?e.jsx(ne.Loading,{sx:{my:4}}):e.jsxs(s.List,{disablePadding:!0,sx:{maxWidth:700},children:[e.jsx(s.ListItem,{sx:{position:"sticky",top:0,zIndex:1},disablePadding:!0,children:e.jsxs(s.ListItemButton,{onClick:Q,dense:!0,children:[e.jsx(s.ListItemIcon,{children:e.jsx(s.Checkbox,{edge:"start",checked:d,tabIndex:-1})}),e.jsx(s.ListItemText,{primary:m("common.all")})]})}),D.map(t=>{const n=o.routes?.[t];if(!n)return null;const i=!1,r=u&&u[t]&&u[t]?.length>0,l=v[t]!==!1,A=u[t]||[],p=!n.publishedAt||n.updatedAt&&new Date(n.updatedAt).getTime()>new Date(n.publishedAt).getTime();return e.jsxs(s.Box,{children:[e.jsx(s.ListItem,{sx:{pr:4},disablePadding:!0,secondaryAction:e.jsxs(s.Box,{sx:{display:"flex",alignItems:"center"},children:[p&&e.jsx(s.Tooltip,{title:m("maker.pages.needPublish"),children:e.jsx(C.Sync,{fontSize:"small",sx:{color:"warning.main",fontSize:16,mr:.35}})}),!n.isPublic&&e.jsx(s.Tooltip,{title:m("maker.pages.notPublic"),children:e.jsx(C.VisibilityOff,{fontSize:"small",sx:{color:"warning.main",fontSize:16,mr:.35}})}),i,r&&e.jsx(s.Box,{onClick:S=>U(t,S),sx:{display:"inline-flex",alignItems:"center",mr:.35,cursor:"pointer",color:"info.main"},children:l?e.jsx(C.KeyboardArrowDown,{fontSize:"small",sx:{fontSize:"18px"}}):e.jsx(C.KeyboardArrowRight,{fontSize:"small",sx:{fontSize:"18px"}})})]}),children:e.jsxs(s.ListItemButton,{onClick:()=>_(t),dense:!0,children:[e.jsx(s.ListItemIcon,{children:e.jsx(s.Checkbox,{edge:"start",checked:d||!!f[t],tabIndex:-1})}),e.jsx(s.ListItemText,{primary:n.path,slotProps:{primary:{noWrap:!0,textOverflow:"ellipsis"},secondary:{noWrap:!0,textOverflow:"ellipsis"}}})]})}),r&&e.jsx(s.Collapse,{in:l,children:e.jsx(s.Box,{children:A.map(S=>{const K=`${t}-${S.paramOptionIds.join("-")}`,X=k[K]||!1;return e.jsx(le,{routePathInfo:S,checked:d||X,onClick:()=>G(t,S),route:n},K)})})})]},t)}),O.map(t=>{const n=w?.pages[t];return n?e.jsx(s.ListItem,{disablePadding:!0,secondaryAction:e.jsx(s.Chip,{color:"warning",label:"deleted",size:"small"}),children:e.jsxs(s.ListItemButton,{onClick:()=>_(t),dense:!0,children:[e.jsx(s.ListItemIcon,{children:e.jsx(s.Checkbox,{edge:"start",checked:d||!!f[t],tabIndex:-1})}),e.jsx(s.ListItemText,{primary:n.slug,secondary:n.locales?.[b]?.title,slotProps:{primary:{noWrap:!0,textOverflow:"ellipsis"},secondary:{noWrap:!0,textOverflow:"ellipsis"}}})]})},t):null})]})}exports.default=ae;
package/lib/cjs/home.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require("react/jsx-runtime");require("./chunks/state-tEydRMV8.js");require("@arcblock/ux/lib/Locale/context");require("@arcblock/ux/lib/Result");require("@arcblock/ux/lib/Theme");require("@blocklet/pages-kit/builtin/page/header");require("@blocklet/pages-kit/contexts/color");require("@blocklet/pages-kit/utils/data-source");require("@blocklet/pages-kit/utils/route");require("@blocklet/ui-react/lib/Header");require("@emotion/css");require("@emotion/react");require("@mui/material");require("ahooks");require("isomorphic-dompurify");require("lodash/cloneDeep");require("lodash/isEmpty");require("lodash/isEqual");require("react");require("react-helmet");require("react-router-dom");require("react-use");require("ufo");require("./chunks/index-HBobmmAN.js");const e=require("./chunks/home-De44UTmv.js");require("./chunks/session-BRtsDvA-.js");exports.HomeView=e.HomeView;exports.PageRoutes=e.PageRoutes;exports.PageView=e.PageView;exports.PageViewByPath=e.PageViewByPath;exports.PageViewWithDataSource=e.PageViewWithDataSource;exports.TranslucentHeader=e.TranslucentHeader;exports.default=e.Home;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require("react/jsx-runtime");require("./chunks/state-tEydRMV8.js");require("@arcblock/ux/lib/Locale/context");require("@arcblock/ux/lib/Result");require("@arcblock/ux/lib/Theme");require("@blocklet/pages-kit/builtin/page/header");require("@blocklet/pages-kit/contexts/color");require("@blocklet/pages-kit/utils/data-source");require("@blocklet/pages-kit/utils/route");require("@blocklet/ui-react/lib/Header");require("@emotion/css");require("@emotion/react");require("@mui/material");require("ahooks");require("isomorphic-dompurify");require("lodash/cloneDeep");require("lodash/isEmpty");require("lodash/isEqual");require("react");require("react-helmet");require("react-router-dom");require("react-use");require("ufo");require("./chunks/index-B5nhwNMT.js");const e=require("./chunks/home-DtcV9AQz.js");require("./chunks/session-BRtsDvA-.js");exports.HomeView=e.HomeView;exports.PageRoutes=e.PageRoutes;exports.PageView=e.PageView;exports.PageViewByPath=e.PageViewByPath;exports.PageViewWithDataSource=e.PageViewWithDataSource;exports.TranslucentHeader=e.TranslucentHeader;exports.default=e.Home;
@@ -7,7 +7,7 @@ import te from "@mui/icons-material/Check";
7
7
  import { Box as n, styled as H, Dialog as re, DialogTitle as ie, TextField as ne, IconButton as ae, DialogContent as se, Tabs as le, Tab as pe, Grid as N, Card as de, CardMedia as ce, CardContent as me, Typography as V, DialogActions as ue, Button as $, Skeleton as fe } from "@mui/material";
8
8
  import { useReactive as Q } from "ahooks";
9
9
  import { createContext as L, useMemo as M, useEffect as A, useRef as S } from "react";
10
- import { b as be, T as he, I as ge, B as xe } from "./chunks/index-CAKG1D4b.js";
10
+ import { b as be, T as he, I as ge, B as xe } from "./chunks/index-CaKPHd8j.js";
11
11
  import { styled as m } from "@arcblock/ux/lib/Theme";
12
12
  import "@blocklet/pages-kit/builtin/color-picker";
13
13
  import "@blocklet/pages-kit/utils/style";
@@ -10,22 +10,22 @@ import { generateParamCombinations as pe } from "@blocklet/pages-kit/utils/route
10
10
  import de from "@blocklet/ui-react/lib/Header";
11
11
  import { cx as me } from "@emotion/css";
12
12
  import { Global as q, css as K } from "@emotion/react";
13
- import { Box as k, CircularProgress as ge, useTheme as Y, Button as he, Stack as fe, alpha as D, useMediaQuery as be } from "@mui/material";
13
+ import { Box as w, CircularProgress as ge, useTheme as Y, Button as he, Stack as fe, alpha as $, useMediaQuery as be } from "@mui/material";
14
14
  import { useReactive as J, useScroll as ye } from "ahooks";
15
15
  import ve from "isomorphic-dompurify";
16
16
  import O from "lodash/cloneDeep";
17
17
  import xe from "lodash/isEmpty";
18
18
  import Q from "lodash/isEqual";
19
- import { useEffect as T, lazy as X, useMemo as P, useRef as Z, Suspense as Pe, useState as we } from "react";
20
- import { Helmet as ke } from "react-helmet";
19
+ import { useEffect as T, lazy as X, useMemo as P, useRef as Z, Suspense as Pe, useState as ke } from "react";
20
+ import { Helmet as we } from "react-helmet";
21
21
  import { useSearchParams as ee, Routes as Se, Route as C, Navigate as Ce, ScrollRestoration as Ie } from "react-router-dom";
22
22
  import { useAsync as te } from "react-use";
23
- import { joinURL as w } from "ufo";
24
- import { S as Te, P as je, a as Re, B as Oe, g as Ee } from "./index-CAKG1D4b.js";
23
+ import { joinURL as k } from "ufo";
24
+ import { S as Te, P as je, a as Re, B as Oe, g as Ee } from "./index-CaKPHd8j.js";
25
25
  import Me from "@blocklet/ui-react/lib/Footer";
26
26
  import "webfontloader";
27
27
  import { u as Ae, a as Be } from "./session-C72Dq8zg.js";
28
- const Le = M(k)`
28
+ const Le = M(w)`
29
29
  display: contents;
30
30
  & > div > div > .MuiContainer-root {
31
31
  max-width: unset;
@@ -35,9 +35,9 @@ function Fe({ meta: t, ...o }) {
35
35
  const l = le();
36
36
  return /* @__PURE__ */ e(Le, { children: /* @__PURE__ */ e(Me, { ...o, meta: t, theme: l || {} }) });
37
37
  }
38
- function _e(t) {
38
+ function De(t) {
39
39
  return /* @__PURE__ */ e(
40
- k,
40
+ w,
41
41
  {
42
42
  ...t,
43
43
  sx: [
@@ -54,10 +54,10 @@ function _e(t) {
54
54
  }
55
55
  );
56
56
  }
57
- function $e(t) {
58
- return /* @__PURE__ */ e(De, { ...t });
57
+ function _e(t) {
58
+ return /* @__PURE__ */ e($e, { ...t });
59
59
  }
60
- const De = M(k)`
60
+ const $e = M(w)`
61
61
  position: fixed;
62
62
  left: 0;
63
63
  top: 0;
@@ -77,20 +77,20 @@ function He({
77
77
  const r = Y()?.typography?.fontFamily;
78
78
  T(() => {
79
79
  }, [t, o]);
80
- const s = `${r}, ${Ne}`;
80
+ const i = `${r}, ${Ne}`;
81
81
  return /* @__PURE__ */ e(
82
82
  q,
83
83
  {
84
84
  styles: K`
85
85
  #app {
86
- font-family: ${s};
86
+ font-family: ${i};
87
87
 
88
88
  .page-kit-section__title {
89
- font-family: ${s};
89
+ font-family: ${i};
90
90
  }
91
91
 
92
92
  .page-kit-section__description {
93
- font-family: ${s};
93
+ font-family: ${i};
94
94
  }
95
95
  }
96
96
  `
@@ -100,12 +100,12 @@ function He({
100
100
  function N(t) {
101
101
  return t != null;
102
102
  }
103
- function wt() {
103
+ function kt() {
104
104
  const [t] = ee(), { session: o } = Ae(), l = Be("owner", "admin", "pagesEditor", "member"), r = P(() => {
105
105
  const n = t.get("mode");
106
106
  return Te.includes(n) ? n : "production";
107
- }, [t]), s = r === "production" ? r : o.user ? l ? r : "production" : null;
108
- return s ? /* @__PURE__ */ e(ze, { mode: s }) : null;
107
+ }, [t]), i = r === "production" ? r : o.user ? l ? r : "production" : null;
108
+ return i ? /* @__PURE__ */ e(ze, { mode: i }) : null;
109
109
  }
110
110
  function ze({ mode: t }) {
111
111
  if (t !== "draft") {
@@ -114,52 +114,52 @@ function ze({ mode: t }) {
114
114
  }
115
115
  return /* @__PURE__ */ e(Ve, { children: ({ state: o }) => /* @__PURE__ */ e(F, { mode: t, state: o }) });
116
116
  }
117
- const Ue = X(() => import("./publish-button-_fKcOj1f.js")), Ve = X(() => import("./draft-data-CpCuyq4R.js"));
117
+ const Ue = X(() => import("./publish-button-BvvRgazT.js")), Ve = X(() => import("./draft-data-CpCuyq4R.js"));
118
118
  function Ge({
119
119
  mode: t,
120
120
  children: o
121
121
  }) {
122
- const r = document.querySelector('meta[property="pages:version"]')?.content, s = z(), n = P(() => {
122
+ const r = document.querySelector('meta[property="pages:version"]')?.content, i = z(), n = P(() => {
123
123
  if (r === "{{pagesPublishedAt}}") {
124
- const c = localStorage.getItem(ie(s ?? ""));
124
+ const c = localStorage.getItem(ie(i ?? ""));
125
125
  return Number(c) ? Number(c) : (/* @__PURE__ */ new Date()).getTime();
126
126
  }
127
127
  return Number(r);
128
- }, [r]), { loading: d, value: i } = te(() => Ee({ mode: t, version: n }), [t, n]);
129
- return d ? /* @__PURE__ */ e(_e, {}) : i ? o({ state: i }) : null;
128
+ }, [r]), { loading: m, value: s } = te(() => Ee({ mode: t, version: n }), [t, n]);
129
+ return m ? /* @__PURE__ */ e(De, {}) : s ? o({ state: s }) : null;
130
130
  }
131
131
  function F({ mode: t, state: o }) {
132
- const { t: l, locale: r } = V(), [s] = ee(), n = z(), d = re(), i = s.get("hiddenBadge") === "true", c = s.get("showPublish") === "true", {
132
+ const { t: l, locale: r } = V(), [i] = ee(), n = z(), m = re(), s = i.get("hiddenBadge") === "true", c = i.get("showPublish") === "true", {
133
133
  pageIds: h,
134
134
  pages: u,
135
- routeIds: p,
136
- routes: b,
137
- supportedLocales: y,
135
+ routeIds: y,
136
+ routes: p,
137
+ supportedLocales: f,
138
138
  config: { defaultLocale: v },
139
139
  resources: S
140
- } = o, f = U(o), g = P(
141
- () => y?.some((m) => m.locale === r) ? r : void 0,
142
- [r, y]
143
- ), I = Object.values(b || {}).find((m) => m?.path === "/") || Object.values(u).find((m) => m?.slug === "/") ? void 0 : Object.values(u)[0], A = P(() => t === "production" ? h.map((m) => {
144
- const a = u[m];
140
+ } = o, b = U(o), g = P(
141
+ () => f?.some((d) => d.locale === r) ? r : void 0,
142
+ [r, f]
143
+ ), I = Object.values(p || {}).find((d) => d?.path === "/") || Object.values(u).find((d) => d?.slug === "/") ? void 0 : Object.values(u)[0], A = P(() => t === "production" ? h.map((d) => {
144
+ const a = u[d];
145
145
  return a && {
146
146
  id: a.id,
147
- path: w("/", d || n || "", a.slug)
147
+ path: k("/", m || n || "", a.slug)
148
148
  };
149
- }).filter(N) : p.map((m) => {
150
- const a = b[m];
149
+ }).filter(N) : y.map((d) => {
150
+ const a = p[d];
151
151
  return a ? {
152
152
  id: a.id,
153
- path: w("/", d || n || "", a.path, `?mode=${t}&showPublish=true`)
153
+ path: k("/", m || n || "", a.path, `?mode=${t}&showPublish=true`)
154
154
  } : null;
155
- }).filter(N), [h, u, t, b, p, n, d]), j = ([...m]) => (t !== "production" && c && m.unshift(
155
+ }).filter(N), [h, u, t, p, y, n, m]), j = ([...d]) => (t !== "production" && c && d.unshift(
156
156
  /* @__PURE__ */ e(Pe, { fallback: /* @__PURE__ */ e("div", {}), children: /* @__PURE__ */ e(Ue, { ref: { current: null }, mode: "production", state: o }) })
157
- ), m);
157
+ ), d);
158
158
  return /* @__PURE__ */ R(je, { value: { pages: A }, children: [
159
159
  /* @__PURE__ */ R(Se, { children: [
160
- I && /* @__PURE__ */ e(C, { index: !0, element: /* @__PURE__ */ e(Ce, { to: w("/", g || "", I.slug) }) }),
161
- p?.map((m) => {
162
- const a = b?.[m];
160
+ I && /* @__PURE__ */ e(C, { index: !0, element: /* @__PURE__ */ e(Ce, { to: k("/", g || "", I.slug) }) }),
161
+ y?.map((d) => {
162
+ const a = p?.[d];
163
163
  if (!a || !a.displayTemplateId) return null;
164
164
  const B = u[a.displayTemplateId];
165
165
  if (!B) return null;
@@ -173,38 +173,38 @@ function F({ mode: t, state: o }) {
173
173
  currentParams: [],
174
174
  currentOptionIds: [],
175
175
  result: []
176
- })?.map((_) => {
177
- const $ = _.paramOptionIds.join("-");
176
+ })?.map((D) => {
177
+ const _ = D.paramOptionIds.join("-");
178
178
  return /* @__PURE__ */ e(
179
179
  C,
180
180
  {
181
- path: w(":projectIdOrSlug?", _.path),
181
+ path: k(":projectIdOrSlug?", D.path),
182
182
  element: /* @__PURE__ */ e(
183
183
  H,
184
184
  {
185
185
  mode: t,
186
- components: f,
186
+ components: b,
187
187
  page: B,
188
188
  locale: g,
189
189
  defaultLocale: v,
190
190
  headerAddons: j,
191
191
  state: o,
192
- pageData: a.dataSource?.pathDataMappings?.[$]?.dataCache?.[g || v || "en"]
192
+ pageData: a.dataSource?.pathDataMappings?.[_]?.dataCache?.[g || v || "en"]
193
193
  }
194
194
  )
195
195
  },
196
- $
196
+ _
197
197
  );
198
198
  })), L.push(
199
199
  /* @__PURE__ */ e(
200
200
  C,
201
201
  {
202
- path: w(":projectIdOrSlug?", a.path),
202
+ path: k(":projectIdOrSlug?", a.path),
203
203
  element: /* @__PURE__ */ e(
204
204
  H,
205
205
  {
206
206
  mode: t,
207
- components: f,
207
+ components: b,
208
208
  page: B,
209
209
  locale: g,
210
210
  defaultLocale: v,
@@ -218,17 +218,17 @@ function F({ mode: t, state: o }) {
218
218
  )
219
219
  ), L;
220
220
  }),
221
- h.map((m) => {
222
- const a = u[m];
221
+ h.map((d) => {
222
+ const a = u[d];
223
223
  return a ? /* @__PURE__ */ e(
224
224
  C,
225
225
  {
226
- path: w(":projectIdOrSlug?", a.slug),
226
+ path: k(":projectIdOrSlug?", a.slug),
227
227
  element: /* @__PURE__ */ e(
228
228
  E,
229
229
  {
230
230
  mode: t,
231
- components: f,
231
+ components: b,
232
232
  page: a,
233
233
  locale: g,
234
234
  defaultLocale: v,
@@ -239,15 +239,15 @@ function F({ mode: t, state: o }) {
239
239
  a.id
240
240
  ) : null;
241
241
  }),
242
- S.pages && Object.values(S.pages).map(({ blockletId: m, page: a }) => /* @__PURE__ */ e(
242
+ S.pages && Object.values(S.pages).map(({ blockletId: d, page: a }) => /* @__PURE__ */ e(
243
243
  C,
244
244
  {
245
- path: w("/", `@${m}`, a.slug),
245
+ path: k("/", `@${d}`, a.slug),
246
246
  element: /* @__PURE__ */ e(
247
247
  E,
248
248
  {
249
249
  mode: t,
250
- components: f,
250
+ components: b,
251
251
  page: a,
252
252
  locale: g,
253
253
  defaultLocale: v,
@@ -262,7 +262,7 @@ function F({ mode: t, state: o }) {
262
262
  {
263
263
  path: "*",
264
264
  element: /* @__PURE__ */ e(
265
- k,
265
+ w,
266
266
  {
267
267
  sx: {
268
268
  width: "100vw",
@@ -288,7 +288,7 @@ function F({ mode: t, state: o }) {
288
288
  }
289
289
  )
290
290
  ] }),
291
- t !== "production" && !i && /* @__PURE__ */ e($e, { sx: { bgcolor: "info.light" }, children: t }),
291
+ t !== "production" && !s && /* @__PURE__ */ e(_e, { sx: { bgcolor: "info.light" }, children: t }),
292
292
  /* @__PURE__ */ e(He, {})
293
293
  ] });
294
294
  }
@@ -297,10 +297,10 @@ function H({
297
297
  pageData: o,
298
298
  components: l,
299
299
  page: r,
300
- locale: s,
300
+ locale: i,
301
301
  defaultLocale: n,
302
- headerAddons: d,
303
- state: i
302
+ headerAddons: m,
303
+ state: s
304
304
  }) {
305
305
  const c = J({
306
306
  page: null
@@ -311,46 +311,46 @@ function H({
311
311
  }, [r, JSON.stringify(r), c]);
312
312
  const h = Z(void 0);
313
313
  return T(() => {
314
- Q(o, h.current) || o && c.page && (W(c.page, i, s, o), h.current = O(o));
315
- }, [c.page, o, s, i]), c.page ? /* @__PURE__ */ e(
314
+ Q(o, h.current) || o && c.page && (W(c.page, s, i, o), h.current = O(o));
315
+ }, [c.page, o, i, s]), c.page ? /* @__PURE__ */ e(
316
316
  E,
317
317
  {
318
318
  mode: t,
319
319
  components: l,
320
320
  page: c.page,
321
- locale: s,
321
+ locale: i,
322
322
  defaultLocale: n,
323
- headerAddons: d
323
+ headerAddons: m
324
324
  }
325
325
  ) : null;
326
326
  }
327
- function kt({
327
+ function wt({
328
328
  mode: t,
329
329
  state: o,
330
330
  path: l,
331
331
  pageData: r
332
332
  }) {
333
- const { t: s, locale: n } = V(), {
334
- pages: d,
335
- supportedLocales: i,
333
+ const { t: i, locale: n } = V(), {
334
+ pages: m,
335
+ supportedLocales: s,
336
336
  config: { defaultLocale: c },
337
337
  resources: h
338
- } = o, u = Object.values(d).find((f) => f?.slug === l), p = Object.values(h.pages || {}).find((f) => f.page.slug === l), b = P(
339
- () => i?.some((f) => f.locale === n) ? n : void 0,
340
- [n, i]
341
- ), y = J({
338
+ } = o, u = Object.values(m).find((b) => b?.slug === l), y = Object.values(h.pages || {}).find((b) => b.page.slug === l), p = P(
339
+ () => s?.some((b) => b.locale === n) ? n : void 0,
340
+ [n, s]
341
+ ), f = J({
342
342
  page: null
343
343
  });
344
344
  T(() => {
345
- const f = u || p?.page || null;
346
- f ? y.page = O(f) : y.page = null;
347
- }, [u, p]);
345
+ const b = u || y?.page || null;
346
+ b ? f.page = O(b) : f.page = null;
347
+ }, [u, y]);
348
348
  const v = Z(void 0);
349
349
  if (T(() => {
350
- Q(r, v.current) || r && y.page && (W(y.page, o, b, r), v.current = O(r));
351
- }, [{}]), !u && !p?.page)
350
+ Q(r, v.current) || r && f.page && (W(f.page, o, p, r), v.current = O(r));
351
+ }, [{}]), !u && !y?.page)
352
352
  return /* @__PURE__ */ e(
353
- k,
353
+ w,
354
354
  {
355
355
  sx: {
356
356
  width: "100vw",
@@ -359,17 +359,17 @@ function kt({
359
359
  justifyContent: "center",
360
360
  alignItems: "center"
361
361
  },
362
- children: /* @__PURE__ */ e(G, { style: { background: "inherit" }, status: 404, extra: /* @__PURE__ */ e(ne, { href: "/", children: s("common.back") }) })
362
+ children: /* @__PURE__ */ e(G, { style: { background: "inherit" }, status: 404, extra: /* @__PURE__ */ e(ne, { href: "/", children: i("common.back") }) })
363
363
  }
364
364
  );
365
365
  const S = U(o);
366
- return y.page ? /* @__PURE__ */ e(
366
+ return f.page ? /* @__PURE__ */ e(
367
367
  E,
368
368
  {
369
369
  mode: t,
370
370
  components: S,
371
- page: y.page,
372
- locale: b,
371
+ page: f.page,
372
+ locale: p,
373
373
  defaultLocale: c
374
374
  }
375
375
  ) : null;
@@ -379,47 +379,47 @@ function E({
379
379
  components: o,
380
380
  page: l,
381
381
  locale: r,
382
- defaultLocale: s,
382
+ defaultLocale: i,
383
383
  headerAddons: n
384
384
  }) {
385
- const d = ue(), i = l.locales?.[r] ?? l.locales?.[s] ?? {}, c = i.title || window.blocklet?.appName, h = i.description || window.blocklet?.appDescription, u = ae(se(i.image), 540), { logo: p, brand: b, description: y, ...v } = ce(), S = P(
385
+ const m = ue(), s = l.locales?.[r] ?? l.locales?.[i] ?? {}, c = s.title || window.blocklet?.appName, h = s.description || window.blocklet?.appDescription, u = ae(se(s.image), 540), { logo: y, brand: p, description: f, ...v } = ce(), S = P(
386
386
  () => (g) => {
387
387
  let x = n?.(g) ?? g;
388
388
  return x = v.addons?.(x) ?? x, x;
389
389
  },
390
390
  [v.addons, n]
391
- ), f = P(
392
- () => i.header?.translucent ? qe : oe,
393
- [i.header?.translucent]
391
+ ), b = P(
392
+ () => s.header?.translucent ? qe : oe,
393
+ [s.header?.translucent]
394
394
  );
395
- return /* @__PURE__ */ R(Re, { page: l, defaultLocale: s, currentLocale: r, children: [
395
+ return /* @__PURE__ */ R(Re, { page: l, defaultLocale: i, currentLocale: r, children: [
396
396
  /* @__PURE__ */ e(
397
397
  q,
398
398
  {
399
399
  styles: K`
400
400
  body {
401
- background-color: ${d(
402
- !i.backgroundColor || i.backgroundColor === "transparent" ? "background.default" : i.backgroundColor
401
+ background-color: ${m(
402
+ !s.backgroundColor || s.backgroundColor === "transparent" ? "background.default" : s.backgroundColor
403
403
  )} !important;
404
404
  }
405
405
  `
406
406
  }
407
407
  ),
408
408
  /* @__PURE__ */ e(
409
- f,
409
+ b,
410
410
  {
411
- hideNavMenu: !!i.header?.hideNavMenus,
412
- translucentTextColor: i.header?.translucentTextColor,
413
- ...p ? { logo: p } : {},
414
- ...b ? { brand: b } : {},
415
- ...y ? { description: y } : {},
416
- className: me(i.header?.sticky && "sticky", "page-header"),
411
+ hideNavMenu: !!s.header?.hideNavMenus,
412
+ translucentTextColor: s.header?.translucentTextColor,
413
+ ...y ? { logo: y } : {},
414
+ ...p ? { brand: p } : {},
415
+ ...f ? { description: f } : {},
416
+ className: me(s.header?.sticky && "sticky", "page-header"),
417
417
  maxWidth: !1,
418
418
  addons: S
419
419
  }
420
420
  ),
421
421
  /* @__PURE__ */ e(Ie, {}),
422
- /* @__PURE__ */ R(ke, { children: [
422
+ /* @__PURE__ */ R(we, { children: [
423
423
  /* @__PURE__ */ e("title", { children: c }),
424
424
  /* @__PURE__ */ e("meta", { name: "og:title", content: c }),
425
425
  /* @__PURE__ */ e("meta", { name: "og:description", content: h }),
@@ -444,8 +444,8 @@ function E({
444
444
  children: l.sectionIds.map((g) => {
445
445
  const x = l.sections[g];
446
446
  if (!x || x.visibility === "hidden") return null;
447
- const I = l.dataSource?.[g]?.[r], A = l.dataSource?.[g]?.[s] ?? {};
448
- return /* @__PURE__ */ e(k, { sx: { position: "relative" }, children: /* @__PURE__ */ e(
447
+ const I = l.dataSource?.[g]?.[r], A = l.dataSource?.[g]?.[i] ?? {};
448
+ return /* @__PURE__ */ e(w, { sx: { position: "relative" }, children: /* @__PURE__ */ e(
449
449
  Oe,
450
450
  {
451
451
  id: g,
@@ -458,10 +458,10 @@ function E({
458
458
  dev: t === "draft" ? {
459
459
  mode: t,
460
460
  components: o,
461
- defaultLocale: s
461
+ defaultLocale: i
462
462
  } : {
463
463
  mode: t,
464
- defaultLocale: s
464
+ defaultLocale: i
465
465
  // 用于 fallback 的 locale
466
466
  }
467
467
  },
@@ -472,7 +472,7 @@ function E({
472
472
  })
473
473
  }
474
474
  ),
475
- !i.footer?.hidden && /* @__PURE__ */ e(Fe, {})
475
+ !s.footer?.hidden && /* @__PURE__ */ e(Fe, {})
476
476
  ] });
477
477
  }
478
478
  const oe = M(de)`
@@ -482,30 +482,30 @@ const oe = M(de)`
482
482
  }
483
483
  `;
484
484
  function We({ logo: t }) {
485
- const [o, l] = we(), r = be((n) => n.breakpoints.down("sm")), { value: s } = te(() => {
485
+ const [o, l] = ke(), r = be((n) => n.breakpoints.down("sm")), { value: i } = te(() => {
486
486
  const n = new URL(
487
487
  r ? window?.blocklet?.appLogo || "/.well-known/service/blocklet/logo" : window?.blocklet?.appLogoRect || "/.well-known/service/blocklet/logo-rect",
488
488
  window.location.origin
489
489
  );
490
490
  n.searchParams.delete("imageFilter"), n.searchParams.delete("f");
491
- const d = n.toString();
492
- return new Promise((i) => {
493
- fetch(d).then((c) => {
491
+ const m = n.toString();
492
+ return new Promise((s) => {
493
+ fetch(m).then((c) => {
494
494
  c.headers.get("content-type")?.includes("svg") && c.text().then((u) => {
495
- l(u), i(null);
496
- }), i(c.url);
495
+ l(u), s(null);
496
+ }), s(c.url);
497
497
  });
498
498
  });
499
499
  }, [r]);
500
500
  if (t)
501
501
  return t;
502
502
  if (o)
503
- return /* @__PURE__ */ e(k, { sx: { filter: "initial !important" }, dangerouslySetInnerHTML: { __html: ve.sanitize(o) } });
504
- if (s) {
505
- const n = new URL(s);
503
+ return /* @__PURE__ */ e(w, { sx: { filter: "initial !important" }, dangerouslySetInnerHTML: { __html: ve.sanitize(o) } });
504
+ if (i) {
505
+ const n = new URL(i);
506
506
  n.searchParams.set("imageFilter", "convert"), n.searchParams.set("f", "png"), n.searchParams.set("h", "80");
507
- const d = n.toString();
508
- return /* @__PURE__ */ e("img", { src: d, alt: "logo" });
507
+ const m = n.toString();
508
+ return /* @__PURE__ */ e("img", { src: m, alt: "logo" });
509
509
  }
510
510
  return null;
511
511
  }
@@ -514,14 +514,14 @@ function qe({
514
514
  translucentTextColor: o,
515
515
  ...l
516
516
  }) {
517
- const s = ye(document.getElementById("app"), (p) => p.top < 1200), n = Y(), d = Math.min(s?.top ?? 0, 800), i = P(() => {
518
- let p = Math.min(d / 800, 1), b = "";
519
- return p > 0.1 ? (p = Math.max(p, 0.6), b = D(n.palette.text.primary, p)) : b = o || "#EEEEEE", {
517
+ const i = ye(document.getElementById("app"), (p) => p.top < 1200), n = Y(), m = n.palette.mode === "dark", s = Math.min(i?.top ?? 0, 800), c = P(() => {
518
+ let p = Math.min(s / 800, 1), f = "";
519
+ return p > 0.1 ? (p = Math.max(p, 0.6), f = $(n.palette.text.primary, p)) : f = o || "#EEEEEE", {
520
520
  backgroundOpacity: p,
521
- textColor: b,
521
+ textColor: f,
522
522
  isReversed: p < 0.7
523
523
  };
524
- }, [d, 800, n.palette.text.primary, o]), { backgroundOpacity: c, textColor: h, isReversed: u } = i;
524
+ }, [s, 800, n.palette.text.primary, o]), { backgroundOpacity: h, textColor: u, isReversed: y } = c;
525
525
  return /* @__PURE__ */ e(
526
526
  oe,
527
527
  {
@@ -548,8 +548,8 @@ function qe({
548
548
  zIndex: -1,
549
549
  // 置于内容下方
550
550
  // 背景样式(颜色和模糊)是固定的
551
- backgroundColor: D(n.palette.background.default, c),
552
- backdropFilter: c >= 0.6 ? "blur(10px)" : "blur(0px)",
551
+ backgroundColor: $(n.palette.background.default, h),
552
+ backdropFilter: h >= 0.6 ? "blur(10px)" : "blur(0px)",
553
553
  // **性能关键**: 只对 opacity 进行动画
554
554
  // opacity: backgroundOpacity,
555
555
  // 让 CSS 平滑地处理透明度变化
@@ -561,11 +561,11 @@ function qe({
561
561
  transition: "color 0.3s ease-in-out",
562
562
  // 覆盖子组件的颜色,使其继承父级的 `color`
563
563
  ".navmenu-root>.navmenu-sub>span,\n .navmenu-root>.navmenu-item,\n .header-addons>button,\n .header-addons>a,\n .header-addons>div>button": {
564
- color: `${h} !important`
564
+ color: `${u} !important`
565
565
  // 使用 inherit 来同步颜色
566
566
  },
567
567
  ".header-logo": {
568
- color: `${h} !important`
568
+ color: `${u} !important`
569
569
  },
570
570
  "& .navmenu--horizontal": {
571
571
  bgcolor: "transparent !important"
@@ -574,7 +574,8 @@ function qe({
574
574
  // filter 也是一个较昂贵的属性,但其影响远小于背景色的重绘
575
575
  // 这里的逻辑保持不变,但可以考虑是否有更优的方案(如提供两个颜色的 Logo)
576
576
  ".header-logo > div": {
577
- filter: `invert(${u ? 1 : 0})`,
577
+ // 暗黑模式不做反转
578
+ filter: m ? "unset" : `invert(${y ? 1 : 0})`,
578
579
  transition: "filter 0.3s ease-in-out"
579
580
  }
580
581
  }
@@ -583,12 +584,12 @@ function qe({
583
584
  }
584
585
  const ne = M(he)``;
585
586
  export {
586
- wt as H,
587
- _e as L,
587
+ kt as H,
588
+ De as L,
588
589
  F as P,
589
590
  qe as T,
590
591
  ze as a,
591
592
  H as b,
592
- kt as c,
593
+ wt as c,
593
594
  E as d
594
595
  };
@@ -2032,7 +2032,8 @@ function Dn(t) {
2032
2032
  function Qn({ ref: t = void 0, type: e, sx: o, children: n, ...r }) {
2033
2033
  const a = Ft(), A = a.palette.mode === "dark", l = Ht(a.breakpoints.down("sm")) ? 20 : 32, c = {
2034
2034
  overflow: "hidden !important",
2035
- display: "grid !important"
2035
+ display: "grid !important",
2036
+ boxSizing: "border-box"
2036
2037
  }, d = "layout-block-frame", u = [c, ...Array.isArray(o) ? o : [o]];
2037
2038
  return H(() => {
2038
2039
  const g = so(e || ""), b = lo(e || "");
@@ -2069,7 +2070,6 @@ function Qn({ ref: t = void 0, type: e, sx: o, children: n, ...r }) {
2069
2070
  return /* @__PURE__ */ y(
2070
2071
  m,
2071
2072
  {
2072
- className: d,
2073
2073
  sx: {
2074
2074
  width: "100%",
2075
2075
  height: "100%",
@@ -2181,6 +2181,7 @@ function Qn({ ref: t = void 0, type: e, sx: o, children: n, ...r }) {
2181
2181
  m,
2182
2182
  {
2183
2183
  ref: t,
2184
+ className: d,
2184
2185
  sx: [
2185
2186
  ...u,
2186
2187
  {
@@ -10,8 +10,8 @@ import { produce as De } from "immer";
10
10
  import Z from "lodash/difference";
11
11
  import { useState as D, useMemo as C, useCallback as O, useImperativeHandle as Oe, useEffect as E, useRef as Ae } from "react";
12
12
  import { useAsync as je } from "react-use";
13
- import { L as ve } from "./home-BjesPkW0.js";
14
- import { p as Ce, g as Re } from "./index-CAKG1D4b.js";
13
+ import { L as ve } from "./home-CP6-1N2p.js";
14
+ import { p as Ce, g as Re } from "./index-CaKPHd8j.js";
15
15
  function ze(s) {
16
16
  const [u, g] = D(!1);
17
17
  return /* @__PURE__ */ t(
package/lib/es/home.js CHANGED
@@ -21,8 +21,8 @@ import "react-helmet";
21
21
  import "react-router-dom";
22
22
  import "react-use";
23
23
  import "ufo";
24
- import "./chunks/index-CAKG1D4b.js";
25
- import { a as R, P as S, d as W, c as j, b as k, T as q, H as v } from "./chunks/home-BjesPkW0.js";
24
+ import "./chunks/index-CaKPHd8j.js";
25
+ import { a as R, P as S, d as W, c as j, b as k, T as q, H as v } from "./chunks/home-CP6-1N2p.js";
26
26
  import "./chunks/session-C72Dq8zg.js";
27
27
  export {
28
28
  R as HomeView,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@blocklet/pages-kit-inner-components",
3
- "version": "0.6.25",
3
+ "version": "0.6.26",
4
4
  "description": "Pages Kit inner components library",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -71,20 +71,20 @@
71
71
  "dependencies": {
72
72
  "@arcblock/did-auth": "^1.21.0",
73
73
  "@arcblock/did-auth-storage-nedb": "^1.7.1",
74
- "@arcblock/did-connect": "^3.0.36",
75
- "@arcblock/react-hooks": "^3.0.36",
76
- "@arcblock/ux": "^3.0.36",
77
- "@blocklet/ai-runtime": "^0.4.276",
78
- "@blocklet/aigne-hub": "^0.2.19",
79
- "@blocklet/code-editor": "^0.4.276",
74
+ "@arcblock/did-connect": "^3.0.37",
75
+ "@arcblock/react-hooks": "^3.0.37",
76
+ "@arcblock/ux": "^3.0.37",
77
+ "@blocklet/ai-runtime": "^0.4.277",
78
+ "@blocklet/aigne-hub": "^0.2.24",
79
+ "@blocklet/code-editor": "^0.4.277",
80
80
  "@blocklet/embed": "^0.2.5",
81
81
  "@blocklet/js-sdk": "^1.16.46",
82
82
  "@blocklet/logger": "1.16.44",
83
- "@blocklet/quickjs": "^0.4.276",
83
+ "@blocklet/quickjs": "^0.4.277",
84
84
  "@blocklet/sdk": "^1.16.46",
85
- "@blocklet/studio-ui": "^0.4.276",
85
+ "@blocklet/studio-ui": "^0.4.277",
86
86
  "@blocklet/tracker": "^1.16.46",
87
- "@blocklet/ui-react": "^3.0.36",
87
+ "@blocklet/ui-react": "^3.0.37",
88
88
  "@blocklet/uploader": "^0.2.4",
89
89
  "@blocklet/uploader-server": "^0.2.2",
90
90
  "@emotion/cache": "^11.14.0",
@@ -203,8 +203,8 @@
203
203
  "yaml": "^2.5.0",
204
204
  "yjs": "^13.6.18",
205
205
  "zustand": "^4.5.5",
206
- "@blocklet/pages-kit": "^0.6.25",
207
- "@blocklet/pages-kit-block-studio": "^0.6.25"
206
+ "@blocklet/pages-kit": "^0.6.26",
207
+ "@blocklet/pages-kit-block-studio": "^0.6.26"
208
208
  },
209
209
  "devDependencies": {
210
210
  "@trivago/prettier-plugin-sort-imports": "^5.2.1",
@@ -1,39 +0,0 @@
1
- "use strict";const e=require("react/jsx-runtime"),k=require("./state-tEydRMV8.js"),$=require("@arcblock/ux/lib/Locale/context"),te=require("@arcblock/ux/lib/Result"),M=require("@arcblock/ux/lib/Theme"),ne=require("@blocklet/pages-kit/builtin/page/header"),oe=require("@blocklet/pages-kit/contexts/color"),G=require("@blocklet/pages-kit/utils/data-source"),re=require("@blocklet/pages-kit/utils/route"),se=require("@blocklet/ui-react/lib/Header"),ae=require("@emotion/css"),B=require("@emotion/react"),j=require("@mui/material"),F=require("ahooks"),ie=require("isomorphic-dompurify"),ce=require("lodash/cloneDeep"),le=require("lodash/isEmpty"),ue=require("lodash/isEqual"),p=require("react"),de=require("react-helmet"),P=require("react-router-dom"),W=require("react-use"),S=require("ufo"),_=require("./index-HBobmmAN.js"),pe=require("@blocklet/ui-react/lib/Footer");require("webfontloader");const z=require("./session-BRtsDvA-.js"),R=t=>t&&t.__esModule?t:{default:t},K=R(te),ge=R(se),me=R(ie),L=R(ce),he=R(le),Y=R(ue),fe=R(pe),xe=M.styled(j.Box)`
2
- display: contents;
3
- & > div > div > .MuiContainer-root {
4
- max-width: unset;
5
- }
6
- `;function je({meta:t,...n}){const c=M.useTheme();return e.jsx(xe,{children:e.jsx(fe.default,{...n,meta:t,theme:c||{}})})}function J(t){return e.jsx(j.Box,{...t,sx:[{display:"flex",flex:1,height:"100%",alignItems:"center",justifyContent:"center"},...Array.isArray(t.sx)?t.sx:[t.sx]],children:e.jsx(j.CircularProgress,{size:30})})}function ye(t){return e.jsx(be,{...t})}const be=M.styled(j.Box)`
7
- position: fixed;
8
- left: 0;
9
- top: 0;
10
- z-index: 999999999999;
11
- width: 80px;
12
- font-size: 12px;
13
- text-align: center;
14
- opacity: 0.7;
15
- transform: translateX(-23%) translateY(70%) rotate(-45deg);
16
- pointer-events: none;
17
- `,ve=`Avenir, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial,
18
- sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol'`;function Pe({titleFontFamily:t,descriptionFontFamily:n}){const r=j.useTheme()?.typography?.fontFamily;p.useEffect(()=>{},[t,n]);const a=`${r}, ${ve}`;return e.jsx(B.Global,{styles:B.css`
19
- #app {
20
- font-family: ${a};
21
-
22
- .page-kit-section__title {
23
- font-family: ${a};
24
- }
25
-
26
- .page-kit-section__description {
27
- font-family: ${a};
28
- }
29
- }
30
- `})}function V(t){return t!=null}function we(){const[t]=P.useSearchParams(),{session:n}=z.useSessionContext(),c=z.useIsRoleOrMultiTenant("owner","admin","pagesEditor","member"),r=p.useMemo(()=>{const o=t.get("mode");return _.STATE_MODES.includes(o)?o:"production"},[t]),a=r==="production"?r:n.user?c?r:"production":null;return a?e.jsx(Q,{mode:a}):null}function Q({mode:t}){if(t!=="draft"){const n=window.__PAGE_STATE__;return n?e.jsx(E,{mode:t,state:n}):e.jsx(Re,{mode:t,children:({state:c})=>e.jsx(E,{mode:t,state:c})})}return e.jsx(Se,{children:({state:n})=>e.jsx(E,{mode:t,state:n})})}const ke=p.lazy(()=>Promise.resolve().then(()=>require("./publish-button-CKl6GVGg.js"))),Se=p.lazy(()=>Promise.resolve().then(()=>require("./draft-data-BM4piqW0.js")));function Re({mode:t,children:n}){const r=document.querySelector('meta[property="pages:version"]')?.content,a=k.useProjectId(),o=p.useMemo(()=>{if(r==="{{pagesPublishedAt}}"){const l=localStorage.getItem(k.getProjectPageVersionKey(a??""));return Number(l)?Number(l):new Date().getTime()}return Number(r)},[r]),{loading:g,value:i}=W.useAsync(()=>_.getPages({mode:t,version:o}),[t,o]);return g?e.jsx(J,{}):i?n({state:i}):null}function E({mode:t,state:n}){const{t:c,locale:r}=$.useLocaleContext(),[a]=P.useSearchParams(),o=k.useProjectId(),g=k.useProjectSlug(),i=a.get("hiddenBadge")==="true",l=a.get("showPublish")==="true",{pageIds:f,pages:u,routeIds:d,routes:y,supportedLocales:b,config:{defaultLocale:v},resources:C}=n,x=k.getAllComponents(n),h=p.useMemo(()=>b?.some(m=>m.locale===r)?r:void 0,[r,b]),q=Object.values(y||{}).find(m=>m?.path==="/")||Object.values(u).find(m=>m?.slug==="/")?void 0:Object.values(u)[0],O=p.useMemo(()=>t==="production"?f.map(m=>{const s=u[m];return s&&{id:s.id,path:S.joinURL("/",g||o||"",s.slug)}}).filter(V):d.map(m=>{const s=y[m];return s?{id:s.id,path:S.joinURL("/",g||o||"",s.path,`?mode=${t}&showPublish=true`)}:null}).filter(V),[f,u,t,y,d,o,g]),T=([...m])=>(t!=="production"&&l&&m.unshift(e.jsx(p.Suspense,{fallback:e.jsx("div",{}),children:e.jsx(ke,{ref:{current:null},mode:"production",state:n})})),m);return e.jsxs(_.Provider,{value:{pages:O},children:[e.jsxs(P.Routes,{children:[q&&e.jsx(P.Route,{index:!0,element:e.jsx(P.Navigate,{to:S.joinURL("/",h||"",q.slug)})}),d?.map(m=>{const s=y?.[m];if(!s||!s.displayTemplateId)return null;const A=u[s.displayTemplateId];if(!A)return null;let D=[];return s.params&&s.params.length>0&&(D=re.generateParamCombinations({basePath:s.path,params:s.params,routeId:s.id,paramsOptions:s.paramsOptions,currentIndex:0,currentParams:[],currentOptionIds:[],result:[]})?.map(H=>{const N=H.paramOptionIds.join("-");return e.jsx(P.Route,{path:S.joinURL(":projectIdOrSlug?",H.path),element:e.jsx(U,{mode:t,components:x,page:A,locale:h,defaultLocale:v,headerAddons:T,state:n,pageData:s.dataSource?.pathDataMappings?.[N]?.dataCache?.[h||v||"en"]})},N)})),D.push(e.jsx(P.Route,{path:S.joinURL(":projectIdOrSlug?",s.path),element:e.jsx(U,{mode:t,components:x,page:A,locale:h,defaultLocale:v,headerAddons:T,state:n,pageData:s.dataSource?.pathDataMappings?.[s.id]?.dataCache?.[h||v||"en"]})},s.id)),D}),f.map(m=>{const s=u[m];return s?e.jsx(P.Route,{path:S.joinURL(":projectIdOrSlug?",s.slug),element:e.jsx(I,{mode:t,components:x,page:s,locale:h,defaultLocale:v,headerAddons:T})},s.id):null}),C.pages&&Object.values(C.pages).map(({blockletId:m,page:s})=>e.jsx(P.Route,{path:S.joinURL("/",`@${m}`,s.slug),element:e.jsx(I,{mode:t,components:x,page:s,locale:h,defaultLocale:v,headerAddons:T})},s.id)),e.jsx(P.Route,{path:"*",element:e.jsx(j.Box,{sx:{width:"100vw",height:"100vh",display:"flex",justifyContent:"center",alignItems:"center"},children:e.jsx(K.default,{status:404,extra:e.jsx(ee,{href:"/",children:c("common.back")}),sx:{bgcolor:"transparent",width:"100%",height:"100%"}})})})]}),t!=="production"&&!i&&e.jsx(ye,{sx:{bgcolor:"info.light"},children:t}),e.jsx(Pe,{})]})}function U({mode:t,pageData:n,components:c,page:r,locale:a,defaultLocale:o,headerAddons:g,state:i}){const l=F.useReactive({page:null});p.useEffect(()=>{const u=r||null;u?l.page=L.default(u):l.page=null},[r,JSON.stringify(r),l]);const f=p.useRef(void 0);return p.useEffect(()=>{Y.default(n,f.current)||n&&l.page&&(G.setPageDataSource(l.page,i,a,n),f.current=L.default(n))},[l.page,n,a,i]),l.page?e.jsx(I,{mode:t,components:c,page:l.page,locale:a,defaultLocale:o,headerAddons:g}):null}function Ce({mode:t,state:n,path:c,pageData:r}){const{t:a,locale:o}=$.useLocaleContext(),{pages:g,supportedLocales:i,config:{defaultLocale:l},resources:f}=n,u=Object.values(g).find(x=>x?.slug===c),d=Object.values(f.pages||{}).find(x=>x.page.slug===c),y=p.useMemo(()=>i?.some(x=>x.locale===o)?o:void 0,[o,i]),b=F.useReactive({page:null});p.useEffect(()=>{const x=u||d?.page||null;x?b.page=L.default(x):b.page=null},[u,d]);const v=p.useRef(void 0);if(p.useEffect(()=>{Y.default(r,v.current)||r&&b.page&&(G.setPageDataSource(b.page,n,y,r),v.current=L.default(r))},[{}]),!u&&!d?.page)return e.jsx(j.Box,{sx:{width:"100vw",height:"100vh",display:"flex",justifyContent:"center",alignItems:"center"},children:e.jsx(K.default,{style:{background:"inherit"},status:404,extra:e.jsx(ee,{href:"/",children:a("common.back")})})});const C=k.getAllComponents(n);return b.page?e.jsx(I,{mode:t,components:C,page:b.page,locale:y,defaultLocale:l}):null}function I({mode:t,components:n,page:c,locale:r,defaultLocale:a,headerAddons:o}){const g=oe.useColorConvert(),i=c.locales?.[r]??c.locales?.[a]??{},l=i.title||window.blocklet?.appName,f=i.description||window.blocklet?.appDescription,u=k.autoResizeImage(k.getImageAbsoluteUrl(i.image),540),{logo:d,brand:y,description:b,...v}=ne.useHeaderState(),C=p.useMemo(()=>h=>{let w=o?.(h)??h;return w=v.addons?.(w)??w,w},[v.addons,o]),x=p.useMemo(()=>i.header?.translucent?Z:X,[i.header?.translucent]);return e.jsxs(_.PageProvider,{page:c,defaultLocale:a,currentLocale:r,children:[e.jsx(B.Global,{styles:B.css`
31
- body {
32
- background-color: ${g(!i.backgroundColor||i.backgroundColor==="transparent"?"background.default":i.backgroundColor)} !important;
33
- }
34
- `}),e.jsx(x,{hideNavMenu:!!i.header?.hideNavMenus,translucentTextColor:i.header?.translucentTextColor,...d?{logo:d}:{},...y?{brand:y}:{},...b?{description:b}:{},className:ae.cx(i.header?.sticky&&"sticky","page-header"),maxWidth:!1,addons:C}),e.jsx(P.ScrollRestoration,{}),e.jsxs(de.Helmet,{children:[e.jsx("title",{children:l}),e.jsx("meta",{name:"og:title",content:l}),e.jsx("meta",{name:"og:description",content:f}),e.jsx("meta",{name:"og:image",content:u}),e.jsx("meta",{name:"twitter:image:src",content:u}),e.jsx("meta",{name:"twitter:image",content:u}),e.jsx("meta",{property:"twitter:description",content:f}),e.jsx("meta",{property:"twitter:title",content:l}),e.jsx("meta",{name:"description",content:f})]}),e.jsx(j.Stack,{className:"PageView-root",sx:{flexGrow:1,"& .BlockBase-root:first-child":{pt:"0 !important"}},children:c.sectionIds.map(h=>{const w=c.sections[h];if(!w||w.visibility==="hidden")return null;const q=c.dataSource?.[h]?.[r],O=c.dataSource?.[h]?.[a]??{};return e.jsx(j.Box,{sx:{position:"relative"},children:e.jsx(_.BlockRenderer,{id:h,type:w.component,mode:t,section:w,config:{...he.default(q)?O:q,locale:r,dev:t==="draft"?{mode:t,components:n,defaultLocale:a}:{mode:t,defaultLocale:a}},page:c},h)},h)})}),!i.footer?.hidden&&e.jsx(je,{})]})}const X=M.styled(ge.default)`
35
- &.sticky {
36
- position: sticky;
37
- top: 0;
38
- }
39
- `;function qe({logo:t}){const[n,c]=p.useState(),r=j.useMediaQuery(o=>o.breakpoints.down("sm")),{value:a}=W.useAsync(()=>{const o=new URL(r?window?.blocklet?.appLogo||"/.well-known/service/blocklet/logo":window?.blocklet?.appLogoRect||"/.well-known/service/blocklet/logo-rect",window.location.origin);o.searchParams.delete("imageFilter"),o.searchParams.delete("f");const g=o.toString();return new Promise(i=>{fetch(g).then(l=>{l.headers.get("content-type")?.includes("svg")&&l.text().then(u=>{c(u),i(null)}),i(l.url)})})},[r]);if(t)return t;if(n)return e.jsx(j.Box,{sx:{filter:"initial !important"},dangerouslySetInnerHTML:{__html:me.default.sanitize(n)}});if(a){const o=new URL(a);o.searchParams.set("imageFilter","convert"),o.searchParams.set("f","png"),o.searchParams.set("h","80");const g=o.toString();return e.jsx("img",{src:g,alt:"logo"})}return null}function Z({logo:t,translucentTextColor:n,...c}){const a=F.useScroll(document.getElementById("app"),d=>d.top<1200),o=j.useTheme(),g=Math.min(a?.top??0,800),i=p.useMemo(()=>{let d=Math.min(g/800,1),y="";return d>.1?(d=Math.max(d,.6),y=j.alpha(o.palette.text.primary,d)):y=n||"#EEEEEE",{backgroundOpacity:d,textColor:y,isReversed:d<.7}},[g,800,o.palette.text.primary,n]),{backgroundOpacity:l,textColor:f,isReversed:u}=i;return e.jsx(X,{logo:e.jsx(qe,{logo:t}),...c,sx:{position:"fixed !important",top:0,left:0,right:0,zIndex:o.zIndex.appBar,backgroundColor:"transparent !important","&::before":{content:'""',position:"absolute",top:0,left:0,right:0,bottom:0,zIndex:-1,backgroundColor:j.alpha(o.palette.background.default,l),backdropFilter:l>=.6?"blur(10px)":"blur(0px)",transition:"backgroundColor 0.3s ease-in-out"},transition:"color 0.3s ease-in-out",".navmenu-root>.navmenu-sub>span,\n .navmenu-root>.navmenu-item,\n .header-addons>button,\n .header-addons>a,\n .header-addons>div>button":{color:`${f} !important`},".header-logo":{color:`${f} !important`},"& .navmenu--horizontal":{bgcolor:"transparent !important"},".header-logo > div":{filter:`invert(${u?1:0})`,transition:"filter 0.3s ease-in-out"}}})}const ee=M.styled(j.Button)``;exports.Home=we;exports.HomeView=Q;exports.Loading=J;exports.PageRoutes=E;exports.PageView=I;exports.PageViewByPath=Ce;exports.PageViewWithDataSource=U;exports.TranslucentHeader=Z;