Socket
Socket
Sign inDemoInstall

atomic-router

Package Overview
Dependencies
Maintainers
1
Versions
60
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

atomic-router - npm Package Compare versions

Comparing version 0.5.0-dev.11 to 0.5.0-dev.12

144

dist/atomic-router.cjs.development.js

@@ -864,3 +864,7 @@ 'use strict';

var createRoute = function createRoute() {
var createRoute = function createRoute(params) {
if (params === void 0) {
params = {};
}
var navigateFx = effector.createEffect( /*#__PURE__*/function () {

@@ -982,2 +986,31 @@ var _ref2 = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee(_ref) {

});
if (params.filter) {
var filter = params.filter;
effector.split({
and: [{
source: effector.sample({
and: [{
clock: filter
}],
or: {
name: "source",
sid: "wyzurx"
}
}),
// @ts-expect-error
match: function match(filter) {
return filter ? 'true' : 'false';
},
cases: {
"true": opened,
"false": closed
}
}],
or: {
sid: "-wn8fbj"
}
});
}
var instance = {

@@ -993,3 +1026,7 @@ $isOpened: $isOpened,

open: openFx,
kind: Kind.ROUTE
kind: Kind.ROUTE,
// @ts-expect-error Internal stuff
settings: {
derived: Boolean(params.filter)
}
};

@@ -1029,3 +1066,3 @@ return instance;

var equals = function equals(a, b) {
var paramsEqual = function paramsEqual(a, b) {
if (Object.keys(a).length !== Object.keys(b).length) {

@@ -1036,3 +1073,7 @@ return false;

for (var k in a) {
if (a[k] !== b[k]) {
// NOTE: Parsed URI always returns string parameters
// so we force string comparison here
// in order to avoid extra updates
// whenever user passes numeric params
if ("" + a[k] !== "" + b[k]) {
return false;

@@ -1079,3 +1120,24 @@ }

return next;
var derivedRoutes = [];
var nonDerivedRoutes = [];
for (var _i = 0, _next = next; _i < _next.length; _i++) {
var routeObj = _next[_i];
// @ts-expect-error Internals
if (routeObj.route.settings.derived) {
derivedRoutes.push(routeObj);
} else {
nonDerivedRoutes.push(routeObj);
}
}
if (derivedRoutes.length) {
for (var _iterator2 = _createForOfIteratorHelperLoose(derivedRoutes), _step2; !(_step2 = _iterator2()).done;) {
var derivedRoute = _step2.value;
console.error("createHistoryRouter: " + derivedRoute.path + " uses derived route. This won't work");
}
}
return nonDerivedRoutes;
};

@@ -1087,15 +1149,15 @@

name: "setHistory",
sid: "-clu30d"
sid: "eurzux"
});
var routeNotFound = effector.createEvent({
name: "routeNotFound",
sid: "-xnr4av"
sid: "-6751fl"
});
var $query = effector.createStore({}, {
name: "$query",
sid: "i4zffs"
sid: "-pfijo2"
});
var $path = effector.createStore('', {
name: "$path",
sid: "-rt73a5"
sid: "-cl0ev"
});

@@ -1107,7 +1169,7 @@ var $activeRoutes = effector.createStore([], {

name: "$activeRoutes",
sid: "ghza91"
sid: "y0nau8"
});
var $isFirstCheckPassed = effector.createStore(false, {
name: "$isFirstCheckPassed",
sid: "-bpyumz"
sid: "5sp5y8"
}); // @ts-expect-error

@@ -1120,3 +1182,3 @@

name: "$history",
sid: "-6zzmt3"
sid: "kgmg27"
});

@@ -1142,3 +1204,3 @@ $history.on(setHistory, function (_, nextHistory) {

name: "pushFx",
sid: "oynwne"
sid: "-sjs4qj"
}

@@ -1164,3 +1226,3 @@ }); // Triggered whenever some route.navigate.doneData is triggered

name: "openedFx",
sid: "254znm"
sid: "jnt08t"
}); // Recalculate opened/closed routes

@@ -1174,4 +1236,4 @@

for (var _iterator2 = _createForOfIteratorHelperLoose(remappedRoutes), _step2; !(_step2 = _iterator2()).done;) {
var route = _step2.value;
for (var _iterator3 = _createForOfIteratorHelperLoose(remappedRoutes), _step3; !(_step3 = _iterator3()).done;) {
var route = _step3.value;

@@ -1198,3 +1260,3 @@ var _matchPath = matchPath({

name: "recalculateFx",
sid: "-7f7p5c"
sid: "k1edpy"
});

@@ -1221,3 +1283,3 @@ $path.on(recalculateFx.done, function (_prev, _ref4) {

or: {
sid: "7dw78t"
sid: "-jyj318"
}

@@ -1240,3 +1302,3 @@ }); // sample({

or: {
sid: "7ue11n"
sid: "-ji198e"
}

@@ -1254,6 +1316,6 @@ });

var _loop2 = function _loop2() {
var routeObj = _step3.value;
var routeObj = _step4.value;
var $isOpenedManually = effector.createStore(false, {
name: "$isOpenedManually",
sid: "cw52y2"
sid: "-uocw5s"
}); // Watch for route.navigate.doneData to build new path and push

@@ -1278,3 +1340,3 @@

or: {
sid: "-jwbwkc"
sid: "-j0fu5e"
}

@@ -1299,3 +1361,3 @@ });

name: "opened",
sid: "rp79u"
sid: "iad7v1"
}

@@ -1310,3 +1372,3 @@ }),

name: "updated",
sid: "-x8osn5"
sid: "-5s2prv"
}

@@ -1321,3 +1383,3 @@ }),

name: "closed",
sid: "d80zko"
sid: "uqp05v"
}

@@ -1340,3 +1402,3 @@ })

name: "updated",
sid: "-hm79k5"
sid: "9uetb5"
}

@@ -1348,3 +1410,3 @@ });

name: "source",
sid: "-1cfj8b"
sid: "g68hcw"
}),

@@ -1359,3 +1421,3 @@ clock: effector.guard({

query = _ref14[1];
return !equals(params, next.params) || !equals(query, next.query);
return !paramsEqual(params, next.params) || !paramsEqual(query, next.query);
}

@@ -1365,3 +1427,3 @@ }],

name: "clock",
sid: "cueh1p"
sid: "-uq3i25"
}

@@ -1375,3 +1437,3 @@ }),

or: {
sid: "-i3zz53"
sid: "-hjnl6q"
}

@@ -1389,3 +1451,3 @@ }); // Trigger .opened() for the routes marked as "opened"

or: {
sid: "-hkr6dg"
sid: "-gov3yi"
}

@@ -1400,3 +1462,3 @@ }); // Trigger .closed() for the routes marked as "closed"

