swup 2.0.18 → 2.0.19
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/.editorconfig +19 -0
- package/cypress.config.js +2 -1
- package/dist/swup.js +37 -32
- package/dist/swup.min.js +1 -1
- package/lib/helpers/cleanupAnimationClasses.js +10 -10
- package/lib/helpers/createHistoryRecord.js +1 -1
- package/lib/helpers/getDataFromHtml.js +3 -3
- package/lib/helpers/markSwupElements.js +1 -1
- package/lib/index.js +5 -5
- package/lib/modules/getAnimationPromises.js +6 -6
- package/lib/modules/getPageData.js +1 -1
- package/lib/modules/loadPage.js +10 -5
- package/package.json +10 -5
package/.editorconfig
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
root = true
|
|
2
|
+
|
|
3
|
+
[*]
|
|
4
|
+
charset = utf-8
|
|
5
|
+
end_of_line = lf
|
|
6
|
+
trim_trailing_whitespace = true
|
|
7
|
+
insert_final_newline = true
|
|
8
|
+
max_line_length = 100
|
|
9
|
+
|
|
10
|
+
[*.{js,mjs}]
|
|
11
|
+
indent_style = tab
|
|
12
|
+
indent_size = 4
|
|
13
|
+
|
|
14
|
+
[*.{json,md,yaml,yml}]
|
|
15
|
+
indent_style = space
|
|
16
|
+
indent_size = 2
|
|
17
|
+
|
|
18
|
+
[*.md]
|
|
19
|
+
trim_trailing_whitespace = false
|
package/cypress.config.js
CHANGED
|
@@ -3,8 +3,9 @@ const { defineConfig } = require('cypress')
|
|
|
3
3
|
module.exports = defineConfig({
|
|
4
4
|
projectId: 'dpucip',
|
|
5
5
|
e2e: {
|
|
6
|
-
baseUrl: 'http://localhost:
|
|
6
|
+
baseUrl: 'http://localhost:8274',
|
|
7
7
|
specPattern: 'cypress/e2e/**/*.{js,jsx,ts,tsx}',
|
|
8
|
+
chromeWebSecurity: false,
|
|
8
9
|
setupNodeEvents(on, config) {
|
|
9
10
|
require('@cypress/code-coverage/task')(on, config)
|
|
10
11
|
return config
|
package/dist/swup.js
CHANGED
|
@@ -453,11 +453,11 @@ var Swup = function () {
|
|
|
453
453
|
window.addEventListener('popstate', this.boundPopStateHandler);
|
|
454
454
|
|
|
455
455
|
// initial save to cache
|
|
456
|
-
if (this.options.cache) {
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
456
|
+
if (this.options.cache) {}
|
|
457
|
+
// disabled to avoid caching modified dom state
|
|
458
|
+
// https://github.com/swup/swup/issues/475
|
|
459
|
+
// logic moved to preload plugin
|
|
460
|
+
|
|
461
461
|
|
|
462
462
|
// mark swup blocks in html
|
|
463
463
|
(0, _helpers.markSwupElements)(document.documentElement, this.options.containers);
|
|
@@ -794,7 +794,7 @@ var createHistoryRecord = function createHistoryRecord(url) {
|
|
|
794
794
|
url: url || window.location.href.split(window.location.hostname)[1],
|
|
795
795
|
random: Math.random(),
|
|
796
796
|
source: 'swup'
|
|
797
|
-
}, document.
|
|
797
|
+
}, document.title, url || window.location.href.split(window.location.hostname)[1]);
|
|
798
798
|
};
|
|
799
799
|
|
|
800
800
|
exports.default = createHistoryRecord;
|
|
@@ -819,11 +819,11 @@ var getDataFromHtml = function getDataFromHtml(html, containers) {
|
|
|
819
819
|
|
|
820
820
|
containers.forEach(function (selector) {
|
|
821
821
|
if ((0, _utils.query)(selector, fakeDom) == null) {
|
|
822
|
-
console.
|
|
822
|
+
console.warn('[swup] Container ' + selector + ' not found on page.');
|
|
823
823
|
return null;
|
|
824
824
|
} else {
|
|
825
825
|
if ((0, _utils.queryAll)(selector).length !== (0, _utils.queryAll)(selector, fakeDom).length) {
|
|
826
|
-
console.warn('Mismatched number of containers found on new page.');
|
|
826
|
+
console.warn('[swup] Mismatched number of containers found on new page.');
|
|
827
827
|
}
|
|
828
828
|
(0, _utils.queryAll)(selector).forEach(function (item, index) {
|
|
829
829
|
(0, _utils.queryAll)(selector, fakeDom)[index].setAttribute('data-swup', blocks.length);
|
|
@@ -833,7 +833,7 @@ var getDataFromHtml = function getDataFromHtml(html, containers) {
|
|
|
833
833
|
});
|
|
834
834
|
|
|
835
835
|
var json = {
|
|
836
|
-
title: fakeDom.querySelector('title').innerText,
|
|
836
|
+
title: (fakeDom.querySelector('title') || {}).innerText,
|
|
837
837
|
pageClass: fakeDom.querySelector('body').className,
|
|
838
838
|
originalContent: html,
|
|
839
839
|
blocks: blocks
|
|
@@ -992,7 +992,7 @@ var markSwupElements = function markSwupElements(element, containers) {
|
|
|
992
992
|
|
|
993
993
|
containers.forEach(function (selector) {
|
|
994
994
|
if ((0, _utils.query)(selector, element) == null) {
|
|
995
|
-
console.
|
|
995
|
+
console.warn('[swup] Container ' + selector + ' not found on page.');
|
|
996
996
|
} else {
|
|
997
997
|
(0, _utils.queryAll)(selector).forEach(function (item, index) {
|
|
998
998
|
(0, _utils.queryAll)(selector, element)[index].setAttribute('data-swup', blocks);
|
|
@@ -1012,18 +1012,18 @@ exports.default = markSwupElements;
|
|
|
1012
1012
|
|
|
1013
1013
|
|
|
1014
1014
|
Object.defineProperty(exports, "__esModule", {
|
|
1015
|
-
|
|
1015
|
+
value: true
|
|
1016
1016
|
});
|
|
1017
1017
|
var cleanupAnimationClasses = function cleanupAnimationClasses() {
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1018
|
+
document.documentElement.className.split(' ').forEach(function (classItem) {
|
|
1019
|
+
if (
|
|
1020
|
+
// remove "to-{page}" classes
|
|
1021
|
+
new RegExp('^to-').test(classItem) ||
|
|
1022
|
+
// remove all other classes
|
|
1023
|
+
classItem === 'is-changing' || classItem === 'is-rendering' || classItem === 'is-popstate') {
|
|
1024
|
+
document.documentElement.classList.remove(classItem);
|
|
1025
|
+
}
|
|
1026
|
+
});
|
|
1027
1027
|
};
|
|
1028
1028
|
|
|
1029
1029
|
exports.default = cleanupAnimationClasses;
|
|
@@ -1039,6 +1039,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
1039
1039
|
value: true
|
|
1040
1040
|
});
|
|
1041
1041
|
|
|
1042
|
+
var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }();
|
|
1043
|
+
|
|
1042
1044
|
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; };
|
|
1043
1045
|
|
|
1044
1046
|
var _helpers = __webpack_require__(0);
|
|
@@ -1101,7 +1103,7 @@ var loadPage = function loadPage(data, popstate) {
|
|
|
1101
1103
|
// start/skip loading of page
|
|
1102
1104
|
if (this.cache.exists(data.url)) {
|
|
1103
1105
|
xhrPromise = new Promise(function (resolve) {
|
|
1104
|
-
resolve();
|
|
1106
|
+
resolve(_this.cache.getPage(data.url));
|
|
1105
1107
|
});
|
|
1106
1108
|
this.triggerEvent('pageRetrievedFromCache');
|
|
1107
1109
|
} else {
|
|
@@ -1115,7 +1117,7 @@ var loadPage = function loadPage(data, popstate) {
|
|
|
1115
1117
|
} else {
|
|
1116
1118
|
// get json data
|
|
1117
1119
|
var page = _this.getPageData(response);
|
|
1118
|
-
if (page != null) {
|
|
1120
|
+
if (page != null && page.blocks.length > 0) {
|
|
1119
1121
|
page.url = data.url;
|
|
1120
1122
|
} else {
|
|
1121
1123
|
reject(data.url);
|
|
@@ -1124,8 +1126,8 @@ var loadPage = function loadPage(data, popstate) {
|
|
|
1124
1126
|
// render page
|
|
1125
1127
|
_this.cache.cacheUrl(page);
|
|
1126
1128
|
_this.triggerEvent('pageLoaded');
|
|
1129
|
+
resolve(page);
|
|
1127
1130
|
}
|
|
1128
|
-
resolve();
|
|
1129
1131
|
});
|
|
1130
1132
|
});
|
|
1131
1133
|
} else {
|
|
@@ -1134,9 +1136,12 @@ var loadPage = function loadPage(data, popstate) {
|
|
|
1134
1136
|
}
|
|
1135
1137
|
|
|
1136
1138
|
// when everything is ready, handle the outcome
|
|
1137
|
-
Promise.all(
|
|
1139
|
+
Promise.all([xhrPromise].concat(animationPromises)).then(function (_ref) {
|
|
1140
|
+
var _ref2 = _slicedToArray(_ref, 1),
|
|
1141
|
+
pageData = _ref2[0];
|
|
1142
|
+
|
|
1138
1143
|
// render page
|
|
1139
|
-
_this.renderPage(
|
|
1144
|
+
_this.renderPage(pageData, popstate);
|
|
1140
1145
|
_this.preloadPromise = null;
|
|
1141
1146
|
}).catch(function (errorUrl) {
|
|
1142
1147
|
// rewrite the skipPopStateHandling function to redirect manually when the history.go is processed
|
|
@@ -1389,21 +1394,21 @@ var _utils = __webpack_require__(1);
|
|
|
1389
1394
|
var _helpers = __webpack_require__(0);
|
|
1390
1395
|
|
|
1391
1396
|
var getAnimationPromises = function getAnimationPromises() {
|
|
1392
|
-
var
|
|
1393
|
-
|
|
1397
|
+
var selector = this.options.animationSelector;
|
|
1398
|
+
var durationProperty = (0, _helpers.transitionProperty)() + 'Duration';
|
|
1394
1399
|
var promises = [];
|
|
1395
|
-
var animatedElements = (0, _utils.queryAll)(
|
|
1400
|
+
var animatedElements = (0, _utils.queryAll)(selector, document.body);
|
|
1396
1401
|
|
|
1397
1402
|
if (!animatedElements.length) {
|
|
1398
|
-
console.
|
|
1403
|
+
console.warn('[swup] No animated elements found by selector ' + selector);
|
|
1399
1404
|
return [Promise.resolve()];
|
|
1400
1405
|
}
|
|
1401
1406
|
|
|
1402
1407
|
animatedElements.forEach(function (element) {
|
|
1403
|
-
var transitionDuration = window.getComputedStyle(element)[
|
|
1408
|
+
var transitionDuration = window.getComputedStyle(element)[durationProperty];
|
|
1404
1409
|
// Resolve immediately if no transition defined
|
|
1405
1410
|
if (!transitionDuration || transitionDuration == '0s') {
|
|
1406
|
-
console.
|
|
1411
|
+
console.warn('[swup] No CSS transition duration defined for element of selector ' + selector);
|
|
1407
1412
|
promises.push(Promise.resolve());
|
|
1408
1413
|
return;
|
|
1409
1414
|
}
|
|
@@ -1445,7 +1450,7 @@ var getPageData = function getPageData(request) {
|
|
|
1445
1450
|
if (pageObject) {
|
|
1446
1451
|
pageObject.responseURL = request.responseURL ? request.responseURL : window.location.href;
|
|
1447
1452
|
} else {
|
|
1448
|
-
console.warn('Received page is invalid.');
|
|
1453
|
+
console.warn('[swup] Received page is invalid.');
|
|
1449
1454
|
return null;
|
|
1450
1455
|
}
|
|
1451
1456
|
|
package/dist/swup.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
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=S(r);var a=n(8);var o=S(a);var s=n(9);var u=S(s);var l=n(10);var c=S(l);var f=n(11);var d=S(f);var h=n(12);var p=S(h);var v=n(13);var g=S(v);var m=n(14);var y=S(m);var w=n(15);var b=S(w);var E=n(2);var P=S(E);var _=n(16);var k=S(_);function S(e){return e&&e.__esModule?e:{default:e}}var O=t.classify=i.default;var j=t.createHistoryRecord=o.default;var M=t.getDataFromHtml=u.default;var H=t.fetch=c.default;var L=t.transitionEnd=d.default;var C=t.transitionProperty=p.default;var A=t.getCurrentUrl=g.default;var T=t.normalizeUrl=y.default;var q=t.markSwupElements=b.default;var U=t.Link=P.default;var x=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=L(a);var s=n(6);var u=L(s);var l=n(17);var c=L(l);var f=n(18);var d=L(f);var h=n(19);var p=L(h);var v=n(20);var g=L(v);var m=n(21);var y=L(m);var w=n(22);var b=L(w);var E=n(23);var P=L(E);var _=n(24);var k=L(_);var S=n(25);var O=L(S);var j=n(26);var M=n(1);var H=n(0);function L(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 A=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=O.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){var n=(0,H.getDataFromHtml)(document.documentElement.outerHTML,this.options.containers);n.url=n.responseURL=(0,H.getCurrentUrl)();this.cache.cacheUrl(n)}(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=A},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.getElementsByTagName("title")[0].innerText,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.error("Container "+e+" not found on page.");return null}else{if((0,r.queryAll)(e).length!==(0,r.queryAll)(e,i).length){console.warn("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.error("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=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;var o=[],s=void 0;var u=function e(){a.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,i.classify)(t.url));o=a.getAnimationPromises("out");Promise.all(o).then(function(){a.triggerEvent("animationOutDone")});if(!n){var r=void 0;if(a.scrollToElement!=null){r=t.url+a.scrollToElement}else{r=t.url}(0,i.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,i.classify)(t.customTransition))}else{this.updateTransition(window.location.pathname,t.url)}if(!n||this.options.animateHistoryBrowsing){u()}else{this.triggerEvent("animationSkipped")}if(this.cache.exists(t.url)){s=new Promise(function(e){e()});this.triggerEvent("pageRetrievedFromCache")}else{if(!this.preloadPromise||this.preloadPromise.route!=t.url){s=new Promise(function(e,n){(0,i.fetch)(r({},t,{headers:a.options.requestHeaders}),function(r){if(r.status===500){a.triggerEvent("serverError");n(t.url);return}else{var i=a.getPageData(r);if(i!=null){i.url=t.url}else{n(t.url);return}a.cache.cacheUrl(i);a.triggerEvent("pageLoaded")}e()})})}else{s=this.preloadPromise}}Promise.all(o.concat([s])).then(function(){a.renderPage(a.cache.getPage(t.url),n);a.preloadPromise=null}).catch(function(e){a.options.skipPopStateHandling=function(){window.location=e;return true};window.history.go(-1)})};t.default=a},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;var n=[];var a=(0,r.queryAll)(this.options.animationSelector,document.body);if(!a.length){console.error("No animated elements found by selector "+this.options.animationSelector);return[Promise.resolve()]}a.forEach(function(e){var r=window.getComputedStyle(e)[(0,i.transitionProperty)()+"Duration"];if(!r||r=="0s"){console.error("No CSS transition duration defined for element of selector "+t.options.animationSelector);n.push(Promise.resolve());return}var a=new Promise(function(t){e.addEventListener((0,i.transitionEnd)(),function(n){if(e==n.target){t()}})});n.push(a)});return n};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("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})}}])});
|
|
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})}}])});
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
|
|
4
|
+
value: true
|
|
5
5
|
});
|
|
6
6
|
var cleanupAnimationClasses = function cleanupAnimationClasses() {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
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
16
|
};
|
|
17
17
|
|
|
18
18
|
exports.default = cleanupAnimationClasses;
|
|
@@ -8,7 +8,7 @@ var createHistoryRecord = function createHistoryRecord(url) {
|
|
|
8
8
|
url: url || window.location.href.split(window.location.hostname)[1],
|
|
9
9
|
random: Math.random(),
|
|
10
10
|
source: 'swup'
|
|
11
|
-
}, document.
|
|
11
|
+
}, document.title, url || window.location.href.split(window.location.hostname)[1]);
|
|
12
12
|
};
|
|
13
13
|
|
|
14
14
|
exports.default = createHistoryRecord;
|
|
@@ -13,11 +13,11 @@ var getDataFromHtml = function getDataFromHtml(html, containers) {
|
|
|
13
13
|
|
|
14
14
|
containers.forEach(function (selector) {
|
|
15
15
|
if ((0, _utils.query)(selector, fakeDom) == null) {
|
|
16
|
-
console.
|
|
16
|
+
console.warn('[swup] Container ' + selector + ' not found on page.');
|
|
17
17
|
return null;
|
|
18
18
|
} else {
|
|
19
19
|
if ((0, _utils.queryAll)(selector).length !== (0, _utils.queryAll)(selector, fakeDom).length) {
|
|
20
|
-
console.warn('Mismatched number of containers found on new page.');
|
|
20
|
+
console.warn('[swup] Mismatched number of containers found on new page.');
|
|
21
21
|
}
|
|
22
22
|
(0, _utils.queryAll)(selector).forEach(function (item, index) {
|
|
23
23
|
(0, _utils.queryAll)(selector, fakeDom)[index].setAttribute('data-swup', blocks.length);
|
|
@@ -27,7 +27,7 @@ var getDataFromHtml = function getDataFromHtml(html, containers) {
|
|
|
27
27
|
});
|
|
28
28
|
|
|
29
29
|
var json = {
|
|
30
|
-
title: fakeDom.querySelector('title').innerText,
|
|
30
|
+
title: (fakeDom.querySelector('title') || {}).innerText,
|
|
31
31
|
pageClass: fakeDom.querySelector('body').className,
|
|
32
32
|
originalContent: html,
|
|
33
33
|
blocks: blocks
|
|
@@ -11,7 +11,7 @@ var markSwupElements = function markSwupElements(element, containers) {
|
|
|
11
11
|
|
|
12
12
|
containers.forEach(function (selector) {
|
|
13
13
|
if ((0, _utils.query)(selector, element) == null) {
|
|
14
|
-
console.
|
|
14
|
+
console.warn('[swup] Container ' + selector + ' not found on page.');
|
|
15
15
|
} else {
|
|
16
16
|
(0, _utils.queryAll)(selector).forEach(function (item, index) {
|
|
17
17
|
(0, _utils.queryAll)(selector, element)[index].setAttribute('data-swup', blocks);
|
package/lib/index.js
CHANGED
|
@@ -167,11 +167,11 @@ var Swup = function () {
|
|
|
167
167
|
window.addEventListener('popstate', this.boundPopStateHandler);
|
|
168
168
|
|
|
169
169
|
// initial save to cache
|
|
170
|
-
if (this.options.cache) {
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
170
|
+
if (this.options.cache) {}
|
|
171
|
+
// disabled to avoid caching modified dom state
|
|
172
|
+
// https://github.com/swup/swup/issues/475
|
|
173
|
+
// logic moved to preload plugin
|
|
174
|
+
|
|
175
175
|
|
|
176
176
|
// mark swup blocks in html
|
|
177
177
|
(0, _helpers.markSwupElements)(document.documentElement, this.options.containers);
|
|
@@ -9,21 +9,21 @@ var _utils = require('../utils');
|
|
|
9
9
|
var _helpers = require('../helpers');
|
|
10
10
|
|
|
11
11
|
var getAnimationPromises = function getAnimationPromises() {
|
|
12
|
-
var
|
|
13
|
-
|
|
12
|
+
var selector = this.options.animationSelector;
|
|
13
|
+
var durationProperty = (0, _helpers.transitionProperty)() + 'Duration';
|
|
14
14
|
var promises = [];
|
|
15
|
-
var animatedElements = (0, _utils.queryAll)(
|
|
15
|
+
var animatedElements = (0, _utils.queryAll)(selector, document.body);
|
|
16
16
|
|
|
17
17
|
if (!animatedElements.length) {
|
|
18
|
-
console.
|
|
18
|
+
console.warn('[swup] No animated elements found by selector ' + selector);
|
|
19
19
|
return [Promise.resolve()];
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
animatedElements.forEach(function (element) {
|
|
23
|
-
var transitionDuration = window.getComputedStyle(element)[
|
|
23
|
+
var transitionDuration = window.getComputedStyle(element)[durationProperty];
|
|
24
24
|
// Resolve immediately if no transition defined
|
|
25
25
|
if (!transitionDuration || transitionDuration == '0s') {
|
|
26
|
-
console.
|
|
26
|
+
console.warn('[swup] No CSS transition duration defined for element of selector ' + selector);
|
|
27
27
|
promises.push(Promise.resolve());
|
|
28
28
|
return;
|
|
29
29
|
}
|
|
@@ -16,7 +16,7 @@ var getPageData = function getPageData(request) {
|
|
|
16
16
|
if (pageObject) {
|
|
17
17
|
pageObject.responseURL = request.responseURL ? request.responseURL : window.location.href;
|
|
18
18
|
} else {
|
|
19
|
-
console.warn('Received page is invalid.');
|
|
19
|
+
console.warn('[swup] Received page is invalid.');
|
|
20
20
|
return null;
|
|
21
21
|
}
|
|
22
22
|
|
package/lib/modules/loadPage.js
CHANGED
|
@@ -4,6 +4,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
|
|
7
|
+
var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }();
|
|
8
|
+
|
|
7
9
|
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
10
|
|
|
9
11
|
var _helpers = require('../helpers');
|
|
@@ -66,7 +68,7 @@ var loadPage = function loadPage(data, popstate) {
|
|
|
66
68
|
// start/skip loading of page
|
|
67
69
|
if (this.cache.exists(data.url)) {
|
|
68
70
|
xhrPromise = new Promise(function (resolve) {
|
|
69
|
-
resolve();
|
|
71
|
+
resolve(_this.cache.getPage(data.url));
|
|
70
72
|
});
|
|
71
73
|
this.triggerEvent('pageRetrievedFromCache');
|
|
72
74
|
} else {
|
|
@@ -80,7 +82,7 @@ var loadPage = function loadPage(data, popstate) {
|
|
|
80
82
|
} else {
|
|
81
83
|
// get json data
|
|
82
84
|
var page = _this.getPageData(response);
|
|
83
|
-
if (page != null) {
|
|
85
|
+
if (page != null && page.blocks.length > 0) {
|
|
84
86
|
page.url = data.url;
|
|
85
87
|
} else {
|
|
86
88
|
reject(data.url);
|
|
@@ -89,8 +91,8 @@ var loadPage = function loadPage(data, popstate) {
|
|
|
89
91
|
// render page
|
|
90
92
|
_this.cache.cacheUrl(page);
|
|
91
93
|
_this.triggerEvent('pageLoaded');
|
|
94
|
+
resolve(page);
|
|
92
95
|
}
|
|
93
|
-
resolve();
|
|
94
96
|
});
|
|
95
97
|
});
|
|
96
98
|
} else {
|
|
@@ -99,9 +101,12 @@ var loadPage = function loadPage(data, popstate) {
|
|
|
99
101
|
}
|
|
100
102
|
|
|
101
103
|
// when everything is ready, handle the outcome
|
|
102
|
-
Promise.all(
|
|
104
|
+
Promise.all([xhrPromise].concat(animationPromises)).then(function (_ref) {
|
|
105
|
+
var _ref2 = _slicedToArray(_ref, 1),
|
|
106
|
+
pageData = _ref2[0];
|
|
107
|
+
|
|
103
108
|
// render page
|
|
104
|
-
_this.renderPage(
|
|
109
|
+
_this.renderPage(pageData, popstate);
|
|
105
110
|
_this.preloadPromise = null;
|
|
106
111
|
}).catch(function (errorUrl) {
|
|
107
112
|
// rewrite the skipPopStateHandling function to redirect manually when the history.go is processed
|
package/package.json
CHANGED
|
@@ -1,18 +1,22 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "swup",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.19",
|
|
4
4
|
"description": "Complete, flexible, extensible and easy to use page transition library for your web.",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"cy:open": "cypress open",
|
|
8
8
|
"compile": "babel --presets es2015,stage-0 -d lib/ src/",
|
|
9
9
|
"build": "webpack-cli",
|
|
10
|
+
"lint": "prettier src/**/*.{js,mjs} --write",
|
|
10
11
|
"prepublish": "npm run compile && npm run build",
|
|
11
12
|
"postinstall": "opencollective-postinstall || true",
|
|
12
|
-
"
|
|
13
|
+
"ci": "npm run build && npm run test:instrument && start-server-and-test test:server http://localhost:8274 test:run:record",
|
|
14
|
+
"test": "npm run build && npm run test:instrument && start-server-and-test test:server http://localhost:8274 test:run",
|
|
15
|
+
"test:headed": "npm run build && npm run test:instrument && start-server-and-test test:server http://localhost:8274 cy:open",
|
|
13
16
|
"test:instrument": "nyc instrument --compact=false dist test/site/swup",
|
|
14
|
-
"test:server": "http-server test/site",
|
|
15
|
-
"test:run": "cypress run
|
|
17
|
+
"test:server": "http-server --port 8274 test/site",
|
|
18
|
+
"test:run": "cypress run",
|
|
19
|
+
"test:run:record": "cypress run --record"
|
|
16
20
|
},
|
|
17
21
|
"author": "Georgy Marchuk",
|
|
18
22
|
"license": "MIT",
|
|
@@ -51,5 +55,6 @@
|
|
|
51
55
|
"collective": {
|
|
52
56
|
"type": "opencollective",
|
|
53
57
|
"url": "https://opencollective.com/swup"
|
|
54
|
-
}
|
|
58
|
+
},
|
|
59
|
+
"prettier": "@swup/prettier-config"
|
|
55
60
|
}
|