{
  "name": "foxact",
  "version": "0.3.8",
  "description": "React Hooks/Utils done right. For browser, SSR, and React Server Components.",
  "homepage": "https://foxact.skk.moe",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/SukkaW/foxact.git"
  },
  "bugs": {
    "url": "https://github.com/SukkaW/foxact/issues"
  },
  "files": [
    "**"
  ],
  "sideEffects": false,
  "keywords": [
    "React",
    "Hooks"
  ],
  "author": "Sukka <https://skk.moe>",
  "license": "MIT",
  "dependencies": {
    "client-only": "^0.0.1",
    "event-target-bus": "^1.0.0",
    "server-only": "^0.0.1"
  },
  "peerDependencies": {
    "react": "*",
    "react-dom": "*"
  },
  "peerDependenciesMeta": {
    "react": {
      "optional": true
    },
    "react-dom": {
      "optional": true
    }
  },
  "typeVersions": {
    ">=4.8": {
      "*": [
        "*"
      ]
    },
    "*": {
      "*": [
        "ts_version_4.8_and_above_is_required.d.ts"
      ]
    }
  },
  "exports": {
    "./package.json": "./package.json",
    "./sizes.json": "./sizes.json",
    "./breadcrumbs": {
      "types": "./breadcrumbs/index.d.ts",
      "import": {
        "types": "./breadcrumbs/index.d.ts",
        "default": "./breadcrumbs/index.mjs"
      },
      "require": "./breadcrumbs/index.cjs",
      "default": "./breadcrumbs/index.cjs"
    },
    "./compose-context-provider": {
      "types": "./compose-context-provider/index.d.ts",
      "import": {
        "types": "./compose-context-provider/index.d.ts",
        "default": "./compose-context-provider/index.mjs"
      },
      "require": "./compose-context-provider/index.cjs",
      "default": "./compose-context-provider/index.cjs"
    },
    "./create-context-reducer": {
      "types": "./create-context-reducer/index.d.ts",
      "import": {
        "types": "./create-context-reducer/index.d.ts",
        "default": "./create-context-reducer/index.mjs"
      },
      "require": "./create-context-reducer/index.cjs",
      "default": "./create-context-reducer/index.cjs"
    },
    "./context-reducer": {
      "types": "./context-reducer/index.d.ts",
      "import": {
        "types": "./context-reducer/index.d.ts",
        "default": "./context-reducer/index.mjs"
      },
      "require": "./context-reducer/index.cjs",
      "default": "./context-reducer/index.cjs"
    },
    "./create-context-state": {
      "types": "./create-context-state/index.d.ts",
      "import": {
        "types": "./create-context-state/index.d.ts",
        "default": "./create-context-state/index.mjs"
      },
      "require": "./create-context-state/index.cjs",
      "default": "./create-context-state/index.cjs"
    },
    "./context-state": {
      "types": "./context-state/index.d.ts",
      "import": {
        "types": "./context-state/index.d.ts",
        "default": "./context-state/index.mjs"
      },
      "require": "./context-state/index.cjs",
      "default": "./context-state/index.cjs"
    },
    "./create-fixed-array": {
      "types": "./create-fixed-array/index.d.ts",
      "import": {
        "types": "./create-fixed-array/index.d.ts",
        "default": "./create-fixed-array/index.mjs"
      },
      "require": "./create-fixed-array/index.cjs",
      "default": "./create-fixed-array/index.cjs"
    },
    "./create-local-storage-state": {
      "types": "./create-local-storage-state/index.d.ts",
      "import": {
        "types": "./create-local-storage-state/index.d.ts",
        "default": "./create-local-storage-state/index.mjs"
      },
      "require": "./create-local-storage-state/index.cjs",
      "default": "./create-local-storage-state/index.cjs"
    },
    "./create-magic-portal": {
      "types": "./create-magic-portal/index.d.ts",
      "import": {
        "types": "./create-magic-portal/index.d.ts",
        "default": "./create-magic-portal/index.mjs"
      },
      "require": "./create-magic-portal/index.cjs",
      "default": "./create-magic-portal/index.cjs"
    },
    "./create-breadcrumbs": {
      "types": "./create-breadcrumbs/index.d.ts",
      "import": {
        "types": "./create-breadcrumbs/index.d.ts",
        "default": "./create-breadcrumbs/index.mjs"
      },
      "require": "./create-breadcrumbs/index.cjs",
      "default": "./create-breadcrumbs/index.cjs"
    },
    "./create-session-storage-state": {
      "types": "./create-session-storage-state/index.d.ts",
      "import": {
        "types": "./create-session-storage-state/index.d.ts",
        "default": "./create-session-storage-state/index.mjs"
      },
      "require": "./create-session-storage-state/index.cjs",
      "default": "./create-session-storage-state/index.cjs"
    },
    "./create-stackless-error": {
      "types": "./create-stackless-error/index.d.ts",
      "import": {
        "types": "./create-stackless-error/index.d.ts",
        "default": "./create-stackless-error/index.mjs"
      },
      "require": "./create-stackless-error/index.cjs",
      "default": "./create-stackless-error/index.cjs"
    },
    "./create-storage-hook": {
      "types": "./create-storage-hook/index.d.ts",
      "import": {
        "types": "./create-storage-hook/index.d.ts",
        "default": "./create-storage-hook/index.mjs"
      },
      "require": "./create-storage-hook/index.cjs",
      "default": "./create-storage-hook/index.cjs"
    },
    "./create-storage-state-factory": {
      "types": "./create-storage-state-factory/index.d.ts",
      "import": {
        "types": "./create-storage-state-factory/index.d.ts",
        "default": "./create-storage-state-factory/index.mjs"
      },
      "require": "./create-storage-state-factory/index.cjs",
      "default": "./create-storage-state-factory/index.cjs"
    },
    "./current-year": {
      "types": "./current-year/index.d.ts",
      "import": {
        "types": "./current-year/index.d.ts",
        "default": "./current-year/index.mjs"
      },
      "require": "./current-year/index.cjs",
      "default": "./current-year/index.cjs"
    },
    "./fetch-jsonp": {
      "types": "./fetch-jsonp/index.d.ts",
      "import": {
        "types": "./fetch-jsonp/index.d.ts",
        "default": "./fetch-jsonp/index.mjs"
      },
      "require": "./fetch-jsonp/index.cjs",
      "default": "./fetch-jsonp/index.cjs"
    },
    "./invariant": {
      "types": "./invariant/index.d.ts",
      "import": {
        "types": "./invariant/index.d.ts",
        "default": "./invariant/index.mjs"
      },
      "require": "./invariant/index.cjs",
      "default": "./invariant/index.cjs"
    },
    "./magic-portal": {
      "types": "./magic-portal/index.d.ts",
      "import": {
        "types": "./magic-portal/index.d.ts",
        "default": "./magic-portal/index.mjs"
      },
      "require": "./magic-portal/index.cjs",
      "default": "./magic-portal/index.cjs"
    },
    "./is-safari": {
      "types": "./is-safari/index.d.ts",
      "import": {
        "types": "./is-safari/index.d.ts",
        "default": "./is-safari/index.mjs"
      },
      "require": "./is-safari/index.cjs",
      "default": "./is-safari/index.cjs"
    },
    "./merge-props": {
      "types": "./merge-props/index.d.ts",
      "import": {
        "types": "./merge-props/index.d.ts",
        "default": "./merge-props/index.mjs"
      },
      "require": "./merge-props/index.cjs",
      "default": "./merge-props/index.cjs"
    },
    "./merge-refs": {
      "types": "./merge-refs/index.d.ts",
      "import": {
        "types": "./merge-refs/index.d.ts",
        "default": "./merge-refs/index.mjs"
      },
      "require": "./merge-refs/index.cjs",
      "default": "./merge-refs/index.cjs"
    },
    "./noop": {
      "types": "./noop/index.d.ts",
      "import": {
        "types": "./noop/index.d.ts",
        "default": "./noop/index.mjs"
      },
      "require": "./noop/index.cjs",
      "default": "./noop/index.cjs"
    },
    "./no-ssr": {
      "types": "./no-ssr/index.d.ts",
      "import": {
        "types": "./no-ssr/index.d.ts",
        "default": "./no-ssr/index.mjs"
      },
      "require": "./no-ssr/index.cjs",
      "default": "./no-ssr/index.cjs"
    },
    "./nullthrow": {
      "types": "./nullthrow/index.d.ts",
      "import": {
        "types": "./nullthrow/index.d.ts",
        "default": "./nullthrow/index.mjs"
      },
      "require": "./nullthrow/index.cjs",
      "default": "./nullthrow/index.cjs"
    },
    "./noop-component": {
      "types": "./noop-component/index.d.ts",
      "import": {
        "types": "./noop-component/index.d.ts",
        "default": "./noop-component/index.mjs"
      },
      "require": "./noop-component/index.cjs",
      "default": "./noop-component/index.cjs"
    },
    "./open-new-tab": {
      "types": "./open-new-tab/index.d.ts",
      "import": {
        "types": "./open-new-tab/index.d.ts",
        "default": "./open-new-tab/index.mjs"
      },
      "require": "./open-new-tab/index.cjs",
      "default": "./open-new-tab/index.cjs"
    },
    "./polymorphic": {
      "types": "./polymorphic/index.d.ts",
      "import": {
        "types": "./polymorphic/index.d.ts",
        "default": "./polymorphic/index.mjs"
      },
      "require": "./polymorphic/index.cjs",
      "default": "./polymorphic/index.cjs"
    },
    "./rem": {
      "types": "./rem/index.d.ts",
      "import": {
        "types": "./rem/index.d.ts",
        "default": "./rem/index.mjs"
      },
      "require": "./rem/index.cjs",
      "default": "./rem/index.cjs"
    },
    "./request-idle-callback": {
      "types": "./request-idle-callback/index.d.ts",
      "import": {
        "types": "./request-idle-callback/index.d.ts",
        "default": "./request-idle-callback/index.mjs"
      },
      "require": "./request-idle-callback/index.cjs",
      "default": "./request-idle-callback/index.cjs"
    },
    "./types": {
      "types": "./types/index.d.ts",
      "import": {
        "types": "./types/index.d.ts",
        "default": "./types/index.mjs"
      },
      "require": "./types/index.cjs",
      "default": "./types/index.cjs"
    },
    "./use": {
      "types": "./use/index.d.ts",
      "import": {
        "types": "./use/index.d.ts",
        "default": "./use/index.mjs"
      },
      "require": "./use/index.cjs",
      "default": "./use/index.cjs"
    },
    "./typescript-happy-forward-ref": {
      "types": "./typescript-happy-forward-ref/index.d.ts",
      "import": {
        "types": "./typescript-happy-forward-ref/index.d.ts",
        "default": "./typescript-happy-forward-ref/index.mjs"
      },
      "require": "./typescript-happy-forward-ref/index.cjs",
      "default": "./typescript-happy-forward-ref/index.cjs"
    },
    "./use-abortable-effect": {
      "types": "./use-abortable-effect/index.d.ts",
      "import": {
        "types": "./use-abortable-effect/index.d.ts",
        "default": "./use-abortable-effect/index.mjs"
      },
      "require": "./use-abortable-effect/index.cjs",
      "default": "./use-abortable-effect/index.cjs"
    },
    "./use-clipboard": {
      "types": "./use-clipboard/index.d.ts",
      "import": {
        "types": "./use-clipboard/index.d.ts",
        "default": "./use-clipboard/index.mjs"
      },
      "require": "./use-clipboard/index.cjs",
      "default": "./use-clipboard/index.cjs"
    },
    "./use-array": {
      "types": "./use-array/index.d.ts",
      "import": {
        "types": "./use-array/index.d.ts",
        "default": "./use-array/index.mjs"
      },
      "require": "./use-array/index.cjs",
      "default": "./use-array/index.cjs"
    },
    "./use-component-will-receive-update": {
      "types": "./use-component-will-receive-update/index.d.ts",
      "import": {
        "types": "./use-component-will-receive-update/index.d.ts",
        "default": "./use-component-will-receive-update/index.mjs"
      },
      "require": "./use-component-will-receive-update/index.cjs",
      "default": "./use-component-will-receive-update/index.cjs"
    },
    "./use-composition-input": {
      "types": "./use-composition-input/index.d.ts",
      "import": {
        "types": "./use-composition-input/index.d.ts",
        "default": "./use-composition-input/index.mjs"
      },
      "require": "./use-composition-input/index.cjs",
      "default": "./use-composition-input/index.cjs"
    },
    "./use-debounced-state": {
      "types": "./use-debounced-state/index.d.ts",
      "import": {
        "types": "./use-debounced-state/index.d.ts",
        "default": "./use-debounced-state/index.mjs"
      },
      "require": "./use-debounced-state/index.cjs",
      "default": "./use-debounced-state/index.cjs"
    },
    "./use-debounced-value": {
      "types": "./use-debounced-value/index.d.ts",
      "import": {
        "types": "./use-debounced-value/index.d.ts",
        "default": "./use-debounced-value/index.mjs"
      },
      "require": "./use-debounced-value/index.cjs",
      "default": "./use-debounced-value/index.cjs"
    },
    "./use-error-boundary": {
      "types": "./use-error-boundary/index.d.ts",
      "import": {
        "types": "./use-error-boundary/index.d.ts",
        "default": "./use-error-boundary/index.mjs"
      },
      "require": "./use-error-boundary/index.cjs",
      "default": "./use-error-boundary/index.cjs"
    },
    "./use-fast-click": {
      "types": "./use-fast-click/index.d.ts",
      "import": {
        "types": "./use-fast-click/index.d.ts",
        "default": "./use-fast-click/index.mjs"
      },
      "require": "./use-fast-click/index.cjs",
      "default": "./use-fast-click/index.cjs"
    },
    "./use-is-client": {
      "types": "./use-is-client/index.d.ts",
      "import": {
        "types": "./use-is-client/index.d.ts",
        "default": "./use-is-client/index.mjs"
      },
      "require": "./use-is-client/index.cjs",
      "default": "./use-is-client/index.cjs"
    },
    "./use-intersection": {
      "types": "./use-intersection/index.d.ts",
      "import": {
        "types": "./use-intersection/index.d.ts",
        "default": "./use-intersection/index.mjs"
      },
      "require": "./use-intersection/index.cjs",
      "default": "./use-intersection/index.cjs"
    },
    "./use-is-online": {
      "types": "./use-is-online/index.d.ts",
      "import": {
        "types": "./use-is-online/index.d.ts",
        "default": "./use-is-online/index.mjs"
      },
      "require": "./use-is-online/index.cjs",
      "default": "./use-is-online/index.cjs"
    },
    "./use-isomorphic-layout-effect": {
      "types": "./use-isomorphic-layout-effect/index.d.ts",
      "import": {
        "types": "./use-isomorphic-layout-effect/index.d.ts",
        "default": "./use-isomorphic-layout-effect/index.mjs"
      },
      "require": "./use-isomorphic-layout-effect/index.cjs",
      "default": "./use-isomorphic-layout-effect/index.cjs"
    },
    "./use-local-storage": {
      "types": "./use-local-storage/index.d.ts",
      "import": {
        "types": "./use-local-storage/index.d.ts",
        "default": "./use-local-storage/index.mjs"
      },
      "require": "./use-local-storage/index.cjs",
      "default": "./use-local-storage/index.cjs"
    },
    "./use-media-query": {
      "types": "./use-media-query/index.d.ts",
      "import": {
        "types": "./use-media-query/index.d.ts",
        "default": "./use-media-query/index.mjs"
      },
      "require": "./use-media-query/index.cjs",
      "default": "./use-media-query/index.cjs"
    },
    "./use-map": {
      "types": "./use-map/index.d.ts",
      "import": {
        "types": "./use-map/index.d.ts",
        "default": "./use-map/index.mjs"
      },
      "require": "./use-map/index.cjs",
      "default": "./use-map/index.cjs"
    },
    "./use-page-visibility": {
      "types": "./use-page-visibility/index.d.ts",
      "import": {
        "types": "./use-page-visibility/index.d.ts",
        "default": "./use-page-visibility/index.mjs"
      },
      "require": "./use-page-visibility/index.cjs",
      "default": "./use-page-visibility/index.cjs"
    },
    "./use-readonly-search-params": {
      "types": "./use-readonly-search-params/index.d.ts",
      "import": {
        "types": "./use-readonly-search-params/index.d.ts",
        "default": "./use-readonly-search-params/index.mjs"
      },
      "require": "./use-readonly-search-params/index.cjs",
      "default": "./use-readonly-search-params/index.cjs"
    },
    "./use-resizing": {
      "types": "./use-resizing/index.d.ts",
      "import": {
        "types": "./use-resizing/index.d.ts",
        "default": "./use-resizing/index.mjs"
      },
      "require": "./use-resizing/index.cjs",
      "default": "./use-resizing/index.cjs"
    },
    "./use-retimer": {
      "types": "./use-retimer/index.d.ts",
      "import": {
        "types": "./use-retimer/index.d.ts",
        "default": "./use-retimer/index.mjs"
      },
      "require": "./use-retimer/index.cjs",
      "default": "./use-retimer/index.cjs"
    },
    "./use-session-storage": {
      "types": "./use-session-storage/index.d.ts",
      "import": {
        "types": "./use-session-storage/index.d.ts",
        "default": "./use-session-storage/index.mjs"
      },
      "require": "./use-session-storage/index.cjs",
      "default": "./use-session-storage/index.cjs"
    },
    "./use-set": {
      "types": "./use-set/index.d.ts",
      "import": {
        "types": "./use-set/index.d.ts",
        "default": "./use-set/index.mjs"
      },
      "require": "./use-set/index.cjs",
      "default": "./use-set/index.cjs"
    },
    "./use-singleton": {
      "types": "./use-singleton/index.d.ts",
      "import": {
        "types": "./use-singleton/index.d.ts",
        "default": "./use-singleton/index.mjs"
      },
      "require": "./use-singleton/index.cjs",
      "default": "./use-singleton/index.cjs"
    },
    "./use-stable-handler-only-when-you-know-what-you-are-doing-or-you-will-be-fired": {
      "types": "./use-stable-handler-only-when-you-know-what-you-are-doing-or-you-will-be-fired/index.d.ts",
      "import": {
        "types": "./use-stable-handler-only-when-you-know-what-you-are-doing-or-you-will-be-fired/index.d.ts",
        "default": "./use-stable-handler-only-when-you-know-what-you-are-doing-or-you-will-be-fired/index.mjs"
      },
      "require": "./use-stable-handler-only-when-you-know-what-you-are-doing-or-you-will-be-fired/index.cjs",
      "default": "./use-stable-handler-only-when-you-know-what-you-are-doing-or-you-will-be-fired/index.cjs"
    },
    "./use-state-with-deps": {
      "types": "./use-state-with-deps/index.d.ts",
      "import": {
        "types": "./use-state-with-deps/index.d.ts",
        "default": "./use-state-with-deps/index.mjs"
      },
      "require": "./use-state-with-deps/index.cjs",
      "default": "./use-state-with-deps/index.cjs"
    },
    "./use-typescript-happy-callback": {
      "types": "./use-typescript-happy-callback/index.d.ts",
      "import": {
        "types": "./use-typescript-happy-callback/index.d.ts",
        "default": "./use-typescript-happy-callback/index.mjs"
      },
      "require": "./use-typescript-happy-callback/index.cjs",
      "default": "./use-typescript-happy-callback/index.cjs"
    },
    "./use-uncontrolled": {
      "types": "./use-uncontrolled/index.d.ts",
      "import": {
        "types": "./use-uncontrolled/index.d.ts",
        "default": "./use-uncontrolled/index.mjs"
      },
      "require": "./use-uncontrolled/index.cjs",
      "default": "./use-uncontrolled/index.cjs"
    },
    "./use-url-hash-state": {
      "types": "./use-url-hash-state/index.d.ts",
      "import": {
        "types": "./use-url-hash-state/index.d.ts",
        "default": "./use-url-hash-state/index.mjs"
      },
      "require": "./use-url-hash-state/index.cjs",
      "default": "./use-url-hash-state/index.cjs"
    }
  }
}