diff --git a/.babelrc b/.babelrc deleted file mode 100644 index 1e2f1ed..0000000 --- a/.babelrc +++ /dev/null @@ -1,16 +0,0 @@ -{ - "comments": true, - "presets": [ - [ - "env", - { - "targets": { - "browsers": [ - "ie 11" - ] - }, - "useBuiltIns": true - } - ] - ] -} diff --git a/.eslintignore b/.eslintignore deleted file mode 100644 index 3675648..0000000 --- a/.eslintignore +++ /dev/null @@ -1,2 +0,0 @@ -node_modules/* -build/* diff --git a/.eslintrc b/.eslintrc deleted file mode 100644 index b7e86f2..0000000 --- a/.eslintrc +++ /dev/null @@ -1,20 +0,0 @@ -{ - "rules": { - "indent": [2,"tab", {"SwitchCase":1}], - "quotes": [2,"single"], - "semi": [2,"never"], - "no-unused-vars": ["warn", { "vars": "all", "args": "none" }], - "no-console": 0 - }, - "env": { - "es6": true, - "browser": true, - "node" : true, - "jquery": true, - }, - "extends": "eslint:recommended", - "parserOptions": { - "sourceType": "module" - }, - "globals":{} -} diff --git a/.eslintrc.js b/.eslintrc.js deleted file mode 100644 index 2efecf0..0000000 --- a/.eslintrc.js +++ /dev/null @@ -1,28 +0,0 @@ -module.exports = { - "parser":"babel-eslint", - "rules": { - "indent": [2,"tab", {"SwitchCase":1}], - "quotes": [2,"single"], - "semi": [2,"never"], - "no-unused-vars": ["warn", { "vars": "all", "args": "none" }], - "no-console": 0 - }, - "env": { - "es6": true, - "browser": true, - "node" : true, - "jquery": true, - }, - "extends": "eslint:recommended", - "parserOptions": { - "sourceType": "module", - "ecmaVersion": 2017, - "ecmaFeatures": { - "experimentalObjectRestSpread": true - } - }, - "globals":{ - "APPCONFIG":true, - "webcomponents":true - } -} diff --git a/.gitignore b/.gitignore index 5742e1a..5bbcce5 100755 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,4 @@ files to ignore *.swp *.out node_modules/ -main.js -index.htm -example.js +*.cache diff --git a/dist/jails.js b/dist/jails.js index 4b9de6c..bea3d04 100644 --- a/dist/jails.js +++ b/dist/jails.js @@ -1 +1,2 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("jails",[],t):"object"==typeof exports?exports.jails=t():e.jails=t()}(self,(function(){return(()=>{var e={17:function(e){var t;t=function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=3)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o=function(){function e(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:"soda-";s(this,e),this._prefix=t}return o(e,[{key:"setDocument",value:function(e){l=e}},{key:"run",value:function(e,t){var n=this,r=l.createElement("div");l.documentMode<9&&(r.style.display="none",l.body.appendChild(r)),r.innerHTML=e,(0,a.nodes2Arr)(r.childNodes).map((function(e){n.compileNode(e,t)}));var o=r.innerHTML;return l.documentMode<9&&l.body.removeChild(r),o}},{key:"prefix",value:function(e){this._prefix=e}},{key:"_getPrefixReg",value:function(){return new RegExp("^"+this._prefix)}},{key:"_getPrefixedDirectiveMap",value:function(){var t=this,n={};return e.sodaDirectives.map((function(e){var r=t._prefix+e.name;n[r]=e})),n}},{key:"_removeSodaMark",value:function(e,t){e.removeAttribute(t)}},{key:"compileNode",value:function(t,n){var o=this,s=this._getPrefixReg(),u=e.sodaDirectives,c=this._getPrefixedDirectiveMap();!function e(t,n){t.nodeType===(t.TEXT_NODE||3)&&(t.nodeValue=t.nodeValue.replace(i.VALUE_OUT_REG,(function(e,t){var i=o.parseSodaExpression(t,n);return"object"===(void 0===i?"undefined":r(i))&&(i=JSON.stringify(i,null,2)),i}))),t.attributes&&t.attributes.length&&(u.map((function(e){var r=e.name,i=e.opt,s=o._prefix+r;if((0,a.exist)(t.getAttribute(s))){var u=t.getAttribute(s);i.link.bind(o)({expression:u,scope:n,el:t,parseSodaExpression:o.parseSodaExpression.bind(o),getValue:o.getValue.bind(o),compileNode:o.compileNode.bind(o),document:l}),o._removeSodaMark(t,s)}})),(0,a.nodes2Arr)(t.attributes).filter((function(e){return!c[e.name]})).map((function(e){if(s.test(e.name)){var r=e.name.replace(s,"");if(r&&(0,a.exist)(e.value)){var i=o.parseComplexExpression(e.value,n);!1!==i&&(0,a.exist)(i)&&t.setAttribute(r,i),o._removeSodaMark(t,e.name)}}else(0,a.exist)(e.value)&&(e.value=o.parseComplexExpression(e.value,n))}))),(0,a.nodes2Arr)(t.childNodes).map((function(t){e(t,n)}))}(t,n)}},{key:"getEvalFunc",value:function(t){return new Function("getValue","sodaFilterMap","return function sodaExp(scope){ return "+t+"}")(this.getValue,e.sodaFilterMap)}},{key:"getValue",value:function(e,t){return i.CONST_REGG.lastIndex=0,t.replace(i.CONST_REGG,(function(t){return void 0===e[t]?t:e[t]})),"true"===t||"false"!==t&&function t(n,r){var o=r.indexOf(".");if(o>-1){var a=r.substr(0,o);return r=r.substr(o+1),void 0!==e[a]&&i.CONST_REG.test(a)&&(a=e[a]),void 0!==n[a]&&null!==n[a]?t(n[a],r):""}return r=r.trim(),void 0!==e[r]&&i.CONST_REG.test(r)&&(r=e[r]),void 0!==n[r]?n[r]:""}(e,t)}},{key:"parseComplexExpression",value:function(e,t){var n=this,r=i.ONLY_VALUE_OUT_REG.exec(e);if(r){var o=r[1];return this.parseSodaExpression(o,t)}return e.replace(i.VALUE_OUT_REG,(function(e,r){return n.parseSodaExpression(r,t)}))}},{key:"parseSodaExpression",value:function(e,t){var n=this;e=(e=e.replace(i.STRING_REG,(function(e,n,r){var o=(0,a.getRandom)();return t[o]=n||r,o}))).replace(i.OR_REG,i.OR_REPLACE).split("|");for(var r=0;r=a)break}this.sodaDirectives.splice(o,0,{name:e,opt:t})}},{key:"discribe",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{compile:!0};this.template[e]={funcOrStr:t,option:n}}},{key:"getTmpl",value:function(e,t){var n=this.template[e],r=n.funcOrStr,o=n.option,i=void 0===o?{}:o;return{template:"function"==typeof r?r.apply(null,t):r,option:i}}}]),e}();u.sodaDirectives=[],u.sodaFilterMap={},u.template={},t.default=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IDENTOR_REG=/[a-zA-Z_\$]+[\w\$]*/g,t.STRING_REG=/"([^"]*)"|'([^']*)'/g,t.NUMBER_REG=/\d+|\d*\.\d+/g,t.OBJECT_REG=/[a-zA-Z_\$]+[\w\$]*(?:\s*\.\s*(?:[a-zA-Z_\$]+[\w\$]*|\d+))*/g,t.OBJECT_REG_NG=/[a-zA-Z_\$]+[\w\$]*(?:\s*\.\s*(?:[a-zA-Z_\$]+[\w\$]*|\d+))*/,t.ATTR_REG=/\[([^\[\]]*)\]/g,t.ATTR_REG_NG=/\[([^\[\]]*)\]/,t.ATTR_REG_DOT=/\.([a-zA-Z_\$]+[\w\$]*)/g,t.NOT_ATTR_REG=/[^\.|]([a-zA-Z_\$]+[\w\$]*)/g,t.OR_REG=/\|\|/g,t.OR_REPLACE="OR_OPERATOR",t.CONST_PRIFIX="_$C$_",t.CONST_REG=/^_\$C\$_/,t.CONST_REGG=/_\$C\$_[^\.]+/g,t.VALUE_OUT_REG=/\{\{([^\}]*)\}\}/g,t.ONLY_VALUE_OUT_REG=/^\{\{([^\}]*)\}\}$/},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.assign=t.nodes2Arr=t.exist=t.getRandom=t.getAttrVarKey=void 0;var r=n(1),o=(t.getAttrVarKey=function(){return r.CONST_PRIFIX+~~(1e6*Math.random())},t.getRandom=function(){return"$$"+~~(1e6*Math.random())},t.exist=function(e){return null!=e&&""!==e&&void 0!==e},t.nodes2Arr=function(e){for(var t=[],n=0;n{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{"use strict";n.r(r),n.d(r,{default:()=>M});var e,t={};n.r(t),n.d(t,{publish:()=>b,subscribe:()=>g,unsubscribe:()=>y});var o="undefined"==typeof document?void 0:document,i=!!o&&"content"in o.createElement("template"),a=!!o&&o.createRange&&"createContextualFragment"in o.createRange();function s(e,t){var n,r,o=e.nodeName,i=t.nodeName;return o===i||(n=o.charCodeAt(0),r=i.charCodeAt(0),n<=90&&r>=97?o===i.toUpperCase():r<=90&&n>=97&&i===o.toUpperCase())}function l(e,t,n){e[n]!==t[n]&&(e[n]=t[n],e[n]?e.setAttribute(n,""):e.removeAttribute(n))}var u={OPTION:function(e,t){var n=e.parentNode;if(n){var r=n.nodeName.toUpperCase();"OPTGROUP"===r&&(r=(n=n.parentNode)&&n.nodeName.toUpperCase()),"SELECT"!==r||n.hasAttribute("multiple")||(e.hasAttribute("selected")&&!t.selected&&(e.setAttribute("selected","selected"),e.removeAttribute("selected")),n.selectedIndex=-1)}l(e,t,"selected")},INPUT:function(e,t){l(e,t,"checked"),l(e,t,"disabled"),e.value!==t.value&&(e.value=t.value),t.hasAttribute("value")||e.removeAttribute("value")},TEXTAREA:function(e,t){var n=t.value;e.value!==n&&(e.value=n);var r=e.firstChild;if(r){var o=r.nodeValue;if(o==n||!n&&o==e.placeholder)return;r.nodeValue=n}},SELECT:function(e,t){if(!t.hasAttribute("multiple")){for(var n,r,o=-1,i=0,a=e.firstChild;a;)if("OPTGROUP"===(r=a.nodeName&&a.nodeName.toUpperCase()))a=(n=a).firstChild;else{if("OPTION"===r){if(a.hasAttribute("selected")){o=i;break}i++}!(a=a.nextSibling)&&n&&(a=n.nextSibling,n=null)}e.selectedIndex=o}}};function c(){}function d(e){if(e)return e.getAttribute&&e.getAttribute("id")||e.id}const f=function(t,n,r){if(r||(r={}),"string"==typeof n)if("#document"===t.nodeName||"HTML"===t.nodeName||"BODY"===t.nodeName){var l=n;(n=o.createElement("html")).innerHTML=l}else f=(f=n).trim(),n=i?function(e){var t=o.createElement("template");return t.innerHTML=e,t.content.childNodes[0]}(f):a?function(t){return e||(e=o.createRange()).selectNode(o.body),e.createContextualFragment(t).childNodes[0]}(f):function(e){var t=o.createElement("body");return t.innerHTML=e,t.childNodes[0]}(f);var f,p=r.getNodeKey||d,v=r.onBeforeNodeAdded||c,m=r.onNodeAdded||c,h=r.onBeforeElUpdated||c,_=r.onElUpdated||c,b=r.onBeforeNodeDiscarded||c,g=r.onNodeDiscarded||c,y=r.onBeforeElChildrenUpdated||c,E=!0===r.childrenOnly,x=Object.create(null),N=[];function A(e){N.push(e)}function T(e,t){if(1===e.nodeType)for(var n=e.firstChild;n;){var r=void 0;t&&(r=p(n))?A(r):(g(n),n.firstChild&&T(n,t)),n=n.nextSibling}}function O(e,t,n){!1!==b(e)&&(t&&t.removeChild(e),g(e),T(e,n))}function S(e){m(e);for(var t=e.firstChild;t;){var n=t.nextSibling,r=p(t);if(r){var o=x[r];o&&s(t,o)?(t.parentNode.replaceChild(o,t),R(o,t)):S(t)}else S(t);t=n}}function R(e,t,n){var r=p(t);if(r&&delete x[r],!n){if(!1===h(e,t))return;if(function(e,t){var n,r,o,i,a=t.attributes;if(11!==t.nodeType&&11!==e.nodeType){for(var s=a.length-1;s>=0;s--)r=(n=a[s]).name,o=n.namespaceURI,i=n.value,o?(r=n.localName||r,e.getAttributeNS(o,r)!==i&&("xmlns"===n.prefix&&(r=n.name),e.setAttributeNS(o,r,i))):e.getAttribute(r)!==i&&e.setAttribute(r,i);for(var l=e.attributes,u=l.length-1;u>=0;u--)r=(n=l[u]).name,(o=n.namespaceURI)?(r=n.localName||r,t.hasAttributeNS(o,r)||e.removeAttributeNS(o,r)):t.hasAttribute(r)||e.removeAttribute(r)}}(e,t),_(e),!1===y(e,t))return}"TEXTAREA"!==e.nodeName?function(e,t){var n,r,i,a,l,c=t.firstChild,d=e.firstChild;e:for(;c;){for(a=c.nextSibling,n=p(c);d;){if(i=d.nextSibling,c.isSameNode&&c.isSameNode(d)){c=a,d=i;continue e}r=p(d);var f=d.nodeType,m=void 0;if(f===c.nodeType&&(1===f?(n?n!==r&&((l=x[n])?i===l?m=!1:(e.insertBefore(l,d),r?A(r):O(d,e,!0),d=l):m=!1):r&&(m=!1),(m=!1!==m&&s(d,c))&&R(d,c)):3!==f&&8!=f||(m=!0,d.nodeValue!==c.nodeValue&&(d.nodeValue=c.nodeValue))),m){c=a,d=i;continue e}r?A(r):O(d,e,!0),d=i}if(n&&(l=x[n])&&s(l,c))e.appendChild(l),R(l,c);else{var h=v(c);!1!==h&&(h&&(c=h),c.actualize&&(c=c.actualize(e.ownerDocument||o)),e.appendChild(c),S(c))}c=a,d=i}!function(e,t,n){for(;t;){var r=t.nextSibling;(n=p(t))?A(n):O(t,e,!0),t=r}}(e,d,r);var _=u[e.nodeName];_&&_(e,t)}(e,t):u.TEXTAREA(e,t)}!function e(t){if(1===t.nodeType||11===t.nodeType)for(var n=t.firstChild;n;){var r=p(n);r&&(x[r]=n),e(n),n=n.nextSibling}}(t);var C,M,w=t,G=w.nodeType,j=n.nodeType;if(!E)if(1===G)1===j?s(t,n)||(g(t),w=function(e,t){for(var n=e.firstChild;n;){var r=n.nextSibling;t.appendChild(n),n=r}return t}(t,(C=n.nodeName,(M=n.namespaceURI)&&"http://www.w3.org/1999/xhtml"!==M?o.createElementNS(M,C):o.createElement(C)))):w=n;else if(3===G||8===G){if(j===G)return w.nodeValue!==n.nodeValue&&(w.nodeValue=n.nodeValue),w;w=n}if(w===n)g(t);else{if(n.isSameNode&&n.isSameNode(w))return;if(R(w,n,E),N)for(var k=0,P=N.length;k{(requestAnimationFrame||setTimeout)(e,1e3/60)},h={},_={},b=(e,t)=>{_[e]=Object.assign({},_[e],t),h[e]&&h[e].forEach((e=>e(t)))},g=(e,t)=>{h[e]=h[e]||[],h[e].push(t),e in _&&t(_[e])},y=e=>{h[e.name]=(h[e.name]||[]).filter((t=>t!=e.method)),h[e.name].length||(delete h[e.name],delete _[e.name])},E="CustomEvent"in window&&"function"==typeof window.CustomEvent?(e,t)=>new CustomEvent(e,t):(e,t)=>{const n=document.createEvent("CustomEvent");return n.initCustomEvent(e,!0,!0,t),n},x=(e,t)=>function(n){const r=this,o=n.detail||{};e.__events[t].forEach((e=>{e.handler.apply(r,[n].concat(o.args))}))},N=(e,t)=>{e.__events[t]&&e.__events[t].listener&&(e.removeEventListener(t,e.__events[t].listener,"focus"==t||"blur"==t||"mouseenter"==t||"mouseleave"==t),delete e.__events[t])},A=(e,t,n)=>function(r){const o=this,i=r.detail||{};let a=r.target;for(;a&&(a.matches(t)&&(r.delegateTarget=a,n.apply(o,[r].concat(i.args))),a!==e);)a=a.parentNode},T=(e,t,n)=>{e.dispatchEvent(E(t,{bubbles:!0,detail:n}))};var O;(O=v()).prefix("v-"),O.directive("repeat",{priority:10,link({scope:e,el:t,expression:n,getValue:r,compileNode:o}){let i,a,s;const l=n.replace(/\s+by\s+([^\s]+)$/,((e,t)=>(t&&(s=(t||"").trim()),""))),u=/([^\s]+)\s+in\s+([^\s]+)|\(([^,]+)\s*,\s*([^)]+)\)\s+in\s+([^\s]+)/.exec(l);if(!u)return;if(u[1]&&u[2]){if(i=(u[1]||"").trim(),a=(u[2]||"").trim(),!i||!a)return}else u[3]&&u[4]&&u[5]&&(s=(u[3]||"").trim(),i=(u[4]||"").trim(),a=(u[5]||"").trim());s=s||"$index";const c=r(e,a)||[],d=n=>{const r=t.cloneNode(!0),a=Object.create(e);a[s]=n,a[i]=c[n],r.removeAttribute(`${this._prefix}repeat`),t.parentNode.insertBefore(r,t),Array.from(r.querySelectorAll("[data-component]")).forEach((e=>e.setAttribute("initialState",JSON.stringify(a)))),o(r,a)};if("length"in c)for(var f=0;f{e.parentNode.replaceChild(e.content,e)})),w.start(),w.observe()},register(e,t,n={}){C[e]={name:e,module:t,dependencies:n}}},w={start(){w.scan(document.body,G)},scan(e,t){if(1===e.nodeType){const n=Array.from(e.querySelectorAll("[data-component]")),r=e.dataset.component?[e].concat(n):n;r.length&&r.reverse().forEach(t)}},observe(){new MutationObserver((e=>e.forEach((e=>{"childList"===e.type&&(e.addedNodes.length?Array.from(e.addedNodes).forEach((e=>w.scan(e,G))):e.removedNodes.length&&Array.from(e.removedNodes).forEach((e=>w.scan(e,w.remove))))})))).observe(document.body,{childList:!0,subtree:!0})},remove(e){e.__instance__&&e.__instance__.dispose()}},G=e=>{let n,r,o=[];e.getAttribute("tplid")?(n=e.getAttribute("tplid"),r=R[n]):(n="xxxxxxxx".replace(/[xy]/g,(e=>{const t=8*Math.random()|0;return("x"==e?t:3&t|8).toString(8)})),e.setAttribute("tplid",n),R[n]=k(e.outerHTML),r=R[n]);const i={tplid:n,element:e,template:r,instances:{},destroyers:[],promises:[],view:e=>e,parentUpdate:e=>null,model:Object.assign({},JSON.parse(e.getAttribute("initialState"))),dispose(){i.promises.length?Promise.all(i.promises).then((e=>this.destroyers.forEach((e=>e(i))))):this.destroyers.forEach((e=>e(i)))},update(t,n=!1){document.body.contains(e)&&(o.push(t),m((t=>{if(o.length){const t={};o.forEach((e=>Object.assign(t,e))),o=[],S=P(t),i.model=Object.assign({global:S},i.model,t),n&&i.parentUpdate(i.model);const r=v()(i.template,i.view(i.model));f(e,r,{getNodeKey:e=>!(1!==e.nodeType||!e.dataset.tplid)&&(e.dataset.key||e.dataset.tplid),onNodeDiscarded:e=>(w.scan(e,w.remove),!0),onBeforeElUpdated:j(e),onBeforeElChildrenUpdated:j(e)}),Array.from(e.querySelectorAll("[data-component]")).forEach((e=>{if(!e.__instance__)return;const{global:t,parent:n,...r}=i.model,o=e.getAttribute("initialState"),a=o?JSON.parse(o):{},s=Object.assign(a,{parent:r,global:S});m((t=>e.__instance__.update(s,!0)))}))}})))}};e.__instance__=i,e.dataset.component.split(/\s/).forEach((n=>{const r=C[n];if(!r)return void console.warn(`Jails - Module ${n} not registered`);const{module:o,dependencies:a}=r;i.model=Object.assign({},o.model,i.model);const s=function({name:e,element:t,dependencies:n,Pubsub:r,ElementInterface:o}){const i=[];let a,s=[],l=new Promise((e=>a=e));const u={name:e,dependencies:n,elm:t,publish:r.publish,unsubscribe:r.unsubscribe,__initialize(){a(u)},main(e){l.then((t=>e().forEach((e=>e(u))))).catch((e=>console.error(e)))},expose(t){o.instances[e].methods=t},state:{set(e){if(e.constructor===Function){const t=o.model;e(t),o.update(t)}else o.update(e);return s.forEach((e=>e(o.model))),new Promise((e=>m((t=>m(e)))))},get:()=>o.model,subscribe(e){s.push(e)},unsubscribe(e){s=s.filter((t=>t!==e))}},destroy(e){o.destroyers.push(e)},on(e,n,r){((e,t,n,r)=>{if(e.__events=e.__events||{},e.__events[t]=e.__events[t]||[],!e.__events[t].length){const n=x(e,t);e.addEventListener(t,n,"focus"==t||"blur"==t||"mouseenter"==t||"mouseleave"==t),e.__events[t].listener=n}n.call?e.__events[t].push({handler:n,callback:n}):e.__events[t].push({handler:A(e,n,r),callback:r})})(t,e,n,r)},off(e,n){((e,t,n)=>{if(n&&e.__events[t]&&e.__events[t].length){var r=e.__events[t];e.__events[t]=e.__events[t].filter((function(e){return e.callback!=n})),e.__events[t].listener=r.listener,e.__events[t].length||N(e,t)}else N(e,t)})(t,e,n)},trigger(e,n,r){n.constructor===String?T(t.querySelector(n),e,{args:r}):T(t,e,{args:n})},emit(e,n){const r=Array.prototype.slice.call(arguments);T(t,r.shift(),{args:r})},update(e){o.parentUpdate=e},get:(e,n)=>function(){m((r=>{const o=Array.prototype.slice.call(arguments),i=o.shift(),a=`[data-component*=${e}]`;if(n=n?a+n:a,Array.from(t.querySelectorAll(n)).forEach((t=>{const n=t.__instance__.instances[e];n&&i in n.methods&&n.methods[i].apply(null,o)})),t.matches(n)){const n=t.__instance__.instances[e];n&&i in n.methods&&n.methods[i].apply(null,o)}}))},subscribe(e,t){i.push({name:e,method:t}),r.subscribe(e,t)}};return u}({name:n,element:e,dependencies:a,Pubsub:t,ElementInterface:i}),l=o.default(s);l&&l.then&&i.promises.push(l),s.__initialize(),i.view=o.view||i.view,i.instances[n]={methods:{}}})),i.update()},j=e=>(t,n)=>{if(t.isEqualNode(n))return!1;if(1==t.nodeType){if("static"in t.dataset)return!1;if(t!==e&&t.dataset.component)return!1}return!0},k=e=>{const t=(e=>e.replace(/|<\/template>/g,""))(e),n=document.createElement("div");return n.innerHTML=t,Array.from(n.querySelectorAll("[data-component]")).forEach((e=>{const t=e.getAttribute("tplid"),n=R[t];n&&(e.outerHTML=n)})),n.innerHTML},P=e=>(Object.assign(S,e),delete S.parent,delete S.global,S)})(),r})()})); \ No newline at end of file +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("jails",[],t):"object"==typeof exports?exports.jails=t():e.jails=t()}(self,(function(){return(()=>{var e={492:(e,t,n)=>{"use strict";var r;n.r(t),n.d(t,{default:()=>f});var i="undefined"==typeof document?void 0:document,o=!!i&&"content"in i.createElement("template"),a=!!i&&i.createRange&&"createContextualFragment"in i.createRange();function s(e,t){var n,r,i=e.nodeName,o=t.nodeName;return i===o||(n=i.charCodeAt(0),r=o.charCodeAt(0),n<=90&&r>=97?i===o.toUpperCase():r<=90&&n>=97&&o===i.toUpperCase())}function u(e,t,n){e[n]!==t[n]&&(e[n]=t[n],e[n]?e.setAttribute(n,""):e.removeAttribute(n))}var l={OPTION:function(e,t){var n=e.parentNode;if(n){var r=n.nodeName.toUpperCase();"OPTGROUP"===r&&(r=(n=n.parentNode)&&n.nodeName.toUpperCase()),"SELECT"!==r||n.hasAttribute("multiple")||(e.hasAttribute("selected")&&!t.selected&&(e.setAttribute("selected","selected"),e.removeAttribute("selected")),n.selectedIndex=-1)}u(e,t,"selected")},INPUT:function(e,t){u(e,t,"checked"),u(e,t,"disabled"),e.value!==t.value&&(e.value=t.value),t.hasAttribute("value")||e.removeAttribute("value")},TEXTAREA:function(e,t){var n=t.value;e.value!==n&&(e.value=n);var r=e.firstChild;if(r){var i=r.nodeValue;if(i==n||!n&&i==e.placeholder)return;r.nodeValue=n}},SELECT:function(e,t){if(!t.hasAttribute("multiple")){for(var n,r,i=-1,o=0,a=e.firstChild;a;)if("OPTGROUP"===(r=a.nodeName&&a.nodeName.toUpperCase()))a=(n=a).firstChild;else{if("OPTION"===r){if(a.hasAttribute("selected")){i=o;break}o++}!(a=a.nextSibling)&&n&&(a=n.nextSibling,n=null)}e.selectedIndex=i}}};function c(){}function d(e){if(e)return e.getAttribute&&e.getAttribute("id")||e.id}const f=function(e,t,n){if(n||(n={}),"string"==typeof t)if("#document"===e.nodeName||"HTML"===e.nodeName||"BODY"===e.nodeName){var u=t;(t=i.createElement("html")).innerHTML=u}else f=(f=t).trim(),t=o?function(e){var t=i.createElement("template");return t.innerHTML=e,t.content.childNodes[0]}(f):a?function(e){return r||(r=i.createRange()).selectNode(i.body),r.createContextualFragment(e).childNodes[0]}(f):function(e){var t=i.createElement("body");return t.innerHTML=e,t.childNodes[0]}(f);var f,p=n.getNodeKey||d,v=n.onBeforeNodeAdded||c,m=n.onNodeAdded||c,_=n.onBeforeElUpdated||c,h=n.onElUpdated||c,b=n.onBeforeNodeDiscarded||c,y=n.onNodeDiscarded||c,g=n.onBeforeElChildrenUpdated||c,E=!0===n.childrenOnly,x=Object.create(null),N=[];function T(e){N.push(e)}function O(e,t){if(1===e.nodeType)for(var n=e.firstChild;n;){var r=void 0;t&&(r=p(n))?T(r):(y(n),n.firstChild&&O(n,t)),n=n.nextSibling}}function A(e,t,n){!1!==b(e)&&(t&&t.removeChild(e),y(e),O(e,n))}function S(e){m(e);for(var t=e.firstChild;t;){var n=t.nextSibling,r=p(t);if(r){var i=x[r];i&&s(t,i)?(t.parentNode.replaceChild(i,t),R(i,t)):S(t)}else S(t);t=n}}function R(e,t,n){var r=p(t);if(r&&delete x[r],!n){if(!1===_(e,t))return;if(function(e,t){var n,r,i,o,a=t.attributes;if(11!==t.nodeType&&11!==e.nodeType){for(var s=a.length-1;s>=0;s--)r=(n=a[s]).name,i=n.namespaceURI,o=n.value,i?(r=n.localName||r,e.getAttributeNS(i,r)!==o&&("xmlns"===n.prefix&&(r=n.name),e.setAttributeNS(i,r,o))):e.getAttribute(r)!==o&&e.setAttribute(r,o);for(var u=e.attributes,l=u.length-1;l>=0;l--)r=(n=u[l]).name,(i=n.namespaceURI)?(r=n.localName||r,t.hasAttributeNS(i,r)||e.removeAttributeNS(i,r)):t.hasAttribute(r)||e.removeAttribute(r)}}(e,t),h(e),!1===g(e,t))return}"TEXTAREA"!==e.nodeName?function(e,t){var n,r,o,a,u,c=t.firstChild,d=e.firstChild;e:for(;c;){for(a=c.nextSibling,n=p(c);d;){if(o=d.nextSibling,c.isSameNode&&c.isSameNode(d)){c=a,d=o;continue e}r=p(d);var f=d.nodeType,m=void 0;if(f===c.nodeType&&(1===f?(n?n!==r&&((u=x[n])?o===u?m=!1:(e.insertBefore(u,d),r?T(r):A(d,e,!0),d=u):m=!1):r&&(m=!1),(m=!1!==m&&s(d,c))&&R(d,c)):3!==f&&8!=f||(m=!0,d.nodeValue!==c.nodeValue&&(d.nodeValue=c.nodeValue))),m){c=a,d=o;continue e}r?T(r):A(d,e,!0),d=o}if(n&&(u=x[n])&&s(u,c))e.appendChild(u),R(u,c);else{var _=v(c);!1!==_&&(_&&(c=_),c.actualize&&(c=c.actualize(e.ownerDocument||i)),e.appendChild(c),S(c))}c=a,d=o}!function(e,t,n){for(;t;){var r=t.nextSibling;(n=p(t))?T(n):A(t,e,!0),t=r}}(e,d,r);var h=l[e.nodeName];h&&h(e,t)}(e,t):l.TEXTAREA(e,t)}!function e(t){if(1===t.nodeType||11===t.nodeType)for(var n=t.firstChild;n;){var r=p(n);r&&(x[r]=n),e(n),n=n.nextSibling}}(e);var C,M,w=e,j=w.nodeType,P=t.nodeType;if(!E)if(1===j)1===P?s(e,t)||(y(e),w=function(e,t){for(var n=e.firstChild;n;){var r=n.nextSibling;t.appendChild(n),n=r}return t}(e,(C=t.nodeName,(M=t.namespaceURI)&&"http://www.w3.org/1999/xhtml"!==M?i.createElementNS(M,C):i.createElement(C)))):w=t;else if(3===j||8===j){if(P===j)return w.nodeValue!==t.nodeValue&&(w.nodeValue=t.nodeValue),w;w=t}if(w===t)y(e);else{if(t.isSameNode&&t.isSameNode(w))return;if(R(w,t,E),N)for(var G=0,k=N.length;G0&&void 0!==arguments[0]?arguments[0]:"soda-";s(this,e),this._prefix=t}return i(e,[{key:"setDocument",value:function(e){u=e}},{key:"run",value:function(e,t){var n=this,r=u.createElement("div");u.documentMode<9&&(r.style.display="none",u.body.appendChild(r)),r.innerHTML=e,(0,a.nodes2Arr)(r.childNodes).map((function(e){n.compileNode(e,t)}));var i=r.innerHTML;return u.documentMode<9&&u.body.removeChild(r),i}},{key:"prefix",value:function(e){this._prefix=e}},{key:"_getPrefixReg",value:function(){return new RegExp("^"+this._prefix)}},{key:"_getPrefixedDirectiveMap",value:function(){var t=this,n={};return e.sodaDirectives.map((function(e){var r=t._prefix+e.name;n[r]=e})),n}},{key:"_removeSodaMark",value:function(e,t){e.removeAttribute(t)}},{key:"compileNode",value:function(t,n){var i=this,s=this._getPrefixReg(),l=e.sodaDirectives,c=this._getPrefixedDirectiveMap();!function e(t,n){t.nodeType===(t.TEXT_NODE||3)&&(t.nodeValue=t.nodeValue.replace(o.VALUE_OUT_REG,(function(e,t){var o=i.parseSodaExpression(t,n);return"object"===(void 0===o?"undefined":r(o))&&(o=JSON.stringify(o,null,2)),o}))),t.attributes&&t.attributes.length&&(l.map((function(e){var r=e.name,o=e.opt,s=i._prefix+r;if((0,a.exist)(t.getAttribute(s))){var l=t.getAttribute(s);o.link.bind(i)({expression:l,scope:n,el:t,parseSodaExpression:i.parseSodaExpression.bind(i),getValue:i.getValue.bind(i),compileNode:i.compileNode.bind(i),document:u}),i._removeSodaMark(t,s)}})),(0,a.nodes2Arr)(t.attributes).filter((function(e){return!c[e.name]})).map((function(e){if(s.test(e.name)){var r=e.name.replace(s,"");if(r&&(0,a.exist)(e.value)){var o=i.parseComplexExpression(e.value,n);!1!==o&&(0,a.exist)(o)&&t.setAttribute(r,o),i._removeSodaMark(t,e.name)}}else(0,a.exist)(e.value)&&(e.value=i.parseComplexExpression(e.value,n))}))),(0,a.nodes2Arr)(t.childNodes).map((function(t){e(t,n)}))}(t,n)}},{key:"getEvalFunc",value:function(t){return new Function("getValue","sodaFilterMap","return function sodaExp(scope){ return "+t+"}")(this.getValue,e.sodaFilterMap)}},{key:"getValue",value:function(e,t){return o.CONST_REGG.lastIndex=0,t.replace(o.CONST_REGG,(function(t){return void 0===e[t]?t:e[t]})),"true"===t||"false"!==t&&function t(n,r){var i=r.indexOf(".");if(i>-1){var a=r.substr(0,i);return r=r.substr(i+1),void 0!==e[a]&&o.CONST_REG.test(a)&&(a=e[a]),void 0!==n[a]&&null!==n[a]?t(n[a],r):""}return r=r.trim(),void 0!==e[r]&&o.CONST_REG.test(r)&&(r=e[r]),void 0!==n[r]?n[r]:""}(e,t)}},{key:"parseComplexExpression",value:function(e,t){var n=this,r=o.ONLY_VALUE_OUT_REG.exec(e);if(r){var i=r[1];return this.parseSodaExpression(i,t)}return e.replace(o.VALUE_OUT_REG,(function(e,r){return n.parseSodaExpression(r,t)}))}},{key:"parseSodaExpression",value:function(e,t){var n=this;e=(e=e.replace(o.STRING_REG,(function(e,n,r){var i=(0,a.getRandom)();return t[i]=n||r,i}))).replace(o.OR_REG,o.OR_REPLACE).split("|");for(var r=0;r=a)break}this.sodaDirectives.splice(i,0,{name:e,opt:t})}},{key:"discribe",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{compile:!0};this.template[e]={funcOrStr:t,option:n}}},{key:"getTmpl",value:function(e,t){var n=this.template[e],r=n.funcOrStr,i=n.option,o=void 0===i?{}:i;return{template:"function"==typeof r?r.apply(null,t):r,option:o}}}]),e}();l.sodaDirectives=[],l.sodaFilterMap={},l.template={},t.default=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IDENTOR_REG=/[a-zA-Z_\$]+[\w\$]*/g,t.STRING_REG=/"([^"]*)"|'([^']*)'/g,t.NUMBER_REG=/\d+|\d*\.\d+/g,t.OBJECT_REG=/[a-zA-Z_\$]+[\w\$]*(?:\s*\.\s*(?:[a-zA-Z_\$]+[\w\$]*|\d+))*/g,t.OBJECT_REG_NG=/[a-zA-Z_\$]+[\w\$]*(?:\s*\.\s*(?:[a-zA-Z_\$]+[\w\$]*|\d+))*/,t.ATTR_REG=/\[([^\[\]]*)\]/g,t.ATTR_REG_NG=/\[([^\[\]]*)\]/,t.ATTR_REG_DOT=/\.([a-zA-Z_\$]+[\w\$]*)/g,t.NOT_ATTR_REG=/[^\.|]([a-zA-Z_\$]+[\w\$]*)/g,t.OR_REG=/\|\|/g,t.OR_REPLACE="OR_OPERATOR",t.CONST_PRIFIX="_$C$_",t.CONST_REG=/^_\$C\$_/,t.CONST_REGG=/_\$C\$_[^\.]+/g,t.VALUE_OUT_REG=/\{\{([^\}]*)\}\}/g,t.ONLY_VALUE_OUT_REG=/^\{\{([^\}]*)\}\}$/},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.assign=t.nodes2Arr=t.exist=t.getRandom=t.getAttrVarKey=void 0;var r=n(1),i=(t.getAttrVarKey=function(){return r.CONST_PRIFIX+~~(1e6*Math.random())},t.getRandom=function(){return"$$"+~~(1e6*Math.random())},t.exist=function(e){return null!=e&&""!==e&&void 0!==e},t.nodes2Arr=function(e){for(var t=[],n=0;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Component=void 0;var r=n(436),i=n(242),o=n(624);t.Component=function(e){var t,n=e.name,a=e.element,s=e.dependencies,u=e.ElementInterface,l=[],c=[],d=new Promise((function(e){return t=e})),f={name:n,dependencies:s,elm:a,publish:r.publish,unsubscribe:r.unsubscribe,__initialize:function(){t(f)},main:function(e){d.then((function(t){return e().forEach((function(e){return e(f)}))})).catch((function(e){return console.error(e)}))},expose:function(e){u.instances[n].methods=e},state:{set:function(e){if(e.constructor===Function){var t=u.model;e(t),u.update(t)}else u.update(e);return c.forEach((function(e){return e(u.model)})),new Promise((function(e){return(0,o.rAF)((function(t){return(0,o.rAF)(e)}))}))},get:function(){return u.model},subscribe:function(e){c.push(e)},unsubscribe:function(e){c=c.filter((function(t){return t!==e}))}},destroy:function(e){u.destroyers.push(e)},on:function(e,t,n){(0,i.on)(a,e,t,n)},off:function(e,t){(0,i.off)(a,e,t)},trigger:function(e,t,n){t.constructor===String?(0,i.trigger)(a.querySelector(t),e,{args:n}):(0,i.trigger)(a,e,{args:t})},emit:function(e,t){var n=Array.prototype.slice.call(arguments);(0,i.trigger)(a,n.shift(),{args:n})},update:function(e){u.parentUpdate=e},get:function(e,t){return function(){(0,o.rAF)((function(n){var r=Array.prototype.slice.call(arguments),i=r.shift(),o="[data-component*=".concat(e,"]");if(t=t?o+t:o,Array.from(a.querySelectorAll(t)).forEach((function(t){var n=t.__instance__.instances[e];n&&i in n.methods&&n.methods[i].apply(null,r)})),a.matches(t)){var s=a.__instance__.instances[e];s&&i in s.methods&&s.methods[i].apply(null,r)}}))}},subscribe:function(e,t){l.push({name:e,method:t}),r.subscribe(e,t)}};return f}},491:function(e,t,n){"use strict";var r=this&&this.__rest||function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Scanner=void 0,t.Scanner={scan:function(e,t){if(1===e.nodeType){var n=Array.from(e.querySelectorAll("[data-component]")),r=e.dataset.component?[e].concat(n):n;r.length&&r.reverse().forEach(t)}},observe:function(e,n,r){new MutationObserver((function(e){return e.forEach((function(e){"childList"===e.type&&(e.addedNodes.length?Array.from(e.addedNodes).forEach((function(e){return t.Scanner.scan(e,n)})):e.removedNodes.length&&Array.from(e.removedNodes).forEach((function(e){return t.Scanner.scan(e,r)})))}))})).observe(e,{childList:!0,subtree:!0})}}},539:(e,t,n)=>{"use strict";n.r(t),n.d(t,{setSodaConfig:()=>o});var r=n(17),i=n.n(r);const o=()=>(i().prefix("v-"),i().directive("repeat",{priority:10,link({scope:e,el:t,expression:n,getValue:r,compileNode:i}){let o,a,s;const u=n.replace(/\s+by\s+([^\s]+)$/,((e,t)=>(t&&(s=(t||"").trim()),""))),l=/([^\s]+)\s+in\s+([^\s]+)|\(([^,]+)\s*,\s*([^)]+)\)\s+in\s+([^\s]+)/.exec(u);if(!l)return;if(l[1]&&l[2]){if(o=(l[1]||"").trim(),a=(l[2]||"").trim(),!o||!a)return}else l[3]&&l[4]&&l[5]&&(s=(l[3]||"").trim(),o=(l[4]||"").trim(),a=(l[5]||"").trim());s=s||"$index";const c=r(e,a)||[],d=n=>{const r=t.cloneNode(!0),a=Object.create(e);a[s]=n,a[o]=c[n],r.removeAttribute(`${this._prefix}repeat`),t.parentNode.insertBefore(r,t),Array.from(r.querySelectorAll("[data-component]")).forEach((e=>e.setAttribute("data-initial-state",JSON.stringify(a)))),i(r,a)};if("length"in c)for(var f=0;f{"use strict";n.r(t),n.d(t,{on:()=>s,off:()=>u,trigger:()=>l});const r="CustomEvent"in window&&"function"==typeof window.CustomEvent?(e,t)=>new CustomEvent(e,t):(e,t)=>{const n=document.createEvent("CustomEvent");return n.initCustomEvent(e,!0,!0,t),n},i=(e,t)=>function(n){const r=this,i=n.detail||{};e.__events[t].forEach((e=>{e.handler.apply(r,[n].concat(i.args))}))},o=(e,t)=>{e.__events[t]&&e.__events[t].listener&&(e.removeEventListener(t,e.__events[t].listener,"focus"==t||"blur"==t||"mouseenter"==t||"mouseleave"==t),delete e.__events[t])},a=(e,t,n)=>function(r){const i=this,o=r.detail||{};let a=r.target;for(;a&&(a.matches(t)&&(r.delegateTarget=a,n.apply(i,[r].concat(o.args))),a!==e);)a=a.parentNode},s=(e,t,n,r)=>{if(e.__events=e.__events||{},e.__events[t]=e.__events[t]||[],!e.__events[t].length){const n=i(e,t);e.addEventListener(t,n,"focus"==t||"blur"==t||"mouseenter"==t||"mouseleave"==t),e.__events[t].listener=n}n.call?e.__events[t].push({handler:n,callback:n}):e.__events[t].push({handler:a(e,n,r),callback:r})},u=(e,t,n)=>{if(n&&e.__events[t]&&e.__events[t].length){var r=e.__events[t];e.__events[t]=e.__events[t].filter((function(e){return e.callback!=n})),e.__events[t].listener=r.listener,e.__events[t].length||o(e,t)}else o(e,t)},l=(e,t,n)=>{e.dispatchEvent(r(t,{bubbles:!0,detail:n}))}},624:(e,t,n)=>{"use strict";n.r(t),n.d(t,{rAF:()=>r,uuid:()=>i,stripTemplateTag:()=>o,dup:()=>a,createTemplate:()=>s});const r=e=>{(requestAnimationFrame||setTimeout)(e,1e3/60)},i=()=>"xxxxxxxx".replace(/[xy]/g,(e=>{const t=8*Math.random()|0;return("x"==e?t:3&t|8).toString(8)})),o=e=>{Array.from(e.querySelectorAll("template")).forEach((e=>{e.parentNode.replaceChild(e.content,e)}))},a=e=>JSON.parse(JSON.stringify(e)),s=(e,t)=>{const n=document.createElement("div");return n.innerHTML=e,o(n),Array.from(n.querySelectorAll("[data-component]")).forEach((e=>{const n=e.getAttribute("tplid"),r=t[n];r&&(e.outerHTML=r)})),n.innerHTML}},436:(e,t,n)=>{"use strict";n.r(t),n.d(t,{publish:()=>o,subscribe:()=>a,unsubscribe:()=>s});const r={},i={},o=(e,t)=>{i[e]=Object.assign({},i[e],t),r[e]&&r[e].forEach((e=>e(t)))},a=(e,t)=>{r[e]=r[e]||[],r[e].push(t),e in i&&t(i[e])},s=e=>{r[e.name]=(r[e.name]||[]).filter((t=>t!=e.method)),r[e.name].length||(delete r[e.name],delete i[e.name])}}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var o=t[r]={exports:{}};return e[r].call(o.exports,o,o.exports,n),o.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{"use strict";var e=r;Object.defineProperty(e,"__esModule",{value:!0});var t=n(491),i=n(610),o=n(126),a=n(624),s={};e.default={start:function(){var e=document.body;(0,a.stripTemplateTag)(e),i.Scanner.scan(e,u),i.Scanner.observe(e,u,l)},register:function(e,t,n){void 0===n&&(n={}),s[e]={name:e,module:t,dependencies:n}}};var u=function(e){var n=(0,t.Element)(e);e.dataset.component.split(/\s/).forEach((function(t){var r=s[t];if(r){var i=r.module,a=r.dependencies;n.model=Object.assign({},i.model,n.model);var u=(0,o.Component)({name:t,element:e,dependencies:a,ElementInterface:n}),l=i.default(u);l&&l.then&&n.promises.push(l),u.__initialize(),n.view=i.view||n.view,n.instances[t]={methods:{}}}else console.warn("Jails - Module ".concat(t," not registered"))})),n.update()},l=function(e){e.__instance__&&e.__instance__.dispose()}})(),r})()})); +//# sourceMappingURL=jails.js.map \ No newline at end of file diff --git a/dist/jails.js.map b/dist/jails.js.map new file mode 100644 index 0000000..facb9aa --- /dev/null +++ b/dist/jails.js.map @@ -0,0 +1 @@ +{"version":3,"file":"jails.js","mappings":"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","sources":["webpack://jails/webpack/universalModuleDefinition","webpack://jails/./node_modules/morphdom/dist/morphdom-esm.js","webpack://jails/./node_modules/sodajs/dist/soda.js","webpack://jails/./src/Component.ts","webpack://jails/./src/Element.ts","webpack://jails/./src/Scanner.ts","webpack://jails/./src/soda-config.js","webpack://jails/./src/utils/events.js","webpack://jails/./src/utils/index.js","webpack://jails/./src/utils/pubsub.js","webpack://jails/webpack/bootstrap","webpack://jails/webpack/runtime/compat get default export","webpack://jails/webpack/runtime/define property getters","webpack://jails/webpack/runtime/hasOwnProperty shorthand","webpack://jails/webpack/runtime/make namespace object","webpack://jails/./src/index.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"jails\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"jails\"] = factory();\n\telse\n\t\troot[\"jails\"] = factory();\n})(self, function() {\nreturn ","var DOCUMENT_FRAGMENT_NODE = 11;\n\nfunction morphAttrs(fromNode, toNode) {\n var toNodeAttrs = toNode.attributes;\n var attr;\n var attrName;\n var attrNamespaceURI;\n var attrValue;\n var fromValue;\n\n // document-fragments dont have attributes so lets not do anything\n if (toNode.nodeType === DOCUMENT_FRAGMENT_NODE || fromNode.nodeType === DOCUMENT_FRAGMENT_NODE) {\n return;\n }\n\n // update attributes on original DOM element\n for (var i = toNodeAttrs.length - 1; i >= 0; i--) {\n attr = toNodeAttrs[i];\n attrName = attr.name;\n attrNamespaceURI = attr.namespaceURI;\n attrValue = attr.value;\n\n if (attrNamespaceURI) {\n attrName = attr.localName || attrName;\n fromValue = fromNode.getAttributeNS(attrNamespaceURI, attrName);\n\n if (fromValue !== attrValue) {\n if (attr.prefix === 'xmlns'){\n attrName = attr.name; // It's not allowed to set an attribute with the XMLNS namespace without specifying the `xmlns` prefix\n }\n fromNode.setAttributeNS(attrNamespaceURI, attrName, attrValue);\n }\n } else {\n fromValue = fromNode.getAttribute(attrName);\n\n if (fromValue !== attrValue) {\n fromNode.setAttribute(attrName, attrValue);\n }\n }\n }\n\n // Remove any extra attributes found on the original DOM element that\n // weren't found on the target element.\n var fromNodeAttrs = fromNode.attributes;\n\n for (var d = fromNodeAttrs.length - 1; d >= 0; d--) {\n attr = fromNodeAttrs[d];\n attrName = attr.name;\n attrNamespaceURI = attr.namespaceURI;\n\n if (attrNamespaceURI) {\n attrName = attr.localName || attrName;\n\n if (!toNode.hasAttributeNS(attrNamespaceURI, attrName)) {\n fromNode.removeAttributeNS(attrNamespaceURI, attrName);\n }\n } else {\n if (!toNode.hasAttribute(attrName)) {\n fromNode.removeAttribute(attrName);\n }\n }\n }\n}\n\nvar range; // Create a range object for efficently rendering strings to elements.\nvar NS_XHTML = 'http://www.w3.org/1999/xhtml';\n\nvar doc = typeof document === 'undefined' ? undefined : document;\nvar HAS_TEMPLATE_SUPPORT = !!doc && 'content' in doc.createElement('template');\nvar HAS_RANGE_SUPPORT = !!doc && doc.createRange && 'createContextualFragment' in doc.createRange();\n\nfunction createFragmentFromTemplate(str) {\n var template = doc.createElement('template');\n template.innerHTML = str;\n return template.content.childNodes[0];\n}\n\nfunction createFragmentFromRange(str) {\n if (!range) {\n range = doc.createRange();\n range.selectNode(doc.body);\n }\n\n var fragment = range.createContextualFragment(str);\n return fragment.childNodes[0];\n}\n\nfunction createFragmentFromWrap(str) {\n var fragment = doc.createElement('body');\n fragment.innerHTML = str;\n return fragment.childNodes[0];\n}\n\n/**\n * This is about the same\n * var html = new DOMParser().parseFromString(str, 'text/html');\n * return html.body.firstChild;\n *\n * @method toElement\n * @param {String} str\n */\nfunction toElement(str) {\n str = str.trim();\n if (HAS_TEMPLATE_SUPPORT) {\n // avoid restrictions on content for things like `Hi` which\n // createContextualFragment doesn't support\n //