or: {
sid: "-h5wqcp"
sid: "-glkcec"
}

@@ -1410,3 +1472,3 @@ }); // Reset $isOpenedManually

or: {
sid: "-wi6bsp"
sid: "-51k8xf"
}

@@ -1416,3 +1478,3 @@ }));

for (var _iterator3 = _createForOfIteratorHelperLoose(remappedRoutes), _step3; !(_step3 = _iterator3()).done;) {
for (var _iterator4 = _createForOfIteratorHelperLoose(remappedRoutes), _step4; !(_step4 = _iterator4()).done;) {
_loop2();

@@ -1461,3 +1523,3 @@ } // Takes current path from history and triggers recalculate

name: "recheckFx",
sid: "g883jo"
sid: "xqw44v"
}

@@ -1471,3 +1533,3 @@ });

or: {
sid: "-g4iq3l"
sid: "-5aolek"
}

@@ -1518,3 +1580,3 @@ }); // Triggered whenever history instance is set

name: "subscribeHistoryFx",
sid: "c6ar7v"
sid: "-h89jdx"
}

@@ -1531,3 +1593,3 @@ }); // If `hydrate` flag is set,

or: {
sid: "-4u6ria"
sid: "-49udjx"
}

@@ -1543,3 +1605,3 @@ });

or: {
sid: "-4rfsmx"
sid: "-3vjq7z"
}

@@ -1559,3 +1621,3 @@ });

name: "clock",
sid: "cb8dke"
sid: "-v99ljg"
}

@@ -1571,3 +1633,3 @@ }),

name: "initialized",
sid: "r0pz07"
sid: "-qhq2dq"
}

@@ -1574,0 +1636,0 @@ });

@@ -1,2 +0,2 @@

