@xylabs/ts-scripts-yarn3 7.4.28 → 7.5.0
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/dist/actions/deploy-major.mjs +1 -90
- package/dist/actions/deploy-major.mjs.map +1 -1
- package/dist/actions/deploy-minor.mjs +1 -90
- package/dist/actions/deploy-minor.mjs.map +1 -1
- package/dist/actions/deploy-next.mjs +1 -90
- package/dist/actions/deploy-next.mjs.map +1 -1
- package/dist/actions/deploy.mjs +1 -90
- package/dist/actions/deploy.mjs.map +1 -1
- package/dist/actions/index.mjs +128 -3840
- package/dist/actions/index.mjs.map +1 -1
- package/dist/actions/publish.mjs +1 -90
- package/dist/actions/publish.mjs.map +1 -1
- package/dist/actions/reinstall.mjs +1 -90
- package/dist/actions/reinstall.mjs.map +1 -1
- package/dist/actions/up.mjs +1 -90
- package/dist/actions/up.mjs.map +1 -1
- package/dist/actions/updo.mjs +1 -90
- package/dist/actions/updo.mjs.map +1 -1
- package/dist/actions/upplug.mjs +1 -90
- package/dist/actions/upplug.mjs.map +1 -1
- package/dist/actions/upyarn.mjs +1 -90
- package/dist/actions/upyarn.mjs.map +1 -1
- package/dist/actions/yarn3only.mjs +2 -32
- package/dist/actions/yarn3only.mjs.map +1 -1
- package/dist/bin/xy.mjs +222 -3684
- package/dist/bin/xy.mjs.map +1 -1
- package/dist/index.d.ts +24 -502
- package/dist/index.mjs +224 -4659
- package/dist/index.mjs.map +1 -1
- package/dist/lib/index.mjs +0 -804
- package/dist/lib/index.mjs.map +1 -1
- package/dist/lib/yarn/index.mjs +0 -7
- package/dist/lib/yarn/index.mjs.map +1 -1
- package/dist/pm/index.mjs +82 -0
- package/dist/pm/index.mjs.map +1 -0
- package/dist/pm/yarnPackageManager.mjs +82 -0
- package/dist/pm/yarnPackageManager.mjs.map +1 -0
- package/dist/xy/common/index.mjs +7 -1459
- package/dist/xy/common/index.mjs.map +1 -1
- package/dist/xy/common/upplugCommand.mjs +1 -90
- package/dist/xy/common/upplugCommand.mjs.map +1 -1
- package/dist/xy/common/upyarnCommand.mjs +1 -90
- package/dist/xy/common/upyarnCommand.mjs.map +1 -1
- package/dist/xy/common/yarn3OnlyCommand.mjs +1 -33
- package/dist/xy/common/yarn3OnlyCommand.mjs.map +1 -1
- package/dist/xy/deploy/deployCommand.mjs +3 -90
- package/dist/xy/deploy/deployCommand.mjs.map +1 -1
- package/dist/xy/deploy/deployMajorCommand.mjs +1 -90
- package/dist/xy/deploy/deployMajorCommand.mjs.map +1 -1
- package/dist/xy/deploy/deployMinorCommand.mjs +1 -90
- package/dist/xy/deploy/deployMinorCommand.mjs.map +1 -1
- package/dist/xy/deploy/deployNextCommand.mjs +1 -90
- package/dist/xy/deploy/deployNextCommand.mjs.map +1 -1
- package/dist/xy/deploy/index.mjs +11 -94
- package/dist/xy/deploy/index.mjs.map +1 -1
- package/dist/xy/deploy/publishCommand.mjs +1 -90
- package/dist/xy/deploy/publishCommand.mjs.map +1 -1
- package/dist/xy/index.mjs +183 -3717
- package/dist/xy/index.mjs.map +1 -1
- package/dist/xy/install/cleanCommand.mjs +6 -118
- package/dist/xy/install/cleanCommand.mjs.map +1 -1
- package/dist/xy/install/dupdepsCommand.mjs +6 -178
- package/dist/xy/install/dupdepsCommand.mjs.map +1 -1
- package/dist/xy/install/index.mjs +12 -305
- package/dist/xy/install/index.mjs.map +1 -1
- package/dist/xy/install/reinstallCommand.mjs +1 -90
- package/dist/xy/install/reinstallCommand.mjs.map +1 -1
- package/dist/xy/install/staticsCommand.mjs +6 -177
- package/dist/xy/install/staticsCommand.mjs.map +1 -1
- package/dist/xy/install/upCommand.mjs +1 -90
- package/dist/xy/install/upCommand.mjs.map +1 -1
- package/dist/xy/install/updoCommand.mjs +1 -90
- package/dist/xy/install/updoCommand.mjs.map +1 -1
- package/dist/xy/xy.mjs +64 -3595
- package/dist/xy/xy.mjs.map +1 -1
- package/dist/xy/yarnCommands.mjs +80 -0
- package/dist/xy/yarnCommands.mjs.map +1 -0
- package/package.json +5 -47
- package/dist/actions/build.mjs +0 -140
- package/dist/actions/build.mjs.map +0 -1
- package/dist/actions/claude-clean.mjs +0 -71
- package/dist/actions/claude-clean.mjs.map +0 -1
- package/dist/actions/claude-commands.mjs +0 -112
- package/dist/actions/claude-commands.mjs.map +0 -1
- package/dist/actions/claude-rules.mjs +0 -137
- package/dist/actions/claude-rules.mjs.map +0 -1
- package/dist/actions/claude-settings.mjs +0 -85
- package/dist/actions/claude-settings.mjs.map +0 -1
- package/dist/actions/claude-skills.mjs +0 -120
- package/dist/actions/claude-skills.mjs.map +0 -1
- package/dist/actions/clean-docs.mjs +0 -37
- package/dist/actions/clean-docs.mjs.map +0 -1
- package/dist/actions/clean-eslint.mjs +0 -26
- package/dist/actions/clean-eslint.mjs.map +0 -1
- package/dist/actions/clean.mjs +0 -124
- package/dist/actions/clean.mjs.map +0 -1
- package/dist/actions/compile.mjs +0 -157
- package/dist/actions/compile.mjs.map +0 -1
- package/dist/actions/copy-assets.mjs +0 -73
- package/dist/actions/copy-assets.mjs.map +0 -1
- package/dist/actions/cycle.mjs +0 -144
- package/dist/actions/cycle.mjs.map +0 -1
- package/dist/actions/dead.mjs +0 -98
- package/dist/actions/dead.mjs.map +0 -1
- package/dist/actions/deplint/checkPackage/checkPackage.mjs +0 -672
- package/dist/actions/deplint/checkPackage/checkPackage.mjs.map +0 -1
- package/dist/actions/deplint/checkPackage/checkPackageTypes.mjs +0 -1
- package/dist/actions/deplint/checkPackage/checkPackageTypes.mjs.map +0 -1
- package/dist/actions/deplint/checkPackage/getUnlistedDependencies.mjs +0 -48
- package/dist/actions/deplint/checkPackage/getUnlistedDependencies.mjs.map +0 -1
- package/dist/actions/deplint/checkPackage/getUnlistedDevDependencies.mjs +0 -33
- package/dist/actions/deplint/checkPackage/getUnlistedDevDependencies.mjs.map +0 -1
- package/dist/actions/deplint/checkPackage/getUnusedDependencies.mjs +0 -30
- package/dist/actions/deplint/checkPackage/getUnusedDependencies.mjs.map +0 -1
- package/dist/actions/deplint/checkPackage/getUnusedDevDependencies.mjs +0 -309
- package/dist/actions/deplint/checkPackage/getUnusedDevDependencies.mjs.map +0 -1
- package/dist/actions/deplint/checkPackage/getUnusedPeerDependencies.mjs +0 -26
- package/dist/actions/deplint/checkPackage/getUnusedPeerDependencies.mjs.map +0 -1
- package/dist/actions/deplint/checkPackage/index.mjs +0 -672
- package/dist/actions/deplint/checkPackage/index.mjs.map +0 -1
- package/dist/actions/deplint/deplint.mjs +0 -764
- package/dist/actions/deplint/deplint.mjs.map +0 -1
- package/dist/actions/deplint/findFiles.mjs +0 -39
- package/dist/actions/deplint/findFiles.mjs.map +0 -1
- package/dist/actions/deplint/findFilesByGlob.mjs +0 -14
- package/dist/actions/deplint/findFilesByGlob.mjs.map +0 -1
- package/dist/actions/deplint/getBasePackageName.mjs +0 -13
- package/dist/actions/deplint/getBasePackageName.mjs.map +0 -1
- package/dist/actions/deplint/getCliReferencedPackagesFromFiles.mjs +0 -140
- package/dist/actions/deplint/getCliReferencedPackagesFromFiles.mjs.map +0 -1
- package/dist/actions/deplint/getDependenciesFromPackageJson.mjs +0 -20
- package/dist/actions/deplint/getDependenciesFromPackageJson.mjs.map +0 -1
- package/dist/actions/deplint/getExtendsFromTsconfigs.mjs +0 -44
- package/dist/actions/deplint/getExtendsFromTsconfigs.mjs.map +0 -1
- package/dist/actions/deplint/getExternalImportsFromFiles.mjs +0 -122
- package/dist/actions/deplint/getExternalImportsFromFiles.mjs.map +0 -1
- package/dist/actions/deplint/getImportsFromFile.mjs +0 -85
- package/dist/actions/deplint/getImportsFromFile.mjs.map +0 -1
- package/dist/actions/deplint/getRequiredPeerDependencies.mjs +0 -36
- package/dist/actions/deplint/getRequiredPeerDependencies.mjs.map +0 -1
- package/dist/actions/deplint/getScriptReferencedPackages.mjs +0 -83
- package/dist/actions/deplint/getScriptReferencedPackages.mjs.map +0 -1
- package/dist/actions/deplint/implicitDevDependencies.mjs +0 -80
- package/dist/actions/deplint/implicitDevDependencies.mjs.map +0 -1
- package/dist/actions/deplint/index.mjs +0 -764
- package/dist/actions/deplint/index.mjs.map +0 -1
- package/dist/actions/dupdeps.mjs +0 -184
- package/dist/actions/dupdeps.mjs.map +0 -1
- package/dist/actions/fix.mjs +0 -147
- package/dist/actions/fix.mjs.map +0 -1
- package/dist/actions/gen-docs.mjs +0 -109
- package/dist/actions/gen-docs.mjs.map +0 -1
- package/dist/actions/gitignore.mjs +0 -152
- package/dist/actions/gitignore.mjs.map +0 -1
- package/dist/actions/gitlint-fix.mjs +0 -27
- package/dist/actions/gitlint-fix.mjs.map +0 -1
- package/dist/actions/gitlint.mjs +0 -48
- package/dist/actions/gitlint.mjs.map +0 -1
- package/dist/actions/knip.mjs +0 -98
- package/dist/actions/knip.mjs.map +0 -1
- package/dist/actions/license.mjs +0 -84
- package/dist/actions/license.mjs.map +0 -1
- package/dist/actions/lint.mjs +0 -144
- package/dist/actions/lint.mjs.map +0 -1
- package/dist/actions/lintlint.mjs +0 -230
- package/dist/actions/lintlint.mjs.map +0 -1
- package/dist/actions/npmignore-gen.mjs +0 -88
- package/dist/actions/npmignore-gen.mjs.map +0 -1
- package/dist/actions/package/clean-outputs.mjs +0 -29
- package/dist/actions/package/clean-outputs.mjs.map +0 -1
- package/dist/actions/package/clean-typescript.mjs +0 -29
- package/dist/actions/package/clean-typescript.mjs.map +0 -1
- package/dist/actions/package/clean.mjs +0 -48
- package/dist/actions/package/clean.mjs.map +0 -1
- package/dist/actions/package/compile/XyConfig.mjs +0 -1
- package/dist/actions/package/compile/XyConfig.mjs.map +0 -1
- package/dist/actions/package/compile/buildEntries.mjs +0 -53
- package/dist/actions/package/compile/buildEntries.mjs.map +0 -1
- package/dist/actions/package/compile/compile.mjs +0 -433
- package/dist/actions/package/compile/compile.mjs.map +0 -1
- package/dist/actions/package/compile/copyTypeFiles.mjs +0 -34
- package/dist/actions/package/compile/copyTypeFiles.mjs.map +0 -1
- package/dist/actions/package/compile/deepMerge.mjs +0 -26
- package/dist/actions/package/compile/deepMerge.mjs.map +0 -1
- package/dist/actions/package/compile/getCompilerOptions.mjs +0 -12
- package/dist/actions/package/compile/getCompilerOptions.mjs.map +0 -1
- package/dist/actions/package/compile/index.mjs +0 -436
- package/dist/actions/package/compile/index.mjs.map +0 -1
- package/dist/actions/package/compile/inputs.mjs +0 -22
- package/dist/actions/package/compile/inputs.mjs.map +0 -1
- package/dist/actions/package/compile/packageCompileTsc.mjs +0 -94
- package/dist/actions/package/compile/packageCompileTsc.mjs.map +0 -1
- package/dist/actions/package/compile/packageCompileTscTypes.mjs +0 -92
- package/dist/actions/package/compile/packageCompileTscTypes.mjs.map +0 -1
- package/dist/actions/package/compile/packageCompileTsup.mjs +0 -402
- package/dist/actions/package/compile/packageCompileTsup.mjs.map +0 -1
- package/dist/actions/package/copy-assets.mjs +0 -46
- package/dist/actions/package/copy-assets.mjs.map +0 -1
- package/dist/actions/package/cycle.mjs +0 -39
- package/dist/actions/package/cycle.mjs.map +0 -1
- package/dist/actions/package/gen-docs.mjs +0 -114
- package/dist/actions/package/gen-docs.mjs.map +0 -1
- package/dist/actions/package/index.mjs +0 -825
- package/dist/actions/package/index.mjs.map +0 -1
- package/dist/actions/package/lint.mjs +0 -80
- package/dist/actions/package/lint.mjs.map +0 -1
- package/dist/actions/package/publint.mjs +0 -66
- package/dist/actions/package/publint.mjs.map +0 -1
- package/dist/actions/package/recompile.mjs +0 -483
- package/dist/actions/package/recompile.mjs.map +0 -1
- package/dist/actions/package-lint.mjs +0 -178
- package/dist/actions/package-lint.mjs.map +0 -1
- package/dist/actions/publint.mjs +0 -166
- package/dist/actions/publint.mjs.map +0 -1
- package/dist/actions/readme-gen.mjs +0 -289
- package/dist/actions/readme-gen.mjs.map +0 -1
- package/dist/actions/readme-init.mjs +0 -83
- package/dist/actions/readme-init.mjs.map +0 -1
- package/dist/actions/rebuild.mjs +0 -101
- package/dist/actions/rebuild.mjs.map +0 -1
- package/dist/actions/recompile.mjs +0 -187
- package/dist/actions/recompile.mjs.map +0 -1
- package/dist/actions/relint.mjs +0 -144
- package/dist/actions/relint.mjs.map +0 -1
- package/dist/actions/retest.mjs +0 -123
- package/dist/actions/retest.mjs.map +0 -1
- package/dist/actions/sonar.mjs +0 -98
- package/dist/actions/sonar.mjs.map +0 -1
- package/dist/actions/statics.mjs +0 -183
- package/dist/actions/statics.mjs.map +0 -1
- package/dist/actions/test.mjs +0 -117
- package/dist/actions/test.mjs.map +0 -1
- package/dist/bin/package/build-only.mjs +0 -445
- package/dist/bin/package/build-only.mjs.map +0 -1
- package/dist/bin/package/build.mjs +0 -445
- package/dist/bin/package/build.mjs.map +0 -1
- package/dist/bin/package/clean-outputs.mjs +0 -29
- package/dist/bin/package/clean-outputs.mjs.map +0 -1
- package/dist/bin/package/clean-typescript.mjs +0 -29
- package/dist/bin/package/clean-typescript.mjs.map +0 -1
- package/dist/bin/package/clean.mjs +0 -53
- package/dist/bin/package/clean.mjs.map +0 -1
- package/dist/bin/package/compile-only.mjs +0 -441
- package/dist/bin/package/compile-only.mjs.map +0 -1
- package/dist/bin/package/compile-tsup.mjs +0 -409
- package/dist/bin/package/compile-tsup.mjs.map +0 -1
- package/dist/bin/package/compile.mjs +0 -445
- package/dist/bin/package/compile.mjs.map +0 -1
- package/dist/bin/package/copy-assets-cjs.mjs +0 -54
- package/dist/bin/package/copy-assets-cjs.mjs.map +0 -1
- package/dist/bin/package/copy-assets-esm.mjs +0 -54
- package/dist/bin/package/copy-assets-esm.mjs.map +0 -1
- package/dist/bin/package/cycle.mjs +0 -51
- package/dist/bin/package/cycle.mjs.map +0 -1
- package/dist/bin/package/fix.mjs +0 -92
- package/dist/bin/package/fix.mjs.map +0 -1
- package/dist/bin/package/gen-docs.mjs +0 -121
- package/dist/bin/package/gen-docs.mjs.map +0 -1
- package/dist/bin/package/lint-verbose.mjs +0 -92
- package/dist/bin/package/lint-verbose.mjs.map +0 -1
- package/dist/bin/package/lint.mjs +0 -92
- package/dist/bin/package/lint.mjs.map +0 -1
- package/dist/bin/package/publint.mjs +0 -75
- package/dist/bin/package/publint.mjs.map +0 -1
- package/dist/bin/package/recompile.mjs +0 -489
- package/dist/bin/package/recompile.mjs.map +0 -1
- package/dist/bin/package/relint.mjs +0 -92
- package/dist/bin/package/relint.mjs.map +0 -1
- package/dist/lib/checkResult.mjs +0 -16
- package/dist/lib/checkResult.mjs.map +0 -1
- package/dist/lib/claudeMdTemplate.mjs +0 -65
- package/dist/lib/claudeMdTemplate.mjs.map +0 -1
- package/dist/lib/createBuildConfig.mjs +0 -55
- package/dist/lib/createBuildConfig.mjs.map +0 -1
- package/dist/lib/defaultBuildConfig.mjs +0 -23
- package/dist/lib/defaultBuildConfig.mjs.map +0 -1
- package/dist/lib/deleteGlob.mjs +0 -13
- package/dist/lib/deleteGlob.mjs.map +0 -1
- package/dist/lib/dependencies/DuplicateDetector.mjs +0 -81
- package/dist/lib/dependencies/DuplicateDetector.mjs.map +0 -1
- package/dist/lib/dependencies/detectDuplicateDependencies.mjs +0 -164
- package/dist/lib/dependencies/detectDuplicateDependencies.mjs.map +0 -1
- package/dist/lib/dependencies/index.mjs +0 -165
- package/dist/lib/dependencies/index.mjs.map +0 -1
- package/dist/lib/file/ReadFileSyncOptions.mjs +0 -6
- package/dist/lib/file/ReadFileSyncOptions.mjs.map +0 -1
- package/dist/lib/file/constants.mjs +0 -8
- package/dist/lib/file/constants.mjs.map +0 -1
- package/dist/lib/file/fileLines.mjs +0 -32
- package/dist/lib/file/fileLines.mjs.map +0 -1
- package/dist/lib/file/index.mjs +0 -42
- package/dist/lib/file/index.mjs.map +0 -1
- package/dist/lib/file/tryReadFileSync.mjs +0 -14
- package/dist/lib/file/tryReadFileSync.mjs.map +0 -1
- package/dist/lib/generateIgnoreFiles.mjs +0 -84
- package/dist/lib/generateIgnoreFiles.mjs.map +0 -1
- package/dist/lib/generateReadmeFiles.mjs +0 -257
- package/dist/lib/generateReadmeFiles.mjs.map +0 -1
- package/dist/lib/gitignoreTemplate.mjs +0 -12
- package/dist/lib/gitignoreTemplate.mjs.map +0 -1
- package/dist/lib/jsonFormatters.mjs +0 -11
- package/dist/lib/jsonFormatters.mjs.map +0 -1
- package/dist/lib/loadConfig.mjs +0 -24
- package/dist/lib/loadConfig.mjs.map +0 -1
- package/dist/lib/parsedPackageJSON.mjs +0 -11
- package/dist/lib/parsedPackageJSON.mjs.map +0 -1
- package/dist/lib/processEx.mjs +0 -36
- package/dist/lib/processEx.mjs.map +0 -1
- package/dist/lib/runSteps.mjs +0 -95
- package/dist/lib/runSteps.mjs.map +0 -1
- package/dist/lib/runStepsAsync.mjs +0 -113
- package/dist/lib/runStepsAsync.mjs.map +0 -1
- package/dist/lib/runXy.mjs +0 -103
- package/dist/lib/runXy.mjs.map +0 -1
- package/dist/lib/runXyWithWarning.mjs +0 -13
- package/dist/lib/runXyWithWarning.mjs.map +0 -1
- package/dist/lib/safeExit.mjs +0 -61
- package/dist/lib/safeExit.mjs.map +0 -1
- package/dist/lib/string/empty.mjs +0 -8
- package/dist/lib/string/empty.mjs.map +0 -1
- package/dist/lib/string/index.mjs +0 -12
- package/dist/lib/string/index.mjs.map +0 -1
- package/dist/lib/string/union.mjs +0 -6
- package/dist/lib/string/union.mjs.map +0 -1
- package/dist/lib/tryRunLocalScript.mjs +0 -33
- package/dist/lib/tryRunLocalScript.mjs.map +0 -1
- package/dist/lib/withErrnoException.mjs +0 -13
- package/dist/lib/withErrnoException.mjs.map +0 -1
- package/dist/lib/withError.mjs +0 -8
- package/dist/lib/withError.mjs.map +0 -1
- package/dist/loadPackageConfig.mjs +0 -11
- package/dist/loadPackageConfig.mjs.map +0 -1
- package/dist/types.d.mjs +0 -1
- package/dist/types.d.mjs.map +0 -1
- package/dist/xy/build/buildCommand.mjs +0 -161
- package/dist/xy/build/buildCommand.mjs.map +0 -1
- package/dist/xy/build/compileCommand.mjs +0 -174
- package/dist/xy/build/compileCommand.mjs.map +0 -1
- package/dist/xy/build/compileOnlyCommand.mjs +0 -175
- package/dist/xy/build/compileOnlyCommand.mjs.map +0 -1
- package/dist/xy/build/copyAssetsCommand.mjs +0 -84
- package/dist/xy/build/copyAssetsCommand.mjs.map +0 -1
- package/dist/xy/build/index.mjs +0 -507
- package/dist/xy/build/index.mjs.map +0 -1
- package/dist/xy/build/rebuildCommand.mjs +0 -114
- package/dist/xy/build/rebuildCommand.mjs.map +0 -1
- package/dist/xy/build/recompileCommand.mjs +0 -204
- package/dist/xy/build/recompileCommand.mjs.map +0 -1
- package/dist/xy/common/claude/cleanCommand.mjs +0 -79
- package/dist/xy/common/claude/cleanCommand.mjs.map +0 -1
- package/dist/xy/common/claude/commandsCommand.mjs +0 -120
- package/dist/xy/common/claude/commandsCommand.mjs.map +0 -1
- package/dist/xy/common/claude/index.mjs +0 -546
- package/dist/xy/common/claude/index.mjs.map +0 -1
- package/dist/xy/common/claude/initCommand.mjs +0 -319
- package/dist/xy/common/claude/initCommand.mjs.map +0 -1
- package/dist/xy/common/claude/rulesCommand.mjs +0 -153
- package/dist/xy/common/claude/rulesCommand.mjs.map +0 -1
- package/dist/xy/common/claude/settingsCommand.mjs +0 -93
- package/dist/xy/common/claude/settingsCommand.mjs.map +0 -1
- package/dist/xy/common/claude/skillsCommand.mjs +0 -129
- package/dist/xy/common/claude/skillsCommand.mjs.map +0 -1
- package/dist/xy/common/cleanDocsCommand.mjs +0 -45
- package/dist/xy/common/cleanDocsCommand.mjs.map +0 -1
- package/dist/xy/common/deadCommand.mjs +0 -116
- package/dist/xy/common/deadCommand.mjs.map +0 -1
- package/dist/xy/common/genDocsCommand.mjs +0 -125
- package/dist/xy/common/genDocsCommand.mjs.map +0 -1
- package/dist/xy/common/gitignoreCommand.mjs +0 -158
- package/dist/xy/common/gitignoreCommand.mjs.map +0 -1
- package/dist/xy/common/gitlintCommand.mjs +0 -82
- package/dist/xy/common/gitlintCommand.mjs.map +0 -1
- package/dist/xy/common/licenseCommand.mjs +0 -100
- package/dist/xy/common/licenseCommand.mjs.map +0 -1
- package/dist/xy/common/npmignoreGenCommand.mjs +0 -98
- package/dist/xy/common/npmignoreGenCommand.mjs.map +0 -1
- package/dist/xy/common/readme/genCommand.mjs +0 -321
- package/dist/xy/common/readme/genCommand.mjs.map +0 -1
- package/dist/xy/common/readme/index.mjs +0 -361
- package/dist/xy/common/readme/index.mjs.map +0 -1
- package/dist/xy/common/readme/initCommand.mjs +0 -103
- package/dist/xy/common/readme/initCommand.mjs.map +0 -1
- package/dist/xy/common/retestCommand.mjs +0 -136
- package/dist/xy/common/retestCommand.mjs.map +0 -1
- package/dist/xy/common/testCommand.mjs +0 -130
- package/dist/xy/common/testCommand.mjs.map +0 -1
- package/dist/xy/lint/cycleCommand.mjs +0 -163
- package/dist/xy/lint/cycleCommand.mjs.map +0 -1
- package/dist/xy/lint/deplintCommand.mjs +0 -814
- package/dist/xy/lint/deplintCommand.mjs.map +0 -1
- package/dist/xy/lint/fixCommand.mjs +0 -168
- package/dist/xy/lint/fixCommand.mjs.map +0 -1
- package/dist/xy/lint/index.mjs +0 -1691
- package/dist/xy/lint/index.mjs.map +0 -1
- package/dist/xy/lint/knipCommand.mjs +0 -121
- package/dist/xy/lint/knipCommand.mjs.map +0 -1
- package/dist/xy/lint/lintCommand.mjs +0 -186
- package/dist/xy/lint/lintCommand.mjs.map +0 -1
- package/dist/xy/lint/lintlintCommand.mjs +0 -250
- package/dist/xy/lint/lintlintCommand.mjs.map +0 -1
- package/dist/xy/lint/packageLintCommand.mjs +0 -193
- package/dist/xy/lint/packageLintCommand.mjs.map +0 -1
- package/dist/xy/lint/publintCommand.mjs +0 -187
- package/dist/xy/lint/publintCommand.mjs.map +0 -1
- package/dist/xy/lint/relintCommand.mjs +0 -163
- package/dist/xy/lint/relintCommand.mjs.map +0 -1
- package/dist/xy/lint/sonarCommand.mjs +0 -121
- package/dist/xy/lint/sonarCommand.mjs.map +0 -1
- package/dist/xy/param.mjs +0 -8
- package/dist/xy/param.mjs.map +0 -1
- package/dist/xy/xyParseOptions.mjs +0 -70
- package/dist/xy/xyParseOptions.mjs.map +0 -1
|
@@ -1,445 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
// src/bin/package/build-only.ts
|
|
4
|
-
import chalk7 from "chalk";
|
|
5
|
-
|
|
6
|
-
// src/lib/loadConfig.ts
|
|
7
|
-
import chalk from "chalk";
|
|
8
|
-
import { cosmiconfig } from "cosmiconfig";
|
|
9
|
-
import { TypeScriptLoader } from "cosmiconfig-typescript-loader";
|
|
10
|
-
import deepmerge from "deepmerge";
|
|
11
|
-
var config;
|
|
12
|
-
var loadConfig = async (params) => {
|
|
13
|
-
if (config === void 0) {
|
|
14
|
-
const cosmicConfigResult = await cosmiconfig("xy", { cache: true, loaders: { ".ts": TypeScriptLoader() } }).search();
|
|
15
|
-
config = cosmicConfigResult?.config;
|
|
16
|
-
const configFilePath = cosmicConfigResult?.filepath;
|
|
17
|
-
if (configFilePath !== void 0) {
|
|
18
|
-
console.log(chalk.green(`Loaded config from ${configFilePath}`));
|
|
19
|
-
if (config.verbose) {
|
|
20
|
-
console.log(chalk.gray(`${JSON.stringify(config, null, 2)}`));
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
return deepmerge(config, params ?? {});
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
// src/actions/package/compile/compile.ts
|
|
28
|
-
import chalk6 from "chalk";
|
|
29
|
-
|
|
30
|
-
// src/actions/package/compile/packageCompileTsup.ts
|
|
31
|
-
import chalk5 from "chalk";
|
|
32
|
-
import { build, defineConfig } from "tsup";
|
|
33
|
-
|
|
34
|
-
// src/actions/package/compile/inputs.ts
|
|
35
|
-
import chalk2 from "chalk";
|
|
36
|
-
import { glob } from "glob";
|
|
37
|
-
var getAllInputs = (srcDir, verbose = false) => {
|
|
38
|
-
return [...glob.sync(`${srcDir}/**/*.ts`, { posix: true }).map((file) => {
|
|
39
|
-
const result = file.slice(Math.max(0, srcDir.length + 1));
|
|
40
|
-
if (verbose) {
|
|
41
|
-
console.log(chalk2.gray(`getAllInputs: ${JSON.stringify(result, null, 2)}`));
|
|
42
|
-
}
|
|
43
|
-
return result;
|
|
44
|
-
}), ...glob.sync(`${srcDir}/**/*.tsx`, { posix: true }).map((file) => {
|
|
45
|
-
const result = file.slice(Math.max(0, srcDir.length + 1));
|
|
46
|
-
if (verbose) {
|
|
47
|
-
console.log(chalk2.gray(`getAllInputs: ${JSON.stringify(result, null, 2)}`));
|
|
48
|
-
}
|
|
49
|
-
return result;
|
|
50
|
-
})];
|
|
51
|
-
};
|
|
52
|
-
|
|
53
|
-
// src/actions/package/compile/buildEntries.ts
|
|
54
|
-
var isSpecOrStory = (entry) => {
|
|
55
|
-
return entry.includes(".spec.") || entry.includes(".stories.") || entry.startsWith("spec/") || entry.includes("/spec/") || entry.startsWith("stories/") || entry.includes("/stories/") || entry === "spec.ts" || entry.endsWith("/spec.ts") || entry === "stories.ts" || entry.endsWith("/stories.ts");
|
|
56
|
-
};
|
|
57
|
-
var buildEntries = (srcDir, entryMode = "single", options, excludeSpecAndStories = true, verbose = false) => {
|
|
58
|
-
let entries = [];
|
|
59
|
-
switch (entryMode) {
|
|
60
|
-
case "platform": {
|
|
61
|
-
entries = ["index-node.ts", "index-browser.ts"];
|
|
62
|
-
break;
|
|
63
|
-
}
|
|
64
|
-
case "all": {
|
|
65
|
-
entries = (excludeSpecAndStories ? getAllInputs(srcDir).filter((entry) => !isSpecOrStory(entry)) : getAllInputs(srcDir)).filter((entry) => !entry.endsWith(".d.ts"));
|
|
66
|
-
break;
|
|
67
|
-
}
|
|
68
|
-
case "custom": {
|
|
69
|
-
entries = [];
|
|
70
|
-
break;
|
|
71
|
-
}
|
|
72
|
-
default: {
|
|
73
|
-
entries = ["index.ts"];
|
|
74
|
-
break;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
if (typeof options !== "boolean" && Array.isArray(options?.entry)) {
|
|
78
|
-
entries.push(...options.entry);
|
|
79
|
-
}
|
|
80
|
-
if (verbose) console.log(`buildEntries [${entryMode}] ${entries.length}`);
|
|
81
|
-
return entries;
|
|
82
|
-
};
|
|
83
|
-
|
|
84
|
-
// src/actions/package/compile/deepMerge.ts
|
|
85
|
-
function deepMerge(target, source) {
|
|
86
|
-
if (!source || typeof source !== "object") return target;
|
|
87
|
-
for (const key of Object.keys(source)) {
|
|
88
|
-
if (typeof source[key] === "object" && source[key] !== null && !Array.isArray(source[key])) {
|
|
89
|
-
if (!target[key] || typeof target[key] !== "object") {
|
|
90
|
-
target[key] = {};
|
|
91
|
-
}
|
|
92
|
-
deepMerge(target[key], source[key]);
|
|
93
|
-
} else {
|
|
94
|
-
target[key] = source[key];
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
return target;
|
|
98
|
-
}
|
|
99
|
-
function deepMergeObjects(objects) {
|
|
100
|
-
const result = {};
|
|
101
|
-
for (const obj of objects) {
|
|
102
|
-
deepMerge(result, obj);
|
|
103
|
-
}
|
|
104
|
-
return result;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
// src/actions/package/compile/packageCompileTsc.ts
|
|
108
|
-
import { cwd as cwd2 } from "process";
|
|
109
|
-
import chalk3 from "chalk";
|
|
110
|
-
import { createProgramFromConfig } from "tsc-prog";
|
|
111
|
-
import ts, {
|
|
112
|
-
DiagnosticCategory,
|
|
113
|
-
formatDiagnosticsWithColorAndContext,
|
|
114
|
-
getPreEmitDiagnostics,
|
|
115
|
-
sys
|
|
116
|
-
} from "typescript";
|
|
117
|
-
|
|
118
|
-
// src/actions/package/compile/getCompilerOptions.ts
|
|
119
|
-
import { cwd } from "process";
|
|
120
|
-
import deepmerge2 from "deepmerge";
|
|
121
|
-
import { getTsconfig } from "get-tsconfig";
|
|
122
|
-
var getCompilerOptions = (options = {}, fileName = "tsconfig.json") => {
|
|
123
|
-
const resolvedTsConfigCompilerOptions = getTsconfig(cwd(), fileName)?.config?.compilerOptions ?? {};
|
|
124
|
-
return deepmerge2(resolvedTsConfigCompilerOptions, options);
|
|
125
|
-
};
|
|
126
|
-
|
|
127
|
-
// src/actions/package/compile/packageCompileTsc.ts
|
|
128
|
-
var packageCompileTsc = (platform, entries, srcDir = "src", outDir = "dist", compilerOptionsParam, verbose = false) => {
|
|
129
|
-
const pkg = process.env.INIT_CWD ?? cwd2();
|
|
130
|
-
if (verbose) {
|
|
131
|
-
console.log(chalk3.cyan(`Validating code START: ${entries.length} files to ${outDir} from ${srcDir}`));
|
|
132
|
-
}
|
|
133
|
-
const configFilePath = ts.findConfigFile(
|
|
134
|
-
"./",
|
|
135
|
-
// search path
|
|
136
|
-
ts.sys.fileExists,
|
|
137
|
-
"tsconfig.json"
|
|
138
|
-
);
|
|
139
|
-
if (configFilePath === void 0) {
|
|
140
|
-
throw new Error("Could not find tsconfig.json");
|
|
141
|
-
}
|
|
142
|
-
const compilerOptions = {
|
|
143
|
-
...getCompilerOptions({
|
|
144
|
-
removeComments: false,
|
|
145
|
-
skipDefaultLibCheck: true,
|
|
146
|
-
skipLibCheck: true,
|
|
147
|
-
sourceMap: false
|
|
148
|
-
}),
|
|
149
|
-
...compilerOptionsParam,
|
|
150
|
-
outDir: `${outDir}/${platform}`,
|
|
151
|
-
emitDeclarationOnly: true,
|
|
152
|
-
noEmit: false
|
|
153
|
-
};
|
|
154
|
-
console.log(chalk3.cyan(`Validating Files: ${entries.length}`));
|
|
155
|
-
if (verbose) {
|
|
156
|
-
for (const entry of entries) {
|
|
157
|
-
console.log(chalk3.grey(`Validating: ${entry}`));
|
|
158
|
-
}
|
|
159
|
-
}
|
|
160
|
-
try {
|
|
161
|
-
if (entries.length > 0) {
|
|
162
|
-
const program = createProgramFromConfig({
|
|
163
|
-
configFilePath,
|
|
164
|
-
basePath: pkg ?? cwd2(),
|
|
165
|
-
compilerOptions,
|
|
166
|
-
files: entries.map((entry) => `${srcDir}/${entry}`),
|
|
167
|
-
include: [`${srcDir}/**/*.*`]
|
|
168
|
-
});
|
|
169
|
-
const diagnostics = getPreEmitDiagnostics(program);
|
|
170
|
-
if (diagnostics.length > 0) {
|
|
171
|
-
const formattedDiagnostics = formatDiagnosticsWithColorAndContext(
|
|
172
|
-
diagnostics,
|
|
173
|
-
{
|
|
174
|
-
getCanonicalFileName: (fileName) => fileName,
|
|
175
|
-
getCurrentDirectory: () => srcDir,
|
|
176
|
-
getNewLine: () => sys.newLine
|
|
177
|
-
}
|
|
178
|
-
);
|
|
179
|
-
console.error(formattedDiagnostics);
|
|
180
|
-
}
|
|
181
|
-
const nonEmitPatterns = [".stories.", "/stories/", "/stories.", ".spec.", "/spec/", "/spec.", ".example."];
|
|
182
|
-
program.emit(void 0, (fileName, text, writeByteOrderMark) => {
|
|
183
|
-
if (nonEmitPatterns.some((pattern) => fileName.includes(pattern))) {
|
|
184
|
-
return;
|
|
185
|
-
}
|
|
186
|
-
ts.sys.writeFile(fileName, text, writeByteOrderMark);
|
|
187
|
-
});
|
|
188
|
-
return diagnostics.reduce((acc, diag) => acc + (diag.category === DiagnosticCategory.Error ? 1 : 0), 0);
|
|
189
|
-
}
|
|
190
|
-
return 0;
|
|
191
|
-
} finally {
|
|
192
|
-
if (verbose) {
|
|
193
|
-
console.log(chalk3.cyan(`Validating code FINISH: ${entries.length} files to ${outDir} from ${srcDir}`));
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
};
|
|
197
|
-
|
|
198
|
-
// src/actions/package/compile/packageCompileTscTypes.ts
|
|
199
|
-
import path from "path";
|
|
200
|
-
import { cwd as cwd3 } from "process";
|
|
201
|
-
import chalk4 from "chalk";
|
|
202
|
-
import { rollup } from "rollup";
|
|
203
|
-
import dts from "rollup-plugin-dts";
|
|
204
|
-
import nodeExternals from "rollup-plugin-node-externals";
|
|
205
|
-
var ignoredWarningCodes = /* @__PURE__ */ new Set(["EMPTY_BUNDLE", "UNRESOLVED_IMPORT"]);
|
|
206
|
-
async function bundleDts(inputPath, outputPath, platform, options, verbose = false) {
|
|
207
|
-
const pkg = process.env.INIT_CWD ?? cwd3();
|
|
208
|
-
const tsconfigPath = path.resolve(pkg, "tsconfig.json");
|
|
209
|
-
const nodePlugIns = platform === "node" ? [nodeExternals()] : [];
|
|
210
|
-
try {
|
|
211
|
-
const bundle = await rollup({
|
|
212
|
-
input: inputPath,
|
|
213
|
-
plugins: [dts({
|
|
214
|
-
...options,
|
|
215
|
-
tsconfig: tsconfigPath,
|
|
216
|
-
compilerOptions: {
|
|
217
|
-
emitDeclarationOnly: true,
|
|
218
|
-
noEmit: false,
|
|
219
|
-
declarationMap: true
|
|
220
|
-
}
|
|
221
|
-
}), ...nodePlugIns],
|
|
222
|
-
onwarn(warning, warn) {
|
|
223
|
-
if (ignoredWarningCodes.has(warning.code ?? "")) {
|
|
224
|
-
return;
|
|
225
|
-
}
|
|
226
|
-
console.warn(chalk4.yellow(`[${warning.code}] ${warning.message}`));
|
|
227
|
-
console.warn(chalk4.gray(inputPath));
|
|
228
|
-
warn(warning);
|
|
229
|
-
}
|
|
230
|
-
});
|
|
231
|
-
await bundle.write({
|
|
232
|
-
file: outputPath,
|
|
233
|
-
format: "es"
|
|
234
|
-
});
|
|
235
|
-
} catch (ex) {
|
|
236
|
-
const error = ex;
|
|
237
|
-
console.warn(chalk4.red(error));
|
|
238
|
-
console.warn(chalk4.gray(inputPath));
|
|
239
|
-
}
|
|
240
|
-
if (verbose) {
|
|
241
|
-
console.log(`Bundled declarations written to ${outputPath}`);
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
var packageCompileTscTypes = async (entries, outDir, platform, srcDir = "build", verbose = false) => {
|
|
245
|
-
if (verbose) {
|
|
246
|
-
console.log(chalk4.cyan(`Compiling Types START [${platform}]: ${entries.length} files to ${outDir} from ${srcDir}`));
|
|
247
|
-
console.log(`Entries: ${entries.join(", ")}`);
|
|
248
|
-
}
|
|
249
|
-
const pkg = process.env.INIT_CWD ?? cwd3();
|
|
250
|
-
const srcRoot = `${pkg}/${srcDir}/${platform}`;
|
|
251
|
-
const entryNameToTypeName = (entry) => {
|
|
252
|
-
const splitEntryName = entry.split(".");
|
|
253
|
-
const newEntryExtension = "d." + splitEntryName.at(-1);
|
|
254
|
-
return [...splitEntryName.slice(0, -1), newEntryExtension].join(".");
|
|
255
|
-
};
|
|
256
|
-
const compilerOptions = getCompilerOptions({
|
|
257
|
-
removeComments: false,
|
|
258
|
-
skipDefaultLibCheck: true,
|
|
259
|
-
skipLibCheck: true,
|
|
260
|
-
declarationMap: true,
|
|
261
|
-
emitDeclarationOnly: true,
|
|
262
|
-
noEmit: true
|
|
263
|
-
});
|
|
264
|
-
const entryNames = entries.map((entry) => entry.split(`${srcDir}/`).at(-1) ?? entry);
|
|
265
|
-
await Promise.all(entryNames.map(async (entryName) => {
|
|
266
|
-
const entryTypeName = entryNameToTypeName(entryName);
|
|
267
|
-
await bundleDts(`${srcRoot}/${entryTypeName}`, `${outDir}/${entryTypeName}`, platform, { compilerOptions }, verbose);
|
|
268
|
-
}));
|
|
269
|
-
if (verbose) {
|
|
270
|
-
console.log(chalk4.cyan(`Compiling Types FINISH: ${entries.length} files to ${outDir} from ${srcDir}`));
|
|
271
|
-
}
|
|
272
|
-
return 0;
|
|
273
|
-
};
|
|
274
|
-
|
|
275
|
-
// src/actions/package/compile/packageCompileTsup.ts
|
|
276
|
-
var compileFolder = async (srcDir, entries, buildDir, options, bundleTypes = false, verbose) => {
|
|
277
|
-
const outDir = options?.outDir ?? "dist";
|
|
278
|
-
if (verbose) {
|
|
279
|
-
console.log(`compileFolder [${srcDir}, ${options?.outDir}]`);
|
|
280
|
-
}
|
|
281
|
-
if (entries.length === 0) {
|
|
282
|
-
console.warn(chalk5.yellow(`No entries found in ${srcDir} to compile`));
|
|
283
|
-
return 0;
|
|
284
|
-
}
|
|
285
|
-
if (verbose) {
|
|
286
|
-
console.log(chalk5.gray(`buildDir [${buildDir}]`));
|
|
287
|
-
}
|
|
288
|
-
const validationResult = packageCompileTsc(options?.platform ?? "neutral", entries, srcDir, buildDir, void 0, verbose);
|
|
289
|
-
if (validationResult !== 0) {
|
|
290
|
-
console.error(chalk5.red(`Compile:Validation had ${validationResult} errors`));
|
|
291
|
-
return validationResult;
|
|
292
|
-
}
|
|
293
|
-
const optionsParams = tsupOptions([{
|
|
294
|
-
bundle: true,
|
|
295
|
-
cjsInterop: true,
|
|
296
|
-
clean: false,
|
|
297
|
-
dts: false,
|
|
298
|
-
format: ["esm"],
|
|
299
|
-
outDir,
|
|
300
|
-
silent: true,
|
|
301
|
-
sourcemap: true,
|
|
302
|
-
splitting: false,
|
|
303
|
-
tsconfig: "tsconfig.json",
|
|
304
|
-
...options,
|
|
305
|
-
entry: entries.map((entry) => `${srcDir}/${entry}`)
|
|
306
|
-
}]);
|
|
307
|
-
const optionsResult = defineConfig(optionsParams);
|
|
308
|
-
const optionsList = (await Promise.all(
|
|
309
|
-
(Array.isArray(optionsResult) ? optionsResult : [optionsResult]).flatMap(async (options2) => {
|
|
310
|
-
const result = typeof options2 === "function" ? await options2({}) : [options2];
|
|
311
|
-
return Array.isArray(result) ? result : [result];
|
|
312
|
-
})
|
|
313
|
-
)).flat();
|
|
314
|
-
if (verbose) {
|
|
315
|
-
console.log(chalk5.cyan(`TSUP:build:start [${srcDir}]`));
|
|
316
|
-
console.log(chalk5.gray(`TSUP:build:options [${JSON.stringify(optionsList, null, 2)}]`));
|
|
317
|
-
}
|
|
318
|
-
await Promise.all(optionsList.map((options2) => build(options2)));
|
|
319
|
-
if (verbose) {
|
|
320
|
-
console.log(chalk5.cyan(`TSUP:build:stop [${srcDir}]`));
|
|
321
|
-
}
|
|
322
|
-
if (bundleTypes) {
|
|
323
|
-
await packageCompileTscTypes(entries, outDir, options?.platform ?? "neutral", buildDir, verbose);
|
|
324
|
-
}
|
|
325
|
-
return 0;
|
|
326
|
-
};
|
|
327
|
-
var tsupOptions = (options = []) => {
|
|
328
|
-
const standardLoaders = {
|
|
329
|
-
".gif": "copy",
|
|
330
|
-
".html": "copy",
|
|
331
|
-
".jpg": "copy",
|
|
332
|
-
".json": "json",
|
|
333
|
-
".png": "copy",
|
|
334
|
-
".svg": "text",
|
|
335
|
-
".webp": "copy"
|
|
336
|
-
};
|
|
337
|
-
const standardOptions = {
|
|
338
|
-
bundle: true,
|
|
339
|
-
format: ["esm"],
|
|
340
|
-
loader: standardLoaders,
|
|
341
|
-
outExtension: ({ format }) => format === "esm" ? { js: ".mjs" } : { js: ".cjs" },
|
|
342
|
-
skipNodeModulesBundle: true,
|
|
343
|
-
sourcemap: true,
|
|
344
|
-
target: "esnext"
|
|
345
|
-
};
|
|
346
|
-
return deepMergeObjects([standardOptions, ...options]);
|
|
347
|
-
};
|
|
348
|
-
var packageCompileTsup = async (config2) => {
|
|
349
|
-
const compile = config2?.compile;
|
|
350
|
-
const verbose = config2?.verbose ?? false;
|
|
351
|
-
const outDirAsBuildDir = compile?.outDirAsBuildDir ?? true;
|
|
352
|
-
const bundleTypes = compile?.bundleTypes ?? false;
|
|
353
|
-
if (verbose) {
|
|
354
|
-
console.log("Compiling with TSUP");
|
|
355
|
-
}
|
|
356
|
-
const compileForNode = compile?.node ?? { src: {} };
|
|
357
|
-
const compileForBrowser = compile?.browser ?? { src: {} };
|
|
358
|
-
const compileForNeutral = compile?.neutral ?? { src: {} };
|
|
359
|
-
return (await Promise.all(
|
|
360
|
-
Object.entries(compileForNode).map(async ([srcDir, options]) => {
|
|
361
|
-
const optionsObject = typeof options === "object" ? options : {};
|
|
362
|
-
const inEsBuildOptions = typeof compile?.node?.esbuildOptions === "object" ? compile?.node?.esbuildOptions : {};
|
|
363
|
-
const entry = buildEntries(srcDir, compile?.entryMode, options, true, verbose);
|
|
364
|
-
const platform = "node";
|
|
365
|
-
const rootOutDir = optionsObject.outDir ?? "dist";
|
|
366
|
-
const outDir = rootOutDir + "/" + platform;
|
|
367
|
-
return typeof srcDir === "string" ? await compileFolder(
|
|
368
|
-
srcDir,
|
|
369
|
-
entry,
|
|
370
|
-
outDirAsBuildDir ? rootOutDir : "build",
|
|
371
|
-
tsupOptions([
|
|
372
|
-
inEsBuildOptions,
|
|
373
|
-
compile?.tsup?.options ?? {},
|
|
374
|
-
typeof options === "object" ? options : {},
|
|
375
|
-
{ platform: "node", outDir }
|
|
376
|
-
]),
|
|
377
|
-
bundleTypes,
|
|
378
|
-
verbose
|
|
379
|
-
) : 0;
|
|
380
|
-
})
|
|
381
|
-
)).reduce((prev, value) => prev + value, 0) + (await Promise.all(
|
|
382
|
-
Object.entries(compileForBrowser).map(async ([srcDir, options]) => {
|
|
383
|
-
const optionsObject = typeof options === "object" ? options : {};
|
|
384
|
-
const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === "object" ? compile?.browser?.esbuildOptions : {};
|
|
385
|
-
const entry = buildEntries(srcDir, compile?.entryMode, options, true, verbose);
|
|
386
|
-
const platform = "browser";
|
|
387
|
-
const rootOutDir = optionsObject.outDir ?? "dist";
|
|
388
|
-
const outDir = rootOutDir + "/" + platform;
|
|
389
|
-
return typeof srcDir === "string" ? await compileFolder(
|
|
390
|
-
srcDir,
|
|
391
|
-
entry,
|
|
392
|
-
outDirAsBuildDir ? rootOutDir : "build",
|
|
393
|
-
tsupOptions([
|
|
394
|
-
inEsBuildOptions,
|
|
395
|
-
compile?.tsup?.options ?? {},
|
|
396
|
-
typeof options === "object" ? options : {},
|
|
397
|
-
{ platform: "browser", outDir }
|
|
398
|
-
]),
|
|
399
|
-
bundleTypes,
|
|
400
|
-
verbose
|
|
401
|
-
) : 0;
|
|
402
|
-
})
|
|
403
|
-
)).reduce((prev, value) => prev + value, 0) + (await Promise.all(
|
|
404
|
-
Object.entries(compileForNeutral).map(async ([srcDir, options]) => {
|
|
405
|
-
const optionsObject = typeof options === "object" ? options : {};
|
|
406
|
-
const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === "object" ? compile?.neutral?.esbuildOptions : {};
|
|
407
|
-
const entry = buildEntries(srcDir, compile?.entryMode, options, true, verbose);
|
|
408
|
-
const platform = "neutral";
|
|
409
|
-
const rootOutDir = optionsObject.outDir ?? "dist";
|
|
410
|
-
const outDir = rootOutDir + "/" + platform;
|
|
411
|
-
return typeof srcDir === "string" ? await compileFolder(
|
|
412
|
-
srcDir,
|
|
413
|
-
entry,
|
|
414
|
-
outDirAsBuildDir ? rootOutDir : "build",
|
|
415
|
-
tsupOptions([
|
|
416
|
-
inEsBuildOptions,
|
|
417
|
-
compile?.tsup?.options ?? {},
|
|
418
|
-
typeof options === "object" ? options : {},
|
|
419
|
-
{ platform: "neutral", outDir }
|
|
420
|
-
]),
|
|
421
|
-
bundleTypes,
|
|
422
|
-
verbose
|
|
423
|
-
) : 0;
|
|
424
|
-
})
|
|
425
|
-
)).reduce((prev, value) => prev + value, 0) + 0;
|
|
426
|
-
};
|
|
427
|
-
|
|
428
|
-
// src/actions/package/compile/compile.ts
|
|
429
|
-
var packageCompile = async (inConfig = {}) => {
|
|
430
|
-
const pkg = process.env.INIT_CWD;
|
|
431
|
-
console.log(chalk6.green(`Compiling ${pkg}`));
|
|
432
|
-
const config2 = await loadConfig(inConfig);
|
|
433
|
-
return await packageCompileTsup(config2);
|
|
434
|
-
};
|
|
435
|
-
|
|
436
|
-
// src/bin/package/build-only.ts
|
|
437
|
-
packageCompile().then((value) => {
|
|
438
|
-
if (value !== 0) {
|
|
439
|
-
process.exit(value);
|
|
440
|
-
}
|
|
441
|
-
}).catch((reason) => {
|
|
442
|
-
console.error(chalk7.red(reason));
|
|
443
|
-
process.exit(-1);
|
|
444
|
-
});
|
|
445
|
-
//# sourceMappingURL=build-only.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/bin/package/build-only.ts","../../../src/lib/loadConfig.ts","../../../src/actions/package/compile/compile.ts","../../../src/actions/package/compile/packageCompileTsup.ts","../../../src/actions/package/compile/inputs.ts","../../../src/actions/package/compile/buildEntries.ts","../../../src/actions/package/compile/deepMerge.ts","../../../src/actions/package/compile/packageCompileTsc.ts","../../../src/actions/package/compile/getCompilerOptions.ts","../../../src/actions/package/compile/packageCompileTscTypes.ts"],"sourcesContent":["#!/usr/bin/env node\n\nimport chalk from 'chalk'\n\nimport { packageCompile } from '../../actions/index.ts'\n\npackageCompile()\n .then((value) => {\n if (value !== 0) {\n process.exit(value)\n }\n })\n .catch((reason) => {\n console.error(chalk.red(reason))\n process.exit(-1)\n })\n","import chalk from 'chalk'\nimport { cosmiconfig } from 'cosmiconfig'\nimport { TypeScriptLoader } from 'cosmiconfig-typescript-loader'\nimport deepmerge from 'deepmerge'\n\nlet config: Record<string, unknown>\n\nexport const loadConfig = async <T extends object>(params?: T): Promise<T> => {\n if (config === undefined) {\n const cosmicConfigResult = await cosmiconfig('xy', { cache: true, loaders: { '.ts': TypeScriptLoader() } }).search()\n config = cosmicConfigResult?.config\n const configFilePath = cosmicConfigResult?.filepath\n if (configFilePath !== undefined) {\n console.log(chalk.green(`Loaded config from ${configFilePath}`))\n if (config.verbose) {\n console.log(chalk.gray(`${JSON.stringify(config, null, 2)}`))\n }\n }\n }\n return deepmerge(config, params ?? {}) as T\n}\n","import chalk from 'chalk'\n\nimport { loadConfig } from '../../../lib/index.ts'\nimport { packageCompileTsup } from './packageCompileTsup.ts'\nimport type { XyConfig } from './XyConfig.ts'\n\nexport const packageCompile = async (inConfig: XyConfig = {}): Promise<number> => {\n const pkg = process.env.INIT_CWD\n console.log(chalk.green(`Compiling ${pkg}`))\n const config = await loadConfig(inConfig)\n\n return await packageCompileTsup(config)\n}\n","import chalk from 'chalk'\nimport type { Loader } from 'esbuild'\nimport type { Options } from 'tsup'\nimport { build, defineConfig } from 'tsup'\n\nimport { buildEntries } from './buildEntries.ts'\nimport { deepMergeObjects } from './deepMerge.ts'\nimport { packageCompileTsc } from './packageCompileTsc.ts'\nimport { packageCompileTscTypes } from './packageCompileTscTypes.ts'\nimport type { XyTsupConfig } from './XyConfig.ts'\n\nconst compileFolder = async (\n srcDir: string,\n entries: string[],\n buildDir: string,\n options?: Options,\n bundleTypes = false,\n verbose?: boolean,\n): Promise<number> => {\n const outDir = options?.outDir ?? 'dist'\n\n if (verbose) {\n console.log(`compileFolder [${srcDir}, ${options?.outDir}]`)\n }\n\n if (entries.length === 0) {\n console.warn(chalk.yellow(`No entries found in ${srcDir} to compile`))\n return 0\n }\n\n if (verbose) {\n console.log(chalk.gray(`buildDir [${buildDir}]`))\n }\n\n const validationResult = packageCompileTsc(options?.platform ?? 'neutral', entries, srcDir, buildDir, undefined, verbose)\n if (validationResult !== 0) {\n console.error(chalk.red(`Compile:Validation had ${validationResult} errors`))\n return validationResult\n }\n\n const optionsParams: Options = tsupOptions([{\n bundle: true,\n cjsInterop: true,\n clean: false,\n dts: false,\n format: ['esm'],\n outDir,\n silent: true,\n sourcemap: true,\n splitting: false,\n tsconfig: 'tsconfig.json',\n ...options,\n entry: entries.map(entry => `${srcDir}/${entry}`),\n }])\n\n const optionsResult = defineConfig(optionsParams)\n\n const optionsList = (\n await Promise.all(\n (Array.isArray(optionsResult) ? optionsResult : [optionsResult]).flatMap<Promise<Options[]>>(async (options) => {\n const result = typeof options === 'function' ? await options({}) : [options]\n return Array.isArray(result) ? result : [result]\n }),\n )\n ).flat()\n\n if (verbose) {\n console.log(chalk.cyan(`TSUP:build:start [${srcDir}]`))\n console.log(chalk.gray(`TSUP:build:options [${JSON.stringify(optionsList, null, 2)}]`))\n }\n\n await Promise.all(optionsList.map(options => build(options)))\n\n if (verbose) {\n console.log(chalk.cyan(`TSUP:build:stop [${srcDir}]`))\n }\n if (bundleTypes) {\n await packageCompileTscTypes(entries, outDir, options?.platform ?? 'neutral', buildDir, verbose)\n }\n\n return 0\n}\n\nexport const tsupOptions = (options: Options[] = []): Options => {\n const standardLoaders: Record<string, Loader> = {\n '.gif': 'copy', '.html': 'copy', '.jpg': 'copy', '.json': 'json', '.png': 'copy', '.svg': 'text', '.webp': 'copy',\n }\n\n const standardOptions: Options = {\n bundle: true,\n format: ['esm'],\n loader: standardLoaders,\n outExtension: ({ format }) => (format === 'esm' ? { js: '.mjs' } : { js: '.cjs' }),\n skipNodeModulesBundle: true,\n sourcemap: true,\n target: 'esnext',\n }\n\n return deepMergeObjects([standardOptions, ...options])\n}\n\nexport const packageCompileTsup = async (config?: XyTsupConfig) => {\n const compile = config?.compile\n const verbose = config?.verbose ?? false\n const outDirAsBuildDir = compile?.outDirAsBuildDir ?? true\n const bundleTypes = compile?.bundleTypes ?? false\n if (verbose) {\n console.log('Compiling with TSUP')\n }\n\n const compileForNode = compile?.node ?? { src: {} }\n const compileForBrowser = compile?.browser ?? { src: {} }\n const compileForNeutral = compile?.neutral ?? { src: {} }\n\n return (\n (\n await Promise.all(\n Object.entries(compileForNode).map(async ([srcDir, options]) => {\n const optionsObject: Options = typeof options === 'object' ? options : {}\n const inEsBuildOptions = typeof compile?.node?.esbuildOptions === 'object' ? compile?.node?.esbuildOptions : {}\n const entry = buildEntries(srcDir, compile?.entryMode, options, true, verbose)\n const platform = 'node'\n const rootOutDir = (optionsObject.outDir ?? 'dist')\n const outDir = rootOutDir + '/' + platform\n return typeof srcDir === 'string'\n ? await compileFolder(\n srcDir,\n entry,\n outDirAsBuildDir ? rootOutDir : 'build',\n tsupOptions([inEsBuildOptions,\n compile?.tsup?.options ?? {},\n (typeof options === 'object' ? options : {}),\n { platform: 'node', outDir }]),\n bundleTypes,\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0)\n + (\n await Promise.all(\n Object.entries(compileForBrowser).map(async ([srcDir, options]) => {\n const optionsObject: Options = typeof options === 'object' ? options : {}\n const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === 'object' ? compile?.browser?.esbuildOptions : {}\n const entry = buildEntries(srcDir, compile?.entryMode, options, true, verbose)\n const platform = 'browser'\n const rootOutDir = (optionsObject.outDir ?? 'dist')\n const outDir = rootOutDir + '/' + platform\n return typeof srcDir === 'string'\n ? await compileFolder(\n srcDir,\n entry,\n outDirAsBuildDir ? rootOutDir : 'build',\n tsupOptions([inEsBuildOptions,\n compile?.tsup?.options ?? {},\n (typeof options === 'object' ? options : {}),\n { platform: 'browser', outDir }]),\n bundleTypes,\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0)\n + (\n await Promise.all(\n Object.entries(compileForNeutral).map(async ([srcDir, options]) => {\n const optionsObject: Options = typeof options === 'object' ? options : {}\n const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === 'object' ? compile?.neutral?.esbuildOptions : {}\n const entry = buildEntries(srcDir, compile?.entryMode, options, true, verbose)\n const platform = 'neutral'\n const rootOutDir = (optionsObject.outDir ?? 'dist')\n const outDir = rootOutDir + '/' + platform\n return typeof srcDir === 'string'\n ? await compileFolder(\n srcDir,\n entry,\n outDirAsBuildDir ? rootOutDir : 'build',\n tsupOptions([inEsBuildOptions,\n compile?.tsup?.options ?? {},\n (typeof options === 'object' ? options : {}),\n { platform: 'neutral', outDir }]),\n bundleTypes,\n verbose,\n )\n : 0\n }),\n )\n ).reduce((prev, value) => prev + value, 0)\n + 0\n )\n}\n","import chalk from 'chalk'\nimport { glob } from 'glob'\n\nexport const getAllInputs = (srcDir: string, verbose = false) => {\n /* tsup wants posix paths */\n return [...glob.sync(`${srcDir}/**/*.ts`, { posix: true }).map((file) => {\n const result = file.slice(Math.max(0, srcDir.length + 1)) // Remove the folder prefix\n if (verbose) {\n console.log(chalk.gray(`getAllInputs: ${JSON.stringify(result, null, 2)}`))\n }\n return result\n }), ...glob.sync(`${srcDir}/**/*.tsx`, { posix: true }).map((file) => {\n const result = file.slice(Math.max(0, srcDir.length + 1)) // Remove the folder prefix\n if (verbose) {\n console.log(chalk.gray(`getAllInputs: ${JSON.stringify(result, null, 2)}`))\n }\n return result\n })]\n}\n","import type { Options } from 'tsup'\n\nimport { getAllInputs } from './inputs.ts'\nimport type { EntryMode } from './XyConfig.ts'\n\nconst isSpecOrStory = (entry: string) => {\n return entry.includes('.spec.') || entry.includes('.stories.')\n || entry.startsWith('spec/') || entry.includes('/spec/')\n || entry.startsWith('stories/') || entry.includes('/stories/')\n || entry === 'spec.ts' || entry.endsWith('/spec.ts')\n || entry === 'stories.ts' || entry.endsWith('/stories.ts')\n}\n\nexport const buildEntries = (srcDir: string, entryMode: EntryMode = 'single', options?: Options | boolean, excludeSpecAndStories = true, verbose = false) => {\n let entries: string[] = []\n switch (entryMode) {\n case 'platform': {\n entries = ['index-node.ts', 'index-browser.ts']\n break\n }\n case 'all': {\n entries = (excludeSpecAndStories\n ? getAllInputs(srcDir).filter(entry => !isSpecOrStory(entry))\n : getAllInputs(srcDir)).filter(entry => !entry.endsWith('.d.ts'))\n break\n }\n case 'custom': {\n entries = []\n break\n }\n default: {\n entries = ['index.ts']\n break\n }\n }\n\n if (typeof options !== 'boolean' && Array.isArray(options?.entry)) {\n entries.push(...options.entry)\n }\n\n if (verbose) console.log(`buildEntries [${entryMode}] ${entries.length}`)\n return entries\n}\n","// eslint-disable-next-line @typescript-eslint/no-explicit-any\ntype AnyObject = Record<any, any>\n\nfunction deepMerge<T extends AnyObject>(target: AnyObject, source: AnyObject): T {\n if (!source || typeof source !== 'object') return target\n\n for (const key of Object.keys(source)) {\n if (\n typeof source[key] === 'object'\n && source[key] !== null\n && !Array.isArray(source[key])\n ) {\n // Recursively merge nested objects\n if (!target[key] || typeof target[key] !== 'object') {\n target[key] = {} as T[typeof key]\n }\n deepMerge(target[key], source[key])\n } else {\n // Overwrite with non-object values\n target[key] = source[key]\n }\n }\n\n return target\n}\n\nexport function deepMergeObjects<T extends AnyObject>(objects: T[]): T {\n const result = {} as T\n for (const obj of objects) {\n deepMerge(result, obj)\n }\n return result\n}\n","import { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport type { TsConfigCompilerOptions } from 'tsc-prog'\nimport { createProgramFromConfig } from 'tsc-prog'\nimport type { CompilerOptions } from 'typescript'\nimport ts, {\n DiagnosticCategory, formatDiagnosticsWithColorAndContext, getPreEmitDiagnostics, sys,\n} from 'typescript'\n\nimport { getCompilerOptions } from './getCompilerOptions.ts'\n\nexport const packageCompileTsc = (\n platform: 'browser' | 'neutral' | 'node',\n entries: string[],\n srcDir: string = 'src',\n outDir: string = 'dist',\n compilerOptionsParam?: CompilerOptions,\n verbose: boolean = false,\n): number => {\n const pkg = process.env.INIT_CWD ?? cwd()\n\n if (verbose) {\n console.log(chalk.cyan(`Validating code START: ${entries.length} files to ${outDir} from ${srcDir}`))\n }\n\n const configFilePath = ts.findConfigFile(\n './', // search path\n ts.sys.fileExists,\n 'tsconfig.json',\n )\n\n if (configFilePath === undefined) {\n throw new Error('Could not find tsconfig.json')\n }\n\n const compilerOptions = {\n ...(getCompilerOptions({\n removeComments: false,\n skipDefaultLibCheck: true,\n skipLibCheck: true,\n sourceMap: false,\n })),\n ...compilerOptionsParam,\n outDir: `${outDir}/${platform}`,\n emitDeclarationOnly: true,\n noEmit: false,\n } as TsConfigCompilerOptions\n\n console.log(chalk.cyan(`Validating Files: ${entries.length}`))\n if (verbose) {\n for (const entry of entries) {\n console.log(chalk.grey(`Validating: ${entry}`))\n }\n }\n\n try {\n if (entries.length > 0) {\n const program = createProgramFromConfig({\n configFilePath,\n basePath: pkg ?? cwd(),\n compilerOptions,\n files: entries.map(entry => `${srcDir}/${entry}`),\n include: [`${srcDir}/**/*.*`],\n })\n\n const diagnostics = getPreEmitDiagnostics(program)\n\n if (diagnostics.length > 0) {\n const formattedDiagnostics = formatDiagnosticsWithColorAndContext(\n diagnostics,\n {\n getCanonicalFileName: fileName => fileName,\n getCurrentDirectory: () => srcDir,\n getNewLine: () => sys.newLine,\n },\n )\n console.error(formattedDiagnostics)\n }\n\n // We use a custom writeFile callback to prevent non-entry files (like\n // .stories.* and .spec.* files) from emitting .d.ts output into dist.\n //\n // Background: The `include` glob above intentionally brings ALL source\n // files into the TypeScript program so they get type-checked during build\n // (catching errors in storybook/test files too). However, we only want\n // .d.ts output for the actual library entries — not for stories, specs,\n // or examples. Without this filter, every file matched by the include\n // glob would produce a .d.ts file in the dist folder.\n const nonEmitPatterns = ['.stories.', '/stories/', '/stories.', '.spec.', '/spec/', '/spec.', '.example.']\n program.emit(undefined, (fileName, text, writeByteOrderMark) => {\n if (nonEmitPatterns.some(pattern => fileName.includes(pattern))) {\n return\n }\n ts.sys.writeFile(fileName, text, writeByteOrderMark)\n })\n return diagnostics.reduce((acc, diag) => acc + (diag.category === DiagnosticCategory.Error ? 1 : 0), 0)\n }\n return 0\n } finally {\n if (verbose) {\n console.log(chalk.cyan(`Validating code FINISH: ${entries.length} files to ${outDir} from ${srcDir}`))\n }\n }\n}\n","import { cwd } from 'node:process'\n\nimport deepmerge from 'deepmerge'\nimport { getTsconfig } from 'get-tsconfig'\nimport type { CompilerOptions } from 'typescript'\n\nexport const getCompilerOptions = (options: CompilerOptions = {}, fileName: string = 'tsconfig.json'): CompilerOptions => {\n const resolvedTsConfigCompilerOptions = getTsconfig(cwd(), fileName)?.config?.compilerOptions ?? {}\n\n return deepmerge(resolvedTsConfigCompilerOptions, options)\n}\n","import path from 'node:path'\nimport { cwd } from 'node:process'\n\nimport chalk from 'chalk'\nimport { rollup } from 'rollup'\nimport type { Options } from 'rollup-plugin-dts'\nimport dts from 'rollup-plugin-dts'\nimport nodeExternals from 'rollup-plugin-node-externals'\n\nimport { getCompilerOptions } from './getCompilerOptions.ts'\n\nconst ignoredWarningCodes = new Set(['EMPTY_BUNDLE', 'UNRESOLVED_IMPORT'])\n\nexport async function bundleDts(inputPath: string, outputPath: string, platform: 'node' | 'browser' | 'neutral', options?: Options, verbose = false) {\n // Find the tsconfig.json path\n const pkg = process.env.INIT_CWD ?? cwd()\n const tsconfigPath = path.resolve(pkg, 'tsconfig.json')\n\n const nodePlugIns = platform === 'node' ? [nodeExternals()] : []\n try {\n const bundle = await rollup({\n input: inputPath,\n\n plugins: [dts({\n ...options,\n tsconfig: tsconfigPath,\n compilerOptions: {\n emitDeclarationOnly: true, noEmit: false, declarationMap: true,\n },\n\n }), ...nodePlugIns],\n onwarn(warning, warn) {\n if (ignoredWarningCodes.has(warning.code ?? '')) {\n return\n }\n console.warn(chalk.yellow(`[${warning.code}] ${warning.message}`))\n console.warn(chalk.gray(inputPath))\n warn(warning)\n },\n })\n await bundle.write({\n file: outputPath,\n format: 'es',\n })\n } catch (ex) {\n const error = ex as Error\n console.warn(chalk.red(error))\n console.warn(chalk.gray(inputPath))\n }\n\n if (verbose) {\n console.log(`Bundled declarations written to ${outputPath}`)\n }\n}\n\nexport const packageCompileTscTypes = async (\n entries: string[],\n outDir: string,\n platform: 'node' | 'browser' | 'neutral',\n srcDir: string = 'build',\n verbose = false,\n): Promise<number> => {\n if (verbose) {\n console.log(chalk.cyan(`Compiling Types START [${platform}]: ${entries.length} files to ${outDir} from ${srcDir}`))\n console.log(`Entries: ${entries.join(', ')}`)\n }\n const pkg = process.env.INIT_CWD ?? cwd()\n const srcRoot = `${pkg}/${srcDir}/${platform}`\n\n const entryNameToTypeName = (entry: string): string => {\n const splitEntryName = entry.split('.')\n const newEntryExtension = 'd.' + splitEntryName.at(-1)\n return [...splitEntryName.slice(0, -1), newEntryExtension].join('.')\n }\n\n const compilerOptions = getCompilerOptions({\n removeComments: false,\n skipDefaultLibCheck: true,\n skipLibCheck: true,\n declarationMap: true,\n emitDeclarationOnly: true,\n noEmit: true,\n })\n\n const entryNames = entries.map(entry => entry.split(`${srcDir}/`).at(-1) ?? entry)\n\n await Promise.all(entryNames.map(async (entryName) => {\n const entryTypeName = entryNameToTypeName(entryName)\n await bundleDts(`${srcRoot}/${entryTypeName}`, `${outDir}/${entryTypeName}`, platform, { compilerOptions }, verbose)\n }))\n\n if (verbose) {\n console.log(chalk.cyan(`Compiling Types FINISH: ${entries.length} files to ${outDir} from ${srcDir}`))\n }\n\n return 0\n}\n"],"mappings":"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","names":["chalk","chalk","chalk","chalk","cwd","chalk","deepmerge","cwd","chalk","cwd","chalk","cwd","chalk","chalk","options","config","chalk","config","chalk"]}
|