foxact 0.2.39 → 0.2.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/create-fixed-array/index.cjs +1 -1
- package/create-fixed-array/index.d.ts +3 -3
- package/create-fixed-array/index.js +1 -1
- package/create-fixed-array/index.mjs +1 -1
- package/create-local-storage-state/index.cjs +1 -0
- package/create-local-storage-state/index.d.ts +24 -0
- package/create-local-storage-state/index.js +1 -0
- package/create-local-storage-state/index.mjs +1 -0
- package/create-session-storage-state/index.cjs +1 -0
- package/create-session-storage-state/index.d.ts +25 -0
- package/create-session-storage-state/index.js +1 -0
- package/create-session-storage-state/index.mjs +1 -0
- package/create-storage-hook/index.cjs +1 -1
- package/create-storage-hook/index.d.ts +4 -3
- package/create-storage-hook/index.js +1 -1
- package/create-storage-hook/index.mjs +1 -1
- package/create-storage-state-factory/index.cjs +1 -0
- package/create-storage-state-factory/index.d.ts +11 -0
- package/create-storage-state-factory/index.js +1 -0
- package/create-storage-state-factory/index.mjs +1 -0
- package/no-ssr/index.cjs +1 -1
- package/no-ssr/index.d.ts +2 -2
- package/no-ssr/index.js +1 -1
- package/no-ssr/index.mjs +1 -1
- package/nullthrow/index.d.ts +1 -1
- package/nullthrow/index.mjs +1 -1
- package/package.json +148 -121
- package/rem/index.cjs +1 -1
- package/rem/index.js +1 -1
- package/rem/index.mjs +1 -1
- package/sizes.json +1 -1
- package/use-abortable-effect/index.cjs +1 -1
- package/use-abortable-effect/index.d.ts +2 -2
- package/use-abortable-effect/index.js +1 -1
- package/use-abortable-effect/index.mjs +1 -1
- package/use-array/index.d.ts +1 -1
- package/use-array/index.mjs +1 -1
- package/use-composition-input/index.cjs +1 -1
- package/use-composition-input/index.d.ts +1 -1
- package/use-composition-input/index.js +1 -1
- package/use-composition-input/index.mjs +1 -1
- package/use-error-boundary/index.cjs +1 -1
- package/use-error-boundary/index.d.ts +1 -1
- package/use-error-boundary/index.js +1 -1
- package/use-error-boundary/index.mjs +1 -1
- package/use-is-client/index.cjs +1 -1
- package/use-is-client/index.d.ts +1 -1
- package/use-is-client/index.js +1 -1
- package/use-is-client/index.mjs +1 -1
- package/use-local-storage/index.d.ts +3 -3
- package/use-map/index.d.ts +1 -1
- package/use-map/index.mjs +1 -1
- package/use-media-query/index.cjs +1 -1
- package/use-media-query/index.d.ts +1 -1
- package/use-media-query/index.js +1 -1
- package/use-media-query/index.mjs +1 -1
- package/use-next-link/index.cjs +1 -1
- package/use-next-link/index.d.ts +3 -1
- package/use-next-link/index.js +1 -1
- package/use-next-link/index.mjs +1 -1
- package/use-next-pathname/index.d.ts +1 -1
- package/use-next-pathname/index.mjs +1 -1
- package/use-react-router-enable-concurrent-navigation/index.cjs +1 -1
- package/use-react-router-enable-concurrent-navigation/index.d.ts +2 -2
- package/use-react-router-enable-concurrent-navigation/index.js +1 -1
- package/use-react-router-enable-concurrent-navigation/index.mjs +1 -1
- package/use-react-router-is-match/index.d.ts +1 -1
- package/use-react-router-is-match/index.mjs +1 -1
- package/use-retimer/index.cjs +1 -1
- package/use-retimer/index.d.ts +1 -1
- package/use-retimer/index.js +1 -1
- package/use-retimer/index.mjs +1 -1
- package/use-session-storage/index.d.ts +3 -3
- package/use-set/index.d.ts +1 -1
- package/use-set/index.mjs +1 -1
- package/use-singleton/index.cjs +1 -1
- package/use-singleton/index.d.ts +1 -1
- package/use-singleton/index.js +1 -1
- package/use-singleton/index.mjs +1 -1
- package/use-url-hash-state/index.cjs +1 -1
- package/use-url-hash-state/index.js +1 -1
- package/use-url-hash-state/index.mjs +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=new Map
|
|
1
|
+
"use strict";const e=new Map;function t(e){const t=Array.from(Array(e).keys());return"development"===process.env.NODE_ENV&&Object.freeze(t),t}function r(r){if(e.has(r))return e.get(r);const n=t(r);return e.set(r,n),n}const n=new Map;function o(e){let r,o;return n.has(e)&&(o=(r=n.get(e)).deref()),o||(r=new WeakRef(o=t(e)),n.set(e,r)),o}const s="function"==typeof WeakRef?o:r;exports.createFixedArray=s,exports.createFixedArrayWithGC=o,exports.createFixedArrayWithoutGC=r;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
declare
|
|
2
|
-
declare
|
|
3
|
-
declare const createFixedArray:
|
|
1
|
+
declare function createFixedArrayWithoutGC(length: number): readonly number[];
|
|
2
|
+
declare function createFixedArrayWithGC(length: number): readonly number[];
|
|
3
|
+
declare const createFixedArray: typeof createFixedArrayWithGC;
|
|
4
4
|
|
|
5
5
|
export { createFixedArray, createFixedArrayWithGC, createFixedArrayWithoutGC };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=new Map
|
|
1
|
+
"use strict";const e=new Map;function t(e){const t=Array.from(Array(e).keys());return"development"===process.env.NODE_ENV&&Object.freeze(t),t}function r(r){if(e.has(r))return e.get(r);const n=t(r);return e.set(r,n),n}const n=new Map;function o(e){let r,o;return n.has(e)&&(o=(r=n.get(e)).deref()),o||(r=new WeakRef(o=t(e)),n.set(e,r)),o}const s="function"==typeof WeakRef?o:r;exports.createFixedArray=s,exports.createFixedArrayWithGC=o,exports.createFixedArrayWithoutGC=r;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=new Map
|
|
1
|
+
const e=new Map;function t(e){const t=Array.from(Array(e).keys());return"development"===process.env.NODE_ENV&&Object.freeze(t),t}function r(r){if(e.has(r))return e.get(r);const n=t(r);return e.set(r,n),n}const n=new Map;function o(e){let r,o;return n.has(e)&&(o=(r=n.get(e)).deref()),o||(r=new WeakRef(o=t(e)),n.set(e,r)),o}const a="function"==typeof WeakRef?o:r;export{a as createFixedArray,o as createFixedArrayWithGC,r as createFixedArrayWithoutGC};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";require("client-only");var e=require("../create-storage-state-factory/index.cjs");require("../create-storage-hook/index.cjs"),require("react"),require("../noop/index.cjs"),require("../use-isomorphic-layout-effect/index.cjs"),require("../no-ssr/index.cjs");const r=e.createStorageStateFactory("localStorage");exports.createLocalStorageState=r;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { StateHook, ValueHook, SetValueHook } from '../create-storage-state-factory/index.js';
|
|
2
|
+
import { NotUndefined, UseStorageRawOption, UseStorageParserOption } from '../create-storage-hook/index.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* @see https://foxact.skk.moe/create-local-storage-state
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* const [useOpenState, useOpen] = createLocalStorageState(
|
|
10
|
+
* 'open', // storage key
|
|
11
|
+
* false, // server default value
|
|
12
|
+
* { raw: false } // options
|
|
13
|
+
* );
|
|
14
|
+
*
|
|
15
|
+
* const [open, setOpen] = useOpenState();
|
|
16
|
+
* const open = useOpen();
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
declare const createLocalStorageState: {
|
|
20
|
+
<T>(key: string, serverValue: NotUndefined<T>, options?: UseStorageRawOption | UseStorageParserOption<T>): readonly [StateHook<T>, ValueHook<T>, SetValueHook<T | null>];
|
|
21
|
+
<T>(key: string, serverValue?: undefined, options?: UseStorageRawOption | UseStorageParserOption<T>): readonly [StateHook<T | null>, ValueHook<T | null>, SetValueHook<T | null>];
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
export { createLocalStorageState };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";require("client-only");var e=require("../create-storage-state-factory/index.js");require("../create-storage-hook/index.js"),require("react"),require("../noop/index.js"),require("../use-isomorphic-layout-effect/index.js"),require("../no-ssr/index.js");const r=e.createStorageStateFactory("localStorage");exports.createLocalStorageState=r;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"client-only";import{createStorageStateFactory as o}from"../create-storage-state-factory/index.mjs";import"../create-storage-hook/index.mjs";import"react";import"../noop/index.mjs";import"../use-isomorphic-layout-effect/index.mjs";import"../no-ssr/index.mjs";const t=o("localStorage");export{t as createLocalStorageState};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";require("client-only");var e=require("../create-storage-state-factory/index.cjs");require("../create-storage-hook/index.cjs"),require("react"),require("../noop/index.cjs"),require("../use-isomorphic-layout-effect/index.cjs"),require("../no-ssr/index.cjs");const r=e.createStorageStateFactory("sessionStorage");exports.createSessionStorageState=r;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { StateHook, ValueHook, SetValueHook } from '../create-storage-state-factory/index.js';
|
|
2
|
+
import { NotUndefined, UseStorageRawOption, UseStorageParserOption } from '../create-storage-hook/index.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* @see https://foxact.skk.moe/create-session-storage-state
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```ts
|
|
9
|
+
* ```ts
|
|
10
|
+
* const [useOpenState, useOpen] = createSessionStorageState(
|
|
11
|
+
* 'open', // storage key
|
|
12
|
+
* false, // server default value
|
|
13
|
+
* { raw: false } // options
|
|
14
|
+
* );
|
|
15
|
+
*
|
|
16
|
+
* const [open, setOpen] = useOpenState();
|
|
17
|
+
* const open = useOpen();
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
declare const createSessionStorageState: {
|
|
21
|
+
<T>(key: string, serverValue: NotUndefined<T>, options?: UseStorageRawOption | UseStorageParserOption<T>): readonly [StateHook<T>, ValueHook<T>, SetValueHook<T | null>];
|
|
22
|
+
<T>(key: string, serverValue?: undefined, options?: UseStorageRawOption | UseStorageParserOption<T>): readonly [StateHook<T | null>, ValueHook<T | null>, SetValueHook<T | null>];
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export { createSessionStorageState };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";require("client-only");var e=require("../create-storage-state-factory/index.js");require("../create-storage-hook/index.js"),require("react"),require("../noop/index.js"),require("../use-isomorphic-layout-effect/index.js"),require("../no-ssr/index.js");const r=e.createStorageStateFactory("sessionStorage");exports.createSessionStorageState=r;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"client-only";import{createStorageStateFactory as o}from"../create-storage-state-factory/index.mjs";import"../create-storage-hook/index.mjs";import"react";import"../noop/index.mjs";import"../use-isomorphic-layout-effect/index.mjs";import"../no-ssr/index.mjs";const e=o("sessionStorage");export{e as createSessionStorageState};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";require("client-only");var e=require("react"),o=require("../noop/index.cjs"),t=require("../use-isomorphic-layout-effect/index.cjs"),n=require("../no-ssr/index.cjs");const r=e=>"function"==typeof e,a=e=>e
|
|
1
|
+
"use strict";require("client-only");var e=require("react"),o=require("../noop/index.cjs"),t=require("../use-isomorphic-layout-effect/index.cjs"),n=require("../no-ssr/index.cjs");const r=e=>"function"==typeof e,a=e=>e;function i(){throw n.noSSRError("useLocalStorage cannot be used on the server without a serverValue")}exports.createStorage=function(n){const l="localStorage"===n?"foxact-use-local-storage":"foxact-use-session-storage",c="localStorage"===n?"foxact/use-local-storage":"foxact/use-session-storage",s="undefined"==typeof window?o.noop:e=>{window.dispatchEvent(new CustomEvent(l,{detail:e}))},u="undefined"==typeof window?o.noop:(e,o)=>{try{window[n].setItem(e,o)}catch(e){console.warn("[".concat(c,"] Failed to set value to ").concat(n,", it might be blocked"))}finally{s(e)}},d="undefined"==typeof window?o.noop:e=>{try{window[n].removeItem(e)}catch(e){console.warn("[".concat(c,"] Failed to remove value from ").concat(n,", it might be blocked"))}finally{s(e)}},w=e=>{if("undefined"==typeof window)return null;try{return window[n].getItem(e)}catch(e){return console.warn("[".concat(c,"] Failed to get value from ").concat(n,", it might be blocked")),null}};return{useStorage:function(n,c){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{raw:!1,serializer:JSON.stringify,deserializer:JSON.parse};const f=e.useCallback(e=>{if("undefined"==typeof window)return o.noop;const t=o=>{"key"in o&&o.key!==n||e()},r=o=>{o.detail===n&&e()};return window.addEventListener("storage",t),window.addEventListener(l,r),()=>{window.removeEventListener("storage",t),window.removeEventListener(l,r)}},[n]),v=s.raw?a:s.serializer,y=s.raw?a:s.deserializer,g=void 0===c?i:()=>v(c),m=e.useSyncExternalStore(f,()=>w(n),g),p=e.useMemo(()=>null===m?null:y(m),[m,y]),h=e.useCallback(e=>{try{const o=r(e)?e(null!=p?p:null):e;null===o?d(n):u(n,v(o))}catch(e){console.warn(e)}},[n,v,p]);return t.useLayoutEffect(()=>{null===w(n)&&void 0!==c&&u(n,v(c))},[y,n,v,c]),[null===p?void 0===c?null:c:p,h]},useSetStorage:(o,t)=>e.useCallback(e=>{try{null===e?d(o):u(o,t(e))}catch(e){console.warn(e)}},[o,t])}};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
type StorageType = 'localStorage' | 'sessionStorage';
|
|
2
2
|
type NotUndefined<T> = T extends undefined ? never : T;
|
|
3
|
+
type StateHookTuple<T> = readonly [T, React.Dispatch<React.SetStateAction<T | null>>];
|
|
3
4
|
type CustomStorageEvent = CustomEvent<string>;
|
|
4
5
|
declare global {
|
|
5
6
|
interface WindowEventMap {
|
|
@@ -19,10 +20,10 @@ interface UseStorageParserOption<T> {
|
|
|
19
20
|
}
|
|
20
21
|
declare function createStorage(type: StorageType): {
|
|
21
22
|
useStorage: {
|
|
22
|
-
<T>(key: string, serverValue: NotUndefined<T>, options?: UseStorageRawOption | UseStorageParserOption<T>):
|
|
23
|
-
<T>(key: string, serverValue?: undefined, options?: UseStorageRawOption | UseStorageParserOption<T>):
|
|
23
|
+
<T>(key: string, serverValue: NotUndefined<T>, options?: UseStorageRawOption | UseStorageParserOption<T>): StateHookTuple<T>;
|
|
24
|
+
<T>(key: string, serverValue?: undefined, options?: UseStorageRawOption | UseStorageParserOption<T>): StateHookTuple<T | null>;
|
|
24
25
|
};
|
|
25
26
|
useSetStorage: <T>(key: string, serializer: Serializer<T>) => (v: T | null) => void;
|
|
26
27
|
};
|
|
27
28
|
|
|
28
|
-
export { type Deserializer, type Serializer, type UseStorageParserOption, type UseStorageRawOption, createStorage };
|
|
29
|
+
export { type Deserializer, type NotUndefined, type Serializer, type StateHookTuple, type StorageType, type UseStorageParserOption, type UseStorageRawOption, createStorage };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";require("client-only");var e=require("react"),o=require("../noop/index.js"),t=require("../use-isomorphic-layout-effect/index.js"),n=require("../no-ssr/index.js");const r=e=>"function"==typeof e,a=e=>e
|
|
1
|
+
"use strict";require("client-only");var e=require("react"),o=require("../noop/index.js"),t=require("../use-isomorphic-layout-effect/index.js"),n=require("../no-ssr/index.js");const r=e=>"function"==typeof e,a=e=>e;function i(){throw n.noSSRError("useLocalStorage cannot be used on the server without a serverValue")}exports.createStorage=function(n){const l="localStorage"===n?"foxact-use-local-storage":"foxact-use-session-storage",s="localStorage"===n?"foxact/use-local-storage":"foxact/use-session-storage",c="undefined"==typeof window?o.noop:e=>{window.dispatchEvent(new CustomEvent(l,{detail:e}))},u="undefined"==typeof window?o.noop:(e,o)=>{try{window[n].setItem(e,o)}catch(e){console.warn("[".concat(s,"] Failed to set value to ").concat(n,", it might be blocked"))}finally{c(e)}},d="undefined"==typeof window?o.noop:e=>{try{window[n].removeItem(e)}catch(e){console.warn("[".concat(s,"] Failed to remove value from ").concat(n,", it might be blocked"))}finally{c(e)}},w=e=>{if("undefined"==typeof window)return null;try{return window[n].getItem(e)}catch(e){return console.warn("[".concat(s,"] Failed to get value from ").concat(n,", it might be blocked")),null}};return{useStorage:function(n,s){let c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{raw:!1,serializer:JSON.stringify,deserializer:JSON.parse};const f=e.useCallback(e=>{if("undefined"==typeof window)return o.noop;const t=o=>{"key"in o&&o.key!==n||e()},r=o=>{o.detail===n&&e()};return window.addEventListener("storage",t),window.addEventListener(l,r),()=>{window.removeEventListener("storage",t),window.removeEventListener(l,r)}},[n]),v=c.raw?a:c.serializer,y=c.raw?a:c.deserializer,g=void 0===s?i:()=>v(s),m=e.useSyncExternalStore(f,()=>w(n),g),p=e.useMemo(()=>null===m?null:y(m),[m,y]),h=e.useCallback(e=>{try{const o=r(e)?e(null!=p?p:null):e;null===o?d(n):u(n,v(o))}catch(e){console.warn(e)}},[n,v,p]);return t.useLayoutEffect(()=>{null===w(n)&&void 0!==s&&u(n,v(s))},[y,n,v,s]),[null===p?void 0===s?null:s:p,h]},useSetStorage:(o,t)=>e.useCallback(e=>{try{null===e?d(o):u(o,t(e))}catch(e){console.warn(e)}},[o,t])}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"client-only";import{useCallback as e,useSyncExternalStore as o,useMemo as t}from"react";import{noop as n}from"../noop/index.mjs";import{useLayoutEffect as r}from"../use-isomorphic-layout-effect/index.mjs";import{noSSRError as i}from"../no-ssr/index.mjs";const a=e=>"function"==typeof e,l=e=>e
|
|
1
|
+
import"client-only";import{useCallback as e,useSyncExternalStore as o,useMemo as t}from"react";import{noop as n}from"../noop/index.mjs";import{useLayoutEffect as r}from"../use-isomorphic-layout-effect/index.mjs";import{noSSRError as i}from"../no-ssr/index.mjs";const a=e=>"function"==typeof e,l=e=>e;function c(){throw i("useLocalStorage cannot be used on the server without a serverValue")}function s(i){const s="localStorage"===i?"foxact-use-local-storage":"foxact-use-session-storage",d="localStorage"===i?"foxact/use-local-storage":"foxact/use-session-storage",u="undefined"==typeof window?n:e=>{window.dispatchEvent(new CustomEvent(s,{detail:e}))},w="undefined"==typeof window?n:(e,o)=>{try{window[i].setItem(e,o)}catch(e){console.warn("[".concat(d,"] Failed to set value to ").concat(i,", it might be blocked"))}finally{u(e)}},f="undefined"==typeof window?n:e=>{try{window[i].removeItem(e)}catch(e){console.warn("[".concat(d,"] Failed to remove value from ").concat(i,", it might be blocked"))}finally{u(e)}},m=e=>{if("undefined"==typeof window)return null;try{return window[i].getItem(e)}catch(e){return console.warn("[".concat(d,"] Failed to get value from ").concat(i,", it might be blocked")),null}};return{useStorage:function(i,d){let u=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{raw:!1,serializer:JSON.stringify,deserializer:JSON.parse};const g=e(e=>{if("undefined"==typeof window)return n;const o=o=>{"key"in o&&o.key!==i||e()},t=o=>{o.detail===i&&e()};return window.addEventListener("storage",o),window.addEventListener(s,t),()=>{window.removeEventListener("storage",o),window.removeEventListener(s,t)}},[i]),v=u.raw?l:u.serializer,y=u.raw?l:u.deserializer,p=o(g,()=>m(i),void 0===d?c:()=>v(d)),h=t(()=>null===p?null:y(p),[p,y]),S=e(e=>{try{const o=a(e)?e(null!=h?h:null):e;null===o?f(i):w(i,v(o))}catch(e){console.warn(e)}},[i,v,h]);return r(()=>{null===m(i)&&void 0!==d&&w(i,v(d))},[y,i,v,d]),[null===h?void 0===d?null:d:h,S]},useSetStorage:(o,t)=>e(e=>{try{null===e?f(o):w(o,t(e))}catch(e){console.warn(e)}},[o,t])}}export{s as createStorage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var e=require("../create-storage-hook/index.cjs");require("client-only"),require("react"),require("../noop/index.cjs"),require("../use-isomorphic-layout-effect/index.cjs"),require("../no-ssr/index.cjs");const r=e=>e;exports.createStorageStateFactory=function(t){return function(i,o){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{raw:!1,serializer:JSON.stringify,deserializer:JSON.parse};const{useStorage:a,useSetStorage:n}=e.createStorage(t);return[()=>a(i,o,s),()=>a(i,o,s)[0],()=>n(i,s.raw?r:s.serializer)]}};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { StateHookTuple, StorageType, NotUndefined, UseStorageRawOption, UseStorageParserOption } from '../create-storage-hook/index.js';
|
|
2
|
+
|
|
3
|
+
type ValueHook<T> = () => T;
|
|
4
|
+
type SetValueHook<T> = () => (value: T) => void;
|
|
5
|
+
type StateHook<T> = () => StateHookTuple<T>;
|
|
6
|
+
declare function createStorageStateFactory(type: StorageType): {
|
|
7
|
+
<T>(key: string, serverValue: NotUndefined<T>, options?: UseStorageRawOption | UseStorageParserOption<T>): readonly [StateHook<T>, ValueHook<T>, SetValueHook<T | null>];
|
|
8
|
+
<T>(key: string, serverValue?: undefined, options?: UseStorageRawOption | UseStorageParserOption<T>): readonly [StateHook<T | null>, ValueHook<T | null>, SetValueHook<T | null>];
|
|
9
|
+
};
|
|
10
|
+
|
|
11
|
+
export { type SetValueHook, type StateHook, type ValueHook, createStorageStateFactory };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var e=require("../create-storage-hook/index.js");require("client-only"),require("react"),require("../noop/index.js"),require("../use-isomorphic-layout-effect/index.js"),require("../no-ssr/index.js");const r=e=>e;exports.createStorageStateFactory=function(t){return function(i,o){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{raw:!1,serializer:JSON.stringify,deserializer:JSON.parse};const{useStorage:a,useSetStorage:n}=e.createStorage(t);return[()=>a(i,o,s),()=>a(i,o,s)[0],()=>n(i,s.raw?r:s.serializer)]}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{createStorage as e}from"../create-storage-hook/index.mjs";import"client-only";import"react";import"../noop/index.mjs";import"../use-isomorphic-layout-effect/index.mjs";import"../no-ssr/index.mjs";const r=e=>e;function t(t){return function(o,i){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{raw:!1,serializer:JSON.stringify,deserializer:JSON.parse};const{useStorage:s,useSetStorage:a}=e(t);return[()=>s(o,i,n),()=>s(o,i,n)[0],()=>a(o,n.raw?r:n.serializer)]}}export{t as createStorageStateFactory};
|
package/no-ssr/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const r=Object.getOwnPropertyDescriptor(Error,"stackTraceLimit"),t=(null==r?void 0:r.writable)&&"number"==typeof r.value
|
|
1
|
+
"use strict";const r=Object.getOwnPropertyDescriptor(Error,"stackTraceLimit"),t=(null==r?void 0:r.writable)&&"number"==typeof r.value;function e(r){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"BAILOUT_TO_CLIENT_SIDE_RENDERING";const o=Error.stackTraceLimit;t&&(Error.stackTraceLimit=0);const i=Error(r);return t&&(Error.stackTraceLimit=o),i.digest=e,i.recoverableError="NO_SSR",i}exports.noSSR=function(r){if("undefined"==typeof window)throw e(r)},exports.noSSRError=e;
|
package/no-ssr/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/** @private */
|
|
2
|
-
declare
|
|
2
|
+
declare function noSSRError(errorMessage?: string, nextjsDigest?: string): Error;
|
|
3
3
|
/** @see https://foxact.skk.moe/no-ssr */
|
|
4
|
-
declare
|
|
4
|
+
declare function noSSR(extraMessage?: string): void;
|
|
5
5
|
|
|
6
6
|
export { noSSR, noSSRError };
|
package/no-ssr/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const r=Object.getOwnPropertyDescriptor(Error,"stackTraceLimit"),t=(null==r?void 0:r.writable)&&"number"==typeof r.value
|
|
1
|
+
"use strict";const r=Object.getOwnPropertyDescriptor(Error,"stackTraceLimit"),t=(null==r?void 0:r.writable)&&"number"==typeof r.value;function e(r){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"BAILOUT_TO_CLIENT_SIDE_RENDERING";const o=Error.stackTraceLimit;t&&(Error.stackTraceLimit=0);const i=Error(r);return t&&(Error.stackTraceLimit=o),i.digest=e,i.recoverableError="NO_SSR",i}exports.noSSR=function(r){if("undefined"==typeof window)throw e(r)},exports.noSSRError=e;
|
package/no-ssr/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const r=Object.getOwnPropertyDescriptor(Error,"stackTraceLimit"),t=(null==r?void 0:r.writable)&&"number"==typeof r.value
|
|
1
|
+
const r=Object.getOwnPropertyDescriptor(Error,"stackTraceLimit"),t=(null==r?void 0:r.writable)&&"number"==typeof r.value;function o(r){let o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"BAILOUT_TO_CLIENT_SIDE_RENDERING";const e=Error.stackTraceLimit;t&&(Error.stackTraceLimit=0);const i=Error(r);return t&&(Error.stackTraceLimit=e),i.digest=o,i.recoverableError="NO_SSR",i}function e(r){if("undefined"==typeof window)throw o(r)}export{e as noSSR,o as noSSRError};
|
package/nullthrow/index.d.ts
CHANGED
package/nullthrow/index.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function n(n){let r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:'[foxact/invariant] "value" is null or undefined';if(null==n)throw TypeError(r);return n}export{n as nullthrow};
|