1 line
18 KiB
JavaScript
1 line
18 KiB
JavaScript
jQuery,acf.jsxNameReplacements={"accent-height":"accentHeight",accentheight:"accentHeight","accept-charset":"acceptCharset",acceptcharset:"acceptCharset",accesskey:"accessKey","alignment-baseline":"alignmentBaseline",alignmentbaseline:"alignmentBaseline",allowedblocks:"allowedBlocks",allowfullscreen:"allowFullScreen",allowreorder:"allowReorder","arabic-form":"arabicForm",arabicform:"arabicForm",attributename:"attributeName",attributetype:"attributeType",autocapitalize:"autoCapitalize",autocomplete:"autoComplete",autocorrect:"autoCorrect",autofocus:"autoFocus",autoplay:"autoPlay",autoreverse:"autoReverse",autosave:"autoSave",basefrequency:"baseFrequency","baseline-shift":"baselineShift",baselineshift:"baselineShift",baseprofile:"baseProfile",calcmode:"calcMode","cap-height":"capHeight",capheight:"capHeight",cellpadding:"cellPadding",cellspacing:"cellSpacing",charset:"charSet",class:"className",classid:"classID",classname:"className","clip-path":"clipPath","clip-rule":"clipRule",clippath:"clipPath",clippathunits:"clipPathUnits",cliprule:"clipRule","color-interpolation":"colorInterpolation","color-interpolation-filters":"colorInterpolationFilters","color-profile":"colorProfile","color-rendering":"colorRendering",colorinterpolation:"colorInterpolation",colorinterpolationfilters:"colorInterpolationFilters",colorprofile:"colorProfile",colorrendering:"colorRendering",colspan:"colSpan",contenteditable:"contentEditable",contentscripttype:"contentScriptType",contentstyletype:"contentStyleType",contextmenu:"contextMenu",controlslist:"controlsList",crossorigin:"crossOrigin",dangerouslysetinnerhtml:"dangerouslySetInnerHTML",datetime:"dateTime",defaultchecked:"defaultChecked",defaultvalue:"defaultValue",diffuseconstant:"diffuseConstant",disablepictureinpicture:"disablePictureInPicture",disableremoteplayback:"disableRemotePlayback","dominant-baseline":"dominantBaseline",dominantbaseline:"dominantBaseline",edgemode:"edgeMode","enable-background":"enableBackground",enablebackground:"enableBackground",enctype:"encType",enterkeyhint:"enterKeyHint",externalresourcesrequired:"externalResourcesRequired","fill-opacity":"fillOpacity","fill-rule":"fillRule",fillopacity:"fillOpacity",fillrule:"fillRule",filterres:"filterRes",filterunits:"filterUnits","flood-color":"floodColor","flood-opacity":"floodOpacity",floodcolor:"floodColor",floodopacity:"floodOpacity","font-family":"fontFamily","font-size":"fontSize","font-size-adjust":"fontSizeAdjust","font-stretch":"fontStretch","font-style":"fontStyle","font-variant":"fontVariant","font-weight":"fontWeight",fontfamily:"fontFamily",fontsize:"fontSize",fontsizeadjust:"fontSizeAdjust",fontstretch:"fontStretch",fontstyle:"fontStyle",fontvariant:"fontVariant",fontweight:"fontWeight",for:"htmlFor",formaction:"formAction",formenctype:"formEncType",formmethod:"formMethod",formnovalidate:"formNoValidate",formtarget:"formTarget",frameborder:"frameBorder","glyph-name":"glyphName","glyph-orientation-horizontal":"glyphOrientationHorizontal","glyph-orientation-vertical":"glyphOrientationVertical",glyphname:"glyphName",glyphorientationhorizontal:"glyphOrientationHorizontal",glyphorientationvertical:"glyphOrientationVertical",glyphref:"glyphRef",gradienttransform:"gradientTransform",gradientunits:"gradientUnits","horiz-adv-x":"horizAdvX","horiz-origin-x":"horizOriginX",horizadvx:"horizAdvX",horizoriginx:"horizOriginX",hreflang:"hrefLang",htmlfor:"htmlFor","http-equiv":"httpEquiv",httpequiv:"httpEquiv","image-rendering":"imageRendering",imagerendering:"imageRendering",innerhtml:"innerHTML",inputmode:"inputMode",itemid:"itemID",itemprop:"itemProp",itemref:"itemRef",itemscope:"itemScope",itemtype:"itemType",kernelmatrix:"kernelMatrix",kernelunitlength:"kernelUnitLength",keyparams:"keyParams",keypoints:"keyPoints",keysplines:"keySplines",keytimes:"keyTimes",keytype:"keyType",lengthadjust:"lengthAdjust","letter-spacing":"letterSpacing",letterspacing:"letterSpacing","lighting-color":"lightingColor",lightingcolor:"lightingColor",limitingconeangle:"limitingConeAngle",marginheight:"marginHeight",marginwidth:"marginWidth","marker-end":"markerEnd","marker-mid":"markerMid","marker-start":"markerStart",markerend:"markerEnd",markerheight:"markerHeight",markermid:"markerMid",markerstart:"markerStart",markerunits:"markerUnits",markerwidth:"markerWidth",maskcontentunits:"maskContentUnits",maskunits:"maskUnits",maxlength:"maxLength",mediagroup:"mediaGroup",minlength:"minLength",nomodule:"noModule",novalidate:"noValidate",numoctaves:"numOctaves","overline-position":"overlinePosition","overline-thickness":"overlineThickness",overlineposition:"overlinePosition",overlinethickness:"overlineThickness","paint-order":"paintOrder",paintorder:"paintOrder","panose-1":"panose1",pathlength:"pathLength",patterncontentunits:"patternContentUnits",patterntransform:"patternTransform",patternunits:"patternUnits",playsinline:"playsInline","pointer-events":"pointerEvents",pointerevents:"pointerEvents",pointsatx:"pointsAtX",pointsaty:"pointsAtY",pointsatz:"pointsAtZ",preservealpha:"preserveAlpha",preserveaspectratio:"preserveAspectRatio",primitiveunits:"primitiveUnits",radiogroup:"radioGroup",readonly:"readOnly",referrerpolicy:"referrerPolicy",refx:"refX",refy:"refY","rendering-intent":"renderingIntent",renderingintent:"renderingIntent",repeatcount:"repeatCount",repeatdur:"repeatDur",requiredextensions:"requiredExtensions",requiredfeatures:"requiredFeatures",rowspan:"rowSpan","shape-rendering":"shapeRendering",shaperendering:"shapeRendering",specularconstant:"specularConstant",specularexponent:"specularExponent",spellcheck:"spellCheck",spreadmethod:"spreadMethod",srcdoc:"srcDoc",srclang:"srcLang",srcset:"srcSet",startoffset:"startOffset",stddeviation:"stdDeviation",stitchtiles:"stitchTiles","stop-color":"stopColor","stop-opacity":"stopOpacity",stopcolor:"stopColor",stopopacity:"stopOpacity","strikethrough-position":"strikethroughPosition","strikethrough-thickness":"strikethroughThickness",strikethroughposition:"strikethroughPosition",strikethroughthickness:"strikethroughThickness","stroke-dasharray":"strokeDasharray","stroke-dashoffset":"strokeDashoffset","stroke-linecap":"strokeLinecap","stroke-linejoin":"strokeLinejoin","stroke-miterlimit":"strokeMiterlimit","stroke-opacity":"strokeOpacity","stroke-width":"strokeWidth",strokedasharray:"strokeDasharray",strokedashoffset:"strokeDashoffset",strokelinecap:"strokeLinecap",strokelinejoin:"strokeLinejoin",strokemiterlimit:"strokeMiterlimit",strokeopacity:"strokeOpacity",strokewidth:"strokeWidth",suppresscontenteditablewarning:"suppressContentEditableWarning",suppresshydrationwarning:"suppressHydrationWarning",surfacescale:"surfaceScale",systemlanguage:"systemLanguage",tabindex:"tabIndex",tablevalues:"tableValues",targetx:"targetX",targety:"targetY",templatelock:"templateLock","text-anchor":"textAnchor","text-decoration":"textDecoration","text-rendering":"textRendering",textanchor:"textAnchor",textdecoration:"textDecoration",textlength:"textLength",textrendering:"textRendering","underline-position":"underlinePosition","underline-thickness":"underlineThickness",underlineposition:"underlinePosition",underlinethickness:"underlineThickness","unicode-bidi":"unicodeBidi","unicode-range":"unicodeRange",unicodebidi:"unicodeBidi",unicoderange:"unicodeRange","units-per-em":"unitsPerEm",unitsperem:"unitsPerEm",usemap:"useMap","v-alphabetic":"vAlphabetic","v-hanging":"vHanging","v-ideographic":"vIdeographic","v-mathematical":"vMathematical",valphabetic:"vAlphabetic","vector-effect":"vectorEffect",vectoreffect:"vectorEffect","vert-adv-y":"vertAdvY","vert-origin-x":"vertOriginX","vert-origin-y":"vertOriginY",vertadvy:"vertAdvY",vertoriginx:"vertOriginX",vertoriginy:"vertOriginY",vhanging:"vHanging",videographic:"vIdeographic",viewbox:"viewBox",viewtarget:"viewTarget",vmathematical:"vMathematical","word-spacing":"wordSpacing",wordspacing:"wordSpacing","writing-mode":"writingMode",writingmode:"writingMode","x-height":"xHeight",xchannelselector:"xChannelSelector",xheight:"xHeight","xlink:actuate":"xlinkActuate","xlink:arcrole":"xlinkArcrole","xlink:href":"xlinkHref","xlink:role":"xlinkRole","xlink:show":"xlinkShow","xlink:title":"xlinkTitle","xlink:type":"xlinkType",xlinkactuate:"xlinkActuate",xlinkarcrole:"xlinkArcrole",xlinkhref:"xlinkHref",xlinkrole:"xlinkRole",xlinkshow:"xlinkShow",xlinktitle:"xlinkTitle",xlinktype:"xlinkType","xml:base":"xmlBase","xml:lang":"xmlLang","xml:space":"xmlSpace",xmlbase:"xmlBase",xmllang:"xmlLang","xmlns:xlink":"xmlnsXlink",xmlnsxlink:"xmlnsXlink",xmlspace:"xmlSpace",ychannelselector:"yChannelSelector",zoomandpan:"zoomAndPan"},function(a,l){const{BlockControls:c,InspectorControls:s,InnerBlocks:t}=wp.blockEditor,{Toolbar:p,IconButton:d,Placeholder:e,Spinner:n}=wp.components,{Fragment:u}=wp.element,{Component:h}=React,{withSelect:r}=wp.data,{createHigherOrderComponent:i}=wp.compose,m={};function f(e){return m[e]||!1}function o(t){return function(t){let e=function(e){return"core/block-editor"!==e?wp.data.select(e):wp.data.select("core/block-editor")||wp.data.select("core/editor")}("core/block-editor").getBlocks(),n=0;for(;n<e.length;)e=e.concat(e[n].innerBlocks),n++;for(var r in t)e=e.filter(e=>e.attributes[r]===t[r]);return e}().filter(e=>e.attributes.id===t.attributes.id).filter(e=>e.clientId!==t.clientId).length}function g(t){var e,n=t.post_types||[];if(n.length){n.push("wp_block");var r=acf.get("postType");if(-1===n.indexOf(r))return!1}"string"==typeof t.icon&&"<svg"===t.icon.substr(0,4)&&(e=t.icon,t.icon=React.createElement(C,null,e)),t.icon||delete t.icon,wp.blocks.getCategories().filter(e=>e.slug===t.category).pop()||(t.category="common");let i={id:{type:"string"},name:{type:"string"},data:{type:"object"},align:{type:"string"},mode:{type:"string"}},o=A,a=E;t.supports.align_text&&(i=((e=i).align_text={type:"string"},e),o=function(r,e){const i=H;return e.align_text=i(e.align_text),class extends h{render(){const{attributes:e,setAttributes:t}=this.props;var{align_text:n}=e;return React.createElement(u,null,React.createElement(c,null,React.createElement(z,{value:i(n),onChange:function(e){t({align_text:i(e)})}})),React.createElement(r,this.props))}}}(o,t)),t.supports.align_content&&(i=((s=i).align_content={type:"string"},s),o=function(r,e){let t=e.supports.align_content,i,o;o="matrix"===t?(i=q||I,P):(i=L,D);return i!==l?(e.align_content=o(e.align_content),class extends h{render(){const{attributes:e,setAttributes:t}=this.props;var{align_content:n}=e;return React.createElement(u,null,React.createElement(c,{group:"block"},React.createElement(i,{label:acf.__("Change content alignment"),value:o(n),onChange:function(e){t({align_content:o(e)})}})),React.createElement(r,this.props))}}):(console.warn(`The "${t}" alignment component was not found.`),r)}(o,t)),t=acf.parseArgs(t,{title:"",name:"",category:"",attributes:i,edit:function(e){return React.createElement(o,e)},save:function(e){return React.createElement(a,e)}}),m[t.name]=t;var s=wp.blocks.registerBlockType(t.name,t);return s.attributes.anchor&&(s.attributes.anchor={type:"string"}),s}const k={};function y(e){const{attributes:t={},query:n={},delay:r=0}=e,{id:i}=t,o=k[i]||{query:{},timeout:!1,promise:a.Deferred()};return o.query={...o.query,...n},clearTimeout(o.timeout),o.timeout=setTimeout(function(){a.ajax({url:acf.get("ajaxurl"),dataType:"json",type:"post",cache:!1,data:acf.prepareForAjax({action:"acf/ajax/fetch-block",block:JSON.stringify(t),query:o.query})}).always(function(){k[i]=null}).done(function(){o.promise.resolve.apply(this,arguments)}).fail(function(){o.promise.reject.apply(this,arguments)})},r),k[i]=o,o.promise}function v(e,t){return JSON.stringify(e)===JSON.stringify(t)}function b(e){var t=acf.isget(acf,"jsxNameReplacements",e);return t||e}function x(e){switch(e){case"innerblocks":return t;case"script":return M;case"#comment":return null;default:e=b(e)}return e}function w(e){var t=e.name,n=e.value;switch(t){case"class":t="className";break;case"style":var r={};n.split(";").forEach(function(e){var t,n=e.indexOf(":");0<n&&(t=e.substr(0,n).trim(),n=e.substr(n+1).trim(),"-"!==t.charAt(0)&&(t=acf.strCamelCase(t)),r[t]=n)}),n=r;break;default:if(0===t.indexOf("data-"))break;var t=b(t),i=n.charAt(0);"true"!==(n="["===i||"{"===i?JSON.parse(n):n)&&"false"!==n||(n="true"===n)}return{name:t,value:n}}acf.parseJSX=function(e){return function n(e){var t=x(e.nodeName.toLowerCase());if(!t)return null;var r={};acf.arrayArgs(e.attributes).map(w).forEach(function(e){r[e.name]=e.value});var i=[t,r];acf.arrayArgs(e.childNodes).forEach(function(e){var t;e instanceof Text?(t=e.textContent)&&i.push(t):i.push(n(e))});return React.createElement.apply(this,i)}(a(e)[0])};var R=i(function(e){return class extends h{constructor(e){super(e);const{name:t,attributes:n}=this.props;var r=f(t);if(r)if(e.attributes.id)o(e)&&(n.id=acf.uniqid("block_"));else for(var i in n.id=acf.uniqid("block_"),r.attributes)n[i]===l&&r[i]!==l&&(n[i]=r[i])}render(){return React.createElement(e,this.props)}}},"withDefaultAttributes");function E(){return React.createElement(t.Content,null)}wp.hooks.addFilter("editor.BlockListBlock","acf/with-default-attributes",R);class A extends h{constructor(e){super(e),this.setup()}setup(){const{name:e,attributes:t}=this.props;function n(e){-1===e.indexOf(t.mode)&&(t.mode=e[0])}switch(f(e).mode){case"edit":n(["edit","preview"]);break;case"preview":n(["preview","edit"]);break;default:n(["auto"])}}render(){const{name:e,attributes:t,setAttributes:n}=this.props,{mode:r}=t;let i=f(e).supports.mode;"auto"===r&&(i=!1);var o="preview"===r?acf.__("Switch to Edit"):acf.__("Switch to Preview"),a="preview"===r?"edit":"welcome-view-site";return React.createElement(u,null,React.createElement(c,null,i&&React.createElement(p,null,React.createElement(d,{className:"components-icon-button components-toolbar__control",label:o,icon:a,onClick:function(){n({mode:"preview"===r?"edit":"preview"})}}))),React.createElement(s,null,"preview"===r&&React.createElement("div",{className:"acf-block-component acf-block-panel"},React.createElement(B,this.props))),React.createElement(T,this.props))}}class S extends h{render(){var{attributes:e,isSelected:t}=this.props,{mode:e}=e;return React.createElement("div",{className:"acf-block-component acf-block-body"},!("auto"===e&&t||("auto"!==e||t)&&"preview"!==e)?React.createElement(j,this.props):React.createElement(B,this.props))}}const T=r(function(e,t){var{clientId:n}=t,t=e("core/block-editor").getBlockRootClientId(n);return{index:e("core/block-editor").getBlockIndex(n,t)}})(S);class C extends h{render(){return React.createElement("div",{dangerouslySetInnerHTML:{__html:this.props.children}})}}class M extends h{render(){return React.createElement("div",{ref:e=>this.el=e})}setHTML(e){a(this.el).html(`<script>${e}</script>`)}componentDidUpdate(){this.setHTML(this.props.children)}componentDidMount(){this.setHTML(this.props.children)}}const _={};class O extends h{constructor(e){super(e),this.setRef=this.setRef.bind(this),this.id="",this.el=!1,this.subscribed=!0,this.renderMethod="jQuery",this.setup(e),this.loadState()}setup(e){}fetch(){}loadState(){this.state=_[this.id]||{}}setState(e){_[this.id]={...this.state,...e},this.subscribed&&super.setState(e)}setHtml(e){var t;(e=e?e.trim():"")!==this.state.html&&(t={html:e},"jsx"===this.renderMethod?(t.jsx=acf.parseJSX(e),t.$el=a(this.el)):t.$el=a(e),this.setState(t))}setRef(e){this.el=e}render(){return this.state.jsx?React.createElement("div",{ref:this.setRef},this.state.jsx):React.createElement("div",{ref:this.setRef},React.createElement(e,null,React.createElement(n,null)))}shouldComponentUpdate(e,t){return e.index!==this.props.index&&this.componentWillMove(),t.html!==this.state.html}display(e){var t,n,r;switch("jQuery"===this.renderMethod&&(n=(t=this.state.$el).parent(),(r=a(this.el)).html(t),n.length&&n[0]!==r[0]&&n.html(t.clone())),e){case"append":this.componentDidAppend();break;case"remount":this.componentDidRemount()}}componentDidMount(){this.state.html===l?this.fetch():this.display("remount")}componentDidUpdate(e,t){this.display("append")}componentDidAppend(){acf.doAction("append",this.state.$el)}componentWillUnmount(){acf.doAction("unmount",this.state.$el),this.subscribed=!1}componentDidRemount(){this.subscribed=!0,setTimeout(()=>{acf.doAction("remount",this.state.$el)})}componentWillMove(){acf.doAction("unmount",this.state.$el),setTimeout(()=>{acf.doAction("remount",this.state.$el)})}}class B extends O{setup(e){this.id=`BlockForm-${e.attributes.id}`}fetch(){var{attributes:e}=this.props;y({attributes:e,query:{form:!0}}).done(e=>{this.setHtml(e.data.form)})}componentDidAppend(){super.componentDidAppend();const{attributes:n,setAttributes:r}=this.props,{$el:i}=this.state;function e(e=!1){var t=acf.serialize(i,`acf-${n.id}`);e?n.data=t:r({data:t})}var t=!1;i.on("change keyup",function(){clearTimeout(t),t=setTimeout(e,300)}),n.data||e(!0)}}class j extends O{setup(e){this.id=`BlockPreview-${e.attributes.id}`,f(e.name).supports.jsx&&(this.renderMethod="jsx")}fetch(e={}){var{attributes:t=this.props.attributes,delay:n=0}=e;if(this.setState({prevAttributes:t}),this.state.html===l){e=acf.get("preloadedBlocks");if(e&&e[t.id])return void this.setHtml(e[t.id])}y({attributes:t,query:{preview:!0},delay:n}).done(e=>{this.setHtml(e.data.preview)})}componentDidAppend(){super.componentDidAppend();const{attributes:e}=this.props;var{$el:t}=this.state,n=e.name.replace("acf/","");acf.doAction("render_block_preview",t,e),acf.doAction(`render_block_preview/type=${n}`,t,e)}shouldComponentUpdate(e,t){var n=e.attributes,r=this.props.attributes;if(!v(n,r)){let e=0;n.className!==r.className&&(e=300),n.anchor!==r.anchor&&(e=300),this.fetch({attributes:n,delay:e})}return super.shouldComponentUpdate(e,t)}componentDidRemount(){super.componentDidRemount(),v(this.state.prevAttributes,this.props.attributes)||this.fetch()}}function D(e){return["top","center","bottom"].includes(e)?e:"top"}function H(e){var t=acf.get("rtl")?"right":"left";return["left","center","right"].includes(e)?e:t}function P(e){if(e){var[t,e]=e.split(" ");return D(t)+" "+H(e)}return"center center"}acf.addAction("prepare",function(){wp.blockEditor||(wp.blockEditor=wp.editor);var e=acf.get("blockTypes");e&&e.map(g)});const{AlignmentToolbar:z,BlockVerticalAlignmentToolbar:L}=wp.blockEditor,I=wp.blockEditor.__experimentalBlockAlignmentMatrixToolbar||wp.blockEditor.BlockAlignmentMatrixToolbar,q=wp.blockEditor.__experimentalBlockAlignmentMatrixControl||wp.blockEditor.BlockAlignmentMatrixControl}(jQuery); |