UNPKG

storybook-prebuilt

Version:

A prebuilt storybook version for web components

3 lines (2 loc) 2.87 kB
import{c as e,u as t}from"./storybook-prebuilt-3ba63d3f.js";import{a as r,_ as n}from"./storybook-prebuilt-0b3b0ce5.js";import{a as o}from"./storybook-prebuilt-e17bc3b1.js";import{_ as a}from"./storybook-prebuilt-da3f7036.js";import"./storybook-prebuilt-e856152c.js";var i=e((function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t=e.page,r=new f({page:t});return new s.default({transport:r})},t.PostmsgTransport=t.KEY=void 0;var i,s=(i=o)&&i.__esModule?i:{default:i};function u(e){return function(e){if(Array.isArray(e)){for(var t=0,r=new Array(e.length);t<e.length;t++)r[t]=e[t];return r}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function l(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)}}var c="storybook-channel";t.KEY=c;var f=function(){function e(t){if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.config=t,this.buffer=void 0,this.handler=void 0,this.connected=void 0,this.buffer=[],this.handler=null,r.window.addEventListener("message",this.handleEvent.bind(this),!1),"manager"!==t.page&&"preview"!==t.page)throw new Error('postmsg-channel: "config.page" cannot be "'.concat(t.page,'"'))}var t,o,i;return t=e,(o=[{key:"setHandler",value:function(e){var t=this;this.handler=function(){for(var r=arguments.length,n=new Array(r),o=0;o<r;o++)n[o]=arguments[o];e.apply(t,n),!t.connected&&t.getWindow()&&(t.flush(),t.connected=!0)}}},{key:"send",value:function(e,t){var r=this,n=this.getWindow();if(!n)return new Promise((function(t,n){r.buffer.push({event:e,resolve:t,reject:n})}));var o=15,i=!0;t&&"boolean"==typeof t.allowFunction&&(i=t.allowFunction),t&&Number.isInteger(t.depth)&&(o=t.depth);var s=(0,a.stringify)({key:c,event:e},{maxDepth:o,allowFunction:i});return n.postMessage(s,"*"),Promise.resolve(null)}},{key:"flush",value:function(){var e=this,t=this.buffer;this.buffer=[],t.forEach((function(t){e.send(t.event).then(t.resolve).catch(t.reject)}))}},{key:"getWindow",value:function(){if("manager"===this.config.page){var e=r.document.getElementById("storybook-preview-iframe");return e?e.contentWindow:null}return r.window.parent}},{key:"handleEvent",value:function(e){try{var t=e.data,r="string"==typeof t&&(0,a.isJSON)(t)?(0,a.parse)(t):t,o=r.key,i=r.event;o===c&&(n.logger.debug.apply(n.logger,["message arrived at ".concat(this.config.page),i.type].concat(u(i.args))),this.handler(i))}catch(e){n.logger.error(e)}}}])&&l(t.prototype,o),i&&l(t,i),e}();t.PostmsgTransport=f}));t(i);i.PostmsgTransport,i.KEY;export{i as r}; //# sourceMappingURL=storybook-prebuilt-7a45086c.js.map