Socket
Socket
Sign inDemoInstall

@stackflow/plugin-history-sync

Package Overview
Dependencies
Maintainers
1
Versions
122
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@stackflow/plugin-history-sync - npm Package Compare versions

Comparing version 0.4.1-alpha.7 to 0.4.1-alpha.9

3

dist/historySyncPlugin.d.ts

@@ -15,2 +15,3 @@ import { StackflowReactPlugin } from "@stackflow/react";

path: string;
activityId: string;
}) => any;

@@ -20,3 +21,5 @@ experimental_preloadRef?: (args: {

path: string;
activityId: string;
}) => any;
experimental_startTransition?: (cb: () => void) => void;
};

@@ -23,0 +26,0 @@ export declare function historySyncPlugin<T extends {

2

dist/index.js

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

var L=Object.create;var P=Object.defineProperty,O=Object.defineProperties,M=Object.getOwnPropertyDescriptor,j=Object.getOwnPropertyDescriptors,C=Object.getOwnPropertyNames,_=Object.getOwnPropertySymbols,D=Object.getPrototypeOf,b=Object.prototype.hasOwnProperty,q=Object.prototype.propertyIsEnumerable;var E=(t,e,a)=>e in t?P(t,e,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[e]=a,l=(t,e)=>{for(var a in e||(e={}))b.call(e,a)&&E(t,a,e[a]);if(_)for(var a of _(e))q.call(e,a)&&E(t,a,e[a]);return t},H=(t,e)=>O(t,j(e));var F=(t,e)=>{for(var a in e)P(t,a,{get:e[a],enumerable:!0})},I=(t,e,a,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let u of C(e))!b.call(t,u)&&u!==a&&P(t,u,{get:()=>e[u],enumerable:!(i=M(e,u))||i.enumerable});return t};var K=(t,e,a)=>(a=t!=null?L(D(t)):{},I(e||!t||!t.__esModule?P(a,"default",{value:t,enumerable:!0}):a,t)),z=t=>I(P({},"__esModule",{value:!0}),t);var tt={};F(tt,{historySyncPlugin:()=>Z});module.exports=z(tt);var v=require("@stackflow/core");var B=K(require("url-pattern"));function Q(t){return new URL(t,"file://")}function V(t){let e={};return t.forEach((a,i)=>{e[i]=a}),e}function W(t){return t.endsWith("/")?t:`${t}/`}function J(t){return t.toString().length>0?`?${t}`:t}function h(t){let e=new B.default(`${t}(/)`);return{fill(a){var c;let i=e.stringify(a),u=(c=e.match(i))!=null?c:{},n=l({},a);Object.keys(u).forEach(d=>{delete n[d]});let s=new URLSearchParams(n);return W(i)+J(s)},parse(a){let i=Q(a),u=e.match(i.pathname),n=V(i.searchParams);return u?l(l({},n),u):null}}}var S="@stackflow/plugin-history-sync@0.4.0",X=1e3,x=60*X;function G(){return typeof window=="undefined"?null:window.history.state}function p(t){return typeof t=="string"?[t]:t}function R(t){let e=t;return typeof e=="object"&&e!==null&&"_TAG"in e&&typeof e._TAG=="string"&&e._TAG===S?t:null}function Y({state:t,url:e,useHash:a}){if(typeof window=="undefined")return;let i=a?`${window.location.pathname}#${e}`:e;window.history.pushState(t,"",i)}function U({state:t,url:e,useHash:a}){if(typeof window=="undefined")return;let i=a?`${window.location.pathname}#${e}`:e;window.history.replaceState(t,"",i)}function Z(t){return({context:e})=>{let a=!1,i=null;function u({activityName:n,activityParams:s}){var y;let d=h(p(t.routes[n])[0]).fill(s);return(y=t.experimental_preloadRef)==null?void 0:y.call(t,{context:e,path:d})}return{key:"historySync",initialPushedEvent(){var m,r,g;let n=R(G()),s=(m=e==null?void 0:e.req)!=null&&m.path?e.req.path:typeof window!="undefined"?window.location.pathname+window.location.search:null,c=(r=t.experimental_initialPreloadRef)==null?void 0:r.call(t,{context:e,path:s});if(n)return H(l(l({},n.activity.pushedBy),c?{preloadRef:c}:null),{name:"Pushed"});if(!s)return null;let d=Object.keys(t.routes);for(let w=0;w<d.length;w+=1){let f=d[w],N=p(t.routes[f]);for(let k=0;k<N.length;k+=1){let $=N[k],A=h($).parse(s);if(!!A)return(0,v.makeEvent)("Pushed",l({activityId:(0,v.id)(),activityName:f,params:l({},A),eventDate:new Date().getTime()-x},c?{preloadRef:c}:null))}}let y=t.fallbackActivity({context:e}),T=p(t.routes[y]),o=(g=t.experimental_initialPreloadRef)==null?void 0:g.call(t,{context:e,path:T[0]});return(0,v.makeEvent)("Pushed",l({activityId:(0,v.id)(),activityName:y,params:{},eventDate:new Date().getTime()-x},o?{preloadRef:o}:null))},onInit({actions:{getStack:n,dispatchEvent:s}}){let c=n().activities[0],d=h(p(t.routes[c.name])[0]);U({url:d.fill(c.params),state:{_TAG:S,activity:c},useHash:t.useHash});let y=T=>{let o=R(T.state);if(!o)return;let{activities:m}=n(),r=m.find(f=>f.id===o.activity.pushedBy.activityId),g=!r&&o.activity.pushedBy.activityId<m[0].id||(r==null?void 0:r.transitionState)==="enter-active"||(r==null?void 0:r.transitionState)==="enter-done",w=!r&&o.activity.pushedBy.activityId>m[m.length-1].id||(r==null?void 0:r.transitionState)==="exit-active"||(r==null?void 0:r.transitionState)==="exit-done";if(g&&(s("Popped",{}),!r)){a=!0;let f=u({activityName:o.activity.name,activityParams:o.activity.params});s("Pushed",l(l({},o.activity.pushedBy),f?{preloadRef:f}:null))}if(w){a=!0;let f=u({activityName:o.activity.name,activityParams:o.activity.params});s("Pushed",l({activityId:o.activity.pushedBy.activityId,activityName:o.activity.pushedBy.activityName,params:o.activity.pushedBy.params},f?{preloadRef:f}:null))}};i==null||i(),typeof window!="undefined"&&window.addEventListener("popstate",y),i=()=>{typeof window!="undefined"&&window.removeEventListener("popstate",y)}},onPushed({effect:{activity:n}}){if(a){a=!1;return}let s=h(p(t.routes[n.name])[0]);Y({url:s.fill(n.params),state:{_TAG:S,activity:n},useHash:t.useHash})},onReplaced({effect:{activity:n}}){let s=h(p(t.routes[n.name])[0]);U({url:s.fill(n.params),state:{_TAG:S,activity:n},useHash:t.useHash})},onBeforePush({params:n,actions:{overrideParams:s}}){let c=u({activityName:n.activityName,activityParams:n.params});s(l(l({},n),c?{preloadRef:c}:null))},onBeforePop({actions:{preventDefault:n}}){n();do typeof window!="undefined"&&window.history.back();while(!R(G()))}}}}
var D=Object.create;var g=Object.defineProperty,q=Object.defineProperties,F=Object.getOwnPropertyDescriptor,K=Object.getOwnPropertyDescriptors,z=Object.getOwnPropertyNames,H=Object.getOwnPropertySymbols,Q=Object.getPrototypeOf,G=Object.prototype.hasOwnProperty,V=Object.prototype.propertyIsEnumerable;var B=(t,e,a)=>e in t?g(t,e,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[e]=a,l=(t,e)=>{for(var a in e||(e={}))G.call(e,a)&&B(t,a,e[a]);if(H)for(var a of H(e))V.call(e,a)&&B(t,a,e[a]);return t},U=(t,e)=>q(t,K(e));var W=(t,e)=>{for(var a in e)g(t,a,{get:e[a],enumerable:!0})},$=(t,e,a,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of z(e))!G.call(t,o)&&o!==a&&g(t,o,{get:()=>e[o],enumerable:!(i=F(e,o))||i.enumerable});return t};var J=(t,e,a)=>(a=t!=null?D(Q(t)):{},$(e||!t||!t.__esModule?g(a,"default",{value:t,enumerable:!0}):a,t)),X=t=>$(g({},"__esModule",{value:!0}),t);var rt={};W(rt,{historySyncPlugin:()=>it});module.exports=X(rt);var w=require("@stackflow/core");var L=J(require("url-pattern"));function Y(t){return new URL(t,"file://")}function Z(t){let e={};return t.forEach((a,i)=>{e[i]=a}),e}function tt(t){return t.endsWith("/")?t:`${t}/`}function et(t){return t.toString().length>0?`?${t}`:t}function p(t){let e=new L.default(`${t}(/)`);return{fill(a){var n;let i=e.stringify(a),o=(n=e.match(i))!=null?n:{},y=l({},a);Object.keys(o).forEach(r=>{delete y[r]});let S=new URLSearchParams(y);return tt(i)+et(S)},parse(a){let i=Y(a),o=e.match(i.pathname),y=Z(i.searchParams);return o?l(l({},y),o):null}}}var k="@stackflow/plugin-history-sync@0.4.0",at=1e3,O=60*at;function M(){return typeof window=="undefined"?null:window.history.state}function v(t){return typeof t=="string"?[t]:t}function _(t){let e=t;return typeof e=="object"&&e!==null&&"_TAG"in e&&typeof e._TAG=="string"&&e._TAG===k?t:null}function nt({state:t,url:e,useHash:a}){if(typeof window=="undefined")return;let i=a?`${window.location.pathname}#${e}`:e;window.history.pushState(t,"",i)}function j({state:t,url:e,useHash:a}){if(typeof window=="undefined")return;let i=a?`${window.location.pathname}#${e}`:e;window.history.replaceState(t,"",i)}function it(t){return({context:e})=>{var S;let a=!1,i=null;function o({activityId:n,activityName:r,activityParams:d}){var f;let h=p(v(t.routes[r])[0]).fill(d);return(f=t.experimental_preloadRef)==null?void 0:f.call(t,{activityId:n,context:e,path:h})}let y=(S=t.experimental_startTransition)!=null?S:n=>n();return{key:"historySync",initialPushedEvent(){var m,s,T,R;let n=_(M()),r=(m=e==null?void 0:e.req)!=null&&m.path?e.req.path:typeof window!="undefined"?window.location.pathname+window.location.search:null;if(n){let u=(s=t.experimental_initialPreloadRef)==null?void 0:s.call(t,{context:e,path:r,activityId:n.activity.id});return U(l(l({},n.activity.pushedBy),u?{preloadRef:u}:null),{name:"Pushed"})}if(!r)return null;let d=Object.keys(t.routes);for(let u=0;u<d.length;u+=1){let A=d[u],N=v(t.routes[A]);for(let I=0;I<N.length;I+=1){let C=N[I],b=p(C).parse(r);if(!!b){let E=(0,w.id)(),x=(T=t.experimental_initialPreloadRef)==null?void 0:T.call(t,{activityId:E,context:e,path:r});return(0,w.makeEvent)("Pushed",l({activityId:E,activityName:A,params:l({},b),eventDate:new Date().getTime()-O},x?{preloadRef:x}:null))}}}let P=t.fallbackActivity({context:e}),h=v(t.routes[P]),f=(0,w.id)(),c=(R=t.experimental_initialPreloadRef)==null?void 0:R.call(t,{context:e,path:h[0],activityId:f});return(0,w.makeEvent)("Pushed",l({activityId:f,activityName:P,params:{},eventDate:new Date().getTime()-O},c?{preloadRef:c}:null))},onInit({actions:{getStack:n,dispatchEvent:r}}){let d=n().activities[0],P=p(v(t.routes[d.name])[0]);j({url:P.fill(d.params),state:{_TAG:k,activity:d},useHash:t.useHash});let h=f=>{let c=_(f.state);if(!c)return;let{activities:m}=n(),s=m.find(u=>u.id===c.activity.pushedBy.activityId),T=!s&&c.activity.pushedBy.activityId<m[0].id||(s==null?void 0:s.transitionState)==="enter-active"||(s==null?void 0:s.transitionState)==="enter-done",R=!s&&c.activity.pushedBy.activityId>m[m.length-1].id||(s==null?void 0:s.transitionState)==="exit-active"||(s==null?void 0:s.transitionState)==="exit-done";if(T&&(r("Popped",{}),!s)){a=!0;let u=o({activityId:c.activity.id,activityName:c.activity.name,activityParams:c.activity.params});y(()=>{r("Pushed",l(l({},c.activity.pushedBy),u?{preloadRef:u}:null))})}if(R){a=!0;let u=o({activityId:c.activity.id,activityName:c.activity.name,activityParams:c.activity.params});y(()=>{r("Pushed",l({activityId:c.activity.pushedBy.activityId,activityName:c.activity.pushedBy.activityName,params:c.activity.pushedBy.params},u?{preloadRef:u}:null))})}};i==null||i(),typeof window!="undefined"&&window.addEventListener("popstate",h),i=()=>{typeof window!="undefined"&&window.removeEventListener("popstate",h)}},onPushed({effect:{activity:n}}){if(a){a=!1;return}let r=p(v(t.routes[n.name])[0]);nt({url:r.fill(n.params),state:{_TAG:k,activity:n},useHash:t.useHash})},onReplaced({effect:{activity:n}}){let r=p(v(t.routes[n.name])[0]);j({url:r.fill(n.params),state:{_TAG:k,activity:n},useHash:t.useHash})},onBeforePush({params:n,actions:{overrideParams:r}}){let d=o({activityId:n.activityId,activityName:n.activityName,activityParams:n.params});r(l(l({},n),d?{preloadRef:d}:null))},onBeforePop({actions:{preventDefault:n}}){n();do typeof window!="undefined"&&window.history.back();while(!_(M()))}}}}
//# sourceMappingURL=index.js.map
{
"name": "@stackflow/plugin-history-sync",
"version": "0.4.1-alpha.7+3fddba2",
"version": "0.4.1-alpha.9+23d32ee",
"license": "Apache-2.0",

@@ -52,3 +52,3 @@ "exports": {

},
"gitHead": "3fddba2b58bfa39b04b594242d70f7a00d042c40"
"gitHead": "23d32ee6d0e9dce7e5ccde747d586c40a0bf2c9a"
}

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

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