UNPKG

8.7 kBJavaScriptView Raw
1!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).myra={})}(this,function(e){"use strict";var v;function _(n,o,e,r){var i,t=o.props,d=o.rendition;if(void 0!==d&&(i=d.domRef),void 0===v)try{v={vNode:o,isSvg:r,parentElement:n,hookIndex:0};var a=o.view(t);if(5===a._){if(void 0!==e&&a.compare(o.props,e.props))return o.domRef=i,void(v=void 0);a=a.view(t)}v=void 0,x(n,a,o.rendition,i,r),o.rendition=a,o.domRef=a.domRef,f(o,n,r,!0),f(o,n,r,!1)}catch(e){u(n,o,r,e)}}function f(o,r,i,t){var d=o.effects;if(void 0!==d){var e=function(e){var n=d[e];n.invoke&&(n.sync&&t?(a(n),n.cleanup=n.effect(),n.invoke=!1):t||(setTimeout(function(){try{a(n),n.cleanup=n.effect()}catch(e){u(r,o,i,e)}},0),n.invoke=!1))};for(var n in d)e(n)}}function a(e){if(void 0!==e.cleanup){try{e.cleanup()}catch(e){console.error("An error occured during effect cleanup: "+e)}e.cleanup=void 0}}function u(e,n,o,r){if(null!==e.parentNode){if(void 0===n.errorHandler)throw r;var i=v=void 0;void 0!==n.rendition&&(i=n.rendition.domRef);var t=n.errorHandler(r);x(e,t,n.rendition,i,o),n.rendition=t,n.domRef=t.domRef}}function N(e){if(void 0!==e)if(4===e._){var n=e.effects;if(void 0!==n)for(var o in n)a(n[o]);N(e.rendition)}else if(2===e._||3===e._)for(var r=0,i=e.props.children;r<i.length;r++){N(i[r])}}function x(e,n,o,r,i,t){switch(void 0===i&&(i=!1),void 0===t&&(t=null),null===t&&(t=3===n._&&void 0!==o&&3===o._?4:void 0===o||void 0===o.domRef&&3!==o._&&4!==o._?1:void 0!==o.domRef&&void 0===r?2:n._!==o._||2===n._&&2===o._&&n.tagName!==o.tagName||4===n._&&4===o._&&n.view!==o.view?3:4),"svg"===n.tagName&&(i=!0),t){case 1:case 2:case 3:!function(e,n,o,r,i,t){void 0===i&&(i=!1);void 0===t&&(t=void 0);if(4===n._){_(e,n,void 0,i);var d=n.domRef;void 0!==d&&(1===t?e.appendChild(d):2===t?e.insertBefore(d,o.domRef):3===t&&(4!==o._&&2!==o._&&3!==o._||N(o),void 0!==o.domRef||3!==o._&&4!==o._?e.replaceChild(d,r):y(e,o,d)))}else if(3===n._)for(var a=0,f=n.props.children;a<f.length;a++){void 0!==(h=f[a])&&x(e,h,void 0,void 0,i)}else if(5!==n._){var v=function(e,n){switch(e._){case 2:return n?document.createElementNS("http://www.w3.org/2000/svg",e.tagName):document.createElement(e.tagName);case 1:return document.createTextNode(e.value);case 0:return document.createComment("Nothing")}}(n,i);if(n.domRef=v,1===t)e.appendChild(v);else if(2===t)e.insertBefore(v,o.domRef);else if(4!==o._&&2!==o._&&3!==o._||N(o),void 0!==o.domRef||3!==o._&&4!==o._){if(2===o._)for(var u in o.props)0===u.indexOf("on")&&b(u,r);e.replaceChild(v,r)}else{var l=o;4===o._&&(l=o.rendition),y(e,l,v)}if(2===n._){var c,s=n.props;for(var p in s){"children"!==p&&"key"!==p&&("ref"===p&&(s[p].current=v),void 0!==(c=s[p])&&k(v,p,c))}for(var h,m=0,g=s.children;m<g.length;m++){void 0!==(h=g[m])&&x(v,h,void 0,void 0,i)}}}}(e,n,o,r,i,t);break;case 4:!function(e,n,o,r,i){void 0===i&&(i=!1);switch(n._){case 2:!function(e,n,o){var r,i,t,d=e.props,a=n.props;for(var f in a)"children"!==f&&"key"!==f&&"ref"!==f&&(void 0!==d[f]&&0!==f.indexOf("on")||b(f,o));for(var v in d)"children"!==v&&"key"!==v&&("ref"!==v?(r=d[v],t=o.hasAttribute(v),i="value"===v&&v in o?o.value:a[v],0!==v.indexOf("on")&&r===i&&t||void 0===r?void 0===r&&t&&o.removeAttribute(v):k(o,v,r)):d[v].current=o)}(n,o,r),d(n,o,r,i);break;case 1:r.textContent!==n.value&&(r.textContent=n.value);break;case 4:n.rendition=o.rendition,n.data=o.data,n.effects=o.effects,n.errorHandler=o.errorHandler,n.link=o.link,n.link.vNode=n,_(e,n,o,i);break;case 3:d(n,o,e,i)}void 0===n.domRef&&(n.domRef=r);n!==o&&(o.domRef=void 0)}(e,n,o,r,i)}}function y(e,n,o){for(var r=l(n),i=0;i<r.length;i++){var t=r[i];0===i?e.replaceChild(o,t):e.removeChild(t)}}function d(e,n,o,r){var i;void 0===r&&(r=!1);var t=e.props.children,d=n.props.children,a=d.length-t.length;if(0<t.length){for(var f={},v=[],u=0;u<t.length;u++){null!=(l=(h=t[u]).props)&&void 0!==l.key&&(f[l.key]=void 0)}for(var l,c=!1,u=0;u<d.length;u++){null!=(l=(m=d[u]).props)&&void 0!==l.key&&(l.key in f?(f[l.key]=[m,m.domRef],c=!0):o.contains(m.domRef)&&v.push(m.domRef))}if(!c&&0<Object.keys(f).length){o.innerHTML="",v.length=0;for(u=t.length+a-1;-1<u;u--){(m=d[u]).domRef=void 0,N(m)}}for(var s=o.firstChild,p=null,u=0;u<t.length;u++){var h=t[u],m=d[u],g=void 0,_=void 0;null!==s&&(p=s.nextSibling),void 0!==m&&(g=m.domRef);var y,k,b=h.props;void 0!==b&&0<d.length&&(void 0!==(y=b.key)&&(void 0===(k=f[y])?void 0!==(g=v.shift())&&(_=3):(m=k[0],g=k[1]),void 0!==g&&g!==s&&(null===s?o.appendChild(g):o.contains(g)?(o.replaceChild(g,s),p=g.nextSibling):o.insertBefore(g,s)))),x(o,h,m,g,r,_),s=p}}if(0<a)for(var R,u=t.length+a-1;u>t.length-1;u--){N(m=d[u]),3===m._?w(m,o):4===m._&&3===(null===(i=m.rendition)||void 0===i?void 0:i._)?w(m.rendition,o):void 0!==(R=m.domRef)&&o.contains(R)&&o.removeChild(R)}}function w(e,n){for(var o=0,r=l(e);o<r.length;o++){var i=r[o];n.removeChild(i)}}function l(e){for(var n,o=[],r=0,i=e.props.children;r<i.length;r++){var t=i[r];3===t._?o.push.apply(o,l(t)):4===t._&&3===(null===(n=t.rendition)||void 0===n?void 0:n._)&&o.push.apply(o,l(t.rendition));var d=t.domRef;void 0!==d&&o.push(d)}return o}function k(e,n,o){if("value"!==n||"INPUT"!==e.tagName&&"TEXTAREA"!==e.tagName&&"SELECT"!==e.tagName){if(n in e)try{return void(e[n]=o)}catch(e){}}else e.value!==o&&(e.value=o);var r=typeof o;"function"!=r&&"object"!=r&&e.setAttribute(n,o)}function b(e,n){0===e.indexOf("on")?n[e]=null:n.hasAttribute(e)&&n.removeAttribute(e)}function t(e){var n;return{_:3,props:{children:null!==(n=e.children)&&void 0!==n?n:[],key:e.key}}}function c(e){var n=typeof e;return"string"==n||"number"==n||"boolean"==n||"function"==n?n:void 0===e?"undefined":null===e?"null":{}.toString.call(e).slice(8,-1).toLowerCase()}var s=["string","number","boolean","undefined","null","function"];function p(e,n){var o=c(e),r=c(n);if(0<=s.indexOf(o))return e===n;if("object"===o&&"object"===r){if(e===n)return!0;if(Object.keys(e).length!==Object.keys(n).length)return!1;for(var i in e)if(e.hasOwnProperty(i)&&!p(e[i],n[i]))return!1;return!0}if("array"!==o||"array"!==r)return"date"===o&&"date"===r?e.getTime()===n.getTime():"regexp"===o&&"regexp"===r?e.toString()===n.toString():o===r&&e===n;if(e===n)return!0;if(e.length!==n.length)return!1;for(var t in e)if(!p(e[t],n[t]))return!1;return!0}function o(e,n,o){var r=v,i=r.hookIndex,t=r.vNode;void 0===t.effects&&(t.effects=[]);var d=t.effects[i];void 0===d?t.effects[i]={arg:o,sync:e,invoke:!0,effect:n}:void 0!==o&&p(d.arg,o)||(d.arg=o,d.effect=n,d.invoke=!0),r.hookIndex++}function r(e,n){var o=Object.keys(e);if(o.length!==Object.keys(n).length)return!1;for(var r=0,i=o;r<i.length;r++){var t=i[r];if("children"!==t&&e[t]!==n[t])return!1}return!0}e.Fragment=t,e.define=function(e){return e},e.equal=p,e.h=function(e,n){for(var o=[],r=2;r<arguments.length;r++)o[r-2]=arguments[r];if("nothing"===e||null==e||"boolean"==typeof e)return{_:0};if(null===n&&(n={}),n.children=function e(n){for(var o=[],r=0,i=n;r<i.length;r++){var t=i[r];if(null==t||"boolean"==typeof t)o.push({_:0});else if(Array.isArray(t))for(var d=0,a=e(t);d<a.length;d++){var f=a[d];o.push(f)}else void 0===t._?o.push({_:1,value:t}):o.push(t)}return o}(o),"string"==typeof e)return{_:2,tagName:e,props:n};if(e===t)return e(n);var i={_:4,debounceRender:!1,props:n,view:e};return i.link={vNode:i},i},e.memo=function(n,o){return function(e){return{_:5,compare:o||r,view:n,props:e}}},e.mount=function(e,n){requestAnimationFrame(function(){x(n,e,void 0,void 0)})},e.typeOf=c,e.useEffect=function(e,n){o(!1,e,n)},e.useErrorHandler=function(e){v.vNode.errorHandler=e},e.useLayoutEffect=function(e,n){o(!0,e,n)},e.useMemo=function(e,n){var o,r,i,t=v,d=t.hookIndex,a=t.vNode;return void 0===a.data&&(a.data=[]),void 0===a.data[d]?(o=e(n),a.data[d]=[o,n]):(i=(r=a.data[d])[0],p(r[1],n)?o=i:(o=e(n),a.data[d]=[o,n])),t.hookIndex++,o},e.useRef=function(e){var n,o=v,r=o.hookIndex,i=o.vNode;return void 0===i.data&&(i.data=[]),void 0===i.data[r]&&(n=i.link,i.data[r]={current:e,get node(){return n.vNode.domRef}}),o.hookIndex++,i.data[r]},e.useState=function(e){var o,r,n=v,i=n.hookIndex,t=n.isSvg,d=n.parentElement,a=n.vNode;void 0===a.data&&(a.data=[]),void 0===a.data[i]&&(o=a.link,r=function(e){var n=o.vNode;try{"function"==typeof e&&(e=e(n.data[i][0])),n.data[i]=[e,r],n.debounceRender||requestAnimationFrame(function(){o.vNode.debounceRender=!1,_(d,o.vNode,void 0,t)}),n.debounceRender=!0}catch(e){requestAnimationFrame(function(){u(d,n,t,e)})}return n.data[i][0]},"function"==typeof e&&(e=e()),a.data[i]=[e,r]);var f=a.data[i];return n.hookIndex++,f},Object.defineProperty(e,"__esModule",{value:!0})});