UNPKG

@stories-js/core

Version:

Stories web components to build stories

5 lines 3.17 kB
/*! * (C) StoriesJS https://storiesjs.org - GPL-2.0 License */ import{e as getRenderingRef,f as forceUpdate}from"./index-49238f69.js";var appendToMap=function(e,t,n){var r=e.get(t);if(!r){e.set(t,[n])}else if(!r.includes(n)){r.push(n)}};var debounce=function(e,t){var n;return function(){var r=[];for(var o=0;o<arguments.length;o++){r[o]=arguments[o]}if(n){clearTimeout(n)}n=setTimeout((function(){n=0;e.apply(void 0,r)}),t)}};var isConnected=function(e){return!("isConnected"in e)||e.isConnected};var cleanupElements=debounce((function(e){for(var t=0,n=e.keys();t<n.length;t++){var r=n[t];e.set(r,e.get(r).filter(isConnected))}}),2e3);var stencilSubscription=function(){if(typeof getRenderingRef!=="function"){return{}}var e=new Map;return{dispose:function(){return e.clear()},get:function(t){var n=getRenderingRef();if(n){appendToMap(e,t,n)}},set:function(t){var n=e.get(t);if(n){e.set(t,n.filter(forceUpdate))}cleanupElements(e)},reset:function(){e.forEach((function(e){return e.forEach(forceUpdate)}));cleanupElements(e)}}};var createObservableMap=function(e,t){if(t===void 0){t=function(e,t){return e!==t}}var n=new Map(Object.entries(e!==null&&e!==void 0?e:{}));var r={dispose:[],get:[],set:[],reset:[]};var o=function(){n=new Map(Object.entries(e!==null&&e!==void 0?e:{}));r.reset.forEach((function(e){return e()}))};var u=function(){r.dispose.forEach((function(e){return e()}));o()};var i=function(e){r.get.forEach((function(t){return t(e)}));return n.get(e)};var a=function(e,o){var u=n.get(e);if(t(o,u,e)){n.set(e,o);r.set.forEach((function(t){return t(e,o,u)}))}};var f=typeof Proxy==="undefined"?{}:new Proxy(e,{get:function(e,t){return i(t)},ownKeys:function(e){return Array.from(n.keys())},getOwnPropertyDescriptor:function(){return{enumerable:true,configurable:true}},has:function(e,t){return n.has(t)},set:function(e,t,n){a(t,n);return true}});var s=function(e,t){r[e].push(t);return function(){removeFromArray(r[e],t)}};var c=function(t,n){var r=s("set",(function(e,r){if(e===t){n(r)}}));var o=s("reset",(function(){return n(e[t])}));return function(){r();o()}};var v=function(){var e=[];for(var t=0;t<arguments.length;t++){e[t]=arguments[t]}var n=e.reduce((function(e,t){if(t.set){e.push(s("set",t.set))}if(t.get){e.push(s("get",t.get))}if(t.reset){e.push(s("reset",t.reset))}if(t.dispose){e.push(s("dispose",t.dispose))}return e}),[]);return function(){return n.forEach((function(e){return e()}))}};var p=function(e){var t=n.get(e);r.set.forEach((function(n){return n(e,t,t)}))};return{state:f,get:i,set:a,on:s,onChange:c,use:v,dispose:u,reset:o,forceUpdate:p}};var removeFromArray=function(e,t){var n=e.indexOf(t);if(n>=0){e[n]=e[e.length-1];e.length--}};var createStore$1=function(e,t){var n=createObservableMap(e,t);n.use(stencilSubscription());return n};function createStore(e){return createStore$1(e)}var store=createStore({stories:{},story:undefined,context:undefined,notifications:[],zoom:1,showNav:true,showToolbar:true,showPanel:true,fullScreen:false,panelPosition:"bottom",singleStory:true,enableShortcuts:true,theme:"",selectedPanel:undefined,addons:{}});var state=store.state;export{state as s}; //# sourceMappingURL=index-f706f0f6.js.map