"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("effector"),t=require("path-to-regexp");function r(e,t,r,n,o,a,i){try{var c=e[a](i),u=c.value}catch(e){return void r(e)}c.done?t(u):Promise.resolve(u).then(n,o)}function n(e){return function(){var t=this,n=arguments;return new Promise((function(o,a){var i=e.apply(t,n);function c(e){r(i,o,a,c,u,"next",e)}function u(e){r(i,o,a,c,u,"throw",e)}c(void 0)}))}}function o(){return(o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function i(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(r)return(r=r.call(e)).next.bind(r);if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return a(e,void 0);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?a(e,void 0):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0;return function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var c,u=(function(e){var t=function(e){var t=Object.prototype,r=t.hasOwnProperty,n="function"==typeof Symbol?Symbol:{},o=n.iterator||"@@iterator",a=n.asyncIterator||"@@asyncIterator",i=n.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function u(e,t,r,n){var o=Object.create((t&&t.prototype instanceof f?t:f).prototype),a=new O(n||[]);return o._invoke=function(e,t,r){var n="suspendedStart";return function(o,a){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw a;return{value:void 0,done:!0}}for(r.method=o,r.arg=a;;){var i=r.delegate;if(i){var c=w(i,r);if(c){if(c===d)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=s(e,t,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===d)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}(e,r,a),o}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=u;var d={};function f(){}function p(){}function l(){}var h={};c(h,o,(function(){return this}));var m=Object.getPrototypeOf,y=m&&m(m(E([])));y&&y!==t&&r.call(y,o)&&(h=y);var v=l.prototype=f.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function b(e,t){var n;this._invoke=function(o,a){function i(){return new t((function(n,i){!function n(o,a,i,c){var u=s(e[o],e,a);if("throw"!==u.type){var d=u.arg,f=d.value;return f&&"object"==typeof f&&r.call(f,"__await")?t.resolve(f.__await).then((function(e){n("next",e,i,c)}),(function(e){n("throw",e,i,c)})):t.resolve(f).then((function(e){d.value=e,i(d)}),(function(e){return n("throw",e,i,c)}))}c(u.arg)}(o,a,n,i)}))}return n=n?n.then(i,i):i()}}function w(e,t){var r=e.iterator[t.method];if(void 0===r){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,w(e,t),"throw"===t.method))return d;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return d}var n=s(r,e.iterator,t.arg);if("throw"===n.type)return t.method="throw",t.arg=n.arg,t.delegate=null,d;var o=n.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function k(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function x(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function O(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(k,this),this.reset(!0)}function E(e){if(e){var t=e[o];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,a=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return a.next=a}}return{next:q}}function q(){return{value:void 0,done:!0}}return p.prototype=l,c(v,"constructor",l),c(l,"constructor",p),p.displayName=c(l,i,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,l):(e.__proto__=l,c(e,i,"GeneratorFunction")),e.prototype=Object.create(v),e},e.awrap=function(e){return{__await:e}},g(b.prototype),c(b.prototype,a,(function(){return this})),e.AsyncIterator=b,e.async=function(t,r,n,o,a){void 0===a&&(a=Promise);var i=new b(u(t,r,n,o),a);return e.isGeneratorFunction(r)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},g(v),c(v,i,"Generator"),c(v,o,(function(){return this})),c(v,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=[];for(var r in e)t.push(r);return t.reverse(),function r(){for(;t.length;){var n=t.pop();if(n in e)return r.value=n,r.done=!1,r}return r.done=!0,r}},e.values=E,O.prototype={constructor:O,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(x),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return i.type="throw",i.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var a=this.tryEntries[o],i=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var c=r.call(a,"catchLoc"),u=r.call(a,"finallyLoc");if(c&&u){if(this.prev<a.catchLoc)return n(a.catchLoc,!0);if(this.prev<a.finallyLoc)return n(a.finallyLoc)}else if(c){if(this.prev<a.catchLoc)return n(a.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return n(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var a=o;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=e,i.arg=t,a?(this.method="next",this.next=a.finallyLoc,d):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),x(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;x(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:E(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}(e.exports);try{regeneratorRuntime=t}catch(e){"object"==typeof globalThis?globalThis.regeneratorRuntime=t:Function("r","regeneratorRuntime = r")(t)}}(c={exports:{}}),c.exports),s={ROUTE:Symbol()},d=function(){var t=e.createEffect(function(){var e=n(u.mark((function e(t){return u.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",{params:t.params||{},query:t.query||{}});case 2:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),{name:"navigateFx",sid:"-apj8ex"}),r=e.attach({and:{effect:t,mapParams:function(e){return{params:e||{},query:{}}}},or:{name:"openFx",sid:"-ju5g7s"}}),o=e.createStore(!1,{name:"$isOpened",sid:"7ntohw"}),a=e.createStore({},{name:"$params",sid:"1blfp4"}),i=e.createStore({},{name:"$query",sid:"rvelj"}),c=e.createEvent({name:"opened",sid:"-f8s17u"}),d=e.createEvent({name:"updated",sid:"slzlyp"}),f=e.createEvent({name:"left",sid:"yy6ys3"}),p=e.createEvent({name:"closed",sid:"-say4ff"});return o.on(c,(function(){return!0})).on(f,(function(){return!1})),a.on(c,(function(e,t){return t.params})).on(d,(function(e,t){return t.params})),i.on(c,(function(e,t){return t.query})).on(d,(function(e,t){return t.query})),e.split({and:[{source:t.doneData,match:o.map((function(e){return e?"updated":"opened"})),cases:{opened:c,updated:d}}],or:{sid:"-x6h86m"}}),e.sample({and:[{clock:p,target:f}],or:{sid:"-wqj6z5"}}),{$isOpened:o,$params:a,$query:i,opened:c,updated:d,closed:p,left:f,navigate:t,open:r,kind:s.ROUTE}};function f(e){var r=e.params,n=e.query;return t.compile(e.pathCreator)(r)+(Object.keys(n).length?"?"+new URLSearchParams(n):"")}function p(e){var r=e.actualPath,n=t.match(e.pathCreator)(new URL("http://_"+r).pathname);return n?{matches:!0,params:n.params}:{matches:!1}}var l=function(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var r in e)if(e[r]!==t[r])return!1;return!0},h=e.createEffect((function(e){if(!e.history)throw new Error("[Routing] No history provided");return e.history[e.method](e.path,{}),e}),{name:"historyPushFx",sid:"t43sn8"}),m=function(e){return"object"==typeof e&&null!==e&&"kind"in e&&e.kind===s.ROUTE},y=function(t){return e.is.store(t,{sid:"-v906zu"})?t:e.createStore(t,{sid:"-v904rr"})};exports.Kind=s,exports.buildPath=f,exports.chainRoute=function(t){var r=function(t){if(m(t))return{route:t,chainedRoute:e.withFactory({sid:"jogy9l",fn:function(){return d()},name:"chainedRoute",method:"createRoute"}),beforeOpen:e.createEvent({name:"beforeOpen",sid:"8mpttm"}),openOn:[t.opened,t.closed],cancelOn:[e.createEvent({name:"cancelOn",sid:"ahjdm4"})]};var r=t;if(!("enterOn"in r)&&e.is.effect(r.beforeOpen,{sid:"fx5yhy"}))return{route:r.route,chainedRoute:r.chainedRoute||e.withFactory({sid:"fyulbq",fn:function(){return d()},name:"chainedRoute",method:"createRoute"}),beforeOpen:r.beforeOpen,openOn:r.beforeOpen.doneData,cancelOn:r.beforeOpen.failData};var n=t;return{route:n.route,chainedRoute:n.chainedRoute||e.withFactory({sid:"u6793u",fn:function(){return d()},name:"chainedRoute",method:"createRoute"}),beforeOpen:n.beforeOpen,openOn:e.sample({and:[{clock:n.openOn}],or:{name:"openOn",sid:"-mm7rdb"}}),cancelOn:e.sample({and:[{clock:n.cancelOn||e.createEvent({name:"clock",sid:"y2etk0"})}],or:{name:"cancelOn",sid:"-vntqxj"}})}}(t),n=r.route,o=r.chainedRoute,a=r.beforeOpen,i=r.openOn,c=r.cancelOn,u=e.createStore({},{name:"$params",sid:"ru233x"}),s=e.createStore({},{name:"$query",sid:"2tnaew"}),f=e.combine({and:[e.combine({and:[[n.$params,n.$query]],or:{name:"and",sid:"-t8sbqu"}}),e.combine({and:[[u,s]],or:{name:"and",sid:"-t8s8s2"}}),function(e,t){return e[0]===t[0]&&e[1]===t[1]}],or:{name:"$hasSameParams",sid:"-w0fyuc"}}),p=e.sample({and:[{clock:[n.opened,n.updated]}],or:{name:"routeOpened",sid:"nobe5z"}});e.sample({and:[{clock:p,target:a}],or:{sid:"n0i9a7"}}),u.on(p,(function(e,t){return t.params})),s.on(p,(function(e,t){return t.query}));var l=e.guard({and:[{clock:i,source:{params:u,query:s},filter:f}],or:{name:"chainedRouteResolved",sid:"-qurk3a"}});e.sample({and:[{clock:l,target:o.navigate}],or:{sid:"ningv4"}});var h=e.merge([n.closed,c],{name:"aborted",sid:"-qm6c6a"});return u.reset(h),s.reset(h),e.sample({and:[{clock:h,target:o.closed}],or:{sid:"nz5any"}}),o},exports.createHistoryRouter=function(t){var r=function(e){for(var t,r=[],n=function(){var e=t.value;Array.isArray(e.route)?r.push.apply(r,e.route.map((function(t){return o({},e,{route:t})}))):r.push(e)},a=i(e);!(t=a()).done;)n();return r}(t.routes),a=e.createEvent({name:"setHistory",sid:"-clu30d"}),c=e.createEvent({name:"routeNotFound",sid:"-xnr4av"}),s=e.createStore({},{name:"$query",sid:"i4zffs"}),d=e.createStore("",{name:"$path",sid:"-rt73a5"}),m=e.createStore([],{and:{serialize:"ignore"},name:"$activeRoutes",sid:"ghza91"}),y=e.createStore(!1,{name:"$isFirstCheckPassed",sid:"-bpyumz"}),v=e.createStore(null,{and:{serialize:"ignore"},name:"$history",sid:"-6zzmt3"});v.on(a,(function(e,t){return t}));var g=e.attach({and:{source:{history:v},effect:h,mapParams:function(e,t){return o({history:t.history},e)}},or:{name:"pushFx",sid:"oynwne"}}),b=e.createEffect((function(e){var t=e.params,r=e.query;return{path:f({pathCreator:e.route.path,params:t,query:r}),params:t,query:r,method:"push"}}),{name:"openedFx",sid:"254znm"}),w=e.createEffect((function(e){for(var t,n=e.path,o=e.query,a=[],c=[],u=i(r);!(t=u()).done;){var s=t.value,d=p({pathCreator:s.path,actualPath:n});(d.matches?a:c).push({route:s,params:d.params,query:o})}return{opened:a,closed:c}}),{name:"recalculateFx",sid:"-7f7p5c"});d.on(w.done,(function(e,t){return t.params.path})),s.on(w.done,(function(e,t){return t.params.query})),m.on(w.doneData,(function(e,t){return t.opened.map((function(e){return e.route.route}))})),e.sample({and:[{clock:b.doneData,target:g}],or:{sid:"7dw78t"}}),e.guard({and:[{clock:w.doneData,filter:function(e){return 0===e.opened.length},target:c}],or:{sid:"7ue11n"}});for(var k,x=w.doneData.map((function(e){return e.opened})),O=w.doneData.map((function(e){return e.closed})),E=function(){var t=k.value,r=e.createStore(!1,{name:"$isOpenedManually",sid:"cw52y2"}),n=t.route.navigate.done;e.sample({and:[{clock:n,fn:function(e){var r=e.result;return{route:t,params:r.params,query:r.query}},target:b}],or:{sid:"-jwbwkc"}});var o=function(e){return e.find((function(e){return e.route===t}))},a={opened:e.guard({and:[{clock:x.filterMap(o),filter:t.route.$isOpened.map((function(e){return!e}))}],or:{name:"opened",sid:"rp79u"}}),updated:e.guard({and:[{clock:x.filterMap(o),filter:t.route.$isOpened}],or:{name:"updated",sid:"-x8osn5"}}),closed:e.guard({and:[{clock:O.filterMap(o),filter:t.route.$isOpened}],or:{name:"closed",sid:"d80zko"}})};r.on(n,(function(){return!0}));var i=e.guard({and:[{clock:a.updated,filter:r.map((function(e){return!e}))}],or:{name:"updated",sid:"-hm79k5"}});e.sample({and:[{source:e.restore(i,null,{name:"source",sid:"-1cfj8b"}),clock:e.guard({and:[{clock:i,source:[t.route.$params,t.route.$query],filter:function(e,t){var r=e[1];return!l(e[0],t.params)||!l(r,t.query)}}],or:{name:"clock",sid:"cueh1p"}}),fn:function(e){return e},target:t.route.updated}],or:{sid:"-i3zz53"}}),e.guard({and:[{clock:a.opened,filter:r.map((function(e){return!e})),target:t.route.opened}],or:{sid:"-hkr6dg"}}),e.sample({and:[{clock:a.closed,target:t.route.closed}],or:{sid:"-h5wqcp"}}),r.reset(e.sample({and:[{clock:x}],or:{sid:"-wi6bsp"}}))},q=i(r);!(k=q()).done;)E();var j,L=e.attach({and:{source:{history:v},effect:(j=n(u.mark((function e(t){var r,n;return u.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=[(r=t.history).location.pathname,Object.fromEntries(new URLSearchParams(r.location.search))],e.abrupt("return",{path:n[0],query:n[1]});case 3:case"end":return e.stop()}}),e)}))),function(e){return j.apply(this,arguments)})},or:{name:"recheckFx",sid:"g883jo"}});e.sample({and:[{source:L.doneData,target:w}],or:{sid:"-g4iq3l"}});var R,S=e.attach({and:{source:{history:v},effect:(R=n(u.mark((function t(r){var n,o;return u.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:n=r.history,o=L;try{o=e.scopeBind(L)}catch(e){}return n.listen((function(){o()})),t.abrupt("return",!0);case 5:case"end":return t.stop()}}),t)}))),function(e){return R.apply(this,arguments)})},or:{name:"subscribeHistoryFx",sid:"c6ar7v"}});t.hydrate||e.sample({and:[{clock:S.doneData,target:L}],or:{sid:"-4u6ria"}}),e.sample({and:[{clock:v,target:S}],or:{sid:"-4rfsmx"}}),y.on(w.doneData,(function(){return!0})).reset(v);var $=e.sample({and:[{clock:e.guard({and:[{clock:y,filter:Boolean}],or:{name:"clock",sid:"cb8dke"}}),source:{activeRoutes:m,path:d,query:s}}],or:{name:"initialized",sid:"r0pz07"}});return{$path:d,$query:s,$activeRoutes:m,$history:v,setHistory:a,push:g,routes:r,initialized:$,routeNotFound:c}},exports.createRoute=d,exports.isRoute=m,exports.matchPath=p,exports.redirect=function(t){var r=t.clock?e.sample({and:[{clock:t.clock}],or:{name:"clock",sid:"-nsh945"}}):e.createEvent({name:"clock",sid:"-nbfmpy"}),n=y(t.params||{}),o=y(t.query||{});return e.sample({and:[{clock:r,source:{params:n,query:o},fn:function(e,t){var r=e.params,n=e.query;return{params:"function"==typeof r?r(t):r,query:"function"==typeof n?n(t):n}},target:t.route.navigate}],or:{sid:"-8kqnzy"}}),r};
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("effector"),t=require("path-to-regexp");function r(e,t,r,n,o,a,i){try{var u=e[a](i),c=u.value}catch(e){return void r(e)}u.done?t(c):Promise.resolve(c).then(n,o)}function n(e){return function(){var t=this,n=arguments;return new Promise((function(o,a){var i=e.apply(t,n);function u(e){r(i,o,a,u,c,"next",e)}function c(e){r(i,o,a,u,c,"throw",e)}u(void 0)}))}}function o(){return(o=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}function a(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function i(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(r)return(r=r.call(e)).next.bind(r);if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return a(e,void 0);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?a(e,void 0):void 0}}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0;return function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var u,c=(function(e){var t=function(e){var t=Object.prototype,r=t.hasOwnProperty,n="function"==typeof Symbol?Symbol:{},o=n.iterator||"@@iterator",a=n.asyncIterator||"@@asyncIterator",i=n.toStringTag||"@@toStringTag";function u(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,r){return e[t]=r}}function c(e,t,r,n){var o=Object.create((t&&t.prototype instanceof f?t:f).prototype),a=new O(n||[]);return o._invoke=function(e,t,r){var n="suspendedStart";return function(o,a){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw a;return{value:void 0,done:!0}}for(r.method=o,r.arg=a;;){var i=r.delegate;if(i){var u=b(i,r);if(u){if(u===d)continue;return u}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var c=s(e,t,r);if("normal"===c.type){if(n=r.done?"completed":"suspendedYield",c.arg===d)continue;return{value:c.arg,done:r.done}}"throw"===c.type&&(n="completed",r.method="throw",r.arg=c.arg)}}}(e,r,a),o}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=c;var d={};function f(){}function l(){}function p(){}var h={};u(h,o,(function(){return this}));var m=Object.getPrototypeOf,y=m&&m(m(q([])));y&&y!==t&&r.call(y,o)&&(h=y);var v=p.prototype=f.prototype=Object.create(h);function g(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function w(e,t){var n;this._invoke=function(o,a){function i(){return new t((function(n,i){!function n(o,a,i,u){var c=s(e[o],e,a);if("throw"!==c.type){var d=c.arg,f=d.value;return f&&"object"==typeof f&&r.call(f,"__await")?t.resolve(f.__await).then((function(e){n("next",e,i,u)}),(function(e){n("throw",e,i,u)})):t.resolve(f).then((function(e){d.value=e,i(d)}),(function(e){return n("throw",e,i,u)}))}u(c.arg)}(o,a,n,i)}))}return n=n?n.then(i,i):i()}}function b(e,t){var r=e.iterator[t.method];if(void 0===r){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,b(e,t),"throw"===t.method))return d;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return d}var n=s(r,e.iterator,t.arg);if("throw"===n.type)return t.method="throw",t.arg=n.arg,t.delegate=null,d;var o=n.arg;return o?o.done?(t[e.resultName]=o.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):o:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function x(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function k(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function O(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(x,this),this.reset(!0)}function q(e){if(e){var t=e[o];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,a=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return a.next=a}}return{next:j}}function j(){return{value:void 0,done:!0}}return l.prototype=p,u(v,"constructor",p),u(p,"constructor",l),l.displayName=u(p,i,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===l||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,p):(e.__proto__=p,u(e,i,"GeneratorFunction")),e.prototype=Object.create(v),e},e.awrap=function(e){return{__await:e}},g(w.prototype),u(w.prototype,a,(function(){return this})),e.AsyncIterator=w,e.async=function(t,r,n,o,a){void 0===a&&(a=Promise);var i=new w(c(t,r,n,o),a);return e.isGeneratorFunction(r)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},g(v),u(v,i,"Generator"),u(v,o,(function(){return this})),u(v,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=[];for(var r in e)t.push(r);return t.reverse(),function r(){for(;t.length;){var n=t.pop();if(n in e)return r.value=n,r.done=!1,r}return r.done=!0,r}},e.values=q,O.prototype={constructor:O,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(k),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return i.type="throw",i.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var a=this.tryEntries[o],i=a.completion;if("root"===a.tryLoc)return n("end");if(a.tryLoc<=this.prev){var u=r.call(a,"catchLoc"),c=r.call(a,"finallyLoc");if(u&&c){if(this.prev<a.catchLoc)return n(a.catchLoc,!0);if(this.prev<a.finallyLoc)return n(a.finallyLoc)}else if(u){if(this.prev<a.catchLoc)return n(a.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return n(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var a=o;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var i=a?a.completion:{};return i.type=e,i.arg=t,a?(this.method="next",this.next=a.finallyLoc,d):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),k(r),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:q(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),d}},e}(e.exports);try{regeneratorRuntime=t}catch(e){"object"==typeof globalThis?globalThis.regeneratorRuntime=t:Function("r","regeneratorRuntime = r")(t)}}(u={exports:{}}),u.exports),s={ROUTE:Symbol()},d=function(t){void 0===t&&(t={});var r=e.createEffect(function(){var e=n(c.mark((function e(t){return c.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",{params:t.params||{},query:t.query||{}});case 2:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}(),{name:"navigateFx",sid:"-apj8ex"}),o=e.attach({and:{effect:r,mapParams:function(e){return{params:e||{},query:{}}}},or:{name:"openFx",sid:"-ju5g7s"}}),a=e.createStore(!1,{name:"$isOpened",sid:"7ntohw"}),i=e.createStore({},{name:"$params",sid:"1blfp4"}),u=e.createStore({},{name:"$query",sid:"rvelj"}),d=e.createEvent({name:"opened",sid:"-f8s17u"}),f=e.createEvent({name:"updated",sid:"slzlyp"}),l=e.createEvent({name:"left",sid:"yy6ys3"}),p=e.createEvent({name:"closed",sid:"-say4ff"});return a.on(d,(function(){return!0})).on(l,(function(){return!1})),i.on(d,(function(e,t){return t.params})).on(f,(function(e,t){return t.params})),u.on(d,(function(e,t){return t.query})).on(f,(function(e,t){return t.query})),e.split({and:[{source:r.doneData,match:a.map((function(e){return e?"updated":"opened"})),cases:{opened:d,updated:f}}],or:{sid:"-x6h86m"}}),e.sample({and:[{clock:p,target:l}],or:{sid:"-wqj6z5"}}),t.filter&&e.split({and:[{source:e.sample({and:[{clock:t.filter}],or:{name:"source",sid:"wyzurx"}}),match:function(e){return e?"true":"false"},cases:{true:d,false:p}}],or:{sid:"-wn8fbj"}}),{$isOpened:a,$params:i,$query:u,opened:d,updated:f,closed:p,left:l,navigate:r,open:o,kind:s.ROUTE,settings:{derived:Boolean(t.filter)}}};function f(e){var r=e.params,n=e.query;return t.compile(e.pathCreator)(r)+(Object.keys(n).length?"?"+new URLSearchParams(n):"")}function l(e){var r=e.actualPath,n=t.match(e.pathCreator)(new URL("http://_"+r).pathname);return n?{matches:!0,params:n.params}:{matches:!1}}var p=function(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var r in e)if(""+e[r]!=""+t[r])return!1;return!0},h=e.createEffect((function(e){if(!e.history)throw new Error("[Routing] No history provided");return e.history[e.method](e.path,{}),e}),{name:"historyPushFx",sid:"t43sn8"}),m=function(e){return"object"==typeof e&&null!==e&&"kind"in e&&e.kind===s.ROUTE},y=function(t){return e.is.store(t,{sid:"-v906zu"})?t:e.createStore(t,{sid:"-v904rr"})};exports.Kind=s,exports.buildPath=f,exports.chainRoute=function(t){var r=function(t){if(m(t))return{route:t,chainedRoute:e.withFactory({sid:"jogy9l",fn:function(){return d()},name:"chainedRoute",method:"createRoute"}),beforeOpen:e.createEvent({name:"beforeOpen",sid:"8mpttm"}),openOn:[t.opened,t.closed],cancelOn:[e.createEvent({name:"cancelOn",sid:"ahjdm4"})]};var r=t;if(!("enterOn"in r)&&e.is.effect(r.beforeOpen,{sid:"fx5yhy"}))return{route:r.route,chainedRoute:r.chainedRoute||e.withFactory({sid:"fyulbq",fn:function(){return d()},name:"chainedRoute",method:"createRoute"}),beforeOpen:r.beforeOpen,openOn:r.beforeOpen.doneData,cancelOn:r.beforeOpen.failData};var n=t;return{route:n.route,chainedRoute:n.chainedRoute||e.withFactory({sid:"u6793u",fn:function(){return d()},name:"chainedRoute",method:"createRoute"}),beforeOpen:n.beforeOpen,openOn:e.sample({and:[{clock:n.openOn}],or:{name:"openOn",sid:"-mm7rdb"}}),cancelOn:e.sample({and:[{clock:n.cancelOn||e.createEvent({name:"clock",sid:"y2etk0"})}],or:{name:"cancelOn",sid:"-vntqxj"}})}}(t),n=r.route,o=r.chainedRoute,a=r.beforeOpen,i=r.openOn,u=r.cancelOn,c=e.createStore({},{name:"$params",sid:"ru233x"}),s=e.createStore({},{name:"$query",sid:"2tnaew"}),f=e.combine({and:[e.combine({and:[[n.$params,n.$query]],or:{name:"and",sid:"-t8sbqu"}}),e.combine({and:[[c,s]],or:{name:"and",sid:"-t8s8s2"}}),function(e,t){return e[0]===t[0]&&e[1]===t[1]}],or:{name:"$hasSameParams",sid:"-w0fyuc"}}),l=e.sample({and:[{clock:[n.opened,n.updated]}],or:{name:"routeOpened",sid:"nobe5z"}});e.sample({and:[{clock:l,target:a}],or:{sid:"n0i9a7"}}),c.on(l,(function(e,t){return t.params})),s.on(l,(function(e,t){return t.query}));var p=e.guard({and:[{clock:i,source:{params:c,query:s},filter:f}],or:{name:"chainedRouteResolved",sid:"-qurk3a"}});e.sample({and:[{clock:p,target:o.navigate}],or:{sid:"ningv4"}});var h=e.merge([n.closed,u],{name:"aborted",sid:"-qm6c6a"});return c.reset(h),s.reset(h),e.sample({and:[{clock:h,target:o.closed}],or:{sid:"nz5any"}}),o},exports.createHistoryRouter=function(t){var r=function(e){for(var t,r=[],n=function(){var e=t.value;Array.isArray(e.route)?r.push.apply(r,e.route.map((function(t){return o({},e,{route:t})}))):r.push(e)},a=i(e);!(t=a()).done;)n();for(var u=[],c=[],s=0,d=r;s<d.length;s++){var f=d[s];f.route.settings.derived?u.push(f):c.push(f)}if(u.length)for(var l,p=i(u);!(l=p()).done;)console.error("createHistoryRouter: "+l.value.path+" uses derived route. This won't work");return c}(t.routes),a=e.createEvent({name:"setHistory",sid:"eurzux"}),u=e.createEvent({name:"routeNotFound",sid:"-6751fl"}),s=e.createStore({},{name:"$query",sid:"-pfijo2"}),d=e.createStore("",{name:"$path",sid:"-cl0ev"}),m=e.createStore([],{and:{serialize:"ignore"},name:"$activeRoutes",sid:"y0nau8"}),y=e.createStore(!1,{name:"$isFirstCheckPassed",sid:"5sp5y8"}),v=e.createStore(null,{and:{serialize:"ignore"},name:"$history",sid:"kgmg27"});v.on(a,(function(e,t){return t}));var g=e.attach({and:{source:{history:v},effect:h,mapParams:function(e,t){return o({history:t.history},e)}},or:{name:"pushFx",sid:"-sjs4qj"}}),w=e.createEffect((function(e){var t=e.params,r=e.query;return{path:f({pathCreator:e.route.path,params:t,query:r}),params:t,query:r,method:"push"}}),{name:"openedFx",sid:"jnt08t"}),b=e.createEffect((function(e){for(var t,n=e.path,o=e.query,a=[],u=[],c=i(r);!(t=c()).done;){var s=t.value,d=l({pathCreator:s.path,actualPath:n});(d.matches?a:u).push({route:s,params:d.params,query:o})}return{opened:a,closed:u}}),{name:"recalculateFx",sid:"k1edpy"});d.on(b.done,(function(e,t){return t.params.path})),s.on(b.done,(function(e,t){return t.params.query})),m.on(b.doneData,(function(e,t){return t.opened.map((function(e){return e.route.route}))})),e.sample({and:[{clock:w.doneData,target:g}],or:{sid:"-jyj318"}}),e.guard({and:[{clock:b.doneData,filter:function(e){return 0===e.opened.length},target:u}],or:{sid:"-ji198e"}});for(var x,k=b.doneData.map((function(e){return e.opened})),O=b.doneData.map((function(e){return e.closed})),q=function(){var t=x.value,r=e.createStore(!1,{name:"$isOpenedManually",sid:"-uocw5s"}),n=t.route.navigate.done;e.sample({and:[{clock:n,fn:function(e){var r=e.result;return{route:t,params:r.params,query:r.query}},target:w}],or:{sid:"-j0fu5e"}});var o=function(e){return e.find((function(e){return e.route===t}))},a={opened:e.guard({and:[{clock:k.filterMap(o),filter:t.route.$isOpened.map((function(e){return!e}))}],or:{name:"opened",sid:"iad7v1"}}),updated:e.guard({and:[{clock:k.filterMap(o),filter:t.route.$isOpened}],or:{name:"updated",sid:"-5s2prv"}}),closed:e.guard({and:[{clock:O.filterMap(o),filter:t.route.$isOpened}],or:{name:"closed",sid:"uqp05v"}})};r.on(n,(function(){return!0}));var i=e.guard({and:[{clock:a.updated,filter:r.map((function(e){return!e}))}],or:{name:"updated",sid:"9uetb5"}});e.sample({and:[{source:e.restore(i,null,{name:"source",sid:"g68hcw"}),clock:e.guard({and:[{clock:i,source:[t.route.$params,t.route.$query],filter:function(e,t){var r=e[1];return!p(e[0],t.params)||!p(r,t.query)}}],or:{name:"clock",sid:"-uq3i25"}}),fn:function(e){return e},target:t.route.updated}],or:{sid:"-hjnl6q"}}),e.guard({and:[{clock:a.opened,filter:r.map((function(e){return!e})),target:t.route.opened}],or:{sid:"-gov3yi"}}),e.sample({and:[{clock:a.closed,target:t.route.closed}],or:{sid:"-glkcec"}}),r.reset(e.sample({and:[{clock:k}],or:{sid:"-51k8xf"}}))},j=i(r);!(x=j()).done;)q();var E,R=e.attach({and:{source:{history:v},effect:(E=n(c.mark((function e(t){var r,n;return c.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=[(r=t.history).location.pathname,Object.fromEntries(new URLSearchParams(r.location.search))],e.abrupt("return",{path:n[0],query:n[1]});case 3:case"end":return e.stop()}}),e)}))),function(e){return E.apply(this,arguments)})},or:{name:"recheckFx",sid:"xqw44v"}});e.sample({and:[{source:R.doneData,target:b}],or:{sid:"-5aolek"}});var L,S=e.attach({and:{source:{history:v},effect:(L=n(c.mark((function t(r){var n,o;return c.wrap((function(t){for(;;)switch(t.prev=t.next){case 0:n=r.history,o=R;try{o=e.scopeBind(R)}catch(e){}return n.listen((function(){o()})),t.abrupt("return",!0);case 5:case"end":return t.stop()}}),t)}))),function(e){return L.apply(this,arguments)})},or:{name:"subscribeHistoryFx",sid:"-h89jdx"}});t.hydrate||e.sample({and:[{clock:S.doneData,target:R}],or:{sid:"-49udjx"}}),e.sample({and:[{clock:v,target:S}],or:{sid:"-3vjq7z"}}),y.on(b.doneData,(function(){return!0})).reset(v);var $=e.sample({and:[{clock:e.guard({and:[{clock:y,filter:Boolean}],or:{name:"clock",sid:"-v99ljg"}}),source:{activeRoutes:m,path:d,query:s}}],or:{name:"initialized",sid:"-qhq2dq"}});return{$path:d,$query:s,$activeRoutes:m,$history:v,setHistory:a,push:g,routes:r,initialized:$,routeNotFound:u}},exports.createRoute=d,exports.isRoute=m,exports.matchPath=l,exports.redirect=function(t){var r=t.clock?e.sample({and:[{clock:t.clock}],or:{name:"clock",sid:"-nsh945"}}):e.createEvent({name:"clock",sid:"-nbfmpy"}),n=y(t.params||{}),o=y(t.query||{});return e.sample({and:[{clock:r,source:{params:n,query:o},fn:function(e,t){var r=e.params,n=e.query;return{params:"function"==typeof r?r(t):r,query:"function"==typeof n?n(t):n}},target:t.route.navigate}],or:{sid:"-8kqnzy"}}),r};
//# sourceMappingURL=atomic-router.cjs.production.min.js.map

@@ -860,3 +860,7 @@ import { createEffect, attach, createStore, createEvent, split, sample, guard, restore, scopeBind, is, combine, merge, withFactory } from 'effector';

var createRoute = function createRoute() {
var createRoute = function createRoute(params) {
if (params === void 0) {
params = {};
}
var navigateFx = createEffect( /*#__PURE__*/function () {

@@ -978,2 +982,31 @@ var _ref2 = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee(_ref) {

});
if (params.filter) {
var filter = params.filter;
split({
and: [{
source: sample({
and: [{
clock: filter
}],
or: {
name: "source",
sid: "wyzurx"
}
}),
// @ts-expect-error
match: function match(filter) {
return filter ? 'true' : 'false';
},
cases: {
"true": opened,
"false": closed
}
}],
or: {
sid: "-wn8fbj"
}
});
}
var instance = {

@@ -989,3 +1022,7 @@ $isOpened: $isOpened,

open: openFx,
kind: Kind.ROUTE
kind: Kind.ROUTE,
// @ts-expect-error Internal stuff
settings: {
derived: Boolean(params.filter)
}
};

@@ -1025,3 +1062,3 @@ return instance;

var equals = function equals(a, b) {
var paramsEqual = function paramsEqual(a, b) {
if (Object.keys(a).length !== Object.keys(b).length) {

@@ -1032,3 +1069,7 @@ return false;

for (var k in a) {
if (a[k] !== b[k]) {
// NOTE: Parsed URI always returns string parameters
// so we force string comparison here
// in order to avoid extra updates
// whenever user passes numeric params
if ("" + a[k] !== "" + b[k]) {
return false;

@@ -1075,3 +1116,24 @@ }

return next;
var derivedRoutes = [];
var nonDerivedRoutes = [];
for (var _i = 0, _next = next; _i < _next.length; _i++) {
var routeObj = _next[_i];
// @ts-expect-error Internals
if (routeObj.route.settings.derived) {
derivedRoutes.push(routeObj);
} else {
nonDerivedRoutes.push(routeObj);
}
}
if (derivedRoutes.length) {
for (var _iterator2 = _createForOfIteratorHelperLoose(derivedRoutes), _step2; !(_step2 = _iterator2()).done;) {
var derivedRoute = _step2.value;
console.error("createHistoryRouter: " + derivedRoute.path + " uses derived route. This won't work");
}
}
return nonDerivedRoutes;
};

@@ -1083,15 +1145,15 @@

name: "setHistory",
sid: "-clu30d"
sid: "eurzux"
});
var routeNotFound = createEvent({
name: "routeNotFound",
sid: "-xnr4av"
sid: "-6751fl"
});
var $query = createStore({}, {
name: "$query",
sid: "i4zffs"
sid: "-pfijo2"
});
var $path = createStore('', {
name: "$path",
sid: "-rt73a5"
sid: "-cl0ev"
});

@@ -1103,7 +1165,7 @@ var $activeRoutes = createStore([], {

name: "$activeRoutes",
sid: "ghza91"
sid: "y0nau8"
});
var $isFirstCheckPassed = createStore(false, {
name: "$isFirstCheckPassed",
sid: "-bpyumz"
sid: "5sp5y8"
}); // @ts-expect-error

@@ -1116,3 +1178,3 @@

name: "$history",
sid: "-6zzmt3"
sid: "kgmg27"
});

@@ -1138,3 +1200,3 @@ $history.on(setHistory, function (_, nextHistory) {

name: "pushFx",
sid: "oynwne"
sid: "-sjs4qj"
}

@@ -1160,3 +1222,3 @@ }); // Triggered whenever some route.navigate.doneData is triggered

name: "openedFx",
sid: "254znm"
sid: "jnt08t"
}); // Recalculate opened/closed routes

@@ -1170,4 +1232,4 @@

for (var _iterator2 = _createForOfIteratorHelperLoose(remappedRoutes), _step2; !(_step2 = _iterator2()).done;) {
var route = _step2.value;
for (var _iterator3 = _createForOfIteratorHelperLoose(remappedRoutes), _step3; !(_step3 = _iterator3()).done;) {
var route = _step3.value;

@@ -1194,3 +1256,3 @@ var _matchPath = matchPath({

name: "recalculateFx",
sid: "-7f7p5c"
sid: "k1edpy"
});

@@ -1217,3 +1279,3 @@ $path.on(recalculateFx.done, function (_prev, _ref4) {

or: {
sid: "7dw78t"
sid: "-jyj318"
}

@@ -1236,3 +1298,3 @@ }); // sample({

or: {
sid: "7ue11n"
sid: "-ji198e"
}

@@ -1250,6 +1312,6 @@ });

var _loop2 = function _loop2() {
var routeObj = _step3.value;
var routeObj = _step4.value;
var $isOpenedManually = createStore(false, {
name: "$isOpenedManually",
sid: "cw52y2"
sid: "-uocw5s"
}); // Watch for route.navigate.doneData to build new path and push

@@ -1274,3 +1336,3 @@

or: {
sid: "-jwbwkc"
sid: "-j0fu5e"
}

@@ -1295,3 +1357,3 @@ });

name: "opened",
sid: "rp79u"
sid: "iad7v1"
}

@@ -1306,3 +1368,3 @@ }),

name: "updated",
sid: "-x8osn5"
sid: "-5s2prv"
}

@@ -1317,3 +1379,3 @@ }),

name: "closed",
sid: "d80zko"
sid: "uqp05v"
}

@@ -1336,3 +1398,3 @@ })

