foxact 0.2.13 → 0.2.14

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "foxact",
3
- "version": "0.2.13",
3
+ "version": "0.2.14",
4
4
  "description": "React Hooks/Utils done right. For browser, SSR, and React Server Components.",
5
5
  "sideEffects": false,
6
6
  "files": [
package/sizes.json CHANGED
@@ -1 +1 @@
1
- {"total":{"raw":8437,"gzip":5449,"br":0},"exports":{"context-state":{"raw":371,"gzip":240,"br":204},"create-context-state":{"raw":146,"gzip":116,"br":102},"noop":{"raw":32,"gzip":52,"br":36},"request-idle-callback":{"raw":407,"gzip":231,"br":180},"typescript-happy-forward-ref":{"raw":118,"gzip":102,"br":87},"use":{"raw":279,"gzip":175,"br":151},"use-array":{"raw":329,"gzip":242,"br":201},"use-clipboard":{"raw":1071,"gzip":614,"br":527},"use-composition-input":{"raw":420,"gzip":262,"br":230},"use-debounced-state":{"raw":380,"gzip":275,"br":231},"use-debounced-value":{"raw":370,"gzip":263,"br":214},"use-error-boundary":{"raw":172,"gzip":157,"br":148},"use-intersection":{"raw":1214,"gzip":652,"br":592},"use-isomorphic-layout-effect":{"raw":177,"gzip":143,"br":120},"use-map":{"raw":348,"gzip":243,"br":210},"use-react-router-enable-concurrent-navigation":{"raw":790,"gzip":377,"br":310},"use-react-router-is-match":{"raw":502,"gzip":337,"br":284},"use-retimer":{"raw":197,"gzip":165,"br":125},"use-set":{"raw":349,"gzip":242,"br":203},"use-uncontrolled":{"raw":304,"gzip":236,"br":201},"use-stable-handler-only-when-you-know-what-you-are-doing-or-you-will-be-fired":{"raw":461,"gzip":325,"br":256}}}
1
+ {"total":{"raw":8657,"gzip":5557,"br":0},"exports":{"create-context-state":{"raw":146,"gzip":116,"br":102},"context-state":{"raw":371,"gzip":240,"br":204},"typescript-happy-forward-ref":{"raw":118,"gzip":102,"br":87},"use":{"raw":279,"gzip":175,"br":151},"noop":{"raw":32,"gzip":52,"br":36},"request-idle-callback":{"raw":407,"gzip":231,"br":180},"use-debounced-state":{"raw":380,"gzip":275,"br":231},"use-clipboard":{"raw":1071,"gzip":614,"br":527},"use-array":{"raw":329,"gzip":242,"br":201},"use-error-boundary":{"raw":172,"gzip":157,"br":148},"use-intersection":{"raw":1214,"gzip":652,"br":592},"use-composition-input":{"raw":420,"gzip":262,"br":230},"use-map":{"raw":348,"gzip":243,"br":210},"use-isomorphic-layout-effect":{"raw":177,"gzip":143,"br":120},"use-retimer":{"raw":197,"gzip":165,"br":125},"use-set":{"raw":349,"gzip":242,"br":203},"use-react-router-is-match":{"raw":562,"gzip":369,"br":309},"use-debounced-value":{"raw":370,"gzip":263,"br":214},"use-uncontrolled":{"raw":304,"gzip":236,"br":201},"use-stable-handler-only-when-you-know-what-you-are-doing-or-you-will-be-fired":{"raw":461,"gzip":325,"br":256},"use-react-router-enable-concurrent-navigation":{"raw":950,"gzip":453,"br":373}}}
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- "use strict";require("client-only");var r=require("react"),t=require("react-router-dom");const e=()=>{let{navigator:e}=r.useContext(t.UNSAFE_NavigationContext);r.useEffect(()=>{let t=e.go.bind(e),n=e.push.bind(e),a=e.replace.bind(e);return e.go=function(){for(var n=arguments.length,a=Array(n),o=0;o<n;o++)a[o]=arguments[o];return r.startTransition(()=>t.apply(e,a))},e.push=function(){for(var t=arguments.length,a=Array(t),o=0;o<t;o++)a[o]=arguments[o];return r.startTransition(()=>n.apply(e,a))},e.replace=function(){for(var t=arguments.length,n=Array(t),o=0;o<t;o++)n[o]=arguments[o];return r.startTransition(()=>a.apply(e,n))},()=>{e.go=t,e.push=n,e.replace=a}},[e])};exports.ReactRouterConcurrentNavigationProvider=r=>{let{children:t}=r;return e(),t},exports.useReactRouterEnableConcurrentNavigation=e;
2
+ "use strict";require("client-only");var r=require("react"),e=require("react-router-dom");const t=()=>{let{navigator:t}=r.useContext(e.UNSAFE_NavigationContext);if(!t)throw TypeError("[foxact] useReactRouterEnableConcurrentNavigation must be used under <RouterProvider /> or a Router component (e.g. <BrowserRouter />)");r.useEffect(()=>{let e=t.go.bind(t),n=t.push.bind(t),o=t.replace.bind(t);return t.go=function(){for(var n=arguments.length,o=Array(n),a=0;a<n;a++)o[a]=arguments[a];return r.startTransition(()=>e.apply(t,o))},t.push=function(){for(var e=arguments.length,o=Array(e),a=0;a<e;a++)o[a]=arguments[a];return r.startTransition(()=>n.apply(t,o))},t.replace=function(){for(var e=arguments.length,n=Array(e),a=0;a<e;a++)n[a]=arguments[a];return r.startTransition(()=>o.apply(t,n))},()=>{t.go=e,t.push=n,t.replace=o}},[t])};exports.ReactRouterConcurrentNavigationProvider=r=>{let{children:e}=r;return t(),e},exports.useReactRouterEnableConcurrentNavigation=t;
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- "use strict";require("client-only");var r=require("react"),t=require("react-router-dom");const e=()=>{let{navigator:e}=r.useContext(t.UNSAFE_NavigationContext);r.useEffect(()=>{let t=e.go.bind(e),n=e.push.bind(e),a=e.replace.bind(e);return e.go=function(){for(var n=arguments.length,a=Array(n),o=0;o<n;o++)a[o]=arguments[o];return r.startTransition(()=>t.apply(e,a))},e.push=function(){for(var t=arguments.length,a=Array(t),o=0;o<t;o++)a[o]=arguments[o];return r.startTransition(()=>n.apply(e,a))},e.replace=function(){for(var t=arguments.length,n=Array(t),o=0;o<t;o++)n[o]=arguments[o];return r.startTransition(()=>a.apply(e,n))},()=>{e.go=t,e.push=n,e.replace=a}},[e])};exports.ReactRouterConcurrentNavigationProvider=r=>{let{children:t}=r;return e(),t},exports.useReactRouterEnableConcurrentNavigation=e;
2
+ "use strict";require("client-only");var r=require("react"),e=require("react-router-dom");const t=()=>{let{navigator:t}=r.useContext(e.UNSAFE_NavigationContext);if(!t)throw TypeError("[foxact] useReactRouterEnableConcurrentNavigation must be used under <RouterProvider /> or a Router component (e.g. <BrowserRouter />)");r.useEffect(()=>{let e=t.go.bind(t),n=t.push.bind(t),o=t.replace.bind(t);return t.go=function(){for(var n=arguments.length,o=Array(n),a=0;a<n;a++)o[a]=arguments[a];return r.startTransition(()=>e.apply(t,o))},t.push=function(){for(var e=arguments.length,o=Array(e),a=0;a<e;a++)o[a]=arguments[a];return r.startTransition(()=>n.apply(t,o))},t.replace=function(){for(var e=arguments.length,n=Array(e),a=0;a<e;a++)n[a]=arguments[a];return r.startTransition(()=>o.apply(t,n))},()=>{t.go=e,t.push=n,t.replace=o}},[t])};exports.ReactRouterConcurrentNavigationProvider=r=>{let{children:e}=r;return t(),e},exports.useReactRouterEnableConcurrentNavigation=t;
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- import"client-only";import{useContext as r,useEffect as e,startTransition as t}from"react";import{UNSAFE_NavigationContext as n}from"react-router-dom";let o=()=>{let{navigator:o}=r(n);e(()=>{let r=o.go.bind(o),e=o.push.bind(o),n=o.replace.bind(o);return o.go=function(){for(var e=arguments.length,n=Array(e),a=0;a<e;a++)n[a]=arguments[a];return t(()=>r.apply(o,n))},o.push=function(){for(var r=arguments.length,n=Array(r),a=0;a<r;a++)n[a]=arguments[a];return t(()=>e.apply(o,n))},o.replace=function(){for(var r=arguments.length,e=Array(r),a=0;a<r;a++)e[a]=arguments[a];return t(()=>n.apply(o,e))},()=>{o.go=r,o.push=e,o.replace=n}},[o])},a=r=>{let{children:e}=r;return o(),e};export{a as ReactRouterConcurrentNavigationProvider,o as useReactRouterEnableConcurrentNavigation};
2
+ import"client-only";import{useContext as r,useEffect as e,startTransition as t}from"react";import{UNSAFE_NavigationContext as o}from"react-router-dom";let n=()=>{let{navigator:n}=r(o);if(!n)throw TypeError("[foxact] useReactRouterEnableConcurrentNavigation must be used under <RouterProvider /> or a Router component (e.g. <BrowserRouter />)");e(()=>{let r=n.go.bind(n),e=n.push.bind(n),o=n.replace.bind(n);return n.go=function(){for(var e=arguments.length,o=Array(e),a=0;a<e;a++)o[a]=arguments[a];return t(()=>r.apply(n,o))},n.push=function(){for(var r=arguments.length,o=Array(r),a=0;a<r;a++)o[a]=arguments[a];return t(()=>e.apply(n,o))},n.replace=function(){for(var r=arguments.length,e=Array(r),a=0;a<r;a++)e[a]=arguments[a];return t(()=>o.apply(n,e))},()=>{n.go=r,n.push=e,n.replace=o}},[n])},a=r=>{let{children:e}=r;return n(),e};export{a as ReactRouterConcurrentNavigationProvider,n as useReactRouterEnableConcurrentNavigation};
@@ -1 +1 @@
1
- "use strict";require("client-only");var e=require("react"),t=require("react-router-dom");exports.useReactRouterIsMatch=(r,a)=>{let{relative:o,caseSensitive:s=!1,end:n=!1}=a,{pathname:u}=t.useLocation(),{navigator:{encodeLocation:i}}=e.useContext(t.UNSAFE_NavigationContext),c=t.useResolvedPath(r,{relative:o});return e.useMemo(()=>{let e=u,t=i?i(c).pathname:c.pathname;return s||(e=e.toLowerCase(),t=t.toLowerCase()),e===t||!n&&e.startsWith(t)&&"/"===e.charAt(t.length)},[i,c,u,s,n])};
1
+ "use strict";require("client-only");var e=require("react"),t=require("react-router-dom");exports.useReactRouterIsMatch=function(r){let{relative:a,caseSensitive:o=!1,end:n=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{pathname:s}=t.useLocation(),{navigator:{encodeLocation:u}}=e.useContext(t.UNSAFE_NavigationContext),i=t.useResolvedPath(r,{relative:a});return e.useMemo(()=>{let e=s,t=u?u(i).pathname:i.pathname;return o||(e=e.toLowerCase(),t=t.toLowerCase()),e===t||!n&&e.startsWith(t)&&"/"===e.charAt(t.length)},[u,i,s,o,n])};
@@ -6,6 +6,6 @@ interface UseReactRouterIsMatchOption {
6
6
  end?: boolean;
7
7
  }
8
8
  /** @see https://foxact.skk.moe/use-react-router-is-match */
9
- declare const useReactRouterIsMatch: (to: To, { relative, caseSensitive, end }: UseReactRouterIsMatchOption) => boolean;
9
+ declare const useReactRouterIsMatch: (to: To, { relative, caseSensitive, end }?: UseReactRouterIsMatchOption) => boolean;
10
10
 
11
11
  export { useReactRouterIsMatch };
@@ -1 +1 @@
1
- "use strict";require("client-only");var e=require("react"),t=require("react-router-dom");exports.useReactRouterIsMatch=(r,a)=>{let{relative:o,caseSensitive:s=!1,end:n=!1}=a,{pathname:u}=t.useLocation(),{navigator:{encodeLocation:i}}=e.useContext(t.UNSAFE_NavigationContext),c=t.useResolvedPath(r,{relative:o});return e.useMemo(()=>{let e=u,t=i?i(c).pathname:c.pathname;return s||(e=e.toLowerCase(),t=t.toLowerCase()),e===t||!n&&e.startsWith(t)&&"/"===e.charAt(t.length)},[i,c,u,s,n])};
1
+ "use strict";require("client-only");var e=require("react"),t=require("react-router-dom");exports.useReactRouterIsMatch=function(r){let{relative:a,caseSensitive:o=!1,end:n=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{pathname:s}=t.useLocation(),{navigator:{encodeLocation:u}}=e.useContext(t.UNSAFE_NavigationContext),i=t.useResolvedPath(r,{relative:a});return e.useMemo(()=>{let e=s,t=u?u(i).pathname:i.pathname;return o||(e=e.toLowerCase(),t=t.toLowerCase()),e===t||!n&&e.startsWith(t)&&"/"===e.charAt(t.length)},[u,i,s,o,n])};
@@ -1 +1 @@
1
- import"client-only";import{useContext as t,useMemo as e}from"react";import{useLocation as r,UNSAFE_NavigationContext as a,useResolvedPath as o}from"react-router-dom";let m=(m,n)=>{let{relative:h,caseSensitive:p=!1,end:c=!1}=n,{pathname:i}=r(),{navigator:{encodeLocation:l}}=t(a),s=o(m,{relative:h});return e(()=>{let t=i,e=l?l(s).pathname:s.pathname;return p||(t=t.toLowerCase(),e=e.toLowerCase()),t===e||!c&&t.startsWith(e)&&"/"===t.charAt(e.length)},[l,s,i,p,c])};export{m as useReactRouterIsMatch};
1
+ import"client-only";import{useContext as t,useMemo as e}from"react";import{useLocation as r,UNSAFE_NavigationContext as o,useResolvedPath as a}from"react-router-dom";let n=function(n){let{relative:m,caseSensitive:h=!1,end:i=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{pathname:c}=r(),{navigator:{encodeLocation:l}}=t(o),p=a(n,{relative:m});return e(()=>{let t=c,e=l?l(p).pathname:p.pathname;return h||(t=t.toLowerCase(),e=e.toLowerCase()),t===e||!i&&t.startsWith(e)&&"/"===t.charAt(e.length)},[l,p,c,h,i])};export{n as useReactRouterIsMatch};