๐Ÿšจ Active Supply Chain Attack:node-ipc Package Compromised.Learn More โ†’
Socket
Book a DemoSign in
Socket

@suspensive/react-query

Package Overview
Dependencies
Maintainers
6
Versions
294
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@suspensive/react-query - npm Package Compare versions

Comparing version
3.20.0
to
3.20.1
+202
dist/bin/deprecationWarning-DyFRkdDl.cjs
//#region \0rolldown/runtime.js
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
key = keys[i];
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
get: ((k) => from[k]).bind(null, key),
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
});
}
return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
value: mod,
enumerable: true
}) : target, mod));
//#endregion
let node_fs = require("node:fs");
node_fs = __toESM(node_fs);
let node_path = require("node:path");
node_path = __toESM(node_path);
//#region src/bin/utils/logger.ts
const LOG_PREFIX = "[@suspensive/react-query]";
const logger = {
log: (message) => console.log(LOG_PREFIX, message),
warn: (message) => console.warn(LOG_PREFIX, message),
error: (message) => console.error(LOG_PREFIX, message)
};
//#endregion
//#region src/bin/utils/package.ts
function loadModule(name) {
try {
return require(name);
} catch {
throw new Error(`${name} is not found.`);
}
}
function getPackageJson() {
return loadModule("@suspensive/react-query/package.json");
}
function getTanStackReactQueryPackageJson() {
return loadModule("@tanstack/react-query/package.json");
}
function getSuspensiveReactQueryPackageJson(targetVersion) {
switch (targetVersion) {
case "4":
case "5": return loadModule(`@suspensive/react-query-${targetVersion}/package.json`);
default: throw new Error(`@suspensive/react-query-${targetVersion} is not found.`);
}
}
function getIndexFileContent(...paths) {
const basePath = node_path.default.resolve(...paths, "dist").replace(/src/, "");
try {
return node_fs.default.readFileSync(node_path.default.join(basePath, "index.mjs"), "utf-8");
} catch {
throw new Error(`no such file or directory, open '${paths}'`);
}
}
function getTargetSuspensiveReactQueryVersion() {
const indexFileContent = getIndexFileContent(__dirname, "../../");
return (/* @__PURE__ */ new RegExp(/@suspensive\/react-query-(\d+)/)).exec(indexFileContent)?.[1];
}
function getTargetSuspensiveReactQueryAPIs() {
const modules = getIndexFileContent(__dirname, "../../").matchAll(/from ['"](@suspensive\/react-query-\d+)['"]/g);
const results = [];
for (const [, moduleName] of modules) {
const module = loadModule(moduleName);
results.push(...Object.keys(module).reverse());
}
return results;
}
function getTanStackReactQueryAPIs(majorVersionOfTanStackQuery) {
switch (majorVersionOfTanStackQuery) {
case "5": return [
"useSuspenseQuery",
"useSuspenseQueries",
"useSuspenseInfiniteQuery",
"usePrefetchQuery",
"usePrefetchInfiniteQuery",
"queryOptions",
"infiniteQueryOptions"
];
case "4": return ["-"];
default: throw new Error("@tanstack/react-query version is required");
}
}
//#endregion
//#region src/bin/utils/copy.ts
const dir = (0, node_path.resolve)(__dirname, "..");
function copy(version) {
const files = node_fs.default.readdirSync(dir);
if (files.length === 0) return false;
for (const file of files) if (file.includes(`v${version}`)) {
const src = (0, node_path.join)(dir, file);
const dest = (0, node_path.join)(dir, file.replace(`v${version}`, "index"));
const content = node_fs.default.readFileSync(src, "utf-8");
try {
node_fs.default.unlinkSync(dest);
} catch {}
node_fs.default.writeFileSync(dest, content, "utf-8");
}
return true;
}
//#endregion
//#region src/bin/utils/switchVersion.ts
function switchVersion(version) {
if (copy(version)) logger.log(`switched to version v${version}`);
else logger.error("not found version files.");
}
//#endregion
//#region src/bin/utils/deprecationWarning.ts
function showDeprecationWarning() {
const tanstackPackageJson = getTanStackReactQueryPackageJson();
const suspensivePackageJson = getPackageJson();
const major = tanstackPackageJson.version.split(".")[0];
logger.warn(`
Installing @suspensive/react-query directly is deprecated.
This package will be removed in the next major version. Only @suspensive/react-query-4 and @suspensive/react-query-5 will remain.
Please use npm aliases to install the version-specific package instead:
npm install @suspensive/react-query@npm:@suspensive/react-query-${major} @tanstack/react-query@${major}
This keeps your import path as "@suspensive/react-query" while installing the correct package.
Your package.json will look like:
{
"dependencies": {
"@suspensive/react-query": "npm:@suspensive/react-query-${major}@^${suspensivePackageJson.version}"
}
}
When upgrading @tanstack/react-query, just change the alias in package.json โ€” no code changes required.
See: https://suspensive.org/docs/react-query/installation
`);
}
//#endregion
Object.defineProperty(exports, "__toESM", {
enumerable: true,
get: function() {
return __toESM;
}
});
Object.defineProperty(exports, "getPackageJson", {
enumerable: true,
get: function() {
return getPackageJson;
}
});
Object.defineProperty(exports, "getSuspensiveReactQueryPackageJson", {
enumerable: true,
get: function() {
return getSuspensiveReactQueryPackageJson;
}
});
Object.defineProperty(exports, "getTanStackReactQueryAPIs", {
enumerable: true,
get: function() {
return getTanStackReactQueryAPIs;
}
});
Object.defineProperty(exports, "getTanStackReactQueryPackageJson", {
enumerable: true,
get: function() {
return getTanStackReactQueryPackageJson;
}
});
Object.defineProperty(exports, "getTargetSuspensiveReactQueryAPIs", {
enumerable: true,
get: function() {
return getTargetSuspensiveReactQueryAPIs;
}
});
Object.defineProperty(exports, "getTargetSuspensiveReactQueryVersion", {
enumerable: true,
get: function() {
return getTargetSuspensiveReactQueryVersion;
}
});
Object.defineProperty(exports, "logger", {
enumerable: true,
get: function() {
return logger;
}
});
Object.defineProperty(exports, "showDeprecationWarning", {
enumerable: true,
get: function() {
return showDeprecationWarning;
}
});
Object.defineProperty(exports, "switchVersion", {
enumerable: true,
get: function() {
return switchVersion;
}
});
import { logger } from './logger'
import { getPackageJson, getTanStackReactQueryPackageJson } from './package'
export function showDeprecationWarning() {
const tanstackPackageJson = getTanStackReactQueryPackageJson()
const suspensivePackageJson = getPackageJson()
const major = tanstackPackageJson.version.split('.')[0]
logger.warn(`
Installing @suspensive/react-query directly is deprecated.
This package will be removed in the next major version. Only @suspensive/react-query-4 and @suspensive/react-query-5 will remain.
Please use npm aliases to install the version-specific package instead:
npm install @suspensive/react-query@npm:@suspensive/react-query-${major} @tanstack/react-query@${major}
This keeps your import path as "@suspensive/react-query" while installing the correct package.
Your package.json will look like:
{
"dependencies": {
"@suspensive/react-query": "npm:@suspensive/react-query-${major}@^${suspensivePackageJson.version}"
}
}
When upgrading @tanstack/react-query, just change the alias in package.json โ€” no code changes required.
See: https://suspensive.org/docs/react-query/installation
`)
}
+20
-19
#!/usr/bin/env node
const require_switchVersion = require("./switchVersion-DgWqQlsu.cjs");
const require_deprecationWarning = require("./deprecationWarning-DyFRkdDl.cjs");
let _commander_js_extra_typings = require("@commander-js/extra-typings");
let cli_table3 = require("cli-table3");
cli_table3 = require_switchVersion.__toESM(cli_table3);
cli_table3 = require_deprecationWarning.__toESM(cli_table3);
//#region src/bin/utils/table.ts
function getStatusTable(currentTargetVersion) {
const packageJson = require_switchVersion.getPackageJson();
const tanStackReactQueryPackageJson = require_switchVersion.getTanStackReactQueryPackageJson();
const packageJson = require_deprecationWarning.getPackageJson();
const tanStackReactQueryPackageJson = require_deprecationWarning.getTanStackReactQueryPackageJson();
const tanStackReactQueryMajorVersion = tanStackReactQueryPackageJson.version.split(".")[0];
const targetSuspensiveReactQueryPackageJson = require_switchVersion.getSuspensiveReactQueryPackageJson(tanStackReactQueryMajorVersion);
const suspensiveReactQueryAPIs = require_switchVersion.getTargetSuspensiveReactQueryAPIs();
const tanStackReactQueryAPIs = require_switchVersion.getTanStackReactQueryAPIs(tanStackReactQueryMajorVersion);
const targetSuspensiveReactQueryPackageJson = require_deprecationWarning.getSuspensiveReactQueryPackageJson(tanStackReactQueryMajorVersion);
const suspensiveReactQueryAPIs = require_deprecationWarning.getTargetSuspensiveReactQueryAPIs();
const tanStackReactQueryAPIs = require_deprecationWarning.getTanStackReactQueryAPIs(tanStackReactQueryMajorVersion);
const isVersionCompatible = currentTargetVersion === tanStackReactQueryMajorVersion;

@@ -57,5 +57,5 @@ const statusSymbol = isVersionCompatible ? "๐ŸŸข" : "โŒ";

function statusAction() {
const targetSuspensiveReactQueryVersion = require_switchVersion.getTargetSuspensiveReactQueryVersion();
const targetSuspensiveReactQueryVersion = require_deprecationWarning.getTargetSuspensiveReactQueryVersion();
if (!targetSuspensiveReactQueryVersion) {
require_switchVersion.logger.error("The version is not found.");
require_deprecationWarning.logger.error("The version is not found.");
return;

@@ -66,14 +66,14 @@ }

function switchAction(version) {
if (version === "4") require_switchVersion.switchVersion(4);
else if (version === "5") require_switchVersion.switchVersion(5);
if (version === "4") require_deprecationWarning.switchVersion(4);
else if (version === "5") require_deprecationWarning.switchVersion(5);
else console.warn("[@suspensive/react-query]", `version v${version} is not supported.`);
}
function fixAction() {
const tanStackReactQueryPackageJson = require_switchVersion.getTanStackReactQueryPackageJson();
const targetSuspensiveReactQueryVersion = require_switchVersion.getTargetSuspensiveReactQueryVersion();
const tanStackReactQueryPackageJson = require_deprecationWarning.getTanStackReactQueryPackageJson();
const targetSuspensiveReactQueryVersion = require_deprecationWarning.getTargetSuspensiveReactQueryVersion();
const tanStackReactQueryMajorVersion = tanStackReactQueryPackageJson.version.split(".")[0];
if (targetSuspensiveReactQueryVersion === tanStackReactQueryMajorVersion) require_switchVersion.logger.log("The versions are compatible.");
if (targetSuspensiveReactQueryVersion === tanStackReactQueryMajorVersion) require_deprecationWarning.logger.log("The versions are compatible.");
else {
require_switchVersion.logger.log("Switching to the compatible version...");
require_switchVersion.switchVersion(Number(tanStackReactQueryMajorVersion));
require_deprecationWarning.logger.log("Switching to the compatible version...");
require_deprecationWarning.switchVersion(Number(tanStackReactQueryMajorVersion));
}

@@ -83,4 +83,4 @@ }

//#region src/bin/cli.ts
const packageJson = require_switchVersion.getPackageJson();
const program = new _commander_js_extra_typings.Command(packageJson.name).configureOutput({ writeErr: (str) => require_switchVersion.logger.error(str.replace("error: ", "")) });
const packageJson = require_deprecationWarning.getPackageJson();
const program = new _commander_js_extra_typings.Command(packageJson.name).configureOutput({ writeErr: (str) => require_deprecationWarning.logger.error(str.replace("error: ", "")) });
program.description(packageJson.description).version(packageJson.version, "-v, --version", "Displays the currently installed version of @suspensive/react-query");

@@ -92,5 +92,6 @@ program.command("status").description("Checks compatibility with the currently used version of @tanstack/react-query").action(statusAction);

program.parse(process.argv);
require_deprecationWarning.showDeprecationWarning();
} catch (error) {
if (error instanceof Error) require_switchVersion.logger.error(error.message);
if (error instanceof Error) require_deprecationWarning.logger.error(error.message);
}
//#endregion

@@ -1,15 +0,16 @@

const require_switchVersion = require("./switchVersion-DgWqQlsu.cjs");
const require_deprecationWarning = require("./deprecationWarning-DyFRkdDl.cjs");
//#region src/bin/postinstall.ts
const { version } = require_switchVersion.getTanStackReactQueryPackageJson();
switch (version.split(".")[0]) {
const tanstackPackageJson = require_deprecationWarning.getTanStackReactQueryPackageJson();
switch (tanstackPackageJson.version.split(".")[0]) {
case "4":
require_switchVersion.switchVersion(4);
require_deprecationWarning.switchVersion(4);
break;
case "5":
require_switchVersion.switchVersion(5);
require_deprecationWarning.switchVersion(5);
break;
default:
require_switchVersion.logger.error(`version v${version} is not supported.`);
require_deprecationWarning.logger.error(`version v${tanstackPackageJson.version} is not supported.`);
break;
}
require_deprecationWarning.showDeprecationWarning();
//#endregion
{
"name": "@suspensive/react-query",
"version": "3.20.0",
"version": "3.20.1",
"description": "Suspensive interfaces for @tanstack/react-query",

@@ -47,4 +47,4 @@ "keywords": [

"@commander-js/extra-typings": "^13.0.0",
"@suspensive/react-query-4": "^3.20.0",
"@suspensive/react-query-5": "^3.20.0",
"@suspensive/react-query-4": "^3.20.1",
"@suspensive/react-query-5": "^3.20.1",
"cli-table3": "^0.6.5",

@@ -51,0 +51,0 @@ "commander": "^13.0.0"

# Introduction
@suspensive/react-query provide components and hooks to use @tanstack/react-query@4's suspense option easily.
@suspensive/react-query provides components and hooks to use @tanstack/react-query's suspense option easily.
[![npm version](https://img.shields.io/npm/v/@suspensive/react-query?color=000&labelColor=000&logo=npm&label=)](https://www.npmjs.com/package/@suspensive/react-query)
[![npm](https://img.shields.io/npm/dm/@suspensive/react-query?color=000&labelColor=000)](https://www.npmjs.com/package/@suspensive/react-query)
[![npm bundle size](https://img.shields.io/bundlephobia/minzip/@suspensive/react-query?color=000&labelColor=000)](https://www.npmjs.com/package/@suspensive/react-query)
## Installation
@suspensive/react-query is available on npm.
Install the package that matches your @tanstack/react-query version. By using npm aliases, the import path remains `@suspensive/react-query` across your codebase. When upgrading your @tanstack/react-query version, you only need to change the alias in package.json โ€” no code changes required.
From version 2.2.0 onwards, it supports both v4 and v5 of @tanstack/react-query. Depending on the version of @tanstack/react-query specified in your package.json dependencies, the appropriate version of @suspensive/react-query will be used automatically.
#### @tanstack/react-query v5
To use the latest stable version, run the following command.
```shell npm2yarn
npm install @suspensive/react-query @tanstack/react-query
npm install @suspensive/react-query@npm:@suspensive/react-query-5 @tanstack/react-query@5
```
To use @tanstack/react-query v4, run the following command.
@tanstack/react-query v4 supports [lower version browsers](https://suspensive.org/docs/react-query/motivation#solution-for-the-issue-of-tanstackreact-query-v5-not-being-able-to-support-lower-version-browsers-due-to-es-private-field) compared to v5.
#### @tanstack/react-query v4
@tanstack/react-query v4 supports [lower version browsers](https://suspensive.org/docs/react-query/motivation#v5-drops-support-for-older-browsers) compared to v5.
```shell npm2yarn
npm install @suspensive/react-query @tanstack/react-query@4
npm install @suspensive/react-query@npm:@suspensive/react-query-4 @tanstack/react-query@4
```

@@ -5,2 +5,3 @@ #!/usr/bin/env node

import { fixAction, statusAction, switchAction } from './utils/commands'
import { showDeprecationWarning } from './utils/deprecationWarning'
import { logger } from './utils/logger'

@@ -43,2 +44,3 @@ import { getPackageJson } from './utils/package'

program.parse(process.argv)
showDeprecationWarning()
} catch (error) {

@@ -45,0 +47,0 @@ if (error instanceof Error) {

import { beforeEach, describe, expect, it, vi } from 'vitest'
import { getTanStackReactQueryPackageJson } from './utils/package'
import { showDeprecationWarning } from './utils/deprecationWarning'
import { getPackageJson, getTanStackReactQueryPackageJson } from './utils/package'
import { switchVersion } from './utils/switchVersion'
vi.mock('./utils/deprecationWarning')
vi.mock('./utils/package')

@@ -11,2 +13,3 @@ vi.mock('./utils/switchVersion')

const mockGetTanStackReactQueryPackageJson = vi.mocked(getTanStackReactQueryPackageJson)
const mockGetPackageJson = vi.mocked(getPackageJson)
const mockSwitchVersion = vi.mocked(switchVersion)

@@ -20,2 +23,7 @@

})
mockGetPackageJson.mockReturnValue({
name: '@suspensive/react-query',
version: '3.20.0',
description: 'Suspensive interfaces for @tanstack/react-query',
})

@@ -37,2 +45,3 @@ await import('./postinstall')

expect(mockConsoleError).not.toHaveBeenCalled()
expect(showDeprecationWarning).toHaveBeenCalledTimes(1)
})

@@ -47,2 +56,3 @@

expect(mockConsoleError).not.toHaveBeenCalled()
expect(showDeprecationWarning).toHaveBeenCalledTimes(1)
})

@@ -56,3 +66,4 @@

expect(mockConsoleError).toHaveBeenCalledWith('[@suspensive/react-query]', 'version v3.3.4 is not supported.')
expect(showDeprecationWarning).toHaveBeenCalledTimes(1)
})
})

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

import { showDeprecationWarning } from './utils/deprecationWarning'
import { logger } from './utils/logger'

@@ -5,5 +6,5 @@ import { getTanStackReactQueryPackageJson } from './utils/package'

const { version } = getTanStackReactQueryPackageJson()
const tanstackPackageJson = getTanStackReactQueryPackageJson()
const major = version.split('.')[0]
const major = tanstackPackageJson.version.split('.')[0]

@@ -18,4 +19,6 @@ switch (major) {

default:
logger.error(`version v${version} is not supported.`)
logger.error(`version v${tanstackPackageJson.version} is not supported.`)
break
}
showDeprecationWarning()

@@ -5,3 +5,4 @@ const LOG_PREFIX = '[@suspensive/react-query]'

log: (message: string) => console.log(LOG_PREFIX, message),
warn: (message: string) => console.warn(LOG_PREFIX, message),
error: (message: string) => console.error(LOG_PREFIX, message),
}
//#region \0rolldown/runtime.js
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
key = keys[i];
if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
get: ((k) => from[k]).bind(null, key),
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
});
}
return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
value: mod,
enumerable: true
}) : target, mod));
//#endregion
let node_fs = require("node:fs");
node_fs = __toESM(node_fs);
let node_path = require("node:path");
node_path = __toESM(node_path);
//#region src/bin/utils/logger.ts
const LOG_PREFIX = "[@suspensive/react-query]";
const logger = {
log: (message) => console.log(LOG_PREFIX, message),
error: (message) => console.error(LOG_PREFIX, message)
};
//#endregion
//#region src/bin/utils/package.ts
function loadModule(name) {
try {
return require(name);
} catch {
throw new Error(`${name} is not found.`);
}
}
function getPackageJson() {
return loadModule("@suspensive/react-query/package.json");
}
function getTanStackReactQueryPackageJson() {
return loadModule("@tanstack/react-query/package.json");
}
function getSuspensiveReactQueryPackageJson(targetVersion) {
switch (targetVersion) {
case "4":
case "5": return loadModule(`@suspensive/react-query-${targetVersion}/package.json`);
default: throw new Error(`@suspensive/react-query-${targetVersion} is not found.`);
}
}
function getIndexFileContent(...paths) {
const basePath = node_path.default.resolve(...paths, "dist").replace(/src/, "");
try {
return node_fs.default.readFileSync(node_path.default.join(basePath, "index.mjs"), "utf-8");
} catch {
throw new Error(`no such file or directory, open '${paths}'`);
}
}
function getTargetSuspensiveReactQueryVersion() {
const indexFileContent = getIndexFileContent(__dirname, "../../");
return (/* @__PURE__ */ new RegExp(/@suspensive\/react-query-(\d+)/)).exec(indexFileContent)?.[1];
}
function getTargetSuspensiveReactQueryAPIs() {
const modules = getIndexFileContent(__dirname, "../../").matchAll(/from ['"](@suspensive\/react-query-\d+)['"]/g);
const results = [];
for (const [, moduleName] of modules) {
const module = loadModule(moduleName);
results.push(...Object.keys(module).reverse());
}
return results;
}
function getTanStackReactQueryAPIs(majorVersionOfTanStackQuery) {
switch (majorVersionOfTanStackQuery) {
case "5": return [
"useSuspenseQuery",
"useSuspenseQueries",
"useSuspenseInfiniteQuery",
"usePrefetchQuery",
"usePrefetchInfiniteQuery",
"queryOptions",
"infiniteQueryOptions"
];
case "4": return ["-"];
default: throw new Error("@tanstack/react-query version is required");
}
}
//#endregion
//#region src/bin/utils/copy.ts
const dir = (0, node_path.resolve)(__dirname, "..");
function copy(version) {
const files = node_fs.default.readdirSync(dir);
if (files.length === 0) return false;
for (const file of files) if (file.includes(`v${version}`)) {
const src = (0, node_path.join)(dir, file);
const dest = (0, node_path.join)(dir, file.replace(`v${version}`, "index"));
const content = node_fs.default.readFileSync(src, "utf-8");
try {
node_fs.default.unlinkSync(dest);
} catch {}
node_fs.default.writeFileSync(dest, content, "utf-8");
}
return true;
}
//#endregion
//#region src/bin/utils/switchVersion.ts
function switchVersion(version) {
if (copy(version)) logger.log(`switched to version v${version}`);
else logger.error("not found version files.");
}
//#endregion
Object.defineProperty(exports, "__toESM", {
enumerable: true,
get: function() {
return __toESM;
}
});
Object.defineProperty(exports, "getPackageJson", {
enumerable: true,
get: function() {
return getPackageJson;
}
});
Object.defineProperty(exports, "getSuspensiveReactQueryPackageJson", {
enumerable: true,
get: function() {
return getSuspensiveReactQueryPackageJson;
}
});
Object.defineProperty(exports, "getTanStackReactQueryAPIs", {
enumerable: true,
get: function() {
return getTanStackReactQueryAPIs;
}
});
Object.defineProperty(exports, "getTanStackReactQueryPackageJson", {
enumerable: true,
get: function() {
return getTanStackReactQueryPackageJson;
}
});
Object.defineProperty(exports, "getTargetSuspensiveReactQueryAPIs", {
enumerable: true,
get: function() {
return getTargetSuspensiveReactQueryAPIs;
}
});
Object.defineProperty(exports, "getTargetSuspensiveReactQueryVersion", {
enumerable: true,
get: function() {
return getTargetSuspensiveReactQueryVersion;
}
});
Object.defineProperty(exports, "logger", {
enumerable: true,
get: function() {
return logger;
}
});
Object.defineProperty(exports, "switchVersion", {
enumerable: true,
get: function() {
return switchVersion;
}
});
# ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์†Œ๊ฐœ
@suspensive/react-query๋Š” @tanstack/react-query@4์˜ suspense ์˜ต์…˜์„ ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ์ปดํฌ๋„ŒํŠธ์™€ ํ›…์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
[![npm version](https://img.shields.io/npm/v/@suspensive/react-query?color=000&labelColor=000&logo=npm&label=)](https://www.npmjs.com/package/@suspensive/react-query)
[![npm](https://img.shields.io/npm/dm/@suspensive/react-query?color=000&labelColor=000)](https://www.npmjs.com/package/@suspensive/react-query)
[![npm bundle size](https://img.shields.io/bundlephobia/minzip/@suspensive/react-query?color=000&labelColor=000)](https://www.npmjs.com/package/@suspensive/react-query)
## ์„ค์น˜ํ•˜๊ธฐ
@suspensive/react-query๋Š” npm์— ์žˆ์Šต๋‹ˆ๋‹ค.
2.2.0 ๋ฒ„์ „ ์ดํ›„๋กœ๋Š” @tanstack/react-query์˜ v4์™€ v5๋ฅผ ๋ชจ๋‘ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. package.json์˜ dependencies์— @tanstack/react-query์˜ ๋ฒ„์ „์— ๋”ฐ๋ผ ์ž๋™์œผ๋กœ ์•Œ๋งž์€ @suspensive/react-query ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
@suspensive/react-query ๋Š” npm์— ์žˆ์Šต๋‹ˆ๋‹ค. ์ตœ์‹  ์•ˆ์ • ๋ฒ„์ „์„ ์„ค์น˜ํ•˜๊ธฐ ์œ„ํ•ด ์•„๋ž˜ ์ปค๋งจ๋“œ๋ฅผ ์‹คํ–‰ํ•˜์„ธ์š”
```shell npm2yarn
npm install @suspensive/react-query @tanstack/react-query
```
@tanstack/react-query v4๋Š” @tanstack/react-query v5 ๋ณด๋‹ค [๋” ๋‚ฎ์€ ๋ฒ„์ „์˜ ๋ธŒ๋ผ์šฐ์ €](https://suspensive.org/ko/docs/react-query/motivation#tanstackreact-query-v5%EC%9D%98-es-private-field%EB%A1%9C-%EC%9D%B8%ED%95%B4-%EC%A0%80%EB%B2%84%EC%A0%84%EC%9D%98-%EB%B8%8C%EB%9D%BC%EC%9A%B0%EC%A0%80%EB%A5%BC-%EC%A7%80%EC%9B%90%ED%95%98%EC%A7%80-%EB%AA%BB%ED%95%98%EB%8A%94-%EB%AC%B8%EC%A0%9C%EB%A5%BC-%ED%95%B4%EA%B2%B0%ED%95%A9%EB%8B%88%EB%8B%A4)๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
@tanstack/react-query v4๋ฅผ ์‚ฌ์šฉํ•˜๊ณ ์ž ํ•˜๋ฉด ์•„๋ž˜ ์ปค๋งจ๋“œ๋ฅผ ์‹คํ–‰ํ•˜์„ธ์š”.
```shell npm2yarn
npm install @suspensive/react-query @tanstack/react-query@4
```