Changeset 2371863
- Timestamp:
- 08/30/2020 12:09:20 PM (6 years ago)
- Location:
- embed-mixcloud-advanced/trunk
- Files:
-
- 9 edited
-
backend/RestPreviewProvider.php (modified) (1 diff)
-
dist/block-show-editor-bundle.min.asset.php (modified) (1 diff)
-
dist/block-show-editor-bundle.min.js (modified) (1 diff)
-
dist/block-show-editor-bundle.min.js.map (modified) (1 diff)
-
dist/public-bundle.min.js.map (modified) (1 diff)
-
frontend/block-show/edit.js (modified) (1 diff)
-
frontend/block-show/toolbar-widget-type.js (modified) (1 diff)
-
init.php (modified) (1 diff)
-
readme.txt (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
embed-mixcloud-advanced/trunk/backend/RestPreviewProvider.php
r2339869 r2371863 27 27 28 28 register_rest_route( REST_NAMESPACE, '/preview/', [ 29 'method' => 'GET', 30 'callback' => [ $this, 'response' ] 29 'method' => 'GET', 30 'callback' => [ $this, 'response' ], 31 'permission_callback' => '__return_true' 31 32 ] ); 32 33 -
embed-mixcloud-advanced/trunk/dist/block-show-editor-bundle.min.asset.php
r2339869 r2371863 1 <?php return array('dependencies' => array('lodash', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-compose', 'wp-data', 'wp-element', 'wp-i18n', 'wp-polyfill'), 'version' => ' ca91bbc8db03f46dd62414e3e3e9478e');1 <?php return array('dependencies' => array('lodash', 'wp-block-editor', 'wp-blocks', 'wp-components', 'wp-compose', 'wp-data', 'wp-element', 'wp-i18n', 'wp-polyfill'), 'version' => 'd4cdc8a3fe5733b27806650c86fbcf11'); -
embed-mixcloud-advanced/trunk/dist/block-show-editor-bundle.min.js
r2339869 r2371863 1 !function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=19)}([function(e,t){!function(){e.exports=this.wp.element}()},function(e,t){!function(){e.exports=this.wp.components}()},function(e,t){!function(){e.exports=this.wp.i18n}()},function(e,t){function r(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}e.exports=function(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e}},function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t){e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}},function(e,t,r){"use strict";r.d(t,"a",(function(){return a}));var n=r(4),i=r.n(n),o=r(3),c=r.n(o),l=[],a=function(){function e(t,r,n,o){i()(this,e),this.container=t,this.previewBtn=r,this.onPlay=o,this.play=this.play.bind(this),this.stop=this.stop.bind(this),this.on=this.on.bind(this),this.off=this.off.bind(this),this.onClick=this.onClick.bind(this),n&&!this.audio&&(this.audio=new Audio(n),this.audio.load(),this.audio.addEventListener("loadeddata",this.on),this.audio.addEventListener("pause",this.stop)),this.playing=!1,this.available=!0}return c()(e,null,[{key:"getInstance",value:function(t,r,n,i){var o=new e(t,r,n,i);return l.push(o),o}},{key:"pauseAll",value:function(e){l.forEach((function(t){t!==e&&(t.stop(!1),t.onPlay())}))}}]),c()(e,[{key:"on",value:function(){this.previewBtn.addEventListener("click",this.onClick)}},{key:"off",value:function(){this.previewBtn.removeEventListener("click",this.onClick)}},{key:"onClick",value:function(){this.playing?this.stop(!1):this.play()}},{key:"updateSpinnerDuration",value:function(e){this.container.style.setProperty("--spinner-duration",e+"s")}},{key:"updateSpinnerProgress",value:function(e){var t=56.52/(this.audio.duration/e)+", "+(56.52-56.52/(this.audio.duration/e));this.container.style.setProperty("--spinner-progress",t)}},{key:"play",value:function(){var e=this;this.constructor.pauseAll(this),this.onPlay(),!this.playing&&this.available&&(this.playing=!0,setTimeout((function(){e.playing&&e.audio&&e.audio.play().then((function(){e.updateSpinnerDuration(e.audio.duration-e.audio.currentTime),e.container.className=e.container.className.replace(" mea-show__wrapper_pause",""),e.container.className+=" mea-show__wrapper_playing"}))}),500))}},{key:"stop",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.playing&&(this.playing=!1,this.audio&&(this.audio.pause(),e?(this.audio.currentTime=0,this.updateSpinnerProgress(0)):(this.container.className+=" mea-show__wrapper_pause",this.updateSpinnerProgress(this.audio.currentTime)),this.container.className=this.container.className.replace(" mea-show__wrapper_playing","")))}},{key:"blink",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;this.container.className+=" mea-show__wrapper_playing",this.updateSpinnerDuration(t),setTimeout((function(){e.container.className=e.container.className.replace(" mea-show__wrapper_playing","")}),1e3*t)}}]),e}()},function(e,t){function r(t){return e.exports=r=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},r(t)}e.exports=r},function(e,t,r){var n=r(20);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&n(e,t)}},function(e,t,r){var n=r(21),i=r(5);e.exports=function(e,t){return!t||"object"!==n(t)&&"function"!=typeof t?i(e):t}},function(e,t){!function(){e.exports=this.wp.blockEditor}()},function(e,t){e.exports=function(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}},function(e,t){!function(){e.exports=this.wp.data}()},function(e,t){!function(){e.exports=this.regeneratorRuntime}()},function(e,t){!function(){e.exports=this.wp.blocks}()},function(e,t){!function(){e.exports=this.wp.compose}()},function(e,t){function r(e,t,r,n,i,o,c){try{var l=e[o](c),a=l.value}catch(e){return void r(e)}l.done?t(a):Promise.resolve(a).then(n,i)}e.exports=function(e){return function(){var t=this,n=arguments;return new Promise((function(i,o){var c=e.apply(t,n);function l(e){r(c,i,o,l,a,"next",e)}function a(e){r(c,i,o,l,a,"throw",e)}l(void 0)}))}}},function(e,t,r){var n=r(22),i=r(23),o=r(24),c=r(26);e.exports=function(e,t){return n(e)||i(e,t)||o(e,t)||c()}},function(e,t){!function(){e.exports=this.lodash}()},function(e,t,r){e.exports=r(29)},function(e,t){function r(t,n){return e.exports=r=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},r(t,n)}e.exports=r},function(e,t){function r(t){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?e.exports=r=function(e){return typeof e}:e.exports=r=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(t)}e.exports=r},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,i=!1,o=void 0;try{for(var c,l=e[Symbol.iterator]();!(n=(c=l.next()).done)&&(r.push(c.value),!t||r.length!==t);n=!0);}catch(e){i=!0,o=e}finally{try{n||null==l.return||l.return()}finally{if(i)throw o}}return r}}},function(e,t,r){var n=r(25);e.exports=function(e,t){if(e){if("string"==typeof e)return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(r):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(e,t):void 0}}},function(e,t){e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}},,,function(e,t,r){"use strict";r.r(t),r.d(t,"matchMixcloudUrl",(function(){return ne}));var n=r(0),i=r(2),o=r(14),c=r(15),l=r(12),a=r(13),s=r.n(a),u=r(16),p=r.n(u),d=r(4),h=r.n(d),v=r(3),m=r.n(v),b=r(5),f=r.n(b),w=r(8),y=r.n(w),g=r(9),O=r.n(g),j=r(7),k=r.n(j),x=r(10),_=r(1),E=(Object(n.createElement)(_.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Path,{fill:"none",d:"M0 0h24v24H0V0z"}),Object(n.createElement)(_.Path,{d:"M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3V5h18v14zM8 15c0-1.66 1.34-3 3-3 .35 0 .69.07 1 .18V6h5v2h-3v7.03c-.02 1.64-1.35 2.97-3 2.97-1.66 0-3-1.34-3-3z"})),Object(n.createElement)(_.SVG,{viewBox:"0 0 302.4 302.4",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)("path",{d:"M204.8,97.6C191.2,84,172,75.2,151.2,75.2s-40,8.4-53.6,22.4c-13.6,13.6-22.4,32.8-22.4,53.6s8.8,40,22.4,53.6 c13.6,13.6,32.8,22.4,53.6,22.4s40-8.4,53.6-22.4c13.6-13.6,22.4-32.8,22.4-53.6S218.8,111.2,204.8,97.6z"}),Object(n.createElement)("path",{d:"M151.2,51.6c5.6,0,10.4-4.8,10.4-10.4V10.4c0-5.6-4.8-10.4-10.4-10.4c-5.6,0-10.4,4.8-10.4,10.4v30.8 C140.8,46.8,145.6,51.6,151.2,51.6z"}),Object(n.createElement)("path",{d:"M236.4,80.8l22-22c4-4,4-10.4,0-14.4s-10.4-4-14.4,0l-22,22c-4,4-4,10.4,0,14.4C225.6,84.8,232,84.8,236.4,80.8z"}),Object(n.createElement)("path",{d:"M292,140.8h-30.8c-5.6,0-10.4,4.8-10.4,10.4c0,5.6,4.8,10.4,10.4,10.4H292c5.6,0,10.4-4.8,10.4-10.4 C302.4,145.6,297.6,140.8,292,140.8z"}),Object(n.createElement)("path",{d:"M236,221.6c-4-4-10.4-4-14.4,0s-4,10.4,0,14.4l22,22c4,4,10.4,4,14.4,0s4-10.4,0-14.4L236,221.6z"}),Object(n.createElement)("path",{d:"M151.2,250.8c-5.6,0-10.4,4.8-10.4,10.4V292c0,5.6,4.8,10.4,10.4,10.4c5.6,0,10.4-4.8,10.4-10.4v-30.8 C161.6,255.6,156.8,250.8,151.2,250.8z"}),Object(n.createElement)("path",{d:"M66,221.6l-22,22c-4,4-4,10.4,0,14.4s10.4,4,14.4,0l22-22c4-4,4-10.4,0-14.4C76.8,217.6,70.4,217.6,66,221.6z"}),Object(n.createElement)("path",{d:"M51.6,151.2c0-5.6-4.8-10.4-10.4-10.4H10.4c-5.6,0-10.4,4.8-10.4,10.4s4.8,10.4,10.4,10.4h30.8 C46.8,161.6,51.6,156.8,51.6,151.2z"}),Object(n.createElement)("path",{d:"M66,80.8c4,4,10.4,4,14.4,0s4-10.4,0-14.4l-22-22c-4-4-10.4-4-14.4,0s-4,10.4,0,14.4L66,80.8z"}))),C=Object(n.createElement)(_.SVG,{viewBox:"0 0 480 480",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Path,{d:"M459.782,347.328c-4.288-5.28-11.488-7.232-17.824-4.96c-17.76,6.368-37.024,9.632-57.312,9.632 c-97.056,0-176-78.976-176-176c0-58.4,28.832-112.768,77.12-145.472c5.472-3.712,8.096-10.4,6.624-16.832 S285.638,2.4,279.078,1.44C271.59,0.352,264.134,0,256.646,0c-132.352,0-240,107.648-240,240s107.648,240,240,240 c84,0,160.416-42.688,204.352-114.176C464.55,360.032,464.038,352.64,459.782,347.328z"})),P=Object(n.createElement)(_.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Rect,{height:"20",width:"20",y:"2",x:"2",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"})),S=Object(n.createElement)(_.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Rect,{height:"12",width:"22",y:"6",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"7",x2:"11",y1:"18",x1:"11",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"12",x2:"11",y1:"12",x1:"22",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"})),L=Object(n.createElement)(_.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Rect,{height:"8",width:"22",y:"8",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"9",x2:"10",y1:"16",x1:"10",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"})),A=Object(n.createElement)(_.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Rect,{height:"12",width:"22",y:"6",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"12",x2:"2",y1:"12",x1:"22",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"})),U=Object(n.createElement)(_.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Rect,{height:"12",width:"22",y:"6",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"})),W=Object(n.createElement)(_.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Rect,{height:"8",width:"22",y:"8",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"})),R=Object(n.createElement)(_.SVG,{className:"mea-show__spinner",width:"20",height:"20",viewBox:"0 0 20 20",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Circle,{cx:"10",cy:"10",r:"9"}),Object(n.createElement)("path",{d:"M8 6l6 4.03L8 14V6z",fill:"currentColor"})),T=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t="mea-show__spinner"+(e?" mea-show__spinner_download":"");return Object(n.createElement)(_.SVG,{className:t,width:"20",height:"20",viewBox:"0 0 20 20",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Circle,{cx:"10",cy:"10",r:"9"}),Object(n.createElement)("path",{d:"M14 8l-4.03 6L6 8h8z",fill:"currentColor"}))},B=Object(n.createElement)(_.SVG,{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-hidden":"true",focusable:"false"},Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"2",x2:"1",y1:"2",x1:"9",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"}),Object(n.createElement)(_.Rect,{height:"12",width:"22",y:"6",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"7",x2:"11",y1:"18",x1:"11",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"12",x2:"11",y1:"12",x1:"22",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"})),M=Object(n.createElement)(_.SVG,{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-hidden":"true",focusable:"false"},Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"2",x2:"8",y1:"2",x1:"16",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"}),Object(n.createElement)(_.Rect,{height:"12",width:"22",y:"6",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"7",x2:"11",y1:"18",x1:"11",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"12",x2:"11",y1:"12",x1:"22",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"})),N=Object(n.createElement)(_.SVG,{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-hidden":"true",focusable:"false"},Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"2",x2:"15",y1:"2",x1:"23",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"}),Object(n.createElement)(_.Rect,{height:"12",width:"22",y:"6",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"7",x2:"11",y1:"18",x1:"11",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"12",x2:"11",y1:"12",x1:"22",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"})),D=function(e){var t=e.cannotEmbed,r=e.url,o=e.previewInfoLink,c=e.loadPreview,l=e.onSubmit,a=e.onChangeUrl,s=e.onChangeLoadPreview;return Object(n.createElement)(_.Placeholder,{icon:Object(n.createElement)(x.BlockIcon,{icon:R,showColors:!0}),label:Object(i.__)("Mixcloud Advanced","embed-mixcloud-advanced"),className:"wp-block-embed",instructions:t?Object(i.__)("This show could not be embedded!","embed-mixcloud-advanced"):Object(i.__)("Paste a link to the show you want to display on your site.","embed-mixcloud-advanced")},Object(n.createElement)("form",{onSubmit:l},Object(n.createElement)("input",{type:"url",value:r||"",className:"components-placeholder__input"+(t?" components-placeholder__input-error":""),"aria-label":Object(i.__)("Mixcloud URL","embed-mixcloud-advanced"),placeholder:Object(i.__)("Enter URL to embed here…","embed-mixcloud-advanced"),onChange:a}),Object(n.createElement)(_.Button,{isSecondary:!0,type:"submit"},Object(i._x)("Embed","button label"))),Object(n.createElement)("form",null,Object(n.createElement)(_.CheckboxControl,{className:"components-placeholder__learn-more",label:Object(i.__)("Enable preview","embed-mixcloud-advanced"),checked:c,onChange:s})),Object(n.createElement)("div",null,Object(n.createElement)("div",null,Object(i.__)("This function can be disabled. To download preview data, a request will be made from the server to the show page.","embed-mixcloud-advanced")," ",Object(n.createElement)(_.ExternalLink,{href:o,target:"_blank"},Object(i.__)("See more","embed-mixcloud-advanced")))))},V=r(17),z=r.n(V),G=r(6);function I(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var q=function(e){y()(o,e);var t,r=(t=o,function(){var e,r=k()(t);if(I()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return O()(this,e)});function o(e){var t;return h()(this,o),(t=r.call(this,e)).hideOverlay=t.hideOverlay.bind(f()(t)),t.state={interactive:!1},t._iframe=Object(n.createRef)(),t}return m()(o,[{key:"getContainer",value:function(){return this._iframe.current.parentElement.parentElement}},{key:"getPreviewBtn",value:function(){return this.getContainer().getElementsByClassName("mea-show__preview-btn")[0]}},{key:"componentDidMount",value:function(){var e=this;this.props.previewUrl&&(this.preview=G.a.getInstance(this.getContainer(),this.getPreviewBtn(),this.props.previewUrl,(function(){return e.pause()}))),this._iframe.current.addEventListener("load",(function(t){e.updateWidgetOptions()}))}},{key:"componentWillUnmount",value:function(){this.preview&&this.preview.stop()}},{key:"componentDidUpdate",value:function(){var e=this;!this.preview&&this.props.previewUrl&&(this.preview=G.a.getInstance(this.getContainer(),this.getPreviewBtn(),this.props.previewUrl,(function(){return e.pause()}))),this.preview&&(this.props.previewUrl?this.preview.on():this.preview.off()),this.updateWidgetOptions()}},{key:"pause",value:function(){void 0!==this.widget&&void 0!==this.widget.pause&&this.widget.pause()}},{key:"blinkPreview",value:function(){this.preview&&this.preview.blink()}},{key:"updateWidgetOptions",value:function(){var e=this,t=function(){e.widget.setOption&&(e.widget.setOption("mini",e.props.mini),e.widget.setOption("light",e.props.light),e.widget.setOption("hide_artwork",e.props.hideArtwork),e.widget.setOption("hide_cover",e.props.hideCover),e.props.autoplay?e.widget.play():e.widget.pause(),e.widget.events.play.on((function(){e.preview&&(e.preview.stop(!1),e.preview.constructor.pauseAll(e.preview))})))};void 0!==window.Mixcloud.PlayerWidget&&(this.widget&&this._iframe.current.getBoundingClientRect().y===this.iframeY||(this.widget=window.Mixcloud.PlayerWidget(this._iframe.current),this.iframeY=this._iframe.current.getBoundingClientRect().y,this.widget.ready.then((function(){e._iframe.current.style.setProperty("visibility","visible"),t()}))),t())}},{key:"hideOverlay",value:function(){this.setState({interactive:!0})}},{key:"getUrl",value:function(){var e=this.props,t=e.url,r=e.updateUrl,n=e.mini,i=e.hideCover,o=e.hideArtwork,c=e.light;if(t){var l=t.split(".com"),a=z()(l,2);a[0];return t="https://www.mixcloud.com/widget/iframe/?feed="+a[1]+(r?"&mini="+(0|n)+"&hide_cover="+(0|i)+"&hide_artwork="+(0|o)+"&light="+(0|c):"")}return!1}},{key:"render",value:function(){var e=this.props,t=e.previewUrl,r=e.height,o=e.light,c=e.previewAlign,l=e.autoplay,a=this.state.interactive,s=this.getUrl();if(s){var u="mea-show__container"+(t?" mea-show__container_with_preview":""),p=" mea-show__preview-btn_"+c;return Object(n.createElement)("div",{className:u,onFocus:this.hideOverlay},t&&Object(n.createElement)("div",{className:"mea-show__preview-btn "+(o?"mea-show__preview-btn_light":"")+p},R,Object(n.createElement)("span",null,Object(i.__)("Preview","embed-mixcloud-advanced"))),Object(n.createElement)("div",{className:"mea-show__wrapper","data-preview-url":t},Object(n.createElement)("iframe",{ref:this._iframe,width:"100%",height:r,src:s,frameBorder:"0",allow:l?"autoplay":null})),!a&&Object(n.createElement)("div",{className:"block-library-embed__interactive-overlay",onMouseUp:this.hideOverlay}))}}}],[{key:"getDerivedStateFromProps",value:function(e,t){return!e.isSelected&&t.interactive?{interactive:!1}:null}}]),o}(n.Component),F=r(11),H=r.n(F);function Y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function $(e){var t=e.url,r=e.emitLoadPreview,o=e.previewEnabled,c=e.togglePreviewEnabled,l=e.previewAlign,a=e.emitChangePreviewAlign,s=e.previewLoading,u={left:{icon:B,title:Object(i.__)("Left","embed-mixcloud-advanced")},center:{icon:M,title:Object(i.__)("Center","embed-mixcloud-advanced")},right:{icon:N,title:Object(i.__)("Right","embed-mixcloud-advanced")}},p=Object.keys(u).map((function(e){return function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Y(Object(r),!0).forEach((function(t){H()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Y(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},u[e],{isActive:l===e,onClick:function(){return a(e)}})}));return t?Object(n.createElement)(n.Fragment,null,Object(n.createElement)(_.Toolbar,{controls:[{icon:R,title:Object(i.__)("Enable preview","embed-mixcloud-advanced"),onClick:c,isActive:o}]}),o&&Object(n.createElement)(_.Toolbar,{icon:u[l]?u[l].icon:u.right.icon,label:Object(i.__)("Preview button align","embed-mixcloud-advanced"),isCollapsed:!0,controls:p})):Object(n.createElement)(_.Toolbar,{icon:R,controls:[{icon:T(s),title:Object(i.__)("There is no preview data for this show. Download?","embed-mixcloud-advanced"),isActive:!1,onClick:r}]})}var J=r(18);function K(e){var t=e.value,r=e.onClick;return Object(n.createElement)(_.Toolbar,{controls:["light","dark"].map((function(e){return{icon:"light"===e?E:C,title:Object(i.__)(Object(J.capitalize)(e),"embed-mixcloud-advanced"),isActive:t===e,onClick:function(){return r(e)}}}))})}function Q(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var X={picture:{title:Object(i.__)("Large Covered Widget","embed-mixcloud-advanced"),icon:P,height:180,hideCover:!1},classic:{title:Object(i.__)("Classic Widget","embed-mixcloud-advanced"),icon:S,height:120,hideCover:!0},noArtwork:{title:Object(i.__)("Widget w/o Artwork","embed-mixcloud-advanced"),icon:A,height:120,hideArtwork:!0,hideCover:!0},covered:{title:Object(i.__)("Covered Widget","embed-mixcloud-advanced"),icon:U,height:120,hideArtwork:!0,hideCover:!1},mini:{title:Object(i.__)("Mini Widget","embed-mixcloud-advanced"),icon:L,height:60,hideCover:!0,mini:!0},minNoArtwork:{title:Object(i.__)("Mini Widget w/o Artwork","embed-mixcloud-advanced"),icon:W,height:60,hideArtwork:!0,hideCover:!0,mini:!0}};function Z(e){var t=e.selected,r=e.onSelect,i=Object.keys(X).map((function(e){return function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Q(Object(r),!0).forEach((function(t){H()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Q(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({}, X[e],{isActive:t===e,onClick:function(){return r(e)}})}));return Object(n.createElement)(_.Toolbar,{controls:i})}function ee(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var te="https://datcoder.com/embed-mixcloud-advanced/",re=function(e){y()(o,e);var t,r=(t=o,function(){var e,r=k()(t);if(ee()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return O()(this,e)});function o(e){var t;return h()(this,o),(t=r.call(this,e)).setUrl=t.setUrl.bind(f()(t)),t.emitChangeUrl=t.emitChangeUrl.bind(f()(t)),t.requestPreview=t.requestPreview.bind(f()(t)),t.getWidgetProp=t.getWidgetProp.bind(f()(t)),t.updateAttribute=t.updateAttribute.bind(f()(t)),t.state={editingURL:!1,url:e.attributes.url,widgetType:e.attributes.widgetType||"classic",theme:e.attributes.theme||"dark",autoplay:e.attributes.autoplay||!1,previewUrl:e.attributes.previewUrl,previewEnabled:e.attributes.previewEnabled,previewAlign:e.attributes.previewAlign||"left",previewLoading:!1,previewLoadingError:!1,widget:void 0,loadPreview:!0},t._show=Object(n.createRef)(),t}return m()(o,[{key:"setUrl",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;e&&e.preventDefault();var t=this.state,r=t.url,n=t.previewUrl,i=t.loadPreview,o=this.props.setAttributes;o({url:r}),this.setState({editingURL:!1}),!n&&i&&this.requestPreview()}},{key:"updateAttribute",value:function(e){this.setState(e),(0,this.props.setAttributes)(e)}},{key:"emitChangeUrl",value:function(){this.setState({url:void 0,editingURL:!0,previewUrl:void 0},this.setUrl)}},{key:"getWidgetProp",value:function(e){return X[this.state.widgetType][e]}},{key:"requestPreview",value:function(){var e=this;this.setState({previewLoading:!0,previewLoadingError:!1}),p()(s.a.mark((function t(){var r;return s.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,fetch(window.location.origin+"/wp-json/vema/v1/preview/?show_url="+e.state.url);case 2:if(!(r=t.sent).ok){t.next=9;break}return t.next=6,r.json();case 6:return t.abrupt("return",t.sent);case 9:console.error("HTTP ERROR: "+r.status);case 10:case"end":return t.stop()}}),t)})))().then((function(t){t&&void 0!==t.preview_url?e.updateAttribute({previewUrl:t.preview_url}):void 0!==t.error?e.setState({previewLoadingError:t.error}):e.setState({previewLoadingError:Object(i.__)("Server responded that something went wrong.","embed-mixcloud-advanced")}),e.setState({previewLoading:!1})}))}},{key:"render",value:function(){var e=this,t=this.state,r=t.url,o=t.loadPreview,c=t.widgetType,l=t.previewUrl,a=t.editingURL,s=t.theme,u=t.autoplay,p=t.playing,d=t.previewEnabled,h=t.previewAlign,v=t.previewLoading,m=t.previewLoadingError,b=this.props,f=b.fetching,w=b.preview,y=b.cannotEmbed,g=b.tryAgain,O=b.isSelected;if(f)return Object(n.createElement)(n.Fragment,null,Object(n.createElement)("div",{className:"wp-block-embed is-loading"},Object(n.createElement)(_.Spinner,null),Object(n.createElement)("p",null,Object(i.__)("Embedding…","embed-mixcloud-advanced"))));if(!f&&(!w||y||a))return Object(n.createElement)(n.Fragment,null,Object(n.createElement)(D,{previewInfoLink:te+"#preview",cannotEmbed:y,url:r,loadPreview:o,tryAgain:g,onSubmit:this.setUrl,onChangeUrl:function(t){return e.setState({url:t.target.value})},onChangeLoadPreview:function(){return e.setState({loadPreview:!o})}}));var j=!!this.getWidgetProp("previewIcon")&&this.getWidgetProp("previewIcon");return Object(n.createElement)(n.Fragment,null,Object(n.createElement)(x.BlockControls,null,Object(n.createElement)(Z,{selected:c,onSelect:function(t){return e.updateAttribute({widgetType:t})}}),Object(n.createElement)(K,{value:s,onClick:function(t){return e.updateAttribute({theme:t})}}),Object(n.createElement)(_.Toolbar,{controls:[{icon:"controls-play",title:Object(i.__)("Autoplay","embed-mixcloud-advanced"),isActive:u,onClick:function(t){return e.updateAttribute({autoplay:!u})}}]}),Object(n.createElement)($,{emitLoadPreview:this.requestPreview,url:l,playing:p,previewLoading:v,previewEnabled:d,togglePreviewEnabled:function(){e.updateAttribute({previewEnabled:!e.state.previewEnabled}),e._show.current.blinkPreview()},previewAlign:h,emitChangePreviewAlign:function(t){e.updateAttribute({previewAlign:t}),e._show.current.blinkPreview()}}),Object(n.createElement)(_.Toolbar,{controls:[{icon:"edit",class:"mea_preview_control",title:Object(i.__)("Edit URL","embed-mixcloud-advanced"),onClick:this.emitChangeUrl}]})),m&&Object(n.createElement)(_.Notice,{status:"error",onRemove:function(){return e.setState({previewLoadingError:!1})}},m," ",Object(i.__)("You can","embed-mixcloud-advanced")," ",Object(n.createElement)(_.Button,{isPrimary:!0,isSmall:!0,onClick:this.requestPreview},Object(i.__)("Try again","embed-mixcloud-advanced"))," ",Object(i.__)("or","embed-mixcloud-advanced")," ",Object(n.createElement)(_.Button,{isSecondary:!0,isSmall:!0,href:te,target:"_blank"},Object(i.__)("Send report","embed-mixcloud-advanced"))),Object(n.createElement)(q,{ref:this._show,updateUrl:!1,url:r,height:X[c].height,previewUrl:!!d&&l,spinner:j,mini:this.getWidgetProp("mini"),autoplay:u,hideCover:this.getWidgetProp("hideCover"),hideArtwork:this.getWidgetProp("hideArtwork"),light:"light"===s,isSelected:O,previewAlign:h}))}}]),o}(n.Component),ne=function(e){return/^\s*(https?:\/\/(.+?\.)?mixcloud\.com\S+)\s*$/i.test(e)};Object(o.registerBlockType)("veliky/mixcloud-show",{title:Object(i.__)("Mixcloud Advanced","embed-mixcloud-advanced"),icon:R,category:"embed",supports:{align:!0},attributes:{url:{type:"string"},widgetType:{type:"string"},theme:{type:"string"},autoplay:{type:"boolean"},previewUrl:{type:"string"},previewEnabled:{type:"boolean",default:!0},previewAlign:{type:"string",default:"right"}},edit:Object(c.compose)(Object(l.withSelect)((function(e,t){var r=t.attributes.url,n=e("core"),i=n.getEmbedPreview,o=n.isPreviewEmbedFallback,c=n.isRequestingEmbedPreview,l=void 0!==r,a=l&&i(r),s=l&&o(r),u=l&&c(r),p=!!a&&void 0===a.type&&!1===a.html,d=!!a&&a.data&&404===a.data.status,h=!!a&&!p&&!d;return{preview:h?a:void 0,fetching:u,cannotEmbed:l&&(!ne(r)||!h||s)}})),Object(l.withDispatch)((function(e,t){var r=t.attributes,n=r.url,i=(r.widgetType,r.theme,r.autoplay,e("core/data"));return{tryAgain:function(){i.invalidateResolution("core","getEmbedPreview",[n])}}})))(re),save:function(e){var t=e.attributes,r=t.url,i=t.widgetType,o=t.previewUrl,c=t.theme,l=t.previewAlign;if(!r)return null;var a=X[i||"classic"];return Object(n.createElement)("figure",null,Object(n.createElement)(q,{updateUrl:!0,url:r,height:a.height,previewUrl:o,spinner:a.previewIcon,mini:a.mini,hideCover:a.hideCover,hideArtwork:a.hideArtwork,light:c&&"light"===c,previewAlign:l}))}})}]);1 !function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=19)}([function(e,t){!function(){e.exports=this.wp.element}()},function(e,t){!function(){e.exports=this.wp.components}()},function(e,t){!function(){e.exports=this.wp.i18n}()},function(e,t){function r(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}e.exports=function(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e}},function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t){e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}},function(e,t,r){"use strict";r.d(t,"a",(function(){return a}));var n=r(4),i=r.n(n),o=r(3),c=r.n(o),l=[],a=function(){function e(t,r,n,o){i()(this,e),this.container=t,this.previewBtn=r,this.onPlay=o,this.play=this.play.bind(this),this.stop=this.stop.bind(this),this.on=this.on.bind(this),this.off=this.off.bind(this),this.onClick=this.onClick.bind(this),n&&!this.audio&&(this.audio=new Audio(n),this.audio.load(),this.audio.addEventListener("loadeddata",this.on),this.audio.addEventListener("pause",this.stop)),this.playing=!1,this.available=!0}return c()(e,null,[{key:"getInstance",value:function(t,r,n,i){var o=new e(t,r,n,i);return l.push(o),o}},{key:"pauseAll",value:function(e){l.forEach((function(t){t!==e&&(t.stop(!1),t.onPlay())}))}}]),c()(e,[{key:"on",value:function(){this.previewBtn.addEventListener("click",this.onClick)}},{key:"off",value:function(){this.previewBtn.removeEventListener("click",this.onClick)}},{key:"onClick",value:function(){this.playing?this.stop(!1):this.play()}},{key:"updateSpinnerDuration",value:function(e){this.container.style.setProperty("--spinner-duration",e+"s")}},{key:"updateSpinnerProgress",value:function(e){var t=56.52/(this.audio.duration/e)+", "+(56.52-56.52/(this.audio.duration/e));this.container.style.setProperty("--spinner-progress",t)}},{key:"play",value:function(){var e=this;this.constructor.pauseAll(this),this.onPlay(),!this.playing&&this.available&&(this.playing=!0,setTimeout((function(){e.playing&&e.audio&&e.audio.play().then((function(){e.updateSpinnerDuration(e.audio.duration-e.audio.currentTime),e.container.className=e.container.className.replace(" mea-show__wrapper_pause",""),e.container.className+=" mea-show__wrapper_playing"}))}),500))}},{key:"stop",value:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.playing&&(this.playing=!1,this.audio&&(this.audio.pause(),e?(this.audio.currentTime=0,this.updateSpinnerProgress(0)):(this.container.className+=" mea-show__wrapper_pause",this.updateSpinnerProgress(this.audio.currentTime)),this.container.className=this.container.className.replace(" mea-show__wrapper_playing","")))}},{key:"blink",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;this.container.className+=" mea-show__wrapper_playing",this.updateSpinnerDuration(t),setTimeout((function(){e.container.className=e.container.className.replace(" mea-show__wrapper_playing","")}),1e3*t)}}]),e}()},function(e,t){function r(t){return e.exports=r=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},r(t)}e.exports=r},function(e,t,r){var n=r(20);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&n(e,t)}},function(e,t,r){var n=r(21),i=r(5);e.exports=function(e,t){return!t||"object"!==n(t)&&"function"!=typeof t?i(e):t}},function(e,t){!function(){e.exports=this.wp.blockEditor}()},function(e,t){e.exports=function(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}},function(e,t){!function(){e.exports=this.wp.data}()},function(e,t){!function(){e.exports=this.regeneratorRuntime}()},function(e,t){!function(){e.exports=this.wp.blocks}()},function(e,t){!function(){e.exports=this.wp.compose}()},function(e,t){function r(e,t,r,n,i,o,c){try{var l=e[o](c),a=l.value}catch(e){return void r(e)}l.done?t(a):Promise.resolve(a).then(n,i)}e.exports=function(e){return function(){var t=this,n=arguments;return new Promise((function(i,o){var c=e.apply(t,n);function l(e){r(c,i,o,l,a,"next",e)}function a(e){r(c,i,o,l,a,"throw",e)}l(void 0)}))}}},function(e,t,r){var n=r(22),i=r(23),o=r(24),c=r(26);e.exports=function(e,t){return n(e)||i(e,t)||o(e,t)||c()}},function(e,t){!function(){e.exports=this.lodash}()},function(e,t,r){e.exports=r(29)},function(e,t){function r(t,n){return e.exports=r=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},r(t,n)}e.exports=r},function(e,t){function r(t){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?e.exports=r=function(e){return typeof e}:e.exports=r=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(t)}e.exports=r},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,i=!1,o=void 0;try{for(var c,l=e[Symbol.iterator]();!(n=(c=l.next()).done)&&(r.push(c.value),!t||r.length!==t);n=!0);}catch(e){i=!0,o=e}finally{try{n||null==l.return||l.return()}finally{if(i)throw o}}return r}}},function(e,t,r){var n=r(25);e.exports=function(e,t){if(e){if("string"==typeof e)return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(r):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(e,t):void 0}}},function(e,t){e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}},,,function(e,t,r){"use strict";r.r(t),r.d(t,"matchMixcloudUrl",(function(){return ne}));var n=r(0),i=r(2),o=r(14),c=r(15),l=r(12),a=r(13),s=r.n(a),u=r(16),p=r.n(u),d=r(4),h=r.n(d),v=r(3),m=r.n(v),b=r(5),f=r.n(b),w=r(8),y=r.n(w),g=r(9),O=r.n(g),j=r(7),k=r.n(j),x=r(10),_=r(1),E=(Object(n.createElement)(_.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Path,{fill:"none",d:"M0 0h24v24H0V0z"}),Object(n.createElement)(_.Path,{d:"M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3V5h18v14zM8 15c0-1.66 1.34-3 3-3 .35 0 .69.07 1 .18V6h5v2h-3v7.03c-.02 1.64-1.35 2.97-3 2.97-1.66 0-3-1.34-3-3z"})),Object(n.createElement)(_.SVG,{viewBox:"0 0 302.4 302.4",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)("path",{d:"M204.8,97.6C191.2,84,172,75.2,151.2,75.2s-40,8.4-53.6,22.4c-13.6,13.6-22.4,32.8-22.4,53.6s8.8,40,22.4,53.6 c13.6,13.6,32.8,22.4,53.6,22.4s40-8.4,53.6-22.4c13.6-13.6,22.4-32.8,22.4-53.6S218.8,111.2,204.8,97.6z"}),Object(n.createElement)("path",{d:"M151.2,51.6c5.6,0,10.4-4.8,10.4-10.4V10.4c0-5.6-4.8-10.4-10.4-10.4c-5.6,0-10.4,4.8-10.4,10.4v30.8 C140.8,46.8,145.6,51.6,151.2,51.6z"}),Object(n.createElement)("path",{d:"M236.4,80.8l22-22c4-4,4-10.4,0-14.4s-10.4-4-14.4,0l-22,22c-4,4-4,10.4,0,14.4C225.6,84.8,232,84.8,236.4,80.8z"}),Object(n.createElement)("path",{d:"M292,140.8h-30.8c-5.6,0-10.4,4.8-10.4,10.4c0,5.6,4.8,10.4,10.4,10.4H292c5.6,0,10.4-4.8,10.4-10.4 C302.4,145.6,297.6,140.8,292,140.8z"}),Object(n.createElement)("path",{d:"M236,221.6c-4-4-10.4-4-14.4,0s-4,10.4,0,14.4l22,22c4,4,10.4,4,14.4,0s4-10.4,0-14.4L236,221.6z"}),Object(n.createElement)("path",{d:"M151.2,250.8c-5.6,0-10.4,4.8-10.4,10.4V292c0,5.6,4.8,10.4,10.4,10.4c5.6,0,10.4-4.8,10.4-10.4v-30.8 C161.6,255.6,156.8,250.8,151.2,250.8z"}),Object(n.createElement)("path",{d:"M66,221.6l-22,22c-4,4-4,10.4,0,14.4s10.4,4,14.4,0l22-22c4-4,4-10.4,0-14.4C76.8,217.6,70.4,217.6,66,221.6z"}),Object(n.createElement)("path",{d:"M51.6,151.2c0-5.6-4.8-10.4-10.4-10.4H10.4c-5.6,0-10.4,4.8-10.4,10.4s4.8,10.4,10.4,10.4h30.8 C46.8,161.6,51.6,156.8,51.6,151.2z"}),Object(n.createElement)("path",{d:"M66,80.8c4,4,10.4,4,14.4,0s4-10.4,0-14.4l-22-22c-4-4-10.4-4-14.4,0s-4,10.4,0,14.4L66,80.8z"}))),C=Object(n.createElement)(_.SVG,{viewBox:"0 0 480 480",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Path,{d:"M459.782,347.328c-4.288-5.28-11.488-7.232-17.824-4.96c-17.76,6.368-37.024,9.632-57.312,9.632 c-97.056,0-176-78.976-176-176c0-58.4,28.832-112.768,77.12-145.472c5.472-3.712,8.096-10.4,6.624-16.832 S285.638,2.4,279.078,1.44C271.59,0.352,264.134,0,256.646,0c-132.352,0-240,107.648-240,240s107.648,240,240,240 c84,0,160.416-42.688,204.352-114.176C464.55,360.032,464.038,352.64,459.782,347.328z"})),P=Object(n.createElement)(_.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Rect,{height:"20",width:"20",y:"2",x:"2",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"})),S=Object(n.createElement)(_.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Rect,{height:"12",width:"22",y:"6",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"7",x2:"11",y1:"18",x1:"11",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"12",x2:"11",y1:"12",x1:"22",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"})),L=Object(n.createElement)(_.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Rect,{height:"8",width:"22",y:"8",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"9",x2:"10",y1:"16",x1:"10",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"})),A=Object(n.createElement)(_.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Rect,{height:"12",width:"22",y:"6",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"12",x2:"2",y1:"12",x1:"22",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"})),U=Object(n.createElement)(_.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Rect,{height:"12",width:"22",y:"6",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"})),W=Object(n.createElement)(_.SVG,{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Rect,{height:"8",width:"22",y:"8",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"})),R=Object(n.createElement)(_.SVG,{className:"mea-show__spinner",width:"20",height:"20",viewBox:"0 0 20 20",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Circle,{cx:"10",cy:"10",r:"9"}),Object(n.createElement)("path",{d:"M8 6l6 4.03L8 14V6z",fill:"currentColor"})),T=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t="mea-show__spinner"+(e?" mea-show__spinner_download":"");return Object(n.createElement)(_.SVG,{className:t,width:"20",height:"20",viewBox:"0 0 20 20",xmlns:"http://www.w3.org/2000/svg"},Object(n.createElement)(_.Circle,{cx:"10",cy:"10",r:"9"}),Object(n.createElement)("path",{d:"M14 8l-4.03 6L6 8h8z",fill:"currentColor"}))},B=Object(n.createElement)(_.SVG,{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-hidden":"true",focusable:"false"},Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"2",x2:"1",y1:"2",x1:"9",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"}),Object(n.createElement)(_.Rect,{height:"12",width:"22",y:"6",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"7",x2:"11",y1:"18",x1:"11",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"12",x2:"11",y1:"12",x1:"22",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"})),M=Object(n.createElement)(_.SVG,{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-hidden":"true",focusable:"false"},Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"2",x2:"8",y1:"2",x1:"16",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"}),Object(n.createElement)(_.Rect,{height:"12",width:"22",y:"6",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"7",x2:"11",y1:"18",x1:"11",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"12",x2:"11",y1:"12",x1:"22",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"})),N=Object(n.createElement)(_.SVG,{width:"24",height:"24",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-hidden":"true",focusable:"false"},Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"2",x2:"15",y1:"2",x1:"23",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"}),Object(n.createElement)(_.Rect,{height:"12",width:"22",y:"6",x:"1",fillOpacity:"0",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"7",x2:"11",y1:"18",x1:"11",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"}),Object(n.createElement)("line",{strokeLinecap:"null",strokeLinejoin:"null",y2:"12",x2:"11",y1:"12",x1:"22",fillOpacity:"null",strokeOpacity:"null",strokeWidth:"2",stroke:"currentColor",fill:"none"})),D=function(e){var t=e.cannotEmbed,r=e.url,o=e.previewInfoLink,c=e.loadPreview,l=e.onSubmit,a=e.onChangeUrl,s=e.onChangeLoadPreview;return Object(n.createElement)(_.Placeholder,{icon:Object(n.createElement)(x.BlockIcon,{icon:R,showColors:!0}),label:Object(i.__)("Mixcloud Advanced","embed-mixcloud-advanced"),className:"wp-block-embed",instructions:t?Object(i.__)("This show could not be embedded!","embed-mixcloud-advanced"):Object(i.__)("Paste a link to the show you want to display on your site.","embed-mixcloud-advanced")},Object(n.createElement)("form",{onSubmit:l},Object(n.createElement)("input",{type:"url",value:r||"",className:"components-placeholder__input"+(t?" components-placeholder__input-error":""),"aria-label":Object(i.__)("Mixcloud URL","embed-mixcloud-advanced"),placeholder:Object(i.__)("Enter URL to embed here…","embed-mixcloud-advanced"),onChange:a}),Object(n.createElement)(_.Button,{isSecondary:!0,type:"submit"},Object(i._x)("Embed","button label"))),Object(n.createElement)("form",null,Object(n.createElement)(_.CheckboxControl,{className:"components-placeholder__learn-more",label:Object(i.__)("Enable preview","embed-mixcloud-advanced"),checked:c,onChange:s})),Object(n.createElement)("div",null,Object(n.createElement)("div",null,Object(i.__)("This function can be disabled. To download preview data, a request will be made from the server to the show page.","embed-mixcloud-advanced")," ",Object(n.createElement)(_.ExternalLink,{href:o,target:"_blank"},Object(i.__)("See more","embed-mixcloud-advanced")))))},V=r(17),z=r.n(V),G=r(6);function I(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var q=function(e){y()(o,e);var t,r=(t=o,function(){var e,r=k()(t);if(I()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return O()(this,e)});function o(e){var t;return h()(this,o),(t=r.call(this,e)).hideOverlay=t.hideOverlay.bind(f()(t)),t.state={interactive:!1},t._iframe=Object(n.createRef)(),t}return m()(o,[{key:"getContainer",value:function(){return this._iframe.current.parentElement.parentElement}},{key:"getPreviewBtn",value:function(){return this.getContainer().getElementsByClassName("mea-show__preview-btn")[0]}},{key:"componentDidMount",value:function(){var e=this;this.props.previewUrl&&(this.preview=G.a.getInstance(this.getContainer(),this.getPreviewBtn(),this.props.previewUrl,(function(){return e.pause()}))),this._iframe.current.addEventListener("load",(function(t){e.updateWidgetOptions()}))}},{key:"componentWillUnmount",value:function(){this.preview&&this.preview.stop()}},{key:"componentDidUpdate",value:function(){var e=this;!this.preview&&this.props.previewUrl&&(this.preview=G.a.getInstance(this.getContainer(),this.getPreviewBtn(),this.props.previewUrl,(function(){return e.pause()}))),this.preview&&(this.props.previewUrl?this.preview.on():this.preview.off()),this.updateWidgetOptions()}},{key:"pause",value:function(){void 0!==this.widget&&void 0!==this.widget.pause&&this.widget.pause()}},{key:"blinkPreview",value:function(){this.preview&&this.preview.blink()}},{key:"updateWidgetOptions",value:function(){var e=this,t=function(){e.widget.setOption&&(e.widget.setOption("mini",e.props.mini),e.widget.setOption("light",e.props.light),e.widget.setOption("hide_artwork",e.props.hideArtwork),e.widget.setOption("hide_cover",e.props.hideCover),e.props.autoplay?e.widget.play():e.widget.pause(),e.widget.events.play.on((function(){e.preview&&(e.preview.stop(!1),e.preview.constructor.pauseAll(e.preview))})))};void 0!==window.Mixcloud.PlayerWidget&&(this.widget&&this._iframe.current.getBoundingClientRect().y===this.iframeY||(this.widget=window.Mixcloud.PlayerWidget(this._iframe.current),this.iframeY=this._iframe.current.getBoundingClientRect().y,this.widget.ready.then((function(){e._iframe.current.style.setProperty("visibility","visible"),t()}))),t())}},{key:"hideOverlay",value:function(){this.setState({interactive:!0})}},{key:"getUrl",value:function(){var e=this.props,t=e.url,r=e.updateUrl,n=e.mini,i=e.hideCover,o=e.hideArtwork,c=e.light;if(t){var l=t.split(".com"),a=z()(l,2);a[0];return t="https://www.mixcloud.com/widget/iframe/?feed="+a[1]+(r?"&mini="+(0|n)+"&hide_cover="+(0|i)+"&hide_artwork="+(0|o)+"&light="+(0|c):"")}return!1}},{key:"render",value:function(){var e=this.props,t=e.previewUrl,r=e.height,o=e.light,c=e.previewAlign,l=e.autoplay,a=this.state.interactive,s=this.getUrl();if(s){var u="mea-show__container"+(t?" mea-show__container_with_preview":""),p=" mea-show__preview-btn_"+c;return Object(n.createElement)("div",{className:u,onFocus:this.hideOverlay},t&&Object(n.createElement)("div",{className:"mea-show__preview-btn "+(o?"mea-show__preview-btn_light":"")+p},R,Object(n.createElement)("span",null,Object(i.__)("Preview","embed-mixcloud-advanced"))),Object(n.createElement)("div",{className:"mea-show__wrapper","data-preview-url":t},Object(n.createElement)("iframe",{ref:this._iframe,width:"100%",height:r,src:s,frameBorder:"0",allow:l?"autoplay":null})),!a&&Object(n.createElement)("div",{className:"block-library-embed__interactive-overlay",onMouseUp:this.hideOverlay}))}}}],[{key:"getDerivedStateFromProps",value:function(e,t){return!e.isSelected&&t.interactive?{interactive:!1}:null}}]),o}(n.Component),F=r(11),H=r.n(F);function Y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function $(e){var t=e.url,r=e.emitLoadPreview,o=e.previewEnabled,c=e.togglePreviewEnabled,l=e.previewAlign,a=e.emitChangePreviewAlign,s=e.previewLoading,u={left:{icon:B,title:Object(i.__)("Left","embed-mixcloud-advanced")},center:{icon:M,title:Object(i.__)("Center","embed-mixcloud-advanced")},right:{icon:N,title:Object(i.__)("Right","embed-mixcloud-advanced")}},p=Object.keys(u).map((function(e){return function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Y(Object(r),!0).forEach((function(t){H()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Y(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},u[e],{isActive:l===e,onClick:function(){return a(e)}})}));return t?Object(n.createElement)(n.Fragment,null,Object(n.createElement)(_.Toolbar,{controls:[{icon:R,title:Object(i.__)("Enable preview","embed-mixcloud-advanced"),onClick:c,isActive:o}]}),o&&Object(n.createElement)(_.Toolbar,{icon:u[l]?u[l].icon:u.right.icon,label:Object(i.__)("Preview button align","embed-mixcloud-advanced"),isCollapsed:!0,controls:p})):Object(n.createElement)(_.Toolbar,{icon:R,controls:[{icon:T(s),title:Object(i.__)("There is no preview data for this show. Download?","embed-mixcloud-advanced"),isActive:!1,onClick:r}]})}var J=r(18);function K(e){var t=e.value,r=e.onClick;return Object(n.createElement)(_.Toolbar,{controls:["light","dark"].map((function(e){return{icon:"light"===e?E:C,title:Object(i.__)(Object(J.capitalize)(e),"embed-mixcloud-advanced"),isActive:t===e,onClick:function(){return r(e)}}}))})}function Q(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var X={picture:{title:Object(i.__)("Large Covered Widget","embed-mixcloud-advanced"),icon:P,height:180,hideCover:!1},classic:{title:Object(i.__)("Classic Widget","embed-mixcloud-advanced"),icon:S,height:120,hideCover:!0},noArtwork:{title:Object(i.__)("Widget w/o Artwork","embed-mixcloud-advanced"),icon:A,height:120,hideArtwork:!0,hideCover:!0},covered:{title:Object(i.__)("Covered Widget","embed-mixcloud-advanced"),icon:U,height:120,hideArtwork:!0,hideCover:!1},mini:{title:Object(i.__)("Mini Widget","embed-mixcloud-advanced"),icon:L,height:60,hideCover:!0,mini:!0},minNoArtwork:{title:Object(i.__)("Mini Widget w/o Artwork","embed-mixcloud-advanced"),icon:W,height:60,hideArtwork:!0,hideCover:!0,mini:!0}};function Z(e){var t=e.selected,r=e.onSelect,i=Object.keys(X).map((function(e){return function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Q(Object(r),!0).forEach((function(t){H()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Q(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},{title:X[e].title,icon:X[e].icon},{isActive:t===e,onClick:function(){return r(e)}})}));return Object(n.createElement)(_.Toolbar,{controls:i})}function ee(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var te="https://datcoder.com/embed-mixcloud-advanced/",re=function(e){y()(o,e);var t,r=(t=o,function(){var e,r=k()(t);if(ee()){var n=k()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return O()(this,e)});function o(e){var t;return h()(this,o),(t=r.call(this,e)).setUrl=t.setUrl.bind(f()(t)),t.emitChangeUrl=t.emitChangeUrl.bind(f()(t)),t.requestPreview=t.requestPreview.bind(f()(t)),t.getWidgetProp=t.getWidgetProp.bind(f()(t)),t.updateAttribute=t.updateAttribute.bind(f()(t)),t.state={editingURL:!1,url:e.attributes.url,widgetType:e.attributes.widgetType||"classic",theme:e.attributes.theme||"dark",autoplay:e.attributes.autoplay||!1,previewUrl:e.attributes.previewUrl,previewEnabled:e.attributes.previewEnabled,previewAlign:e.attributes.previewAlign||"left",previewLoading:!1,previewLoadingError:!1,widget:void 0,loadPreview:!0},t._show=Object(n.createRef)(),t}return m()(o,[{key:"setUrl",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;e&&e.preventDefault();var t=this.state,r=t.url,n=t.previewUrl,i=t.loadPreview,o=this.props.setAttributes;o({url:r}),this.setState({editingURL:!1}),!n&&i&&this.requestPreview()}},{key:"updateAttribute",value:function(e){this.setState(e),(0,this.props.setAttributes)(e)}},{key:"emitChangeUrl",value:function(){this.setState({url:void 0,editingURL:!0,previewUrl:void 0},this.setUrl)}},{key:"getWidgetProp",value:function(e){return X[this.state.widgetType][e]}},{key:"requestPreview",value:function(){var e=this;this.setState({previewLoading:!0,previewLoadingError:!1}),p()(s.a.mark((function t(){var r;return s.a.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,fetch(window.location.origin+"/wp-json/vema/v1/preview/?show_url="+e.state.url);case 2:if(!(r=t.sent).ok){t.next=9;break}return t.next=6,r.json();case 6:return t.abrupt("return",t.sent);case 9:console.error("HTTP ERROR: "+r.status);case 10:case"end":return t.stop()}}),t)})))().then((function(t){t&&void 0!==t.preview_url?e.updateAttribute({previewUrl:t.preview_url}):void 0!==t.error?e.setState({previewLoadingError:t.error}):e.setState({previewLoadingError:Object(i.__)("Server responded that something went wrong.","embed-mixcloud-advanced")}),e.setState({previewLoading:!1})}))}},{key:"render",value:function(){var e=this,t=this.state,r=t.url,o=t.loadPreview,c=t.widgetType,l=t.previewUrl,a=t.editingURL,s=t.theme,u=t.autoplay,p=t.playing,d=t.previewEnabled,h=t.previewAlign,v=t.previewLoading,m=t.previewLoadingError,b=this.props,f=b.fetching,w=b.preview,y=b.cannotEmbed,g=b.tryAgain,O=b.isSelected;if(f)return Object(n.createElement)(n.Fragment,null,Object(n.createElement)("div",{className:"wp-block-embed is-loading"},Object(n.createElement)(_.Spinner,null),Object(n.createElement)("p",null,Object(i.__)("Embedding…","embed-mixcloud-advanced"))));if(!f&&(!w||y||a))return Object(n.createElement)(n.Fragment,null,Object(n.createElement)(D,{previewInfoLink:te+"#preview",cannotEmbed:y,url:r,loadPreview:o,tryAgain:g,onSubmit:this.setUrl,onChangeUrl:function(t){return e.setState({url:t.target.value})},onChangeLoadPreview:function(){return e.setState({loadPreview:!o})}}));var j=!!this.getWidgetProp("previewIcon")&&this.getWidgetProp("previewIcon");return Object(n.createElement)(n.Fragment,null,Object(n.createElement)(x.BlockControls,null,Object(n.createElement)(Z,{selected:c,onSelect:function(t){return e.updateAttribute({widgetType:t})}}),Object(n.createElement)(K,{value:s,onClick:function(t){return e.updateAttribute({theme:t})}}),Object(n.createElement)(_.Toolbar,{controls:[{icon:"controls-play",title:Object(i.__)("Autoplay","embed-mixcloud-advanced"),isActive:u,onClick:function(t){return e.updateAttribute({autoplay:!u})}}]}),Object(n.createElement)($,{emitLoadPreview:this.requestPreview,url:l,playing:p,previewLoading:v,previewEnabled:d,togglePreviewEnabled:function(){e.updateAttribute({previewEnabled:!e.state.previewEnabled}),e._show.current.blinkPreview()},previewAlign:h,emitChangePreviewAlign:function(t){e.updateAttribute({previewAlign:t}),e._show.current.blinkPreview()}}),Object(n.createElement)(_.Toolbar,{controls:[{icon:"edit",className:"mea_preview_control",title:Object(i.__)("Edit URL","embed-mixcloud-advanced"),onClick:this.emitChangeUrl}]})),m&&Object(n.createElement)(_.Notice,{status:"error",onRemove:function(){return e.setState({previewLoadingError:!1})}},m," ",Object(i.__)("You can","embed-mixcloud-advanced")," ",Object(n.createElement)(_.Button,{isPrimary:!0,isSmall:!0,onClick:this.requestPreview},Object(i.__)("Try again","embed-mixcloud-advanced"))," ",Object(i.__)("or","embed-mixcloud-advanced")," ",Object(n.createElement)(_.Button,{isSecondary:!0,isSmall:!0,href:te,target:"_blank"},Object(i.__)("Send report","embed-mixcloud-advanced"))),Object(n.createElement)(q,{ref:this._show,updateUrl:!1,url:r,height:X[c].height,previewUrl:!!d&&l,spinner:j,mini:this.getWidgetProp("mini"),autoplay:u,hideCover:this.getWidgetProp("hideCover"),hideArtwork:this.getWidgetProp("hideArtwork"),light:"light"===s,isSelected:O,previewAlign:h}))}}]),o}(n.Component),ne=function(e){return/^\s*(https?:\/\/(.+?\.)?mixcloud\.com\S+)\s*$/i.test(e)};Object(o.registerBlockType)("veliky/mixcloud-show",{title:Object(i.__)("Mixcloud Advanced","embed-mixcloud-advanced"),icon:R,category:"embed",supports:{align:!0},attributes:{url:{type:"string"},widgetType:{type:"string"},theme:{type:"string"},autoplay:{type:"boolean"},previewUrl:{type:"string"},previewEnabled:{type:"boolean",default:!0},previewAlign:{type:"string",default:"right"}},edit:Object(c.compose)(Object(l.withSelect)((function(e,t){var r=t.attributes.url,n=e("core"),i=n.getEmbedPreview,o=n.isPreviewEmbedFallback,c=n.isRequestingEmbedPreview,l=void 0!==r,a=l&&i(r),s=l&&o(r),u=l&&c(r),p=!!a&&void 0===a.type&&!1===a.html,d=!!a&&a.data&&404===a.data.status,h=!!a&&!p&&!d;return{preview:h?a:void 0,fetching:u,cannotEmbed:l&&(!ne(r)||!h||s)}})),Object(l.withDispatch)((function(e,t){var r=t.attributes,n=r.url,i=(r.widgetType,r.theme,r.autoplay,e("core/data"));return{tryAgain:function(){i.invalidateResolution("core","getEmbedPreview",[n])}}})))(re),save:function(e){var t=e.attributes,r=t.url,i=t.widgetType,o=t.previewUrl,c=t.theme,l=t.previewAlign;if(!r)return null;var a=X[i||"classic"];return Object(n.createElement)("figure",null,Object(n.createElement)(q,{updateUrl:!0,url:r,height:a.height,previewUrl:o,spinner:a.previewIcon,mini:a.mini,hideCover:a.hideCover,hideArtwork:a.hideArtwork,light:c&&"light"===c,previewAlign:l}))}})}]); -
embed-mixcloud-advanced/trunk/dist/block-show-editor-bundle.min.js.map
r2339869 r2371863 1 {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./frontend/block-show/edit.js","webpack:///./frontend/block-show/icons.js","webpack:///./frontend/block-show/index.js","webpack:///./frontend/block-show/placeholder.js","webpack:///./frontend/block-show/preview.js","webpack:///./frontend/block-show/show.js","webpack:///./frontend/block-show/toolbar-preview.js","webpack:///./frontend/block-show/toolbar-theme.js","webpack:///./frontend/block-show/toolbar-widget-type.js","webpack:///./node_modules/@babel/runtime/helpers/arrayLikeToArray.js","webpack:///./node_modules/@babel/runtime/helpers/arrayWithHoles.js","webpack:///./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack:///./node_modules/@babel/runtime/helpers/asyncToGenerator.js","webpack:///./node_modules/@babel/runtime/helpers/classCallCheck.js","webpack:///./node_modules/@babel/runtime/helpers/createClass.js","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js","webpack:///./node_modules/@babel/runtime/helpers/getPrototypeOf.js","webpack:///./node_modules/@babel/runtime/helpers/inherits.js","webpack:///./node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","webpack:///./node_modules/@babel/runtime/helpers/nonIterableRest.js","webpack:///./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","webpack:///./node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack:///./node_modules/@babel/runtime/helpers/slicedToArray.js","webpack:///./node_modules/@babel/runtime/helpers/typeof.js","webpack:///./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","webpack:///external {\"this\":\"regeneratorRuntime\"}","webpack:///external {\"this\":[\"wp\",\"blockEditor\"]}","webpack:///external {\"this\":[\"wp\",\"blocks\"]}","webpack:///external {\"this\":[\"wp\",\"components\"]}","webpack:///external {\"this\":[\"wp\",\"compose\"]}","webpack:///external {\"this\":[\"wp\",\"data\"]}","webpack:///external {\"this\":[\"wp\",\"element\"]}","webpack:///external {\"this\":[\"wp\",\"i18n\"]}","webpack:///external {\"this\":\"lodash\"}"],"names":[" baseLink","anchorLinks","preview","contact","Edit","props","setUrl","bind","emitChangeUrl","requestPreview","getWidgetProp","updateAttribute","state","editingURL","url","attributes","widgetType","theme","autoplay","previewUrl","previewEnabled","previewAlign","previewLoading","previewLoadingError","widget","undefined","loadPreview","_show","createRef","event","preventDefault","setAttributes","setState","payload","prop","WIDGET_TYPES","fetch","window","location","origin","response","ok","json","console","error","status","then","__","playing","fetching","cannotEmbed","tryAgain","isSelected","target","value","previewIcon","type","icon","title","isActive","onClick","current","blinkPreview","class","height","Component","embedAudioIcon","lightThemeIcon","darkThemeIcon","pictureWidgetIcon","classicWidgetIcon","miniWidgetIcon","classicWidgetHideArtworkIcon","classicWidgetCoveredIcon","miniWidgetHideArtworkIcon","downloadIcon","rotate","classes","previewAlignLeft","previewAlignCenter","previewAlignRight","matchMixcloudUrl","test","registerBlockType","category","supports","align","default","edit","compose","withSelect","select","ownProps","core","getEmbedPreview","isPreviewEmbedFallback","isRequestingEmbedPreview","definedUrl","previewIsFallback","badEmbedProvider","html","wordpressCantEmbed","data","validPreview","withDispatch","dispatch","coreData","invalidateResolution","save","mini","hideCover","hideArtwork","previewInfoLink","onSubmit","onChangeUrl","onChangeLoadPreview","_x","instances","Preview","container","previewBtn","onPlay","instance","push","forEach","listedInstance","stop","play","on","off","audio","Audio","load","addEventListener","available","removeEventListener","duration","style","setProperty","progress","dashArray","delay","constructor","pauseAll","setTimeout","updateSpinnerDuration","currentTime","className","replace","resetCurrentTime","pause","updateSpinnerProgress","Show","hideOverlay","interactive","_iframe","parentElement","getContainer","getElementsByClassName","getInstance","getPreviewBtn","updateWidgetOptions","blink","update","setOption","light","events","log","getBoundingClientRect","iframeY","ready","updateUrl","split","base","showPath","getUrl","containerClasses","btnAlignClass","nextProps","ToolbarPreview","emitLoadPreview","togglePreviewEnabled","emitChangePreviewAlign","DEFAULT_PREVIEW_BTN_ALIGN","ALIGNMENT_OPTIONS","alignControls","Object","keys","map","key","ToolbarTheme","createThumbsControl","capitalize","picture","classic","noArtwork","covered","minNoArtwork","ToolbarWidgetType","selected","onSelect","widgetTypesControls"],"mappings":"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","file":"block-show-editor-bundle.min.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n","import {BlockControls} from '@wordpress/block-editor';\nimport {Button, Notice, Spinner, Toolbar} from '@wordpress/components';\nimport {Component, createRef} from '@wordpress/element';\nimport {__} from '@wordpress/i18n';\n\nimport Placeholder from './placeholder';\nimport Show from './show';\nimport ToolbarPreview from './toolbar-preview';\nimport ToolbarTheme from './toolbar-theme';\nimport ToolbarWidgetType from './toolbar-widget-type';\nimport {WIDGET_TYPES} from './toolbar-widget-type';\n\nconst baseLink = 'https://datcoder.com/mixcloud-embed-advanced/';\nconst anchorLinks = {\n preview: baseLink + '#preview',\n contact: baseLink + '#contact',\n};\n\n/**\n * @class\n */\nexport default class Edit extends Component {\n\n /**\n * @param {{}} props\n * @constructor\n */\n constructor(props) {\n\n super(props);\n\n this.setUrl = this.setUrl.bind(this);\n this.emitChangeUrl = this.emitChangeUrl.bind(this);\n this.requestPreview = this.requestPreview.bind(this);\n this.getWidgetProp = this.getWidgetProp.bind(this);\n this.updateAttribute = this.updateAttribute.bind(this);\n\n this.state = {\n editingURL: false,\n url: props.attributes.url,\n widgetType: props.attributes.widgetType || 'classic',\n theme: props.attributes.theme || 'dark',\n autoplay: props.attributes.autoplay || false,\n previewUrl: props.attributes.previewUrl,\n previewEnabled: props.attributes.previewEnabled,\n previewAlign: props.attributes.previewAlign || 'left',\n previewLoading: false,\n previewLoadingError: false,\n widget: undefined,\n loadPreview: true,\n };\n\n this._show = createRef();\n }\n\n /**\n * @param {{}|undefined=} event\n * @this Edit\n */\n setUrl(event = undefined) {\n\n if (event) {\n event.preventDefault();\n }\n\n const {\n url,\n previewUrl,\n loadPreview\n } = this.state;\n const {setAttributes} = this.props;\n\n setAttributes({url});\n this.setState({editingURL: false});\n\n if (!previewUrl && loadPreview) {\n this.requestPreview();\n }\n }\n\n /**\n * @param {{}} payload\n * @this Edit\n */\n updateAttribute(payload) {\n\n this.setState(payload);\n\n const {setAttributes} = this.props;\n setAttributes(payload);\n }\n\n /**\n * @this Edit\n */\n emitChangeUrl() {\n\n this.setState({\n url: undefined,\n editingURL: true,\n previewUrl: undefined\n }, this.setUrl);\n }\n\n /**\n * @param {string} prop\n * @this Edit\n *\n * @return {*}\n */\n getWidgetProp(prop) {\n return WIDGET_TYPES[this.state.widgetType][prop];\n }\n\n /**\n * @this Edit\n */\n requestPreview() {\n\n this.setState({\n previewLoading: true,\n previewLoadingError: false,\n });\n\n (async () => {\n\n let response = await fetch(window.location.origin + '/wp-json/mea/v1/preview/?show_url=' + this.state.url);\n\n if (response.ok) {\n return await response.json();\n } else {\n console.error('HTTP ERROR: ' + response.status);\n }\n\n })().then((response) => {\n\n if (response && typeof response['preview_url'] !== 'undefined') {\n this.updateAttribute({previewUrl: response['preview_url']});\n } else {\n\n if (typeof response['error'] !== 'undefined') {\n this.setState({previewLoadingError: response['error']});\n } else {\n this.setState({previewLoadingError: __('Server responded that something went wrong.')});\n }\n }\n\n this.setState({previewLoading: false});\n });\n }\n\n /**\n * @this Edit\n * @return {*}\n */\n render() {\n\n const {\n url,\n loadPreview,\n widgetType,\n previewUrl,\n editingURL,\n theme,\n autoplay,\n playing,\n previewEnabled,\n previewAlign,\n previewLoading,\n previewLoadingError\n } = this.state;\n\n const {\n fetching,\n preview,\n cannotEmbed,\n tryAgain,\n isSelected,\n } = this.props;\n\n if (fetching) {\n\n return <>\n <div className=\"wp-block-embed is-loading\">\n <Spinner/>\n <p>{__('Embedding…')}</p>\n </div>\n </>;\n }\n\n if (!fetching && (!preview || cannotEmbed || editingURL)) {\n return <>\n <Placeholder\n previewInfoLink={anchorLinks.preview}\n cannotEmbed={cannotEmbed}\n url={url}\n loadPreview={loadPreview}\n tryAgain={tryAgain}\n onSubmit={this.setUrl}\n onChangeUrl={(event) => this.setState({url: event.target.value})}\n onChangeLoadPreview={() => this.setState({loadPreview: !loadPreview})}\n />\n </>;\n }\n\n const previewIcon = this.getWidgetProp('previewIcon') ? this.getWidgetProp('previewIcon') : false;\n\n return <>\n <BlockControls>\n\n <ToolbarWidgetType\n selected={widgetType}\n onSelect={type => this.updateAttribute({widgetType: type})}\n />\n\n <ToolbarTheme\n value={theme}\n onClick={value => this.updateAttribute({theme: value})}\n />\n\n <Toolbar controls={[\n {\n icon: 'controls-play',\n title: __('Autoplay'),\n isActive: autoplay,\n onClick: value => this.updateAttribute({autoplay: !autoplay}),\n },\n ]}/>\n\n <ToolbarPreview\n emitLoadPreview={this.requestPreview}\n url={previewUrl}\n playing={playing}\n previewLoading={previewLoading}\n previewEnabled={previewEnabled}\n togglePreviewEnabled={() => {\n this.updateAttribute({previewEnabled: !this.state.previewEnabled});\n this._show.current.blinkPreview();\n }}\n previewAlign={previewAlign}\n emitChangePreviewAlign={value => {\n this.updateAttribute({previewAlign: value});\n this._show.current.blinkPreview();\n }}\n />\n\n <Toolbar controls={[{\n icon: 'edit',\n class: 'mea_preview_control',\n title: __('Edit URL'),\n onClick: this.emitChangeUrl,\n }]}/>\n\n </BlockControls>\n\n {previewLoadingError && (\n <Notice status=\"error\" onRemove={() => this.setState({previewLoadingError: false})}>\n {previewLoadingError} {__('You can')}\n <Button isPrimary isSmall onClick={this.requestPreview}>{__('Try again')}</Button> {__('or')}\n <Button isSecondary isSmall href={anchorLinks.contact} target=\"_blank\">{__('Send report')}</Button>\n </Notice>\n )}\n\n <Show\n ref={this._show}\n updateUrl={false}\n url={url}\n height={WIDGET_TYPES[widgetType].height}\n previewUrl={previewEnabled ? previewUrl : false}\n spinner={previewIcon}\n mini={this.getWidgetProp('mini')}\n autoplay={autoplay}\n hideCover={this.getWidgetProp('hideCover')}\n hideArtwork={this.getWidgetProp('hideArtwork')}\n light={theme === 'light'}\n isSelected={isSelected}\n previewAlign={previewAlign}\n />\n </>;\n }\n};\n","import {Path, Rect, Circle, Polygon, SVG} from '@wordpress/components';\n\nexport const embedAudioIcon = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <Path fill=\"none\" d=\"M0 0h24v24H0V0z\"/>\n <Path d=\"M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3V5h18v14zM8 15c0-1.66 1.34-3 3-3 .35 0 .69.07 1 .18V6h5v2h-3v7.03c-.02 1.64-1.35 2.97-3 2.97-1.66 0-3-1.34-3-3z\"/>\n </SVG>\n);\n\nexport const lightThemeIcon = (\n <SVG viewBox=\"0 0 302.4 302.4\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M204.8,97.6C191.2,84,172,75.2,151.2,75.2s-40,8.4-53.6,22.4c-13.6,13.6-22.4,32.8-22.4,53.6s8.8,40,22.4,53.6\n\t\t\t\tc13.6,13.6,32.8,22.4,53.6,22.4s40-8.4,53.6-22.4c13.6-13.6,22.4-32.8,22.4-53.6S218.8,111.2,204.8,97.6z\"/>\n <path d=\"M151.2,51.6c5.6,0,10.4-4.8,10.4-10.4V10.4c0-5.6-4.8-10.4-10.4-10.4c-5.6,0-10.4,4.8-10.4,10.4v30.8\n\t\t\t\tC140.8,46.8,145.6,51.6,151.2,51.6z\"/>\n <path d=\"M236.4,80.8l22-22c4-4,4-10.4,0-14.4s-10.4-4-14.4,0l-22,22c-4,4-4,10.4,0,14.4C225.6,84.8,232,84.8,236.4,80.8z\"/>\n <path d=\"M292,140.8h-30.8c-5.6,0-10.4,4.8-10.4,10.4c0,5.6,4.8,10.4,10.4,10.4H292c5.6,0,10.4-4.8,10.4-10.4\n\t\t\t\tC302.4,145.6,297.6,140.8,292,140.8z\"/>\n <path d=\"M236,221.6c-4-4-10.4-4-14.4,0s-4,10.4,0,14.4l22,22c4,4,10.4,4,14.4,0s4-10.4,0-14.4L236,221.6z\"/>\n <path d=\"M151.2,250.8c-5.6,0-10.4,4.8-10.4,10.4V292c0,5.6,4.8,10.4,10.4,10.4c5.6,0,10.4-4.8,10.4-10.4v-30.8\n\t\t\t\tC161.6,255.6,156.8,250.8,151.2,250.8z\"/>\n <path d=\"M66,221.6l-22,22c-4,4-4,10.4,0,14.4s10.4,4,14.4,0l22-22c4-4,4-10.4,0-14.4C76.8,217.6,70.4,217.6,66,221.6z\"/>\n <path d=\"M51.6,151.2c0-5.6-4.8-10.4-10.4-10.4H10.4c-5.6,0-10.4,4.8-10.4,10.4s4.8,10.4,10.4,10.4h30.8\n\t\t\t\tC46.8,161.6,51.6,156.8,51.6,151.2z\"/>\n <path d=\"M66,80.8c4,4,10.4,4,14.4,0s4-10.4,0-14.4l-22-22c-4-4-10.4-4-14.4,0s-4,10.4,0,14.4L66,80.8z\"/>\n </SVG>\n);\n\nexport const darkThemeIcon = (\n <SVG viewBox=\"0 0 480 480\" xmlns=\"http://www.w3.org/2000/svg\">\n <Path d=\"M459.782,347.328c-4.288-5.28-11.488-7.232-17.824-4.96c-17.76,6.368-37.024,9.632-57.312,9.632\n\t\t\tc-97.056,0-176-78.976-176-176c0-58.4,28.832-112.768,77.12-145.472c5.472-3.712,8.096-10.4,6.624-16.832\n\t\t\tS285.638,2.4,279.078,1.44C271.59,0.352,264.134,0,256.646,0c-132.352,0-240,107.648-240,240s107.648,240,240,240\n\t\t\tc84,0,160.416-42.688,204.352-114.176C464.55,360.032,464.038,352.64,459.782,347.328z\"/>\n </SVG>\n);\n\nexport const pictureWidgetIcon = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <Rect height=\"20\" width=\"20\" y=\"2\" x=\"2\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n </SVG>\n);\n\nexport const classicWidgetIcon = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <Rect height=\"12\" width=\"22\" y=\"6\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"7\" x2=\"11\" y1=\"18\" x1=\"11\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"12\" x2=\"11\" y1=\"12\" x1=\"22\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n </SVG>\n);\n\nexport const miniWidgetIcon = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <Rect height=\"8\" width=\"22\" y=\"8\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"9\" x2=\"10\" y1=\"16\" x1=\"10\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n </SVG>\n);\n\nexport const classicWidgetHideArtworkIcon = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <Rect height=\"12\" width=\"22\" y=\"6\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"12\" x2=\"2\" y1=\"12\" x1=\"22\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n </SVG>\n);\n\nexport const classicWidgetCoveredIcon = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <Rect height=\"12\" width=\"22\" y=\"6\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n </SVG>\n);\n\nexport const miniWidgetHideArtworkIcon = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <Rect height=\"8\" width=\"22\" y=\"8\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n </SVG>\n);\n\nexport const previewIcon = (\n <SVG className='mea-show__spinner' width=\"20\" height='20' viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\">\n <Circle cx=\"10\" cy=\"10\" r=\"9\"/>\n <path d=\"M8 6l6 4.03L8 14V6z\" fill=\"currentColor\"/>\n </SVG>\n);\n\nexport const downloadIcon = (rotate = false) => {\n\n const classes = 'mea-show__spinner' + (rotate ? ' mea-show__spinner_download' : '');\n\n return <SVG className={classes} width=\"20\" height='20' viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\">\n <Circle cx=\"10\" cy=\"10\" r=\"9\"/>\n <path d=\"M14 8l-4.03 6L6 8h8z\" fill=\"currentColor\"/>\n </SVG>\n};\n\nexport const previewAlignLeft = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"2\" x2=\"1\" y1=\"2\" x1=\"9\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n <Rect height=\"12\" width=\"22\" y=\"6\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"7\" x2=\"11\" y1=\"18\" x1=\"11\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"12\" x2=\"11\" y1=\"12\" x1=\"22\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n </SVG>\n);\n\nexport const previewAlignCenter = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"2\" x2=\"8\" y1=\"2\" x1=\"16\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n <Rect height=\"12\" width=\"22\" y=\"6\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"7\" x2=\"11\" y1=\"18\" x1=\"11\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"12\" x2=\"11\" y1=\"12\" x1=\"22\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n </SVG>\n);\n\nexport const previewAlignRight = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"2\" x2=\"15\" y1=\"2\" x1=\"23\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n <Rect height=\"12\" width=\"22\" y=\"6\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"7\" x2=\"11\" y1=\"18\" x1=\"11\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"12\" x2=\"11\" y1=\"12\" x1=\"22\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n </SVG>\n);\n\n","import {__} from '@wordpress/i18n';\nimport {registerBlockType} from '@wordpress/blocks';\nimport {compose} from '@wordpress/compose';\nimport {withSelect, withDispatch} from '@wordpress/data';\n\nimport Edit from './edit';\nimport Show from './show';\nimport {previewIcon} from './icons';\nimport {WIDGET_TYPES} from './toolbar-widget-type';\n\n/**\n * @param {String} url\n *\n * @return {Boolean}\n */\nexport const matchMixcloudUrl = url => /^\\s*(https?:\\/\\/(.+?\\.)?mixcloud\\.com\\S+)\\s*$/i.test(url);\n\n/**\n * Back end Gutenberg entry point\n */\nregisterBlockType('veliky/mixcloud-show', {\n\n title: __('Mixcloud Advanced', 'embed-mixcloud-advanced'),\n icon: previewIcon,\n category: 'embed',\n supports: {\n align: true,\n },\n attributes: {\n url: {\n type: 'string',\n },\n widgetType: {\n type: 'string',\n },\n theme: {\n type: 'string',\n },\n autoplay: {\n type: 'boolean',\n },\n previewUrl: {\n type: 'string',\n },\n previewEnabled: {\n type: 'boolean',\n default: true,\n },\n previewAlign: {\n type: 'string',\n default: 'right',\n }\n },\n\n /**\n * Composition of the WP embedding algorithm with the block editing component\n *\n * @see {Edit}\n */\n edit: compose(\n withSelect((select, ownProps) => {\n\n const { url } = ownProps.attributes;\n const core = select('core');\n const {\n getEmbedPreview,\n isPreviewEmbedFallback,\n isRequestingEmbedPreview,\n } = core;\n\n const definedUrl = undefined !== url;\n const preview = definedUrl && getEmbedPreview(url);\n\n const previewIsFallback = definedUrl && isPreviewEmbedFallback(url);\n const fetching = definedUrl && isRequestingEmbedPreview(url);\n\n // The external oEmbed provider does not exist. We got no type info and no html.\n const badEmbedProvider = !!preview && undefined === preview.type && false === preview.html;\n\n // Some WordPress URLs that can't be embedded will cause the API to return\n // a valid JSON response with no HTML and `data.status` set to 404, rather\n // than generating a fallback response as other embeds do.\n const wordpressCantEmbed = !!preview && preview.data && preview.data.status === 404;\n\n const validPreview = !!preview && !badEmbedProvider && !wordpressCantEmbed;\n const cannotEmbed = definedUrl && (!matchMixcloudUrl(url) || !validPreview || previewIsFallback);\n\n return {\n preview: validPreview ? preview : undefined,\n fetching,\n cannotEmbed,\n };\n\n }),\n\n withDispatch((dispatch, ownProps) => {\n\n const { url, widgetType, theme, autoplay } = ownProps.attributes;\n const coreData = dispatch('core/data');\n\n const tryAgain = () => {\n coreData.invalidateResolution('core', 'getEmbedPreview', [\n url\n ]);\n };\n return { tryAgain };\n\n })\n )(Edit),\n\n /**\n * Renders a block for publication\n *\n * @param {{}} attributes\n *\n * @return {null|*}\n */\n save ({ attributes }) {\n\n const { url, widgetType, previewUrl, theme, previewAlign } = attributes;\n\n if (!url) {\n return null;\n }\n\n const widget = WIDGET_TYPES[widgetType || 'classic'];\n\n return (\n <figure>\n <Show\n updateUrl={true}\n url={url}\n height={widget.height}\n previewUrl={previewUrl}\n spinner={widget.previewIcon}\n mini={widget.mini}\n hideCover={widget.hideCover}\n hideArtwork={widget.hideArtwork}\n light={theme && theme === 'light'}\n previewAlign={previewAlign}\n />\n </figure>\n );\n },\n});\n","import {BlockIcon} from '@wordpress/block-editor';\nimport {Button, Placeholder, CheckboxControl, ExternalLink, Dashicon} from '@wordpress/components';\nimport {__, _x} from '@wordpress/i18n';\nimport {previewIcon} from './icons';\n\nexport default (props) => {\n\n const {\n cannotEmbed,\n url,\n previewInfoLink,\n loadPreview,\n onSubmit,\n onChangeUrl,\n onChangeLoadPreview,\n } = props;\n\n return (\n <Placeholder\n icon={<BlockIcon icon={previewIcon} showColors/>}\n label={__('Mixcloud Embed Advanced')}\n className=\"wp-block-embed\"\n instructions={cannotEmbed ? __('This content could not be embedded!') : __('Paste a link to the content you want to display on your site.')}\n >\n\n <form onSubmit={onSubmit}>\n <input\n type=\"url\"\n value={url || ''}\n className={'components-placeholder__input' + (cannotEmbed ? ' components-placeholder__input-error' : '')}\n aria-label={__('Mixcloud URL')}\n placeholder={__('Enter URL to embed here…')}\n onChange={onChangeUrl}\n />\n <Button isSecondary type=\"submit\">\n {_x('Embed', 'button label')}\n </Button>\n </form>\n\n <form>\n <CheckboxControl className='components-placeholder__learn-more'\n label={__('Enable preview')}\n checked={loadPreview}\n onChange={onChangeLoadPreview}/>\n </form>\n <div>\n <div>\n {__('This function can be disabled. To download preview data, a request will be made from the server to the show page.')}\n <ExternalLink href={previewInfoLink} target='_blank'>See more</ExternalLink>\n </div>\n </div>\n\n </Placeholder>\n );\n};\n","/**\n * @type {Preview[]}\n */\nconst instances = [];\n\n/**\n * Presents hover preview functionality\n *\n * @class\n */\nexport default class Preview {\n\n /**\n * @param {Element} container\n * @param {Element} previewBtn\n * @param {String} previewUrl\n * @param {function} onPlay\n *\n * @constructor\n */\n static getInstance(container, previewBtn, previewUrl, onPlay) {\n\n const instance = new Preview(container, previewBtn, previewUrl, onPlay);\n instances.push(instance);\n\n return instance;\n }\n\n /**\n * @param {Preview} instance\n */\n static pauseAll(instance) {\n\n instances.forEach(listedInstance => {\n if (listedInstance !== instance) {\n listedInstance.stop(false);\n listedInstance.onPlay();\n }\n });\n }\n\n /**\n * @param {Element} container\n * @param {Element} previewBtn\n * @param {String} previewUrl\n * @param {function} onPlay\n *\n * @constructor\n */\n constructor(container, previewBtn, previewUrl, onPlay) {\n\n this.container = container;\n this.previewBtn = previewBtn;\n this.onPlay = onPlay;\n\n this.play = this.play.bind(this);\n this.stop = this.stop.bind(this);\n this.on = this.on.bind(this);\n this.off = this.off.bind(this);\n this.onClick = this.onClick.bind(this);\n\n if (previewUrl && !this.audio) {\n\n /**\n * Init audio component and setting hover play events\n *\n * @type {HTMLAudioElement}\n */\n\n this.audio = new Audio(previewUrl);\n this.audio.load();\n this.audio.addEventListener('loadeddata', this.on);\n this.audio.addEventListener('pause', this.stop);\n }\n\n\n this.playing = false;\n this.available = true;\n }\n\n /**\n * @this Preview\n */\n on() {\n this.previewBtn.addEventListener('click', this.onClick);\n }\n\n /**\n * Turns off events\n *\n * @this Preview\n */\n off() {\n this.previewBtn.removeEventListener('click', this.onClick);\n }\n\n /**\n * @this Preview\n */\n onClick() {\n\n if (this.playing) {\n this.stop(false);\n } else {\n this.play();\n }\n }\n\n /**\n * @param {number} duration\n */\n updateSpinnerDuration(duration) {\n this.container.style.setProperty('--spinner-duration', duration + 's');\n }\n\n /**\n * @param {number} progress\n */\n updateSpinnerProgress(progress) {\n\n // let dashArray = (56 / (this.audio.duration / progress)).toString() + ', ' + 56 - (56 / (this.audio.duration / progress)).toString();\n\n let dashArray = 56.52 / (this.audio.duration / progress) + ', ' + (56.52 - 56.52 / (this.audio.duration / progress));\n this.container.style.setProperty('--spinner-progress', dashArray);\n }\n\n /**\n * Plays with a delay\n *\n * @this Preview\n */\n play() {\n\n const delay = 0.5;\n this.constructor.pauseAll(this);\n this.onPlay();\n\n if (!this.playing && this.available) {\n\n this.playing = true;\n\n setTimeout(() => {\n\n if (this.playing && this.audio) {\n\n this.audio.play().then(() => {\n this.updateSpinnerDuration(this.audio.duration - this.audio.currentTime);\n this.container.className = this.container.className.replace(' mea-show__wrapper_pause', '');\n this.container.className += ' mea-show__wrapper_playing';\n });\n }\n\n }, delay * 1000);\n }\n }\n\n /**\n * @param {boolean} resetCurrentTime\n *\n * @this Preview\n */\n stop(resetCurrentTime = true) {\n\n if (this.playing) {\n\n this.playing = false;\n\n if (this.audio) {\n this.audio.pause();\n\n if (resetCurrentTime) {\n this.audio.currentTime = 0;\n } else {\n this.container.className += ' mea-show__wrapper_pause';\n this.updateSpinnerProgress(this.audio.currentTime);\n }\n\n this.container.className = this.container.className.replace(' mea-show__wrapper_playing', '');\n }\n }\n }\n\n /**\n * Shows previewBtn for a while\n *\n * @param {Number=} duration Visibility duration in seconds\n * @this Preview\n */\n blink(duration = 1) {\n\n this.container.className += ' mea-show__wrapper_playing';\n this.updateSpinnerDuration(duration);\n\n setTimeout(() => {\n this.container.className = this.container.className.replace(' mea-show__wrapper_playing', '');\n }, duration * 1000);\n\n }\n}\n","import {Component, createRef} from '@wordpress/element';\nimport {__} from '@wordpress/i18n';\nimport Preview from './preview';\nimport {previewIcon} from \"./icons\";\n\n/**\n * @class\n */\nexport default class Show extends Component {\n\n /**\n * @param {{}} props\n * @constructor\n */\n constructor(props) {\n\n super(props);\n\n this.hideOverlay = this.hideOverlay.bind(this);\n\n this.state = {\n interactive: false,\n };\n\n this._iframe = createRef();\n }\n\n getContainer () {\n return this._iframe.current.parentElement.parentElement;\n }\n\n getPreviewBtn () {\n return this.getContainer().getElementsByClassName('mea-show__preview-btn')[0];\n }\n\n /**\n * @this Show\n */\n componentDidMount() {\n\n if (this.props.previewUrl) {\n this.preview = Preview.getInstance(this.getContainer(), this.getPreviewBtn(), this.props.previewUrl, () => this.pause());\n }\n\n this._iframe.current.addEventListener('load', event => {\n this.updateWidgetOptions();\n });\n }\n\n /**\n * Automatically stop playing preview when a block has been deleted\n *\n * @this Show\n */\n componentWillUnmount() {\n\n if (this.preview) {\n this.preview.stop();\n }\n }\n\n /**\n * @this Show\n */\n componentDidUpdate() {\n\n if (!this.preview && this.props.previewUrl) {\n this.preview = Preview.getInstance(this.getContainer(), this.getPreviewBtn(), this.props.previewUrl, () => this.pause());\n }\n\n if (this.preview) {\n if (!this.props.previewUrl) {\n this.preview.off();\n } else {\n this.preview.on();\n }\n }\n\n this.updateWidgetOptions();\n }\n\n /**\n * @this Show\n */\n pause () {\n if (typeof this.widget !== 'undefined' && typeof this.widget.pause !== 'undefined') {\n this.widget.pause()\n }\n }\n\n /**\n * @this Show\n */\n blinkPreview() {\n\n if (this.preview) {\n this.preview.blink();\n }\n }\n\n /**\n * @this Show\n */\n updateWidgetOptions() {\n\n const update = () => {\n\n if (this.widget.setOption) {\n\n this.widget.setOption('mini', this.props.mini);\n this.widget.setOption('light', this.props.light);\n this.widget.setOption('hide_artwork', this.props.hideArtwork);\n this.widget.setOption('hide_cover', this.props.hideCover);\n\n if (this.props.autoplay) {\n this.widget.play();\n } else {\n this.widget.pause();\n }\n\n // Avoiding playing preview and show at the same time\n\n this.widget.events.play.on(() => {\n if (this.preview) {\n this.preview.stop(false);\n this.preview.constructor.pauseAll(this.preview);\n }\n });\n }\n\n };\n\n console.log(window['Mixcloud']['PlayerWidget']);\n\n if (typeof window['Mixcloud']['PlayerWidget'] !== 'undefined') {\n\n if (!this.widget || this._iframe.current.getBoundingClientRect()['y'] !== this.iframeY) {\n\n this.widget = window['Mixcloud']['PlayerWidget'](this._iframe.current);\n this.iframeY = this._iframe.current.getBoundingClientRect()['y'];\n\n this.widget.ready.then(() => {\n\n this._iframe.current.style.setProperty('visibility', 'visible');\n update();\n\n });\n }\n\n update();\n }\n }\n\n /**\n * @param {{}} nextProps\n * @param {{}} state\n *\n * @static\n * @see @wordpress/block-library/src/embed/embed-preview.js:35\n *\n * @return {null|{interactive: Boolean}}\n */\n static getDerivedStateFromProps(nextProps, state) {\n\n if (!nextProps.isSelected && state.interactive) {\n\n // We only want to change this when the block is not selected, because changing it when\n // the block becomes selected makes the overlap disappear too early. Hiding the overlay\n // happens on mouseup when the overlay is clicked.\n return {interactive: false};\n }\n\n return null;\n }\n\n /**\n * @this Show\n * @see @wordpress/block-library/src/embed/embed-preview.js:46\n */\n hideOverlay() {\n\n // This is called onMouseUp on the overlay. We can't respond to the `isSelected` prop\n // changing, because that happens on mouse down, and the overlay immediately disappears,\n // and the mouse event can end up in the preview content. We can't use onClick on\n // the overlay to hide it either, because then the editor misses the mouseup event, and\n // thinks we're multi-selecting blocks.\n this.setState({interactive: true});\n }\n\n /**\n * @this Show\n * @return {String|Boolean}\n */\n getUrl() {\n\n let {\n url,\n updateUrl,\n mini,\n hideCover,\n hideArtwork,\n light,\n } = this.props;\n\n if (url) {\n\n let [base, showPath] = url.split('.com');\n url = 'https://www.mixcloud.com/widget/iframe/?feed=' + showPath + (\n updateUrl ? (\n '&mini=' + (mini | 0) +\n '&hide_cover=' + (hideCover | 0) +\n '&hide_artwork=' + (hideArtwork | 0) +\n '&light=' + (light | 0)\n ) : '');\n\n return url;\n }\n\n return false;\n }\n\n /**\n * @this Show\n */\n render() {\n\n let {\n previewUrl,\n height,\n light,\n previewAlign,\n autoplay,\n } = this.props;\n\n const {interactive} = this.state;\n const url = this.getUrl();\n\n if (url) {\n\n const containerClasses = 'mea-show__container' + (previewUrl ? ' mea-show__container_with_preview' : '');\n const btnAlignClass = ' mea-show__preview-btn_' + previewAlign;\n\n return (\n <div\n className={containerClasses}\n onFocus={this.hideOverlay}\n >\n {previewUrl && (\n <div\n className={'mea-show__preview-btn ' + (light ? 'mea-show__preview-btn_light' : '') + btnAlignClass}>\n {previewIcon}\n <span>{__('Preview')}</span>\n </div>\n )}\n <div\n className='mea-show__wrapper'\n data-preview-url={previewUrl}\n >\n <iframe ref={this._iframe} width=\"100%\" height={height} src={url} frameBorder=\"0\" allow={autoplay ? 'autoplay' : null}/>\n </div>\n\n {!interactive && (\n <div\n className=\"block-library-embed__interactive-overlay\"\n onMouseUp={this.hideOverlay}\n />\n )}\n </div>\n );\n }\n }\n}\n","import {Toolbar} from '@wordpress/components';\nimport {__} from '@wordpress/i18n';\nimport {previewIcon, downloadIcon, previewAlignLeft, previewAlignCenter, previewAlignRight} from './icons';\n\n/**\n * @param {{}} props\n * @return {*}\n */\nexport default function ToolbarPreview (props) {\n\n const {\n url,\n emitLoadPreview,\n previewEnabled,\n togglePreviewEnabled,\n previewAlign,\n emitChangePreviewAlign,\n previewLoading\n } = props;\n\n const DEFAULT_PREVIEW_BTN_ALIGN = 'right';\n const ALIGNMENT_OPTIONS = {\n 'left': {\n icon: previewAlignLeft,\n title: __('Left'),\n },\n 'center': {\n icon: previewAlignCenter,\n title: __('Center'),\n },\n 'right': {\n icon: previewAlignRight,\n title: __('Right'),\n },\n };\n\n const alignControls = Object.keys(ALIGNMENT_OPTIONS).map(key => {\n return {\n ...ALIGNMENT_OPTIONS[key],\n isActive: previewAlign === key,\n onClick: () => emitChangePreviewAlign(key),\n };\n });\n\n if (url) {\n\n return <>\n <Toolbar\n controls={[\n {\n icon: previewIcon,\n title: __('Enable preview'),\n onClick: togglePreviewEnabled,\n isActive: previewEnabled,\n },\n ]}\n />\n {previewEnabled && <Toolbar\n icon={ALIGNMENT_OPTIONS[previewAlign] ? ALIGNMENT_OPTIONS[previewAlign].icon : ALIGNMENT_OPTIONS[DEFAULT_PREVIEW_BTN_ALIGN].icon}\n label={__('Preview button align')}\n isCollapsed={true}\n controls={alignControls}\n />}\n </>;\n }\n\n return <Toolbar\n icon={previewIcon}\n controls={[\n {\n icon: downloadIcon(previewLoading),\n title: __('There is no preview data for this show. Download?'),\n isActive: false,\n onClick: emitLoadPreview\n }\n ]}\n />;\n}\n","import {capitalize} from 'lodash';\nimport {Toolbar} from '@wordpress/components';\nimport {lightThemeIcon, darkThemeIcon} from './icons';\n\n/**\n * @param {{}} props\n * @return {*}\n */\nexport default function ToolbarTheme (props) {\n\n const { value, onClick } = props;\n\n function createThumbsControl (theme) {\n return {\n icon: theme === 'light' ? lightThemeIcon : darkThemeIcon,\n title: capitalize(theme),\n isActive: value === theme,\n onClick: () => onClick(theme),\n };\n }\n\n return <Toolbar controls={['light', 'dark'].map(createThumbsControl)}/>;\n}\n","import {__} from '@wordpress/i18n';\nimport {Toolbar} from '@wordpress/components';\nimport {\n classicWidgetHideArtworkIcon,\n classicWidgetIcon,\n miniWidgetHideArtworkIcon,\n classicWidgetCoveredIcon,\n miniWidgetIcon,\n pictureWidgetIcon\n} from './icons';\n\nexport const WIDGET_TYPES = {\n picture: {\n title: __('Picture Widget'),\n icon: pictureWidgetIcon,\n height: 180,\n hideCover: false,\n },\n classic: {\n title: __('Classic Widget'),\n icon: classicWidgetIcon,\n height: 120,\n hideCover: true,\n },\n noArtwork: {\n title: __('Widget w/o Artwork'),\n icon: classicWidgetHideArtworkIcon,\n height: 120,\n hideArtwork: true,\n hideCover: true,\n },\n covered: {\n title: __('Covered Widget'),\n icon: classicWidgetCoveredIcon,\n height: 120,\n hideArtwork: true,\n hideCover: false,\n },\n mini: {\n title: __('Mini Widget'),\n icon: miniWidgetIcon,\n height: 60,\n hideCover: true,\n mini: true,\n },\n minNoArtwork: {\n title: __('Mini Widget w/o Artwork'),\n icon: miniWidgetHideArtworkIcon,\n height: 60,\n hideArtwork: true,\n hideCover: true,\n mini: true,\n },\n};\n\n/**\n * @param {{}} props\n * @return {*}\n */\nexport default function ToolbarWidgetType (props) {\n\n const { selected, onSelect } = props;\n const widgetTypesControls = Object.keys(WIDGET_TYPES).map((key) => {\n return {\n ...WIDGET_TYPES[key],\n isActive: selected === key,\n onClick: () => onSelect(key),\n };\n });\n\n return (\n <Toolbar controls={widgetTypesControls}/>\n );\n}\n","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\nmodule.exports = _arrayLikeToArray;","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nmodule.exports = _arrayWithHoles;","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized;","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}\n\nmodule.exports = _asyncToGenerator;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nmodule.exports = _classCallCheck;","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nmodule.exports = _createClass;","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty;","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nmodule.exports = _getPrototypeOf;","var setPrototypeOf = require(\"./setPrototypeOf\");\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inherits;","function _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nmodule.exports = _iterableToArrayLimit;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableRest;","var _typeof = require(\"../helpers/typeof\");\n\nvar assertThisInitialized = require(\"./assertThisInitialized\");\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return assertThisInitialized(self);\n}\n\nmodule.exports = _possibleConstructorReturn;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nmodule.exports = _setPrototypeOf;","var arrayWithHoles = require(\"./arrayWithHoles\");\n\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray\");\n\nvar nonIterableRest = require(\"./nonIterableRest\");\n\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\n\nmodule.exports = _slicedToArray;","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n module.exports = _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n module.exports = _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nmodule.exports = _typeof;","var arrayLikeToArray = require(\"./arrayLikeToArray\");\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(n);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\n\nmodule.exports = _unsupportedIterableToArray;","(function() { module.exports = this[\"regeneratorRuntime\"]; }());","(function() { module.exports = this[\"wp\"][\"blockEditor\"]; }());","(function() { module.exports = this[\"wp\"][\"blocks\"]; }());","(function() { module.exports = this[\"wp\"][\"components\"]; }());","(function() { module.exports = this[\"wp\"][\"compose\"]; }());","(function() { module.exports = this[\"wp\"][\"data\"]; }());","(function() { module.exports = this[\"wp\"][\"element\"]; }());","(function() { module.exports = this[\"wp\"][\"i18n\"]; }());","(function() { module.exports = this[\"lodash\"]; }());"],"sourceRoot":""}1 {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./frontend/block-show/edit.js","webpack:///./frontend/block-show/icons.js","webpack:///./frontend/block-show/index.js","webpack:///./frontend/block-show/placeholder.js","webpack:///./frontend/block-show/preview.js","webpack:///./frontend/block-show/show.js","webpack:///./frontend/block-show/toolbar-preview.js","webpack:///./frontend/block-show/toolbar-theme.js","webpack:///./frontend/block-show/toolbar-widget-type.js","webpack:///./node_modules/@babel/runtime/helpers/arrayLikeToArray.js","webpack:///./node_modules/@babel/runtime/helpers/arrayWithHoles.js","webpack:///./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack:///./node_modules/@babel/runtime/helpers/asyncToGenerator.js","webpack:///./node_modules/@babel/runtime/helpers/classCallCheck.js","webpack:///./node_modules/@babel/runtime/helpers/createClass.js","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js","webpack:///./node_modules/@babel/runtime/helpers/getPrototypeOf.js","webpack:///./node_modules/@babel/runtime/helpers/inherits.js","webpack:///./node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","webpack:///./node_modules/@babel/runtime/helpers/nonIterableRest.js","webpack:///./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","webpack:///./node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack:///./node_modules/@babel/runtime/helpers/slicedToArray.js","webpack:///./node_modules/@babel/runtime/helpers/typeof.js","webpack:///./node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","webpack:///external {\"this\":\"regeneratorRuntime\"}","webpack:///external {\"this\":[\"wp\",\"blockEditor\"]}","webpack:///external {\"this\":[\"wp\",\"blocks\"]}","webpack:///external {\"this\":[\"wp\",\"components\"]}","webpack:///external {\"this\":[\"wp\",\"compose\"]}","webpack:///external {\"this\":[\"wp\",\"data\"]}","webpack:///external {\"this\":[\"wp\",\"element\"]}","webpack:///external {\"this\":[\"wp\",\"i18n\"]}","webpack:///external {\"this\":\"lodash\"}"],"names":["pluginUrl","Edit","props","setUrl","bind","emitChangeUrl","requestPreview","getWidgetProp","updateAttribute","state","editingURL","url","attributes","widgetType","theme","autoplay","previewUrl","previewEnabled","previewAlign","previewLoading","previewLoadingError","widget","undefined","loadPreview","_show","createRef","event","preventDefault","setAttributes","setState","payload","prop","WIDGET_TYPES","fetch","window","location","origin","response","ok","json","console","error","status","then","__","playing","fetching","preview","cannotEmbed","tryAgain","isSelected","target","value","previewIcon","type","icon","title","isActive","onClick","current","blinkPreview","className","height","Component","embedAudioIcon","lightThemeIcon","darkThemeIcon","pictureWidgetIcon","classicWidgetIcon","miniWidgetIcon","classicWidgetHideArtworkIcon","classicWidgetCoveredIcon","miniWidgetHideArtworkIcon","downloadIcon","rotate","classes","previewAlignLeft","previewAlignCenter","previewAlignRight","matchMixcloudUrl","test","registerBlockType","category","supports","align","default","edit","compose","withSelect","select","ownProps","core","getEmbedPreview","isPreviewEmbedFallback","isRequestingEmbedPreview","definedUrl","previewIsFallback","badEmbedProvider","html","wordpressCantEmbed","data","validPreview","withDispatch","dispatch","coreData","invalidateResolution","save","mini","hideCover","hideArtwork","previewInfoLink","onSubmit","onChangeUrl","onChangeLoadPreview","_x","instances","Preview","container","previewBtn","onPlay","instance","push","forEach","listedInstance","stop","play","on","off","audio","Audio","load","addEventListener","available","removeEventListener","duration","style","setProperty","progress","dashArray","delay","constructor","pauseAll","setTimeout","updateSpinnerDuration","currentTime","replace","resetCurrentTime","pause","updateSpinnerProgress","Show","hideOverlay","interactive","_iframe","parentElement","getContainer","getElementsByClassName","getInstance","getPreviewBtn","updateWidgetOptions","blink","update","setOption","light","events","getBoundingClientRect","iframeY","ready","updateUrl","split","base","showPath","getUrl","containerClasses","btnAlignClass","nextProps","ToolbarPreview","emitLoadPreview","togglePreviewEnabled","emitChangePreviewAlign","DEFAULT_PREVIEW_BTN_ALIGN","ALIGNMENT_OPTIONS","alignControls","Object","keys","map","key","ToolbarTheme","createThumbsControl","capitalize","picture","classic","noArtwork","covered","minNoArtwork","ToolbarWidgetType","selected","onSelect","widgetTypesControls"],"mappings":"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","file":"block-show-editor-bundle.min.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 0);\n","import {BlockControls} from '@wordpress/block-editor';\nimport {Button, Notice, Spinner, Toolbar} from '@wordpress/components';\nimport {Component, createRef} from '@wordpress/element';\nimport {__} from '@wordpress/i18n';\n\nimport Placeholder from './placeholder';\nimport Show from './show';\nimport ToolbarPreview from './toolbar-preview';\nimport ToolbarTheme from './toolbar-theme';\nimport ToolbarWidgetType from './toolbar-widget-type';\nimport {WIDGET_TYPES} from './toolbar-widget-type';\n\nconst pluginUrl = 'https://datcoder.com/embed-mixcloud-advanced/';\n\n/**\n * @class\n */\nexport default class Edit extends Component {\n\n /**\n * @param {{}} props\n * @constructor\n */\n constructor(props) {\n\n super(props);\n\n this.setUrl = this.setUrl.bind(this);\n this.emitChangeUrl = this.emitChangeUrl.bind(this);\n this.requestPreview = this.requestPreview.bind(this);\n this.getWidgetProp = this.getWidgetProp.bind(this);\n this.updateAttribute = this.updateAttribute.bind(this);\n\n this.state = {\n editingURL: false,\n url: props.attributes.url,\n widgetType: props.attributes.widgetType || 'classic',\n theme: props.attributes.theme || 'dark',\n autoplay: props.attributes.autoplay || false,\n previewUrl: props.attributes.previewUrl,\n previewEnabled: props.attributes.previewEnabled,\n previewAlign: props.attributes.previewAlign || 'left',\n previewLoading: false,\n previewLoadingError: false,\n widget: undefined,\n loadPreview: true,\n };\n\n this._show = createRef();\n }\n\n /**\n * @param {{}|undefined=} event\n * @this Edit\n */\n setUrl(event = undefined) {\n\n if (event) {\n event.preventDefault();\n }\n\n const {\n url,\n previewUrl,\n loadPreview\n } = this.state;\n const {setAttributes} = this.props;\n\n setAttributes({url});\n this.setState({editingURL: false});\n\n if (!previewUrl && loadPreview) {\n this.requestPreview();\n }\n }\n\n /**\n * @param {{}} payload\n * @this Edit\n */\n updateAttribute(payload) {\n\n this.setState(payload);\n\n const {setAttributes} = this.props;\n setAttributes(payload);\n }\n\n /**\n * @this Edit\n */\n emitChangeUrl() {\n\n this.setState({\n url: undefined,\n editingURL: true,\n previewUrl: undefined\n }, this.setUrl);\n }\n\n /**\n * @param {string} prop\n * @this Edit\n *\n * @return {*}\n */\n getWidgetProp(prop) {\n return WIDGET_TYPES[this.state.widgetType][prop];\n }\n\n /**\n * @this Edit\n */\n requestPreview() {\n\n this.setState({\n previewLoading: true,\n previewLoadingError: false,\n });\n\n (async () => {\n\n let response = await fetch(window.location.origin + '/wp-json/vema/v1/preview/?show_url=' + this.state.url);\n\n if (response.ok) {\n return await response.json();\n } else {\n console.error('HTTP ERROR: ' + response.status);\n }\n\n })().then((response) => {\n\n if (response && typeof response['preview_url'] !== 'undefined') {\n this.updateAttribute({previewUrl: response['preview_url']});\n } else {\n\n if (typeof response['error'] !== 'undefined') {\n this.setState({previewLoadingError: response['error']});\n } else {\n this.setState({previewLoadingError: __('Server responded that something went wrong.', 'embed-mixcloud-advanced')});\n }\n }\n\n this.setState({previewLoading: false});\n });\n }\n\n /**\n * @this Edit\n * @return {*}\n */\n render() {\n\n const {\n url,\n loadPreview,\n widgetType,\n previewUrl,\n editingURL,\n theme,\n autoplay,\n playing,\n previewEnabled,\n previewAlign,\n previewLoading,\n previewLoadingError\n } = this.state;\n\n const {\n fetching,\n preview,\n cannotEmbed,\n tryAgain,\n isSelected,\n } = this.props;\n\n if (fetching) {\n\n return <>\n <div className=\"wp-block-embed is-loading\">\n <Spinner/>\n <p>{__('Embedding…', 'embed-mixcloud-advanced')}</p>\n </div>\n </>;\n }\n\n if (!fetching && (!preview || cannotEmbed || editingURL)) {\n return <>\n <Placeholder\n previewInfoLink={pluginUrl + '#preview'}\n cannotEmbed={cannotEmbed}\n url={url}\n loadPreview={loadPreview}\n tryAgain={tryAgain}\n onSubmit={this.setUrl}\n onChangeUrl={(event) => this.setState({url: event.target.value})}\n onChangeLoadPreview={() => this.setState({loadPreview: !loadPreview})}\n />\n </>;\n }\n\n const previewIcon = this.getWidgetProp('previewIcon') ? this.getWidgetProp('previewIcon') : false;\n\n return <>\n <BlockControls>\n\n <ToolbarWidgetType\n selected={widgetType}\n onSelect={type => this.updateAttribute({widgetType: type})}\n />\n\n <ToolbarTheme\n value={theme}\n onClick={value => this.updateAttribute({theme: value})}\n />\n\n <Toolbar controls={[\n {\n icon: 'controls-play',\n title: __('Autoplay', 'embed-mixcloud-advanced'),\n isActive: autoplay,\n onClick: value => this.updateAttribute({autoplay: !autoplay}),\n },\n ]}/>\n\n <ToolbarPreview\n emitLoadPreview={this.requestPreview}\n url={previewUrl}\n playing={playing}\n previewLoading={previewLoading}\n previewEnabled={previewEnabled}\n togglePreviewEnabled={() => {\n this.updateAttribute({previewEnabled: !this.state.previewEnabled});\n this._show.current.blinkPreview();\n }}\n previewAlign={previewAlign}\n emitChangePreviewAlign={value => {\n this.updateAttribute({previewAlign: value});\n this._show.current.blinkPreview();\n }}\n />\n\n <Toolbar controls={[{\n icon: 'edit',\n className: 'mea_preview_control',\n title: __('Edit URL', 'embed-mixcloud-advanced'),\n onClick: this.emitChangeUrl,\n }]}/>\n\n </BlockControls>\n\n {previewLoadingError && (\n <Notice status=\"error\" onRemove={() => this.setState({previewLoadingError: false})}>\n {previewLoadingError} {__('You can', 'embed-mixcloud-advanced')}\n <Button isPrimary isSmall onClick={this.requestPreview}>{__('Try again', 'embed-mixcloud-advanced')}</Button> {__('or', 'embed-mixcloud-advanced')}\n <Button isSecondary isSmall href={pluginUrl} target=\"_blank\">{__('Send report', 'embed-mixcloud-advanced')}</Button>\n </Notice>\n )}\n\n <Show\n ref={this._show}\n updateUrl={false}\n url={url}\n height={WIDGET_TYPES[widgetType].height}\n previewUrl={previewEnabled ? previewUrl : false}\n spinner={previewIcon}\n mini={this.getWidgetProp('mini')}\n autoplay={autoplay}\n hideCover={this.getWidgetProp('hideCover')}\n hideArtwork={this.getWidgetProp('hideArtwork')}\n light={theme === 'light'}\n isSelected={isSelected}\n previewAlign={previewAlign}\n />\n </>;\n }\n};\n","import {Path, Rect, Circle, Polygon, SVG} from '@wordpress/components';\n\nexport const embedAudioIcon = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <Path fill=\"none\" d=\"M0 0h24v24H0V0z\"/>\n <Path d=\"M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3V5h18v14zM8 15c0-1.66 1.34-3 3-3 .35 0 .69.07 1 .18V6h5v2h-3v7.03c-.02 1.64-1.35 2.97-3 2.97-1.66 0-3-1.34-3-3z\"/>\n </SVG>\n);\n\nexport const lightThemeIcon = (\n <SVG viewBox=\"0 0 302.4 302.4\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M204.8,97.6C191.2,84,172,75.2,151.2,75.2s-40,8.4-53.6,22.4c-13.6,13.6-22.4,32.8-22.4,53.6s8.8,40,22.4,53.6\n\t\t\t\tc13.6,13.6,32.8,22.4,53.6,22.4s40-8.4,53.6-22.4c13.6-13.6,22.4-32.8,22.4-53.6S218.8,111.2,204.8,97.6z\"/>\n <path d=\"M151.2,51.6c5.6,0,10.4-4.8,10.4-10.4V10.4c0-5.6-4.8-10.4-10.4-10.4c-5.6,0-10.4,4.8-10.4,10.4v30.8\n\t\t\t\tC140.8,46.8,145.6,51.6,151.2,51.6z\"/>\n <path d=\"M236.4,80.8l22-22c4-4,4-10.4,0-14.4s-10.4-4-14.4,0l-22,22c-4,4-4,10.4,0,14.4C225.6,84.8,232,84.8,236.4,80.8z\"/>\n <path d=\"M292,140.8h-30.8c-5.6,0-10.4,4.8-10.4,10.4c0,5.6,4.8,10.4,10.4,10.4H292c5.6,0,10.4-4.8,10.4-10.4\n\t\t\t\tC302.4,145.6,297.6,140.8,292,140.8z\"/>\n <path d=\"M236,221.6c-4-4-10.4-4-14.4,0s-4,10.4,0,14.4l22,22c4,4,10.4,4,14.4,0s4-10.4,0-14.4L236,221.6z\"/>\n <path d=\"M151.2,250.8c-5.6,0-10.4,4.8-10.4,10.4V292c0,5.6,4.8,10.4,10.4,10.4c5.6,0,10.4-4.8,10.4-10.4v-30.8\n\t\t\t\tC161.6,255.6,156.8,250.8,151.2,250.8z\"/>\n <path d=\"M66,221.6l-22,22c-4,4-4,10.4,0,14.4s10.4,4,14.4,0l22-22c4-4,4-10.4,0-14.4C76.8,217.6,70.4,217.6,66,221.6z\"/>\n <path d=\"M51.6,151.2c0-5.6-4.8-10.4-10.4-10.4H10.4c-5.6,0-10.4,4.8-10.4,10.4s4.8,10.4,10.4,10.4h30.8\n\t\t\t\tC46.8,161.6,51.6,156.8,51.6,151.2z\"/>\n <path d=\"M66,80.8c4,4,10.4,4,14.4,0s4-10.4,0-14.4l-22-22c-4-4-10.4-4-14.4,0s-4,10.4,0,14.4L66,80.8z\"/>\n </SVG>\n);\n\nexport const darkThemeIcon = (\n <SVG viewBox=\"0 0 480 480\" xmlns=\"http://www.w3.org/2000/svg\">\n <Path d=\"M459.782,347.328c-4.288-5.28-11.488-7.232-17.824-4.96c-17.76,6.368-37.024,9.632-57.312,9.632\n\t\t\tc-97.056,0-176-78.976-176-176c0-58.4,28.832-112.768,77.12-145.472c5.472-3.712,8.096-10.4,6.624-16.832\n\t\t\tS285.638,2.4,279.078,1.44C271.59,0.352,264.134,0,256.646,0c-132.352,0-240,107.648-240,240s107.648,240,240,240\n\t\t\tc84,0,160.416-42.688,204.352-114.176C464.55,360.032,464.038,352.64,459.782,347.328z\"/>\n </SVG>\n);\n\nexport const pictureWidgetIcon = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <Rect height=\"20\" width=\"20\" y=\"2\" x=\"2\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n </SVG>\n);\n\nexport const classicWidgetIcon = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <Rect height=\"12\" width=\"22\" y=\"6\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"7\" x2=\"11\" y1=\"18\" x1=\"11\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"12\" x2=\"11\" y1=\"12\" x1=\"22\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n </SVG>\n);\n\nexport const miniWidgetIcon = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <Rect height=\"8\" width=\"22\" y=\"8\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"9\" x2=\"10\" y1=\"16\" x1=\"10\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n </SVG>\n);\n\nexport const classicWidgetHideArtworkIcon = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <Rect height=\"12\" width=\"22\" y=\"6\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"12\" x2=\"2\" y1=\"12\" x1=\"22\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n </SVG>\n);\n\nexport const classicWidgetCoveredIcon = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <Rect height=\"12\" width=\"22\" y=\"6\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n </SVG>\n);\n\nexport const miniWidgetHideArtworkIcon = (\n <SVG viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n <Rect height=\"8\" width=\"22\" y=\"8\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n </SVG>\n);\n\nexport const previewIcon = (\n <SVG className='mea-show__spinner' width=\"20\" height='20' viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\">\n <Circle cx=\"10\" cy=\"10\" r=\"9\"/>\n <path d=\"M8 6l6 4.03L8 14V6z\" fill=\"currentColor\"/>\n </SVG>\n);\n\nexport const downloadIcon = (rotate = false) => {\n\n const classes = 'mea-show__spinner' + (rotate ? ' mea-show__spinner_download' : '');\n\n return <SVG className={classes} width=\"20\" height='20' viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\">\n <Circle cx=\"10\" cy=\"10\" r=\"9\"/>\n <path d=\"M14 8l-4.03 6L6 8h8z\" fill=\"currentColor\"/>\n </SVG>\n};\n\nexport const previewAlignLeft = (\n <SVG width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-hidden=\"true\" focusable=\"false\">\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"2\" x2=\"1\" y1=\"2\" x1=\"9\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n <Rect height=\"12\" width=\"22\" y=\"6\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"7\" x2=\"11\" y1=\"18\" x1=\"11\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"12\" x2=\"11\" y1=\"12\" x1=\"22\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n </SVG>\n);\n\nexport const previewAlignCenter = (\n <SVG width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-hidden=\"true\" focusable=\"false\">\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"2\" x2=\"8\" y1=\"2\" x1=\"16\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n <Rect height=\"12\" width=\"22\" y=\"6\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"7\" x2=\"11\" y1=\"18\" x1=\"11\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"12\" x2=\"11\" y1=\"12\" x1=\"22\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n </SVG>\n);\n\nexport const previewAlignRight = (\n <SVG width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\" role=\"img\" aria-hidden=\"true\" focusable=\"false\">\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"2\" x2=\"15\" y1=\"2\" x1=\"23\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n <Rect height=\"12\" width=\"22\" y=\"6\" x=\"1\" fillOpacity=\"0\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"7\" x2=\"11\" y1=\"18\" x1=\"11\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n <line strokeLinecap=\"null\" strokeLinejoin=\"null\" y2=\"12\" x2=\"11\" y1=\"12\" x1=\"22\" fillOpacity=\"null\" strokeOpacity=\"null\" strokeWidth=\"2\" stroke=\"currentColor\" fill=\"none\"/>\n </SVG>\n);\n","import {__} from '@wordpress/i18n';\nimport {registerBlockType} from '@wordpress/blocks';\nimport {compose} from '@wordpress/compose';\nimport {withSelect, withDispatch} from '@wordpress/data';\n\nimport Edit from './edit';\nimport Show from './show';\nimport {previewIcon} from './icons';\nimport {WIDGET_TYPES} from './toolbar-widget-type';\n\n/**\n * @param {String} url\n *\n * @return {Boolean}\n */\nexport const matchMixcloudUrl = url => /^\\s*(https?:\\/\\/(.+?\\.)?mixcloud\\.com\\S+)\\s*$/i.test(url);\n\n/**\n * Back end Gutenberg entry point\n */\nregisterBlockType('veliky/mixcloud-show', {\n\n title: __('Mixcloud Advanced', 'embed-mixcloud-advanced'),\n icon: previewIcon,\n category: 'embed',\n supports: {\n align: true,\n },\n attributes: {\n url: {\n type: 'string',\n },\n widgetType: {\n type: 'string',\n },\n theme: {\n type: 'string',\n },\n autoplay: {\n type: 'boolean',\n },\n previewUrl: {\n type: 'string',\n },\n previewEnabled: {\n type: 'boolean',\n default: true,\n },\n previewAlign: {\n type: 'string',\n default: 'right',\n }\n },\n\n /**\n * Composition of the WP embedding algorithm with the block editing component\n *\n * @see {Edit}\n */\n edit: compose(\n withSelect((select, ownProps) => {\n\n const { url } = ownProps.attributes;\n const core = select('core');\n const {\n getEmbedPreview,\n isPreviewEmbedFallback,\n isRequestingEmbedPreview,\n } = core;\n\n const definedUrl = undefined !== url;\n const preview = definedUrl && getEmbedPreview(url);\n\n const previewIsFallback = definedUrl && isPreviewEmbedFallback(url);\n const fetching = definedUrl && isRequestingEmbedPreview(url);\n\n // The external oEmbed provider does not exist. We got no type info and no html.\n const badEmbedProvider = !!preview && undefined === preview.type && false === preview.html;\n\n // Some WordPress URLs that can't be embedded will cause the API to return\n // a valid JSON response with no HTML and `data.status` set to 404, rather\n // than generating a fallback response as other embeds do.\n const wordpressCantEmbed = !!preview && preview.data && preview.data.status === 404;\n\n const validPreview = !!preview && !badEmbedProvider && !wordpressCantEmbed;\n const cannotEmbed = definedUrl && (!matchMixcloudUrl(url) || !validPreview || previewIsFallback);\n\n return {\n preview: validPreview ? preview : undefined,\n fetching,\n cannotEmbed,\n };\n\n }),\n\n withDispatch((dispatch, ownProps) => {\n\n const { url, widgetType, theme, autoplay } = ownProps.attributes;\n const coreData = dispatch('core/data');\n\n const tryAgain = () => {\n coreData.invalidateResolution('core', 'getEmbedPreview', [\n url\n ]);\n };\n return { tryAgain };\n\n })\n )(Edit),\n\n /**\n * Renders a block for publication\n *\n * @param {{}} attributes\n *\n * @return {null|*}\n */\n save ({ attributes }) {\n\n const { url, widgetType, previewUrl, theme, previewAlign } = attributes;\n\n if (!url) {\n return null;\n }\n\n const widget = WIDGET_TYPES[widgetType || 'classic'];\n\n return (\n <figure>\n <Show\n updateUrl={true}\n url={url}\n height={widget.height}\n previewUrl={previewUrl}\n spinner={widget.previewIcon}\n mini={widget.mini}\n hideCover={widget.hideCover}\n hideArtwork={widget.hideArtwork}\n light={theme && theme === 'light'}\n previewAlign={previewAlign}\n />\n </figure>\n );\n },\n});\n","import {BlockIcon} from '@wordpress/block-editor';\nimport {Button, Placeholder, CheckboxControl, ExternalLink, Dashicon} from '@wordpress/components';\nimport {__, _x} from '@wordpress/i18n';\nimport {previewIcon} from './icons';\n\nexport default (props) => {\n\n const {\n cannotEmbed,\n url,\n previewInfoLink,\n loadPreview,\n onSubmit,\n onChangeUrl,\n onChangeLoadPreview,\n } = props;\n\n return (\n <Placeholder\n icon={<BlockIcon icon={previewIcon} showColors/>}\n label={__('Mixcloud Advanced', 'embed-mixcloud-advanced')}\n className=\"wp-block-embed\"\n instructions={cannotEmbed ? __('This show could not be embedded!', 'embed-mixcloud-advanced') : __('Paste a link to the show you want to display on your site.', 'embed-mixcloud-advanced')}\n >\n\n <form onSubmit={onSubmit}>\n <input\n type=\"url\"\n value={url || ''}\n className={'components-placeholder__input' + (cannotEmbed ? ' components-placeholder__input-error' : '')}\n aria-label={__('Mixcloud URL', 'embed-mixcloud-advanced')}\n placeholder={__('Enter URL to embed here…', 'embed-mixcloud-advanced')}\n onChange={onChangeUrl}\n />\n <Button isSecondary type=\"submit\">\n {_x('Embed', 'button label')}\n </Button>\n </form>\n\n <form>\n <CheckboxControl className='components-placeholder__learn-more'\n label={__('Enable preview', 'embed-mixcloud-advanced')}\n checked={loadPreview}\n onChange={onChangeLoadPreview}/>\n </form>\n <div>\n <div>\n {__('This function can be disabled. To download preview data, a request will be made from the server to the show page.', 'embed-mixcloud-advanced')}\n <ExternalLink href={previewInfoLink} target='_blank'>{__('See more', 'embed-mixcloud-advanced')}</ExternalLink>\n </div>\n </div>\n\n </Placeholder>\n );\n};\n","/**\n * @type {Preview[]}\n */\nconst instances = [];\n\n/**\n * Presents hover preview functionality\n *\n * @class\n */\nexport default class Preview {\n\n /**\n * @param {Element} container\n * @param {Element} previewBtn\n * @param {String} previewUrl\n * @param {function} onPlay\n *\n * @constructor\n */\n static getInstance(container, previewBtn, previewUrl, onPlay) {\n\n const instance = new Preview(container, previewBtn, previewUrl, onPlay);\n instances.push(instance);\n\n return instance;\n }\n\n /**\n * @param {Preview} instance\n */\n static pauseAll(instance) {\n\n instances.forEach(listedInstance => {\n if (listedInstance !== instance) {\n listedInstance.stop(false);\n listedInstance.onPlay();\n }\n });\n }\n\n /**\n * @param {Element} container\n * @param {Element} previewBtn\n * @param {String} previewUrl\n * @param {function} onPlay\n *\n * @constructor\n */\n constructor(container, previewBtn, previewUrl, onPlay) {\n\n this.container = container;\n this.previewBtn = previewBtn;\n this.onPlay = onPlay;\n\n this.play = this.play.bind(this);\n this.stop = this.stop.bind(this);\n this.on = this.on.bind(this);\n this.off = this.off.bind(this);\n this.onClick = this.onClick.bind(this);\n\n if (previewUrl && !this.audio) {\n\n /**\n * Init audio component and setting hover play events\n *\n * @type {HTMLAudioElement}\n */\n\n this.audio = new Audio(previewUrl);\n this.audio.load();\n this.audio.addEventListener('loadeddata', this.on);\n this.audio.addEventListener('pause', this.stop);\n }\n\n\n this.playing = false;\n this.available = true;\n }\n\n /**\n * @this Preview\n */\n on() {\n this.previewBtn.addEventListener('click', this.onClick);\n }\n\n /**\n * Turns off events\n *\n * @this Preview\n */\n off() {\n this.previewBtn.removeEventListener('click', this.onClick);\n }\n\n /**\n * @this Preview\n */\n onClick() {\n\n if (this.playing) {\n this.stop(false);\n } else {\n this.play();\n }\n }\n\n /**\n * @param {number} duration\n */\n updateSpinnerDuration(duration) {\n this.container.style.setProperty('--spinner-duration', duration + 's');\n }\n\n /**\n * @param {number} progress\n */\n updateSpinnerProgress(progress) {\n\n // let dashArray = (56 / (this.audio.duration / progress)).toString() + ', ' + 56 - (56 / (this.audio.duration / progress)).toString();\n\n let dashArray = 56.52 / (this.audio.duration / progress) + ', ' + (56.52 - 56.52 / (this.audio.duration / progress));\n this.container.style.setProperty('--spinner-progress', dashArray);\n }\n\n /**\n * Plays with a delay\n *\n * @this Preview\n */\n play() {\n\n const delay = 0.5;\n this.constructor.pauseAll(this);\n this.onPlay();\n\n if (!this.playing && this.available) {\n\n this.playing = true;\n\n setTimeout(() => {\n\n if (this.playing && this.audio) {\n\n this.audio.play().then(() => {\n this.updateSpinnerDuration(this.audio.duration - this.audio.currentTime);\n this.container.className = this.container.className.replace(' mea-show__wrapper_pause', '');\n this.container.className += ' mea-show__wrapper_playing';\n });\n }\n\n }, delay * 1000);\n }\n }\n\n /**\n * @param {boolean} resetCurrentTime\n *\n * @this Preview\n */\n stop(resetCurrentTime = true) {\n\n if (this.playing) {\n\n this.playing = false;\n\n if (this.audio) {\n this.audio.pause();\n\n if (resetCurrentTime) {\n this.audio.currentTime = 0;\n this.updateSpinnerProgress(0);\n } else {\n this.container.className += ' mea-show__wrapper_pause';\n this.updateSpinnerProgress(this.audio.currentTime);\n }\n\n this.container.className = this.container.className.replace(' mea-show__wrapper_playing', '');\n }\n }\n }\n\n /**\n * Shows previewBtn for a while\n *\n * @param {Number=} duration Visibility duration in seconds\n * @this Preview\n */\n blink(duration = 1) {\n\n this.container.className += ' mea-show__wrapper_playing';\n this.updateSpinnerDuration(duration);\n\n setTimeout(() => {\n this.container.className = this.container.className.replace(' mea-show__wrapper_playing', '');\n }, duration * 1000);\n\n }\n}\n","import {Component, createRef} from '@wordpress/element';\nimport {__} from '@wordpress/i18n';\nimport Preview from './preview';\nimport {previewIcon} from \"./icons\";\n\n/**\n * @class\n */\nexport default class Show extends Component {\n\n /**\n * @param {{}} props\n * @constructor\n */\n constructor(props) {\n\n super(props);\n\n this.hideOverlay = this.hideOverlay.bind(this);\n\n this.state = {\n interactive: false,\n };\n\n this._iframe = createRef();\n }\n\n getContainer () {\n return this._iframe.current.parentElement.parentElement;\n }\n\n getPreviewBtn () {\n return this.getContainer().getElementsByClassName('mea-show__preview-btn')[0];\n }\n\n /**\n * @this Show\n */\n componentDidMount() {\n\n if (this.props.previewUrl) {\n this.preview = Preview.getInstance(this.getContainer(), this.getPreviewBtn(), this.props.previewUrl, () => this.pause());\n }\n\n this._iframe.current.addEventListener('load', event => {\n this.updateWidgetOptions();\n });\n }\n\n /**\n * Automatically stop playing preview when a block has been deleted\n *\n * @this Show\n */\n componentWillUnmount() {\n\n if (this.preview) {\n this.preview.stop();\n }\n }\n\n /**\n * @this Show\n */\n componentDidUpdate() {\n\n if (!this.preview && this.props.previewUrl) {\n this.preview = Preview.getInstance(this.getContainer(), this.getPreviewBtn(), this.props.previewUrl, () => this.pause());\n }\n\n if (this.preview) {\n if (!this.props.previewUrl) {\n this.preview.off();\n } else {\n this.preview.on();\n }\n }\n\n this.updateWidgetOptions();\n }\n\n /**\n * @this Show\n */\n pause () {\n if (typeof this.widget !== 'undefined' && typeof this.widget.pause !== 'undefined') {\n this.widget.pause()\n }\n }\n\n /**\n * @this Show\n */\n blinkPreview() {\n\n if (this.preview) {\n this.preview.blink();\n }\n }\n\n /**\n * @this Show\n */\n updateWidgetOptions() {\n\n const update = () => {\n\n if (this.widget.setOption) {\n\n this.widget.setOption('mini', this.props.mini);\n this.widget.setOption('light', this.props.light);\n this.widget.setOption('hide_artwork', this.props.hideArtwork);\n this.widget.setOption('hide_cover', this.props.hideCover);\n\n if (this.props.autoplay) {\n this.widget.play();\n } else {\n this.widget.pause();\n }\n\n // Avoiding playing preview and show at the same time\n\n this.widget.events.play.on(() => {\n if (this.preview) {\n this.preview.stop(false);\n this.preview.constructor.pauseAll(this.preview);\n }\n });\n }\n\n };\n\n if (typeof window['Mixcloud']['PlayerWidget'] !== 'undefined') {\n\n if (!this.widget || this._iframe.current.getBoundingClientRect()['y'] !== this.iframeY) {\n\n this.widget = window['Mixcloud']['PlayerWidget'](this._iframe.current);\n this.iframeY = this._iframe.current.getBoundingClientRect()['y'];\n\n this.widget.ready.then(() => {\n\n this._iframe.current.style.setProperty('visibility', 'visible');\n update();\n\n });\n }\n\n update();\n }\n }\n\n /**\n * @param {{}} nextProps\n * @param {{}} state\n *\n * @static\n * @see @wordpress/block-library/src/embed/embed-preview.js:35\n *\n * @return {null|{interactive: Boolean}}\n */\n static getDerivedStateFromProps(nextProps, state) {\n\n if (!nextProps.isSelected && state.interactive) {\n\n // We only want to change this when the block is not selected, because changing it when\n // the block becomes selected makes the overlap disappear too early. Hiding the overlay\n // happens on mouseup when the overlay is clicked.\n return {interactive: false};\n }\n\n return null;\n }\n\n /**\n * @this Show\n * @see @wordpress/block-library/src/embed/embed-preview.js:46\n */\n hideOverlay() {\n\n // This is called onMouseUp on the overlay. We can't respond to the `isSelected` prop\n // changing, because that happens on mouse down, and the overlay immediately disappears,\n // and the mouse event can end up in the preview content. We can't use onClick on\n // the overlay to hide it either, because then the editor misses the mouseup event, and\n // thinks we're multi-selecting blocks.\n this.setState({interactive: true});\n }\n\n /**\n * @this Show\n * @return {String|Boolean}\n */\n getUrl() {\n\n let {\n url,\n updateUrl,\n mini,\n hideCover,\n hideArtwork,\n light,\n } = this.props;\n\n if (url) {\n\n let [base, showPath] = url.split('.com');\n url = 'https://www.mixcloud.com/widget/iframe/?feed=' + showPath + (\n updateUrl ? (\n '&mini=' + (mini | 0) +\n '&hide_cover=' + (hideCover | 0) +\n '&hide_artwork=' + (hideArtwork | 0) +\n '&light=' + (light | 0)\n ) : '');\n\n return url;\n }\n\n return false;\n }\n\n /**\n * @this Show\n */\n render() {\n\n let {\n previewUrl,\n height,\n light,\n previewAlign,\n autoplay,\n } = this.props;\n\n const {interactive} = this.state;\n const url = this.getUrl();\n\n if (url) {\n\n const containerClasses = 'mea-show__container' + (previewUrl ? ' mea-show__container_with_preview' : '');\n const btnAlignClass = ' mea-show__preview-btn_' + previewAlign;\n\n return (\n <div\n className={containerClasses}\n onFocus={this.hideOverlay}\n >\n {previewUrl && (\n <div\n className={'mea-show__preview-btn ' + (light ? 'mea-show__preview-btn_light' : '') + btnAlignClass}>\n {previewIcon}\n <span>{__('Preview', 'embed-mixcloud-advanced')}</span>\n </div>\n )}\n <div\n className='mea-show__wrapper'\n data-preview-url={previewUrl}\n >\n <iframe ref={this._iframe} width=\"100%\" height={height} src={url} frameBorder=\"0\" allow={autoplay ? 'autoplay' : null}/>\n </div>\n\n {!interactive && (\n <div\n className=\"block-library-embed__interactive-overlay\"\n onMouseUp={this.hideOverlay}\n />\n )}\n </div>\n );\n }\n }\n}\n","import {Toolbar} from '@wordpress/components';\nimport {__} from '@wordpress/i18n';\nimport {previewIcon, downloadIcon, previewAlignLeft, previewAlignCenter, previewAlignRight} from './icons';\n\n/**\n * @param {{}} props\n * @return {*}\n */\nexport default function ToolbarPreview (props) {\n\n const {\n url,\n emitLoadPreview,\n previewEnabled,\n togglePreviewEnabled,\n previewAlign,\n emitChangePreviewAlign,\n previewLoading\n } = props;\n\n const DEFAULT_PREVIEW_BTN_ALIGN = 'right';\n const ALIGNMENT_OPTIONS = {\n 'left': {\n icon: previewAlignLeft,\n title: __('Left', 'embed-mixcloud-advanced'),\n },\n 'center': {\n icon: previewAlignCenter,\n title: __('Center', 'embed-mixcloud-advanced'),\n },\n 'right': {\n icon: previewAlignRight,\n title: __('Right', 'embed-mixcloud-advanced'),\n },\n };\n\n const alignControls = Object.keys(ALIGNMENT_OPTIONS).map(key => {\n return {\n ...ALIGNMENT_OPTIONS[key],\n isActive: previewAlign === key,\n onClick: () => emitChangePreviewAlign(key),\n };\n });\n\n if (url) {\n\n return <>\n <Toolbar\n controls={[\n {\n icon: previewIcon,\n title: __('Enable preview', 'embed-mixcloud-advanced'),\n onClick: togglePreviewEnabled,\n isActive: previewEnabled,\n },\n ]}\n />\n {previewEnabled && <Toolbar\n icon={ALIGNMENT_OPTIONS[previewAlign] ? ALIGNMENT_OPTIONS[previewAlign].icon : ALIGNMENT_OPTIONS[DEFAULT_PREVIEW_BTN_ALIGN].icon}\n label={__('Preview button align', 'embed-mixcloud-advanced')}\n isCollapsed={true}\n controls={alignControls}\n />}\n </>;\n }\n\n return <Toolbar\n icon={previewIcon}\n controls={[\n {\n icon: downloadIcon(previewLoading),\n title: __('There is no preview data for this show. Download?', 'embed-mixcloud-advanced'),\n isActive: false,\n onClick: emitLoadPreview\n }\n ]}\n />;\n}\n","import {capitalize} from 'lodash';\nimport {Toolbar} from '@wordpress/components';\nimport {lightThemeIcon, darkThemeIcon} from './icons';\nimport {__} from '@wordpress/i18n';\n\n/**\n * @param {{}} props\n * @return {*}\n */\nexport default function ToolbarTheme (props) {\n\n const { value, onClick } = props;\n\n function createThumbsControl (theme) {\n return {\n icon: theme === 'light' ? lightThemeIcon : darkThemeIcon,\n title: __(capitalize(theme), 'embed-mixcloud-advanced'),\n isActive: value === theme,\n onClick: () => onClick(theme),\n };\n }\n\n return <Toolbar controls={['light', 'dark'].map(createThumbsControl)}/>;\n}\n","import {__} from '@wordpress/i18n';\nimport {Toolbar} from '@wordpress/components';\nimport {\n classicWidgetHideArtworkIcon,\n classicWidgetIcon,\n miniWidgetHideArtworkIcon,\n classicWidgetCoveredIcon,\n miniWidgetIcon,\n pictureWidgetIcon\n} from './icons';\n\nexport const WIDGET_TYPES = {\n picture: {\n title: __('Large Covered Widget', 'embed-mixcloud-advanced'),\n icon: pictureWidgetIcon,\n height: 180,\n hideCover: false,\n },\n classic: {\n title: __('Classic Widget', 'embed-mixcloud-advanced'),\n icon: classicWidgetIcon,\n height: 120,\n hideCover: true,\n },\n noArtwork: {\n title: __('Widget w/o Artwork', 'embed-mixcloud-advanced'),\n icon: classicWidgetHideArtworkIcon,\n height: 120,\n hideArtwork: true,\n hideCover: true,\n },\n covered: {\n title: __('Covered Widget', 'embed-mixcloud-advanced'),\n icon: classicWidgetCoveredIcon,\n height: 120,\n hideArtwork: true,\n hideCover: false,\n },\n mini: {\n title: __('Mini Widget', 'embed-mixcloud-advanced'),\n icon: miniWidgetIcon,\n height: 60,\n hideCover: true,\n mini: true,\n },\n minNoArtwork: {\n title: __('Mini Widget w/o Artwork', 'embed-mixcloud-advanced'),\n icon: miniWidgetHideArtworkIcon,\n height: 60,\n hideArtwork: true,\n hideCover: true,\n mini: true,\n },\n};\n\n/**\n * @param {{}} props\n * @return {*}\n */\nexport default function ToolbarWidgetType (props) {\n\n const { selected, onSelect } = props;\n const widgetTypesControls = Object.keys(WIDGET_TYPES).map((key) => {\n return {\n ...{\n title: WIDGET_TYPES[key]['title'],\n icon: WIDGET_TYPES[key]['icon']\n },\n isActive: selected === key,\n onClick: () => onSelect(key),\n };\n });\n\n return (\n <Toolbar controls={widgetTypesControls}/>\n );\n}\n","function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\nmodule.exports = _arrayLikeToArray;","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nmodule.exports = _arrayWithHoles;","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized;","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nfunction _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}\n\nmodule.exports = _asyncToGenerator;","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nmodule.exports = _classCallCheck;","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nmodule.exports = _createClass;","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty;","function _getPrototypeOf(o) {\n module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nmodule.exports = _getPrototypeOf;","var setPrototypeOf = require(\"./setPrototypeOf\");\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}\n\nmodule.exports = _inherits;","function _iterableToArrayLimit(arr, i) {\n if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nmodule.exports = _iterableToArrayLimit;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableRest;","var _typeof = require(\"../helpers/typeof\");\n\nvar assertThisInitialized = require(\"./assertThisInitialized\");\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return assertThisInitialized(self);\n}\n\nmodule.exports = _possibleConstructorReturn;","function _setPrototypeOf(o, p) {\n module.exports = _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nmodule.exports = _setPrototypeOf;","var arrayWithHoles = require(\"./arrayWithHoles\");\n\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray\");\n\nvar nonIterableRest = require(\"./nonIterableRest\");\n\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\n\nmodule.exports = _slicedToArray;","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n module.exports = _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n module.exports = _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nmodule.exports = _typeof;","var arrayLikeToArray = require(\"./arrayLikeToArray\");\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(n);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\n\nmodule.exports = _unsupportedIterableToArray;","(function() { module.exports = this[\"regeneratorRuntime\"]; }());","(function() { module.exports = this[\"wp\"][\"blockEditor\"]; }());","(function() { module.exports = this[\"wp\"][\"blocks\"]; }());","(function() { module.exports = this[\"wp\"][\"components\"]; }());","(function() { module.exports = this[\"wp\"][\"compose\"]; }());","(function() { module.exports = this[\"wp\"][\"data\"]; }());","(function() { module.exports = this[\"wp\"][\"element\"]; }());","(function() { module.exports = this[\"wp\"][\"i18n\"]; }());","(function() { module.exports = this[\"lodash\"]; }());"],"sourceRoot":""} -
embed-mixcloud-advanced/trunk/dist/public-bundle.min.js.map
r2317525 r2371863 1 {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./frontend/block-show/preview.js","webpack:///./frontend/public.js","webpack:///./node_modules/@babel/runtime/helpers/classCallCheck.js","webpack:///./node_modules/@babel/runtime/helpers/createClass.js"],"names":["instances","Preview","container","previewBtn","previewUrl","onPlay","instance","push","forEach","listedInstance","stop","play","bind","on","off","onClick","audio","Audio","load","addEventListener","playing","available","removeEventListener","duration","style","setProperty","progress","dashArray","delay","constructor","pauseAll","setTimeout","then","updateSpinnerDuration","currentTime","className","replace","resetCurrentTime","pause","updateSpinnerProgress","document","getElementsByClassName","wrapper","widget","preview","getInstance","window","getElementsByTagName","ready","events"],"mappings":"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","file":"public-bundle.min.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 1);\n","/**\n * @type {Preview[]}\n */\nconst instances = [];\n\n/**\n * Presents hover preview functionality\n *\n * @class\n */\nexport default class Preview {\n\n /**\n * @param {Element} container\n * @param {Element} previewBtn\n * @param {String} previewUrl\n * @param {function} onPlay\n *\n * @constructor\n */\n static getInstance(container, previewBtn, previewUrl, onPlay) {\n\n const instance = new Preview(container, previewBtn, previewUrl, onPlay);\n instances.push(instance);\n\n return instance;\n }\n\n /**\n * @param {Preview} instance\n */\n static pauseAll(instance) {\n\n instances.forEach(listedInstance => {\n if (listedInstance !== instance) {\n listedInstance.stop(false);\n listedInstance.onPlay();\n }\n });\n }\n\n /**\n * @param {Element} container\n * @param {Element} previewBtn\n * @param {String} previewUrl\n * @param {function} onPlay\n *\n * @constructor\n */\n constructor(container, previewBtn, previewUrl, onPlay) {\n\n this.container = container;\n this.previewBtn = previewBtn;\n this.onPlay = onPlay;\n\n this.play = this.play.bind(this);\n this.stop = this.stop.bind(this);\n this.on = this.on.bind(this);\n this.off = this.off.bind(this);\n this.onClick = this.onClick.bind(this);\n\n if (previewUrl && !this.audio) {\n\n /**\n * Init audio component and setting hover play events\n *\n * @type {HTMLAudioElement}\n */\n\n this.audio = new Audio(previewUrl);\n this.audio.load();\n this.audio.addEventListener('loadeddata', this.on);\n this.audio.addEventListener('pause', this.stop);\n }\n\n\n this.playing = false;\n this.available = true;\n }\n\n /**\n * @this Preview\n */\n on() {\n this.previewBtn.addEventListener('click', this.onClick);\n }\n\n /**\n * Turns off events\n *\n * @this Preview\n */\n off() {\n this.previewBtn.removeEventListener('click', this.onClick);\n }\n\n /**\n * @this Preview\n */\n onClick() {\n\n if (this.playing) {\n this.stop(false);\n } else {\n this.play();\n }\n }\n\n /**\n * @param {number} duration\n */\n updateSpinnerDuration(duration) {\n this.container.style.setProperty('--spinner-duration', duration + 's');\n }\n\n /**\n * @param {number} progress\n */\n updateSpinnerProgress(progress) {\n\n // let dashArray = (56 / (this.audio.duration / progress)).toString() + ', ' + 56 - (56 / (this.audio.duration / progress)).toString();\n\n let dashArray = 56.52 / (this.audio.duration / progress) + ', ' + (56.52 - 56.52 / (this.audio.duration / progress));\n this.container.style.setProperty('--spinner-progress', dashArray);\n }\n\n /**\n * Plays with a delay\n *\n * @this Preview\n */\n play() {\n\n const delay = 0.5;\n this.constructor.pauseAll(this);\n this.onPlay();\n\n if (!this.playing && this.available) {\n\n this.playing = true;\n\n setTimeout(() => {\n\n if (this.playing && this.audio) {\n\n this.audio.play().then(() => {\n this.updateSpinnerDuration(this.audio.duration - this.audio.currentTime);\n this.container.className = this.container.className.replace(' mea-show__wrapper_pause', '');\n this.container.className += ' mea-show__wrapper_playing';\n });\n }\n\n }, delay * 1000);\n }\n }\n\n /**\n * @param {boolean} resetCurrentTime\n *\n * @this Preview\n */\n stop(resetCurrentTime = true) {\n\n if (this.playing) {\n\n this.playing = false;\n\n if (this.audio) {\n this.audio.pause();\n\n if (resetCurrentTime) {\n this.audio.currentTime = 0;\n } else {\n this.container.className += ' mea-show__wrapper_pause';\n this.updateSpinnerProgress(this.audio.currentTime);\n }\n\n this.container.className = this.container.className.replace(' mea-show__wrapper_playing', '');\n }\n }\n }\n\n /**\n * Shows previewBtn for a while\n *\n * @param {Number=} duration Visibility duration in seconds\n * @this Preview\n */\n blink(duration = 1) {\n\n this.container.className += ' mea-show__wrapper_playing';\n this.updateSpinnerDuration(duration);\n\n setTimeout(() => {\n this.container.className = this.container.className.replace(' mea-show__wrapper_playing', '');\n }, duration * 1000);\n\n }\n}\n","import Preview from './block-show/preview';\n\n/**\n * Entry point of blocks on front end\n */\ndocument.addEventListener('DOMContentLoaded', () => {\n\n\n for (let container of document.getElementsByClassName('mea-show__container')) {\n\n let previewBtn = container.getElementsByClassName('mea-show__preview-btn')[0];\n let wrapper = container.getElementsByClassName('mea-show__wrapper')[0];\n\n if (previewBtn && wrapper && wrapper['dataset']['previewUrl']) {\n\n let widget;\n\n const preview = Preview.getInstance(container, previewBtn, wrapper['dataset']['previewUrl'], () => {\n if (typeof widget !== 'undefined' && typeof widget.pause !== 'undefined') {\n widget.pause();\n }\n });\n\n // Avoiding playing preview and show at the same time\n\n if (typeof window['Mixcloud'] !== 'undefined') {\n\n widget = window['Mixcloud']['PlayerWidget'](wrapper.getElementsByTagName('iframe')[0]);\n widget.ready.then(() => {\n\n widget.events.play.on(() => {\n preview.stop(false);\n preview.constructor.pauseAll(preview);\n });\n });\n }\n }\n }\n\n});\n","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nmodule.exports = _classCallCheck;","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nmodule.exports = _createClass;"],"sourceRoot":""}1 {"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./frontend/block-show/preview.js","webpack:///./frontend/public.js","webpack:///./node_modules/@babel/runtime/helpers/classCallCheck.js","webpack:///./node_modules/@babel/runtime/helpers/createClass.js"],"names":["instances","Preview","container","previewBtn","previewUrl","onPlay","instance","push","forEach","listedInstance","stop","play","bind","on","off","onClick","audio","Audio","load","addEventListener","playing","available","removeEventListener","duration","style","setProperty","progress","dashArray","delay","constructor","pauseAll","setTimeout","then","updateSpinnerDuration","currentTime","className","replace","resetCurrentTime","pause","updateSpinnerProgress","document","getElementsByClassName","wrapper","widget","preview","getInstance","window","getElementsByTagName","ready","events"],"mappings":"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","file":"public-bundle.min.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 1);\n","/**\n * @type {Preview[]}\n */\nconst instances = [];\n\n/**\n * Presents hover preview functionality\n *\n * @class\n */\nexport default class Preview {\n\n /**\n * @param {Element} container\n * @param {Element} previewBtn\n * @param {String} previewUrl\n * @param {function} onPlay\n *\n * @constructor\n */\n static getInstance(container, previewBtn, previewUrl, onPlay) {\n\n const instance = new Preview(container, previewBtn, previewUrl, onPlay);\n instances.push(instance);\n\n return instance;\n }\n\n /**\n * @param {Preview} instance\n */\n static pauseAll(instance) {\n\n instances.forEach(listedInstance => {\n if (listedInstance !== instance) {\n listedInstance.stop(false);\n listedInstance.onPlay();\n }\n });\n }\n\n /**\n * @param {Element} container\n * @param {Element} previewBtn\n * @param {String} previewUrl\n * @param {function} onPlay\n *\n * @constructor\n */\n constructor(container, previewBtn, previewUrl, onPlay) {\n\n this.container = container;\n this.previewBtn = previewBtn;\n this.onPlay = onPlay;\n\n this.play = this.play.bind(this);\n this.stop = this.stop.bind(this);\n this.on = this.on.bind(this);\n this.off = this.off.bind(this);\n this.onClick = this.onClick.bind(this);\n\n if (previewUrl && !this.audio) {\n\n /**\n * Init audio component and setting hover play events\n *\n * @type {HTMLAudioElement}\n */\n\n this.audio = new Audio(previewUrl);\n this.audio.load();\n this.audio.addEventListener('loadeddata', this.on);\n this.audio.addEventListener('pause', this.stop);\n }\n\n\n this.playing = false;\n this.available = true;\n }\n\n /**\n * @this Preview\n */\n on() {\n this.previewBtn.addEventListener('click', this.onClick);\n }\n\n /**\n * Turns off events\n *\n * @this Preview\n */\n off() {\n this.previewBtn.removeEventListener('click', this.onClick);\n }\n\n /**\n * @this Preview\n */\n onClick() {\n\n if (this.playing) {\n this.stop(false);\n } else {\n this.play();\n }\n }\n\n /**\n * @param {number} duration\n */\n updateSpinnerDuration(duration) {\n this.container.style.setProperty('--spinner-duration', duration + 's');\n }\n\n /**\n * @param {number} progress\n */\n updateSpinnerProgress(progress) {\n\n // let dashArray = (56 / (this.audio.duration / progress)).toString() + ', ' + 56 - (56 / (this.audio.duration / progress)).toString();\n\n let dashArray = 56.52 / (this.audio.duration / progress) + ', ' + (56.52 - 56.52 / (this.audio.duration / progress));\n this.container.style.setProperty('--spinner-progress', dashArray);\n }\n\n /**\n * Plays with a delay\n *\n * @this Preview\n */\n play() {\n\n const delay = 0.5;\n this.constructor.pauseAll(this);\n this.onPlay();\n\n if (!this.playing && this.available) {\n\n this.playing = true;\n\n setTimeout(() => {\n\n if (this.playing && this.audio) {\n\n this.audio.play().then(() => {\n this.updateSpinnerDuration(this.audio.duration - this.audio.currentTime);\n this.container.className = this.container.className.replace(' mea-show__wrapper_pause', '');\n this.container.className += ' mea-show__wrapper_playing';\n });\n }\n\n }, delay * 1000);\n }\n }\n\n /**\n * @param {boolean} resetCurrentTime\n *\n * @this Preview\n */\n stop(resetCurrentTime = true) {\n\n if (this.playing) {\n\n this.playing = false;\n\n if (this.audio) {\n this.audio.pause();\n\n if (resetCurrentTime) {\n this.audio.currentTime = 0;\n this.updateSpinnerProgress(0);\n } else {\n this.container.className += ' mea-show__wrapper_pause';\n this.updateSpinnerProgress(this.audio.currentTime);\n }\n\n this.container.className = this.container.className.replace(' mea-show__wrapper_playing', '');\n }\n }\n }\n\n /**\n * Shows previewBtn for a while\n *\n * @param {Number=} duration Visibility duration in seconds\n * @this Preview\n */\n blink(duration = 1) {\n\n this.container.className += ' mea-show__wrapper_playing';\n this.updateSpinnerDuration(duration);\n\n setTimeout(() => {\n this.container.className = this.container.className.replace(' mea-show__wrapper_playing', '');\n }, duration * 1000);\n\n }\n}\n","import Preview from './block-show/preview';\n\n/**\n * Entry point of blocks on front end\n */\ndocument.addEventListener('DOMContentLoaded', () => {\n\n\n for (let container of document.getElementsByClassName('mea-show__container')) {\n\n let previewBtn = container.getElementsByClassName('mea-show__preview-btn')[0];\n let wrapper = container.getElementsByClassName('mea-show__wrapper')[0];\n\n if (previewBtn && wrapper && wrapper['dataset']['previewUrl']) {\n\n let widget;\n\n const preview = Preview.getInstance(container, previewBtn, wrapper['dataset']['previewUrl'], () => {\n if (typeof widget !== 'undefined' && typeof widget.pause !== 'undefined') {\n widget.pause();\n }\n });\n\n // Avoiding playing preview and show at the same time\n\n if (typeof window['Mixcloud'] !== 'undefined') {\n\n widget = window['Mixcloud']['PlayerWidget'](wrapper.getElementsByTagName('iframe')[0]);\n widget.ready.then(() => {\n\n widget.events.play.on(() => {\n preview.stop(false);\n preview.constructor.pauseAll(preview);\n });\n });\n }\n }\n }\n\n});\n","function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nmodule.exports = _classCallCheck;","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nmodule.exports = _createClass;"],"sourceRoot":""} -
embed-mixcloud-advanced/trunk/frontend/block-show/edit.js
r2339869 r2371863 243 243 <Toolbar controls={[{ 244 244 icon: 'edit', 245 class : 'mea_preview_control',245 className: 'mea_preview_control', 246 246 title: __('Edit URL', 'embed-mixcloud-advanced'), 247 247 onClick: this.emitChangeUrl, -
embed-mixcloud-advanced/trunk/frontend/block-show/toolbar-widget-type.js
r2339869 r2371863 63 63 const widgetTypesControls = Object.keys(WIDGET_TYPES).map((key) => { 64 64 return { 65 ...WIDGET_TYPES[key], 65 ...{ 66 title: WIDGET_TYPES[key]['title'], 67 icon: WIDGET_TYPES[key]['icon'] 68 }, 66 69 isActive: selected === key, 67 70 onClick: () => onSelect(key), -
embed-mixcloud-advanced/trunk/init.php
r2356361 r2371863 6 6 * Plugin Name: Embed Mixcloud Advanced 7 7 * Description: Gutenberg block for embedding shows from mixcloud.com. There are 6 types of widgets, two color schemes, and the ability to play short audio previews for each widget. 8 * Version: 0.1. 38 * Version: 0.1.4 9 9 * Author: Evhen Veliky 10 10 * Author URI: https://datcoder.com 11 11 * Plugin URI: https://datcoder.com/embed-mixcloud-advanced 12 12 * Requires at least: 5.2 13 * Tested up: 5. 413 * Tested up: 5.5 14 14 * Requires PHP: 5.6 15 15 * Domain Path: /languages -
embed-mixcloud-advanced/trunk/readme.txt
r2356361 r2371863 3 3 Tags: mixcloud, embed, gutenberg 4 4 Requires at least: 5.2 5 Tested up to: 5. 45 Tested up to: 5.5 6 6 Requires PHP: 5.6 7 Stable tag: 0.1. 37 Stable tag: 0.1.4 8 8 License: GPLv2 or later 9 9 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 45 45 == Changelog == 46 46 47 = 0.1.4 = 48 * Fix warnings, tested up to 5.5 49 47 50 = 0.1.3 = 48 51 * Fix translations
Note: See TracChangeset
for help on using the changeset viewer.