name: "updated",
sid: "-hm79k5"
sid: "9uetb5"
}

@@ -1344,3 +1406,3 @@ });

name: "source",
sid: "-1cfj8b"
sid: "g68hcw"
}),

@@ -1355,3 +1417,3 @@ clock: guard({

query = _ref14[1];
return !equals(params, next.params) || !equals(query, next.query);
return !paramsEqual(params, next.params) || !paramsEqual(query, next.query);
}

@@ -1361,3 +1423,3 @@ }],

name: "clock",
sid: "cueh1p"
sid: "-uq3i25"
}

@@ -1371,3 +1433,3 @@ }),

or: {
sid: "-i3zz53"
sid: "-hjnl6q"
}

@@ -1385,3 +1447,3 @@ }); // Trigger .opened() for the routes marked as "opened"

or: {
sid: "-hkr6dg"
sid: "-gov3yi"
}

@@ -1396,3 +1458,3 @@ }); // Trigger .closed() for the routes marked as "closed"

or: {
sid: "-h5wqcp"
sid: "-glkcec"
}

@@ -1406,3 +1468,3 @@ }); // Reset $isOpenedManually

or: {
sid: "-wi6bsp"
sid: "-51k8xf"
}

@@ -1412,3 +1474,3 @@ }));

for (var _iterator3 = _createForOfIteratorHelperLoose(remappedRoutes), _step3; !(_step3 = _iterator3()).done;) {
for (var _iterator4 = _createForOfIteratorHelperLoose(remappedRoutes), _step4; !(_step4 = _iterator4()).done;) {
_loop2();

@@ -1457,3 +1519,3 @@ } // Takes current path from history and triggers recalculate

name: "recheckFx",
sid: "g883jo"
sid: "xqw44v"
}

