swup 2.0.19 → 3.0.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Swup.cjs +2 -0
- package/dist/Swup.cjs.map +1 -0
- package/dist/Swup.modern.js +2 -0
- package/dist/Swup.modern.js.map +1 -0
- package/dist/Swup.module.js +2 -0
- package/dist/Swup.module.js.map +1 -0
- package/dist/Swup.umd.js +2 -0
- package/dist/Swup.umd.js.map +1 -0
- package/dist/helpers.cjs +2 -0
- package/dist/helpers.cjs.map +1 -0
- package/dist/helpers.modern.js +2 -0
- package/dist/helpers.modern.js.map +1 -0
- package/dist/helpers.module.js +2 -0
- package/dist/helpers.module.js.map +1 -0
- package/dist/types/Swup.d.ts +102 -0
- package/dist/types/config/version.d.ts +5 -0
- package/dist/types/helpers/Location.d.ts +31 -0
- package/dist/types/helpers/classify.d.ts +2 -0
- package/dist/types/helpers/cleanupAnimationClasses.d.ts +2 -0
- package/dist/types/helpers/createHistoryRecord.d.ts +2 -0
- package/dist/types/helpers/delegateEvent.d.ts +8 -0
- package/dist/types/helpers/fetch.d.ts +6 -0
- package/dist/types/helpers/getCurrentUrl.d.ts +4 -0
- package/dist/types/helpers/getDataFromHtml.d.ts +8 -0
- package/dist/types/helpers/index.d.ts +11 -0
- package/dist/types/helpers/markSwupElements.d.ts +2 -0
- package/dist/types/helpers/updateHistoryRecord.d.ts +2 -0
- package/dist/types/helpers/versionSatisfies.d.ts +12 -0
- package/dist/types/helpers.d.ts +1 -0
- package/dist/types/index.d.ts +8 -0
- package/dist/types/modules/Cache.d.ts +20 -0
- package/dist/types/modules/enterPage.d.ts +6 -0
- package/dist/types/modules/fetchPage.d.ts +4 -0
- package/dist/types/modules/getAnchorElement.d.ts +2 -0
- package/dist/types/modules/getAnimationPromises.d.ts +7 -0
- package/dist/types/modules/getPageData.d.ts +7 -0
- package/dist/types/modules/leavePage.d.ts +7 -0
- package/dist/types/modules/loadPage.d.ts +7 -0
- package/dist/types/modules/off.d.ts +4 -0
- package/dist/types/modules/on.d.ts +6 -0
- package/dist/types/modules/plugins.d.ts +14 -0
- package/dist/types/modules/renderPage.d.ts +7 -0
- package/dist/types/modules/replaceContent.d.ts +17 -0
- package/dist/types/modules/triggerEvent.d.ts +4 -0
- package/dist/types/modules/updateTransition.d.ts +3 -0
- package/dist/types/utils/index.d.ts +5 -0
- package/dist/types/utils.d.ts +1 -0
- package/dist/utils.cjs +2 -0
- package/dist/utils.cjs.map +1 -0
- package/dist/utils.modern.js +2 -0
- package/dist/utils.modern.js.map +1 -0
- package/dist/utils.module.js +2 -0
- package/dist/utils.module.js.map +1 -0
- package/package.json +30 -23
- package/readme.md +52 -36
- package/src/Swup.ts +369 -0
- package/src/config/version.ts +13 -0
- package/src/helpers/Location.ts +44 -0
- package/src/helpers/classify.ts +13 -0
- package/src/helpers/cleanupAnimationClasses.ts +10 -0
- package/src/helpers/createHistoryRecord.ts +14 -0
- package/src/helpers/delegateEvent.ts +23 -0
- package/src/helpers/fetch.ts +35 -0
- package/src/helpers/getCurrentUrl.ts +5 -0
- package/src/helpers/getDataFromHtml.ts +41 -0
- package/src/helpers/index.ts +11 -0
- package/src/helpers/markSwupElements.ts +18 -0
- package/src/helpers/updateHistoryRecord.ts +18 -0
- package/src/helpers/versionSatisfies.ts +46 -0
- package/src/helpers.ts +4 -0
- package/src/index.ts +8 -0
- package/src/modules/Cache.ts +57 -0
- package/src/modules/enterPage.ts +28 -0
- package/src/modules/fetchPage.ts +35 -0
- package/src/modules/getAnchorElement.ts +19 -0
- package/src/modules/getAnimationPromises.ts +179 -0
- package/src/modules/getPageData.ts +26 -0
- package/src/modules/leavePage.ts +33 -0
- package/src/modules/loadPage.ts +55 -0
- package/src/modules/off.ts +23 -0
- package/src/modules/on.ts +35 -0
- package/src/modules/plugins.ts +58 -0
- package/src/modules/renderPage.ts +52 -0
- package/src/modules/replaceContent.ts +28 -0
- package/src/modules/triggerEvent.ts +23 -0
- package/src/modules/updateTransition.ts +7 -0
- package/src/utils/index.ts +32 -0
- package/src/utils.ts +4 -0
- package/.editorconfig +0 -19
- package/cypress.config.js +0 -14
- package/dist/swup.js +0 -1524
- package/dist/swup.min.js +0 -1
- package/lib/helpers/Link.js +0 -56
- package/lib/helpers/classify.js +0 -18
- package/lib/helpers/cleanupAnimationClasses.js +0 -18
- package/lib/helpers/createHistoryRecord.js +0 -14
- package/lib/helpers/fetch.js +0 -41
- package/lib/helpers/getCurrentUrl.js +0 -10
- package/lib/helpers/getDataFromHtml.js +0 -43
- package/lib/helpers/index.js +0 -64
- package/lib/helpers/markSwupElements.js +0 -24
- package/lib/helpers/normalizeUrl.js +0 -17
- package/lib/helpers/transitionEnd.js +0 -14
- package/lib/helpers/transitionProperty.js +0 -14
- package/lib/index.js +0 -305
- package/lib/modules/Cache.js +0 -66
- package/lib/modules/getAnchorElement.js +0 -25
- package/lib/modules/getAnimationPromises.js +0 -43
- package/lib/modules/getPageData.js +0 -26
- package/lib/modules/loadPage.js +0 -123
- package/lib/modules/off.js +0 -34
- package/lib/modules/on.js +0 -14
- package/lib/modules/plugins.js +0 -54
- package/lib/modules/renderPage.js +0 -76
- package/lib/modules/triggerEvent.js +0 -21
- package/lib/modules/updateTransition.js +0 -15
- package/lib/utils/index.js +0 -32
package/dist/swup.min.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(function e(t,n){if(typeof exports==="object"&&typeof module==="object")module.exports=n();else if(typeof define==="function"&&define.amd)define([],n);else if(typeof exports==="object")exports["Swup"]=n();else t["Swup"]=n()})(window,function(){return function(e){var t={};function n(r){if(t[r]){return t[r].exports}var i=t[r]={i:r,l:false,exports:{}};e[r].call(i.exports,i,i.exports,n);i.l=true;return i.exports}n.m=e;n.c=t;n.d=function(e,t,r){if(!n.o(e,t)){Object.defineProperty(e,t,{enumerable:true,get:r})}};n.r=function(e){if(typeof Symbol!=="undefined"&&Symbol.toStringTag){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}Object.defineProperty(e,"__esModule",{value:true})};n.t=function(e,t){if(t&1)e=n(e);if(t&8)return e;if(t&4&&typeof e==="object"&&e&&e.__esModule)return e;var r=Object.create(null);n.r(r);Object.defineProperty(r,"default",{enumerable:true,value:e});if(t&2&&typeof e!="string")for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r};n.n=function(e){var t=e&&e.__esModule?function t(){return e["default"]}:function t(){return e};n.d(t,"a",t);return t};n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)};n.p="";return n(n.s=3)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});t.cleanupAnimationClasses=t.Link=t.markSwupElements=t.normalizeUrl=t.getCurrentUrl=t.transitionProperty=t.transitionEnd=t.fetch=t.getDataFromHtml=t.createHistoryRecord=t.classify=undefined;var r=n(7);var i=O(r);var a=n(8);var o=O(a);var s=n(9);var u=O(s);var l=n(10);var c=O(l);var f=n(11);var d=O(f);var h=n(12);var p=O(h);var v=n(13);var g=O(v);var m=n(14);var y=O(m);var w=n(15);var b=O(w);var E=n(2);var P=O(E);var _=n(16);var k=O(_);function O(e){return e&&e.__esModule?e:{default:e}}var S=t.classify=i.default;var j=t.createHistoryRecord=o.default;var M=t.getDataFromHtml=u.default;var H=t.fetch=c.default;var A=t.transitionEnd=d.default;var C=t.transitionProperty=p.default;var L=t.getCurrentUrl=g.default;var T=t.normalizeUrl=y.default;var q=t.markSwupElements=b.default;var x=t.Link=P.default;var U=t.cleanupAnimationClasses=k.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=t.query=function e(t){var n=arguments.length>1&&arguments[1]!==undefined?arguments[1]:document;if(typeof t!=="string"){return t}return n.querySelector(t)};var i=t.queryAll=function e(t){var n=arguments.length>1&&arguments[1]!==undefined?arguments[1]:document;if(typeof t!=="string"){return t}return Array.prototype.slice.call(n.querySelectorAll(t))};var a=t.escapeCssIdentifier=function e(t){if(window.CSS&&window.CSS.escape){return CSS.escape(t)}else{return t}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,n,r){if(n)e(t.prototype,n);if(r)e(t,r);return t}}();function i(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}var a=function(){function e(t){i(this,e);if(t instanceof Element||t instanceof SVGElement){this.link=t}else{this.link=document.createElement("a");this.link.href=t}}r(e,[{key:"getPath",value:function e(){var t=this.link.pathname;if(t[0]!=="/"){t="/"+t}return t}},{key:"getAddress",value:function e(){var t=this.link.pathname+this.link.search;if(this.link.getAttribute("xlink:href")){t=this.link.getAttribute("xlink:href")}if(t[0]!=="/"){t="/"+t}return t}},{key:"getHash",value:function e(){return this.link.hash}}]);return e}();t.default=a},function(e,t,n){"use strict";var r=n(4);var i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}e.exports=i.default},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n){if(Object.prototype.hasOwnProperty.call(n,r)){e[r]=n[r]}}}return e};var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,n,r){if(n)e(t.prototype,n);if(r)e(t,r);return t}}();var a=n(5);var o=A(a);var s=n(6);var u=A(s);var l=n(17);var c=A(l);var f=n(18);var d=A(f);var h=n(19);var p=A(h);var v=n(20);var g=A(v);var m=n(21);var y=A(m);var w=n(22);var b=A(w);var E=n(23);var P=A(E);var _=n(24);var k=A(_);var O=n(25);var S=A(O);var j=n(26);var M=n(1);var H=n(0);function A(e){return e&&e.__esModule?e:{default:e}}function C(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}var L=function(){function e(t){C(this,e);var n={animateHistoryBrowsing:false,animationSelector:'[class*="transition-"]',linkSelector:'a[href^="'+window.location.origin+'"]:not([data-no-swup]), a[href^="/"]:not([data-no-swup]), a[href^="#"]:not([data-no-swup])',cache:true,containers:["#swup"],requestHeaders:{"X-Requested-With":"swup",Accept:"text/html, application/xhtml+xml"},plugins:[],skipPopStateHandling:function e(t){return!(t.state&&t.state.source==="swup")}};var i=r({},n,t);this._handlers={animationInDone:[],animationInStart:[],animationOutDone:[],animationOutStart:[],animationSkipped:[],clickLink:[],contentReplaced:[],disabled:[],enabled:[],openPageInNewTab:[],pageLoaded:[],pageRetrievedFromCache:[],pageView:[],popState:[],samePage:[],samePageWithHash:[],serverError:[],transitionStart:[],transitionEnd:[],willReplaceContent:[]};this.scrollToElement=null;this.preloadPromise=null;this.options=i;this.plugins=[];this.transition={};this.delegatedListeners={};this.boundPopStateHandler=this.popStateHandler.bind(this);this.cache=new u.default;this.cache.swup=this;this.loadPage=c.default;this.renderPage=d.default;this.triggerEvent=p.default;this.on=g.default;this.off=y.default;this.updateTransition=b.default;this.getAnimationPromises=k.default;this.getPageData=S.default;this.getAnchorElement=P.default;this.log=function(){};this.use=j.use;this.unuse=j.unuse;this.findPlugin=j.findPlugin;this.getCurrentUrl=H.getCurrentUrl;this.cleanupAnimationClasses=H.cleanupAnimationClasses;this.enable()}i(e,[{key:"enable",value:function e(){var t=this;if(typeof Promise==="undefined"){console.warn("Promise is not supported");return}this.delegatedListeners.click=(0,o.default)(document,this.options.linkSelector,"click",this.linkClickHandler.bind(this));window.addEventListener("popstate",this.boundPopStateHandler);if(this.options.cache){}(0,H.markSwupElements)(document.documentElement,this.options.containers);this.options.plugins.forEach(function(e){t.use(e)});window.history.replaceState(Object.assign({},window.history.state,{url:window.location.href,random:Math.random(),source:"swup"}),document.title,window.location.href);this.triggerEvent("enabled");document.documentElement.classList.add("swup-enabled");this.triggerEvent("pageView")}},{key:"destroy",value:function e(){var t=this;this.delegatedListeners.click.destroy();window.removeEventListener("popstate",this.boundPopStateHandler);this.cache.empty();this.options.plugins.forEach(function(e){t.unuse(e)});(0,M.queryAll)("[data-swup]").forEach(function(e){e.removeAttribute("data-swup")});this.off();this.triggerEvent("disabled");document.documentElement.classList.remove("swup-enabled")}},{key:"linkClickHandler",value:function e(t){if(!t.metaKey&&!t.ctrlKey&&!t.shiftKey&&!t.altKey){if(t.button===0){this.triggerEvent("clickLink",t);t.preventDefault();var n=new H.Link(t.delegateTarget);if(n.getAddress()==(0,H.getCurrentUrl)()||n.getAddress()==""){if(n.getHash()!=""){this.triggerEvent("samePageWithHash",t);var r=(0,P.default)(n.getHash());if(r!=null){history.replaceState({url:n.getAddress()+n.getHash(),random:Math.random(),source:"swup"},document.title,n.getAddress()+n.getHash())}else{console.warn("Element for offset not found ("+n.getHash()+")")}}else{this.triggerEvent("samePage",t)}}else{if(n.getHash()!=""){this.scrollToElement=n.getHash()}var i=t.delegateTarget.getAttribute("data-swup-transition");this.loadPage({url:n.getAddress(),customTransition:i},false)}}}else{this.triggerEvent("openPageInNewTab",t)}}},{key:"popStateHandler",value:function e(t){if(this.options.skipPopStateHandling(t))return;var n=new H.Link(t.state?t.state.url:window.location.pathname);if(n.getHash()!==""){this.scrollToElement=n.getHash()}else{t.preventDefault()}this.triggerEvent("popState",t);if(!this.options.animateHistoryBrowsing){document.documentElement.classList.remove("is-animating");(0,H.cleanupAnimationClasses)()}this.loadPage({url:n.getAddress()},t)}}]);return e}();t.default=L},function(e,t,n){"use strict";n.r(t);const r=new WeakMap;function i(e,t,n,i){var a,o;if(!e&&!r.has(t)){return false}const s=(a=r.get(t))!==null&&a!==void 0?a:new WeakMap;r.set(t,s);if(!e&&!r.has(t)){return false}const u=(o=s.get(n))!==null&&o!==void 0?o:new Set;s.set(n,u);const l=u.has(i);if(e){u.add(i)}else{u.delete(i)}return l&&e}function a(e){return typeof e.addEventListener==="function"}function o(e,t){let n=e.target;if(n instanceof Text){n=n.parentElement}if(n instanceof Element&&e.currentTarget instanceof Element){const r=n.closest(t);if(r&&e.currentTarget.contains(r)){return r}}}function s(e,t,n,r,u){if(typeof e==="string"){e=document.querySelectorAll(e)}if(!a(e)){const i=Array.prototype.map.call(e,e=>s(e,t,n,r,u));return{destroy(){for(const e of i){e.destroy()}}}}const l=e instanceof Document?e.documentElement:e;const c=Boolean(typeof u==="object"?u.capture:u);const f=e=>{const n=o(e,t);if(n){e.delegateTarget=n;r.call(l,e)}};if(typeof u==="object"){delete u.once}const d=JSON.stringify({selector:t,type:n,capture:c});const h=i(true,l,r,d);const p={destroy(){l.removeEventListener(n,f,u);i(false,l,r,d)}};if(!h){l.addEventListener(n,f,u)}return p}t["default"]=s},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});t.Cache=undefined;var r=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||false;r.configurable=true;if("value"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,n,r){if(n)e(t.prototype,n);if(r)e(t,r);return t}}();var i=n(0);function a(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}var o=t.Cache=function(){function e(){a(this,e);this.pages={};this.last=null}r(e,[{key:"cacheUrl",value:function e(t){t.url=(0,i.normalizeUrl)(t.url);if(t.url in this.pages===false){this.pages[t.url]=t}this.last=this.pages[t.url];this.swup.log("Cache ("+Object.keys(this.pages).length+")",this.pages)}},{key:"getPage",value:function e(t){t=(0,i.normalizeUrl)(t);return this.pages[t]}},{key:"getCurrentPage",value:function e(){return this.getPage((0,i.getCurrentUrl)())}},{key:"exists",value:function e(t){t=(0,i.normalizeUrl)(t);return t in this.pages}},{key:"empty",value:function e(){this.pages={};this.last=null;this.swup.log("Cache cleared")}},{key:"remove",value:function e(t){delete this.pages[t]}}]);return e}();t.default=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=function e(t){var n=t.toString().toLowerCase().replace(/\s+/g,"-").replace(/\//g,"-").replace(/[^\w\-]+/g,"").replace(/\-\-+/g,"-").replace(/^-+/,"").replace(/-+$/,"");if(n[0]==="/")n=n.splice(1);if(n==="")n="homepage";return n};t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=function e(t){window.history.pushState({url:t||window.location.href.split(window.location.hostname)[1],random:Math.random(),source:"swup"},document.title,t||window.location.href.split(window.location.hostname)[1])};t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=n(1);var i=function e(t,n){var i=document.createElement("html");i.innerHTML=t;var a=[];n.forEach(function(e){if((0,r.query)(e,i)==null){console.warn("[swup] Container "+e+" not found on page.");return null}else{if((0,r.queryAll)(e).length!==(0,r.queryAll)(e,i).length){console.warn("[swup] Mismatched number of containers found on new page.")}(0,r.queryAll)(e).forEach(function(t,n){(0,r.queryAll)(e,i)[n].setAttribute("data-swup",a.length);a.push((0,r.queryAll)(e,i)[n].outerHTML)})}});var o={title:(i.querySelector("title")||{}).innerText,pageClass:i.querySelector("body").className,originalContent:t,blocks:a};i.innerHTML="";i=null;return o};t.default=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n){if(Object.prototype.hasOwnProperty.call(n,r)){e[r]=n[r]}}}return e};var i=function e(t){var n=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var i={url:window.location.pathname+window.location.search,method:"GET",data:null,headers:{}};var a=r({},i,t);var o=new XMLHttpRequest;o.onreadystatechange=function(){if(o.readyState===4){if(o.status!==500){n(o)}else{n(o)}}};o.open(a.method,a.url,true);Object.keys(a.headers).forEach(function(e){o.setRequestHeader(e,a.headers[e])});o.send(a.data);return o};t.default=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=function e(){if(window.ontransitionend===undefined&&window.onwebkittransitionend!==undefined){return"webkitTransitionEnd"}else{return"transitionend"}};t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=function e(){if(window.ontransitionend===undefined&&window.onwebkittransitionend!==undefined){return"WebkitTransition"}else{return"transition"}};t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=function e(){return window.location.pathname+window.location.search};t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=n(2);var i=a(r);function a(e){return e&&e.__esModule?e:{default:e}}var o=function e(t){return new i.default(t).getAddress()};t.default=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=n(1);var i=function e(t,n){var i=0;n.forEach(function(e){if((0,r.query)(e,t)==null){console.warn("[swup] Container "+e+" not found on page.")}else{(0,r.queryAll)(e).forEach(function(n,a){(0,r.queryAll)(e,t)[a].setAttribute("data-swup",i);i++})}})};t.default=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=function e(){document.documentElement.className.split(" ").forEach(function(e){if(new RegExp("^to-").test(e)||e==="is-changing"||e==="is-rendering"||e==="is-popstate"){document.documentElement.classList.remove(e)}})};t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=function(){function e(e,t){var n=[];var r=true;var i=false;var a=undefined;try{for(var o=e[Symbol.iterator](),s;!(r=(s=o.next()).done);r=true){n.push(s.value);if(t&&n.length===t)break}}catch(e){i=true;a=e}finally{try{if(!r&&o["return"])o["return"]()}finally{if(i)throw a}}return n}return function(t,n){if(Array.isArray(t)){return t}else if(Symbol.iterator in Object(t)){return e(t,n)}else{throw new TypeError("Invalid attempt to destructure non-iterable instance")}}}();var i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n){if(Object.prototype.hasOwnProperty.call(n,r)){e[r]=n[r]}}}return e};var a=n(0);var o=function e(t,n){var o=this;var s=[],u=void 0;var l=function e(){o.triggerEvent("animationOutStart");document.documentElement.classList.add("is-changing");document.documentElement.classList.add("is-leaving");document.documentElement.classList.add("is-animating");if(n){document.documentElement.classList.add("is-popstate")}document.documentElement.classList.add("to-"+(0,a.classify)(t.url));s=o.getAnimationPromises("out");Promise.all(s).then(function(){o.triggerEvent("animationOutDone")});if(!n){var r=void 0;if(o.scrollToElement!=null){r=t.url+o.scrollToElement}else{r=t.url}(0,a.createHistoryRecord)(r)}};this.triggerEvent("transitionStart",n);if(t.customTransition!=null){this.updateTransition(window.location.pathname,t.url,t.customTransition);document.documentElement.classList.add("to-"+(0,a.classify)(t.customTransition))}else{this.updateTransition(window.location.pathname,t.url)}if(!n||this.options.animateHistoryBrowsing){l()}else{this.triggerEvent("animationSkipped")}if(this.cache.exists(t.url)){u=new Promise(function(e){e(o.cache.getPage(t.url))});this.triggerEvent("pageRetrievedFromCache")}else{if(!this.preloadPromise||this.preloadPromise.route!=t.url){u=new Promise(function(e,n){(0,a.fetch)(i({},t,{headers:o.options.requestHeaders}),function(r){if(r.status===500){o.triggerEvent("serverError");n(t.url);return}else{var i=o.getPageData(r);if(i!=null&&i.blocks.length>0){i.url=t.url}else{n(t.url);return}o.cache.cacheUrl(i);o.triggerEvent("pageLoaded");e(i)}})})}else{u=this.preloadPromise}}Promise.all([u].concat(s)).then(function(e){var t=r(e,1),i=t[0];o.renderPage(i,n);o.preloadPromise=null}).catch(function(e){o.options.skipPopStateHandling=function(){window.location=e;return true};window.history.go(-1)})};t.default=o},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n){if(Object.prototype.hasOwnProperty.call(n,r)){e[r]=n[r]}}}return e};var i=n(0);var a=function e(t,n){var a=this;document.documentElement.classList.remove("is-leaving");var o=this.getCurrentUrl()===t.url;if(!o)return;var s=new i.Link(t.responseURL).getPath();if(window.location.pathname!==s){window.history.replaceState({url:s,random:Math.random(),source:"swup"},document.title,s);this.cache.cacheUrl(r({},t,{url:s}))}if(!n||this.options.animateHistoryBrowsing){document.documentElement.classList.add("is-rendering")}this.triggerEvent("willReplaceContent",n);for(var u=0;u<t.blocks.length;u++){document.body.querySelector('[data-swup="'+u+'"]').outerHTML=t.blocks[u]}document.title=t.title;this.triggerEvent("contentReplaced",n);this.triggerEvent("pageView",n);if(!this.options.cache){this.cache.empty()}setTimeout(function(){if(!n||a.options.animateHistoryBrowsing){a.triggerEvent("animationInStart");document.documentElement.classList.remove("is-animating")}},10);if(!n||this.options.animateHistoryBrowsing){var l=this.getAnimationPromises("in");Promise.all(l).then(function(){a.triggerEvent("animationInDone");a.triggerEvent("transitionEnd",n);a.cleanupAnimationClasses()})}else{this.triggerEvent("transitionEnd",n)}this.scrollToElement=null};t.default=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=function e(t,n){this._handlers[t].forEach(function(e){try{e(n)}catch(e){console.error(e)}});var r=new CustomEvent("swup:"+t,{detail:t});document.dispatchEvent(r)};t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=function e(t,n){if(this._handlers[t]){this._handlers[t].push(n)}else{console.warn("Unsupported event "+t+".")}};t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=function e(t,n){var r=this;if(t!=null){if(n!=null){if(this._handlers[t]&&this._handlers[t].filter(function(e){return e===n}).length){var i=this._handlers[t].filter(function(e){return e===n})[0];var a=this._handlers[t].indexOf(i);if(a>-1){this._handlers[t].splice(a,1)}}else{console.warn("Handler for event '"+t+"' no found.")}}else{this._handlers[t]=[]}}else{Object.keys(this._handlers).forEach(function(e){r._handlers[e]=[]})}};t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=function e(t,n,r){this.transition={from:t,to:n,custom:r}};t.default=r},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=n(1);var i=function e(t){if(!t){return null}if(t.charAt(0)==="#"){t=t.substring(1)}t=decodeURIComponent(t);t=(0,r.escapeCssIdentifier)(t);return(0,r.query)("#"+t)||(0,r.query)("a[name='"+t+"']")};t.default=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=n(1);var i=n(0);var a=function e(){var t=this.options.animationSelector;var n=(0,i.transitionProperty)()+"Duration";var a=[];var o=(0,r.queryAll)(t,document.body);if(!o.length){console.warn("[swup] No animated elements found by selector "+t);return[Promise.resolve()]}o.forEach(function(e){var r=window.getComputedStyle(e)[n];if(!r||r=="0s"){console.warn("[swup] No CSS transition duration defined for element of selector "+t);a.push(Promise.resolve());return}var o=new Promise(function(t){e.addEventListener((0,i.transitionEnd)(),function(n){if(e==n.target){t()}})});a.push(o)});return a};t.default=a},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=n(0);var i=function e(t){var n=t.responseText;var i=(0,r.getDataFromHtml)(n,this.options.containers);if(i){i.responseURL=t.responseURL?t.responseURL:window.location.href}else{console.warn("[swup] Received page is invalid.");return null}return i};t.default=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=t.use=function e(t){if(!t.isSwupPlugin){console.warn("Not swup plugin instance "+t+".");return}this.plugins.push(t);t.swup=this;if(typeof t._beforeMount==="function"){t._beforeMount()}t.mount();return this.plugins};var i=t.unuse=function e(t){var n=void 0;if(typeof t==="string"){n=this.plugins.find(function(e){return t===e.name})}else{n=t}if(!n){console.warn("No such plugin.");return}n.unmount();if(typeof n._afterUnmount==="function"){n._afterUnmount()}var r=this.plugins.indexOf(n);this.plugins.splice(r,1);return this.plugins};var a=t.findPlugin=function e(t){return this.plugins.find(function(e){return t===e.name})}}])});
|
package/lib/helpers/Link.js
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
|
|
7
|
-
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
|
|
8
|
-
|
|
9
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
10
|
-
|
|
11
|
-
var Link = function () {
|
|
12
|
-
function Link(elementOrUrl) {
|
|
13
|
-
_classCallCheck(this, Link);
|
|
14
|
-
|
|
15
|
-
if (elementOrUrl instanceof Element || elementOrUrl instanceof SVGElement) {
|
|
16
|
-
this.link = elementOrUrl;
|
|
17
|
-
} else {
|
|
18
|
-
this.link = document.createElement('a');
|
|
19
|
-
this.link.href = elementOrUrl;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
_createClass(Link, [{
|
|
24
|
-
key: 'getPath',
|
|
25
|
-
value: function getPath() {
|
|
26
|
-
var path = this.link.pathname;
|
|
27
|
-
if (path[0] !== '/') {
|
|
28
|
-
path = '/' + path;
|
|
29
|
-
}
|
|
30
|
-
return path;
|
|
31
|
-
}
|
|
32
|
-
}, {
|
|
33
|
-
key: 'getAddress',
|
|
34
|
-
value: function getAddress() {
|
|
35
|
-
var path = this.link.pathname + this.link.search;
|
|
36
|
-
|
|
37
|
-
if (this.link.getAttribute('xlink:href')) {
|
|
38
|
-
path = this.link.getAttribute('xlink:href');
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
if (path[0] !== '/') {
|
|
42
|
-
path = '/' + path;
|
|
43
|
-
}
|
|
44
|
-
return path;
|
|
45
|
-
}
|
|
46
|
-
}, {
|
|
47
|
-
key: 'getHash',
|
|
48
|
-
value: function getHash() {
|
|
49
|
-
return this.link.hash;
|
|
50
|
-
}
|
|
51
|
-
}]);
|
|
52
|
-
|
|
53
|
-
return Link;
|
|
54
|
-
}();
|
|
55
|
-
|
|
56
|
-
exports.default = Link;
|
package/lib/helpers/classify.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
var classify = function classify(text) {
|
|
7
|
-
var output = text.toString().toLowerCase().replace(/\s+/g, '-') // Replace spaces with -
|
|
8
|
-
.replace(/\//g, '-') // Replace / with -
|
|
9
|
-
.replace(/[^\w\-]+/g, '') // Remove all non-word chars
|
|
10
|
-
.replace(/\-\-+/g, '-') // Replace multiple - with single -
|
|
11
|
-
.replace(/^-+/, '') // Trim - from start of text
|
|
12
|
-
.replace(/-+$/, ''); // Trim - from end of text
|
|
13
|
-
if (output[0] === '/') output = output.splice(1);
|
|
14
|
-
if (output === '') output = 'homepage';
|
|
15
|
-
return output;
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
exports.default = classify;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
var cleanupAnimationClasses = function cleanupAnimationClasses() {
|
|
7
|
-
document.documentElement.className.split(' ').forEach(function (classItem) {
|
|
8
|
-
if (
|
|
9
|
-
// remove "to-{page}" classes
|
|
10
|
-
new RegExp('^to-').test(classItem) ||
|
|
11
|
-
// remove all other classes
|
|
12
|
-
classItem === 'is-changing' || classItem === 'is-rendering' || classItem === 'is-popstate') {
|
|
13
|
-
document.documentElement.classList.remove(classItem);
|
|
14
|
-
}
|
|
15
|
-
});
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
exports.default = cleanupAnimationClasses;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
var createHistoryRecord = function createHistoryRecord(url) {
|
|
7
|
-
window.history.pushState({
|
|
8
|
-
url: url || window.location.href.split(window.location.hostname)[1],
|
|
9
|
-
random: Math.random(),
|
|
10
|
-
source: 'swup'
|
|
11
|
-
}, document.title, url || window.location.href.split(window.location.hostname)[1]);
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
exports.default = createHistoryRecord;
|
package/lib/helpers/fetch.js
DELETED
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
|
|
7
|
-
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
|
|
8
|
-
|
|
9
|
-
var fetch = function fetch(setOptions) {
|
|
10
|
-
var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
11
|
-
|
|
12
|
-
var defaults = {
|
|
13
|
-
url: window.location.pathname + window.location.search,
|
|
14
|
-
method: 'GET',
|
|
15
|
-
data: null,
|
|
16
|
-
headers: {}
|
|
17
|
-
};
|
|
18
|
-
|
|
19
|
-
var options = _extends({}, defaults, setOptions);
|
|
20
|
-
|
|
21
|
-
var request = new XMLHttpRequest();
|
|
22
|
-
|
|
23
|
-
request.onreadystatechange = function () {
|
|
24
|
-
if (request.readyState === 4) {
|
|
25
|
-
if (request.status !== 500) {
|
|
26
|
-
callback(request);
|
|
27
|
-
} else {
|
|
28
|
-
callback(request);
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
request.open(options.method, options.url, true);
|
|
34
|
-
Object.keys(options.headers).forEach(function (key) {
|
|
35
|
-
request.setRequestHeader(key, options.headers[key]);
|
|
36
|
-
});
|
|
37
|
-
request.send(options.data);
|
|
38
|
-
return request;
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
exports.default = fetch;
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
|
|
7
|
-
var _utils = require('../utils');
|
|
8
|
-
|
|
9
|
-
var getDataFromHtml = function getDataFromHtml(html, containers) {
|
|
10
|
-
var fakeDom = document.createElement('html');
|
|
11
|
-
fakeDom.innerHTML = html;
|
|
12
|
-
var blocks = [];
|
|
13
|
-
|
|
14
|
-
containers.forEach(function (selector) {
|
|
15
|
-
if ((0, _utils.query)(selector, fakeDom) == null) {
|
|
16
|
-
console.warn('[swup] Container ' + selector + ' not found on page.');
|
|
17
|
-
return null;
|
|
18
|
-
} else {
|
|
19
|
-
if ((0, _utils.queryAll)(selector).length !== (0, _utils.queryAll)(selector, fakeDom).length) {
|
|
20
|
-
console.warn('[swup] Mismatched number of containers found on new page.');
|
|
21
|
-
}
|
|
22
|
-
(0, _utils.queryAll)(selector).forEach(function (item, index) {
|
|
23
|
-
(0, _utils.queryAll)(selector, fakeDom)[index].setAttribute('data-swup', blocks.length);
|
|
24
|
-
blocks.push((0, _utils.queryAll)(selector, fakeDom)[index].outerHTML);
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
var json = {
|
|
30
|
-
title: (fakeDom.querySelector('title') || {}).innerText,
|
|
31
|
-
pageClass: fakeDom.querySelector('body').className,
|
|
32
|
-
originalContent: html,
|
|
33
|
-
blocks: blocks
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
// to prevent memory leaks
|
|
37
|
-
fakeDom.innerHTML = '';
|
|
38
|
-
fakeDom = null;
|
|
39
|
-
|
|
40
|
-
return json;
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
exports.default = getDataFromHtml;
|
package/lib/helpers/index.js
DELETED
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.cleanupAnimationClasses = exports.Link = exports.markSwupElements = exports.normalizeUrl = exports.getCurrentUrl = exports.transitionProperty = exports.transitionEnd = exports.fetch = exports.getDataFromHtml = exports.createHistoryRecord = exports.classify = undefined;
|
|
7
|
-
|
|
8
|
-
var _classify = require('./classify');
|
|
9
|
-
|
|
10
|
-
var _classify2 = _interopRequireDefault(_classify);
|
|
11
|
-
|
|
12
|
-
var _createHistoryRecord = require('./createHistoryRecord');
|
|
13
|
-
|
|
14
|
-
var _createHistoryRecord2 = _interopRequireDefault(_createHistoryRecord);
|
|
15
|
-
|
|
16
|
-
var _getDataFromHtml = require('./getDataFromHtml');
|
|
17
|
-
|
|
18
|
-
var _getDataFromHtml2 = _interopRequireDefault(_getDataFromHtml);
|
|
19
|
-
|
|
20
|
-
var _fetch = require('./fetch');
|
|
21
|
-
|
|
22
|
-
var _fetch2 = _interopRequireDefault(_fetch);
|
|
23
|
-
|
|
24
|
-
var _transitionEnd = require('./transitionEnd');
|
|
25
|
-
|
|
26
|
-
var _transitionEnd2 = _interopRequireDefault(_transitionEnd);
|
|
27
|
-
|
|
28
|
-
var _transitionProperty = require('./transitionProperty');
|
|
29
|
-
|
|
30
|
-
var _transitionProperty2 = _interopRequireDefault(_transitionProperty);
|
|
31
|
-
|
|
32
|
-
var _getCurrentUrl = require('./getCurrentUrl');
|
|
33
|
-
|
|
34
|
-
var _getCurrentUrl2 = _interopRequireDefault(_getCurrentUrl);
|
|
35
|
-
|
|
36
|
-
var _normalizeUrl = require('./normalizeUrl');
|
|
37
|
-
|
|
38
|
-
var _normalizeUrl2 = _interopRequireDefault(_normalizeUrl);
|
|
39
|
-
|
|
40
|
-
var _markSwupElements = require('./markSwupElements');
|
|
41
|
-
|
|
42
|
-
var _markSwupElements2 = _interopRequireDefault(_markSwupElements);
|
|
43
|
-
|
|
44
|
-
var _Link = require('./Link');
|
|
45
|
-
|
|
46
|
-
var _Link2 = _interopRequireDefault(_Link);
|
|
47
|
-
|
|
48
|
-
var _cleanupAnimationClasses = require('./cleanupAnimationClasses');
|
|
49
|
-
|
|
50
|
-
var _cleanupAnimationClasses2 = _interopRequireDefault(_cleanupAnimationClasses);
|
|
51
|
-
|
|
52
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
53
|
-
|
|
54
|
-
var classify = exports.classify = _classify2.default;
|
|
55
|
-
var createHistoryRecord = exports.createHistoryRecord = _createHistoryRecord2.default;
|
|
56
|
-
var getDataFromHtml = exports.getDataFromHtml = _getDataFromHtml2.default;
|
|
57
|
-
var fetch = exports.fetch = _fetch2.default;
|
|
58
|
-
var transitionEnd = exports.transitionEnd = _transitionEnd2.default;
|
|
59
|
-
var transitionProperty = exports.transitionProperty = _transitionProperty2.default;
|
|
60
|
-
var getCurrentUrl = exports.getCurrentUrl = _getCurrentUrl2.default;
|
|
61
|
-
var normalizeUrl = exports.normalizeUrl = _normalizeUrl2.default;
|
|
62
|
-
var markSwupElements = exports.markSwupElements = _markSwupElements2.default;
|
|
63
|
-
var Link = exports.Link = _Link2.default;
|
|
64
|
-
var cleanupAnimationClasses = exports.cleanupAnimationClasses = _cleanupAnimationClasses2.default;
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
|
|
7
|
-
var _utils = require('../utils');
|
|
8
|
-
|
|
9
|
-
var markSwupElements = function markSwupElements(element, containers) {
|
|
10
|
-
var blocks = 0;
|
|
11
|
-
|
|
12
|
-
containers.forEach(function (selector) {
|
|
13
|
-
if ((0, _utils.query)(selector, element) == null) {
|
|
14
|
-
console.warn('[swup] Container ' + selector + ' not found on page.');
|
|
15
|
-
} else {
|
|
16
|
-
(0, _utils.queryAll)(selector).forEach(function (item, index) {
|
|
17
|
-
(0, _utils.queryAll)(selector, element)[index].setAttribute('data-swup', blocks);
|
|
18
|
-
blocks++;
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
exports.default = markSwupElements;
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
|
|
7
|
-
var _Link = require('./Link');
|
|
8
|
-
|
|
9
|
-
var _Link2 = _interopRequireDefault(_Link);
|
|
10
|
-
|
|
11
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
12
|
-
|
|
13
|
-
var normalizeUrl = function normalizeUrl(url) {
|
|
14
|
-
return new _Link2.default(url).getAddress();
|
|
15
|
-
};
|
|
16
|
-
|
|
17
|
-
exports.default = normalizeUrl;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
var transitionEnd = function transitionEnd() {
|
|
7
|
-
if (window.ontransitionend === undefined && window.onwebkittransitionend !== undefined) {
|
|
8
|
-
return 'webkitTransitionEnd';
|
|
9
|
-
} else {
|
|
10
|
-
return 'transitionend';
|
|
11
|
-
}
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
exports.default = transitionEnd;
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
var transitionProperty = function transitionProperty() {
|
|
7
|
-
if (window.ontransitionend === undefined && window.onwebkittransitionend !== undefined) {
|
|
8
|
-
return 'WebkitTransition';
|
|
9
|
-
} else {
|
|
10
|
-
return 'transition';
|
|
11
|
-
}
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
exports.default = transitionProperty;
|