@blocklet/pages-kit-inner-components 0.4.116 → 0.4.118
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/add-component.js +8 -8
- package/lib/cjs/chunks/array-CeBRUkLo.js +441 -0
- package/lib/cjs/chunks/{config-color-C8L0QSPJ.js → config-color-C8kj-s2C.js} +1 -1
- package/lib/cjs/chunks/{draft-data-DPTVTTlh.js → draft-data-CRdesc3Z.js} +1 -1
- package/lib/cjs/chunks/home-DpGYsQ1r.js +38 -0
- package/lib/cjs/chunks/publish-button-DXSPVfAC.js +1 -0
- package/lib/cjs/chunks/site-state-BMf96RZL.js +57 -0
- package/lib/cjs/chunks/state-oc52fQ0j.js +1 -0
- package/lib/cjs/components.js +1 -1
- package/lib/cjs/home.js +1 -1
- package/lib/cjs/locales.js +1 -1
- package/lib/cjs/project-html.js +1 -1
- package/lib/cjs/resources.js +1 -1
- package/lib/cjs/setting.js +1 -1
- package/lib/cjs/site-state.js +1 -1
- package/lib/es/add-component.js +125 -120
- package/lib/es/chunks/array-k2vnX696.js +1966 -0
- package/lib/es/chunks/{config-color-JrBPRsTv.js → config-color-CXt_ZsC_.js} +1 -1
- package/lib/es/chunks/{draft-data-BFlmvWXx.js → draft-data-BwyMBf8Y.js} +1 -1
- package/lib/es/chunks/home-DAvVGR8Z.js +505 -0
- package/lib/es/chunks/publish-button-CxrZAPBF.js +295 -0
- package/lib/es/chunks/site-state-kjir-UCL.js +1718 -0
- package/lib/es/chunks/state-Dz3GnGWC.js +437 -0
- package/lib/es/components.js +1 -1
- package/lib/es/home.js +10 -8
- package/lib/es/locales.js +81 -17
- package/lib/es/project-html.js +1 -1
- package/lib/es/resources.js +1 -1
- package/lib/es/setting.js +2 -2
- package/lib/es/site-state.js +13 -12
- package/package.json +9 -9
- package/lib/cjs/chunks/array-BwGaBJVb.js +0 -513
- package/lib/cjs/chunks/home-CXupaCeO.js +0 -38
- package/lib/cjs/chunks/publish-button-TrJpN62K.js +0 -1
- package/lib/cjs/chunks/site-state-D15mduKB.js +0 -57
- package/lib/cjs/chunks/state-DDwYX2mu.js +0 -1
- package/lib/es/chunks/array-Chju-apt.js +0 -2142
- package/lib/es/chunks/home-47HCvpbj.js +0 -475
- package/lib/es/chunks/publish-button-DhT2I-bw.js +0 -282
- package/lib/es/chunks/site-state-DJ_KkVbi.js +0 -1548
- package/lib/es/chunks/state-BgKqNapt.js +0 -425
package/lib/cjs/add-component.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var XI=Object.create;var
|
|
1
|
+
"use strict";var XI=Object.create;var CI=Object.defineProperty;var TI=Object.getOwnPropertyDescriptor;var WI=Object.getOwnPropertyNames;var xI=Object.getPrototypeOf,YI=Object.prototype.hasOwnProperty;var rI=(C,s,w,A)=>{if(s&&typeof s=="object"||typeof s=="function")for(let o of WI(s))!YI.call(C,o)&&o!==w&&CI(C,o,{get:()=>s[o],enumerable:!(A=TI(s,o))||A.enumerable});return C};var hI=(C,s,w)=>(w=C!=null?XI(xI(C)):{},rI(s||!C||!C.__esModule?CI(w,"default",{value:C,enumerable:!0}):w,C));Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const I=require("react/jsx-runtime"),H=require("./chunks/state-oc52fQ0j.js"),ZI=require("@arcblock/ux/lib/Empty"),X=require("@arcblock/ux/lib/Locale/context"),R=require("@iconify-icon/react"),QI=require("@mui/icons-material/Check"),i=require("@mui/material"),u=require("ahooks"),m=require("react"),r=require("./chunks/array-CeBRUkLo.js"),U=require("./chunks/config-color-C8kj-s2C.js"),kI=require("lodash/cloneDeep"),Y=require("@mui/icons-material"),gI=require("react-dnd");require("@arcblock/ux/lib/Tabs");require("@blocklet/pages-kit/utils/style");require("lodash/pick");const f=require("@arcblock/ux/lib/Theme"),RI=require("@mui/lab"),a=require("immer"),pI=require("./theme.js"),v=require("react-use"),OI=require("@arcblock/ux/lib/Toast"),UI=require("@mui/material/Tooltip"),fI=require("@mui/icons-material/KeyboardArrowLeft"),GI=require("@mui/material/Box"),VI=require("@mui/material/DialogTitle"),vI=require("@mui/material/IconButton"),PI=require("@mui/material/Dialog"),_I=require("@mui/material/useMediaQuery"),mI=require("@emotion/react"),qI=require("@mui/material/Alert"),$I=require("@mui/material/AlertTitle"),IC=require("react-error-boundary"),CC=require("ufo"),gC=require("@emotion/styled"),AC=require("@mui/material/Typography"),iC=require("joi"),P=require("@blocklet/ai-kit/api"),sC=require("@blocklet/js-sdk"),SI=require("@mui/x-date-pickers"),oC=require("@mui/x-date-pickers/AdapterDayjs"),wC=require("@mui/x-date-pickers/LocalizationProvider"),AI=require("circular-natal-horoscope-js/dist"),MC=require("dayjs"),LC=require("dayjs/plugin/timezone"),jC=require("dayjs/plugin/utc"),JC=require("fast-deep-equal"),OC=require("lodash/isNil"),mC=require("tz-lookup"),SC=require("@mui/icons-material/CheckCircleOutline"),BC=require("lodash/uniq"),yC=require("@emotion/css"),DC=require("lodash/get"),eC=require("lodash/set"),bC=require("@blocklet/pages-kit/components"),F=C=>C&&C.__esModule?C:{default:C},BI=F(ZI),NC=F(QI),yI=F(m),KC=F(kI),DI=F(OI),dC=F(UI),_=F(fI),x=F(GI),q=F(VI),$=F(vI),cC=F(PI),zC=F(_I),FC=F(qI),aC=F($I),Z=F(gC),iI=F(AC),E=F(iC),h=F(MC),lC=F(LC),tC=F(jC),HC=F(JC),EC=F(OC),eI=F(mC),uC=F(SC),sI=F(BC),nC=F(DC),XC=F(eC);function TC({htmlId:C,dragType:s,dropType:w=s,index:A,id:o,title:g,move:M,actions:j,...O}){const[{isDragging:L},e,y]=gI.useDrag(()=>({type:s,item:{id:o,index:A},options:{dropEffect:"move"},collect:b=>({isDragging:b.isDragging()}),end:(b,N)=>{const{id:S,index:B}=b;N.didDrop()||M(S,B)}}),[s,o,A,M]),[,J]=gI.useDrop(()=>({accept:w,hover(b){b.id!==o&&M(b.id,A)}}),[w,o,A,M]),D=L?.3:1;return I.jsxs(WC,{...O,id:C,ref:b=>J(y(b)),sx:{...O.sx,opacity:D},children:[I.jsx("div",{className:"drag",ref:b=>e(b),children:I.jsx(Y.DragIndicator,{})}),I.jsx("div",{className:"name",children:g}),I.jsx("div",{className:"actions",onClick:b=>b.stopPropagation(),children:j})]})}const WC=i.styled(i.Box)`
|
|
2
2
|
display: flex;
|
|
3
3
|
align-items: center;
|
|
4
4
|
padding: 8px;
|
|
@@ -89,9 +89,9 @@
|
|
|
89
89
|
top: 0;
|
|
90
90
|
transform: translateY(-50%);
|
|
91
91
|
}
|
|
92
|
-
`;function rC({value:C,onChange:s,...w}){const[A,o]=m.useState(""),{t:g}=X.useLocaleContext();return m.useEffect(()=>{o(C||"")},[C,o]),v.useDebounce(()=>{A!==C&&s(A)},300,[A]),I.jsx(i.TextField,{size:"small",fullWidth:!0,label:g("maker.properties.icon"),...w,value:A,onChange:M=>o(M.target.value),InputProps:{startAdornment:I.jsx(i.IconButton,{size:"small",children:I.jsx(r.Icon,{icon:A})}),endAdornment:I.jsx(i.IconButton,{size:"small",href:"https://icones.js.org",target:"_blank",children:I.jsx(Y.SearchRounded,{})})}})}function bI({value:C="",onChange:s,...w}){const{state:{pages:A,pageIds:o}}=H.useStore(),g=m.useMemo(()=>o.map(j=>A[j].slug),[o,A]),[M]=m.useState(()=>{var j;return((j=A[C])==null?void 0:j.slug)||C});return I.jsx(i.Autocomplete,{size:"small",fullWidth:!0,options:g,defaultValue:M,freeSolo:!0,autoSelect:!0,openOnFocus:!0,onChange:(j,O)=>{var L;return s(((L=Object.values(A).find(e=>(e==null?void 0:e.slug)===O))==null?void 0:L.id)||O||"")},renderInput:j=>I.jsx(i.TextField,{...j,...w})})}function G({label:C,placeholder:s,options:w,value:A,onChange:o,...g}){const M=w.find(L=>L.value===A),j=M==null?void 0:M.title,O=L=>{o(L.target.value)};return I.jsxs(i.FormControl,{fullWidth:!0,size:"small",children:[I.jsx(i.InputLabel,{children:C}),I.jsxs(i.Select,{value:A,input:I.jsx(i.OutlinedInput,{defaultValue:j,label:C}),renderValue:L=>{const e=w.find(y=>y.value===L);return e&&e.title&&I.jsxs(i.Box,{children:[I.jsx(i.Typography,{component:"span",children:e.title}),I.jsx(i.Typography,{marginLeft:1,component:"span",variant:"body2",color:"text.secondary",children:e.description})]})},onChange:O,...g,children:[I.jsx(i.MenuItem,{disabled:!0,children:I.jsx("em",{children:s})}),w.map(L=>L&&L.value&&I.jsxs(i.MenuItem,{value:L.value,children:[I.jsx(i.ListItemText,{children:L.title}),L.description&&I.jsx(i.Typography,{variant:"body2",color:"text.secondary",children:L.description})]},L.value))]})]})}const hC=()=>{const{t:C}=X.useLocaleContext(),s=u.useRequest(async()=>{var M;if(!((M=window.blocklet)==null?void 0:M.componentMountPoints.find(j=>j.name==="ai-kit")))return{install:!1};const{data:g}=await H.api.get("/api/ai/status");return{...g,install:!0}}),w=m.useMemo(()=>{var o,g;return!!(s.loading||!((o=s.data)!=null&&o.install)||!((g=s.data)!=null&&g.available))},[s]),A=m.useMemo(()=>{var o,g;return(o=s.data)!=null&&o.install?(g=s.data)!=null&&g.available?"":C("ai.status.
|
|
92
|
+
`;function rC({value:C,onChange:s,...w}){const[A,o]=m.useState(""),{t:g}=X.useLocaleContext();return m.useEffect(()=>{o(C||"")},[C,o]),v.useDebounce(()=>{A!==C&&s(A)},300,[A]),I.jsx(i.TextField,{size:"small",fullWidth:!0,label:g("maker.properties.icon"),...w,value:A,onChange:M=>o(M.target.value),InputProps:{startAdornment:I.jsx(i.IconButton,{size:"small",children:I.jsx(r.Icon,{icon:A})}),endAdornment:I.jsx(i.IconButton,{size:"small",href:"https://icones.js.org",target:"_blank",children:I.jsx(Y.SearchRounded,{})})}})}function bI({value:C="",onChange:s,...w}){const{state:{pages:A,pageIds:o}}=H.useStore(),g=m.useMemo(()=>o.map(j=>A[j].slug),[o,A]),[M]=m.useState(()=>{var j;return((j=A[C])==null?void 0:j.slug)||C});return I.jsx(i.Autocomplete,{size:"small",fullWidth:!0,options:g,defaultValue:M,freeSolo:!0,autoSelect:!0,openOnFocus:!0,onChange:(j,O)=>{var L;return s(((L=Object.values(A).find(e=>(e==null?void 0:e.slug)===O))==null?void 0:L.id)||O||"")},renderInput:j=>I.jsx(i.TextField,{...j,...w})})}function G({label:C,placeholder:s,options:w,value:A,onChange:o,...g}){const M=w.find(L=>L.value===A),j=M==null?void 0:M.title,O=L=>{o(L.target.value)};return I.jsxs(i.FormControl,{fullWidth:!0,size:"small",children:[I.jsx(i.InputLabel,{children:C}),I.jsxs(i.Select,{value:A,input:I.jsx(i.OutlinedInput,{defaultValue:j,label:C}),renderValue:L=>{const e=w.find(y=>y.value===L);return e&&e.title&&I.jsxs(i.Box,{children:[I.jsx(i.Typography,{component:"span",children:e.title}),I.jsx(i.Typography,{marginLeft:1,component:"span",variant:"body2",color:"text.secondary",children:e.description})]})},onChange:O,...g,children:[I.jsx(i.MenuItem,{disabled:!0,children:I.jsx("em",{children:s})}),w.map(L=>L&&L.value&&I.jsxs(i.MenuItem,{value:L.value,children:[I.jsx(i.ListItemText,{children:L.title}),L.description&&I.jsx(i.Typography,{variant:"body2",color:"text.secondary",children:L.description})]},L.value))]})]})}const hC=()=>{const{t:C}=X.useLocaleContext(),s=u.useRequest(async()=>{var M;if(!((M=window.blocklet)==null?void 0:M.componentMountPoints.find(j=>j.name==="ai-kit")))return{install:!1};const{data:g}=await H.api.get("/api/ai/status");return{...g,install:!0}}),w=m.useMemo(()=>{var o,g;return!!(s.loading||!((o=s.data)!=null&&o.install)||!((g=s.data)!=null&&g.available))},[s]),A=m.useMemo(()=>{var o,g;return(o=s.data)!=null&&o.install?(g=s.data)!=null&&g.available?"":C("ai.status.unavailable"):C("ai.status.install")},[s]);return[w,A]};function II({children:C,open:s=!0,embed:w=!1,...A}){const o=i.useTheme(),g=zC.default(o.breakpoints.down("md"));return I.jsx(cC.default,{open:s,fullScreen:g,maxWidth:"md",disableEnforceFocus:!0,disableRestoreFocus:!0,disablePortal:!0,sx:{zIndex:13001},PaperProps:{sx:g?{}:{width:1,margin:0,height:w?"100%":"75vh",maxHeight:w?"100%":"75vh"}},...A,children:C})}const NI=m.createContext({embed:!1}),{Provider:ZC}=NI;function QC({children:C,embed:s=!1,api:w,customOutputChildren:A}){const o=u.useReactive({embed:s}),[g,M]=m.useState(void 0),[j,O]=m.useState([]);return I.jsx(ZC,{value:{...o,template:g,response:j,api:w,customOutputChildren:A,setTemplate:M,setResponse:O},children:C})}function p(){return m.useContext(NI)}function KI(C){return m.useMemo(()=>blocklet==null?void 0:blocklet.componentMountPoints.find(s=>s.name===C),[])}async function kC({pageSize:C,composable:s,api:w,sort:A}){const o=await Promise.all(s.items.map(async j=>{if(j.noMore||j.list.length>=C)return j;const O=await w(j)({offset:j.offset,limit:C});return{...j,noMore:O.length<C,list:j.list.concat(O),offset:j.offset+O.length}})),g=[],M=a.produce(o,j=>{var O;for(;g.length<C;){j.sort((e,y)=>{const J=e.list[0],D=y.list[0];return J&&D?A(J,D):J?-1:1});const L=(O=j[0])==null?void 0:O.list.shift();if(!L)break;g.push(a.original(L))}});return[g,{items:M}]}function RC({offset:C,limit:s,sort:w,tag:A}={}){const o=H.getMountPoint("ai-studio"),g=CC.joinURL(o,"/api/templates");return H.api.get(g,{params:{offset:C,limit:s,sort:w,tag:A}}).then(M=>M.data)}const oI=10,pC=m.createContext(void 0);function UC({children:C}){const s=KI("ai-studio"),w=m.useRef({tags:[],data:{},fetchMore:async g=>{const M=["all","builtin","studio"].includes(g)?void 0:g,j=o(g,()=>{});if(!(j.noMore||j.loading)){o(g,O=>O.loading=!0);try{const O=a.produce(j.composable??{items:[]},y=>{y.items.length===0&&s&&y.items.push({offset:0,list:[],noMore:!1,api:J=>RC(J).then(D=>D.templates.map(b=>({...b,source:"studio"})))})}),[L,e]=await kC({pageSize:oI,composable:O,api:y=>J=>y.api({...J,tag:M,sort:"-updatedAt"}),sort:(y,J)=>-y.updatedAt.localeCompare(J.updatedAt)});o(g,y=>{y.composable=e,y.templates.push(...L),y.noMore=L.length<oI})}catch(O){throw o(g,L=>L.error=O),O}finally{o(g,O=>O.loading=!1)}}}}),A=u.useUpdate(),o=m.useCallback((g,M)=>(w.current=a.produce(w.current,j=>(j.data[g]||(j.data[g]={templates:[],loading:!1,noMore:!1}),M(j.data[g]),j)),A(),w.current.data[g]),[]);return I.jsx(pC.Provider,{value:w.current,children:C})}const dI=P.createStatusApi({axios:H.api,path:"/api/ai/status"});P.createStatusApi({axios:H.api,path:"/api/ai/agent-status"});const fC=P.createTextCompletionApi({fetch:sC.createFetch(),path:"/api/ai/completions"});function GC({text:C,language:s}){return fC({prompt:`Translate this into ${s}:
|
|
93
93
|
|
|
94
|
-
${C}`}).then(w=>w.text??"")}function VC(C){const s=u.useReactive({searching:!1,searchKey:0,resultKey:0,keyword:"",options:[]}),w=m.useCallback(async g=>{const M=s.searchKey;try{if(!g.trim()){s.options=[];return}const j=new URL("https://nominatim.openstreetmap.org/search");j.searchParams.set("q",g),j.searchParams.set("polygon_geojson","1"),j.searchParams.set("format","jsonv2"),j.searchParams.set("limit","10"),j.searchParams.set("accept-language","zh-CN"),j.searchParams.set("polygon_geojson","0");const O=await fetch(j.toString()).then(L=>L.json()).then(L=>L.map(e=>({id:e.place_id,longitude:Number(e.lon),latitude:Number(e.lat),name:e.display_name})));M>s.resultKey&&(s.resultKey=M,s.options=O)}finally{M===s.searchKey&&(s.searching=!1)}},[]),{run:A}=u.useThrottleFn(w,{wait:1e3});m.useEffect(()=>{var g;typeof C.value=="object"&&!Array.isArray(C.value)&&s.keyword===((g=C.value)==null?void 0:g.name)||(s.searchKey+=1,s.searching=!0,A(s.keyword))},[s.keyword]);const{renderInput:o=g=>I.jsx(i.TextField,{...g})}=C;return I.jsx(i.Autocomplete,{...C,inputValue:s.keyword,onInputChange:(g,M)=>s.keyword=M,options:s.options,getOptionLabel:g=>typeof g=="string"?g:g.name||"",isOptionEqualToValue:(g,M)=>g.id===M.id||g.longitude===M.longitude&&g.latitude===M.latitude,filterOptions:g=>g,renderOption:(g,M)=>m.createElement(i.MenuItem,{...g,key:M.id},M.name),loading:s.searching,renderInput:g=>o({...g,InputProps:{...g.InputProps,endAdornment:I.jsxs(I.Fragment,{children:[s.searching&&I.jsx(i.CircularProgress,{size:20}),g.InputProps.endAdornment]})}})})}function vC({min:C,max:s,default:w,onChange:A,...o}){const g=M=>{const j=M.target.value.trim();if(!j)return w;let O=Number(Number(j).toFixed(0));return Number.isInteger(O)?(typeof C=="number"&&(O=Math.max(C,O)),typeof s=="number"&&(O=Math.min(s,O)),O):w};return I.jsx(i.TextField,{onChange:M=>A==null?void 0:A(g(M)),inputProps:{type:"number",inputMode:"numeric",pattern:"[0-9]*",min:C,max:s,...o.inputProps},...o})}h.default.extend(tC.default);h.default.extend(lC.default);function PC({parameter:C,...s}){const w={number:qC,string:_C,select:$C,language:gg,horoscope:Ag,radio:Ig}[C.type||"string"];return I.jsx(w,{parameter:C,...s})}function _C({parameter:C,onChange:s,...w}){return I.jsx(i.TextField,{required:C.required,label:C.label,placeholder:C.placeholder,helperText:C.helper,multiline:C.multiline,minRows:C.multiline?2:void 0,inputProps:{maxLength:C.maxLength},onChange:A=>s(A.target.value),...w})}function qC({parameter:C,...s}){return I.jsx(vC,{required:C.required,label:C.label,placeholder:C.placeholder,helperText:C.helper,min:C.min,max:C.max,...s})}function $C({parameter:C,onChange:s,...w}){return I.jsxs(i.TextField,{required:C.required,label:C.label,placeholder:C.placeholder,helperText:C.helper,select:!0,onChange:A=>s(A.target.value),...w,children:[I.jsx(i.MenuItem,{value:"",children:I.jsx("em",{children:"None"})}),(C.options??[]).map(A=>I.jsx(i.MenuItem,{value:A.value,children:A.label},A.id))]})}function Ig({parameter:C,onChange:s,...w}){return I.jsxs(i.TextField,{required:C.required,label:C.label,placeholder:C.placeholder,helperText:C.helper,select:!0,onChange:A=>s(A.target.value),...w,children:[I.jsx(i.MenuItem,{value:"",children:I.jsx("em",{children:"None"})}),(C.options??[]).map(A=>I.jsx(i.MenuItem,{value:A.value,children:A.label},A.id))]})}const Cg=[{en:"English",cn:"英语"},{en:"Simplified Chinese",cn:"中文-简体"},{en:"Traditional Chinese",cn:"中文-繁体"},{en:"Spanish",cn:"西班牙语"},{en:"French",cn:"法语"},{en:"German",cn:"德语"},{en:"Italian",cn:"意大利语"},{en:"Portuguese",cn:"葡萄牙语"},{en:"Japanese",cn:"日语"},{en:"Korean",cn:"韩语"},{en:"Russian",cn:"俄语"},{en:"Polish",cn:"波兰语"},{en:"Arabic",cn:"阿拉伯语"},{en:"Dutch",cn:"荷兰语"},{en:"Swedish",cn:"瑞典语"},{en:"Finnish",cn:"芬兰语"},{en:"Czech",cn:"捷克语"},{en:"Danish",cn:"丹麦语"},{en:"Greek",cn:"希腊语"},{en:"Romanian",cn:"罗马尼亚语"},{en:"Hungarian",cn:"匈牙利语"},{en:"Bulgarian",cn:"保加利亚语"},{en:"Slovak",cn:"斯洛伐克语"},{en:"Norwegian",cn:"挪威语"},{en:"Hebrew",cn:"希伯来语"},{en:"Turkish",cn:"土耳其语"},{en:"Thai",cn:"泰语"},{en:"Indonesian",cn:"印尼语"},{en:"Vietnamese",cn:"越南语"},{en:"Hindi",cn:"印地语"}];function gg({parameter:C,onChange:s,...w}){const{locale:A}=X.useLocaleContext();return I.jsxs(i.TextField,{required:C.required,label:C.label,placeholder:C.placeholder,helperText:C.helper,select:!0,onChange:o=>s(o.target.value),...w,children:[I.jsx(i.MenuItem,{value:"",children:I.jsx("em",{children:"None"})}),Cg.map(o=>I.jsx(i.MenuItem,{value:o.en,children:A==="zh"?o.cn:o.en},o.en))]})}function Ag({parameter:C,value:s,onChange:w,...A}){const[o,g]=m.useState(()=>({...s}));m.useEffect(()=>{HC.default(o,s)||g({...s})},[s]),m.useEffect(()=>{const{location:O,offset:L,time:e}=o;O&&e?w({location:O,offset:L,time:e}):s&&w(void 0)},[o]);const M=m.useMemo(()=>o.location&&o.time?cI({...C,value:{time:o.time,offset:o.offset,location:o.location}}):"",[o]),j=m.useCallback(({time:O,location:L})=>{const e=h.default(O),y=L&&eI.default(L.latitude,L.longitude),J=y?e.tz(y).utcOffset():null;EC.default(J)||g(D=>({...D,offset:J}))},[]);return I.jsx(wC.LocalizationProvider,{dateAdapter:oC.AdapterDayjs,children:I.jsxs(i.Box,{sx:{width:"100%",display:"flex",flexWrap:"wrap",gap:1},children:[I.jsx(ig,{slotProps:{textField:{size:"small"}},label:"Date",sx:{flex:1,minWidth:200},value:o.time??null,onChange:O=>{g(L=>({...L,time:O??void 0})),j({...o,time:O})}}),I.jsx(VC,{sx:{flex:1,minWidth:200},value:(o==null?void 0:o.location)??null,onChange:(O,L)=>{g(e=>({...e,location:L??void 0})),j({...o,location:L})},renderInput:O=>I.jsx(i.TextField,{...O,label:"Location",size:"small"})}),I.jsx(sg,{label:"Timezone",sx:{flex:1,minWidth:200},value:o.offset??null,onChange:O=>g(L=>({...L,offset:O??void 0})),slotProps:{textField:{size:"small"}}}),I.jsx(i.TextField,{label:A.label,fullWidth:!0,size:"small",multiline:!0,InputProps:{readOnly:!0},value:M,disabled:!0,error:A.error,helperText:A.helperText})]})})}function ig({format:C="YYYY-MM-DD HH:mm:ss",value:s,onChange:w,...A}){const[o,g]=m.useState(()=>s?h.default(s):null);return m.useEffect(()=>{(o==null?void 0:o.format(C))!==s&&g(h.default(s))},[s]),I.jsx(SI.DateTimePicker,{ampm:!1,...A,value:o,onChange:M=>{g(M),w==null||w((M==null?void 0:M.format(C))??null)}})}function sg({value:C,onChange:s,...w}){var O;const A=m.useCallback(L=>typeof L=="number"?h.default().startOf("year").minute(Math.abs(L)):L,[]),o=m.useCallback(L=>L&&L.hour()*60+L.minute(),[]),[g,M]=m.useState(()=>A(C));m.useEffect(()=>{o(g)!==C&&M(A(C))},[C]);const j=typeof C=="number"&&C<0?-1:1;return I.jsx(SI.TimePicker,{ampm:!1,...w,value:g,slots:{actionBar:()=>null},onChange:L=>{M(L),s==null||s(L?(L.hour()*60+L.minute())*j:null)},slotProps:{...w.slotProps,textField:{...(O=w.slotProps)==null?void 0:O.textField,InputProps:{startAdornment:I.jsx(i.InputAdornment,{position:"start",children:I.jsxs(i.Button,{size:"small",color:"inherit",sx:{minWidth:0,p:0},onClick:L=>{L.stopPropagation(),s==null||s(typeof C=="number"?-C:null)},children:[I.jsx(i.Box,{component:"span",sx:{lineHeight:1},children:"UTC"}),j===-1?I.jsx(Y.Remove,{fontSize:"small"}):I.jsx(Y.Add,{fontSize:"small"})]})})}}}})}function cI(C){var s,w;switch(C.type){case void 0:case"string":case"number":case"language":case"select":return((s=C.value)==null?void 0:s.toString())??"";case"radio":return((w=C.value)==null?void 0:w.toString())??"";case"horoscope":{const{time:A,offset:o,location:g}=C.value??{};if(!A||!g)return"";let M=h.default(A);if(!M.isValid())return"";typeof o=="number"&&(M=M.utcOffset(o,!0)),M=M.tz(eI.default(g.latitude,g.longitude),!0);const j=new gI.Horoscope({origin:new gI.Origin({year:M.year(),month:M.month(),date:M.date(),hour:M.hour(),minute:M.minute(),second:M.second(),latitude:g.latitude,longitude:g.longitude})}),O={sun:"太阳",moon:"月亮",mercury:"水星",venus:"金星",mars:"火星",jupiter:"木星",saturn:"土星",uranus:"天王星",neptune:"海王星",pluto:"冥王星",chiron:"凯龙星",sirius:"天狼星",aries:"白羊座",taurus:"金牛座",gemini:"双子座",cancer:"巨蟹座",leo:"狮子座",virgo:"处女座",libra:"天秤座",scorpio:"天蝎座",sagittarius:"射手座",capricorn:"摩羯座",aquarius:"水瓶座",pisces:"双鱼座",ophiuchus:"蛇夫座",ascendant:"上升",midheaven:"中天",northnode:"北交",southnode:"南交"},L=j.CelestialBodies.all,e=j.Houses,y=L.filter(J=>!["chiron","sirius"].includes(J.key));return y.concat([j.CelestialPoints.northnode,j.Ascendant,j.Midheaven]).map(J=>`${O[J.key]}${O[J.Sign.key]}${J.isRetrograde?"(逆行)":""}`).concat(e.map(J=>`${J.id}宫${O[J.Sign.key]}`)).concat(y.concat(j.CelestialPoints.northnode).map(J=>`${O[J.key]}落入${J.House.id}宫`)).join(",")}default:throw new Error(`Unsupported parameter to string value ${C}`)}}function og({template:C,onSubmit:s}){var e;const{t:w}=X.useLocaleContext(),A=m.useMemo(()=>{let y={};return C.parameters&&typeof C.parameters=="object"&&(y=KC.default(C.parameters)),y},[C]),o=m.useMemo(()=>Object.keys(A),[A]),g=v.useAsync(()=>dI(),[]),M=u.useReactive({});m.useEffect(()=>{for(const[y,J]of Object.entries(A))M[y]??(M[y]=J.defaultValue)},[C]);const[j,O]=m.useState(),L=()=>{O(void 0);const y=N=>({string:S=>{let B=E.default.string();return S.required?B=B.required():B=B.allow(""),typeof S.minLength=="number"&&(B=B.min(S.minLength)),typeof S.maxLength=="number"&&(B=B.max(S.maxLength)),B},number:S=>{let B=E.default.number();return S.required&&(B=B.required()),typeof S.min=="number"&&(B=B.min(S.min)),typeof S.max=="number"&&(B=B.max(S.max)),B},select:S=>{let B=E.default.string();return S.required&&(B=B.required()),B},language:S=>{let B=E.default.string();return S.required&&(B=B.required()),B},horoscope:S=>{let B=E.default.object({time:E.default.string().required(),offset:E.default.number().integer(),location:E.default.object({id:E.default.alternatives().try(E.default.string(),E.default.number()).required(),latitude:E.default.number().required(),longitude:E.default.number().required(),name:E.default.string().required()}).required()});return S.required&&(B=B.required()),B},radio:S=>{let B=E.default.string();return S.required&&(B=B.required()),B}})[N.type||"string"](N),J=E.default.object(Object.fromEntries(o.map(N=>{const S=A[N];return[N,S?y(S):void 0]}))),{error:D,value:b}=J.validate(M,{allowUnknown:!0,abortEarly:!1});if(D){O(D);return}s(Object.fromEntries(Object.entries(b).map(([N,S])=>[N,cI({type:A[N].type,value:S})])))};return I.jsxs(wg,{component:"form",onSubmit:y=>y.preventDefault(),children:[I.jsx(i.Grid,{container:!0,spacing:2.5,children:o.map(y=>{const J=A[y]??{},D=j==null?void 0:j.details.find(b=>b.path[0]===y);return I.jsx(i.Grid,{item:!0,xs:12,children:I.jsx(PC,{fullWidth:!0,size:"small",label:J.label||y,parameter:J,error:!!D,helperText:(D==null?void 0:D.message)??J.helper,value:M[y]??"",onChange:b=>M[y]=b})},y)})}),I.jsx(i.Box,{flex:1}),I.jsx(i.Box,{className:"actions",children:I.jsx(i.Box,{my:3,textAlign:"center",children:g.loading?I.jsx(i.CircularProgress,{size:24}):I.jsx(i.Button,{className:"submit",type:"submit",variant:"contained",onClick:L,disabled:!((e=g.value)!=null&&e.available),children:w("ai.generate")})})})]})}const wg=Z.default(i.Box)`
|
|
94
|
+
${C}`}).then(w=>w.text??"")}function VC(C){const s=u.useReactive({searching:!1,searchKey:0,resultKey:0,keyword:"",options:[]}),w=m.useCallback(async g=>{const M=s.searchKey;try{if(!g.trim()){s.options=[];return}const j=new URL("https://nominatim.openstreetmap.org/search");j.searchParams.set("q",g),j.searchParams.set("polygon_geojson","1"),j.searchParams.set("format","jsonv2"),j.searchParams.set("limit","10"),j.searchParams.set("accept-language","zh-CN"),j.searchParams.set("polygon_geojson","0");const O=await fetch(j.toString()).then(L=>L.json()).then(L=>L.map(e=>({id:e.place_id,longitude:Number(e.lon),latitude:Number(e.lat),name:e.display_name})));M>s.resultKey&&(s.resultKey=M,s.options=O)}finally{M===s.searchKey&&(s.searching=!1)}},[]),{run:A}=u.useThrottleFn(w,{wait:1e3});m.useEffect(()=>{var g;typeof C.value=="object"&&!Array.isArray(C.value)&&s.keyword===((g=C.value)==null?void 0:g.name)||(s.searchKey+=1,s.searching=!0,A(s.keyword))},[s.keyword]);const{renderInput:o=g=>I.jsx(i.TextField,{...g})}=C;return I.jsx(i.Autocomplete,{...C,inputValue:s.keyword,onInputChange:(g,M)=>s.keyword=M,options:s.options,getOptionLabel:g=>typeof g=="string"?g:g.name||"",isOptionEqualToValue:(g,M)=>g.id===M.id||g.longitude===M.longitude&&g.latitude===M.latitude,filterOptions:g=>g,renderOption:(g,M)=>m.createElement(i.MenuItem,{...g,key:M.id},M.name),loading:s.searching,renderInput:g=>o({...g,InputProps:{...g.InputProps,endAdornment:I.jsxs(I.Fragment,{children:[s.searching&&I.jsx(i.CircularProgress,{size:20}),g.InputProps.endAdornment]})}})})}function vC({min:C,max:s,default:w,onChange:A,...o}){const g=M=>{const j=M.target.value.trim();if(!j)return w;let O=Number(Number(j).toFixed(0));return Number.isInteger(O)?(typeof C=="number"&&(O=Math.max(C,O)),typeof s=="number"&&(O=Math.min(s,O)),O):w};return I.jsx(i.TextField,{onChange:M=>A==null?void 0:A(g(M)),inputProps:{type:"number",inputMode:"numeric",pattern:"[0-9]*",min:C,max:s,...o.inputProps},...o})}h.default.extend(tC.default);h.default.extend(lC.default);function PC({parameter:C,...s}){const w={number:qC,string:_C,select:$C,language:gg,horoscope:Ag,radio:Ig}[C.type||"string"];return I.jsx(w,{parameter:C,...s})}function _C({parameter:C,onChange:s,...w}){return I.jsx(i.TextField,{required:C.required,label:C.label,placeholder:C.placeholder,helperText:C.helper,multiline:C.multiline,minRows:C.multiline?2:void 0,inputProps:{maxLength:C.maxLength},onChange:A=>s(A.target.value),...w})}function qC({parameter:C,...s}){return I.jsx(vC,{required:C.required,label:C.label,placeholder:C.placeholder,helperText:C.helper,min:C.min,max:C.max,...s})}function $C({parameter:C,onChange:s,...w}){return I.jsxs(i.TextField,{required:C.required,label:C.label,placeholder:C.placeholder,helperText:C.helper,select:!0,onChange:A=>s(A.target.value),...w,children:[I.jsx(i.MenuItem,{value:"",children:I.jsx("em",{children:"None"})}),(C.options??[]).map(A=>I.jsx(i.MenuItem,{value:A.value,children:A.label},A.id))]})}function Ig({parameter:C,onChange:s,...w}){return I.jsxs(i.TextField,{required:C.required,label:C.label,placeholder:C.placeholder,helperText:C.helper,select:!0,onChange:A=>s(A.target.value),...w,children:[I.jsx(i.MenuItem,{value:"",children:I.jsx("em",{children:"None"})}),(C.options??[]).map(A=>I.jsx(i.MenuItem,{value:A.value,children:A.label},A.id))]})}const Cg=[{en:"English",cn:"英语"},{en:"Simplified Chinese",cn:"中文-简体"},{en:"Traditional Chinese",cn:"中文-繁体"},{en:"Spanish",cn:"西班牙语"},{en:"French",cn:"法语"},{en:"German",cn:"德语"},{en:"Italian",cn:"意大利语"},{en:"Portuguese",cn:"葡萄牙语"},{en:"Japanese",cn:"日语"},{en:"Korean",cn:"韩语"},{en:"Russian",cn:"俄语"},{en:"Polish",cn:"波兰语"},{en:"Arabic",cn:"阿拉伯语"},{en:"Dutch",cn:"荷兰语"},{en:"Swedish",cn:"瑞典语"},{en:"Finnish",cn:"芬兰语"},{en:"Czech",cn:"捷克语"},{en:"Danish",cn:"丹麦语"},{en:"Greek",cn:"希腊语"},{en:"Romanian",cn:"罗马尼亚语"},{en:"Hungarian",cn:"匈牙利语"},{en:"Bulgarian",cn:"保加利亚语"},{en:"Slovak",cn:"斯洛伐克语"},{en:"Norwegian",cn:"挪威语"},{en:"Hebrew",cn:"希伯来语"},{en:"Turkish",cn:"土耳其语"},{en:"Thai",cn:"泰语"},{en:"Indonesian",cn:"印尼语"},{en:"Vietnamese",cn:"越南语"},{en:"Hindi",cn:"印地语"}];function gg({parameter:C,onChange:s,...w}){const{locale:A}=X.useLocaleContext();return I.jsxs(i.TextField,{required:C.required,label:C.label,placeholder:C.placeholder,helperText:C.helper,select:!0,onChange:o=>s(o.target.value),...w,children:[I.jsx(i.MenuItem,{value:"",children:I.jsx("em",{children:"None"})}),Cg.map(o=>I.jsx(i.MenuItem,{value:o.en,children:A==="zh"?o.cn:o.en},o.en))]})}function Ag({parameter:C,value:s,onChange:w,...A}){const[o,g]=m.useState(()=>({...s}));m.useEffect(()=>{HC.default(o,s)||g({...s})},[s]),m.useEffect(()=>{const{location:O,offset:L,time:e}=o;O&&e?w({location:O,offset:L,time:e}):s&&w(void 0)},[o]);const M=m.useMemo(()=>o.location&&o.time?cI({...C,value:{time:o.time,offset:o.offset,location:o.location}}):"",[o]),j=m.useCallback(({time:O,location:L})=>{const e=h.default(O),y=L&&eI.default(L.latitude,L.longitude),J=y?e.tz(y).utcOffset():null;EC.default(J)||g(D=>({...D,offset:J}))},[]);return I.jsx(wC.LocalizationProvider,{dateAdapter:oC.AdapterDayjs,children:I.jsxs(i.Box,{sx:{width:"100%",display:"flex",flexWrap:"wrap",gap:1},children:[I.jsx(ig,{slotProps:{textField:{size:"small"}},label:"Date",sx:{flex:1,minWidth:200},value:o.time??null,onChange:O=>{g(L=>({...L,time:O??void 0})),j({...o,time:O})}}),I.jsx(VC,{sx:{flex:1,minWidth:200},value:(o==null?void 0:o.location)??null,onChange:(O,L)=>{g(e=>({...e,location:L??void 0})),j({...o,location:L})},renderInput:O=>I.jsx(i.TextField,{...O,label:"Location",size:"small"})}),I.jsx(sg,{label:"Timezone",sx:{flex:1,minWidth:200},value:o.offset??null,onChange:O=>g(L=>({...L,offset:O??void 0})),slotProps:{textField:{size:"small"}}}),I.jsx(i.TextField,{label:A.label,fullWidth:!0,size:"small",multiline:!0,InputProps:{readOnly:!0},value:M,disabled:!0,error:A.error,helperText:A.helperText})]})})}function ig({format:C="YYYY-MM-DD HH:mm:ss",value:s,onChange:w,...A}){const[o,g]=m.useState(()=>s?h.default(s):null);return m.useEffect(()=>{(o==null?void 0:o.format(C))!==s&&g(h.default(s))},[s]),I.jsx(SI.DateTimePicker,{ampm:!1,...A,value:o,onChange:M=>{g(M),w==null||w((M==null?void 0:M.format(C))??null)}})}function sg({value:C,onChange:s,...w}){var O;const A=m.useCallback(L=>typeof L=="number"?h.default().startOf("year").minute(Math.abs(L)):L,[]),o=m.useCallback(L=>L&&L.hour()*60+L.minute(),[]),[g,M]=m.useState(()=>A(C));m.useEffect(()=>{o(g)!==C&&M(A(C))},[C]);const j=typeof C=="number"&&C<0?-1:1;return I.jsx(SI.TimePicker,{ampm:!1,...w,value:g,slots:{actionBar:()=>null},onChange:L=>{M(L),s==null||s(L?(L.hour()*60+L.minute())*j:null)},slotProps:{...w.slotProps,textField:{...(O=w.slotProps)==null?void 0:O.textField,InputProps:{startAdornment:I.jsx(i.InputAdornment,{position:"start",children:I.jsxs(i.Button,{size:"small",color:"inherit",sx:{minWidth:0,p:0},onClick:L=>{L.stopPropagation(),s==null||s(typeof C=="number"?-C:null)},children:[I.jsx(i.Box,{component:"span",sx:{lineHeight:1},children:"UTC"}),j===-1?I.jsx(Y.Remove,{fontSize:"small"}):I.jsx(Y.Add,{fontSize:"small"})]})})}}}})}function cI(C){var s,w;switch(C.type){case void 0:case"string":case"number":case"language":case"select":return((s=C.value)==null?void 0:s.toString())??"";case"radio":return((w=C.value)==null?void 0:w.toString())??"";case"horoscope":{const{time:A,offset:o,location:g}=C.value??{};if(!A||!g)return"";let M=h.default(A);if(!M.isValid())return"";typeof o=="number"&&(M=M.utcOffset(o,!0)),M=M.tz(eI.default(g.latitude,g.longitude),!0);const j=new AI.Horoscope({origin:new AI.Origin({year:M.year(),month:M.month(),date:M.date(),hour:M.hour(),minute:M.minute(),second:M.second(),latitude:g.latitude,longitude:g.longitude})}),O={sun:"太阳",moon:"月亮",mercury:"水星",venus:"金星",mars:"火星",jupiter:"木星",saturn:"土星",uranus:"天王星",neptune:"海王星",pluto:"冥王星",chiron:"凯龙星",sirius:"天狼星",aries:"白羊座",taurus:"金牛座",gemini:"双子座",cancer:"巨蟹座",leo:"狮子座",virgo:"处女座",libra:"天秤座",scorpio:"天蝎座",sagittarius:"射手座",capricorn:"摩羯座",aquarius:"水瓶座",pisces:"双鱼座",ophiuchus:"蛇夫座",ascendant:"上升",midheaven:"中天",northnode:"北交",southnode:"南交"},L=j.CelestialBodies.all,e=j.Houses,y=L.filter(J=>!["chiron","sirius"].includes(J.key));return y.concat([j.CelestialPoints.northnode,j.Ascendant,j.Midheaven]).map(J=>`${O[J.key]}${O[J.Sign.key]}${J.isRetrograde?"(逆行)":""}`).concat(e.map(J=>`${J.id}宫${O[J.Sign.key]}`)).concat(y.concat(j.CelestialPoints.northnode).map(J=>`${O[J.key]}落入${J.House.id}宫`)).join(",")}default:throw new Error(`Unsupported parameter to string value ${C}`)}}function og({template:C,onSubmit:s}){var e;const{t:w}=X.useLocaleContext(),A=m.useMemo(()=>{let y={};return C.parameters&&typeof C.parameters=="object"&&(y=KC.default(C.parameters)),y},[C]),o=m.useMemo(()=>Object.keys(A),[A]),g=v.useAsync(()=>dI(),[]),M=u.useReactive({});m.useEffect(()=>{for(const[y,J]of Object.entries(A))M[y]??(M[y]=J.defaultValue)},[C]);const[j,O]=m.useState(),L=()=>{O(void 0);const y=N=>({string:S=>{let B=E.default.string();return S.required?B=B.required():B=B.allow(""),typeof S.minLength=="number"&&(B=B.min(S.minLength)),typeof S.maxLength=="number"&&(B=B.max(S.maxLength)),B},number:S=>{let B=E.default.number();return S.required&&(B=B.required()),typeof S.min=="number"&&(B=B.min(S.min)),typeof S.max=="number"&&(B=B.max(S.max)),B},select:S=>{let B=E.default.string();return S.required&&(B=B.required()),B},language:S=>{let B=E.default.string();return S.required&&(B=B.required()),B},horoscope:S=>{let B=E.default.object({time:E.default.string().required(),offset:E.default.number().integer(),location:E.default.object({id:E.default.alternatives().try(E.default.string(),E.default.number()).required(),latitude:E.default.number().required(),longitude:E.default.number().required(),name:E.default.string().required()}).required()});return S.required&&(B=B.required()),B},radio:S=>{let B=E.default.string();return S.required&&(B=B.required()),B}})[N.type||"string"](N),J=E.default.object(Object.fromEntries(o.map(N=>{const S=A[N];return[N,S?y(S):void 0]}))),{error:D,value:b}=J.validate(M,{allowUnknown:!0,abortEarly:!1});if(D){O(D);return}s(Object.fromEntries(Object.entries(b).map(([N,S])=>[N,cI({type:A[N].type,value:S})])))};return I.jsxs(wg,{component:"form",onSubmit:y=>y.preventDefault(),children:[I.jsx(i.Grid,{container:!0,spacing:2.5,children:o.map(y=>{const J=A[y]??{},D=j==null?void 0:j.details.find(b=>b.path[0]===y);return I.jsx(i.Grid,{item:!0,xs:12,children:I.jsx(PC,{fullWidth:!0,size:"small",label:J.label||y,parameter:J,error:!!D,helperText:(D==null?void 0:D.message)??J.helper,value:M[y]??"",onChange:b=>M[y]=b})},y)})}),I.jsx(i.Box,{flex:1}),I.jsx(i.Box,{className:"actions",children:I.jsx(i.Box,{my:3,textAlign:"center",children:g.loading?I.jsx(i.CircularProgress,{size:24}):I.jsx(i.Button,{className:"submit",type:"submit",variant:"contained",onClick:L,disabled:!((e=g.value)!=null&&e.available),children:w("ai.generate")})})})]})}const wg=Z.default(i.Box)`
|
|
95
95
|
flex-grow: 1;
|
|
96
96
|
display: flex;
|
|
97
97
|
flex-direction: column;
|
|
@@ -227,7 +227,7 @@ ${C}`}).then(w=>w.text??"")}function VC(C){const s=u.useReactive({searching:!1,s
|
|
|
227
227
|
color: #25292f;
|
|
228
228
|
cursor: pointer;
|
|
229
229
|
}
|
|
230
|
-
`;function Sg({parameters:C,setParameters:s,setOpen:w,onSelect:A}){const{embed:o,customOutputChildren:g,template:M}=p(),j=()=>w(!1),O=()=>s(void 0),L=J=>{A(J),O(),j()},e=m.useMemo(()=>M&&C&&{parameters:C,template:M},[M,C]);if(!M)return null;const y=()=>g&&typeof g=="function"?g({embed:o,template:M,options:e,onClose:j,onFinish:L}):I.jsx(jg,{options:e,onFinish:L});return I.jsxs(
|
|
230
|
+
`;function Sg({parameters:C,setParameters:s,setOpen:w,onSelect:A}){const{embed:o,customOutputChildren:g,template:M}=p(),j=()=>w(!1),O=()=>s(void 0),L=J=>{A(J),O(),j()},e=m.useMemo(()=>M&&C&&{parameters:C,template:M},[M,C]);if(!M)return null;const y=()=>g&&typeof g=="function"?g({embed:o,template:M,options:e,onClose:j,onFinish:L}):I.jsx(jg,{options:e,onFinish:L});return I.jsxs(II,{open:!0,embed:o,onClose:j,sx:{zIndex:13002},children:[I.jsx(q.default,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:I.jsxs(i.Box,{display:"flex",alignItems:"center",ml:-2,children:[I.jsx($.default,{onClick:j,sx:{mr:1},children:I.jsx(_.default,{})}),I.jsx(i.Box,{mt:.25,children:M.name})]})}),y()]})}function Bg({onSelect:C,onClose:s=()=>{}}){const{embed:w,template:A,setTemplate:o}=p(),[g,M]=m.useState(),[j,O]=m.useState(!1);if(!A)return null;const L=()=>{s(),o(void 0)},e=()=>j?I.jsx(Sg,{parameters:g,setParameters:M,setOpen:O,onSelect:C}):null;return I.jsxs(Lg,{children:[I.jsxs(II,{open:!0,embed:w,onClose:L,children:[I.jsx(q.default,{children:I.jsx(x.default,{ml:-2,display:"flex",alignItems:"center",justifyContent:"space-between",children:I.jsxs(x.default,{display:"flex",alignItems:"center",children:[I.jsx($.default,{onClick:L,sx:{mr:1},children:I.jsx(_.default,{})}),I.jsx(x.default,{mt:.25,children:A.name})]})})}),I.jsxs(x.default,{sx:{display:"flex",flexDirection:"column",flex:1,px:{xs:2,sm:3}},children:[I.jsx(yg,{sx:{mx:{xs:-2,sm:-3},p:{xs:2,sm:3}},children:I.jsxs(x.default,{display:"flex",alignItems:"center",children:[I.jsxs(x.default,{flex:1,children:[I.jsx(iI.default,{className:"title",variant:"h5",component:"div",children:A.name}),I.jsx(iI.default,{className:"subtitle",variant:"caption",children:A.description})]}),I.jsx(x.default,{fontSize:88,m:-1.25,display:"flex",children:I.jsx(R.Icon,{icon:A.icon??""})})]})}),I.jsx(og,{template:A,onSubmit:y=>{M(y),O(!0)}})]})]}),e()]})}const yg=Z.default(x.default)`
|
|
231
231
|
background: #f6f2ff;
|
|
232
232
|
margin-bottom: 20px;
|
|
233
233
|
|
|
@@ -277,11 +277,11 @@ ${C}`}).then(w=>w.text??"")}function VC(C){const s=u.useReactive({searching:!1,s
|
|
|
277
277
|
-webkit-line-clamp: 2;
|
|
278
278
|
overflow: hidden;
|
|
279
279
|
}
|
|
280
|
-
`;function bg(C){const s=m.useRef(null),w=m.useCallback(()=>{const o=s.current;if(!o)return;const g=o.getBoundingClientRect();g.bottom<=window.innerHeight+g.height},[C]),{run:A}=u.useThrottleFn(w,{wait:500});return m.useEffect(()=>(window.addEventListener("scroll",A),()=>window.removeEventListener("scroll",A)),[A]),{element:I.jsx("div",{ref:s}),checkReachBottom:A}}function Ng(){const{t:C}=X.useLocaleContext();return I.jsx(i.Box,{sx:{mt:10,textAlign:"center"},children:I.jsx(i.Box,{sx:{color:"text.secondary"},children:C("ai.list.noTemplatesInStudio")})})}function Kg({error:C}){const s=I.jsx("pre",{children:C.message});return I.jsxs(FC.default,{severity:"warning",children:[I.jsx(aC.default,{children:"Oops!"}),"AI Generate is not working properly.",s]})}const dg=
|
|
280
|
+
`;function bg(C){const s=m.useRef(null),w=m.useCallback(()=>{const o=s.current;if(!o)return;const g=o.getBoundingClientRect();g.bottom<=window.innerHeight+g.height},[C]),{run:A}=u.useThrottleFn(w,{wait:500});return m.useEffect(()=>(window.addEventListener("scroll",A),()=>window.removeEventListener("scroll",A)),[A]),{element:I.jsx("div",{ref:s}),checkReachBottom:A}}function Ng(){const{t:C}=X.useLocaleContext();return I.jsx(i.Box,{sx:{mt:10,textAlign:"center"},children:I.jsx(i.Box,{sx:{color:"text.secondary"},children:C("ai.list.noTemplatesInStudio")})})}function Kg({error:C}){const s=I.jsx("pre",{children:C.message});return I.jsxs(FC.default,{severity:"warning",children:[I.jsx(aC.default,{children:"Oops!"}),"AI Generate is not working properly.",s]})}const dg=mI.css`
|
|
281
281
|
.MuiMenu-root {
|
|
282
282
|
z-index: 13010 !important;
|
|
283
283
|
}
|
|
284
|
-
`;function cg({templates:C,api:s,onSelect:w,onClose:A=()=>{},customOutputChildren:o}){return I.jsxs(IC.ErrorBoundary,{FallbackComponent:Kg,children:[I.jsx(i.CssBaseline,{}),I.jsx(
|
|
284
|
+
`;function cg({templates:C,api:s,onSelect:w,onClose:A=()=>{},customOutputChildren:o}){return I.jsxs(IC.ErrorBoundary,{FallbackComponent:Kg,children:[I.jsx(i.CssBaseline,{}),I.jsx(mI.Global,{styles:dg}),I.jsx(UC,{children:I.jsx(QC,{api:s,customOutputChildren:o,children:I.jsxs(OI.ToastProvider,{children:[I.jsx(Dg,{templates:C}),I.jsx(Bg,{onSelect:w,onClose:A})]})})})]})}function zg({templates:C}){const[s,w]=m.useState(),A=m.useCallback(()=>{w(void 0)},[]),o=m.useCallback(M=>{w({open:!0,onClose:A,onChange:M.onChange,customOutputChildren:M==null?void 0:M.customOutputChildren,...M})},[A]);return{dialog:m.useMemo(()=>{if(s){const{onChange:M,onClose:j,api:O,customOutputChildren:L,...e}=s;return I.jsxs(II,{open:!0,disablePortal:!1,sx:{zIndex:13001},onClose:j,...e,children:[I.jsx(q.default,{children:I.jsx(x.default,{ml:-2,display:"flex",alignItems:"center",justifyContent:"space-between",children:I.jsx(x.default,{display:"flex",alignItems:"center",children:I.jsx($.default,{onClick:j,sx:{mr:1},children:I.jsx(_.default,{})})})})}),I.jsx(x.default,{flex:1,p:"0px 24px 16px",children:I.jsx(cg,{api:O,templates:C,onSelect:y=>{M(y||""),A()},onClose:j,customOutputChildren:L})})]})}return null},[s,C]),onShowDialog:o,onCloseDialog:A}}function Fg({options:C,onFinish:s}){const{t:w}=X.useLocaleContext(),{api:A}=p(),[o,g]=m.useState([]),[M,j]=m.useState(),[O,L]=m.useState(!1),[e,y]=m.useState(-1),J=m.useRef([]),D=async()=>{if(!C)return;j(void 0);const{template:N,...S}=C;try{L(!0);const B=A?{template:N}:{};if(A){const c=await A({...S,...B});g(z=>c?Array.isArray(c)?sI.default([...c,...z]):typeof c=="string"?sI.default([...z,c]):[...z]:[...z])}}catch(B){throw j(B),B}finally{L(!1)}};u.useAsyncEffect(async()=>{await D()},[C]);const b=()=>{var N;return M?I.jsxs(i.Box,{width:240,height:240,m:"auto",mt:"100px",children:[I.jsx(Q,{src:zI},"error"),I.jsx(i.Box,{textAlign:"center",color:"#25292F",children:w("ai.output.errorMessage")}),I.jsx(i.Button,{size:"small",onClick:D,sx:{display:"block",margin:"0 auto"},children:w("common.retry")})]}):C&&O?I.jsx(i.Box,{width:240,height:240,m:"auto",mt:"100px",children:I.jsx(Q,{src:FI},"loading")}):o&&Array.isArray(o)&&o.length>0?I.jsxs(I.Fragment,{children:[I.jsxs(i.Box,{flexGrow:1,sx:{height:0,overflow:"hidden",margin:"0 24px",display:"flex",gap:1},children:[I.jsxs(i.Box,{flex:1,sx:{bgcolor:"grey.200",borderRadius:1},children:[I.jsx(i.Box,{component:"h3",sx:{margin:"8px"},children:w("ai.text.original")}),I.jsx(i.Box,{p:1,children:(N=C==null?void 0:C.parameters)==null?void 0:N.theme})]}),I.jsxs(i.Box,{flex:1,sx:{borderColor:"grey.200",borderStyle:"dotted",borderRadius:1,overflow:"hidden",display:"flex",flexDirection:"column"},children:[I.jsx(i.Box,{component:"h3",sx:{margin:"8px"},children:w("ai.text.improve")}),I.jsx(i.Box,{flex:1,p:1,sx:{display:"flex",flexDirection:"column",gap:1,overflow:"auto"},children:o.map((S,B)=>I.jsx(yI.default.Fragment,{children:I.jsx(lg,{ref:c=>{J.current[B]=c},text:S,selected:e===B,onClick:()=>y(B)})},`${S}-${B}`))})]})]}),I.jsxs(i.Stack,{direction:"row",sx:{alignSelf:"end",gap:1,m:2},children:[I.jsx(i.Button,{size:"small",disabled:O,onClick:D,children:w("common.retry")}),I.jsx(i.Button,{size:"small",color:"primary",variant:"contained",disabled:e===-1||O,onClick:()=>{const S=J.current[e];s(S?(S==null?void 0:S.value)||" ":o[e]||"")},children:w("common.confirmDialogTitle")})]})]}):I.jsx(i.Box,{width:300,height:300,m:"auto",mt:"100px",children:I.jsx(Q,{src:aI},"welcome")})};return I.jsx(ag,{children:b()})}const ag=Z.default(i.Box)`
|
|
285
285
|
display: flex;
|
|
286
286
|
flex-direction: column;
|
|
287
287
|
flex: 1;
|
|
@@ -334,7 +334,7 @@ ${C}`}).then(w=>w.text??"")}function VC(C){const s=u.useReactive({searching:!1,s
|
|
|
334
334
|
margin: auto;
|
|
335
335
|
}
|
|
336
336
|
}
|
|
337
|
-
`;function ng(){const[C,s]=m.useState(),w=m.useMemo(()=>C?I.jsx(i.Menu,{...C}):null,[C]),A=m.useCallback(()=>{s(void 0)},[]),o=m.useCallback(g=>{s({...g,open:!0,onClose:g.onClose??A,onClick:A})},[A]);return{menu:w,showMenu:o,closeMenu:A}}let
|
|
337
|
+
`;function ng(){const[C,s]=m.useState(),w=m.useMemo(()=>C?I.jsx(i.Menu,{...C}):null,[C]),A=m.useCallback(()=>{s(void 0)},[]),o=m.useCallback(g=>{s({...g,open:!0,onClose:g.onClose??A,onClick:A})},[A]);return{menu:w,showMenu:o,closeMenu:A}}let wI;function Xg({locale:C,locales:s,path:w,children:A,onChange:o,value:g}){var B;const M=!!KI("ai-kit"),j=v.useAsync(()=>(wI??(wI=M?dI():Promise.resolve({available:!1})),wI),[M]),{t:O}=X.useLocaleContext(),{menu:L,showMenu:e}=ng(),{state:{supportedLocales:y}}=H.useStore(),[J,D]=m.useState(!1),b=y.filter(c=>c.locale!==C).map(c=>{var T,W;const z=(W=(T=nC.default(s[c.locale],w))==null?void 0:T.trim)==null?void 0:W.call(T);return typeof z!="string"||!z?null:{locale:c.locale,language:c.name,text:z}}).filter(r.nonNullable);if(!M)return I.jsx(MI,{children:A});const N=!b.length&&!g,S=[g?{locale:C,language:O("translate.localInput"),text:g}:null,...b].filter(r.nonNullable);return I.jsxs(MI,{children:[I.jsxs(i.IconButton,{disabled:N||!((B=j.value)!=null&&B.available),className:yC.cx("language-button",(!!L||J)&&"active"),size:"small",onClick:c=>e({anchorEl:c.currentTarget,anchorOrigin:{horizontal:"right",vertical:"bottom"},transformOrigin:{horizontal:"right",vertical:"top"},sx:{maxWidth:400},children:S.map(z=>I.jsx(i.MenuItem,{onClick:async()=>{var T,W;D(!0);try{await GC({text:z.text,language:C}).then(d=>{o&&typeof o=="function"?o(d):XC.default(s[C],w,d)})}catch(d){throw DI.default.error(((W=(T=d.response)==null?void 0:T.data)==null?void 0:W.message)||d.message),d}finally{D(!1)}},children:I.jsx(i.ListItemText,{primary:`${O("maker.properties.translateFrom")} ${z.language}`,secondary:z.text,primaryTypographyProps:{noWrap:!0,textOverflow:"ellipsis"},secondaryTypographyProps:{noWrap:!0,textOverflow:"ellipsis"}})},z.locale))}),children:[I.jsx(Y.Language,{fontSize:"small"}),J&&I.jsx(i.CircularProgress,{size:22})]}),L,A]})}const MI=f.styled(i.Box)`
|
|
338
338
|
> .language-button {
|
|
339
339
|
display: none;
|
|
340
340
|
z-index: 1;
|
|
@@ -375,4 +375,4 @@ ${C}`}).then(w=>w.text??"")}function VC(C){const s=u.useReactive({searching:!1,s
|
|
|
375
375
|
display: inline-flex;
|
|
376
376
|
}
|
|
377
377
|
}
|
|
378
|
-
`,Wg="primary",xg="contained",MI={id:H.nextId(),color:Wg,variant:xg,text:"",link:"",icon:"",size:"medium"};function Yg({children:C}){return C}const rg=m.forwardRef(function({locale:s,locales:w,onSave:A=()=>{}},o){const{t:g}=X.useLocaleContext(),[M,{setFalse:j,setTrue:O}]=u.useBoolean(!1),[L,e]=m.useState({...MI}),[y,J]=m.useState(-1),D=m.useCallback(()=>{j()},[j]);m.useImperativeHandle(o,()=>({open(S,B){e(a.produce(L,c=>{Object.assign(c,{...MI},{...S,link:(S==null?void 0:S.link)||(S==null?void 0:S.linkId)})})),O(),J(B===void 0?-1:B)},close(){D()}}));const b=()=>{A(L,D)},N=y>-1?lI:Yg;return I.jsxs(i.Dialog,{open:M,onClose:D,children:[I.jsx(i.DialogTitle,{children:g("maker.properties.button")}),I.jsxs(i.DialogContent,{sx:{width:350},children:[I.jsx(i.Box,{my:2,children:I.jsx(rC,{value:L.icon||"",onChange:S=>{e(a.produce(L,B=>{B.icon=S}))}})}),I.jsx(i.Box,{my:2,children:I.jsx(N,{locale:s,locales:w,path:["actions",y,"text"],value:L.text,onChange:S=>{y>-1&&typeof S=="string"&&e(a.produce(L,B=>{B.text=S}))},children:I.jsx(U.ConfigString,{label:g("maker.properties.title"),value:L.text,onChange:S=>{e(a.produce(L,B=>{B.text=S}))}})})}),I.jsx(i.Box,{my:2,children:I.jsx(G,{label:g("maker.properties.color"),options:[{value:"primary",title:"Primary"},{value:"secondary",title:"Secondary"},{value:"info",title:"Info"},{value:"success",title:"Success"},{value:"warning",title:"Warning"},{value:"error",title:"Error"}],value:L.color||"",onChange:S=>{e(a.produce(L,B=>{B.color=S}))}})}),I.jsx(i.Box,{my:2,children:I.jsx(G,{label:g("maker.properties.variant"),options:[{value:"contained",title:"Contained"},{value:"outlined",title:"Outlined"}],value:L.variant||"",onChange:S=>{e(a.produce(L,B=>{B.variant=S}))}})}),I.jsx(i.Box,{my:2,children:I.jsx(G,{label:g("maker.properties.size"),options:[{value:"large",title:"Large"},{value:"medium",title:"Medium"},{value:"small",title:"Small"}],value:L.size||"",onChange:S=>{e(a.produce(L,B=>{B.size=S}))}})}),I.jsx(i.Box,{my:2,children:I.jsx(bI,{label:g("maker.properties.link"),value:L.link,onChange:S=>{e(a.produce(L,B=>{B.link=S}))}})})]}),I.jsxs(i.DialogActions,{children:[I.jsx(i.Button,{variant:"outlined",size:"small",onClick:D,children:g("common.cancel")}),I.jsx(i.Button,{variant:"contained",size:"small",onClick:b,children:g("maker.save")})]})]})});function hg({value:C,locale:s,locales:w,onChange:A=()=>{}}){var J;const o=m.useRef(null),{t:g}=X.useLocaleContext(),M=u.useReactive({actionIndex:void 0}),j=()=>{var D;M.actionIndex=void 0,(D=o.current)==null||D.open({id:H.nextId()},-1)},O=D=>{var N;const b=C==null?void 0:C.findIndex(S=>S===D);M.actionIndex=b,(N=o.current)==null||N.open(D,b===void 0?-1:b)},L=D=>{A(a.produce(C,b=>{b.splice(D,1)}))},e=(D,b)=>{A(a.produce(C,N=>{N&&M.actionIndex!==void 0?Object.assign(N[M.actionIndex],D):N.push(D)})),b()},y=(D,b)=>{A(a.produce(C,N=>{N.splice(b,0,...N.splice(N.findIndex(S=>S.id===D),1))}))};return I.jsxs(I.Fragment,{children:[I.jsxs(xC,{label:g("maker.properties.buttons"),children:[I.jsx(i.ThemeProvider,{theme:pI.pagesTheme,children:(J=C.map)==null?void 0:J.call(C,(D,b)=>I.jsx(TC,{dragType:"SECTION_ACTION_DND_TYPE",dropType:"SECTION_ACTION_DND_TYPE",id:D.id,index:b,title:I.jsx(r.Action,{...D,size:"small",editing:!0}),move:(N,S)=>y(N,S),actions:I.jsxs(I.Fragment,{children:[I.jsx(i.Box,{mr:.35,onClick:()=>A(a.produce(C,N=>{N.splice(b+1,0,{...D,id:H.nextId()})})),children:I.jsx(Y.CopyAll,{})}),I.jsx(i.Box,{mr:.35,onClick:()=>O(D),children:I.jsx(Y.Settings,{})}),I.jsx(i.Box,{onClick:()=>L(b),children:I.jsx(Y.Delete,{})})]})},D.id))}),I.jsxs(i.Button,{onClick:j,startIcon:I.jsx(Y.Add,{}),fullWidth:!0,children:[g("common.add")," ",g("maker.properties.button")]})]}),I.jsx(rg,{ref:o,onSave:e,locale:s,locales:w})]})}const LI={align:"left",actions:[],title:"",description:"",icon:"",image:"",link:""};function Zg({children:C}){return C}m.forwardRef(function({onSave:s=()=>{},type:w,locale:A,locales:o},g){const{t:M}=X.useLocaleContext(),[j,{setFalse:O,setTrue:L}]=u.useBoolean(!1),e=u.useUpdate(),y=m.useRef({...LI,id:H.nextId()}),J=y.current,D=m.useCallback(d=>{y.current=typeof d=="function"?d(y.current):d,e()},[]),b=m.useCallback(()=>{O()},[O]),[N,S]=m.useState(-1);m.useImperativeHandle(g,()=>({open(d={},t=-1){D(a.produce(J,K=>{Object.assign(K,{...LI},d||{},{})})),L(),S(t===void 0?-1:t)},close(){b()}}));const[B,c]=m.useState(!1),z=m.useRef(null),T=async()=>{var d;try{c(!0),await((d=z.current)==null?void 0:d.submit()),s(y.current,b)}finally{c(!1)}},W=N>-1?lI:Zg;return I.jsxs(i.Dialog,{open:j,onClose:b,disableEnforceFocus:!0,children:[I.jsx(i.DialogTitle,{children:M("section.card.title")}),I.jsx(i.DialogContent,{sx:{width:500},children:I.jsxs(i.Box,{children:[I.jsx(i.Box,{my:2,children:I.jsx(W,{locale:A,locales:o,path:["list",N,"title"],value:J.title,onChange:d=>{N>-1&&typeof d=="string"&&D(a.produce(J,t=>{t.title=d}))},children:I.jsx(U.ConfigString,{label:M("maker.properties.title"),value:J.title,onChange:d=>{D(a.produce(J,t=>{t.title=d}))}})})}),I.jsx(i.Box,{my:2,children:I.jsx(W,{locale:A,locales:o,path:["list",N,"description"],value:J.description,onChange:d=>{N>-1&&typeof d=="string"&&D(a.produce(J,t=>{t.description=d}))},children:I.jsx(U.ConfigString,{label:M("maker.properties.description"),multiline:!0,minRows:3,value:J.description,onChange:d=>{D(a.produce(J,t=>{t.description=d}))}})})}),I.jsx(i.Box,{my:2,children:I.jsx(bI,{label:M("maker.properties.link"),value:J.link,onChange:d=>{D(a.produce(J,t=>{t.link=d}))}})}),I.jsx(i.Box,{my:2,children:I.jsx(U.ConfigString,{ref:z,label:M("maker.properties.image"),value:J.image,onChange:(d,t)=>{D(a.produce(J,K=>{K.image=d,K.imageMeta=t}))},showUploader:!0})}),w!=="simple"&&I.jsx(hg,{value:J.actions||[],onChange:d=>{D(a.produce(J,t=>{t.actions=d}))},locale:A,locales:o})]})}),I.jsxs(i.DialogActions,{children:[I.jsx(i.Button,{variant:"outlined",size:"small",onClick:b,children:M("common.cancel")}),I.jsx(RI.LoadingButton,{loading:B,variant:"contained",size:"small",onClick:T,children:M("maker.save")})]})]})});const Qg={type:"default",title:"Section CardList",description:"This is Section CardList",center:!0,dark:!1,background:"",col:3,gap:2,align:"top",textAlign:"left",iconSize:100,padding:"normal",list:[{id:H.nextId(),title:"Simplified Service Delivery",description:"Block Server's Service Gateway makes networking easy with access to load balancing, SSL termination, automatic and customizable URL mapping, and redirects.",image:"https://www.arcblock.io/static/ead0cabde7f2b7ff34db8f3e8ceca271/afc4b/builder.png"}]};function kg({componentId:C,locale:s,components:w}){const{state:{config:{defaultLocale:A}},localState:{customComponentPreviewerProperties:o}}=H.useStore(),g=H.useAllComponents();return I.jsx(bC.CustomComponentRenderer,{componentId:C,locale:s,dev:{mode:"draft",components:w||g,defaultLocale:A},properties:o})}const jI=260,Rg=5,tI="IGNORE_RENDER_BLOCKLET_TITLE",V=(C,s)=>C?Object.entries(C).map(([w,A])=>{var o,g,M;return{id:w,component:w,name:((o=A==null?void 0:A.data)==null?void 0:o.name)||((g=A==null?void 0:A.component)==null?void 0:g.name)||w,properties:(A==null?void 0:A.data)||A.component,previewImage:((M=A==null?void 0:A.data)==null?void 0:M.previewImage)||null,type:s,blockletId:A==null?void 0:A.blockletId,blockletTitle:A==null?void 0:A.blockletTitle}}):[],HI=[{id:"section",name:"Section",properties:r.SectionBlockDefaultProps},{id:"section-card-list",name:"SectionCardList",properties:Qg},{id:"toc",name:"Toc",properties:r.TocDefaultProps},{id:"iframe",name:"Embed",properties:r.IFrameBlockDefaultProps}].map(C=>({...C,type:"basic",component:C.id}));function EI({state:C,open:s,onClose:w,onSelect:A,defaultTab:o,title:g,componentGroups:M,components:j,multiple:O=!1,defaultSelected:L,emptyText:e}){var t;const{t:y}=X.useLocaleContext(),J=u.useReactive({selectedComponent:null,activeTab:o,searchQuery:""}),D=m.useMemo(()=>M||[{name:"basic",label:y("maker.components.basicGroup"),components:HI},C&&{name:"custom",label:y("maker.components.customGroup"),components:V(H.getCustomComponents(C),"custom")},C&&{name:"resource",label:y("maker.components.resourceGroup"),components:V(H.getResourceComponents(C),"resource")}].filter(Boolean),[M,y,C,s]),b=J.activeTab||((t=D[0])==null?void 0:t.name),N=()=>{J.selectedComponent&&(A(J.selectedComponent),w())},S=K=>{if(K){if(B(K)){O?J.selectedComponent=J.selectedComponent.filter(l=>l.id!==K.id):J.selectedComponent=null;return}if(O){const l=Array.isArray(J.selectedComponent)?J.selectedComponent:[],n=l.some(k=>k.id===K.id);J.selectedComponent=n?l.filter(k=>k.id!==K.id):[...l,K]}else J.selectedComponent=K}},B=K=>J.selectedComponent?O?J.selectedComponent.some(l=>l.id===K.id):J.selectedComponent.id===K.id:!1,c=(D==null?void 0:D.length)===0,z=m.useMemo(()=>{var l;const K=((l=D.find(n=>(n==null?void 0:n.name)===b))==null?void 0:l.components)||[];return J.searchQuery?K.filter(n=>n.name.toLowerCase().includes(J.searchQuery.toLowerCase())):K},[b,D,J.searchQuery]);m.useEffect(()=>{J.searchQuery="",s&&L?J.selectedComponent=O?Array.isArray(L)?L:[L]:L:J.selectedComponent=null},[s,L,O]);const T=(z==null?void 0:z.length)===0,W=e||y(b==="resource"?"maker.components.needAddResource":"maker.components.noComponents"),d=m.useMemo(()=>z?z.reduce((K,l)=>{const n=l.blockletId||tI,k=l.blockletTitle||y("maker.components.defaultGroup");return K[n]||(K[n]={title:k,components:[]}),K[n].components.push(l),K},{}):{},[z]);return I.jsxs(i.Dialog,{open:s,onClose:w,maxWidth:"lg",fullWidth:!0,PaperProps:{sx:{height:"80vh",maxHeight:"80vh",display:"flex",flexDirection:"column"}},children:[I.jsxs(i.DialogTitle,{className:"between",sx:{display:"flex",gap:2},children:[I.jsx(i.Box,{children:g||y("maker.components.addComponent")}),I.jsx(i.TextField,{size:"small",placeholder:y("maker.components.searchComponent"),value:J.searchQuery,onChange:K=>J.searchQuery=K.target.value,sx:{flex:1,maxWidth:350},InputProps:{startAdornment:I.jsx(R.Icon,{icon:"tabler:search",style:{marginRight:8,color:"rgba(0, 0, 0, 0.54)"}})}}),I.jsx(i.IconButton,{size:"small",onClick:w,children:I.jsx(R.Icon,{icon:"tabler:x"})})]}),I.jsxs(i.DialogContent,{sx:{display:"flex",gap:2,pl:"8px !important",flex:1,overflow:"hidden"},children:[!c&&I.jsx(i.Box,{sx:{width:150,borderRight:1,borderColor:"divider"},children:I.jsx(i.Tabs,{orientation:"vertical",value:b,onChange:(K,l)=>J.activeTab=l,sx:{"& .MuiTab-root":{alignItems:"flex-start",textAlign:"left",minHeight:48,py:1.5,px:2}},children:D.map((K,l)=>I.jsx(i.Tab,{label:K==null?void 0:K.label,value:K==null?void 0:K.name},l))})}),I.jsx(i.Box,{sx:{flex:1,overflowX:"hidden",overflowY:"auto",pr:1},children:T?I.jsx(BI.default,{children:W}):I.jsx(nI,{wrapperComponent:i.Grid,wrapperComponentProps:{container:!0,spacing:2,sx:T?{height:"100%"}:{}},groups:d,emptyText:W,renderItem:K=>{const l=B(K);return I.jsx(i.Grid,{item:!0,xs:12,md:6,lg:4,sx:{width:"100%","& .add-component-card":{boxShadow:"none",border:1,borderColor:l?"primary.main":"grey.200","& .check-container":{display:l?"flex":"none",position:"absolute",right:0,bottom:0,justifyContent:"flex-end",alignItems:"flex-end",width:30,height:30,overflow:"hidden",transition:"all 0.3s ease",color:"white","&::after":{position:"absolute",zIndex:0,display:"block",width:0,height:0,borderTop:"transparent solid 15px",borderLeft:"transparent solid 15px",borderBottom:n=>`solid 15px ${n.palette.primary.main}`,borderRight:n=>`solid 15px ${n.palette.primary.main}`,transition:"all 0.1s ease",content:'""'},"& .check-icon":{position:"relative",zIndex:2,margin:"0 1px 1px 0",fontSize:16,transition:"all 0.2s ease"}}}},children:I.jsxs(i.Card,{className:"add-component-card",sx:{position:"relative",width:"100%",cursor:"pointer"},onClick:()=>S(K),children:[I.jsx(i.CardMedia,{sx:{width:"100%",height:jI,overflow:"auto",position:"relative"},children:I.jsx(uI,{components:j,containerHeight:jI,component:K},K.id)}),I.jsx(i.CardContent,{sx:{bgcolor:"background.paper",borderTop:1,borderColor:l?"primary.main":"grey.200"},children:I.jsx(i.Typography,{variant:"body1",noWrap:!0,sx:{fontWeight:"bold"},children:K.name})}),I.jsx(i.Box,{className:"check-container",children:I.jsx(NC.default,{className:"check-icon"})})]})},K.id)}})})]}),I.jsxs(i.DialogActions,{sx:{borderTop:1,borderColor:"divider",p:2},children:[I.jsx(i.Button,{onClick:w,variant:"outlined",children:y("common.cancel")}),I.jsx(i.Button,{onClick:N,variant:"contained",disabled:!J.selectedComponent||O&&Array.isArray(J.selectedComponent)&&J.selectedComponent.length===0,children:O&&Array.isArray(J.selectedComponent)&&J.selectedComponent.length>0?y("common.addMultiple",{count:J.selectedComponent.length}):y("common.add")})]})]})}function uI({containerHeight:C,component:s,minScale:w=.1,components:A}){const{locale:o}=X.useLocaleContext(),g=u.useReactive({scale:1,shouldScroll:!1,isVisible:!1,hadInit:!1}),M=m.useRef(null),j=m.useRef(null),O=m.useRef(0),L=m.useRef(null);m.useEffect(()=>{const S=new IntersectionObserver(([B])=>{g.isVisible=B.isIntersecting},{root:null,rootMargin:"50px",threshold:0});return j.current&&S.observe(j.current),()=>S.disconnect()},[]),m.useEffect(()=>{const S=()=>{if(O.current+=1,O.current>Rg){B.disconnect();return}if(!s.previewImage&&M.current){const c=M.current.scrollHeight,z=C/c;z<w?(g.scale=w,g.shouldScroll=!0):z<1?(g.scale=z,g.shouldScroll=!1):(g.scale=1,g.shouldScroll=!1)}L.current&&clearTimeout(L.current),L.current=setTimeout(()=>{g.hadInit=!0},200)},B=new ResizeObserver(()=>{setTimeout(S,20)});return M.current&&g.isVisible&&B.observe(M.current),()=>{B.disconnect()}},[C,w,g.isVisible,s]);const{id:e,type:y,component:J,properties:D,previewImage:b}=s,N=m.useMemo(()=>g.isVisible?b?I.jsx(i.Box,{component:"img",loading:"lazy",sx:{objectFit:"cover",borderRadius:1,cursor:"pointer"},src:H.getImageAbsoluteUrl(b),alt:s.name,width:"100%",height:"100%"},e):y==="basic"?I.jsx(r.BlockRenderer,{id:e,type:J,section:D,config:{...D,locale:o,editing:!1,dev:{mode:"draft"}}},e):I.jsx(kg,{componentId:e,locale:o,components:A},e):null,[e,y,J,D,o,b,g.isVisible]);return I.jsx(i.Box,{ref:j,sx:{position:"relative",width:"100%",height:"100%",overflowX:"hidden",overflowY:g.shouldScroll?"auto":"hidden",transition:"all 0.3s ease"},children:I.jsxs(i.Box,{sx:{transform:`scale(${g.scale})`,transformOrigin:"top left",width:`${100/g.scale}%`,height:g.hadInit&&g.shouldScroll?"100%":`${100/g.scale}%`},children:[!g.hadInit&&I.jsx(i.Skeleton,{variant:"rectangular",width:"100%",height:"100%"}),I.jsx(i.Box,{ref:M,sx:{width:"100%",height:b?"100%":"auto",pointerEvents:"none",opacity:g.hadInit?1:0},children:N})]})})}function nI({groups:C,emptyText:s,renderItem:w,wrapperComponent:A=i.Box,wrapperComponentProps:o={display:"inline-flex",flexWrap:"wrap",gap:1}}){return I.jsx(i.Box,{children:Object.keys(C).length>0?Object.entries(C).map(([g,{title:M,components:j}])=>I.jsxs(i.Box,{mb:3,children:[g!==tI&&I.jsxs(i.Typography,{className:"blocklet-title",variant:"subtitle2",sx:{mb:2,fontWeight:500,color:"text.primary",display:"flex",alignItems:"center",gap:1},children:[I.jsx(i.Box,{component:"span",sx:{width:4,height:20,backgroundColor:"primary.main",borderRadius:1,display:"inline-block"}}),M]}),I.jsx(A,{...o,children:j.map(O=>w(O))})]},g)):I.jsx(BI.default,{children:s})})}exports.AddComponent=EI;exports.AutoScaledComponentRenderer=uI;exports.BASIC_COMPONENT_LIST=HI;exports.GroupedComponentsList=nI;exports.default=EI;exports.formatComponent=V;
|
|
378
|
+
`,Wg="primary",xg="contained",LI={id:H.nextId(),color:Wg,variant:xg,text:"",link:"",icon:"",size:"medium"};function Yg({children:C}){return C}const rg=m.forwardRef(function({locale:s,locales:w,onSave:A=()=>{}},o){const{t:g}=X.useLocaleContext(),[M,{setFalse:j,setTrue:O}]=u.useBoolean(!1),[L,e]=m.useState({...LI}),[y,J]=m.useState(-1),D=m.useCallback(()=>{j()},[j]);m.useImperativeHandle(o,()=>({open(S,B){e(a.produce(L,c=>{Object.assign(c,{...LI},{...S,link:(S==null?void 0:S.link)||(S==null?void 0:S.linkId)})})),O(),J(B===void 0?-1:B)},close(){D()}}));const b=()=>{A(L,D)},N=y>-1?lI:Yg;return I.jsxs(i.Dialog,{open:M,onClose:D,children:[I.jsx(i.DialogTitle,{children:g("maker.properties.button")}),I.jsxs(i.DialogContent,{sx:{width:350},children:[I.jsx(i.Box,{my:2,children:I.jsx(rC,{value:L.icon||"",onChange:S=>{e(a.produce(L,B=>{B.icon=S}))}})}),I.jsx(i.Box,{my:2,children:I.jsx(N,{locale:s,locales:w,path:["actions",y,"text"],value:L.text,onChange:S=>{y>-1&&typeof S=="string"&&e(a.produce(L,B=>{B.text=S}))},children:I.jsx(U.ConfigString,{label:g("maker.properties.title"),value:L.text,onChange:S=>{e(a.produce(L,B=>{B.text=S}))}})})}),I.jsx(i.Box,{my:2,children:I.jsx(G,{label:g("maker.properties.color"),options:[{value:"primary",title:"Primary"},{value:"secondary",title:"Secondary"},{value:"info",title:"Info"},{value:"success",title:"Success"},{value:"warning",title:"Warning"},{value:"error",title:"Error"}],value:L.color||"",onChange:S=>{e(a.produce(L,B=>{B.color=S}))}})}),I.jsx(i.Box,{my:2,children:I.jsx(G,{label:g("maker.properties.variant"),options:[{value:"contained",title:"Contained"},{value:"outlined",title:"Outlined"}],value:L.variant||"",onChange:S=>{e(a.produce(L,B=>{B.variant=S}))}})}),I.jsx(i.Box,{my:2,children:I.jsx(G,{label:g("maker.properties.size"),options:[{value:"large",title:"Large"},{value:"medium",title:"Medium"},{value:"small",title:"Small"}],value:L.size||"",onChange:S=>{e(a.produce(L,B=>{B.size=S}))}})}),I.jsx(i.Box,{my:2,children:I.jsx(bI,{label:g("maker.properties.link"),value:L.link,onChange:S=>{e(a.produce(L,B=>{B.link=S}))}})})]}),I.jsxs(i.DialogActions,{children:[I.jsx(i.Button,{variant:"outlined",size:"small",onClick:D,children:g("common.cancel")}),I.jsx(i.Button,{variant:"contained",size:"small",onClick:b,children:g("maker.save")})]})]})});function hg({value:C,locale:s,locales:w,onChange:A=()=>{}}){var J;const o=m.useRef(null),{t:g}=X.useLocaleContext(),M=u.useReactive({actionIndex:void 0}),j=()=>{var D;M.actionIndex=void 0,(D=o.current)==null||D.open({id:H.nextId()},-1)},O=D=>{var N;const b=C==null?void 0:C.findIndex(S=>S===D);M.actionIndex=b,(N=o.current)==null||N.open(D,b===void 0?-1:b)},L=D=>{A(a.produce(C,b=>{b.splice(D,1)}))},e=(D,b)=>{A(a.produce(C,N=>{N&&M.actionIndex!==void 0?Object.assign(N[M.actionIndex],D):N.push(D)})),b()},y=(D,b)=>{A(a.produce(C,N=>{N.splice(b,0,...N.splice(N.findIndex(S=>S.id===D),1))}))};return I.jsxs(I.Fragment,{children:[I.jsxs(xC,{label:g("maker.properties.buttons"),children:[I.jsx(i.ThemeProvider,{theme:pI.pagesTheme,children:(J=C.map)==null?void 0:J.call(C,(D,b)=>I.jsx(TC,{dragType:"SECTION_ACTION_DND_TYPE",dropType:"SECTION_ACTION_DND_TYPE",id:D.id,index:b,title:I.jsx(r.Action,{...D,size:"small",editing:!0}),move:(N,S)=>y(N,S),actions:I.jsxs(I.Fragment,{children:[I.jsx(i.Box,{mr:.35,onClick:()=>A(a.produce(C,N=>{N.splice(b+1,0,{...D,id:H.nextId()})})),children:I.jsx(Y.CopyAll,{})}),I.jsx(i.Box,{mr:.35,onClick:()=>O(D),children:I.jsx(Y.Settings,{})}),I.jsx(i.Box,{onClick:()=>L(b),children:I.jsx(Y.Delete,{})})]})},D.id))}),I.jsxs(i.Button,{onClick:j,startIcon:I.jsx(Y.Add,{}),fullWidth:!0,children:[g("common.add")," ",g("maker.properties.button")]})]}),I.jsx(rg,{ref:o,onSave:e,locale:s,locales:w})]})}const jI={align:"left",actions:[],title:"",description:"",icon:"",image:"",link:""};function Zg({children:C}){return C}m.forwardRef(function({onSave:s=()=>{},type:w,locale:A,locales:o},g){const{t:M}=X.useLocaleContext(),[j,{setFalse:O,setTrue:L}]=u.useBoolean(!1),e=u.useUpdate(),y=m.useRef({...jI,id:H.nextId()}),J=y.current,D=m.useCallback(d=>{y.current=typeof d=="function"?d(y.current):d,e()},[]),b=m.useCallback(()=>{O()},[O]),[N,S]=m.useState(-1);m.useImperativeHandle(g,()=>({open(d={},t=-1){D(a.produce(J,K=>{Object.assign(K,{...jI},d||{},{})})),L(),S(t===void 0?-1:t)},close(){b()}}));const[B,c]=m.useState(!1),z=m.useRef(null),T=async()=>{var d;try{c(!0),await((d=z.current)==null?void 0:d.submit()),s(y.current,b)}finally{c(!1)}},W=N>-1?lI:Zg;return I.jsxs(i.Dialog,{open:j,onClose:b,disableEnforceFocus:!0,children:[I.jsx(i.DialogTitle,{children:M("section.card.title")}),I.jsx(i.DialogContent,{sx:{width:500},children:I.jsxs(i.Box,{children:[I.jsx(i.Box,{my:2,children:I.jsx(W,{locale:A,locales:o,path:["list",N,"title"],value:J.title,onChange:d=>{N>-1&&typeof d=="string"&&D(a.produce(J,t=>{t.title=d}))},children:I.jsx(U.ConfigString,{label:M("maker.properties.title"),value:J.title,onChange:d=>{D(a.produce(J,t=>{t.title=d}))}})})}),I.jsx(i.Box,{my:2,children:I.jsx(W,{locale:A,locales:o,path:["list",N,"description"],value:J.description,onChange:d=>{N>-1&&typeof d=="string"&&D(a.produce(J,t=>{t.description=d}))},children:I.jsx(U.ConfigString,{label:M("maker.properties.description"),multiline:!0,minRows:3,value:J.description,onChange:d=>{D(a.produce(J,t=>{t.description=d}))}})})}),I.jsx(i.Box,{my:2,children:I.jsx(bI,{label:M("maker.properties.link"),value:J.link,onChange:d=>{D(a.produce(J,t=>{t.link=d}))}})}),I.jsx(i.Box,{my:2,children:I.jsx(U.ConfigString,{ref:z,label:M("maker.properties.image"),value:J.image,onChange:(d,t)=>{D(a.produce(J,K=>{K.image=d,K.imageMeta=t}))},showUploader:!0})}),w!=="simple"&&I.jsx(hg,{value:J.actions||[],onChange:d=>{D(a.produce(J,t=>{t.actions=d}))},locale:A,locales:o})]})}),I.jsxs(i.DialogActions,{children:[I.jsx(i.Button,{variant:"outlined",size:"small",onClick:b,children:M("common.cancel")}),I.jsx(RI.LoadingButton,{loading:B,variant:"contained",size:"small",onClick:T,children:M("maker.save")})]})]})});const Qg={type:"default",title:"Section CardList",description:"This is Section CardList",center:!0,dark:!1,background:"",col:3,gap:2,align:"top",textAlign:"left",iconSize:100,padding:"normal",list:[{id:H.nextId(),title:"Simplified Service Delivery",description:"Block Server's Service Gateway makes networking easy with access to load balancing, SSL termination, automatic and customizable URL mapping, and redirects.",image:"https://www.arcblock.io/static/ead0cabde7f2b7ff34db8f3e8ceca271/afc4b/builder.png"}]};function kg({componentId:C,locale:s,components:w}){const{state:{config:{defaultLocale:A}},localState:{customComponentPreviewerProperties:o}}=H.useStore(),g=H.useAllComponents();return I.jsx(bC.CustomComponentRenderer,{componentId:C,locale:s,dev:{mode:"draft",components:w||g,defaultLocale:A},properties:o})}const JI=260,Rg=5,tI="IGNORE_RENDER_BLOCKLET_TITLE",V=(C,s)=>C?Object.entries(C).map(([w,A])=>{var o,g,M;return{id:w,component:w,name:((o=A==null?void 0:A.data)==null?void 0:o.name)||((g=A==null?void 0:A.component)==null?void 0:g.name)||w,properties:(A==null?void 0:A.data)||A.component,previewImage:((M=A==null?void 0:A.data)==null?void 0:M.previewImage)||null,type:s,blockletId:A==null?void 0:A.blockletId,blockletTitle:A==null?void 0:A.blockletTitle}}):[],HI=[{id:"section",name:"Section",properties:r.SectionBlockDefaultProps},{id:"section-card-list",name:"SectionCardList",properties:Qg},{id:"toc",name:"Toc",properties:r.TocDefaultProps},{id:"iframe",name:"Embed",properties:r.IFrameBlockDefaultProps}].map(C=>({...C,type:"basic",component:C.id}));function EI({state:C,open:s,onClose:w,onSelect:A,defaultTab:o,title:g,componentGroups:M,components:j,multiple:O=!1,defaultSelected:L,emptyText:e}){var t;const{t:y}=X.useLocaleContext(),J=u.useReactive({selectedComponent:null,activeTab:o,searchQuery:""}),D=m.useMemo(()=>M||[{name:"basic",label:y("maker.components.basicGroup"),components:HI},C&&{name:"custom",label:y("maker.components.customGroup"),components:V(H.getCustomComponents(C),"custom")},C&&{name:"resource",label:y("maker.components.resourceGroup"),components:V(H.getResourceComponents(C),"resource")}].filter(Boolean),[M,y,C,s]),b=J.activeTab||((t=D[0])==null?void 0:t.name),N=()=>{J.selectedComponent&&(A(J.selectedComponent),w())},S=K=>{if(K){if(B(K)){O?J.selectedComponent=J.selectedComponent.filter(l=>l.id!==K.id):J.selectedComponent=null;return}if(O){const l=Array.isArray(J.selectedComponent)?J.selectedComponent:[],n=l.some(k=>k.id===K.id);J.selectedComponent=n?l.filter(k=>k.id!==K.id):[...l,K]}else J.selectedComponent=K}},B=K=>J.selectedComponent?O?J.selectedComponent.some(l=>l.id===K.id):J.selectedComponent.id===K.id:!1,c=(D==null?void 0:D.length)===0,z=m.useMemo(()=>{var l;const K=((l=D.find(n=>(n==null?void 0:n.name)===b))==null?void 0:l.components)||[];return J.searchQuery?K.filter(n=>n.name.toLowerCase().includes(J.searchQuery.toLowerCase())):K},[b,D,J.searchQuery]);m.useEffect(()=>{J.searchQuery="",s&&L?J.selectedComponent=O?Array.isArray(L)?L:[L]:L:J.selectedComponent=null},[s,L,O]);const T=(z==null?void 0:z.length)===0,W=e||y(b==="resource"?"maker.components.needAddResource":"maker.components.noComponents"),d=m.useMemo(()=>z?z.reduce((K,l)=>{const n=l.blockletId||tI,k=l.blockletTitle||y("maker.components.defaultGroup");return K[n]||(K[n]={title:k,components:[]}),K[n].components.push(l),K},{}):{},[z]);return I.jsxs(i.Dialog,{open:s,onClose:w,maxWidth:"lg",fullWidth:!0,PaperProps:{sx:{height:"80vh",maxHeight:"80vh",display:"flex",flexDirection:"column"}},children:[I.jsxs(i.DialogTitle,{className:"between",sx:{display:"flex",gap:2},children:[I.jsx(i.Box,{children:g||y("maker.components.addComponent")}),I.jsx(i.TextField,{size:"small",placeholder:y("maker.components.searchComponent"),value:J.searchQuery,onChange:K=>J.searchQuery=K.target.value,sx:{flex:1,maxWidth:350},InputProps:{startAdornment:I.jsx(R.Icon,{icon:"tabler:search",style:{marginRight:8,color:"rgba(0, 0, 0, 0.54)"}})}}),I.jsx(i.IconButton,{size:"small",onClick:w,children:I.jsx(R.Icon,{icon:"tabler:x"})})]}),I.jsxs(i.DialogContent,{sx:{display:"flex",gap:2,pl:"8px !important",flex:1,overflow:"hidden"},children:[!c&&I.jsx(i.Box,{sx:{width:150,borderRight:1,borderColor:"divider"},children:I.jsx(i.Tabs,{orientation:"vertical",value:b,onChange:(K,l)=>J.activeTab=l,sx:{"& .MuiTab-root":{alignItems:"flex-start",textAlign:"left",minHeight:48,py:1.5,px:2}},children:D.map((K,l)=>I.jsx(i.Tab,{label:K==null?void 0:K.label,value:K==null?void 0:K.name},l))})}),I.jsx(i.Box,{sx:{flex:1,overflowX:"hidden",overflowY:"auto",pr:1},children:T?I.jsx(BI.default,{children:W}):I.jsx(nI,{wrapperComponent:i.Grid,wrapperComponentProps:{container:!0,spacing:2,sx:T?{height:"100%"}:{}},groups:d,emptyText:W,renderItem:K=>{const l=B(K);return I.jsx(i.Grid,{item:!0,xs:12,md:6,lg:4,sx:{width:"100%","& .add-component-card":{boxShadow:"none",border:1,borderColor:l?"primary.main":"grey.200","& .check-container":{display:l?"flex":"none",position:"absolute",right:0,bottom:0,justifyContent:"flex-end",alignItems:"flex-end",width:30,height:30,overflow:"hidden",transition:"all 0.3s ease",color:"white","&::after":{position:"absolute",zIndex:0,display:"block",width:0,height:0,borderTop:"transparent solid 15px",borderLeft:"transparent solid 15px",borderBottom:n=>`solid 15px ${n.palette.primary.main}`,borderRight:n=>`solid 15px ${n.palette.primary.main}`,transition:"all 0.1s ease",content:'""'},"& .check-icon":{position:"relative",zIndex:2,margin:"0 1px 1px 0",fontSize:16,transition:"all 0.2s ease"}}}},children:I.jsxs(i.Card,{className:"add-component-card",sx:{position:"relative",width:"100%",cursor:"pointer"},onClick:()=>S(K),children:[I.jsx(i.CardMedia,{sx:{width:"100%",height:JI,overflow:"auto",position:"relative"},children:I.jsx(uI,{components:j,containerHeight:JI,component:K},K.id)}),I.jsx(i.CardContent,{sx:{bgcolor:"background.paper",borderTop:1,borderColor:l?"primary.main":"grey.200"},children:I.jsx(i.Typography,{variant:"body1",noWrap:!0,sx:{fontWeight:"bold"},children:K.name})}),I.jsx(i.Box,{className:"check-container",children:I.jsx(NC.default,{className:"check-icon"})})]})},K.id)}})})]}),I.jsxs(i.DialogActions,{sx:{borderTop:1,borderColor:"divider",p:2},children:[I.jsx(i.Button,{onClick:w,variant:"outlined",children:y("common.cancel")}),I.jsx(i.Button,{onClick:N,variant:"contained",disabled:!J.selectedComponent||O&&Array.isArray(J.selectedComponent)&&J.selectedComponent.length===0,children:O&&Array.isArray(J.selectedComponent)&&J.selectedComponent.length>0?y("common.addMultiple",{count:J.selectedComponent.length}):y("common.add")})]})]})}function uI({containerHeight:C,component:s,minScale:w=.1,components:A}){const{locale:o}=X.useLocaleContext(),g=u.useReactive({scale:1,shouldScroll:!1,isVisible:!1,hadInit:!1}),M=m.useRef(null),j=m.useRef(null),O=m.useRef(0),L=m.useRef(null);m.useEffect(()=>{const S=new IntersectionObserver(([B])=>{g.isVisible=B.isIntersecting},{root:null,rootMargin:"50px",threshold:0});return j.current&&S.observe(j.current),()=>S.disconnect()},[]),m.useEffect(()=>{const S=()=>{if(O.current+=1,O.current>Rg){B.disconnect();return}if(!s.previewImage&&M.current){const c=M.current.scrollHeight,z=C/c;z<w?(g.scale=w,g.shouldScroll=!0):z<1?(g.scale=z,g.shouldScroll=!1):(g.scale=1,g.shouldScroll=!1)}L.current&&clearTimeout(L.current),L.current=setTimeout(()=>{g.hadInit=!0},200)},B=new ResizeObserver(()=>{setTimeout(S,20)});return M.current&&g.isVisible&&B.observe(M.current),()=>{B.disconnect()}},[C,w,g.isVisible,s]);const{id:e,type:y,component:J,properties:D,previewImage:b}=s,N=m.useMemo(()=>g.isVisible?b?I.jsx(i.Box,{component:"img",loading:"lazy",sx:{objectFit:"cover",borderRadius:1,cursor:"pointer"},src:H.getImageAbsoluteUrl(b),alt:s.name,width:"100%",height:"100%"},e):y==="basic"?I.jsx(r.BlockRenderer,{id:e,type:J,section:D,config:{...D,locale:o,editing:!1,dev:{mode:"draft"}}},e):I.jsx(kg,{componentId:e,locale:o,components:A},e):null,[e,y,J,D,o,b,g.isVisible]);return I.jsx(i.Box,{ref:j,sx:{position:"relative",width:"100%",height:"100%",overflowX:"hidden",overflowY:g.shouldScroll?"auto":"hidden",transition:"all 0.3s ease"},children:I.jsxs(i.Box,{sx:{transform:`scale(${g.scale})`,transformOrigin:"top left",width:`${100/g.scale}%`,height:g.hadInit&&g.shouldScroll?"100%":`${100/g.scale}%`},children:[!g.hadInit&&I.jsx(i.Skeleton,{variant:"rectangular",width:"100%",height:"100%"}),I.jsx(i.Box,{ref:M,sx:{width:"100%",height:b?"100%":"auto",pointerEvents:"none",opacity:g.hadInit?1:0},children:N})]})})}function nI({groups:C,emptyText:s,renderItem:w,wrapperComponent:A=i.Box,wrapperComponentProps:o={display:"inline-flex",flexWrap:"wrap",gap:1}}){return I.jsx(i.Box,{children:Object.keys(C).length>0?Object.entries(C).map(([g,{title:M,components:j}])=>I.jsxs(i.Box,{mb:3,children:[g!==tI&&I.jsxs(i.Typography,{className:"blocklet-title",variant:"subtitle2",sx:{mb:2,fontWeight:500,color:"text.primary",display:"flex",alignItems:"center",gap:1},children:[I.jsx(i.Box,{component:"span",sx:{width:4,height:20,backgroundColor:"primary.main",borderRadius:1,display:"inline-block"}}),M]}),I.jsx(A,{...o,children:j.map(O=>w(O))})]},g)):I.jsx(BI.default,{children:s})})}exports.AddComponent=EI;exports.AutoScaledComponentRenderer=uI;exports.BASIC_COMPONENT_LIST=HI;exports.GroupedComponentsList=nI;exports.default=EI;exports.formatComponent=V;
|