@suspensive/react-query
Advanced tools
| //#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, 1); | ||
| let node_path = require("node:path"); | ||
| node_path = __toESM(node_path, 1); | ||
| //#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; | ||
| } | ||
| }); |
+2
-2
| #!/usr/bin/env node | ||
| const require_deprecationWarning = require("./deprecationWarning-DyFRkdDl.cjs"); | ||
| const require_deprecationWarning = require("./deprecationWarning-DdaW4MdW.cjs"); | ||
| let _commander_js_extra_typings = require("@commander-js/extra-typings"); | ||
| let cli_table3 = require("cli-table3"); | ||
| cli_table3 = require_deprecationWarning.__toESM(cli_table3); | ||
| cli_table3 = require_deprecationWarning.__toESM(cli_table3, 1); | ||
| //#region src/bin/utils/table.ts | ||
@@ -7,0 +7,0 @@ function getStatusTable(currentTargetVersion) { |
@@ -1,2 +0,2 @@ | ||
| const require_deprecationWarning = require("./deprecationWarning-DyFRkdDl.cjs"); | ||
| const require_deprecationWarning = require("./deprecationWarning-DdaW4MdW.cjs"); | ||
| //#region src/bin/postinstall.ts | ||
@@ -3,0 +3,0 @@ const tanstackPackageJson = require_deprecationWarning.getTanStackReactQueryPackageJson(); |
+3
-3
| { | ||
| "name": "@suspensive/react-query", | ||
| "version": "3.21.0", | ||
| "version": "3.21.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.21.0", | ||
| "@suspensive/react-query-5": "^3.21.0", | ||
| "@suspensive/react-query-4": "^3.21.1", | ||
| "@suspensive/react-query-5": "^3.21.1", | ||
| "cli-table3": "^0.6.5", | ||
@@ -51,0 +51,0 @@ "commander": "^13.0.0" |
| //#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; | ||
| } | ||
| }); |
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
66797
0.01%