PluginProbe
ElasticPress / 5.3.5
ElasticPress v5.3.5
5.3.5 5.3.4 3.6.5 3.6.6 4.0.0 4.0.1 4.1.0 4.2.0 4.2.1 4.2.2 4.3.0 4.3.1 4.4.0 4.4.1 4.5.0 4.5.1 4.5.2 4.6.0 4.6.1 4.7.0 4.7.1 4.7.2 5.0.0 5.0.1 5.0.2 All 108 releases
elasticpress / dist / js / related-posts-block-script.js

related-posts-block-script.js in ElasticPress 5.3.5, at dist/js/related-posts-block-script.js

1 lines 2.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 !function(){"use strict";var e={n:function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,{a:n}),n},d:function(t,n){for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:n[r]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t=window.wp.blocks,n=window.wp.primitives,r=()=>React.createElement(n.SVG,{version:"1.0",xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24"},React.createElement(n.Path,{d:"M 20.75 3.25 L 20.75 19.75 L 3.25 19.75 L 3.25 3.25 Z M 19.25 18.25 L 19.25 4.75 L 10.25 4.75 L 10.25 18.25 Z M 4.75 4.75 L 4.75 18.25 L 8.75 18.25 L 8.75 4.75 Z"}),React.createElement(n.Path,{d:"M 4 8.25 C 4.6 8.25 7.392 8.25 10.638 8.25 C 12.26 8.25 13.997 8.25 15.63 8.25 C 16.446 8.25 17.237 8.25 17.974 8.25 C 18.711 8.25 20 8.25 20 8.25 L 20 9.75 C 20 9.75 18.711 9.75 17.974 9.75 C 17.237 9.75 16.446 9.75 15.63 9.75 C 13.997 9.75 12.26 9.75 10.638 9.75 C 7.392 9.75 4.6 9.75 4 9.75 Z M 4 13.25 L 20 13.25 L 20 14.75 L 4 14.75 Z"})),a=window.wp.apiFetch,l=e.n(a),c=window.wp.blockEditor,s=window.wp.components,o=window.wp.element,i=window.wp.i18n,u=window.wp.url;var m=({attributes:e,context:t,setAttributes:n})=>{const{alignment:a,number:m}=e,[p,d]=(0,o.useState)(!1),w=(0,c.useBlockProps)(),E=p.length>m?p.slice(0,m):p;return(0,o.useEffect)((()=>{const{postId:e=0}=t;l()({path:(0,u.addQueryArgs)(`/elasticpress/v1/related-posts/${e}`,{number:100})}).then((e=>{d(e)})).catch((()=>{d(!1)}))}),[t]),React.createElement(o.Fragment,null,React.createElement(c.BlockControls,null,React.createElement(c.AlignmentToolbar,{value:a,onChange:e=>n({alignment:e})})),React.createElement(c.InspectorControls,null,React.createElement(s.PanelBody,{title:(0,i.__)("Settings","elasticpress")},React.createElement(s.QueryControls,{numberOfItems:m,onNumberOfItemsChange:e=>n({number:e})}))),React.createElement("div",w,!1===E||0===E.length?React.createElement(s.Placeholder,{icon:r,label:(0,i.__)("Related Posts","elasticpress")},!1===p?React.createElement(s.Spinner,null):(0,i.__)("No related posts yet.","elasticpress")):React.createElement(s.Disabled,null,React.createElement("ul",{style:{textAlign:a}},E.map((e=>{const t=e.title.rendered.trim();return React.createElement("li",{key:e.id},React.createElement("a",{href:e.link,onClick:e=>e.preventDefault()},t?React.createElement(o.RawHTML,null,t):(0,i.__)("(Untitled)","elasticpress")))}))))))},p=JSON.parse('{"UU":"elasticpress/related-posts"}'),d={from:[{type:"block",blocks:["core/legacy-widget"],isMatch:({idBase:e})=>"ep-related-posts"===e,transform:({instance:e})=>{const{title:n=null,num_posts:r}=e.raw;return n?[(0,t.createBlock)("core/heading",{content:n}),(0,t.createBlock)("elasticpress/related-posts",{number:r})]:(0,t.createBlock)("elasticpress/related-posts",{number:r})}}]};(0,t.registerBlockType)(p.UU,{icon:r,edit:e=>React.createElement(m,e),save:()=>{},transforms:d})}();