@strapi/upgrade 0.0.0-experimental.fc1ac2acd58c8a5a858679956b6d102ac5ee4011 → 0.0.0-experimental.fca58d9b01ba89012d84a58a20556a6fd716cb92
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/LICENSE +19 -4
- package/README.md +1 -1
- package/dist/cli.js +15 -6
- package/dist/cli.js.map +1 -1
- package/dist/cli.mjs +14 -0
- package/dist/cli.mjs.map +1 -0
- package/dist/index.js +9 -1199
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +4 -1191
- package/dist/index.mjs.map +1 -1
- package/dist/modules/codemod/codemod.d.ts +4 -2
- package/dist/modules/codemod/codemod.d.ts.map +1 -1
- package/dist/modules/codemod/types.d.ts +8 -1
- package/dist/modules/codemod/types.d.ts.map +1 -1
- package/dist/modules/codemod-repository/constants.d.ts.map +1 -1
- package/dist/modules/codemod-repository/repository.d.ts +6 -5
- package/dist/modules/codemod-repository/repository.d.ts.map +1 -1
- package/dist/modules/codemod-repository/types.d.ts +7 -3
- package/dist/modules/codemod-repository/types.d.ts.map +1 -1
- package/dist/modules/codemod-runner/codemod-runner.d.ts +3 -0
- package/dist/modules/codemod-runner/codemod-runner.d.ts.map +1 -1
- package/dist/modules/codemod-runner/index.d.ts +1 -0
- package/dist/modules/codemod-runner/index.d.ts.map +1 -1
- package/dist/modules/codemod-runner/types.d.ts +1 -0
- package/dist/modules/codemod-runner/types.d.ts.map +1 -1
- package/dist/modules/error/utils.d.ts +8 -0
- package/dist/modules/error/utils.d.ts.map +1 -1
- package/dist/modules/file-scanner/scanner.d.ts.map +1 -1
- package/dist/modules/format/formats.d.ts +6 -0
- package/dist/modules/format/formats.d.ts.map +1 -1
- package/dist/modules/project/constants.d.ts +6 -3
- package/dist/modules/project/constants.d.ts.map +1 -1
- package/dist/modules/project/index.d.ts +2 -0
- package/dist/modules/project/index.d.ts.map +1 -1
- package/dist/modules/project/project.d.ts +27 -5
- package/dist/modules/project/project.d.ts.map +1 -1
- package/dist/modules/project/types.d.ts +3 -10
- package/dist/modules/project/types.d.ts.map +1 -1
- package/dist/modules/project/utils.d.ts +6 -0
- package/dist/modules/project/utils.d.ts.map +1 -0
- package/dist/modules/report/report.d.ts.map +1 -1
- package/dist/modules/requirement/types.d.ts +2 -2
- package/dist/modules/requirement/types.d.ts.map +1 -1
- package/dist/modules/runner/json/transform.d.ts.map +1 -1
- package/dist/modules/upgrader/types.d.ts +6 -0
- package/dist/modules/upgrader/types.d.ts.map +1 -1
- package/dist/modules/upgrader/upgrader.d.ts +7 -3
- package/dist/modules/upgrader/upgrader.d.ts.map +1 -1
- package/dist/modules/version/range.d.ts +2 -0
- package/dist/modules/version/range.d.ts.map +1 -1
- package/dist/modules/version/types.d.ts +2 -1
- package/dist/modules/version/types.d.ts.map +1 -1
- package/dist/package.json.js +6 -0
- package/dist/package.json.js.map +1 -0
- package/dist/package.json.mjs +4 -0
- package/dist/package.json.mjs.map +1 -0
- package/dist/src/cli/commands/codemods.js +120 -0
- package/dist/src/cli/commands/codemods.js.map +1 -0
- package/dist/src/cli/commands/codemods.mjs +116 -0
- package/dist/src/cli/commands/codemods.mjs.map +1 -0
- package/dist/src/cli/commands/upgrade.js +99 -0
- package/dist/src/cli/commands/upgrade.js.map +1 -0
- package/dist/src/cli/commands/upgrade.mjs +96 -0
- package/dist/src/cli/commands/upgrade.mjs.map +1 -0
- package/dist/src/cli/errors.js +18 -0
- package/dist/src/cli/errors.js.map +1 -0
- package/dist/src/cli/errors.mjs +16 -0
- package/dist/src/cli/errors.mjs.map +1 -0
- package/dist/src/cli/options.js +26 -0
- package/dist/src/cli/options.js.map +1 -0
- package/dist/src/cli/options.mjs +19 -0
- package/dist/src/cli/options.mjs.map +1 -0
- package/dist/src/modules/codemod/codemod.js +44 -0
- package/dist/src/modules/codemod/codemod.js.map +1 -0
- package/dist/src/modules/codemod/codemod.mjs +41 -0
- package/dist/src/modules/codemod/codemod.mjs.map +1 -0
- package/dist/src/modules/codemod/constants.js +17 -0
- package/dist/src/modules/codemod/constants.js.map +1 -0
- package/dist/src/modules/codemod/constants.mjs +11 -0
- package/dist/src/modules/codemod/constants.mjs.map +1 -0
- package/dist/src/modules/codemod/index.js +10 -0
- package/dist/src/modules/codemod/index.js.map +1 -0
- package/dist/src/modules/codemod/index.mjs +4 -0
- package/dist/src/modules/codemod/index.mjs.map +1 -0
- package/dist/src/modules/codemod-repository/constants.js +9 -0
- package/dist/src/modules/codemod-repository/constants.js.map +1 -0
- package/dist/src/modules/codemod-repository/constants.mjs +7 -0
- package/dist/src/modules/codemod-repository/constants.mjs.map +1 -0
- package/dist/src/modules/codemod-repository/index.js +10 -0
- package/dist/src/modules/codemod-repository/index.js.map +1 -0
- package/dist/src/modules/codemod-repository/index.mjs +4 -0
- package/dist/src/modules/codemod-repository/index.mjs.map +1 -0
- package/dist/src/modules/codemod-repository/repository.js +127 -0
- package/dist/src/modules/codemod-repository/repository.js.map +1 -0
- package/dist/src/modules/codemod-repository/repository.mjs +123 -0
- package/dist/src/modules/codemod-repository/repository.mjs.map +1 -0
- package/dist/src/modules/codemod-runner/codemod-runner.js +113 -0
- package/dist/src/modules/codemod-runner/codemod-runner.js.map +1 -0
- package/dist/src/modules/codemod-runner/codemod-runner.mjs +110 -0
- package/dist/src/modules/codemod-runner/codemod-runner.mjs.map +1 -0
- package/dist/src/modules/error/index.js +11 -0
- package/dist/src/modules/error/index.js.map +1 -0
- package/dist/src/modules/error/index.mjs +2 -0
- package/dist/src/modules/error/index.mjs.map +1 -0
- package/dist/src/modules/error/utils.js +33 -0
- package/dist/src/modules/error/utils.js.map +1 -0
- package/dist/src/modules/error/utils.mjs +28 -0
- package/dist/src/modules/error/utils.mjs.map +1 -0
- package/dist/src/modules/file-scanner/index.js +8 -0
- package/dist/src/modules/file-scanner/index.js.map +1 -0
- package/dist/src/modules/file-scanner/index.mjs +2 -0
- package/dist/src/modules/file-scanner/index.mjs.map +1 -0
- package/dist/src/modules/file-scanner/scanner.js +23 -0
- package/dist/src/modules/file-scanner/scanner.js.map +1 -0
- package/dist/src/modules/file-scanner/scanner.mjs +20 -0
- package/dist/src/modules/file-scanner/scanner.mjs.map +1 -0
- package/dist/src/modules/format/formats.js +107 -0
- package/dist/src/modules/format/formats.js.map +1 -0
- package/dist/src/modules/format/formats.mjs +94 -0
- package/dist/src/modules/format/formats.mjs.map +1 -0
- package/dist/src/modules/format/index.js +19 -0
- package/dist/src/modules/format/index.js.map +1 -0
- package/dist/src/modules/format/index.mjs +2 -0
- package/dist/src/modules/format/index.mjs.map +1 -0
- package/dist/src/modules/index.js +32 -0
- package/dist/src/modules/index.js.map +1 -0
- package/dist/src/modules/index.mjs +27 -0
- package/dist/src/modules/index.mjs.map +1 -0
- package/dist/src/modules/json/file.js +16 -0
- package/dist/src/modules/json/file.js.map +1 -0
- package/dist/src/modules/json/file.mjs +13 -0
- package/dist/src/modules/json/file.mjs.map +1 -0
- package/dist/src/modules/json/transform-api.js +38 -0
- package/dist/src/modules/json/transform-api.js.map +1 -0
- package/dist/src/modules/json/transform-api.mjs +35 -0
- package/dist/src/modules/json/transform-api.mjs.map +1 -0
- package/dist/src/modules/logger/index.js +8 -0
- package/dist/src/modules/logger/index.js.map +1 -0
- package/dist/src/modules/logger/index.mjs +2 -0
- package/dist/src/modules/logger/index.mjs.map +1 -0
- package/dist/src/modules/logger/logger.js +76 -0
- package/dist/src/modules/logger/logger.js.map +1 -0
- package/dist/src/modules/logger/logger.mjs +73 -0
- package/dist/src/modules/logger/logger.mjs.map +1 -0
- package/dist/src/modules/npm/constants.js +6 -0
- package/dist/src/modules/npm/constants.js.map +1 -0
- package/dist/src/modules/npm/constants.mjs +4 -0
- package/dist/src/modules/npm/constants.mjs.map +1 -0
- package/dist/src/modules/npm/package.js +55 -0
- package/dist/src/modules/npm/package.js.map +1 -0
- package/dist/src/modules/npm/package.mjs +52 -0
- package/dist/src/modules/npm/package.mjs.map +1 -0
- package/dist/src/modules/project/constants.js +45 -0
- package/dist/src/modules/project/constants.js.map +1 -0
- package/dist/src/modules/project/constants.mjs +35 -0
- package/dist/src/modules/project/constants.mjs.map +1 -0
- package/dist/src/modules/project/index.js +15 -0
- package/dist/src/modules/project/index.js.map +1 -0
- package/dist/src/modules/project/index.mjs +5 -0
- package/dist/src/modules/project/index.mjs.map +1 -0
- package/dist/src/modules/project/project.js +208 -0
- package/dist/src/modules/project/project.js.map +1 -0
- package/dist/src/modules/project/project.mjs +203 -0
- package/dist/src/modules/project/project.mjs.map +1 -0
- package/dist/src/modules/project/utils.js +26 -0
- package/dist/src/modules/project/utils.js.map +1 -0
- package/dist/src/modules/project/utils.mjs +21 -0
- package/dist/src/modules/project/utils.mjs.map +1 -0
- package/dist/src/modules/report/index.js +9 -0
- package/dist/src/modules/report/index.js.map +1 -0
- package/dist/src/modules/report/index.mjs +2 -0
- package/dist/src/modules/report/index.mjs.map +1 -0
- package/dist/src/modules/report/report.js +13 -0
- package/dist/src/modules/report/report.js.map +1 -0
- package/dist/src/modules/report/report.mjs +10 -0
- package/dist/src/modules/report/report.mjs.map +1 -0
- package/dist/src/modules/requirement/index.js +8 -0
- package/dist/src/modules/requirement/index.js.map +1 -0
- package/dist/src/modules/requirement/index.mjs +2 -0
- package/dist/src/modules/requirement/index.mjs.map +1 -0
- package/dist/src/modules/requirement/requirement.js +55 -0
- package/dist/src/modules/requirement/requirement.js.map +1 -0
- package/dist/src/modules/requirement/requirement.mjs +52 -0
- package/dist/src/modules/requirement/requirement.mjs.map +1 -0
- package/dist/src/modules/runner/code/code.js +21 -0
- package/dist/src/modules/runner/code/code.js.map +1 -0
- package/dist/src/modules/runner/code/code.mjs +18 -0
- package/dist/src/modules/runner/code/code.mjs.map +1 -0
- package/dist/src/modules/runner/code/index.js +8 -0
- package/dist/src/modules/runner/code/index.js.map +1 -0
- package/dist/src/modules/runner/code/index.mjs +2 -0
- package/dist/src/modules/runner/code/index.mjs.map +1 -0
- package/dist/src/modules/runner/index.js +10 -0
- package/dist/src/modules/runner/index.js.map +1 -0
- package/dist/src/modules/runner/index.mjs +5 -0
- package/dist/src/modules/runner/index.mjs.map +1 -0
- package/dist/src/modules/runner/json/index.js +8 -0
- package/dist/src/modules/runner/json/index.js.map +1 -0
- package/dist/src/modules/runner/json/index.mjs +2 -0
- package/dist/src/modules/runner/json/index.mjs.map +1 -0
- package/dist/src/modules/runner/json/json.js +21 -0
- package/dist/src/modules/runner/json/json.js.map +1 -0
- package/dist/src/modules/runner/json/json.mjs +18 -0
- package/dist/src/modules/runner/json/json.mjs.map +1 -0
- package/dist/src/modules/runner/json/transform.js +85 -0
- package/dist/src/modules/runner/json/transform.js.map +1 -0
- package/dist/src/modules/runner/json/transform.mjs +83 -0
- package/dist/src/modules/runner/json/transform.mjs.map +1 -0
- package/dist/src/modules/runner/runner.js +22 -0
- package/dist/src/modules/runner/runner.js.map +1 -0
- package/dist/src/modules/runner/runner.mjs +20 -0
- package/dist/src/modules/runner/runner.mjs.map +1 -0
- package/dist/src/modules/timer/constants.js +6 -0
- package/dist/src/modules/timer/constants.js.map +1 -0
- package/dist/src/modules/timer/constants.mjs +4 -0
- package/dist/src/modules/timer/constants.mjs.map +1 -0
- package/dist/src/modules/timer/index.js +10 -0
- package/dist/src/modules/timer/index.js.map +1 -0
- package/dist/src/modules/timer/index.mjs +4 -0
- package/dist/src/modules/timer/index.mjs.map +1 -0
- package/dist/src/modules/timer/timer.js +33 -0
- package/dist/src/modules/timer/timer.js.map +1 -0
- package/dist/src/modules/timer/timer.mjs +30 -0
- package/dist/src/modules/timer/timer.mjs.map +1 -0
- package/dist/src/modules/upgrader/constants.js +6 -0
- package/dist/src/modules/upgrader/constants.js.map +1 -0
- package/dist/src/modules/upgrader/constants.mjs +4 -0
- package/dist/src/modules/upgrader/constants.mjs.map +1 -0
- package/dist/src/modules/upgrader/index.js +10 -0
- package/dist/src/modules/upgrader/index.js.map +1 -0
- package/dist/src/modules/upgrader/index.mjs +4 -0
- package/dist/src/modules/upgrader/index.mjs.map +1 -0
- package/dist/src/modules/upgrader/upgrader.js +266 -0
- package/dist/src/modules/upgrader/upgrader.js.map +1 -0
- package/dist/src/modules/upgrader/upgrader.mjs +263 -0
- package/dist/src/modules/upgrader/upgrader.mjs.map +1 -0
- package/dist/src/modules/version/index.js +20 -0
- package/dist/src/modules/version/index.js.map +1 -0
- package/dist/src/modules/version/index.mjs +5 -0
- package/dist/src/modules/version/index.mjs.map +1 -0
- package/dist/src/modules/version/range.js +81 -0
- package/dist/src/modules/version/range.js.map +1 -0
- package/dist/src/modules/version/range.mjs +75 -0
- package/dist/src/modules/version/range.mjs.map +1 -0
- package/dist/src/modules/version/semver.js +26 -0
- package/dist/src/modules/version/semver.js.map +1 -0
- package/dist/src/modules/version/semver.mjs +20 -0
- package/dist/src/modules/version/semver.mjs.map +1 -0
- package/dist/src/modules/version/types.js +12 -0
- package/dist/src/modules/version/types.js.map +1 -0
- package/dist/src/modules/version/types.mjs +12 -0
- package/dist/src/modules/version/types.mjs.map +1 -0
- package/dist/src/tasks/codemods/list-codemods.js +40 -0
- package/dist/src/tasks/codemods/list-codemods.js.map +1 -0
- package/dist/src/tasks/codemods/list-codemods.mjs +38 -0
- package/dist/src/tasks/codemods/list-codemods.mjs.map +1 -0
- package/dist/src/tasks/codemods/run-codemods.js +36 -0
- package/dist/src/tasks/codemods/run-codemods.js.map +1 -0
- package/dist/src/tasks/codemods/run-codemods.mjs +34 -0
- package/dist/src/tasks/codemods/run-codemods.mjs.map +1 -0
- package/dist/src/tasks/codemods/utils.js +54 -0
- package/dist/src/tasks/codemods/utils.js.map +1 -0
- package/dist/src/tasks/codemods/utils.mjs +50 -0
- package/dist/src/tasks/codemods/utils.mjs.map +1 -0
- package/dist/src/tasks/index.js +15 -0
- package/dist/src/tasks/index.js.map +1 -0
- package/dist/src/tasks/index.mjs +7 -0
- package/dist/src/tasks/index.mjs.map +1 -0
- package/dist/src/tasks/upgrade/prompts/latest.js +48 -0
- package/dist/src/tasks/upgrade/prompts/latest.js.map +1 -0
- package/dist/src/tasks/upgrade/prompts/latest.mjs +46 -0
- package/dist/src/tasks/upgrade/prompts/latest.mjs.map +1 -0
- package/dist/src/tasks/upgrade/requirements/common.js +40 -0
- package/dist/src/tasks/upgrade/requirements/common.js.map +1 -0
- package/dist/src/tasks/upgrade/requirements/common.mjs +35 -0
- package/dist/src/tasks/upgrade/requirements/common.mjs.map +1 -0
- package/dist/src/tasks/upgrade/requirements/major.js +29 -0
- package/dist/src/tasks/upgrade/requirements/major.js.map +1 -0
- package/dist/src/tasks/upgrade/requirements/major.mjs +26 -0
- package/dist/src/tasks/upgrade/requirements/major.mjs.map +1 -0
- package/dist/src/tasks/upgrade/upgrade.js +69 -0
- package/dist/src/tasks/upgrade/upgrade.js.map +1 -0
- package/dist/src/tasks/upgrade/upgrade.mjs +67 -0
- package/dist/src/tasks/upgrade/upgrade.mjs.map +1 -0
- package/dist/tasks/codemods/index.d.ts +2 -1
- package/dist/tasks/codemods/index.d.ts.map +1 -1
- package/dist/tasks/codemods/list-codemods.d.ts +3 -0
- package/dist/tasks/codemods/list-codemods.d.ts.map +1 -0
- package/dist/tasks/codemods/run-codemods.d.ts +3 -0
- package/dist/tasks/codemods/run-codemods.d.ts.map +1 -0
- package/dist/tasks/codemods/types.d.ts +9 -3
- package/dist/tasks/codemods/types.d.ts.map +1 -1
- package/dist/tasks/codemods/utils.d.ts +6 -0
- package/dist/tasks/codemods/utils.d.ts.map +1 -0
- package/dist/tasks/index.d.ts +1 -1
- package/dist/tasks/index.d.ts.map +1 -1
- package/dist/tasks/upgrade/prompts/index.d.ts +2 -0
- package/dist/tasks/upgrade/prompts/index.d.ts.map +1 -0
- package/dist/tasks/upgrade/prompts/latest.d.ts +9 -0
- package/dist/tasks/upgrade/prompts/latest.d.ts.map +1 -0
- package/dist/tasks/upgrade/requirements/major.d.ts.map +1 -1
- package/dist/tasks/upgrade/upgrade.d.ts.map +1 -1
- package/package.json +16 -15
- package/resources/codemods/5.0.0/comment-out-lifecycle-files.code.ts +63 -0
- package/resources/codemods/5.0.0/dependency-remove-strapi-plugin-i18n.json.ts +31 -0
- package/resources/codemods/5.0.0/dependency-upgrade-react-and-react-dom.json.ts +67 -0
- package/resources/codemods/5.0.0/dependency-upgrade-react-router-dom.json.ts +59 -0
- package/resources/codemods/5.0.0/dependency-upgrade-styled-components.json.ts +49 -0
- package/resources/codemods/5.0.0/deprecate-helper-plugin.code.ts +192 -0
- package/resources/codemods/5.0.0/entity-service-document-service.code.ts +437 -0
- package/resources/codemods/5.0.0/s3-keys-wrapped-in-credentials.code.ts +1 -1
- package/resources/codemods/5.0.0/sqlite3-to-better-sqlite3.json.ts +5 -3
- package/resources/codemods/5.0.0/strapi-public-interface.code.ts +126 -0
- package/resources/codemods/5.0.0/use-uid-for-config-namespace.code.ts +1 -1
- package/resources/codemods/5.0.0/utils-public-interface.code.ts +320 -0
- package/resources/codemods/5.1.0/dependency-better-sqlite3.json.ts +48 -0
- package/resources/examples/console.log-to-console.info.code.ts +1 -1
- package/resources/examples/disable-jsx-buttons.code.ts +42 -0
- package/resources/utils/change-import.ts +118 -0
- package/resources/utils/replace-jsx.ts +49 -0
- package/dist/_chunks/codemod-runner-oPpELfwO.js +0 -730
- package/dist/_chunks/codemod-runner-oPpELfwO.js.map +0 -1
- package/dist/_chunks/codemods-qc8_QMWD.js +0 -108
- package/dist/_chunks/codemods-qc8_QMWD.js.map +0 -1
- package/dist/_chunks/index-GHKaxdhJ.js +0 -103
- package/dist/_chunks/index-GHKaxdhJ.js.map +0 -1
- package/dist/_chunks/upgrade-4SxXG3Oe.js +0 -357
- package/dist/_chunks/upgrade-4SxXG3Oe.js.map +0 -1
- package/dist/tasks/codemods/codemods.d.ts +0 -3
- package/dist/tasks/codemods/codemods.d.ts.map +0 -1
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import CliTable3 from 'cli-table3';
|
|
2
|
+
import chalk from 'chalk';
|
|
3
|
+
import { ONE_SECOND_MS } from '../timer/constants.mjs';
|
|
4
|
+
|
|
5
|
+
const path = (path)=>chalk.blue(path);
|
|
6
|
+
const version = (version)=>{
|
|
7
|
+
return chalk.italic.yellow(`v${version}`);
|
|
8
|
+
};
|
|
9
|
+
const codemodUID = (uid)=>{
|
|
10
|
+
return chalk.bold.cyan(uid);
|
|
11
|
+
};
|
|
12
|
+
const projectDetails = (project)=>{
|
|
13
|
+
return `Project: TYPE=${projectType(project.type)}; CWD=${path(project.cwd)}; PATHS=${project.paths.map(path)}`;
|
|
14
|
+
};
|
|
15
|
+
const projectType = (type)=>chalk.cyan(type);
|
|
16
|
+
const versionRange = (range)=>chalk.italic.yellow(range.raw);
|
|
17
|
+
const transform = (transformFilePath)=>chalk.cyan(transformFilePath);
|
|
18
|
+
const highlight = (arg)=>chalk.bold.underline(arg);
|
|
19
|
+
const upgradeStep = (text, step)=>{
|
|
20
|
+
return chalk.bold(`(${step[0]}/${step[1]}) ${text}...`);
|
|
21
|
+
};
|
|
22
|
+
const reports = (reports)=>{
|
|
23
|
+
const rows = reports.map(({ codemod, report }, i)=>{
|
|
24
|
+
const fIndex = chalk.grey(i);
|
|
25
|
+
const fVersion = chalk.magenta(codemod.version);
|
|
26
|
+
const fKind = chalk.yellow(codemod.kind);
|
|
27
|
+
const fFormattedTransformPath = chalk.cyan(codemod.format());
|
|
28
|
+
const fTimeElapsed = i === 0 ? `${report.timeElapsed}s ${chalk.dim.italic('(cold start)')}` : `${report.timeElapsed}s`;
|
|
29
|
+
const fAffected = report.ok > 0 ? chalk.green(report.ok) : chalk.grey(0);
|
|
30
|
+
const fUnchanged = report.ok === 0 ? chalk.red(report.nochange) : chalk.grey(report.nochange);
|
|
31
|
+
return [
|
|
32
|
+
fIndex,
|
|
33
|
+
fVersion,
|
|
34
|
+
fKind,
|
|
35
|
+
fFormattedTransformPath,
|
|
36
|
+
fAffected,
|
|
37
|
+
fUnchanged,
|
|
38
|
+
fTimeElapsed
|
|
39
|
+
];
|
|
40
|
+
});
|
|
41
|
+
const table = new CliTable3({
|
|
42
|
+
style: {
|
|
43
|
+
compact: true
|
|
44
|
+
},
|
|
45
|
+
head: [
|
|
46
|
+
chalk.bold.grey('N°'),
|
|
47
|
+
chalk.bold.magenta('Version'),
|
|
48
|
+
chalk.bold.yellow('Kind'),
|
|
49
|
+
chalk.bold.cyan('Name'),
|
|
50
|
+
chalk.bold.green('Affected'),
|
|
51
|
+
chalk.bold.red('Unchanged'),
|
|
52
|
+
chalk.bold.blue('Duration')
|
|
53
|
+
]
|
|
54
|
+
});
|
|
55
|
+
table.push(...rows);
|
|
56
|
+
return table.toString();
|
|
57
|
+
};
|
|
58
|
+
const codemodList = (codemods)=>{
|
|
59
|
+
const rows = codemods.map((codemod, index)=>{
|
|
60
|
+
const fIndex = chalk.grey(index);
|
|
61
|
+
const fVersion = chalk.magenta(codemod.version);
|
|
62
|
+
const fKind = chalk.yellow(codemod.kind);
|
|
63
|
+
const fName = chalk.blue(codemod.format());
|
|
64
|
+
const fUID = codemodUID(codemod.uid);
|
|
65
|
+
return [
|
|
66
|
+
fIndex,
|
|
67
|
+
fVersion,
|
|
68
|
+
fKind,
|
|
69
|
+
fName,
|
|
70
|
+
fUID
|
|
71
|
+
];
|
|
72
|
+
});
|
|
73
|
+
const table = new CliTable3({
|
|
74
|
+
style: {
|
|
75
|
+
compact: true
|
|
76
|
+
},
|
|
77
|
+
head: [
|
|
78
|
+
chalk.bold.grey('N°'),
|
|
79
|
+
chalk.bold.magenta('Version'),
|
|
80
|
+
chalk.bold.yellow('Kind'),
|
|
81
|
+
chalk.bold.blue('Name'),
|
|
82
|
+
chalk.bold.cyan('UID')
|
|
83
|
+
]
|
|
84
|
+
});
|
|
85
|
+
table.push(...rows);
|
|
86
|
+
return table.toString();
|
|
87
|
+
};
|
|
88
|
+
const durationMs = (elapsedMs)=>{
|
|
89
|
+
const elapsedSeconds = (elapsedMs / ONE_SECOND_MS).toFixed(3);
|
|
90
|
+
return `${elapsedSeconds}s`;
|
|
91
|
+
};
|
|
92
|
+
|
|
93
|
+
export { codemodList, codemodUID, durationMs, highlight, path, projectDetails, projectType, reports, transform, upgradeStep, version, versionRange };
|
|
94
|
+
//# sourceMappingURL=formats.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formats.mjs","sources":["../../../../src/modules/format/formats.ts"],"sourcesContent":["import CliTable3 from 'cli-table3';\nimport chalk from 'chalk';\n\nimport { constants as timerConstants } from '../timer';\n\nimport type { AppProject, PluginProject, ProjectType } from '../project';\nimport type { Codemod } from '../codemod';\nimport type { Version } from '../version';\nimport type { Report } from '../report';\n\nexport const path = (path: string) => chalk.blue(path);\n\nexport const version = (version: Version.LiteralVersion | Version.SemVer) => {\n return chalk.italic.yellow(`v${version}`);\n};\n\nexport const codemodUID = (uid: string) => {\n return chalk.bold.cyan(uid);\n};\n\nexport const projectDetails = (project: AppProject | PluginProject) => {\n return `Project: TYPE=${projectType(project.type)}; CWD=${path(project.cwd)}; PATHS=${project.paths.map(path)}`;\n};\n\nexport const projectType = (type: ProjectType) => chalk.cyan(type);\n\nexport const versionRange = (range: Version.Range) => chalk.italic.yellow(range.raw);\n\nexport const transform = (transformFilePath: string) => chalk.cyan(transformFilePath);\n\nexport const highlight = (arg: unknown) => chalk.bold.underline(arg);\n\nexport const upgradeStep = (text: string, step: [current: number, total: number]) => {\n return chalk.bold(`(${step[0]}/${step[1]}) ${text}...`);\n};\n\nexport const reports = (reports: Report.CodemodReport[]) => {\n const rows = reports.map(({ codemod, report }, i) => {\n const fIndex = chalk.grey(i);\n const fVersion = chalk.magenta(codemod.version);\n const fKind = chalk.yellow(codemod.kind);\n const fFormattedTransformPath = chalk.cyan(codemod.format());\n const fTimeElapsed =\n i === 0\n ? `${report.timeElapsed}s ${chalk.dim.italic('(cold start)')}`\n : `${report.timeElapsed}s`;\n const fAffected = report.ok > 0 ? chalk.green(report.ok) : chalk.grey(0);\n const fUnchanged = report.ok === 0 ? chalk.red(report.nochange) : chalk.grey(report.nochange);\n\n return [fIndex, fVersion, fKind, fFormattedTransformPath, fAffected, fUnchanged, fTimeElapsed];\n });\n\n const table = new CliTable3({\n style: { compact: true },\n head: [\n chalk.bold.grey('N°'),\n chalk.bold.magenta('Version'),\n chalk.bold.yellow('Kind'),\n chalk.bold.cyan('Name'),\n chalk.bold.green('Affected'),\n chalk.bold.red('Unchanged'),\n chalk.bold.blue('Duration'),\n ],\n });\n\n table.push(...rows);\n\n return table.toString();\n};\n\nexport const codemodList = (codemods: Codemod.List) => {\n type Row = [index: string, version: string, kind: string, name: string, uid: string];\n\n const rows = codemods.map<Row>((codemod, index) => {\n const fIndex = chalk.grey(index);\n const fVersion = chalk.magenta(codemod.version);\n const fKind = chalk.yellow(codemod.kind);\n const fName = chalk.blue(codemod.format());\n const fUID = codemodUID(codemod.uid);\n\n return [fIndex, fVersion, fKind, fName, fUID] satisfies Row;\n });\n\n const table = new CliTable3({\n style: { compact: true },\n head: [\n chalk.bold.grey('N°'),\n chalk.bold.magenta('Version'),\n chalk.bold.yellow('Kind'),\n chalk.bold.blue('Name'),\n chalk.bold.cyan('UID'),\n ],\n });\n\n table.push(...rows);\n\n return table.toString();\n};\n\nexport const durationMs = (elapsedMs: number) => {\n const elapsedSeconds = (elapsedMs / timerConstants.ONE_SECOND_MS).toFixed(3);\n\n return `${elapsedSeconds}s`;\n};\n"],"names":["path","chalk","blue","version","italic","yellow","codemodUID","uid","bold","cyan","projectDetails","project","projectType","type","cwd","paths","map","versionRange","range","raw","transform","transformFilePath","highlight","arg","underline","upgradeStep","text","step","reports","rows","codemod","report","i","fIndex","grey","fVersion","magenta","fKind","kind","fFormattedTransformPath","format","fTimeElapsed","timeElapsed","dim","fAffected","ok","green","fUnchanged","red","nochange","table","CliTable3","style","compact","head","push","toString","codemodList","codemods","index","fName","fUID","durationMs","elapsedMs","elapsedSeconds","timerConstants","toFixed"],"mappings":";;;;MAUaA,IAAO,GAAA,CAACA,OAAiBC,KAAMC,CAAAA,IAAI,CAACF,IAAM;AAEhD,MAAMG,UAAU,CAACA,OAAAA,GAAAA;IACtB,OAAOF,KAAAA,CAAMG,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,EAAEF,OAAAA,CAAQ,CAAC,CAAA;AAC1C;AAEO,MAAMG,aAAa,CAACC,GAAAA,GAAAA;AACzB,IAAA,OAAON,KAAMO,CAAAA,IAAI,CAACC,IAAI,CAACF,GAAAA,CAAAA;AACzB;AAEO,MAAMG,iBAAiB,CAACC,OAAAA,GAAAA;IAC7B,OAAO,CAAC,cAAc,EAAEC,WAAAA,CAAYD,QAAQE,IAAI,CAAA,CAAE,MAAM,EAAEb,IAAAA,CAAKW,QAAQG,GAAG,CAAA,CAAE,QAAQ,EAAEH,OAAAA,CAAQI,KAAK,CAACC,GAAG,CAAChB,IAAAA,CAAAA,CAAM,CAAC;AACjH;MAEaY,WAAc,GAAA,CAACC,OAAsBZ,KAAMQ,CAAAA,IAAI,CAACI,IAAM;AAE5D,MAAMI,YAAe,GAAA,CAACC,KAAyBjB,GAAAA,KAAAA,CAAMG,MAAM,CAACC,MAAM,CAACa,KAAMC,CAAAA,GAAG;MAEtEC,SAAY,GAAA,CAACC,oBAA8BpB,KAAMQ,CAAAA,IAAI,CAACY,iBAAmB;AAE/E,MAAMC,YAAY,CAACC,GAAAA,GAAiBtB,MAAMO,IAAI,CAACgB,SAAS,CAACD,GAAK;AAE9D,MAAME,WAAc,GAAA,CAACC,IAAcC,EAAAA,IAAAA,GAAAA;IACxC,OAAO1B,KAAAA,CAAMO,IAAI,CAAC,CAAC,CAAC,EAAEmB,IAAI,CAAC,CAAE,CAAA,CAAC,CAAC,EAAEA,IAAI,CAAC,CAAE,CAAA,CAAC,EAAE,EAAED,IAAAA,CAAK,GAAG,CAAC,CAAA;AACxD;AAEO,MAAME,UAAU,CAACA,OAAAA,GAAAA;IACtB,MAAMC,IAAAA,GAAOD,OAAQZ,CAAAA,GAAG,CAAC,CAAC,EAAEc,OAAO,EAAEC,MAAM,EAAE,EAAEC,CAAAA,GAAAA;QAC7C,MAAMC,MAAAA,GAAShC,KAAMiC,CAAAA,IAAI,CAACF,CAAAA,CAAAA;AAC1B,QAAA,MAAMG,QAAWlC,GAAAA,KAAAA,CAAMmC,OAAO,CAACN,QAAQ3B,OAAO,CAAA;AAC9C,QAAA,MAAMkC,KAAQpC,GAAAA,KAAAA,CAAMI,MAAM,CAACyB,QAAQQ,IAAI,CAAA;AACvC,QAAA,MAAMC,uBAA0BtC,GAAAA,KAAAA,CAAMQ,IAAI,CAACqB,QAAQU,MAAM,EAAA,CAAA;QACzD,MAAMC,YAAAA,GACJT,CAAM,KAAA,CAAA,GACF,CAAC,EAAED,OAAOW,WAAW,CAAC,EAAE,EAAEzC,KAAM0C,CAAAA,GAAG,CAACvC,MAAM,CAAC,cAAgB,CAAA,CAAA,CAAC,GAC5D,CAAC,EAAE2B,MAAOW,CAAAA,WAAW,CAAC,CAAC,CAAC;AAC9B,QAAA,MAAME,SAAYb,GAAAA,MAAAA,CAAOc,EAAE,GAAG,CAAI5C,GAAAA,KAAAA,CAAM6C,KAAK,CAACf,MAAOc,CAAAA,EAAE,CAAI5C,GAAAA,KAAAA,CAAMiC,IAAI,CAAC,CAAA,CAAA;AACtE,QAAA,MAAMa,UAAahB,GAAAA,MAAAA,CAAOc,EAAE,KAAK,IAAI5C,KAAM+C,CAAAA,GAAG,CAACjB,MAAAA,CAAOkB,QAAQ,CAAIhD,GAAAA,KAAAA,CAAMiC,IAAI,CAACH,OAAOkB,QAAQ,CAAA;QAE5F,OAAO;AAAChB,YAAAA,MAAAA;AAAQE,YAAAA,QAAAA;AAAUE,YAAAA,KAAAA;AAAOE,YAAAA,uBAAAA;AAAyBK,YAAAA,SAAAA;AAAWG,YAAAA,UAAAA;AAAYN,YAAAA;AAAa,SAAA;AAChG,KAAA,CAAA;IAEA,MAAMS,KAAAA,GAAQ,IAAIC,SAAU,CAAA;QAC1BC,KAAO,EAAA;YAAEC,OAAS,EAAA;AAAK,SAAA;QACvBC,IAAM,EAAA;YACJrD,KAAMO,CAAAA,IAAI,CAAC0B,IAAI,CAAC,IAAA,CAAA;YAChBjC,KAAMO,CAAAA,IAAI,CAAC4B,OAAO,CAAC,SAAA,CAAA;YACnBnC,KAAMO,CAAAA,IAAI,CAACH,MAAM,CAAC,MAAA,CAAA;YAClBJ,KAAMO,CAAAA,IAAI,CAACC,IAAI,CAAC,MAAA,CAAA;YAChBR,KAAMO,CAAAA,IAAI,CAACsC,KAAK,CAAC,UAAA,CAAA;YACjB7C,KAAMO,CAAAA,IAAI,CAACwC,GAAG,CAAC,WAAA,CAAA;YACf/C,KAAMO,CAAAA,IAAI,CAACN,IAAI,CAAC,UAAA;AACjB;AACH,KAAA,CAAA;AAEAgD,IAAAA,KAAAA,CAAMK,IAAI,CAAI1B,GAAAA,IAAAA,CAAAA;AAEd,IAAA,OAAOqB,MAAMM,QAAQ,EAAA;AACvB;AAEO,MAAMC,cAAc,CAACC,QAAAA,GAAAA;AAG1B,IAAA,MAAM7B,IAAO6B,GAAAA,QAAAA,CAAS1C,GAAG,CAAM,CAACc,OAAS6B,EAAAA,KAAAA,GAAAA;QACvC,MAAM1B,MAAAA,GAAShC,KAAMiC,CAAAA,IAAI,CAACyB,KAAAA,CAAAA;AAC1B,QAAA,MAAMxB,QAAWlC,GAAAA,KAAAA,CAAMmC,OAAO,CAACN,QAAQ3B,OAAO,CAAA;AAC9C,QAAA,MAAMkC,KAAQpC,GAAAA,KAAAA,CAAMI,MAAM,CAACyB,QAAQQ,IAAI,CAAA;AACvC,QAAA,MAAMsB,KAAQ3D,GAAAA,KAAAA,CAAMC,IAAI,CAAC4B,QAAQU,MAAM,EAAA,CAAA;QACvC,MAAMqB,IAAAA,GAAOvD,UAAWwB,CAAAA,OAAAA,CAAQvB,GAAG,CAAA;QAEnC,OAAO;AAAC0B,YAAAA,MAAAA;AAAQE,YAAAA,QAAAA;AAAUE,YAAAA,KAAAA;AAAOuB,YAAAA,KAAAA;AAAOC,YAAAA;AAAK,SAAA;AAC/C,KAAA,CAAA;IAEA,MAAMX,KAAAA,GAAQ,IAAIC,SAAU,CAAA;QAC1BC,KAAO,EAAA;YAAEC,OAAS,EAAA;AAAK,SAAA;QACvBC,IAAM,EAAA;YACJrD,KAAMO,CAAAA,IAAI,CAAC0B,IAAI,CAAC,IAAA,CAAA;YAChBjC,KAAMO,CAAAA,IAAI,CAAC4B,OAAO,CAAC,SAAA,CAAA;YACnBnC,KAAMO,CAAAA,IAAI,CAACH,MAAM,CAAC,MAAA,CAAA;YAClBJ,KAAMO,CAAAA,IAAI,CAACN,IAAI,CAAC,MAAA,CAAA;YAChBD,KAAMO,CAAAA,IAAI,CAACC,IAAI,CAAC,KAAA;AACjB;AACH,KAAA,CAAA;AAEAyC,IAAAA,KAAAA,CAAMK,IAAI,CAAI1B,GAAAA,IAAAA,CAAAA;AAEd,IAAA,OAAOqB,MAAMM,QAAQ,EAAA;AACvB;AAEO,MAAMM,aAAa,CAACC,SAAAA,GAAAA;IACzB,MAAMC,cAAAA,GAAiB,CAACD,SAAAA,GAAYE,aAA2B,EAAGC,OAAO,CAAC,CAAA,CAAA;AAE1E,IAAA,OAAO,CAAC,EAAEF,cAAe,CAAA,CAAC,CAAC;AAC7B;;;;"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var formats = require('./formats.js');
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
exports.codemodList = formats.codemodList;
|
|
8
|
+
exports.codemodUID = formats.codemodUID;
|
|
9
|
+
exports.durationMs = formats.durationMs;
|
|
10
|
+
exports.highlight = formats.highlight;
|
|
11
|
+
exports.path = formats.path;
|
|
12
|
+
exports.projectDetails = formats.projectDetails;
|
|
13
|
+
exports.projectType = formats.projectType;
|
|
14
|
+
exports.reports = formats.reports;
|
|
15
|
+
exports.transform = formats.transform;
|
|
16
|
+
exports.upgradeStep = formats.upgradeStep;
|
|
17
|
+
exports.version = formats.version;
|
|
18
|
+
exports.versionRange = formats.versionRange;
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var index = require('./codemod/index.js');
|
|
4
|
+
var index$1 = require('./codemod-repository/index.js');
|
|
5
|
+
var index$2 = require('./error/index.js');
|
|
6
|
+
var index$3 = require('./file-scanner/index.js');
|
|
7
|
+
var index$4 = require('./format/index.js');
|
|
8
|
+
var index$5 = require('./logger/index.js');
|
|
9
|
+
var index$6 = require('./project/index.js');
|
|
10
|
+
var index$7 = require('./report/index.js');
|
|
11
|
+
var index$8 = require('./requirement/index.js');
|
|
12
|
+
var index$9 = require('./runner/index.js');
|
|
13
|
+
var index$a = require('./timer/index.js');
|
|
14
|
+
var index$b = require('./upgrader/index.js');
|
|
15
|
+
var index$c = require('./version/index.js');
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
exports.codemod = index;
|
|
20
|
+
exports.codemodRepository = index$1;
|
|
21
|
+
exports.error = index$2;
|
|
22
|
+
exports.fileScanner = index$3;
|
|
23
|
+
exports.f = index$4;
|
|
24
|
+
exports.logger = index$5;
|
|
25
|
+
exports.project = index$6;
|
|
26
|
+
exports.report = index$7;
|
|
27
|
+
exports.requirement = index$8;
|
|
28
|
+
exports.runner = index$9;
|
|
29
|
+
exports.timer = index$a;
|
|
30
|
+
exports.upgrader = index$b;
|
|
31
|
+
exports.version = index$c;
|
|
32
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as index from './codemod/index.mjs';
|
|
2
|
+
export { index as codemod };
|
|
3
|
+
import * as index$1 from './codemod-repository/index.mjs';
|
|
4
|
+
export { index$1 as codemodRepository };
|
|
5
|
+
import * as index$2 from './error/index.mjs';
|
|
6
|
+
export { index$2 as error };
|
|
7
|
+
import * as index$3 from './file-scanner/index.mjs';
|
|
8
|
+
export { index$3 as fileScanner };
|
|
9
|
+
import * as index$4 from './format/index.mjs';
|
|
10
|
+
export { index$4 as f };
|
|
11
|
+
import * as index$5 from './logger/index.mjs';
|
|
12
|
+
export { index$5 as logger };
|
|
13
|
+
import * as index$6 from './project/index.mjs';
|
|
14
|
+
export { index$6 as project };
|
|
15
|
+
import * as index$7 from './report/index.mjs';
|
|
16
|
+
export { index$7 as report };
|
|
17
|
+
import * as index$8 from './requirement/index.mjs';
|
|
18
|
+
export { index$8 as requirement };
|
|
19
|
+
import * as index$9 from './runner/index.mjs';
|
|
20
|
+
export { index$9 as runner };
|
|
21
|
+
import * as index$a from './timer/index.mjs';
|
|
22
|
+
export { index$a as timer };
|
|
23
|
+
import * as index$b from './upgrader/index.mjs';
|
|
24
|
+
export { index$b as upgrader };
|
|
25
|
+
import * as index$c from './version/index.mjs';
|
|
26
|
+
export { index$c as version };
|
|
27
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var fse = require('fs-extra');
|
|
4
|
+
|
|
5
|
+
const readJSON = async (path)=>{
|
|
6
|
+
const buffer = await fse.readFile(path);
|
|
7
|
+
return JSON.parse(buffer.toString());
|
|
8
|
+
};
|
|
9
|
+
const saveJSON = async (path, json)=>{
|
|
10
|
+
const jsonAsString = `${JSON.stringify(json, null, 2)}\n`;
|
|
11
|
+
await fse.writeFile(path, jsonAsString);
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
exports.readJSON = readJSON;
|
|
15
|
+
exports.saveJSON = saveJSON;
|
|
16
|
+
//# sourceMappingURL=file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.js","sources":["../../../../src/modules/json/file.ts"],"sourcesContent":["import fse from 'fs-extra';\n\nimport type { Utils } from '@strapi/types';\n\nexport const readJSON = async (path: string): Promise<Utils.JSONValue> => {\n const buffer = await fse.readFile(path);\n\n return JSON.parse(buffer.toString());\n};\n\nexport const saveJSON = async (path: string, json: Utils.JSONValue): Promise<void> => {\n const jsonAsString = `${JSON.stringify(json, null, 2)}\\n`;\n\n await fse.writeFile(path, jsonAsString);\n};\n"],"names":["readJSON","path","buffer","fse","readFile","JSON","parse","toString","saveJSON","json","jsonAsString","stringify","writeFile"],"mappings":";;;;AAIO,MAAMA,WAAW,OAAOC,IAAAA,GAAAA;AAC7B,IAAA,MAAMC,MAAS,GAAA,MAAMC,GAAIC,CAAAA,QAAQ,CAACH,IAAAA,CAAAA;AAElC,IAAA,OAAOI,IAAKC,CAAAA,KAAK,CAACJ,MAAAA,CAAOK,QAAQ,EAAA,CAAA;AACnC;AAEO,MAAMC,QAAW,GAAA,OAAOP,IAAcQ,EAAAA,IAAAA,GAAAA;IAC3C,MAAMC,YAAAA,GAAe,CAAC,EAAEL,IAAKM,CAAAA,SAAS,CAACF,IAAM,EAAA,IAAA,EAAM,CAAG,CAAA,CAAA,EAAE,CAAC;IAEzD,MAAMN,GAAAA,CAAIS,SAAS,CAACX,IAAMS,EAAAA,YAAAA,CAAAA;AAC5B;;;;;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import fse from 'fs-extra';
|
|
2
|
+
|
|
3
|
+
const readJSON = async (path)=>{
|
|
4
|
+
const buffer = await fse.readFile(path);
|
|
5
|
+
return JSON.parse(buffer.toString());
|
|
6
|
+
};
|
|
7
|
+
const saveJSON = async (path, json)=>{
|
|
8
|
+
const jsonAsString = `${JSON.stringify(json, null, 2)}\n`;
|
|
9
|
+
await fse.writeFile(path, jsonAsString);
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export { readJSON, saveJSON };
|
|
13
|
+
//# sourceMappingURL=file.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.mjs","sources":["../../../../src/modules/json/file.ts"],"sourcesContent":["import fse from 'fs-extra';\n\nimport type { Utils } from '@strapi/types';\n\nexport const readJSON = async (path: string): Promise<Utils.JSONValue> => {\n const buffer = await fse.readFile(path);\n\n return JSON.parse(buffer.toString());\n};\n\nexport const saveJSON = async (path: string, json: Utils.JSONValue): Promise<void> => {\n const jsonAsString = `${JSON.stringify(json, null, 2)}\\n`;\n\n await fse.writeFile(path, jsonAsString);\n};\n"],"names":["readJSON","path","buffer","fse","readFile","JSON","parse","toString","saveJSON","json","jsonAsString","stringify","writeFile"],"mappings":";;AAIO,MAAMA,WAAW,OAAOC,IAAAA,GAAAA;AAC7B,IAAA,MAAMC,MAAS,GAAA,MAAMC,GAAIC,CAAAA,QAAQ,CAACH,IAAAA,CAAAA;AAElC,IAAA,OAAOI,IAAKC,CAAAA,KAAK,CAACJ,MAAAA,CAAOK,QAAQ,EAAA,CAAA;AACnC;AAEO,MAAMC,QAAW,GAAA,OAAOP,IAAcQ,EAAAA,IAAAA,GAAAA;IAC3C,MAAMC,YAAAA,GAAe,CAAC,EAAEL,IAAKM,CAAAA,SAAS,CAACF,IAAM,EAAA,IAAA,EAAM,CAAG,CAAA,CAAA,EAAE,CAAC;IAEzD,MAAMN,GAAAA,CAAIS,SAAS,CAACX,IAAMS,EAAAA,YAAAA,CAAAA;AAC5B;;;;"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var fp = require('lodash/fp');
|
|
4
|
+
|
|
5
|
+
class JSONTransformAPI {
|
|
6
|
+
get(path, defaultValue) {
|
|
7
|
+
if (!path) {
|
|
8
|
+
return this.root();
|
|
9
|
+
}
|
|
10
|
+
return fp.cloneDeep(fp.get(path, this.json) ?? defaultValue);
|
|
11
|
+
}
|
|
12
|
+
has(path) {
|
|
13
|
+
return fp.has(path, this.json);
|
|
14
|
+
}
|
|
15
|
+
merge(other) {
|
|
16
|
+
this.json = fp.merge(other, this.json);
|
|
17
|
+
return this;
|
|
18
|
+
}
|
|
19
|
+
root() {
|
|
20
|
+
return fp.cloneDeep(this.json);
|
|
21
|
+
}
|
|
22
|
+
set(path, value) {
|
|
23
|
+
this.json = fp.set(path, value, this.json);
|
|
24
|
+
return this;
|
|
25
|
+
}
|
|
26
|
+
remove(path) {
|
|
27
|
+
this.json = fp.omit(path, this.json);
|
|
28
|
+
return this;
|
|
29
|
+
}
|
|
30
|
+
constructor(json){
|
|
31
|
+
this.json = fp.cloneDeep(json);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
const createJSONTransformAPI = (object)=>new JSONTransformAPI(object);
|
|
35
|
+
|
|
36
|
+
exports.JSONTransformAPI = JSONTransformAPI;
|
|
37
|
+
exports.createJSONTransformAPI = createJSONTransformAPI;
|
|
38
|
+
//# sourceMappingURL=transform-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform-api.js","sources":["../../../../src/modules/json/transform-api.ts"],"sourcesContent":["import { cloneDeep, get, has, set, merge, omit } from 'lodash/fp';\n\nimport type { Utils } from '@strapi/types';\n\nimport type { JSONTransformAPI as JSONTransformAPIInterface } from './types';\n\nexport class JSONTransformAPI implements JSONTransformAPIInterface {\n private json: Utils.JSONObject;\n\n constructor(json: Utils.JSONObject) {\n this.json = cloneDeep(json);\n }\n\n get<T extends Utils.JSONValue>(path: string): T | undefined;\n get<T extends Utils.JSONValue>(path: string, defaultValue: T): T;\n get<T extends Utils.JSONValue>(path?: string, defaultValue?: T) {\n if (!path) {\n return this.root() as T;\n }\n\n return cloneDeep(get(path, this.json) ?? defaultValue) as T;\n }\n\n has(path: string) {\n return has(path, this.json);\n }\n\n merge(other: Utils.JSONObject) {\n this.json = merge(other, this.json);\n\n return this;\n }\n\n root(): Utils.JSONObject {\n return cloneDeep(this.json);\n }\n\n set(path: string, value: Utils.JSONValue) {\n this.json = set(path, value, this.json);\n\n return this;\n }\n\n remove(path: string) {\n this.json = omit(path, this.json);\n return this;\n }\n}\n\nexport const createJSONTransformAPI = (object: Utils.JSONObject) => new JSONTransformAPI(object);\n"],"names":["JSONTransformAPI","get","path","defaultValue","root","cloneDeep","json","has","merge","other","set","value","remove","omit","constructor","createJSONTransformAPI","object"],"mappings":";;;;AAMO,MAAMA,gBAAAA,CAAAA;IASXC,GAA+BC,CAAAA,IAAa,EAAEC,YAAgB,EAAE;AAC9D,QAAA,IAAI,CAACD,IAAM,EAAA;YACT,OAAO,IAAI,CAACE,IAAI,EAAA;AAClB;AAEA,QAAA,OAAOC,aAAUJ,MAAIC,CAAAA,IAAAA,EAAM,IAAI,CAACI,IAAI,CAAKH,IAAAA,YAAAA,CAAAA;AAC3C;AAEAI,IAAAA,GAAAA,CAAIL,IAAY,EAAE;AAChB,QAAA,OAAOK,MAAIL,CAAAA,IAAAA,EAAM,IAAI,CAACI,IAAI,CAAA;AAC5B;AAEAE,IAAAA,KAAAA,CAAMC,KAAuB,EAAE;AAC7B,QAAA,IAAI,CAACH,IAAI,GAAGE,SAAMC,KAAO,EAAA,IAAI,CAACH,IAAI,CAAA;AAElC,QAAA,OAAO,IAAI;AACb;IAEAF,IAAyB,GAAA;QACvB,OAAOC,YAAAA,CAAU,IAAI,CAACC,IAAI,CAAA;AAC5B;IAEAI,GAAIR,CAAAA,IAAY,EAAES,KAAsB,EAAE;QACxC,IAAI,CAACL,IAAI,GAAGI,MAAAA,CAAIR,MAAMS,KAAO,EAAA,IAAI,CAACL,IAAI,CAAA;AAEtC,QAAA,OAAO,IAAI;AACb;AAEAM,IAAAA,MAAAA,CAAOV,IAAY,EAAE;AACnB,QAAA,IAAI,CAACI,IAAI,GAAGO,QAAKX,IAAM,EAAA,IAAI,CAACI,IAAI,CAAA;AAChC,QAAA,OAAO,IAAI;AACb;AArCAQ,IAAAA,WAAAA,CAAYR,IAAsB,CAAE;QAClC,IAAI,CAACA,IAAI,GAAGD,YAAUC,CAAAA,IAAAA,CAAAA;AACxB;AAoCF;MAEaS,sBAAyB,GAAA,CAACC,MAA6B,GAAA,IAAIhB,iBAAiBgB,MAAQ;;;;;"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { cloneDeep, get, has, merge, set, omit } from 'lodash/fp';
|
|
2
|
+
|
|
3
|
+
class JSONTransformAPI {
|
|
4
|
+
get(path, defaultValue) {
|
|
5
|
+
if (!path) {
|
|
6
|
+
return this.root();
|
|
7
|
+
}
|
|
8
|
+
return cloneDeep(get(path, this.json) ?? defaultValue);
|
|
9
|
+
}
|
|
10
|
+
has(path) {
|
|
11
|
+
return has(path, this.json);
|
|
12
|
+
}
|
|
13
|
+
merge(other) {
|
|
14
|
+
this.json = merge(other, this.json);
|
|
15
|
+
return this;
|
|
16
|
+
}
|
|
17
|
+
root() {
|
|
18
|
+
return cloneDeep(this.json);
|
|
19
|
+
}
|
|
20
|
+
set(path, value) {
|
|
21
|
+
this.json = set(path, value, this.json);
|
|
22
|
+
return this;
|
|
23
|
+
}
|
|
24
|
+
remove(path) {
|
|
25
|
+
this.json = omit(path, this.json);
|
|
26
|
+
return this;
|
|
27
|
+
}
|
|
28
|
+
constructor(json){
|
|
29
|
+
this.json = cloneDeep(json);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
const createJSONTransformAPI = (object)=>new JSONTransformAPI(object);
|
|
33
|
+
|
|
34
|
+
export { JSONTransformAPI, createJSONTransformAPI };
|
|
35
|
+
//# sourceMappingURL=transform-api.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform-api.mjs","sources":["../../../../src/modules/json/transform-api.ts"],"sourcesContent":["import { cloneDeep, get, has, set, merge, omit } from 'lodash/fp';\n\nimport type { Utils } from '@strapi/types';\n\nimport type { JSONTransformAPI as JSONTransformAPIInterface } from './types';\n\nexport class JSONTransformAPI implements JSONTransformAPIInterface {\n private json: Utils.JSONObject;\n\n constructor(json: Utils.JSONObject) {\n this.json = cloneDeep(json);\n }\n\n get<T extends Utils.JSONValue>(path: string): T | undefined;\n get<T extends Utils.JSONValue>(path: string, defaultValue: T): T;\n get<T extends Utils.JSONValue>(path?: string, defaultValue?: T) {\n if (!path) {\n return this.root() as T;\n }\n\n return cloneDeep(get(path, this.json) ?? defaultValue) as T;\n }\n\n has(path: string) {\n return has(path, this.json);\n }\n\n merge(other: Utils.JSONObject) {\n this.json = merge(other, this.json);\n\n return this;\n }\n\n root(): Utils.JSONObject {\n return cloneDeep(this.json);\n }\n\n set(path: string, value: Utils.JSONValue) {\n this.json = set(path, value, this.json);\n\n return this;\n }\n\n remove(path: string) {\n this.json = omit(path, this.json);\n return this;\n }\n}\n\nexport const createJSONTransformAPI = (object: Utils.JSONObject) => new JSONTransformAPI(object);\n"],"names":["JSONTransformAPI","get","path","defaultValue","root","cloneDeep","json","has","merge","other","set","value","remove","omit","constructor","createJSONTransformAPI","object"],"mappings":";;AAMO,MAAMA,gBAAAA,CAAAA;IASXC,GAA+BC,CAAAA,IAAa,EAAEC,YAAgB,EAAE;AAC9D,QAAA,IAAI,CAACD,IAAM,EAAA;YACT,OAAO,IAAI,CAACE,IAAI,EAAA;AAClB;AAEA,QAAA,OAAOC,UAAUJ,GAAIC,CAAAA,IAAAA,EAAM,IAAI,CAACI,IAAI,CAAKH,IAAAA,YAAAA,CAAAA;AAC3C;AAEAI,IAAAA,GAAAA,CAAIL,IAAY,EAAE;AAChB,QAAA,OAAOK,GAAIL,CAAAA,IAAAA,EAAM,IAAI,CAACI,IAAI,CAAA;AAC5B;AAEAE,IAAAA,KAAAA,CAAMC,KAAuB,EAAE;AAC7B,QAAA,IAAI,CAACH,IAAI,GAAGE,MAAMC,KAAO,EAAA,IAAI,CAACH,IAAI,CAAA;AAElC,QAAA,OAAO,IAAI;AACb;IAEAF,IAAyB,GAAA;QACvB,OAAOC,SAAAA,CAAU,IAAI,CAACC,IAAI,CAAA;AAC5B;IAEAI,GAAIR,CAAAA,IAAY,EAAES,KAAsB,EAAE;QACxC,IAAI,CAACL,IAAI,GAAGI,GAAAA,CAAIR,MAAMS,KAAO,EAAA,IAAI,CAACL,IAAI,CAAA;AAEtC,QAAA,OAAO,IAAI;AACb;AAEAM,IAAAA,MAAAA,CAAOV,IAAY,EAAE;AACnB,QAAA,IAAI,CAACI,IAAI,GAAGO,KAAKX,IAAM,EAAA,IAAI,CAACI,IAAI,CAAA;AAChC,QAAA,OAAO,IAAI;AACb;AArCAQ,IAAAA,WAAAA,CAAYR,IAAsB,CAAE;QAClC,IAAI,CAACA,IAAI,GAAGD,SAAUC,CAAAA,IAAAA,CAAAA;AACxB;AAoCF;MAEaS,sBAAyB,GAAA,CAACC,MAA6B,GAAA,IAAIhB,iBAAiBgB,MAAQ;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chalk = require('chalk');
|
|
4
|
+
|
|
5
|
+
class Logger {
|
|
6
|
+
get isNotSilent() {
|
|
7
|
+
return !this.isSilent;
|
|
8
|
+
}
|
|
9
|
+
get errors() {
|
|
10
|
+
return this.nbErrorsCalls;
|
|
11
|
+
}
|
|
12
|
+
get warnings() {
|
|
13
|
+
return this.nbWarningsCalls;
|
|
14
|
+
}
|
|
15
|
+
get stdout() {
|
|
16
|
+
return this.isSilent ? undefined : process.stdout;
|
|
17
|
+
}
|
|
18
|
+
get stderr() {
|
|
19
|
+
return this.isSilent ? undefined : process.stderr;
|
|
20
|
+
}
|
|
21
|
+
setDebug(debug) {
|
|
22
|
+
this.isDebug = debug;
|
|
23
|
+
return this;
|
|
24
|
+
}
|
|
25
|
+
setSilent(silent) {
|
|
26
|
+
this.isSilent = silent;
|
|
27
|
+
return this;
|
|
28
|
+
}
|
|
29
|
+
debug(...args) {
|
|
30
|
+
const isDebugEnabled = this.isNotSilent && this.isDebug;
|
|
31
|
+
if (isDebugEnabled) {
|
|
32
|
+
console.log(chalk.cyan(`[DEBUG]\t[${nowAsISO()}]`), ...args);
|
|
33
|
+
}
|
|
34
|
+
return this;
|
|
35
|
+
}
|
|
36
|
+
error(...args) {
|
|
37
|
+
this.nbErrorsCalls += 1;
|
|
38
|
+
if (this.isNotSilent) {
|
|
39
|
+
console.error(chalk.red(`[ERROR]\t[${nowAsISO()}]`), ...args);
|
|
40
|
+
}
|
|
41
|
+
return this;
|
|
42
|
+
}
|
|
43
|
+
info(...args) {
|
|
44
|
+
if (this.isNotSilent) {
|
|
45
|
+
console.info(chalk.blue(`[INFO]\t[${new Date().toISOString()}]`), ...args);
|
|
46
|
+
}
|
|
47
|
+
return this;
|
|
48
|
+
}
|
|
49
|
+
raw(...args) {
|
|
50
|
+
if (this.isNotSilent) {
|
|
51
|
+
console.log(...args);
|
|
52
|
+
}
|
|
53
|
+
return this;
|
|
54
|
+
}
|
|
55
|
+
warn(...args) {
|
|
56
|
+
this.nbWarningsCalls += 1;
|
|
57
|
+
if (this.isNotSilent) {
|
|
58
|
+
console.warn(chalk.yellow(`[WARN]\t[${new Date().toISOString()}]`), ...args);
|
|
59
|
+
}
|
|
60
|
+
return this;
|
|
61
|
+
}
|
|
62
|
+
constructor(options = {}){
|
|
63
|
+
// Set verbosity options
|
|
64
|
+
this.isDebug = options.debug ?? false;
|
|
65
|
+
this.isSilent = options.silent ?? false;
|
|
66
|
+
// Initialize counters
|
|
67
|
+
this.nbErrorsCalls = 0;
|
|
68
|
+
this.nbWarningsCalls = 0;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
const nowAsISO = ()=>new Date().toISOString();
|
|
72
|
+
const loggerFactory = (options = {})=>new Logger(options);
|
|
73
|
+
|
|
74
|
+
exports.Logger = Logger;
|
|
75
|
+
exports.loggerFactory = loggerFactory;
|
|
76
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sources":["../../../../src/modules/logger/logger.ts"],"sourcesContent":["import chalk from 'chalk';\n\nimport type { Logger as LoggerInterface, LoggerOptions } from './types';\n\nexport class Logger implements LoggerInterface {\n isDebug: boolean;\n\n isSilent: boolean;\n\n private nbErrorsCalls: number;\n\n private nbWarningsCalls: number;\n\n constructor(options: LoggerOptions = {}) {\n // Set verbosity options\n this.isDebug = options.debug ?? false;\n this.isSilent = options.silent ?? false;\n\n // Initialize counters\n this.nbErrorsCalls = 0;\n this.nbWarningsCalls = 0;\n }\n\n private get isNotSilent(): boolean {\n return !this.isSilent;\n }\n\n get errors(): number {\n return this.nbErrorsCalls;\n }\n\n get warnings(): number {\n return this.nbWarningsCalls;\n }\n\n get stdout(): (NodeJS.WriteStream & { fd: 1 }) | undefined {\n return this.isSilent ? undefined : process.stdout;\n }\n\n get stderr(): (NodeJS.WriteStream & { fd: 2 }) | undefined {\n return this.isSilent ? undefined : process.stderr;\n }\n\n setDebug(debug: boolean): this {\n this.isDebug = debug;\n return this;\n }\n\n setSilent(silent: boolean): this {\n this.isSilent = silent;\n return this;\n }\n\n debug(...args: unknown[]): this {\n const isDebugEnabled = this.isNotSilent && this.isDebug;\n\n if (isDebugEnabled) {\n console.log(chalk.cyan(`[DEBUG]\\t[${nowAsISO()}]`), ...args);\n }\n\n return this;\n }\n\n error(...args: unknown[]): this {\n this.nbErrorsCalls += 1;\n\n if (this.isNotSilent) {\n console.error(chalk.red(`[ERROR]\\t[${nowAsISO()}]`), ...args);\n }\n\n return this;\n }\n\n info(...args: unknown[]): this {\n if (this.isNotSilent) {\n console.info(chalk.blue(`[INFO]\\t[${new Date().toISOString()}]`), ...args);\n }\n\n return this;\n }\n\n raw(...args: unknown[]): this {\n if (this.isNotSilent) {\n console.log(...args);\n }\n\n return this;\n }\n\n warn(...args: unknown[]): this {\n this.nbWarningsCalls += 1;\n\n if (this.isNotSilent) {\n console.warn(chalk.yellow(`[WARN]\\t[${new Date().toISOString()}]`), ...args);\n }\n\n return this;\n }\n}\n\nconst nowAsISO = () => new Date().toISOString();\n\nexport const loggerFactory = (options: LoggerOptions = {}) => new Logger(options);\n"],"names":["Logger","isNotSilent","isSilent","errors","nbErrorsCalls","warnings","nbWarningsCalls","stdout","undefined","process","stderr","setDebug","debug","isDebug","setSilent","silent","args","isDebugEnabled","console","log","chalk","cyan","nowAsISO","error","red","info","blue","Date","toISOString","raw","warn","yellow","constructor","options","loggerFactory"],"mappings":"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"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import chalk from 'chalk';
|
|
2
|
+
|
|
3
|
+
class Logger {
|
|
4
|
+
get isNotSilent() {
|
|
5
|
+
return !this.isSilent;
|
|
6
|
+
}
|
|
7
|
+
get errors() {
|
|
8
|
+
return this.nbErrorsCalls;
|
|
9
|
+
}
|
|
10
|
+
get warnings() {
|
|
11
|
+
return this.nbWarningsCalls;
|
|
12
|
+
}
|
|
13
|
+
get stdout() {
|
|
14
|
+
return this.isSilent ? undefined : process.stdout;
|
|
15
|
+
}
|
|
16
|
+
get stderr() {
|
|
17
|
+
return this.isSilent ? undefined : process.stderr;
|
|
18
|
+
}
|
|
19
|
+
setDebug(debug) {
|
|
20
|
+
this.isDebug = debug;
|
|
21
|
+
return this;
|
|
22
|
+
}
|
|
23
|
+
setSilent(silent) {
|
|
24
|
+
this.isSilent = silent;
|
|
25
|
+
return this;
|
|
26
|
+
}
|
|
27
|
+
debug(...args) {
|
|
28
|
+
const isDebugEnabled = this.isNotSilent && this.isDebug;
|
|
29
|
+
if (isDebugEnabled) {
|
|
30
|
+
console.log(chalk.cyan(`[DEBUG]\t[${nowAsISO()}]`), ...args);
|
|
31
|
+
}
|
|
32
|
+
return this;
|
|
33
|
+
}
|
|
34
|
+
error(...args) {
|
|
35
|
+
this.nbErrorsCalls += 1;
|
|
36
|
+
if (this.isNotSilent) {
|
|
37
|
+
console.error(chalk.red(`[ERROR]\t[${nowAsISO()}]`), ...args);
|
|
38
|
+
}
|
|
39
|
+
return this;
|
|
40
|
+
}
|
|
41
|
+
info(...args) {
|
|
42
|
+
if (this.isNotSilent) {
|
|
43
|
+
console.info(chalk.blue(`[INFO]\t[${new Date().toISOString()}]`), ...args);
|
|
44
|
+
}
|
|
45
|
+
return this;
|
|
46
|
+
}
|
|
47
|
+
raw(...args) {
|
|
48
|
+
if (this.isNotSilent) {
|
|
49
|
+
console.log(...args);
|
|
50
|
+
}
|
|
51
|
+
return this;
|
|
52
|
+
}
|
|
53
|
+
warn(...args) {
|
|
54
|
+
this.nbWarningsCalls += 1;
|
|
55
|
+
if (this.isNotSilent) {
|
|
56
|
+
console.warn(chalk.yellow(`[WARN]\t[${new Date().toISOString()}]`), ...args);
|
|
57
|
+
}
|
|
58
|
+
return this;
|
|
59
|
+
}
|
|
60
|
+
constructor(options = {}){
|
|
61
|
+
// Set verbosity options
|
|
62
|
+
this.isDebug = options.debug ?? false;
|
|
63
|
+
this.isSilent = options.silent ?? false;
|
|
64
|
+
// Initialize counters
|
|
65
|
+
this.nbErrorsCalls = 0;
|
|
66
|
+
this.nbWarningsCalls = 0;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
const nowAsISO = ()=>new Date().toISOString();
|
|
70
|
+
const loggerFactory = (options = {})=>new Logger(options);
|
|
71
|
+
|
|
72
|
+
export { Logger, loggerFactory };
|
|
73
|
+
//# sourceMappingURL=logger.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.mjs","sources":["../../../../src/modules/logger/logger.ts"],"sourcesContent":["import chalk from 'chalk';\n\nimport type { Logger as LoggerInterface, LoggerOptions } from './types';\n\nexport class Logger implements LoggerInterface {\n isDebug: boolean;\n\n isSilent: boolean;\n\n private nbErrorsCalls: number;\n\n private nbWarningsCalls: number;\n\n constructor(options: LoggerOptions = {}) {\n // Set verbosity options\n this.isDebug = options.debug ?? false;\n this.isSilent = options.silent ?? false;\n\n // Initialize counters\n this.nbErrorsCalls = 0;\n this.nbWarningsCalls = 0;\n }\n\n private get isNotSilent(): boolean {\n return !this.isSilent;\n }\n\n get errors(): number {\n return this.nbErrorsCalls;\n }\n\n get warnings(): number {\n return this.nbWarningsCalls;\n }\n\n get stdout(): (NodeJS.WriteStream & { fd: 1 }) | undefined {\n return this.isSilent ? undefined : process.stdout;\n }\n\n get stderr(): (NodeJS.WriteStream & { fd: 2 }) | undefined {\n return this.isSilent ? undefined : process.stderr;\n }\n\n setDebug(debug: boolean): this {\n this.isDebug = debug;\n return this;\n }\n\n setSilent(silent: boolean): this {\n this.isSilent = silent;\n return this;\n }\n\n debug(...args: unknown[]): this {\n const isDebugEnabled = this.isNotSilent && this.isDebug;\n\n if (isDebugEnabled) {\n console.log(chalk.cyan(`[DEBUG]\\t[${nowAsISO()}]`), ...args);\n }\n\n return this;\n }\n\n error(...args: unknown[]): this {\n this.nbErrorsCalls += 1;\n\n if (this.isNotSilent) {\n console.error(chalk.red(`[ERROR]\\t[${nowAsISO()}]`), ...args);\n }\n\n return this;\n }\n\n info(...args: unknown[]): this {\n if (this.isNotSilent) {\n console.info(chalk.blue(`[INFO]\\t[${new Date().toISOString()}]`), ...args);\n }\n\n return this;\n }\n\n raw(...args: unknown[]): this {\n if (this.isNotSilent) {\n console.log(...args);\n }\n\n return this;\n }\n\n warn(...args: unknown[]): this {\n this.nbWarningsCalls += 1;\n\n if (this.isNotSilent) {\n console.warn(chalk.yellow(`[WARN]\\t[${new Date().toISOString()}]`), ...args);\n }\n\n return this;\n }\n}\n\nconst nowAsISO = () => new Date().toISOString();\n\nexport const loggerFactory = (options: LoggerOptions = {}) => new Logger(options);\n"],"names":["Logger","isNotSilent","isSilent","errors","nbErrorsCalls","warnings","nbWarningsCalls","stdout","undefined","process","stderr","setDebug","debug","isDebug","setSilent","silent","args","isDebugEnabled","console","log","chalk","cyan","nowAsISO","error","red","info","blue","Date","toISOString","raw","warn","yellow","constructor","options","loggerFactory"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["../../../../src/modules/npm/constants.ts"],"sourcesContent":["export const NPM_REGISTRY_URL = 'https://registry.npmjs.org';\n"],"names":["NPM_REGISTRY_URL"],"mappings":";;AAAO,MAAMA,mBAAmB;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.mjs","sources":["../../../../src/modules/npm/constants.ts"],"sourcesContent":["export const NPM_REGISTRY_URL = 'https://registry.npmjs.org';\n"],"names":["NPM_REGISTRY_URL"],"mappings":"AAAO,MAAMA,mBAAmB;;;;"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var assert = require('node:assert');
|
|
4
|
+
var semver$1 = require('semver');
|
|
5
|
+
var constants = require('./constants.js');
|
|
6
|
+
var semver = require('../version/semver.js');
|
|
7
|
+
require('../version/types.js');
|
|
8
|
+
|
|
9
|
+
class Package {
|
|
10
|
+
get isLoaded() {
|
|
11
|
+
return this.npmPackage !== null;
|
|
12
|
+
}
|
|
13
|
+
assertPackageIsLoaded(npmPackage) {
|
|
14
|
+
assert(this.isLoaded, 'The package is not loaded yet');
|
|
15
|
+
}
|
|
16
|
+
getVersionsDict() {
|
|
17
|
+
this.assertPackageIsLoaded(this.npmPackage);
|
|
18
|
+
return this.npmPackage.versions;
|
|
19
|
+
}
|
|
20
|
+
getVersionsAsList() {
|
|
21
|
+
this.assertPackageIsLoaded(this.npmPackage);
|
|
22
|
+
return Object.values(this.npmPackage.versions);
|
|
23
|
+
}
|
|
24
|
+
findVersionsInRange(range) {
|
|
25
|
+
const versions = this.getVersionsAsList();
|
|
26
|
+
return versions// Only select versions matching the upgrade range
|
|
27
|
+
.filter((v)=>range.test(v.version))// Only select supported version format (x.x.x)
|
|
28
|
+
.filter((v)=>semver.isLiteralSemVer(v.version))// Sort in ascending order
|
|
29
|
+
.sort((v1, v2)=>semver$1.compare(v1.version, v2.version));
|
|
30
|
+
}
|
|
31
|
+
findVersion(version) {
|
|
32
|
+
const versions = this.getVersionsAsList();
|
|
33
|
+
return versions.find((npmVersion)=>semver$1.eq(npmVersion.version, version));
|
|
34
|
+
}
|
|
35
|
+
async refresh() {
|
|
36
|
+
const response = await fetch(this.packageURL);
|
|
37
|
+
// TODO: Use a validation library to make sure the response structure is correct
|
|
38
|
+
assert(response.ok, `Request failed for ${this.packageURL}`);
|
|
39
|
+
this.npmPackage = await response.json();
|
|
40
|
+
return this;
|
|
41
|
+
}
|
|
42
|
+
versionExists(version) {
|
|
43
|
+
return this.findVersion(version) !== undefined;
|
|
44
|
+
}
|
|
45
|
+
constructor(name){
|
|
46
|
+
this.name = name;
|
|
47
|
+
this.packageURL = `${constants.NPM_REGISTRY_URL}/${name}`;
|
|
48
|
+
this.npmPackage = null;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
const npmPackageFactory = (name)=>new Package(name);
|
|
52
|
+
|
|
53
|
+
exports.Package = Package;
|
|
54
|
+
exports.npmPackageFactory = npmPackageFactory;
|
|
55
|
+
//# sourceMappingURL=package.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"package.js","sources":["../../../../src/modules/npm/package.ts"],"sourcesContent":["import assert from 'node:assert';\nimport semver from 'semver';\n\nimport * as constants from './constants';\nimport { isLiteralSemVer } from '../version';\n\nimport type { Package as PackageInterface, NPMPackage, NPMPackageVersion } from './types';\nimport type { Version } from '../version';\n\nexport class Package implements PackageInterface {\n name: string;\n\n packageURL: string;\n\n private npmPackage: NPMPackage | null;\n\n constructor(name: string) {\n this.name = name;\n this.packageURL = `${constants.NPM_REGISTRY_URL}/${name}`;\n this.npmPackage = null;\n }\n\n get isLoaded() {\n return this.npmPackage !== null;\n }\n\n private assertPackageIsLoaded(npmPackage: NPMPackage | null): asserts npmPackage is NPMPackage {\n assert(this.isLoaded, 'The package is not loaded yet');\n }\n\n getVersionsDict() {\n this.assertPackageIsLoaded(this.npmPackage);\n\n return this.npmPackage.versions;\n }\n\n getVersionsAsList() {\n this.assertPackageIsLoaded(this.npmPackage);\n\n return Object.values(this.npmPackage.versions);\n }\n\n findVersionsInRange(range: Version.Range) {\n const versions = this.getVersionsAsList();\n\n return (\n versions\n // Only select versions matching the upgrade range\n .filter((v) => range.test(v.version))\n // Only select supported version format (x.x.x)\n .filter((v) => isLiteralSemVer(v.version))\n // Sort in ascending order\n .sort((v1, v2) => semver.compare(v1.version, v2.version))\n );\n }\n\n findVersion(version: Version.SemVer): NPMPackageVersion | undefined {\n const versions = this.getVersionsAsList();\n\n return versions.find((npmVersion) => semver.eq(npmVersion.version, version));\n }\n\n async refresh() {\n const response = await fetch(this.packageURL);\n\n // TODO: Use a validation library to make sure the response structure is correct\n assert(response.ok, `Request failed for ${this.packageURL}`);\n\n this.npmPackage = await response.json();\n\n return this;\n }\n\n versionExists(version: Version.SemVer) {\n return this.findVersion(version) !== undefined;\n }\n}\n\nexport const npmPackageFactory = (name: string) => new Package(name);\n"],"names":["Package","isLoaded","npmPackage","assertPackageIsLoaded","assert","getVersionsDict","versions","getVersionsAsList","Object","values","findVersionsInRange","range","filter","v","test","version","isLiteralSemVer","sort","v1","v2","semver","compare","findVersion","find","npmVersion","eq","refresh","response","fetch","packageURL","ok","json","versionExists","undefined","constructor","name","constants","npmPackageFactory"],"mappings":";;;;;;;;AASO,MAAMA,OAAAA,CAAAA;AAaX,IAAA,IAAIC,QAAW,GAAA;QACb,OAAO,IAAI,CAACC,UAAU,KAAK,IAAA;AAC7B;AAEQC,IAAAA,qBAAAA,CAAsBD,UAA6B,EAAoC;QAC7FE,MAAO,CAAA,IAAI,CAACH,QAAQ,EAAE,+BAAA,CAAA;AACxB;IAEAI,eAAkB,GAAA;AAChB,QAAA,IAAI,CAACF,qBAAqB,CAAC,IAAI,CAACD,UAAU,CAAA;AAE1C,QAAA,OAAO,IAAI,CAACA,UAAU,CAACI,QAAQ;AACjC;IAEAC,iBAAoB,GAAA;AAClB,QAAA,IAAI,CAACJ,qBAAqB,CAAC,IAAI,CAACD,UAAU,CAAA;AAE1C,QAAA,OAAOM,OAAOC,MAAM,CAAC,IAAI,CAACP,UAAU,CAACI,QAAQ,CAAA;AAC/C;AAEAI,IAAAA,mBAAAA,CAAoBC,KAAoB,EAAE;QACxC,MAAML,QAAAA,GAAW,IAAI,CAACC,iBAAiB,EAAA;AAEvC,QAAA,OACED,QACE;SACCM,MAAM,CAAC,CAACC,CAAMF,GAAAA,KAAAA,CAAMG,IAAI,CAACD,CAAAA,CAAEE,OAAO,CAAA,CACnC;AACCH,SAAAA,MAAM,CAAC,CAACC,CAAAA,GAAMG,uBAAgBH,CAAEE,CAAAA,OAAO,EACxC;SACCE,IAAI,CAAC,CAACC,EAAAA,EAAIC,EAAOC,GAAAA,QAAAA,CAAOC,OAAO,CAACH,EAAGH,CAAAA,OAAO,EAAEI,EAAAA,CAAGJ,OAAO,CAAA,CAAA;AAE7D;AAEAO,IAAAA,WAAAA,CAAYP,OAAuB,EAAiC;QAClE,MAAMT,QAAAA,GAAW,IAAI,CAACC,iBAAiB,EAAA;QAEvC,OAAOD,QAAAA,CAASiB,IAAI,CAAC,CAACC,UAAAA,GAAeJ,SAAOK,EAAE,CAACD,UAAWT,CAAAA,OAAO,EAAEA,OAAAA,CAAAA,CAAAA;AACrE;AAEA,IAAA,MAAMW,OAAU,GAAA;AACd,QAAA,MAAMC,QAAW,GAAA,MAAMC,KAAM,CAAA,IAAI,CAACC,UAAU,CAAA;;QAG5CzB,MAAOuB,CAAAA,QAAAA,CAASG,EAAE,EAAE,CAAC,mBAAmB,EAAE,IAAI,CAACD,UAAU,CAAC,CAAC,CAAA;AAE3D,QAAA,IAAI,CAAC3B,UAAU,GAAG,MAAMyB,SAASI,IAAI,EAAA;AAErC,QAAA,OAAO,IAAI;AACb;AAEAC,IAAAA,aAAAA,CAAcjB,OAAuB,EAAE;AACrC,QAAA,OAAO,IAAI,CAACO,WAAW,CAACP,OAAakB,CAAAA,KAAAA,SAAAA;AACvC;AA3DAC,IAAAA,WAAAA,CAAYC,IAAY,CAAE;QACxB,IAAI,CAACA,IAAI,GAAGA,IAAAA;QACZ,IAAI,CAACN,UAAU,GAAG,CAAC,EAAEO,0BAA0B,CAAC,CAAC,EAAED,IAAAA,CAAK,CAAC;QACzD,IAAI,CAACjC,UAAU,GAAG,IAAA;AACpB;AAwDF;MAEamC,iBAAoB,GAAA,CAACF,IAAiB,GAAA,IAAInC,QAAQmC,IAAM;;;;;"}
|