@@ -1467,3 +1529,3 @@ });

or: {
sid: "-g4iq3l"
sid: "-5aolek"
}

@@ -1514,3 +1576,3 @@ }); // Triggered whenever history instance is set

name: "subscribeHistoryFx",
sid: "c6ar7v"
sid: "-h89jdx"
}

@@ -1527,3 +1589,3 @@ }); // If `hydrate` flag is set,

or: {
sid: "-4u6ria"
sid: "-49udjx"
}

@@ -1539,3 +1601,3 @@ });

or: {
sid: "-4rfsmx"
sid: "-3vjq7z"
}

@@ -1555,3 +1617,3 @@ });

name: "clock",
sid: "cb8dke"
sid: "-v99ljg"
}

@@ -1567,3 +1629,3 @@ }),

name: "initialized",
sid: "r0pz07"
sid: "-qhq2dq"
}

@@ -1570,0 +1632,0 @@ });

@@ -0,2 +1,7 @@

import { Store } from 'effector';
import { RouteInstance } from './types';
export declare const createRoute: <Params extends Record<string, any>>() => RouteInstance<Params>;
declare type createRouteParams = {
filter?: Store<boolean>;
};
export declare const createRoute: <Params extends Record<string, any>>(params?: createRouteParams) => RouteInstance<Params>;
export {};

