@preact/signals-react
Advanced tools
Comparing version 1.3.6 to 1.3.7
# @preact/signals-react | ||
## 1.3.7 | ||
### Patch Changes | ||
- [#443](https://github.com/preactjs/signals/pull/443) [`020982d`](https://github.com/preactjs/signals/commit/020982d2f3039817527aaa000a5697486a870c9d) Thanks [@andrewiggins](https://github.com/andrewiggins)! - Setup internal infrastructure for upcoming major change | ||
* [#439](https://github.com/preactjs/signals/pull/439) [`fb6b050`](https://github.com/preactjs/signals/commit/fb6b050be305294fa3ea5b883c51a375f1720f78) Thanks [@andrewiggins](https://github.com/andrewiggins)! - Fix rendering signals as text when using react-transform | ||
## 1.3.6 | ||
@@ -4,0 +12,0 @@ |
import { signal, computed, batch, effect, Signal, type ReadonlySignal, untracked } from "@preact/signals-core"; | ||
import type { ReactElement } from "react"; | ||
import { useSignal, useComputed, useSignalEffect } from "../runtime"; | ||
import { useSignal, useComputed, useSignalEffect } from "../runtime/src/index"; | ||
export { signal, computed, batch, effect, Signal, type ReadonlySignal, useSignal, useComputed, useSignalEffect, untracked, }; | ||
@@ -5,0 +5,0 @@ declare module "@preact/signals-core" { |
@@ -1,1 +0,1 @@ | ||
var e=require("@preact/signals-core"),n=require("react"),r=require("use-sync-external-store/shim/index.js"),t=require("react/jsx-runtime"),u=require("react/jsx-dev-runtime");function i(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var o=/*#__PURE__*/i(n),f=/*#__PURE__*/i(t),c=/*#__PURE__*/i(u),a=[],l=Symbol.for("react.element");Promise.prototype.then.bind(Promise.resolve());Object.defineProperties(e.Signal.prototype,{$$typeof:{configurable:!0,value:l},type:{configurable:!0,value:function(e){return e.data.value}},props:{configurable:!0,get:function(){return{data:this}}},ref:{configurable:!0,value:null}});var s=Symbol.for("react.element");function v(n){if("function"!=typeof n)return n;else return function(r,t){if("string"==typeof r&&t)for(var u in t){var i=t[u];if("children"!==u&&i instanceof e.Signal)t[u]=i.value}return n.call.apply(n,[n,r,t].concat([].slice.call(arguments,2)))}}var p,b=Symbol.dispose||Symbol.for("Symbol.dispose");function d(e){if(p)p();p=e&&e.effect.S()}var g,m=function(){return d()},x=Promise.prototype.then.bind(Promise.resolve());Object.defineProperties(e.Signal.prototype,{$$typeof:{configurable:!0,value:s},type:{configurable:!0,value:function(e){return e.data.value}},props:{configurable:!0,get:function(){return{data:this}}},ref:{configurable:!0,value:null}});var y=null,j=!1,h=null,S=new Map;function q(e){if(!e)return 1;var n,r=S.get(e);if(void 0!==r)return r;var t=e.useCallback.toString();if(e.useReducer===e.useEffect)n=1;else if(e.useEffect===e.useImperativeHandle)n=32;else if(/Invalid/.test(t))n=2;else if(/updateCallback/.test(t)||/\[0\]/.test(t)&&/\[1\]/.test(t)){var u=e.useReducer.toString();if(/rerenderReducer/.test(u)||/return\s*\[\w+,/.test(u))n=16;else n=8}else n=4;S.set(e,n);return n}!function(){Object.defineProperty(n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentDispatcher,"current",{get:function(){return h},set:function(t){if(!j){var u=q(h),i=q(t);h=t;if(function(e,n){if(1&e&&28&n)return!0;else if(2&e||2&n)return!1;else if(16&n)return!0;else return!1}(u,i)){j=!0;y=function(){m();if(!g)g=x(function(){g=void 0;m()});var t=n.useRef();if(null==t.current)t.current=function(){var n,r,t,u=0,i=e.effect(function(){r=this});r.c=function(){u=u+1|0;if(t)t()};return(n={effect:r,subscribe:function(e){t=e;return function(){u=u+1|0;t=void 0;i()}},getSnapshot:function(){return u},f:function(){m()}})[b]=function(){m()},n}();var u=t.current;r.useSyncExternalStore(u.subscribe,u.getSnapshot,u.getSnapshot);d(u);return u}();j=!1}else if(function(e,n){return Boolean(28&e&&1&n)}(u,i)){var o;null==(o=y)||o.f();y=null}}else h=t}});!function(){var e=f,n=c;o.createElement=v(o.createElement);n.jsx&&(n.jsx=v(n.jsx));e.jsx&&(e.jsx=v(e.jsx));n.jsxs&&(n.jsxs=v(n.jsxs));e.jsxs&&(e.jsxs=v(e.jsxs));n.jsxDEV&&(n.jsxDEV=v(n.jsxDEV));e.jsxDEV&&(e.jsxDEV=v(e.jsxDEV))}()}();exports.Signal=e.Signal;exports.batch=e.batch;exports.computed=e.computed;exports.effect=e.effect;exports.signal=e.signal;exports.untracked=e.untracked;exports.useComputed=function(r){var t=n.useRef(r);t.current=r;return n.useMemo(function(){return e.computed(function(){return t.current()})},a)};exports.useSignal=function(r){return n.useMemo(function(){return e.signal(r)},a)};exports.useSignalEffect=function(r){var t=n.useRef(r);t.current=r;n.useEffect(function(){return e.effect(function(){return t.current()})},a)};//# sourceMappingURL=signals.js.map | ||
var n=require("@preact/signals-core"),e=require("react"),r=require("use-sync-external-store/shim/index.js"),t=require("react/jsx-runtime"),u=require("react/jsx-dev-runtime");function i(n){return n&&"object"==typeof n&&"default"in n?n.default:n}var f=/*#__PURE__*/i(e),o=/*#__PURE__*/i(t),c=/*#__PURE__*/i(u),s=!1,a=null,l=!1,v=null,p=new Map;function b(n){if(!n)return 1;var e,r=p.get(n);if(void 0!==r)return r;var t=n.useCallback.toString();if(n.useReducer===n.useEffect)e=1;else if(n.useEffect===n.useImperativeHandle)e=32;else if(/Invalid/.test(t))e=2;else if(/updateCallback/.test(t)||/\[0\]/.test(t)&&/\[1\]/.test(t)){var u=n.useReducer.toString();if(/rerenderReducer/.test(u)||/return\s*\[\w+,/.test(u))e=16;else e=8}else e=4;p.set(n,e);return e}var d=[],x=Symbol.for("react.element"),y=function(){};function g(e){if("function"!=typeof e)return e;else return function(r,t){if("string"==typeof r&&t)for(var u in t){var i=t[u];if("children"!==u&&i instanceof n.Signal)t[u]=i.value}return e.call.apply(e,[e,r,t].concat([].slice.call(arguments,2)))}}var m,h=Symbol.dispose||Symbol.for("Symbol.dispose");function j(n){if(m)m();m=n&&n.effect.S()}var S,q,_=function(){return j()},k=((S={effect:{s:void 0,c:function(){},S:function(){return y},d:function(){}},subscribe:function(){return y},getSnapshot:function(){return 0},f:function(){}})[h]=function(){},S),w=Promise.prototype.then.bind(Promise.resolve());function O(){_();if(!q)q=w(function(){q=void 0;_()});var t=e.useRef();if(null==t.current)t.current=function(){var e,r,t,u=0,i=n.effect(function(){r=this});r.c=function(){u=u+1|0;if(t)t()};return(e={effect:r,subscribe:function(n){t=n;return function(){u=u+1|0;t=void 0;i()}},getSnapshot:function(){return u},f:function(){_()}})[h]=function(){_()},e}();var u=t.current;r.useSyncExternalStore(u.subscribe,u.getSnapshot,u.getSnapshot);j(u);return u}Object.defineProperties(n.Signal.prototype,{$$typeof:{configurable:!0,value:x},type:{configurable:!0,value:function(n){var e=n.data,r=function(){if(s)return k;else return O()}();try{return e.value}finally{r.f()}}},props:{configurable:!0,get:function(){return{data:this}}},ref:{configurable:!0,value:null}});!function(){!function(){s=!0;Object.defineProperty(e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentDispatcher,"current",{get:function(){return v},set:function(n){if(!l){var e=b(v),r=b(n);v=n;if(function(n,e){if(1&n&&28&e)return!0;else if(2&n||2&e)return!1;else if(16&e)return!0;else return!1}(e,r)){l=!0;a=O();l=!1}else if(function(n,e){return Boolean(28&n&&1&e)}(e,r)){var t;null==(t=a)||t.f();a=null}}else v=n}})}();!function(){var n=o,e=c;f.createElement=g(f.createElement);e.jsx&&(e.jsx=g(e.jsx));n.jsx&&(n.jsx=g(n.jsx));e.jsxs&&(e.jsxs=g(e.jsxs));n.jsxs&&(n.jsxs=g(n.jsxs));e.jsxDEV&&(e.jsxDEV=g(e.jsxDEV));n.jsxDEV&&(n.jsxDEV=g(n.jsxDEV))}()}();exports.Signal=n.Signal;exports.batch=n.batch;exports.computed=n.computed;exports.effect=n.effect;exports.signal=n.signal;exports.untracked=n.untracked;exports.useComputed=function(r){var t=e.useRef(r);t.current=r;return e.useMemo(function(){return n.computed(function(){return t.current()})},d)};exports.useSignal=function(r){return e.useMemo(function(){return n.signal(r)},d)};exports.useSignalEffect=function(r){var t=e.useRef(r);t.current=r;e.useEffect(function(){return n.effect(function(){return t.current()})},d)};//# sourceMappingURL=signals.js.map |
@@ -1,1 +0,1 @@ | ||
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@preact/signals-core"),require("react"),require("use-sync-external-store/shim/index.js"),require("react/jsx-runtime"),require("react/jsx-dev-runtime")):"function"==typeof define&&define.amd?define(["exports","@preact/signals-core","react","use-sync-external-store/shim/index.js","react/jsx-runtime","react/jsx-dev-runtime"],n):n((e||self).reactSignals={},e.preactSignalsCore,e.react,e.index_js,e.a,e.s)}(this,function(e,n,r,t,u,i){function f(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var o=/*#__PURE__*/f(r),c=/*#__PURE__*/f(u),l=/*#__PURE__*/f(i),a=[],s=Symbol.for("react.element");Promise.prototype.then.bind(Promise.resolve());Object.defineProperties(n.Signal.prototype,{$$typeof:{configurable:!0,value:s},type:{configurable:!0,value:function(e){return e.data.value}},props:{configurable:!0,get:function(){return{data:this}}},ref:{configurable:!0,value:null}});var v=Symbol.for("react.element");function d(e){if("function"!=typeof e)return e;else return function(r,t){if("string"==typeof r&&t)for(var u in t){var i=t[u];if("children"!==u&&i instanceof n.Signal)t[u]=i.value}return e.call.apply(e,[e,r,t].concat([].slice.call(arguments,2)))}}var p,b=Symbol.dispose||Symbol.for("Symbol.dispose");function m(e){if(p)p();p=e&&e.effect.S()}var y,g=function(){return m()},j=Promise.prototype.then.bind(Promise.resolve());Object.defineProperties(n.Signal.prototype,{$$typeof:{configurable:!0,value:v},type:{configurable:!0,value:function(e){return e.data.value}},props:{configurable:!0,get:function(){return{data:this}}},ref:{configurable:!0,value:null}});var x=null,h=!1,S=null,q=new Map;function P(e){if(!e)return 1;var n,r=q.get(e);if(void 0!==r)return r;var t=e.useCallback.toString();if(e.useReducer===e.useEffect)n=1;else if(e.useEffect===e.useImperativeHandle)n=32;else if(/Invalid/.test(t))n=2;else if(/updateCallback/.test(t)||/\[0\]/.test(t)&&/\[1\]/.test(t)){var u=e.useReducer.toString();if(/rerenderReducer/.test(u)||/return\s*\[\w+,/.test(u))n=16;else n=8}else n=4;q.set(e,n);return n}!function(){Object.defineProperty(r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentDispatcher,"current",{get:function(){return S},set:function(e){if(!h){var u=P(S),i=P(e);S=e;if(function(e,n){if(1&e&&28&n)return!0;else if(2&e||2&n)return!1;else if(16&n)return!0;else return!1}(u,i)){h=!0;x=function(){g();if(!y)y=j(function(){y=void 0;g()});var e=r.useRef();if(null==e.current)e.current=function(){var e,r,t,u=0,i=n.effect(function(){r=this});r.c=function(){u=u+1|0;if(t)t()};return(e={effect:r,subscribe:function(e){t=e;return function(){u=u+1|0;t=void 0;i()}},getSnapshot:function(){return u},f:function(){g()}})[b]=function(){g()},e}();var u=e.current;t.useSyncExternalStore(u.subscribe,u.getSnapshot,u.getSnapshot);m(u);return u}();h=!1}else if(function(e,n){return Boolean(28&e&&1&n)}(u,i)){var f;null==(f=x)||f.f();x=null}}else S=e}});!function(){var e=c,n=l;o.createElement=d(o.createElement);n.jsx&&(n.jsx=d(n.jsx));e.jsx&&(e.jsx=d(e.jsx));n.jsxs&&(n.jsxs=d(n.jsxs));e.jsxs&&(e.jsxs=d(e.jsxs));n.jsxDEV&&(n.jsxDEV=d(n.jsxDEV));e.jsxDEV&&(e.jsxDEV=d(e.jsxDEV))}()}();e.Signal=n.Signal;e.batch=n.batch;e.computed=n.computed;e.effect=n.effect;e.signal=n.signal;e.untracked=n.untracked;e.useComputed=function(e){var t=r.useRef(e);t.current=e;return r.useMemo(function(){return n.computed(function(){return t.current()})},a)};e.useSignal=function(e){return r.useMemo(function(){return n.signal(e)},a)};e.useSignalEffect=function(e){var t=r.useRef(e);t.current=e;r.useEffect(function(){return n.effect(function(){return t.current()})},a)}});//# sourceMappingURL=signals.min.js.map | ||
!function(n,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@preact/signals-core"),require("react"),require("use-sync-external-store/shim/index.js"),require("react/jsx-runtime"),require("react/jsx-dev-runtime")):"function"==typeof define&&define.amd?define(["exports","@preact/signals-core","react","use-sync-external-store/shim/index.js","react/jsx-runtime","react/jsx-dev-runtime"],e):e((n||self).reactSignals={},n.preactSignalsCore,n.react,n.index_js,n.jsxRuntime,n.jsxRuntimeDev)}(this,function(n,e,r,t,i,u){function f(n){return n&&"object"==typeof n&&"default"in n?n.default:n}var o=/*#__PURE__*/f(r),c=/*#__PURE__*/f(i),s=/*#__PURE__*/f(u),a=!1,l=null,v=!1,d=null,p=new Map;function b(n){if(!n)return 1;var e,r=p.get(n);if(void 0!==r)return r;var t=n.useCallback.toString();if(n.useReducer===n.useEffect)e=1;else if(n.useEffect===n.useImperativeHandle)e=32;else if(/Invalid/.test(t))e=2;else if(/updateCallback/.test(t)||/\[0\]/.test(t)&&/\[1\]/.test(t)){var i=n.useReducer.toString();if(/rerenderReducer/.test(i)||/return\s*\[\w+,/.test(i))e=16;else e=8}else e=4;p.set(n,e);return e}var y=[],m=Symbol.for("react.element"),g=function(){};function x(n){if("function"!=typeof n)return n;else return function(r,t){if("string"==typeof r&&t)for(var i in t){var u=t[i];if("children"!==i&&u instanceof e.Signal)t[i]=u.value}return n.call.apply(n,[n,r,t].concat([].slice.call(arguments,2)))}}var h,j=Symbol.dispose||Symbol.for("Symbol.dispose");function S(n){if(h)h();h=n&&n.effect.S()}var q,_,k=function(){return S()},w=((q={effect:{s:void 0,c:function(){},S:function(){return g},d:function(){}},subscribe:function(){return g},getSnapshot:function(){return 0},f:function(){}})[j]=function(){},q),O=Promise.prototype.then.bind(Promise.resolve());function P(){k();if(!_)_=O(function(){_=void 0;k()});var n=r.useRef();if(null==n.current)n.current=function(){var n,r,t,i=0,u=e.effect(function(){r=this});r.c=function(){i=i+1|0;if(t)t()};return(n={effect:r,subscribe:function(n){t=n;return function(){i=i+1|0;t=void 0;u()}},getSnapshot:function(){return i},f:function(){k()}})[j]=function(){k()},n}();var i=n.current;t.useSyncExternalStore(i.subscribe,i.getSnapshot,i.getSnapshot);S(i);return i}Object.defineProperties(e.Signal.prototype,{$$typeof:{configurable:!0,value:m},type:{configurable:!0,value:function(n){var e=n.data,r=function(){if(a)return w;else return P()}();try{return e.value}finally{r.f()}}},props:{configurable:!0,get:function(){return{data:this}}},ref:{configurable:!0,value:null}});!function(){!function(){a=!0;Object.defineProperty(r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentDispatcher,"current",{get:function(){return d},set:function(n){if(!v){var e=b(d),r=b(n);d=n;if(function(n,e){if(1&n&&28&e)return!0;else if(2&n||2&e)return!1;else if(16&e)return!0;else return!1}(e,r)){v=!0;l=P();v=!1}else if(function(n,e){return Boolean(28&n&&1&e)}(e,r)){var t;null==(t=l)||t.f();l=null}}else d=n}})}();!function(){var n=c,e=s;o.createElement=x(o.createElement);e.jsx&&(e.jsx=x(e.jsx));n.jsx&&(n.jsx=x(n.jsx));e.jsxs&&(e.jsxs=x(e.jsxs));n.jsxs&&(n.jsxs=x(n.jsxs));e.jsxDEV&&(e.jsxDEV=x(e.jsxDEV));n.jsxDEV&&(n.jsxDEV=x(n.jsxDEV))}()}();n.Signal=e.Signal;n.batch=e.batch;n.computed=e.computed;n.effect=e.effect;n.signal=e.signal;n.untracked=e.untracked;n.useComputed=function(n){var t=r.useRef(n);t.current=n;return r.useMemo(function(){return e.computed(function(){return t.current()})},y)};n.useSignal=function(n){return r.useMemo(function(){return e.signal(n)},y)};n.useSignalEffect=function(n){var t=r.useRef(n);t.current=n;r.useEffect(function(){return e.effect(function(){return t.current()})},y)}});//# sourceMappingURL=signals.min.js.map |
@@ -1,1 +0,1 @@ | ||
import{Signal as n,signal as e,computed as r,effect as t}from"@preact/signals-core";export{Signal,batch,computed,effect,signal,untracked}from"@preact/signals-core";import u,{useMemo as i,useRef as o,useEffect as f,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED as c}from"react";import{useSyncExternalStore as a}from"use-sync-external-store/shim/index.js";import l from"react/jsx-runtime";import s from"react/jsx-dev-runtime";var v=[],m=Symbol.for("react.element");Promise.prototype.then.bind(Promise.resolve());Object.defineProperties(n.prototype,{$$typeof:{configurable:!0,value:m},type:{configurable:!0,value:function(n){return n.data.value}},props:{configurable:!0,get:function(){return{data:this}}},ref:{configurable:!0,value:null}});function useSignal(n){return i(function(){return e(n)},v)}function useComputed(n){var e=o(n);e.current=n;return i(function(){return r(function(){return e.current()})},v)}function useSignalEffect(n){var e=o(n);e.current=n;f(function(){return t(function(){return e.current()})},v)}var p=Symbol.for("react.element");function b(e){if("function"!=typeof e)return e;else return function(r,t){if("string"==typeof r&&t)for(var u in t){var i=t[u];if("children"!==u&&i instanceof n)t[u]=i.value}return e.call.apply(e,[e,r,t].concat([].slice.call(arguments,2)))}}var g,d=Symbol.dispose||Symbol.for("Symbol.dispose");function y(n){if(g)g();g=n&&n.effect.S()}var h,S=function(){return y()},j=Promise.prototype.then.bind(Promise.resolve());Object.defineProperties(n.prototype,{$$typeof:{configurable:!0,value:p},type:{configurable:!0,value:function(n){return n.data.value}},props:{configurable:!0,get:function(){return{data:this}}},ref:{configurable:!0,value:null}});var x=null,P=!1,$=null,O=new Map;function k(n){if(!n)return 1;var e,r=O.get(n);if(void 0!==r)return r;var t=n.useCallback.toString();if(n.useReducer===n.useEffect)e=1;else if(n.useEffect===n.useImperativeHandle)e=32;else if(/Invalid/.test(t))e=2;else if(/updateCallback/.test(t)||/\[0\]/.test(t)&&/\[1\]/.test(t)){var u=n.useReducer.toString();if(/rerenderReducer/.test(u)||/return\s*\[\w+,/.test(u))e=16;else e=8}else e=4;O.set(n,e);return e}!function(){Object.defineProperty(c.ReactCurrentDispatcher,"current",{get:function(){return $},set:function(n){if(!P){var e=k($),r=k(n);$=n;if(function(n,e){if(1&n&&28&e)return!0;else if(2&n||2&e)return!1;else if(16&e)return!0;else return!1}(e,r)){P=!0;x=function(){S();if(!h)h=j(function(){h=void 0;S()});var n=o();if(null==n.current)n.current=function(){var n,e,r,u=0,i=t(function(){e=this});e.c=function(){u=u+1|0;if(r)r()};return(n={effect:e,subscribe:function(n){r=n;return function(){u=u+1|0;r=void 0;i()}},getSnapshot:function(){return u},f:function(){S()}})[d]=function(){S()},n}();var e=n.current;a(e.subscribe,e.getSnapshot,e.getSnapshot);y(e);return e}();P=!1}else if(function(n,e){return Boolean(28&n&&1&e)}(e,r)){var u;null==(u=x)||u.f();x=null}}else $=n}});!function(){var n=l,e=s;u.createElement=b(u.createElement);e.jsx&&(e.jsx=b(e.jsx));n.jsx&&(n.jsx=b(n.jsx));e.jsxs&&(e.jsxs=b(e.jsxs));n.jsxs&&(n.jsxs=b(n.jsxs));e.jsxDEV&&(e.jsxDEV=b(e.jsxDEV));n.jsxDEV&&(n.jsxDEV=b(n.jsxDEV))}()}();export{useComputed,useSignal,useSignalEffect};//# sourceMappingURL=signals.module.js.map | ||
import{Signal as n,signal as r,computed as e,effect as t}from"@preact/signals-core";export{Signal,batch,computed,effect,signal,untracked}from"@preact/signals-core";import i,{__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED as u,useMemo as f,useRef as o,useEffect as c}from"react";import{useSyncExternalStore as a}from"use-sync-external-store/shim/index.js";import l from"react/jsx-runtime";import s from"react/jsx-dev-runtime";var v=!1,m=null,p=!1,b=null,d=new Map;function g(n){if(!n)return 1;var r,e=d.get(n);if(void 0!==e)return e;var t=n.useCallback.toString();if(n.useReducer===n.useEffect)r=1;else if(n.useEffect===n.useImperativeHandle)r=32;else if(/Invalid/.test(t))r=2;else if(/updateCallback/.test(t)||/\[0\]/.test(t)&&/\[1\]/.test(t)){var i=n.useReducer.toString();if(/rerenderReducer/.test(i)||/return\s*\[\w+,/.test(i))r=16;else r=8}else r=4;d.set(n,r);return r}var y=[],h=Symbol.for("react.element"),S=function(){};function x(r){if("function"!=typeof r)return r;else return function(e,t){if("string"==typeof e&&t)for(var i in t){var u=t[i];if("children"!==i&&u instanceof n)t[i]=u.value}return r.call.apply(r,[r,e,t].concat([].slice.call(arguments,2)))}}var j,_=Symbol.dispose||Symbol.for("Symbol.dispose");function k(n){if(j)j();j=n&&n.effect.S()}var w,O,P=function(){return k()},$=((w={effect:{s:void 0,c:function(){},S:function(){return S},d:function(){}},subscribe:function(){return S},getSnapshot:function(){return 0},f:function(){}})[_]=function(){},w),B=Promise.prototype.then.bind(Promise.resolve());function C(){P();if(!O)O=B(function(){O=void 0;P()});var n=o();if(null==n.current)n.current=function(){var n,r,e,i=0,u=t(function(){r=this});r.c=function(){i=i+1|0;if(e)e()};return(n={effect:r,subscribe:function(n){e=n;return function(){i=i+1|0;e=void 0;u()}},getSnapshot:function(){return i},f:function(){P()}})[_]=function(){P()},n}();var r=n.current;a(r.subscribe,r.getSnapshot,r.getSnapshot);k(r);return r}Object.defineProperties(n.prototype,{$$typeof:{configurable:!0,value:h},type:{configurable:!0,value:function(n){var r=n.data,e=function(){if(v)return $;else return C()}();try{return r.value}finally{e.f()}}},props:{configurable:!0,get:function(){return{data:this}}},ref:{configurable:!0,value:null}});function useSignal(n){return f(function(){return r(n)},y)}function useComputed(n){var r=o(n);r.current=n;return f(function(){return e(function(){return r.current()})},y)}function useSignalEffect(n){var r=o(n);r.current=n;c(function(){return t(function(){return r.current()})},y)}!function(){!function(){v=!0;Object.defineProperty(u.ReactCurrentDispatcher,"current",{get:function(){return b},set:function(n){if(!p){var r=g(b),e=g(n);b=n;if(function(n,r){if(1&n&&28&r)return!0;else if(2&n||2&r)return!1;else if(16&r)return!0;else return!1}(r,e)){p=!0;m=C();p=!1}else if(function(n,r){return Boolean(28&n&&1&r)}(r,e)){var t;null==(t=m)||t.f();m=null}}else b=n}})}();!function(){var n=l,r=s;i.createElement=x(i.createElement);r.jsx&&(r.jsx=x(r.jsx));n.jsx&&(n.jsx=x(n.jsx));r.jsxs&&(r.jsxs=x(r.jsxs));n.jsxs&&(n.jsxs=x(n.jsxs));r.jsxDEV&&(r.jsxDEV=x(r.jsxDEV));n.jsxDEV&&(n.jsxDEV=x(n.jsxDEV))}()}();export{useComputed,useSignal,useSignalEffect};//# sourceMappingURL=signals.module.js.map |
{ | ||
"name": "@preact/signals-react", | ||
"version": "1.3.6", | ||
"version": "1.3.7", | ||
"license": "MIT", | ||
@@ -43,2 +43,12 @@ "description": "Manage state with style in React", | ||
"mangle": "../../mangle.json", | ||
"files": [ | ||
"src", | ||
"dist", | ||
"runtime/dist", | ||
"runtime/src", | ||
"runtime/package.json", | ||
"CHANGELOG.md", | ||
"LICENSE", | ||
"README.md" | ||
], | ||
"dependencies": { | ||
@@ -45,0 +55,0 @@ "@preact/signals-core": "^1.4.0", |
@@ -10,3 +10,4 @@ import React from "react"; | ||
} | ||
export declare let isAutoSignalTrackingInstalled: boolean; | ||
export declare function installJSXHooks(): void; | ||
export declare function installAutoSignalTracking(): void; |
@@ -1,2 +0,2 @@ | ||
import { Signal } from "@preact/signals-core"; | ||
import { Signal, ReadonlySignal } from "@preact/signals-core"; | ||
export { installAutoSignalTracking } from "./auto"; | ||
@@ -23,5 +23,6 @@ export declare function wrapJsx<T>(jsx: T): T; | ||
*/ | ||
export declare function _useSignalsImplementation(): EffectStore; | ||
export declare function useSignals(): EffectStore; | ||
export declare function useSignal<T>(value: T): Signal<T>; | ||
export declare function useComputed<T>(compute: () => T): import("@preact/signals-core").ReadonlySignal<T>; | ||
export declare function useComputed<T>(compute: () => T): ReadonlySignal<T>; | ||
export declare function useSignalEffect(cb: () => void | (() => void)): void; |
@@ -1,1 +0,1 @@ | ||
var n=require("@preact/signals-core"),e=require("react"),r=require("use-sync-external-store/shim/index.js"),t=require("react/jsx-runtime"),u=require("react/jsx-dev-runtime");function i(n){return n&&"object"==typeof n&&"default"in n?n.default:n}var f=/*#__PURE__*/i(e),o=/*#__PURE__*/i(t),c=/*#__PURE__*/i(u),a=null,l=!1,s=null,v=new Map;function p(n){if(!n)return 1;var e,r=v.get(n);if(void 0!==r)return r;var t=n.useCallback.toString();if(n.useReducer===n.useEffect)e=1;else if(n.useEffect===n.useImperativeHandle)e=32;else if(/Invalid/.test(t))e=2;else if(/updateCallback/.test(t)||/\[0\]/.test(t)&&/\[1\]/.test(t)){var u=n.useReducer.toString();if(/rerenderReducer/.test(u)||/return\s*\[\w+,/.test(u))e=16;else e=8}else e=4;v.set(n,e);return e}var b=[],d=Symbol.for("react.element");function m(e){if("function"!=typeof e)return e;else return function(r,t){if("string"==typeof r&&t)for(var u in t){var i=t[u];if("children"!==u&&i instanceof n.Signal)t[u]=i.value}return e.call.apply(e,[e,r,t].concat([].slice.call(arguments,2)))}}var x,y=Symbol.dispose||Symbol.for("Symbol.dispose");function g(n){if(x)x();x=n&&n.effect.S()}var j,h=function(){return g()},q=Promise.prototype.then.bind(Promise.resolve());function S(){h();if(!j)j=q(function(){j=void 0;h()});var t=e.useRef();if(null==t.current)t.current=function(){var e,r,t,u=0,i=n.effect(function(){r=this});r.c=function(){u=u+1|0;if(t)t()};return(e={effect:r,subscribe:function(n){t=n;return function(){u=u+1|0;t=void 0;i()}},getSnapshot:function(){return u},f:function(){h()}})[y]=function(){h()},e}();var u=t.current;r.useSyncExternalStore(u.subscribe,u.getSnapshot,u.getSnapshot);g(u);return u}Object.defineProperties(n.Signal.prototype,{$$typeof:{configurable:!0,value:d},type:{configurable:!0,value:function(n){return n.data.value}},props:{configurable:!0,get:function(){return{data:this}}},ref:{configurable:!0,value:null}});exports.installAutoSignalTracking=function(){Object.defineProperty(e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentDispatcher,"current",{get:function(){return s},set:function(n){if(!l){var e=p(s),r=p(n);s=n;if(function(n,e){if(1&n&&28&e)return!0;else if(2&n||2&e)return!1;else if(16&e)return!0;else return!1}(e,r)){l=!0;a=S();l=!1}else if(function(n,e){return Boolean(28&n&&1&e)}(e,r)){var t;null==(t=a)||t.f();a=null}}else s=n}});!function(){var n=o,e=c;f.createElement=m(f.createElement);e.jsx&&(e.jsx=m(e.jsx));n.jsx&&(n.jsx=m(n.jsx));e.jsxs&&(e.jsxs=m(e.jsxs));n.jsxs&&(n.jsxs=m(n.jsxs));e.jsxDEV&&(e.jsxDEV=m(e.jsxDEV));n.jsxDEV&&(n.jsxDEV=m(n.jsxDEV))}()};exports.useComputed=function(r){var t=e.useRef(r);t.current=r;return e.useMemo(function(){return n.computed(function(){return t.current()})},b)};exports.useSignal=function(r){return e.useMemo(function(){return n.signal(r)},b)};exports.useSignalEffect=function(r){var t=e.useRef(r);t.current=r;e.useEffect(function(){return n.effect(function(){return t.current()})},b)};exports.useSignals=S;exports.wrapJsx=m;//# sourceMappingURL=runtime.js.map | ||
var n=require("@preact/signals-core"),e=require("react"),r=require("use-sync-external-store/shim/index.js"),t=require("react/jsx-runtime"),u=require("react/jsx-dev-runtime");function i(n){return n&&"object"==typeof n&&"default"in n?n.default:n}var f=/*#__PURE__*/i(e),o=/*#__PURE__*/i(t),c=/*#__PURE__*/i(u),s=!1,a=null,l=!1,v=null,p=new Map;function b(n){if(!n)return 1;var e,r=p.get(n);if(void 0!==r)return r;var t=n.useCallback.toString();if(n.useReducer===n.useEffect)e=1;else if(n.useEffect===n.useImperativeHandle)e=32;else if(/Invalid/.test(t))e=2;else if(/updateCallback/.test(t)||/\[0\]/.test(t)&&/\[1\]/.test(t)){var u=n.useReducer.toString();if(/rerenderReducer/.test(u)||/return\s*\[\w+,/.test(u))e=16;else e=8}else e=4;p.set(n,e);return e}var d=[],y=Symbol.for("react.element"),x=function(){};function g(e){if("function"!=typeof e)return e;else return function(r,t){if("string"==typeof r&&t)for(var u in t){var i=t[u];if("children"!==u&&i instanceof n.Signal)t[u]=i.value}return e.call.apply(e,[e,r,t].concat([].slice.call(arguments,2)))}}var m,h=Symbol.dispose||Symbol.for("Symbol.dispose");function j(n){if(m)m();m=n&&n.effect.S()}var S,q,_=function(){return j()},k=((S={effect:{s:void 0,c:function(){},S:function(){return x},d:function(){}},subscribe:function(){return x},getSnapshot:function(){return 0},f:function(){}})[h]=function(){},S),w=Promise.prototype.then.bind(Promise.resolve());function O(){_();if(!q)q=w(function(){q=void 0;_()});var t=e.useRef();if(null==t.current)t.current=function(){var e,r,t,u=0,i=n.effect(function(){r=this});r.c=function(){u=u+1|0;if(t)t()};return(e={effect:r,subscribe:function(n){t=n;return function(){u=u+1|0;t=void 0;i()}},getSnapshot:function(){return u},f:function(){_()}})[h]=function(){_()},e}();var u=t.current;r.useSyncExternalStore(u.subscribe,u.getSnapshot,u.getSnapshot);j(u);return u}Object.defineProperties(n.Signal.prototype,{$$typeof:{configurable:!0,value:y},type:{configurable:!0,value:function(n){var e=n.data,r=P();try{return e.value}finally{r.f()}}},props:{configurable:!0,get:function(){return{data:this}}},ref:{configurable:!0,value:null}});function P(){if(s)return k;else return O()}exports._useSignalsImplementation=O;exports.installAutoSignalTracking=function(){!function(){s=!0;Object.defineProperty(e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentDispatcher,"current",{get:function(){return v},set:function(n){if(!l){var e=b(v),r=b(n);v=n;if(function(n,e){if(1&n&&28&e)return!0;else if(2&n||2&e)return!1;else if(16&e)return!0;else return!1}(e,r)){l=!0;a=O();l=!1}else if(function(n,e){return Boolean(28&n&&1&e)}(e,r)){var t;null==(t=a)||t.f();a=null}}else v=n}})}();!function(){var n=o,e=c;f.createElement=g(f.createElement);e.jsx&&(e.jsx=g(e.jsx));n.jsx&&(n.jsx=g(n.jsx));e.jsxs&&(e.jsxs=g(e.jsxs));n.jsxs&&(n.jsxs=g(n.jsxs));e.jsxDEV&&(e.jsxDEV=g(e.jsxDEV));n.jsxDEV&&(n.jsxDEV=g(n.jsxDEV))}()};exports.useComputed=function(r){var t=e.useRef(r);t.current=r;return e.useMemo(function(){return n.computed(function(){return t.current()})},d)};exports.useSignal=function(r){return e.useMemo(function(){return n.signal(r)},d)};exports.useSignalEffect=function(r){var t=e.useRef(r);t.current=r;e.useEffect(function(){return n.effect(function(){return t.current()})},d)};exports.useSignals=P;exports.wrapJsx=g;//# sourceMappingURL=runtime.js.map |
@@ -1,1 +0,1 @@ | ||
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@preact/signals-core"),require("react"),require("use-sync-external-store/shim/index.js"),require("react/jsx-runtime"),require("react/jsx-dev-runtime")):"function"==typeof define&&define.amd?define(["exports","@preact/signals-core","react","use-sync-external-store/shim/index.js","react/jsx-runtime","react/jsx-dev-runtime"],n):n((e||self).reactSignalsRuntime={},e.preactSignalsCore,e.react,e.index_js,e.jsxRuntime,e.jsxRuntimeDev)}(this,function(e,n,r,t,i,u){function f(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var o=/*#__PURE__*/f(r),c=/*#__PURE__*/f(i),l=/*#__PURE__*/f(u),a=null,s=!1,v=null,d=new Map;function p(e){if(!e)return 1;var n,r=d.get(e);if(void 0!==r)return r;var t=e.useCallback.toString();if(e.useReducer===e.useEffect)n=1;else if(e.useEffect===e.useImperativeHandle)n=32;else if(/Invalid/.test(t))n=2;else if(/updateCallback/.test(t)||/\[0\]/.test(t)&&/\[1\]/.test(t)){var i=e.useReducer.toString();if(/rerenderReducer/.test(i)||/return\s*\[\w+,/.test(i))n=16;else n=8}else n=4;d.set(e,n);return n}var b=[],y=Symbol.for("react.element");function m(e){if("function"!=typeof e)return e;else return function(r,t){if("string"==typeof r&&t)for(var i in t){var u=t[i];if("children"!==i&&u instanceof n.Signal)t[i]=u.value}return e.call.apply(e,[e,r,t].concat([].slice.call(arguments,2)))}}var g,x=Symbol.dispose||Symbol.for("Symbol.dispose");function j(e){if(g)g();g=e&&e.effect.S()}var h,q=function(){return j()},S=Promise.prototype.then.bind(Promise.resolve());function w(){q();if(!h)h=S(function(){h=void 0;q()});var e=r.useRef();if(null==e.current)e.current=function(){var e,r,t,i=0,u=n.effect(function(){r=this});r.c=function(){i=i+1|0;if(t)t()};return(e={effect:r,subscribe:function(e){t=e;return function(){i=i+1|0;t=void 0;u()}},getSnapshot:function(){return i},f:function(){q()}})[x]=function(){q()},e}();var i=e.current;t.useSyncExternalStore(i.subscribe,i.getSnapshot,i.getSnapshot);j(i);return i}Object.defineProperties(n.Signal.prototype,{$$typeof:{configurable:!0,value:y},type:{configurable:!0,value:function(e){return e.data.value}},props:{configurable:!0,get:function(){return{data:this}}},ref:{configurable:!0,value:null}});e.installAutoSignalTracking=function(){Object.defineProperty(r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentDispatcher,"current",{get:function(){return v},set:function(e){if(!s){var n=p(v),r=p(e);v=e;if(function(e,n){if(1&e&&28&n)return!0;else if(2&e||2&n)return!1;else if(16&n)return!0;else return!1}(n,r)){s=!0;a=w();s=!1}else if(function(e,n){return Boolean(28&e&&1&n)}(n,r)){var t;null==(t=a)||t.f();a=null}}else v=e}});!function(){var e=c,n=l;o.createElement=m(o.createElement);n.jsx&&(n.jsx=m(n.jsx));e.jsx&&(e.jsx=m(e.jsx));n.jsxs&&(n.jsxs=m(n.jsxs));e.jsxs&&(e.jsxs=m(e.jsxs));n.jsxDEV&&(n.jsxDEV=m(n.jsxDEV));e.jsxDEV&&(e.jsxDEV=m(e.jsxDEV))}()};e.useComputed=function(e){var t=r.useRef(e);t.current=e;return r.useMemo(function(){return n.computed(function(){return t.current()})},b)};e.useSignal=function(e){return r.useMemo(function(){return n.signal(e)},b)};e.useSignalEffect=function(e){var t=r.useRef(e);t.current=e;r.useEffect(function(){return n.effect(function(){return t.current()})},b)};e.useSignals=w;e.wrapJsx=m});//# sourceMappingURL=runtime.min.js.map | ||
!function(n,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@preact/signals-core"),require("react"),require("use-sync-external-store/shim/index.js"),require("react/jsx-runtime"),require("react/jsx-dev-runtime")):"function"==typeof define&&define.amd?define(["exports","@preact/signals-core","react","use-sync-external-store/shim/index.js","react/jsx-runtime","react/jsx-dev-runtime"],e):e((n||self).reactSignalsRuntime={},n.preactSignalsCore,n.react,n.index_js,n.jsxRuntime,n.jsxRuntimeDev)}(this,function(n,e,r,t,i,u){function f(n){return n&&"object"==typeof n&&"default"in n?n.default:n}var o=/*#__PURE__*/f(r),c=/*#__PURE__*/f(i),s=/*#__PURE__*/f(u),a=!1,l=null,v=!1,d=null,p=new Map;function b(n){if(!n)return 1;var e,r=p.get(n);if(void 0!==r)return r;var t=n.useCallback.toString();if(n.useReducer===n.useEffect)e=1;else if(n.useEffect===n.useImperativeHandle)e=32;else if(/Invalid/.test(t))e=2;else if(/updateCallback/.test(t)||/\[0\]/.test(t)&&/\[1\]/.test(t)){var i=n.useReducer.toString();if(/rerenderReducer/.test(i)||/return\s*\[\w+,/.test(i))e=16;else e=8}else e=4;p.set(n,e);return e}var y=[],m=Symbol.for("react.element"),g=function(){};function x(n){if("function"!=typeof n)return n;else return function(r,t){if("string"==typeof r&&t)for(var i in t){var u=t[i];if("children"!==i&&u instanceof e.Signal)t[i]=u.value}return n.call.apply(n,[n,r,t].concat([].slice.call(arguments,2)))}}var h,j=Symbol.dispose||Symbol.for("Symbol.dispose");function S(n){if(h)h();h=n&&n.effect.S()}var q,_,k=function(){return S()},w=((q={effect:{s:void 0,c:function(){},S:function(){return g},d:function(){}},subscribe:function(){return g},getSnapshot:function(){return 0},f:function(){}})[j]=function(){},q),O=Promise.prototype.then.bind(Promise.resolve());function P(){k();if(!_)_=O(function(){_=void 0;k()});var n=r.useRef();if(null==n.current)n.current=function(){var n,r,t,i=0,u=e.effect(function(){r=this});r.c=function(){i=i+1|0;if(t)t()};return(n={effect:r,subscribe:function(n){t=n;return function(){i=i+1|0;t=void 0;u()}},getSnapshot:function(){return i},f:function(){k()}})[j]=function(){k()},n}();var i=n.current;t.useSyncExternalStore(i.subscribe,i.getSnapshot,i.getSnapshot);S(i);return i}Object.defineProperties(e.Signal.prototype,{$$typeof:{configurable:!0,value:m},type:{configurable:!0,value:function(n){var e=n.data,r=T();try{return e.value}finally{r.f()}}},props:{configurable:!0,get:function(){return{data:this}}},ref:{configurable:!0,value:null}});function T(){if(a)return w;else return P()}n.u=P;n.installAutoSignalTracking=function(){!function(){a=!0;Object.defineProperty(r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentDispatcher,"current",{get:function(){return d},set:function(n){if(!v){var e=b(d),r=b(n);d=n;if(function(n,e){if(1&n&&28&e)return!0;else if(2&n||2&e)return!1;else if(16&e)return!0;else return!1}(e,r)){v=!0;l=P();v=!1}else if(function(n,e){return Boolean(28&n&&1&e)}(e,r)){var t;null==(t=l)||t.f();l=null}}else d=n}})}();!function(){var n=c,e=s;o.createElement=x(o.createElement);e.jsx&&(e.jsx=x(e.jsx));n.jsx&&(n.jsx=x(n.jsx));e.jsxs&&(e.jsxs=x(e.jsxs));n.jsxs&&(n.jsxs=x(n.jsxs));e.jsxDEV&&(e.jsxDEV=x(e.jsxDEV));n.jsxDEV&&(n.jsxDEV=x(n.jsxDEV))}()};n.useComputed=function(n){var t=r.useRef(n);t.current=n;return r.useMemo(function(){return e.computed(function(){return t.current()})},y)};n.useSignal=function(n){return r.useMemo(function(){return e.signal(n)},y)};n.useSignalEffect=function(n){var t=r.useRef(n);t.current=n;r.useEffect(function(){return e.effect(function(){return t.current()})},y)};n.useSignals=T;n.wrapJsx=x});//# sourceMappingURL=runtime.min.js.map |
@@ -1,1 +0,1 @@ | ||
import{Signal as n,signal as r,computed as e,effect as t}from"@preact/signals-core";import i,{__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED as u,useRef as f,useMemo as o,useEffect as c}from"react";import{useSyncExternalStore as l}from"use-sync-external-store/shim/index.js";import a from"react/jsx-runtime";import s from"react/jsx-dev-runtime";var v=null,m=!1,p=null,b=new Map;function d(n){if(!n)return 1;var r,e=b.get(n);if(void 0!==e)return e;var t=n.useCallback.toString();if(n.useReducer===n.useEffect)r=1;else if(n.useEffect===n.useImperativeHandle)r=32;else if(/Invalid/.test(t))r=2;else if(/updateCallback/.test(t)||/\[0\]/.test(t)&&/\[1\]/.test(t)){var i=n.useReducer.toString();if(/rerenderReducer/.test(i)||/return\s*\[\w+,/.test(i))r=16;else r=8}else r=4;b.set(n,r);return r}function g(){Object.defineProperty(u.ReactCurrentDispatcher,"current",{get:function(){return p},set:function(n){if(!m){var r=d(p),e=d(n);p=n;if(function(n,r){if(1&n&&28&r)return!0;else if(2&n||2&r)return!1;else if(16&r)return!0;else return!1}(r,e)){m=!0;v=k();m=!1}else if(function(n,r){return Boolean(28&n&&1&r)}(r,e)){var t;null==(t=v)||t.f();v=null}}else p=n}});!function(){var n=a,r=s;i.createElement=j(i.createElement);r.jsx&&(r.jsx=j(r.jsx));n.jsx&&(n.jsx=j(n.jsx));r.jsxs&&(r.jsxs=j(r.jsxs));n.jsxs&&(n.jsxs=j(n.jsxs));r.jsxDEV&&(r.jsxDEV=j(r.jsxDEV));n.jsxDEV&&(n.jsxDEV=j(n.jsxDEV))}()}var y=[],h=Symbol.for("react.element");function j(r){if("function"!=typeof r)return r;else return function(e,t){if("string"==typeof e&&t)for(var i in t){var u=t[i];if("children"!==i&&u instanceof n)t[i]=u.value}return r.call.apply(r,[r,e,t].concat([].slice.call(arguments,2)))}}var x,S=Symbol.dispose||Symbol.for("Symbol.dispose");function w(n){if(x)x();x=n&&n.effect.S()}var O,P=function(){return w()},$=Promise.prototype.then.bind(Promise.resolve());function k(){P();if(!O)O=$(function(){O=void 0;P()});var n=f();if(null==n.current)n.current=function(){var n,r,e,i=0,u=t(function(){r=this});r.c=function(){i=i+1|0;if(e)e()};return(n={effect:r,subscribe:function(n){e=n;return function(){i=i+1|0;e=void 0;u()}},getSnapshot:function(){return i},f:function(){P()}})[S]=function(){P()},n}();var r=n.current;l(r.subscribe,r.getSnapshot,r.getSnapshot);w(r);return r}Object.defineProperties(n.prototype,{$$typeof:{configurable:!0,value:h},type:{configurable:!0,value:function(n){return n.data.value}},props:{configurable:!0,get:function(){return{data:this}}},ref:{configurable:!0,value:null}});function useSignal(n){return o(function(){return r(n)},y)}function useComputed(n){var r=f(n);r.current=n;return o(function(){return e(function(){return r.current()})},y)}function useSignalEffect(n){var r=f(n);r.current=n;c(function(){return t(function(){return r.current()})},y)}export{g as installAutoSignalTracking,useComputed,useSignal,useSignalEffect,k as useSignals,j as wrapJsx};//# sourceMappingURL=runtime.module.js.map | ||
import{Signal as n,signal as r,computed as e,effect as t}from"@preact/signals-core";import u,{__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED as i,useRef as f,useMemo as o,useEffect as c}from"react";import{useSyncExternalStore as a}from"use-sync-external-store/shim/index.js";import l from"react/jsx-runtime";import s from"react/jsx-dev-runtime";var v=!1,m=null,p=!1,b=null,d=new Map;function y(n){if(!n)return 1;var r,e=d.get(n);if(void 0!==e)return e;var t=n.useCallback.toString();if(n.useReducer===n.useEffect)r=1;else if(n.useEffect===n.useImperativeHandle)r=32;else if(/Invalid/.test(t))r=2;else if(/updateCallback/.test(t)||/\[0\]/.test(t)&&/\[1\]/.test(t)){var u=n.useReducer.toString();if(/rerenderReducer/.test(u)||/return\s*\[\w+,/.test(u))r=16;else r=8}else r=4;d.set(n,r);return r}function g(){!function(){v=!0;Object.defineProperty(i.ReactCurrentDispatcher,"current",{get:function(){return b},set:function(n){if(!p){var r=y(b),e=y(n);b=n;if(function(n,r){if(1&n&&28&r)return!0;else if(2&n||2&r)return!1;else if(16&r)return!0;else return!1}(r,e)){p=!0;m=I();p=!1}else if(function(n,r){return Boolean(28&n&&1&r)}(r,e)){var t;null==(t=m)||t.f();m=null}}else b=n}})}();!function(){var n=l,r=s;u.createElement=x(u.createElement);r.jsx&&(r.jsx=x(r.jsx));n.jsx&&(n.jsx=x(n.jsx));r.jsxs&&(r.jsxs=x(r.jsxs));n.jsxs&&(n.jsxs=x(n.jsxs));r.jsxDEV&&(r.jsxDEV=x(r.jsxDEV));n.jsxDEV&&(n.jsxDEV=x(n.jsxDEV))}()}var h=[],S=Symbol.for("react.element"),j=function(){};function x(r){if("function"!=typeof r)return r;else return function(e,t){if("string"==typeof e&&t)for(var u in t){var i=t[u];if("children"!==u&&i instanceof n)t[u]=i.value}return r.call.apply(r,[r,e,t].concat([].slice.call(arguments,2)))}}var _,k=Symbol.dispose||Symbol.for("Symbol.dispose");function w(n){if(_)_();_=n&&n.effect.S()}var O,P,$=function(){return w()},B=((O={effect:{s:void 0,c:function(){},S:function(){return j},d:function(){}},subscribe:function(){return j},getSnapshot:function(){return 0},f:function(){}})[k]=function(){},O),C=Promise.prototype.then.bind(Promise.resolve());function I(){$();if(!P)P=C(function(){P=void 0;$()});var n=f();if(null==n.current)n.current=function(){var n,r,e,u=0,i=t(function(){r=this});r.c=function(){u=u+1|0;if(e)e()};return(n={effect:r,subscribe:function(n){e=n;return function(){u=u+1|0;e=void 0;i()}},getSnapshot:function(){return u},f:function(){$()}})[k]=function(){$()},n}();var r=n.current;a(r.subscribe,r.getSnapshot,r.getSnapshot);w(r);return r}Object.defineProperties(n.prototype,{$$typeof:{configurable:!0,value:S},type:{configurable:!0,value:function(n){var r=n.data,e=M();try{return r.value}finally{e.f()}}},props:{configurable:!0,get:function(){return{data:this}}},ref:{configurable:!0,value:null}});function M(){if(v)return B;else return I()}function useSignal(n){return o(function(){return r(n)},h)}function useComputed(n){var r=f(n);r.current=n;return o(function(){return e(function(){return r.current()})},h)}function useSignalEffect(n){var r=f(n);r.current=n;c(function(){return t(function(){return r.current()})},h)}export{I as _useSignalsImplementation,g as installAutoSignalTracking,useComputed,useSignal,useSignalEffect,M as useSignals,x as wrapJsx};//# sourceMappingURL=runtime.module.js.map |
@@ -9,3 +9,3 @@ import { | ||
import jsxRuntimeDev from "react/jsx-dev-runtime"; | ||
import { EffectStore, useSignals, wrapJsx } from "./index"; | ||
import { EffectStore, wrapJsx, _useSignalsImplementation } from "./index"; | ||
@@ -150,2 +150,4 @@ export interface ReactDispatcher { | ||
export let isAutoSignalTrackingInstalled = false; | ||
let store: EffectStore | null = null; | ||
@@ -156,2 +158,4 @@ let lock = false; | ||
function installCurrentDispatcherHook() { | ||
isAutoSignalTrackingInstalled = true; | ||
Object.defineProperty(ReactInternals.ReactCurrentDispatcher, "current", { | ||
@@ -177,3 +181,3 @@ get() { | ||
lock = true; | ||
store = useSignals(); | ||
store = _useSignalsImplementation(); | ||
lock = false; | ||
@@ -333,3 +337,3 @@ } else if ( | ||
currentDispatcherType & BrowserClientDispatcherType && | ||
nextDispatcherType & ContextOnlyDispatcherType | ||
nextDispatcherType & ContextOnlyDispatcherType | ||
); | ||
@@ -336,0 +340,0 @@ } |
@@ -1,4 +0,11 @@ | ||
import { signal, computed, effect, Signal } from "@preact/signals-core"; | ||
import { | ||
signal, | ||
computed, | ||
effect, | ||
Signal, | ||
ReadonlySignal, | ||
} from "@preact/signals-core"; | ||
import { useRef, useMemo, useEffect } from "react"; | ||
import { useSyncExternalStore } from "use-sync-external-store/shim/index.js"; | ||
import { isAutoSignalTrackingInstalled } from "./auto"; | ||
@@ -9,2 +16,3 @@ export { installAutoSignalTracking } from "./auto"; | ||
const ReactElemType = Symbol.for("react.element"); // https://github.com/facebook/react/blob/346c7d4c43a0717302d446da9e7423a8e28d8996/packages/shared/ReactSymbols.js#L15 | ||
const noop = () => {}; | ||
@@ -28,3 +36,4 @@ export function wrapJsx<T>(jsx: T): T { | ||
const symDispose: unique symbol = (Symbol as any).dispose || Symbol.for("Symbol.dispose"); | ||
const symDispose: unique symbol = | ||
(Symbol as any).dispose || Symbol.for("Symbol.dispose"); | ||
@@ -113,6 +122,29 @@ interface Effect { | ||
clearCurrentStore(); | ||
} | ||
}, | ||
}; | ||
} | ||
function createEmptyEffectStore(): EffectStore { | ||
return { | ||
effect: { | ||
_sources: undefined, | ||
_callback() {}, | ||
_start() { | ||
return noop; | ||
}, | ||
_dispose() {}, | ||
}, | ||
subscribe() { | ||
return noop; | ||
}, | ||
getSnapshot() { | ||
return 0; | ||
}, | ||
f() {}, | ||
[symDispose]() {}, | ||
}; | ||
} | ||
const emptyEffectStore = createEmptyEffectStore(); | ||
let finalCleanup: Promise<void> | undefined; | ||
@@ -125,3 +157,3 @@ const _queueMicroTask = Promise.prototype.then.bind(Promise.resolve()); | ||
*/ | ||
export function useSignals(): EffectStore { | ||
export function _useSignalsImplementation(): EffectStore { | ||
clearCurrentStore(); | ||
@@ -151,3 +183,8 @@ if (!finalCleanup) { | ||
function SignalValue({ data }: { data: Signal }) { | ||
return data.value; | ||
const store = useSignals(); | ||
try { | ||
return data.value; | ||
} finally { | ||
store.f(); | ||
} | ||
} | ||
@@ -168,7 +205,12 @@ | ||
export function useSignal<T>(value: T) { | ||
export function useSignals(): EffectStore { | ||
if (isAutoSignalTrackingInstalled) return emptyEffectStore; | ||
return _useSignalsImplementation(); | ||
} | ||
export function useSignal<T>(value: T): Signal<T> { | ||
return useMemo(() => signal<T>(value), Empty); | ||
} | ||
export function useComputed<T>(compute: () => T) { | ||
export function useComputed<T>(compute: () => T): ReadonlySignal<T> { | ||
const $compute = useRef(compute); | ||
@@ -179,3 +221,3 @@ $compute.current = compute; | ||
export function useSignalEffect(cb: () => void | (() => void)) { | ||
export function useSignalEffect(cb: () => void | (() => void)): void { | ||
const callback = useRef(cb); | ||
@@ -182,0 +224,0 @@ callback.current = cb; |
@@ -11,4 +11,8 @@ import { | ||
import type { ReactElement } from "react"; | ||
import { useSignal, useComputed, useSignalEffect } from "../runtime"; | ||
import { installAutoSignalTracking } from "../runtime/src/auto"; | ||
import { | ||
useSignal, | ||
useComputed, | ||
useSignalEffect, | ||
installAutoSignalTracking, | ||
} from "../runtime/src/index"; // TODO: This duplicates runtime code between main and sub runtime packages | ||
@@ -15,0 +19,0 @@ export { |
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
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
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
296774
27
720
1