Socket
Socket
Sign inDemoInstall

@stackflow/react

Package Overview
Dependencies
Maintainers
2
Versions
91
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@stackflow/react - npm Package Compare versions

Comparing version 0.19.1 to 0.19.2-alpha.1

dist/activity/ActivityContext.d.ts

1

dist/index.d.ts

@@ -8,2 +8,3 @@ export * from "./activity/ActivityComponentType";

export * from "./useActions";
export * from "./useActiveEffect";
export * from "./useStepActions";

2

dist/index.js

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

"use strict";var ht=Object.create;var R=Object.defineProperty,Rt=Object.defineProperties,wt=Object.getOwnPropertyDescriptor,Et=Object.getOwnPropertyDescriptors,It=Object.getOwnPropertyNames,Z=Object.getOwnPropertySymbols,bt=Object.getPrototypeOf,tt=Object.prototype.hasOwnProperty,Ut=Object.prototype.propertyIsEnumerable;var _=(t,e,i)=>e in t?R(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i,u=(t,e)=>{for(var i in e||(e={}))tt.call(e,i)&&_(t,i,e[i]);if(Z)for(var i of Z(e))Ut.call(e,i)&&_(t,i,e[i]);return t},y=(t,e)=>Rt(t,Et(e));var Ot=(t,e)=>{for(var i in e)R(t,i,{get:e[i],enumerable:!0})},et=(t,e,i,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of It(e))!tt.call(t,s)&&s!==i&&R(t,s,{get:()=>e[s],enumerable:!(n=wt(e,s))||n.enumerable});return t};var m=(t,e,i)=>(i=t!=null?ht(bt(t)):{},et(e||!t||!t.__esModule?R(i,"default",{value:t,enumerable:!0}):i,t)),Dt=t=>et(R({},"__esModule",{value:!0}),t);var jt={};Ot(jt,{stackflow:()=>Wt,useActions:()=>H,useActivity:()=>Mt,useActivityParams:()=>Nt,useStack:()=>Bt,useStepActions:()=>J});module.exports=Dt(jt);var nt=require("react");var b=m(require("react"));function it(){let t={value:null};function e(){return t.value}function i(n){t.value=n}return[e,i]}var E=require("react"),ot=m(require("react-fast-compare"));function I(t){let e=(0,E.useRef)(t),i=e.current,n=(0,ot.default)(i,t);return(0,E.useEffect)(()=>{n||(e.current=t)}),n?i:t}var w=(0,b.createContext)(null),rt=({children:t,value:e})=>b.default.createElement(w.Provider,{value:I(e)},t);var Mt=()=>(0,nt.useContext)(w);var at=require("react");function Nt(){return(0,at.useContext)(w).params}var ct=require("react");var U=m(require("react"));var W=(0,U.createContext)(null),st=({children:t,value:e})=>U.default.createElement(W.Provider,{value:I(e)},t);var Bt=()=>(0,ct.useContext)(W);var P=require("@stackflow/core"),l=m(require("react"));var pt=require("@stackflow/core");function d(){return(0,pt.id)()}var mt=require("@stackflow/core");function k(){return(0,mt.id)()}var C=m(require("react"));var lt=m(require("react")),ut,ft=(ut=lt.default.useDeferredValue)!=null?ut:t=>t;var x=m(require("react")),vt,dt=(vt=x.default.useSyncExternalStore)!=null?vt:(t,e)=>{let[i,n]=(0,x.useState)(()=>e());return(0,x.useEffect)(()=>t(()=>{n(()=>e())})),i};var j=(0,C.createContext)(null),$=(0,C.createContext)(null),yt=({coreStore:t,children:e})=>{let i=dt(t.subscribe,t.actions.getStack,t.actions.getStack),n=ft(i);return C.default.createElement($.Provider,{value:n},C.default.createElement(j.Provider,{value:t.actions},e))};var St=m(require("react"));var O=()=>St.default.useContext(j);var Pt=m(require("react"));var D=()=>Pt.default.useContext($);var g=m(require("react"));var B=m(require("react"));var M=m(require("react")),z=(0,M.createContext)(null),At=({children:t,value:e})=>M.default.createElement(z.Provider,{value:e},t);var kt=require("react");function N(){return(0,kt.useContext)(z)}var Ft=({activityComponentMap:t,plugin:e})=>{let i=D(),n=N();return e.render({stack:y(u({},i),{render(s){let p=u(u({},i),s);return{activities:p.activities.map(c=>y(u({},c),{key:c.id,render(f){let V=t[c.name],S=B.default.createElement(V,{params:c.params});return n.forEach(o=>{var r,a;S=(a=(r=o.wrapActivity)==null?void 0:r.call(o,{activity:y(u({},c),{render:()=>S})}))!=null?a:S}),B.default.createElement(st,{value:p},B.default.createElement(rt,{key:c.id,value:u(u({},c),f)},S))}}))}}})})},xt=Ft;var Kt=({activityComponentMap:t})=>{let e=D(),i=N(),n=i.filter(p=>!!p.render);(0,g.useEffect)(()=>{n.length===0&&console.warn(`Stackflow - There is no rendering plugin, so "<Stack />" doesn't render anything. If you want to render some UI, use "@stackflow/plugin-renderer-basic" or add another rendering plugin.`)},[n]);let s=g.default.createElement(g.default.Fragment,null,n.map(p=>g.default.createElement(xt,{key:p.key,activityComponentMap:t,plugin:p})));return i.forEach(p=>{var c,f;s=(f=(c=p.wrapStack)==null?void 0:c.call(p,{stack:y(u({},e),{render(){return s}})}))!=null?f:s}),s},Ct=Kt;var F=m(require("react"));function G(t){return t?t.animate===void 0||t.animate==null?{skipActiveState:!1}:{skipActiveState:!t.animate}:{skipActiveState:!1}}var gt,Vt=(gt=F.default.useTransition)!=null?gt:()=>[!1,t=>t()];function H(){let t=O(),[e,i]=Vt();return(0,F.useMemo)(()=>({pending:e,push(n,s,p){let c=d();return t.push({activityId:c,activityName:n,activityParams:s,skipEnterActiveState:G(p).skipActiveState}),{activityId:c}},replace(n,s,p){var f;let c=d();return t.replace({activityId:(f=p==null?void 0:p.activityId)!=null?f:d(),activityName:n,activityParams:s,skipEnterActiveState:G(p).skipActiveState}),{activityId:c}},pop(n){t.pop({skipExitActiveState:G(n).skipActiveState})}}),[t.push,t.replace,t.pop,e,i])}var K=m(require("react"));var Tt,qt=(Tt=K.default.useTransition)!=null?Tt:()=>[!1,t=>t()],J=()=>{let t=O(),[e,i]=qt();return(0,K.useMemo)(()=>({pending:e,stepPush(n){let s=k();t.stepPush({stepId:s,stepParams:n})},stepReplace(n){let s=k();t.stepReplace({stepId:s,stepParams:n})},stepPop(){t.stepPop({})}}),[t.stepPush,t.stepReplace,t.stepPop,e,i])};function L(t){return t?t.animate===void 0||t.animate==null?{skipActiveState:!1}:{skipActiveState:!t.animate}:{skipActiveState:!1}}function Wt(t){var S;typeof window!="undefined"&&window.document.documentElement.style.setProperty("--stackflow-transition-duration",`${t.transitionDuration}ms`);let e=((S=t.plugins)!=null?S:[]).flat(1/0).map(o=>o),i=e.map(o=>o()),n=Object.entries(t.activities).reduce((o,[r,a])=>y(u({},o),{[r]:"component"in a?l.default.memo(a.component):l.default.memo(a)}),{}),s=()=>new Date().getTime()-t.transitionDuration*2,p=(0,P.makeCoreStore)({initialEvents:[(0,P.makeEvent)("Initialized",{transitionDuration:t.transitionDuration,eventDate:s()}),...Object.entries(t.activities).map(([o,r])=>(0,P.makeEvent)("ActivityRegistered",u({activityName:o,eventDate:s()},"component"in r?{activityParamsSchema:r.paramsSchema}:null)))],plugins:[]}),[c,f]=it(),V=o=>{let r=(0,l.useMemo)(()=>{let a=t.initialActivity?[(0,P.makeEvent)("Pushed",{activityId:d(),activityName:t.initialActivity(),activityParams:{},eventDate:s(),skipEnterActiveState:!1})]:[],v=i.reduce((h,q)=>{var Q,X,Y;return(Y=(X=q.overrideInitialEvents)==null?void 0:X.call(q,{initialEvents:h,initialContext:(Q=o.initialContext)!=null?Q:{}}))!=null?Y:h},a);v.length>0&&a.length>0&&v!==a&&console.warn(`Stackflow - Some plugin overrides an "initialActivity" option. The "initialActivity" option you set to "${a[0].activityName}" in the "stackflow" is ignored.`),v.length===0&&console.warn("Stackflow - There is no initial activity. If you want to set the initial activity, add the `initialActivity` option of the `stackflow()` function or add a plugin that sets the initial activity. (e.g. `@stackflow/plugin-history-sync`)");let T=(0,P.makeCoreStore)({initialEvents:[...p.pullEvents(),...v],plugins:e});return f(T),T},[]);return(0,l.useEffect)(()=>{r.init()},[r]),l.default.createElement(At,{value:i},l.default.createElement(yt,{coreStore:r},l.default.createElement(Ct,{activityComponentMap:n})))};return{activities:t.activities,Stack:V,useFlow:H,useStepFlow:J,addActivity(o){if(c()){console.warn("Stackflow - `addActivity()` API cannot be called after a `<Stack />` component has been rendered");return}n[o.name]=l.default.memo(o.component),p.actions.dispatchEvent("ActivityRegistered",{activityName:o.name,activityParamsSchema:o.paramsSchema,eventDate:s()})},addPlugin(o){if(c()){console.warn("Stackflow - `addPlugin()` API cannot be called after a `<Stack />` component has been rendered");return}[o].flat(1/0).map(r=>r).forEach(r=>{e.push(r),i.push(r())})},actions:{getStack(){var o,r;return(r=(o=c())==null?void 0:o.actions.getStack())!=null?r:p.actions.getStack()},dispatchEvent(o,r){var a;return(a=c())==null?void 0:a.actions.dispatchEvent(o,r)},push(o,r,a){var A;let v=d();return(A=c())==null||A.actions.push({activityId:v,activityName:o,activityParams:r,skipEnterActiveState:L(a).skipActiveState}),{activityId:v}},replace(o,r,a){var A,T,h;let v=(A=a==null?void 0:a.activityId)!=null?A:d();return(h=c())==null||h.actions.replace({activityId:(T=a==null?void 0:a.activityId)!=null?T:d(),activityName:o,activityParams:r,skipEnterActiveState:L(a).skipActiveState}),{activityId:v}},pop(o){var r;return(r=c())==null?void 0:r.actions.pop({skipExitActiveState:L(o).skipActiveState})},stepPush(o){var a;let r=k();return(a=c())==null?void 0:a.actions.stepPush({stepId:r,stepParams:o})},stepReplace(o){var a;let r=k();return(a=c())==null?void 0:a.actions.stepReplace({stepId:r,stepParams:o})},stepPop(){var o;return(o=c())==null?void 0:o.actions.stepPop({})}}}}
"use strict";var wt=Object.create;var R=Object.defineProperty,Et=Object.defineProperties,It=Object.getOwnPropertyDescriptor,bt=Object.getOwnPropertyDescriptors,Ut=Object.getOwnPropertyNames,_=Object.getOwnPropertySymbols,Ot=Object.getPrototypeOf,et=Object.prototype.hasOwnProperty,Dt=Object.prototype.propertyIsEnumerable;var tt=(t,e,o)=>e in t?R(t,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[e]=o,u=(t,e)=>{for(var o in e||(e={}))et.call(e,o)&&tt(t,o,e[o]);if(_)for(var o of _(e))Dt.call(e,o)&&tt(t,o,e[o]);return t},y=(t,e)=>Et(t,bt(e));var Mt=(t,e)=>{for(var o in e)R(t,o,{get:e[o],enumerable:!0})},ot=(t,e,o,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Ut(e))!et.call(t,s)&&s!==o&&R(t,s,{get:()=>e[s],enumerable:!(n=It(e,s))||n.enumerable});return t};var m=(t,e,o)=>(o=t!=null?wt(Ot(t)):{},ot(e||!t||!t.__esModule?R(o,"default",{value:t,enumerable:!0}):o,t)),Nt=t=>ot(R({},"__esModule",{value:!0}),t);var zt={};Mt(zt,{stackflow:()=>jt,useActions:()=>J,useActiveEffect:()=>$t,useActivity:()=>W,useActivityParams:()=>Bt,useStack:()=>Ft,useStepActions:()=>L});module.exports=Nt(zt);var at=require("react");var b=m(require("react"));function it(){let t={value:null};function e(){return t.value}function o(n){t.value=n}return[e,o]}var E=require("react"),rt=m(require("react-fast-compare"));function I(t){let e=(0,E.useRef)(t),o=e.current,n=(0,rt.default)(o,t);return(0,E.useEffect)(()=>{n||(e.current=t)}),n?o:t}var w=(0,b.createContext)(null),nt=({children:t,value:e})=>b.default.createElement(w.Provider,{value:I(e)},t);var W=()=>(0,at.useContext)(w);var st=require("react");function Bt(){return(0,st.useContext)(w).params}var pt=require("react");var U=m(require("react"));var j=(0,U.createContext)(null),ct=({children:t,value:e})=>U.default.createElement(j.Provider,{value:I(e)},t);var Ft=()=>(0,pt.useContext)(j);var A=require("@stackflow/core"),l=m(require("react"));var mt=require("@stackflow/core");function d(){return(0,mt.id)()}var ut=require("@stackflow/core");function k(){return(0,ut.id)()}var C=m(require("react"));var ft=m(require("react")),lt,vt=(lt=ft.default.useDeferredValue)!=null?lt:t=>t;var x=m(require("react")),dt,yt=(dt=x.default.useSyncExternalStore)!=null?dt:(t,e)=>{let[o,n]=(0,x.useState)(()=>e());return(0,x.useEffect)(()=>t(()=>{n(()=>e())})),o};var $=(0,C.createContext)(null),z=(0,C.createContext)(null),St=({coreStore:t,children:e})=>{let o=yt(t.subscribe,t.actions.getStack,t.actions.getStack),n=vt(o);return C.default.createElement(z.Provider,{value:n},C.default.createElement($.Provider,{value:t.actions},e))};var At=m(require("react"));var O=()=>At.default.useContext($);var Pt=m(require("react"));var D=()=>Pt.default.useContext(z);var g=m(require("react"));var B=m(require("react"));var M=m(require("react")),G=(0,M.createContext)(null),kt=({children:t,value:e})=>M.default.createElement(G.Provider,{value:e},t);var xt=require("react");function N(){return(0,xt.useContext)(G)}var Kt=({activityComponentMap:t,plugin:e})=>{let o=D(),n=N();return e.render({stack:y(u({},o),{render(s){let p=u(u({},o),s);return{activities:p.activities.map(c=>y(u({},c),{key:c.id,render(f){let V=t[c.name],S=B.default.createElement(V,{params:c.params});return n.forEach(i=>{var r,a;S=(a=(r=i.wrapActivity)==null?void 0:r.call(i,{activity:y(u({},c),{render:()=>S})}))!=null?a:S}),B.default.createElement(ct,{value:p},B.default.createElement(nt,{key:c.id,value:u(u({},c),f)},S))}}))}}})})},Ct=Kt;var Vt=({activityComponentMap:t})=>{let e=D(),o=N(),n=o.filter(p=>!!p.render);(0,g.useEffect)(()=>{n.length===0&&console.warn(`Stackflow - There is no rendering plugin, so "<Stack />" doesn't render anything. If you want to render some UI, use "@stackflow/plugin-renderer-basic" or add another rendering plugin.`)},[n]);let s=g.default.createElement(g.default.Fragment,null,n.map(p=>g.default.createElement(Ct,{key:p.key,activityComponentMap:t,plugin:p})));return o.forEach(p=>{var c,f;s=(f=(c=p.wrapStack)==null?void 0:c.call(p,{stack:y(u({},e),{render(){return s}})}))!=null?f:s}),s},gt=Vt;var F=m(require("react"));function H(t){return t?t.animate===void 0||t.animate==null?{skipActiveState:!1}:{skipActiveState:!t.animate}:{skipActiveState:!1}}var Tt,qt=(Tt=F.default.useTransition)!=null?Tt:()=>[!1,t=>t()];function J(){let t=O(),[e,o]=qt();return(0,F.useMemo)(()=>({pending:e,push(n,s,p){let c=d();return t.push({activityId:c,activityName:n,activityParams:s,skipEnterActiveState:H(p).skipActiveState}),{activityId:c}},replace(n,s,p){var f;let c=d();return t.replace({activityId:(f=p==null?void 0:p.activityId)!=null?f:d(),activityName:n,activityParams:s,skipEnterActiveState:H(p).skipActiveState}),{activityId:c}},pop(n){t.pop({skipExitActiveState:H(n).skipActiveState})}}),[t.push,t.replace,t.pop,e,o])}var K=m(require("react"));var ht,Wt=(ht=K.default.useTransition)!=null?ht:()=>[!1,t=>t()],L=()=>{let t=O(),[e,o]=Wt();return(0,K.useMemo)(()=>({pending:e,stepPush(n){let s=k();t.stepPush({stepId:s,stepParams:n})},stepReplace(n){let s=k();t.stepReplace({stepId:s,stepParams:n})},stepPop(){t.stepPop({})}}),[t.stepPush,t.stepReplace,t.stepPop,e,o])};function Q(t){return t?t.animate===void 0||t.animate==null?{skipActiveState:!1}:{skipActiveState:!t.animate}:{skipActiveState:!1}}function jt(t){var S;typeof window!="undefined"&&window.document.documentElement.style.setProperty("--stackflow-transition-duration",`${t.transitionDuration}ms`);let e=((S=t.plugins)!=null?S:[]).flat(1/0).map(i=>i),o=e.map(i=>i()),n=Object.entries(t.activities).reduce((i,[r,a])=>y(u({},i),{[r]:"component"in a?l.default.memo(a.component):l.default.memo(a)}),{}),s=()=>new Date().getTime()-t.transitionDuration*2,p=(0,A.makeCoreStore)({initialEvents:[(0,A.makeEvent)("Initialized",{transitionDuration:t.transitionDuration,eventDate:s()}),...Object.entries(t.activities).map(([i,r])=>(0,A.makeEvent)("ActivityRegistered",u({activityName:i,eventDate:s()},"component"in r?{activityParamsSchema:r.paramsSchema}:null)))],plugins:[]}),[c,f]=it(),V=i=>{let r=(0,l.useMemo)(()=>{let a=t.initialActivity?[(0,A.makeEvent)("Pushed",{activityId:d(),activityName:t.initialActivity(),activityParams:{},eventDate:s(),skipEnterActiveState:!1})]:[],v=o.reduce((h,q)=>{var X,Y,Z;return(Z=(Y=q.overrideInitialEvents)==null?void 0:Y.call(q,{initialEvents:h,initialContext:(X=i.initialContext)!=null?X:{}}))!=null?Z:h},a);v.length>0&&a.length>0&&v!==a&&console.warn(`Stackflow - Some plugin overrides an "initialActivity" option. The "initialActivity" option you set to "${a[0].activityName}" in the "stackflow" is ignored.`),v.length===0&&console.warn("Stackflow - There is no initial activity. If you want to set the initial activity, add the `initialActivity` option of the `stackflow()` function or add a plugin that sets the initial activity. (e.g. `@stackflow/plugin-history-sync`)");let T=(0,A.makeCoreStore)({initialEvents:[...p.pullEvents(),...v],plugins:e});return f(T),T},[]);return(0,l.useEffect)(()=>{r.init()},[r]),l.default.createElement(kt,{value:o},l.default.createElement(St,{coreStore:r},l.default.createElement(gt,{activityComponentMap:n})))};return{activities:t.activities,Stack:V,useFlow:J,useStepFlow:L,addActivity(i){if(c()){console.warn("Stackflow - `addActivity()` API cannot be called after a `<Stack />` component has been rendered");return}n[i.name]=l.default.memo(i.component),p.actions.dispatchEvent("ActivityRegistered",{activityName:i.name,activityParamsSchema:i.paramsSchema,eventDate:s()})},addPlugin(i){if(c()){console.warn("Stackflow - `addPlugin()` API cannot be called after a `<Stack />` component has been rendered");return}[i].flat(1/0).map(r=>r).forEach(r=>{e.push(r),o.push(r())})},actions:{getStack(){var i,r;return(r=(i=c())==null?void 0:i.actions.getStack())!=null?r:p.actions.getStack()},dispatchEvent(i,r){var a;return(a=c())==null?void 0:a.actions.dispatchEvent(i,r)},push(i,r,a){var P;let v=d();return(P=c())==null||P.actions.push({activityId:v,activityName:i,activityParams:r,skipEnterActiveState:Q(a).skipActiveState}),{activityId:v}},replace(i,r,a){var P,T,h;let v=(P=a==null?void 0:a.activityId)!=null?P:d();return(h=c())==null||h.actions.replace({activityId:(T=a==null?void 0:a.activityId)!=null?T:d(),activityName:i,activityParams:r,skipEnterActiveState:Q(a).skipActiveState}),{activityId:v}},pop(i){var r;return(r=c())==null?void 0:r.actions.pop({skipExitActiveState:Q(i).skipActiveState})},stepPush(i){var a;let r=k();return(a=c())==null?void 0:a.actions.stepPush({stepId:r,stepParams:i})},stepReplace(i){var a;let r=k();return(a=c())==null?void 0:a.actions.stepReplace({stepId:r,stepParams:i})},stepPop(){var i;return(i=c())==null?void 0:i.actions.stepPop({})}}}}var Rt=require("react");var $t=t=>{let{isActive:e}=W();(0,Rt.useEffect)(()=>{if(e)return t()},[e])};
//# sourceMappingURL=index.js.map
{
"name": "@stackflow/react",
"version": "0.19.1",
"version": "0.19.2-alpha.1",
"license": "MIT",

@@ -63,4 +63,3 @@ "exports": {

]
},
"gitHead": "df19f81f54e4f7b5299461c4c27e80e5c121ab1c"
}
}

@@ -8,2 +8,3 @@ export * from "./activity/ActivityComponentType";

export * from "./useActions";
export * from "./useActiveEffect";
export * from "./useStepActions";

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