@@ -1,1 +0,1 @@

export declare const equals: (a: Record<string, any>, b: Record<string, any>) => boolean;
export declare const paramsEqual: (a: Record<string, any>, b: Record<string, any>) => boolean;
{
"version": "0.5.0-dev.11",
"version": "0.5.0-dev.12",
"license": "MIT",

@@ -4,0 +4,0 @@ "main": "dist/index.js",

@@ -14,3 +14,3 @@ import { buildPath, matchPath } from './utils/build-path';

} from 'effector';
import { equals } from './utils/equals';
import { paramsEqual } from './utils/equals';

@@ -46,3 +46,3 @@ type RouteObject<Params extends RouteParams> = {

const remapRouteObjects = (objects: UnmappedRouteObject<any>[]) => {
const next = [] as RouteObject<any>[];
const next: RouteObject<any>[] = [];
for (const routeObj of objects) {

@@ -56,3 +56,20 @@ if (Array.isArray(routeObj.route)) {

}
return next;
const derivedRoutes: RouteObject<any>[] = [];
const nonDerivedRoutes: RouteObject<any>[] = [];
for (const routeObj of next) {
// @ts-expect-error Internals
if (routeObj.route.settings.derived) {
derivedRoutes.push(routeObj);
} else {
nonDerivedRoutes.push(routeObj);
}
}
if (derivedRoutes.length) {
for (const derivedRoute of derivedRoutes) {
console.error(
`createHistoryRouter: ${derivedRoute.path} uses derived route. This won't work`
);
}
}
return nonDerivedRoutes;
};

@@ -239,3 +256,3 @@

filter: ([params, query], next) => {
return !equals(params, next.params) || !equals(query, next.query);
return !paramsEqual(params, next.params) || !paramsEqual(query, next.query);
},

@@ -242,0 +259,0 @@ }),

