@nocobase/plugin-block-iframe 1.0.1-alpha.1 → 1.0.1-alpha.2

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.
@@ -7,13 +7,13 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
 
10
- (function(r,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("@nocobase/client"),require("react/jsx-runtime"),require("@formily/antd-v5"),require("@formily/react"),require("antd"),require("react"),require("react-i18next"),require("@formily/shared"),require("@ant-design/icons"),require("@emotion/css")):typeof define=="function"&&define.amd?define(["exports","@nocobase/client","react/jsx-runtime","@formily/antd-v5","@formily/react","antd","react","react-i18next","@formily/shared","@ant-design/icons","@emotion/css"],e):(r=typeof globalThis!="undefined"?globalThis:r||self,e(r["@nocobase/plugin-block-iframe"]={},r["@nocobase/client"],r.jsxRuntime,r["@formily/antd-v5"],r["@formily/react"],r.antd,r.react,r["react-i18next"],r["@formily/shared"],r["@ant-design/icons"],r["@emotion/css"]))})(this,function(r,e,a,b,O,M,q,F,j,T,J){"use strict";var ye=Object.defineProperty,ge=Object.defineProperties;var xe=Object.getOwnPropertyDescriptors;var N=Object.getOwnPropertySymbols;var _=Object.prototype.hasOwnProperty,W=Object.prototype.propertyIsEnumerable;var G=(r,e,a)=>e in r?ye(r,e,{enumerable:!0,configurable:!0,writable:!0,value:a}):r[e]=a,B=(r,e)=>{for(var a in e||(e={}))_.call(e,a)&&G(r,a,e[a]);if(N)for(var a of N(e))W.call(e,a)&&G(r,a,e[a]);return r},A=(r,e)=>ge(r,xe(e));var Q=(r,e)=>{var a={};for(var b in r)_.call(r,b)&&e.indexOf(b)<0&&(a[b]=r[b]);if(r!=null&&N)for(var b of N(r))e.indexOf(b)<0&&W.call(r,b)&&(a[b]=r[b]);return a};var P=(r,e,a)=>new Promise((b,O)=>{var M=j=>{try{F(a.next(j))}catch(T){O(T)}},q=j=>{try{F(a.throw(j))}catch(T){O(T)}},F=j=>j.done?b(j.value):Promise.resolve(j.value).then(M,q);F((a=a.apply(r,e)).next())});function K(o){return o&&o.__esModule&&Object.prototype.hasOwnProperty.call(o,"default")?o.default:o}/*
10
+ (function(r,e){typeof exports=="object"&&typeof module!="undefined"?e(exports,require("@nocobase/client"),require("react/jsx-runtime"),require("@formily/antd-v5"),require("@formily/react"),require("antd"),require("react"),require("react-i18next"),require("@formily/shared"),require("@ant-design/icons"),require("@emotion/css")):typeof define=="function"&&define.amd?define(["exports","@nocobase/client","react/jsx-runtime","@formily/antd-v5","@formily/react","antd","react","react-i18next","@formily/shared","@ant-design/icons","@emotion/css"],e):(r=typeof globalThis!="undefined"?globalThis:r||self,e(r["@nocobase/plugin-block-iframe"]={},r["@nocobase/client"],r.jsxRuntime,r["@formily/antd-v5"],r["@formily/react"],r.antd,r.react,r["react-i18next"],r["@formily/shared"],r["@ant-design/icons"],r["@emotion/css"]))})(this,function(r,e,a,I,O,M,q,F,j,T,J){"use strict";var ye=Object.defineProperty,ge=Object.defineProperties;var xe=Object.getOwnPropertyDescriptors;var N=Object.getOwnPropertySymbols;var _=Object.prototype.hasOwnProperty,W=Object.prototype.propertyIsEnumerable;var G=(r,e,a)=>e in r?ye(r,e,{enumerable:!0,configurable:!0,writable:!0,value:a}):r[e]=a,B=(r,e)=>{for(var a in e||(e={}))_.call(e,a)&&G(r,a,e[a]);if(N)for(var a of N(e))W.call(e,a)&&G(r,a,e[a]);return r},A=(r,e)=>ge(r,xe(e));var Q=(r,e)=>{var a={};for(var I in r)_.call(r,I)&&e.indexOf(I)<0&&(a[I]=r[I]);if(r!=null&&N)for(var I of N(r))e.indexOf(I)<0&&W.call(r,I)&&(a[I]=r[I]);return a};var P=(r,e,a)=>new Promise((I,O)=>{var M=j=>{try{F(a.next(j))}catch(T){O(T)}},q=j=>{try{F(a.throw(j))}catch(T){O(T)}},F=j=>j.done?I(j.value):Promise.resolve(j.value).then(M,q);F((a=a.apply(r,e)).next())});function K(o){return o&&o.__esModule&&Object.prototype.hasOwnProperty.call(o,"default")?o.default:o}/*
11
11
  object-assign
12
12
  (c) Sindre Sorhus
13
13
  @license MIT
14
- */var z=Object.getOwnPropertySymbols,X=Object.prototype.hasOwnProperty,Y=Object.prototype.propertyIsEnumerable;function Z(o){if(o==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(o)}function ee(){try{if(!Object.assign)return!1;var o=new String("abc");if(o[5]="de",Object.getOwnPropertyNames(o)[0]==="5")return!1;for(var n={},t=0;t<10;t++)n["_"+String.fromCharCode(t)]=t;var l=Object.getOwnPropertyNames(n).map(function(f){return n[f]});if(l.join("")!=="0123456789")return!1;var s={};return"abcdefghijklmnopqrst".split("").forEach(function(f){s[f]=f}),Object.keys(Object.assign({},s)).join("")==="abcdefghijklmnopqrst"}catch(f){return!1}}var te=ee()?Object.assign:function(o,n){for(var t,l=Z(o),s,f=1;f<arguments.length;f++){t=Object(arguments[f]);for(var v in t)X.call(t,v)&&(l[v]=t[v]);if(z){s=z(t);for(var m=0;m<s.length;m++)Y.call(t,s[m])&&(l[s[m]]=t[s[m]])}}return l};const re=K(te),oe=({url:o,allowFullScreen:n,position:t,display:l,height:s,width:f,overflow:v,styles:m,onLoad:H,onMouseOver:V,onMouseOut:k,scrolling:w,id:y,frameBorder:g,ariaHidden:u,sandbox:p,allow:c,className:x,title:d,ariaLabel:i,ariaLabelledby:C,name:I,target:ce,loading:me,importance:pe,referrerpolicy:de,allowpaymentrequest:ue,src:fe,key:he})=>{const $=re({src:fe||o,target:ce||null,style:{position:t||null,display:l||"initial",overflow:v||null},scrolling:w||null,allowpaymentrequest:ue||null,importance:pe||null,sandbox:p&&[...p].join(" ")||null,loading:me||null,styles:m||null,name:I||null,className:x||null,allowFullScreen:"allowFullScreen",referrerpolicy:de||null,title:d||null,allow:c||null,id:y||null,"aria-labelledby":C||null,"aria-hidden":u||null,"aria-label":i||null,width:f||null,height:s||null,onLoad:H||null,onMouseOver:V||null,onMouseOut:k||null,key:he||"iframe"});let h=Object.create(null);for(let S of Object.keys($))$[S]!=null&&(h[S]=$[S]);for(let S of Object.keys(h.style))h.style[S]==null&&delete h.style[S];if(h.styles)for(let S of Object.keys(h.styles))h.styles.hasOwnProperty(S)&&(h.style[S]=h.styles[S]),Object.keys(h.styles).pop()==S&&delete h.styles;if(n)if("allow"in h){const S=h.allow.replace("fullscreen","");h.allow=`fullscreen ${S.trim()}`.trim()}else h.allow="fullscreen";return g>=0&&(h.style.hasOwnProperty("border")||(h.style.border=g)),q.createElement("iframe",Object.assign({},h))},ne=()=>{const o=O.useField(),n=O.useFieldSchema(),{t}=F.useTranslation(),{dn:l}=e.useDesignable(),s=e.useAPIClient(),{mode:f,url:v,htmlId:m,height:H="60vh"}=n["x-component-props"]||{},V=u=>P(this,null,function*(){var c,x,d,i,C;const p={values:{html:u}};if(m){const{data:I}=yield(x=(c=s.resource("iframeHtml")).update)==null?void 0:x.call(c,A(B({},p),{filterByTk:m}));return((d=I==null?void 0:I.data)==null?void 0:d[0])||{id:m}}else{const{data:I}=yield(C=(i=s.resource("iframeHtml")).create)==null?void 0:C.call(i,p);return I==null?void 0:I.data}}),k=d=>P(this,[d],function*({mode:u,url:p,html:c,height:x}){const i=n["x-component-props"]||{};if(i.mode=u,i.height=x,i.url=p,u==="html"){const C=yield V(c);i.htmlId=C.id}n["x-component-props"]=i,o.componentProps=B({},i),o.data={v:j.uid()},l.emit("patch",{schema:{"x-uid":n["x-uid"],"x-component-props":i}})}),{form:w}=e.useFormBlockContext(),y=e.useRecord(),g=e.useVariableOptions({collectionField:{uiSchema:n},form:w,record:y,uiSchema:n,noDisabled:!0});return a.jsxs(e.GeneralSchemaDesigner,{children:[a.jsx(e.SchemaSettingsModalItem,{title:t("Edit iframe"),asyncGetInitialValues:()=>P(this,null,function*(){var p,c,x;const u={mode:f,url:v,height:H};if(m){const{data:d}=yield(c=(p=s.resource("iframeHtml")).get)==null?void 0:c.call(p,{filterByTk:m});u.html=((x=d==null?void 0:d.data)==null?void 0:x.html)||""}return u}),schema:{type:"object",title:t("Edit iframe"),properties:{mode:{title:'{{t("Mode")}}',"x-component":"Radio.Group","x-decorator":"FormItem",required:!0,default:"url",enum:[{value:"url",label:t("URL")},{value:"html",label:t("HTML")}]},url:{title:t("URL"),type:"string","x-decorator":"FormItem","x-component":"Variable.TextArea","x-component-props":{scope:g},required:!0,"x-reactions":{dependencies:["mode"],fulfill:{state:{hidden:'{{$deps[0] === "html"}}'}}}},html:{title:t("html"),type:"string","x-decorator":"FormItem","x-component":"Variable.RawTextArea","x-component-props":{scope:g,style:{minHeight:"200px"}},required:!0,"x-reactions":{dependencies:["mode"],fulfill:{state:{hidden:'{{$deps[0] === "url"}}'}}}},height:{title:t("Height"),type:"string","x-decorator":"FormItem","x-component":"Input",required:!0}}},onSubmit:k}),a.jsx(e.SchemaSettingsDivider,{}),a.jsx(e.SchemaSettingsRemove,{removeParentsIfNoChildren:!0,breakRemoveOn:{"x-component":"Grid"}})]})};function E(o){return typeof o!="string"?!1:!isNaN(o)&&!isNaN(parseFloat(o))}const D=O.observer(o=>{const x=o,{url:n,htmlId:t,mode:l="url",height:s,html:f,params:v}=x,m=Q(x,["url","htmlId","mode","height","html","params"]),H=O.useField(),{t:V}=F.useTranslation(),k=e.useBlockHeight()||s,w=e.useVariables(),y=e.useLocalVariables(),{loading:g,data:u}=e.useRequest({url:`iframeHtml:getHtml/${t}`},{refreshDeps:[t,H.data],ready:l==="html"&&!!t}),[p,c]=q.useState(null);return q.useEffect(()=>{P(this,null,function*(){if(l==="html"){const i=yield e.replaceVariableValue(u,w,y),I="data:text/html;charset=utf-8,"+encodeURIComponent(i);c(I)}else try{const i=yield e.replaceVariableValue(n,w,y),C=yield e.parseVariablesAndChangeParamsToQueryString({searchParams:v||[],variables:w,localVariables:y,replaceVariableValue:e.replaceVariableValue}),I=e.appendQueryStringToUrl(i,C);c(I)}catch(i){console.error("Error fetching target URL:",i),c("fallback-url")}})},[u,l,n,w,y,v]),l==="url"&&!n||l==="html"&&!t?a.jsx(M.Card,{style:{marginBottom:24,height:E(k)?`${k}px`:k},children:V("Please fill in the iframe URL")}):g&&!p?a.jsx("div",{style:{height:E(s)?`${s}px`:s,marginBottom:"24px",border:0},children:a.jsx(M.Spin,{})}):a.jsx(oe,B({url:p,width:"100%",display:"block",position:"relative",styles:{height:E(k)?`${k}px`:k,marginBottom:"24px",border:0}},m))},{displayName:"Iframe"});D.Designer=ne;const ae=()=>{const{insert:o}=e.useSchemaInitializer(),n=e.useSchemaInitializerItem();return a.jsx(e.SchemaInitializerItem,A(B({},n),{icon:a.jsx(T.FormOutlined,{}),onClick:()=>{o({type:"void","x-settings":"blockSettings:iframe","x-decorator":"BlockItem","x-decorator-props":{name:"iframe"},"x-component":"Iframe","x-component-props":{}})}}))},se=o=>a.jsx(e.SchemaComponentOptions,{components:{Iframe:D,IframeBlockInitializer:ae,ArrayItems:b.ArrayItems},children:o.children}),U=o=>n=>{const t=O.useFieldSchema(),{form:l}=e.useFormBlockContext(),s=e.useRecord(),f=e.useVariableOptions({collectionField:{uiSchema:t},form:l,record:s,uiSchema:t,noDisabled:!0});return a.jsx(o,A(B({},n),{scope:f}))},L={items:[{name:"EditIframe",type:"modal",useComponentProps(){var w;const o=O.useField(),n=O.useFieldSchema(),{t}=F.useTranslation(),{dn:l}=e.useDesignable(),s=e.useAPIClient(),{mode:f,url:v,htmlId:m,height:H="60vh"}=n["x-component-props"]||{},V=y=>P(this,null,function*(){var u,p,c,x,d;const g={values:{html:y}};if(m){const{data:i}=yield(p=(u=s.resource("iframeHtml")).update)==null?void 0:p.call(u,A(B({},g),{filterByTk:m}));return((c=i==null?void 0:i.data)==null?void 0:c[0])||{id:m}}else{const{data:i}=yield(d=(x=s.resource("iframeHtml")).create)==null?void 0:d.call(x,g);return i==null?void 0:i.data}}),k=x=>P(this,[x],function*({mode:y,url:g,html:u,height:p,params:c}){const d=n["x-component-props"]||{};if(d.mode=y,d.height=p,d.params=c,d.url=g,y==="html"){const i=yield V(u);d.htmlId=i.id}n["x-component-props"]=d,o.componentProps=B({},d),o.data={v:j.uid()},l.emit("patch",{schema:{"x-uid":n["x-uid"],"x-component-props":d}})});return{title:t("Edit iframe"),asyncGetInitialValues:()=>P(this,null,function*(){var g,u,p;const y={mode:f,url:v,height:H};if(m){const{data:c}=yield(u=(g=s.resource("iframeHtml")).get)==null?void 0:u.call(g,{filterByTk:m});y.html=((p=c==null?void 0:c.data)==null?void 0:p.html)||""}return y}),schema:{type:"object",title:t("Edit iframe"),properties:{mode:{title:'{{t("Mode")}}',"x-component":"Radio.Group","x-decorator":"FormItem",required:!0,default:"url",enum:[{value:"url",label:t("URL")},{value:"html",label:t("HTML")}]},url:{title:t("URL"),type:"string","x-decorator":"FormItem","x-component":U(e.Variable.TextArea),description:t("Do not concatenate search params in the URL"),required:!0,"x-reactions":{dependencies:["mode"],fulfill:{state:{hidden:'{{$deps[0] === "html"}}'}}}},params:{type:"array","x-component":"ArrayItems","x-decorator":"FormItem",title:'{{t("Search parameters")}}',default:((w=n==null?void 0:n["x-component-props"])==null?void 0:w.params)||[{}],items:{type:"object",properties:{space:{type:"void","x-component":"Space","x-component-props":{style:{flexWrap:"nowrap",maxWidth:"100%"},className:J.css`
14
+ */var z=Object.getOwnPropertySymbols,X=Object.prototype.hasOwnProperty,Y=Object.prototype.propertyIsEnumerable;function Z(o){if(o==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(o)}function ee(){try{if(!Object.assign)return!1;var o=new String("abc");if(o[5]="de",Object.getOwnPropertyNames(o)[0]==="5")return!1;for(var n={},t=0;t<10;t++)n["_"+String.fromCharCode(t)]=t;var l=Object.getOwnPropertyNames(n).map(function(f){return n[f]});if(l.join("")!=="0123456789")return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(f){i[f]=f}),Object.keys(Object.assign({},i)).join("")==="abcdefghijklmnopqrst"}catch(f){return!1}}var te=ee()?Object.assign:function(o,n){for(var t,l=Z(o),i,f=1;f<arguments.length;f++){t=Object(arguments[f]);for(var k in t)X.call(t,k)&&(l[k]=t[k]);if(z){i=z(t);for(var m=0;m<i.length;m++)Y.call(t,i[m])&&(l[i[m]]=t[i[m]])}}return l};const re=K(te),oe=({url:o,allowFullScreen:n,position:t,display:l,height:i,width:f,overflow:k,styles:m,onLoad:H,onMouseOver:V,onMouseOut:g,scrolling:w,id:y,frameBorder:x,ariaHidden:u,sandbox:p,allow:c,className:b,title:d,ariaLabel:s,ariaLabelledby:C,name:v,target:ce,loading:me,importance:pe,referrerpolicy:de,allowpaymentrequest:ue,src:fe,key:he})=>{const $=re({src:fe||o,target:ce||null,style:{position:t||null,display:l||"initial",overflow:k||null},scrolling:w||null,allowpaymentrequest:ue||null,importance:pe||null,sandbox:p&&[...p].join(" ")||null,loading:me||null,styles:m||null,name:v||null,className:b||null,allowFullScreen:"allowFullScreen",referrerpolicy:de||null,title:d||null,allow:c||null,id:y||null,"aria-labelledby":C||null,"aria-hidden":u||null,"aria-label":s||null,width:f||null,height:i||null,onLoad:H||null,onMouseOver:V||null,onMouseOut:g||null,key:he||"iframe"});let h=Object.create(null);for(let S of Object.keys($))$[S]!=null&&(h[S]=$[S]);for(let S of Object.keys(h.style))h.style[S]==null&&delete h.style[S];if(h.styles)for(let S of Object.keys(h.styles))h.styles.hasOwnProperty(S)&&(h.style[S]=h.styles[S]),Object.keys(h.styles).pop()==S&&delete h.styles;if(n)if("allow"in h){const S=h.allow.replace("fullscreen","");h.allow=`fullscreen ${S.trim()}`.trim()}else h.allow="fullscreen";return x>=0&&(h.style.hasOwnProperty("border")||(h.style.border=x)),q.createElement("iframe",Object.assign({},h))},ne=()=>{const o=O.useField(),n=O.useFieldSchema(),{t}=F.useTranslation(),{dn:l}=e.useDesignable(),i=e.useAPIClient(),{mode:f,url:k,htmlId:m,height:H="60vh"}=n["x-component-props"]||{},V=u=>P(this,null,function*(){var c,b,d,s,C;const p={values:{html:u}};if(m){const{data:v}=yield(b=(c=i.resource("iframeHtml")).update)==null?void 0:b.call(c,A(B({},p),{filterByTk:m}));return((d=v==null?void 0:v.data)==null?void 0:d[0])||{id:m}}else{const{data:v}=yield(C=(s=i.resource("iframeHtml")).create)==null?void 0:C.call(s,p);return v==null?void 0:v.data}}),g=d=>P(this,[d],function*({mode:u,url:p,html:c,height:b}){const s=n["x-component-props"]||{};if(s.mode=u,s.height=b,s.url=p,u==="html"){const C=yield V(c);s.htmlId=C.id}n["x-component-props"]=s,o.componentProps=B({},s),o.data={v:j.uid()},l.emit("patch",{schema:{"x-uid":n["x-uid"],"x-component-props":s}})}),{form:w}=e.useFormBlockContext(),y=e.useRecord(),x=e.useVariableOptions({collectionField:{uiSchema:n},form:w,record:y,uiSchema:n,noDisabled:!0});return a.jsxs(e.GeneralSchemaDesigner,{children:[a.jsx(e.SchemaSettingsModalItem,{title:t("Edit iframe"),asyncGetInitialValues:()=>P(this,null,function*(){var p,c,b;const u={mode:f,url:k,height:H};if(m){const{data:d}=yield(c=(p=i.resource("iframeHtml")).get)==null?void 0:c.call(p,{filterByTk:m});u.html=((b=d==null?void 0:d.data)==null?void 0:b.html)||""}return u}),schema:{type:"object",title:t("Edit iframe"),properties:{mode:{title:'{{t("Mode")}}',"x-component":"Radio.Group","x-decorator":"FormItem",required:!0,default:"url",enum:[{value:"url",label:t("URL")},{value:"html",label:t("HTML")}]},url:{title:t("URL"),type:"string","x-decorator":"FormItem","x-component":"Variable.TextArea","x-component-props":{scope:x},required:!0,"x-reactions":{dependencies:["mode"],fulfill:{state:{hidden:'{{$deps[0] === "html"}}'}}}},html:{title:t("html"),type:"string","x-decorator":"FormItem","x-component":"Variable.RawTextArea","x-component-props":{scope:x,style:{minHeight:"200px"}},required:!0,"x-reactions":{dependencies:["mode"],fulfill:{state:{hidden:'{{$deps[0] === "url"}}'}}}},height:{title:t("Height"),type:"string","x-decorator":"FormItem","x-component":"Input",required:!0}}},onSubmit:g}),a.jsx(e.SchemaSettingsDivider,{}),a.jsx(e.SchemaSettingsRemove,{removeParentsIfNoChildren:!0,breakRemoveOn:{"x-component":"Grid"}})]})};function E(o){return typeof o!="string"?!1:!isNaN(o)&&!isNaN(parseFloat(o))}const D=O.observer(o=>{const b=o,{url:n,htmlId:t,mode:l="url",height:i,html:f,params:k}=b,m=Q(b,["url","htmlId","mode","height","html","params"]),H=O.useField(),{t:V}=F.useTranslation(),g=e.useBlockHeight()||i,w=e.useVariables(),y=e.useLocalVariables(),{loading:x,data:u}=e.useRequest({url:`iframeHtml:getHtml/${t}`},{refreshDeps:[t,H.data],ready:l==="html"&&!!t}),[p,c]=q.useState(null);return q.useEffect(()=>{P(this,null,function*(){if(l==="html"){const s=yield e.replaceVariableValue(u,w,y),v="data:text/html;charset=utf-8,"+encodeURIComponent(s);c(v)}else try{const s=yield e.replaceVariableValue(n,w,y),C=yield e.parseVariablesAndChangeParamsToQueryString({searchParams:k||[],variables:w,localVariables:y,replaceVariableValue:e.replaceVariableValue}),v=e.appendQueryStringToUrl(s,C);c(v)}catch(s){console.error("Error fetching target URL:",s),c("fallback-url")}})},[u,l,n,w,y,k]),l==="url"&&!n||l==="html"&&!t?a.jsx(M.Card,{style:{marginBottom:24,height:E(g)?`${g}px`:g},children:V("Please fill in the iframe URL")}):x&&!p?a.jsx("div",{style:{height:E(g)?`${g}px`:g||"60vh",marginBottom:"24px",border:0},children:a.jsx(M.Spin,{})}):a.jsx(oe,B({url:p,width:"100%",display:"block",position:"relative",styles:{height:E(g)?`${g}px`:g||"60vh",marginBottom:"24px",border:0}},m))},{displayName:"Iframe"});D.Designer=ne;const ae=()=>{const{insert:o}=e.useSchemaInitializer(),n=e.useSchemaInitializerItem();return a.jsx(e.SchemaInitializerItem,A(B({},n),{icon:a.jsx(T.FormOutlined,{}),onClick:()=>{o({type:"void","x-settings":"blockSettings:iframe","x-decorator":"BlockItem","x-decorator-props":{name:"iframe"},"x-component":"Iframe","x-component-props":{}})}}))},se=o=>a.jsx(e.SchemaComponentOptions,{components:{Iframe:D,IframeBlockInitializer:ae,ArrayItems:I.ArrayItems},children:o.children}),U=o=>n=>{const t=O.useFieldSchema(),{form:l}=e.useFormBlockContext(),i=e.useRecord(),f=e.useVariableOptions({collectionField:{uiSchema:t},form:l,record:i,uiSchema:t,noDisabled:!0});return a.jsx(o,A(B({},n),{scope:f}))},L={items:[{name:"EditIframe",type:"modal",useComponentProps(){var w;const o=O.useField(),n=O.useFieldSchema(),{t}=F.useTranslation(),{dn:l}=e.useDesignable(),i=e.useAPIClient(),{mode:f,url:k,htmlId:m,height:H="60vh"}=n["x-component-props"]||{},V=y=>P(this,null,function*(){var u,p,c,b,d;const x={values:{html:y}};if(m){const{data:s}=yield(p=(u=i.resource("iframeHtml")).update)==null?void 0:p.call(u,A(B({},x),{filterByTk:m}));return((c=s==null?void 0:s.data)==null?void 0:c[0])||{id:m}}else{const{data:s}=yield(d=(b=i.resource("iframeHtml")).create)==null?void 0:d.call(b,x);return s==null?void 0:s.data}}),g=b=>P(this,[b],function*({mode:y,url:x,html:u,height:p,params:c}){const d=n["x-component-props"]||{};if(d.mode=y,d.height=p,d.params=c,d.url=x,y==="html"){const s=yield V(u);d.htmlId=s.id}n["x-component-props"]=d,o.componentProps=B({},d),o.data={v:j.uid()},l.emit("patch",{schema:{"x-uid":n["x-uid"],"x-component-props":d}})});return{title:t("Edit iframe"),asyncGetInitialValues:()=>P(this,null,function*(){var x,u,p;const y={mode:f,url:k,height:H};if(m){const{data:c}=yield(u=(x=i.resource("iframeHtml")).get)==null?void 0:u.call(x,{filterByTk:m});y.html=((p=c==null?void 0:c.data)==null?void 0:p.html)||""}return y}),schema:{type:"object",title:t("Edit iframe"),properties:{mode:{title:'{{t("Mode")}}',"x-component":"Radio.Group","x-decorator":"FormItem",required:!0,default:"url",enum:[{value:"url",label:t("URL")},{value:"html",label:t("HTML")}]},url:{title:t("URL"),type:"string","x-decorator":"FormItem","x-component":U(e.Variable.TextArea),description:t("Do not concatenate search params in the URL"),required:!0,"x-reactions":{dependencies:["mode"],fulfill:{state:{hidden:'{{$deps[0] === "html"}}'}}}},params:{type:"array","x-component":"ArrayItems","x-decorator":"FormItem",title:'{{t("Search parameters")}}',default:((w=n==null?void 0:n["x-component-props"])==null?void 0:w.params)||[{}],items:{type:"object",properties:{space:{type:"void","x-component":"Space","x-component-props":{style:{flexWrap:"nowrap",maxWidth:"100%"},className:J.css`
15
15
  & > .ant-space-item:first-child,
16
16
  & > .ant-space-item:last-child {
17
17
  flex-shrink: 0;
18
18
  }
19
- `},properties:{name:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:'{{t("Name")}}'}},value:{type:"string","x-decorator":"FormItem","x-component":U(e.Variable.TextArea),"x-component-props":{placeholder:'{{t("Value")}}',useTypedConstant:!0,changeOnSelect:!0}},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},"x-reactions":{dependencies:["mode"],fulfill:{state:{hidden:'{{$deps[0] === "html"}}'}}},properties:{add:{type:"void",title:'{{t("Add parameter")}}',"x-component":"ArrayItems.Addition"}}},html:{title:t("html"),type:"string","x-decorator":"FormItem","x-component":U(e.Variable.RawTextArea),"x-component-props":{rows:10},required:!0,"x-reactions":{dependencies:["mode"],fulfill:{state:{hidden:'{{$deps[0] === "url"}}'}}}}}},onSubmit:k,noRecord:!0}}},{name:"setTheBlockHeight",Component:e.SchemaSettingsBlockHeightItem},{name:"divider",type:"divider"},{name:"delete",type:"remove",useComponentProps(){return{removeParentsIfNoChildren:!0,breakRemoveOn:{"x-component":"Grid"}}}}]},ie=new e.SchemaSettings(B({name:"iframeBlockSchemaSettings"},L)),le=new e.SchemaSettings(B({name:"blockSettings:iframe"},L));class R extends e.Plugin{load(){return P(this,null,function*(){this.app.schemaSettingsManager.add(ie),this.app.schemaSettingsManager.add(le),this.app.use(se);const n=this.app.schemaInitializerManager.get("page:addBlock");n==null||n.add("otherBlocks.iframe",{title:'{{t("Iframe")}}',Component:"IframeBlockInitializer"});const t=this.app.schemaInitializerManager.get("popup:addNew:addBlock");t==null||t.add("otherBlocks.iframe",{title:'{{t("Iframe")}}',Component:"IframeBlockInitializer"});const l=this.app.schemaInitializerManager.get("popup:common:addBlock");l==null||l.add("otherBlocks.iframe",{title:'{{t("Iframe")}}',Component:"IframeBlockInitializer"});const s=this.app.schemaInitializerManager.get("RecordFormBlockInitializers");s==null||s.add("otherBlocks.iframe",{title:'{{t("Iframe")}}',Component:"IframeBlockInitializer"}),this.app.schemaInitializerManager.addItem("mobilePage:addBlock","otherBlocks.iframe",{title:'{{t("Iframe")}}',Component:"IframeBlockInitializer"})})}}r.PluginBlockIframeClient=R,r.default=R,Object.defineProperties(r,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
19
+ `},properties:{name:{type:"string","x-decorator":"FormItem","x-component":"Input","x-component-props":{placeholder:'{{t("Name")}}'}},value:{type:"string","x-decorator":"FormItem","x-component":U(e.Variable.TextArea),"x-component-props":{placeholder:'{{t("Value")}}',useTypedConstant:!0,changeOnSelect:!0}},remove:{type:"void","x-decorator":"FormItem","x-component":"ArrayItems.Remove"}}}}},"x-reactions":{dependencies:["mode"],fulfill:{state:{hidden:'{{$deps[0] === "html"}}'}}},properties:{add:{type:"void",title:'{{t("Add parameter")}}',"x-component":"ArrayItems.Addition"}}},html:{title:t("html"),type:"string","x-decorator":"FormItem","x-component":U(e.Variable.RawTextArea),"x-component-props":{rows:10},required:!0,"x-reactions":{dependencies:["mode"],fulfill:{state:{hidden:'{{$deps[0] === "url"}}'}}}}}},onSubmit:g,noRecord:!0}}},{name:"setTheBlockHeight",Component:e.SchemaSettingsBlockHeightItem},{name:"divider",type:"divider"},{name:"delete",type:"remove",useComponentProps(){return{removeParentsIfNoChildren:!0,breakRemoveOn:{"x-component":"Grid"}}}}]},ie=new e.SchemaSettings(B({name:"iframeBlockSchemaSettings"},L)),le=new e.SchemaSettings(B({name:"blockSettings:iframe"},L));class R extends e.Plugin{load(){return P(this,null,function*(){this.app.schemaSettingsManager.add(ie),this.app.schemaSettingsManager.add(le),this.app.use(se);const n=this.app.schemaInitializerManager.get("page:addBlock");n==null||n.add("otherBlocks.iframe",{title:'{{t("Iframe")}}',Component:"IframeBlockInitializer"});const t=this.app.schemaInitializerManager.get("popup:addNew:addBlock");t==null||t.add("otherBlocks.iframe",{title:'{{t("Iframe")}}',Component:"IframeBlockInitializer"});const l=this.app.schemaInitializerManager.get("popup:common:addBlock");l==null||l.add("otherBlocks.iframe",{title:'{{t("Iframe")}}',Component:"IframeBlockInitializer"});const i=this.app.schemaInitializerManager.get("RecordFormBlockInitializers");i==null||i.add("otherBlocks.iframe",{title:'{{t("Iframe")}}',Component:"IframeBlockInitializer"}),this.app.schemaInitializerManager.addItem("mobilePage:addBlock","otherBlocks.iframe",{title:'{{t("Iframe")}}',Component:"IframeBlockInitializer"})})}}r.PluginBlockIframeClient=R,r.default=R,Object.defineProperties(r,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
@@ -10,14 +10,14 @@
10
10
  module.exports = {
11
11
  "@formily/react": "2.3.0",
12
12
  "@formily/shared": "2.3.0",
13
- "@nocobase/client": "1.0.1-alpha.1",
13
+ "@nocobase/client": "1.0.1-alpha.2",
14
14
  "react": "18.2.0",
15
15
  "react-i18next": "11.18.6",
16
16
  "antd": "5.12.8",
17
17
  "@ant-design/icons": "5.2.6",
18
18
  "@formily/antd-v5": "1.1.9",
19
19
  "@emotion/css": "11.11.2",
20
- "@nocobase/server": "1.0.1-alpha.1",
21
- "@nocobase/actions": "1.0.1-alpha.1",
22
- "@nocobase/database": "1.0.1-alpha.1"
20
+ "@nocobase/server": "1.0.1-alpha.2",
21
+ "@nocobase/actions": "1.0.1-alpha.2",
22
+ "@nocobase/database": "1.0.1-alpha.2"
23
23
  };
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "displayName.zh-CN": "区块:iframe",
5
5
  "description": "Create an iframe block on the page to embed and display external web pages or content.",
6
6
  "description.zh-CN": "在页面上创建和管理iframe,用于嵌入和展示外部网页或内容。",
7
- "version": "1.0.1-alpha.1",
7
+ "version": "1.0.1-alpha.2",
8
8
  "license": "AGPL-3.0",
9
9
  "main": "./dist/server/index.js",
10
10
  "homepage": "https://docs.nocobase.com/handbook/block-iframe",
@@ -25,7 +25,7 @@
25
25
  "@nocobase/server": "1.x",
26
26
  "@nocobase/test": "1.x"
27
27
  },
28
- "gitHead": "d24aa16987a4068f857ae073fcce18f3cb490660",
28
+ "gitHead": "fc5a8e3c812516f787cb22d3d198f058f45b1963",
29
29
  "keywords": [
30
30
  "Blocks"
31
31
  ]