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

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";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)`
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),me=R(se),ge=R(ie),L=R(ce),he=R(le),Y=R(ue),fe=R(pe),xe=I.styled(y.Box)`
2
2
  display: contents;
3
3
  & > div > div > .MuiContainer-root {
4
4
  max-width: unset;
@@ -27,13 +27,13 @@
27
27
  font-family: ${i};
28
28
  }
29
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`
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-BEUtazuL.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:g,value:a}=W.useAsync(()=>_.getPages({mode:t,version:o}),[t,o]);return g?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(),g=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(m=>m.locale===r)?r:void 0,[r,x]),q=Object.values(d||{}).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):b.map(m=>{const s=d[m];return s?{id:s.id,path:S.joinURL("/",g||o||"",s.path,`?mode=${t}&showPublish=true`)}:null}).filter(V),[f,u,t,d,b,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)})}),b?.map(m=>{const s=d?.[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: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(m=>{const s=u[m];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:m,page:s})=>e.jsx(P.Route,{path:S.joinURL("/",`@${m}`,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:g,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:g}):null}function Ce({mode:t,state:n,path:c,pageData:r}){const{t:i,locale:o}=$.useLocaleContext(),{pages:g,supportedLocales:a,config:{defaultLocale:l},resources:f}=n,u=Object.values(g).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 g=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
31
  body {
32
- background-color: ${m(!a.backgroundColor||a.backgroundColor==="transparent"?"background.default":a.backgroundColor)} !important;
32
+ background-color: ${g(!a.backgroundColor||a.backgroundColor==="transparent"?"background.default":a.backgroundColor)} !important;
33
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)`
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(me.default)`
35
35
  &.sticky {
36
36
  position: sticky;
37
37
  top: 0;
38
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;
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 g=o.toString();return new Promise(a=>{fetch(g).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:ge.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 g=o.toString();return e.jsx("img",{src:g,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(),g=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-addons *":{borderColor:`${u} !important`},".header-logo > div":{filter:g?"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;
@@ -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-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;
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-5seiIzIC.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-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;
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-5seiIzIC.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;
@@ -10,7 +10,7 @@ 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 w, CircularProgress as ge, useTheme as Y, Button as he, Stack as fe, alpha as $, 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";
@@ -35,7 +35,7 @@ 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 De(t) {
38
+ function $e(t) {
39
39
  return /* @__PURE__ */ e(
40
40
  w,
41
41
  {
@@ -54,10 +54,10 @@ function De(t) {
54
54
  }
55
55
  );
56
56
  }
57
- function _e(t) {
58
- return /* @__PURE__ */ e($e, { ...t });
57
+ function De(t) {
58
+ return /* @__PURE__ */ e(_e, { ...t });
59
59
  }
60
- const $e = M(w)`
60
+ const _e = M(w)`
61
61
  position: fixed;
62
62
  left: 0;
63
63
  top: 0;
@@ -114,7 +114,7 @@ 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-BvvRgazT.js")), Ve = X(() => import("./draft-data-CpCuyq4R.js"));
117
+ const Ue = X(() => import("./publish-button-DW4Kx5b_.js")), Ve = X(() => import("./draft-data-CpCuyq4R.js"));
118
118
  function Ge({
119
119
  mode: t,
120
120
  children: o
@@ -126,7 +126,7 @@ function Ge({
126
126
  }
127
127
  return Number(r);
128
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;
129
+ return m ? /* @__PURE__ */ e($e, {}) : s ? o({ state: s }) : null;
130
130
  }
131
131
  function F({ mode: t, state: o }) {
132
132
  const { t: l, locale: r } = V(), [i] = ee(), n = z(), m = re(), s = i.get("hiddenBadge") === "true", c = i.get("showPublish") === "true", {
@@ -173,12 +173,12 @@ function F({ mode: t, state: o }) {
173
173
  currentParams: [],
174
174
  currentOptionIds: [],
175
175
  result: []
176
- })?.map((D) => {
177
- const _ = D.paramOptionIds.join("-");
176
+ })?.map(($) => {
177
+ const D = $.paramOptionIds.join("-");
178
178
  return /* @__PURE__ */ e(
179
179
  C,
180
180
  {
181
- path: k(":projectIdOrSlug?", D.path),
181
+ path: k(":projectIdOrSlug?", $.path),
182
182
  element: /* @__PURE__ */ e(
183
183
  H,
184
184
  {
@@ -189,11 +189,11 @@ function F({ mode: t, state: o }) {
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?.[D]?.dataCache?.[g || v || "en"]
193
193
  }
194
194
  )
195
195
  },
196
- _
196
+ D
197
197
  );
198
198
  })), L.push(
199
199
  /* @__PURE__ */ e(
@@ -288,7 +288,7 @@ function F({ mode: t, state: o }) {
288
288
  }
289
289
  )
290
290
  ] }),
291
- t !== "production" && !s && /* @__PURE__ */ e(_e, { sx: { bgcolor: "info.light" }, children: t }),
291
+ t !== "production" && !s && /* @__PURE__ */ e(De, { sx: { bgcolor: "info.light" }, children: t }),
292
292
  /* @__PURE__ */ e(He, {})
293
293
  ] });
294
294
  }
@@ -516,7 +516,7 @@ function qe({
516
516
  }) {
517
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
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", {
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
521
  textColor: f,
522
522
  isReversed: p < 0.7
@@ -548,7 +548,7 @@ function qe({
548
548
  zIndex: -1,
549
549
  // 置于内容下方
550
550
  // 背景样式(颜色和模糊)是固定的
551
- backgroundColor: $(n.palette.background.default, h),
551
+ backgroundColor: _(n.palette.background.default, h),
552
552
  backdropFilter: h >= 0.6 ? "blur(10px)" : "blur(0px)",
553
553
  // **性能关键**: 只对 opacity 进行动画
554
554
  // opacity: backgroundOpacity,
@@ -570,6 +570,9 @@ function qe({
570
570
  "& .navmenu--horizontal": {
571
571
  bgcolor: "transparent !important"
572
572
  },
573
+ ".header-addons *": {
574
+ borderColor: `${u} !important`
575
+ },
573
576
  // --- Logo 反色效果 ---
574
577
  // filter 也是一个较昂贵的属性,但其影响远小于背景色的重绘
575
578
  // 这里的逻辑保持不变,但可以考虑是否有更优的方案(如提供两个颜色的 Logo)
@@ -585,7 +588,7 @@ function qe({
585
588
  const ne = M(he)``;
586
589
  export {
587
590
  kt as H,
588
- De as L,
591
+ $e as L,
589
592
  F as P,
590
593
  qe as T,
591
594
  ze as a,
@@ -10,7 +10,7 @@ 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-CP6-1N2p.js";
13
+ import { L as ve } from "./home-DMj5Sehr.js";
14
14
  import { p as Ce, g as Re } from "./index-CaKPHd8j.js";
15
15
  function ze(s) {
16
16
  const [u, g] = D(!1);
package/lib/es/home.js CHANGED
@@ -22,7 +22,7 @@ import "react-router-dom";
22
22
  import "react-use";
23
23
  import "ufo";
24
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";
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-DMj5Sehr.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.26",
3
+ "version": "0.6.27",
4
4
  "description": "Pages Kit inner components library",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -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.26",
207
- "@blocklet/pages-kit-block-studio": "^0.6.26"
206
+ "@blocklet/pages-kit": "^0.6.27",
207
+ "@blocklet/pages-kit-block-studio": "^0.6.27"
208
208
  },
209
209
  "devDependencies": {
210
210
  "@trivago/prettier-plugin-sort-imports": "^5.2.1",