@@ -8,2 +8,3 @@ import {

split,
Store,
} from 'effector';

@@ -18,3 +19,9 @@ import {

export const createRoute = <Params extends RouteParams>() => {
type createRouteParams = {
filter?: Store<boolean>;
};
export const createRoute = <Params extends RouteParams>(
params: createRouteParams = {}
) => {
const navigateFx = createEffect(

@@ -71,2 +78,15 @@ async ({ params, query }: RouteParamsAndQuery<Params>) => {

if (params.filter) {
const filter = params.filter;
split({
source: sample({ clock: filter }),
// @ts-expect-error
match: filter => (filter ? 'true' : 'false'),
cases: {
true: opened,
false: closed,
},
});
}
const instance: RouteInstance<Params> = {

@@ -83,2 +103,6 @@ $isOpened,

kind: Kind.ROUTE,
// @ts-expect-error Internal stuff
settings: {
derived: Boolean(params.filter),
},
};

@@ -85,0 +109,0 @@

@@ -1,2 +0,2 @@

export const equals = (a: Record<string, any>, b: Record<string, any>) => {
export const paramsEqual = (a: Record<string, any>, b: Record<string, any>) => {
if (Object.keys(a).length !== Object.keys(b).length) {

@@ -6,3 +6,7 @@ return false;

for (const k in a) {
if (a[k] !== b[k]) {
// NOTE: Parsed URI always returns string parameters
// so we force string comparison here
// in order to avoid extra updates
// whenever user passes numeric params
if (`${a[k]}` !== `${b[k]}`) {
return false;

@@ -9,0 +13,0 @@ }

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc