@xylabs/toolchain 7.10.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/analyze.mjs +140 -0
- package/dist/actions/analyze.mjs.map +1 -0
- package/dist/actions/build.mjs +173 -0
- package/dist/actions/build.mjs.map +1 -0
- package/dist/actions/claude-check.mjs +199 -0
- package/dist/actions/claude-check.mjs.map +1 -0
- package/dist/actions/claude-clean.mjs +70 -0
- package/dist/actions/claude-clean.mjs.map +1 -0
- package/dist/actions/claude-commands.mjs +126 -0
- package/dist/actions/claude-commands.mjs.map +1 -0
- package/dist/actions/claude-rules.mjs +151 -0
- package/dist/actions/claude-rules.mjs.map +1 -0
- package/dist/actions/claude-settings.mjs +99 -0
- package/dist/actions/claude-settings.mjs.map +1 -0
- package/dist/actions/claude-skills.mjs +131 -0
- package/dist/actions/claude-skills.mjs.map +1 -0
- package/dist/actions/clean-docs.mjs +66 -0
- package/dist/actions/clean-docs.mjs.map +1 -0
- package/dist/actions/clean-eslint.mjs +47 -0
- package/dist/actions/clean-eslint.mjs.map +1 -0
- package/dist/actions/clean.mjs +166 -0
- package/dist/actions/clean.mjs.map +1 -0
- package/dist/actions/compile.mjs +184 -0
- package/dist/actions/compile.mjs.map +1 -0
- package/dist/actions/copy-assets.mjs +81 -0
- package/dist/actions/copy-assets.mjs.map +1 -0
- package/dist/actions/cycle.mjs +275 -0
- package/dist/actions/cycle.mjs.map +1 -0
- package/dist/actions/dead.mjs +119 -0
- package/dist/actions/dead.mjs.map +1 -0
- package/dist/actions/deplint/checkPackage/checkPackage.mjs +1556 -0
- package/dist/actions/deplint/checkPackage/checkPackage.mjs.map +1 -0
- package/dist/actions/deplint/checkPackage/checkPackageTypes.mjs +1 -0
- package/dist/actions/deplint/checkPackage/checkPackageTypes.mjs.map +1 -0
- package/dist/actions/deplint/checkPackage/getMismatchedPeerDevVersions.mjs +77 -0
- package/dist/actions/deplint/checkPackage/getMismatchedPeerDevVersions.mjs.map +1 -0
- package/dist/actions/deplint/checkPackage/getUnlistedDependencies.mjs +158 -0
- package/dist/actions/deplint/checkPackage/getUnlistedDependencies.mjs.map +1 -0
- package/dist/actions/deplint/checkPackage/getUnlistedDevDependencies.mjs +125 -0
- package/dist/actions/deplint/checkPackage/getUnlistedDevDependencies.mjs.map +1 -0
- package/dist/actions/deplint/checkPackage/getUnnecessaryPeerDependencies.mjs +207 -0
- package/dist/actions/deplint/checkPackage/getUnnecessaryPeerDependencies.mjs.map +1 -0
- package/dist/actions/deplint/checkPackage/getUnsatisfiedPeerDependencies.mjs +318 -0
- package/dist/actions/deplint/checkPackage/getUnsatisfiedPeerDependencies.mjs.map +1 -0
- package/dist/actions/deplint/checkPackage/getUnusedDependencies.mjs +163 -0
- package/dist/actions/deplint/checkPackage/getUnusedDependencies.mjs.map +1 -0
- package/dist/actions/deplint/checkPackage/getUnusedDevDependencies.mjs +408 -0
- package/dist/actions/deplint/checkPackage/getUnusedDevDependencies.mjs.map +1 -0
- package/dist/actions/deplint/checkPackage/getUnusedPeerDependencies.mjs +75 -0
- package/dist/actions/deplint/checkPackage/getUnusedPeerDependencies.mjs.map +1 -0
- package/dist/actions/deplint/checkPackage/getWorkspaceVersionProblems.mjs +128 -0
- package/dist/actions/deplint/checkPackage/getWorkspaceVersionProblems.mjs.map +1 -0
- package/dist/actions/deplint/checkPackage/index.mjs +1609 -0
- package/dist/actions/deplint/checkPackage/index.mjs.map +1 -0
- package/dist/actions/deplint/deplint.mjs +1840 -0
- package/dist/actions/deplint/deplint.mjs.map +1 -0
- package/dist/actions/deplint/engine.mjs +1736 -0
- package/dist/actions/deplint/engine.mjs.map +1 -0
- package/dist/actions/deplint/findFiles.mjs +39 -0
- package/dist/actions/deplint/findFiles.mjs.map +1 -0
- package/dist/actions/deplint/findFilesByGlob.mjs +14 -0
- package/dist/actions/deplint/findFilesByGlob.mjs.map +1 -0
- package/dist/actions/deplint/fixer.mjs +103 -0
- package/dist/actions/deplint/fixer.mjs.map +1 -0
- package/dist/actions/deplint/getBasePackageName.mjs +13 -0
- package/dist/actions/deplint/getBasePackageName.mjs.map +1 -0
- package/dist/actions/deplint/getCliReferencedPackagesFromFiles.mjs +140 -0
- package/dist/actions/deplint/getCliReferencedPackagesFromFiles.mjs.map +1 -0
- package/dist/actions/deplint/getDependenciesFromPackageJson.mjs +29 -0
- package/dist/actions/deplint/getDependenciesFromPackageJson.mjs.map +1 -0
- package/dist/actions/deplint/getExtendsFromTsconfigs.mjs +68 -0
- package/dist/actions/deplint/getExtendsFromTsconfigs.mjs.map +1 -0
- package/dist/actions/deplint/getExternalImportsFromFiles.mjs +143 -0
- package/dist/actions/deplint/getExternalImportsFromFiles.mjs.map +1 -0
- package/dist/actions/deplint/getImportsFromFile.mjs +85 -0
- package/dist/actions/deplint/getImportsFromFile.mjs.map +1 -0
- package/dist/actions/deplint/getRequiredPeerDependencies.mjs +37 -0
- package/dist/actions/deplint/getRequiredPeerDependencies.mjs.map +1 -0
- package/dist/actions/deplint/getScriptReferencedPackages.mjs +83 -0
- package/dist/actions/deplint/getScriptReferencedPackages.mjs.map +1 -0
- package/dist/actions/deplint/implicitDevDependencies.mjs +116 -0
- package/dist/actions/deplint/implicitDevDependencies.mjs.map +1 -0
- package/dist/actions/deplint/index.mjs +1848 -0
- package/dist/actions/deplint/index.mjs.map +1 -0
- package/dist/actions/deplint/packageEditor.mjs +82 -0
- package/dist/actions/deplint/packageEditor.mjs.map +1 -0
- package/dist/actions/deplint/packageJsonEditor.mjs +101 -0
- package/dist/actions/deplint/packageJsonEditor.mjs.map +1 -0
- package/dist/actions/deplint/reporters.mjs +36 -0
- package/dist/actions/deplint/reporters.mjs.map +1 -0
- package/dist/actions/deplint/rules.mjs +1223 -0
- package/dist/actions/deplint/rules.mjs.map +1 -0
- package/dist/actions/deplint/snapshot.mjs +372 -0
- package/dist/actions/deplint/snapshot.mjs.map +1 -0
- package/dist/actions/deplint/tsScriptsAliases.mjs +20 -0
- package/dist/actions/deplint/tsScriptsAliases.mjs.map +1 -0
- package/dist/actions/deplint/types.mjs +1 -0
- package/dist/actions/deplint/types.mjs.map +1 -0
- package/dist/actions/deploy.mjs +194 -0
- package/dist/actions/deploy.mjs.map +1 -0
- package/dist/actions/dupdeps.mjs +226 -0
- package/dist/actions/dupdeps.mjs.map +1 -0
- package/dist/actions/eject.mjs +142 -0
- package/dist/actions/eject.mjs.map +1 -0
- package/dist/actions/fix.mjs +359 -0
- package/dist/actions/fix.mjs.map +1 -0
- package/dist/actions/gen-docs.mjs +155 -0
- package/dist/actions/gen-docs.mjs.map +1 -0
- package/dist/actions/gitignore.mjs +159 -0
- package/dist/actions/gitignore.mjs.map +1 -0
- package/dist/actions/gitlint-fix.mjs +27 -0
- package/dist/actions/gitlint-fix.mjs.map +1 -0
- package/dist/actions/gitlint.mjs +48 -0
- package/dist/actions/gitlint.mjs.map +1 -0
- package/dist/actions/index.mjs +8259 -0
- package/dist/actions/index.mjs.map +1 -0
- package/dist/actions/knip.mjs +119 -0
- package/dist/actions/knip.mjs.map +1 -0
- package/dist/actions/license.mjs +92 -0
- package/dist/actions/license.mjs.map +1 -0
- package/dist/actions/lint-init.mjs +275 -0
- package/dist/actions/lint-init.mjs.map +1 -0
- package/dist/actions/lint.mjs +356 -0
- package/dist/actions/lint.mjs.map +1 -0
- package/dist/actions/lintNext.mjs +209 -0
- package/dist/actions/lintNext.mjs.map +1 -0
- package/dist/actions/lintlint.mjs +341 -0
- package/dist/actions/lintlint.mjs.map +1 -0
- package/dist/actions/npmignore-gen.mjs +90 -0
- package/dist/actions/npmignore-gen.mjs.map +1 -0
- package/dist/actions/orphan.mjs +110 -0
- package/dist/actions/orphan.mjs.map +1 -0
- package/dist/actions/package/clean-outputs.mjs +50 -0
- package/dist/actions/package/clean-outputs.mjs.map +1 -0
- package/dist/actions/package/clean-typescript.mjs +50 -0
- package/dist/actions/package/clean-typescript.mjs.map +1 -0
- package/dist/actions/package/clean.mjs +69 -0
- package/dist/actions/package/clean.mjs.map +1 -0
- package/dist/actions/package/compile/XyConfig.mjs +32 -0
- package/dist/actions/package/compile/XyConfig.mjs.map +1 -0
- package/dist/actions/package/compile/buildEntries.mjs +53 -0
- package/dist/actions/package/compile/buildEntries.mjs.map +1 -0
- package/dist/actions/package/compile/compile.mjs +439 -0
- package/dist/actions/package/compile/compile.mjs.map +1 -0
- package/dist/actions/package/compile/copyTypeFiles.mjs +34 -0
- package/dist/actions/package/compile/copyTypeFiles.mjs.map +1 -0
- package/dist/actions/package/compile/deepMerge.mjs +27 -0
- package/dist/actions/package/compile/deepMerge.mjs.map +1 -0
- package/dist/actions/package/compile/getCompilerOptions.mjs +12 -0
- package/dist/actions/package/compile/getCompilerOptions.mjs.map +1 -0
- package/dist/actions/package/compile/index.mjs +472 -0
- package/dist/actions/package/compile/index.mjs.map +1 -0
- package/dist/actions/package/compile/inputs.mjs +22 -0
- package/dist/actions/package/compile/inputs.mjs.map +1 -0
- package/dist/actions/package/compile/packageCompileTsc.mjs +93 -0
- package/dist/actions/package/compile/packageCompileTsc.mjs.map +1 -0
- package/dist/actions/package/compile/packageCompileTscTypes.mjs +92 -0
- package/dist/actions/package/compile/packageCompileTscTypes.mjs.map +1 -0
- package/dist/actions/package/compile/packageCompileTsup.mjs +402 -0
- package/dist/actions/package/compile/packageCompileTsup.mjs.map +1 -0
- package/dist/actions/package/copy-assets.mjs +69 -0
- package/dist/actions/package/copy-assets.mjs.map +1 -0
- package/dist/actions/package/cycle.mjs +62 -0
- package/dist/actions/package/cycle.mjs.map +1 -0
- package/dist/actions/package/gen-docs.mjs +137 -0
- package/dist/actions/package/gen-docs.mjs.map +1 -0
- package/dist/actions/package/index.mjs +1131 -0
- package/dist/actions/package/index.mjs.map +1 -0
- package/dist/actions/package/lint.mjs +87 -0
- package/dist/actions/package/lint.mjs.map +1 -0
- package/dist/actions/package/publint.mjs +336 -0
- package/dist/actions/package/publint.mjs.map +1 -0
- package/dist/actions/package/recompile.mjs +510 -0
- package/dist/actions/package/recompile.mjs.map +1 -0
- package/dist/actions/package-lint-deps.mjs +348 -0
- package/dist/actions/package-lint-deps.mjs.map +1 -0
- package/dist/actions/package-lint.mjs +774 -0
- package/dist/actions/package-lint.mjs.map +1 -0
- package/dist/actions/packman/clean.mjs +144 -0
- package/dist/actions/packman/clean.mjs.map +1 -0
- package/dist/actions/packman/convert.mjs +1331 -0
- package/dist/actions/packman/convert.mjs.map +1 -0
- package/dist/actions/packman/convertToPnpm.mjs +295 -0
- package/dist/actions/packman/convertToPnpm.mjs.map +1 -0
- package/dist/actions/packman/convertToYarn.mjs +307 -0
- package/dist/actions/packman/convertToYarn.mjs.map +1 -0
- package/dist/actions/packman/index.mjs +1493 -0
- package/dist/actions/packman/index.mjs.map +1 -0
- package/dist/actions/packman/lint.mjs +109 -0
- package/dist/actions/packman/lint.mjs.map +1 -0
- package/dist/actions/packman/rewriteScripts.mjs +52 -0
- package/dist/actions/packman/rewriteScripts.mjs.map +1 -0
- package/dist/actions/packman/rewriteSourceImports.mjs +60 -0
- package/dist/actions/packman/rewriteSourceImports.mjs.map +1 -0
- package/dist/actions/packman/swapTsScriptsDependency.mjs +57 -0
- package/dist/actions/packman/swapTsScriptsDependency.mjs.map +1 -0
- package/dist/actions/publint.mjs +748 -0
- package/dist/actions/publint.mjs.map +1 -0
- package/dist/actions/publish.mjs +208 -0
- package/dist/actions/publish.mjs.map +1 -0
- package/dist/actions/reactTest.mjs +142 -0
- package/dist/actions/reactTest.mjs.map +1 -0
- package/dist/actions/readme-gen.mjs +362 -0
- package/dist/actions/readme-gen.mjs.map +1 -0
- package/dist/actions/readme-init.mjs +89 -0
- package/dist/actions/readme-init.mjs.map +1 -0
- package/dist/actions/readme-lint.mjs +147 -0
- package/dist/actions/readme-lint.mjs.map +1 -0
- package/dist/actions/rebuild.mjs +143 -0
- package/dist/actions/rebuild.mjs.map +1 -0
- package/dist/actions/recompile.mjs +196 -0
- package/dist/actions/recompile.mjs.map +1 -0
- package/dist/actions/reinstall.mjs +283 -0
- package/dist/actions/reinstall.mjs.map +1 -0
- package/dist/actions/relint.mjs +355 -0
- package/dist/actions/relint.mjs.map +1 -0
- package/dist/actions/repo-init.mjs +217 -0
- package/dist/actions/repo-init.mjs.map +1 -0
- package/dist/actions/retest.mjs +150 -0
- package/dist/actions/retest.mjs.map +1 -0
- package/dist/actions/sitemap.mjs +121 -0
- package/dist/actions/sitemap.mjs.map +1 -0
- package/dist/actions/sonar.mjs +119 -0
- package/dist/actions/sonar.mjs.map +1 -0
- package/dist/actions/start.mjs +142 -0
- package/dist/actions/start.mjs.map +1 -0
- package/dist/actions/statics.mjs +225 -0
- package/dist/actions/statics.mjs.map +1 -0
- package/dist/actions/test.mjs +144 -0
- package/dist/actions/test.mjs.map +1 -0
- package/dist/actions/up.mjs +140 -0
- package/dist/actions/up.mjs.map +1 -0
- package/dist/actions/updo.mjs +533 -0
- package/dist/actions/updo.mjs.map +1 -0
- package/dist/actions/upplug.mjs +124 -0
- package/dist/actions/upplug.mjs.map +1 -0
- package/dist/actions/upyarn.mjs +119 -0
- package/dist/actions/upyarn.mjs.map +1 -0
- package/dist/actions/yarn3only.mjs +60 -0
- package/dist/actions/yarn3only.mjs.map +1 -0
- package/dist/bin/package/build-only.mjs +451 -0
- package/dist/bin/package/build-only.mjs.map +1 -0
- package/dist/bin/package/build.mjs +451 -0
- package/dist/bin/package/build.mjs.map +1 -0
- package/dist/bin/package/clean-outputs.mjs +50 -0
- package/dist/bin/package/clean-outputs.mjs.map +1 -0
- package/dist/bin/package/clean-typescript.mjs +50 -0
- package/dist/bin/package/clean-typescript.mjs.map +1 -0
- package/dist/bin/package/clean.mjs +75 -0
- package/dist/bin/package/clean.mjs.map +1 -0
- package/dist/bin/package/compile-only.mjs +447 -0
- package/dist/bin/package/compile-only.mjs.map +1 -0
- package/dist/bin/package/compile-tsup.mjs +409 -0
- package/dist/bin/package/compile-tsup.mjs.map +1 -0
- package/dist/bin/package/compile.mjs +451 -0
- package/dist/bin/package/compile.mjs.map +1 -0
- package/dist/bin/package/copy-assets-cjs.mjs +75 -0
- package/dist/bin/package/copy-assets-cjs.mjs.map +1 -0
- package/dist/bin/package/copy-assets-esm.mjs +75 -0
- package/dist/bin/package/copy-assets-esm.mjs.map +1 -0
- package/dist/bin/package/cycle.mjs +72 -0
- package/dist/bin/package/cycle.mjs.map +1 -0
- package/dist/bin/package/fix.mjs +97 -0
- package/dist/bin/package/fix.mjs.map +1 -0
- package/dist/bin/package/gen-docs.mjs +142 -0
- package/dist/bin/package/gen-docs.mjs.map +1 -0
- package/dist/bin/package/lint-verbose.mjs +97 -0
- package/dist/bin/package/lint-verbose.mjs.map +1 -0
- package/dist/bin/package/lint.mjs +97 -0
- package/dist/bin/package/lint.mjs.map +1 -0
- package/dist/bin/package/publint.mjs +423 -0
- package/dist/bin/package/publint.mjs.map +1 -0
- package/dist/bin/package/recompile.mjs +516 -0
- package/dist/bin/package/recompile.mjs.map +1 -0
- package/dist/bin/package/relint.mjs +97 -0
- package/dist/bin/package/relint.mjs.map +1 -0
- package/dist/bin/run-or-exec.mjs +20 -0
- package/dist/bin/run-or-exec.mjs.map +1 -0
- package/dist/bin/xy.mjs +8885 -0
- package/dist/bin/xy.mjs.map +1 -0
- package/dist/index.d.ts +1102 -0
- package/dist/index.mjs +9986 -0
- package/dist/index.mjs.map +1 -0
- package/dist/lib/checkResult.mjs +16 -0
- package/dist/lib/checkResult.mjs.map +1 -0
- package/dist/lib/claudeMdTemplate.mjs +69 -0
- package/dist/lib/claudeMdTemplate.mjs.map +1 -0
- package/dist/lib/concurrency.mjs +38 -0
- package/dist/lib/concurrency.mjs.map +1 -0
- package/dist/lib/createBuildConfig.mjs +55 -0
- package/dist/lib/createBuildConfig.mjs.map +1 -0
- package/dist/lib/defaultBuildConfig.mjs +23 -0
- package/dist/lib/defaultBuildConfig.mjs.map +1 -0
- package/dist/lib/deleteGlob.mjs +13 -0
- package/dist/lib/deleteGlob.mjs.map +1 -0
- package/dist/lib/dependencies/DuplicateDetector.mjs +99 -0
- package/dist/lib/dependencies/DuplicateDetector.mjs.map +1 -0
- package/dist/lib/dependencies/detectDuplicateDependencies.mjs +203 -0
- package/dist/lib/dependencies/detectDuplicateDependencies.mjs.map +1 -0
- package/dist/lib/dependencies/index.mjs +281 -0
- package/dist/lib/dependencies/index.mjs.map +1 -0
- package/dist/lib/dependencies/workspaceCycles.mjs +79 -0
- package/dist/lib/dependencies/workspaceCycles.mjs.map +1 -0
- package/dist/lib/file/ReadFileSyncOptions.mjs +6 -0
- package/dist/lib/file/ReadFileSyncOptions.mjs.map +1 -0
- package/dist/lib/file/constants.mjs +8 -0
- package/dist/lib/file/constants.mjs.map +1 -0
- package/dist/lib/file/fileLines.mjs +32 -0
- package/dist/lib/file/fileLines.mjs.map +1 -0
- package/dist/lib/file/index.mjs +42 -0
- package/dist/lib/file/index.mjs.map +1 -0
- package/dist/lib/file/tryReadFileSync.mjs +14 -0
- package/dist/lib/file/tryReadFileSync.mjs.map +1 -0
- package/dist/lib/fillTemplate.mjs +8 -0
- package/dist/lib/fillTemplate.mjs.map +1 -0
- package/dist/lib/generateIgnoreFiles.mjs +86 -0
- package/dist/lib/generateIgnoreFiles.mjs.map +1 -0
- package/dist/lib/generateReadmeFiles.mjs +323 -0
- package/dist/lib/generateReadmeFiles.mjs.map +1 -0
- package/dist/lib/gitignoreTemplate.mjs +12 -0
- package/dist/lib/gitignoreTemplate.mjs.map +1 -0
- package/dist/lib/index.mjs +1627 -0
- package/dist/lib/index.mjs.map +1 -0
- package/dist/lib/initCwd.mjs +8 -0
- package/dist/lib/initCwd.mjs.map +1 -0
- package/dist/lib/jsonFormatters.mjs +11 -0
- package/dist/lib/jsonFormatters.mjs.map +1 -0
- package/dist/lib/latestVersions.mjs +12 -0
- package/dist/lib/latestVersions.mjs.map +1 -0
- package/dist/lib/loadConfig.mjs +72 -0
- package/dist/lib/loadConfig.mjs.map +1 -0
- package/dist/lib/packageName.mjs +26 -0
- package/dist/lib/packageName.mjs.map +1 -0
- package/dist/lib/parsedPackageJSON.mjs +11 -0
- package/dist/lib/parsedPackageJSON.mjs.map +1 -0
- package/dist/lib/processEx.mjs +36 -0
- package/dist/lib/processEx.mjs.map +1 -0
- package/dist/lib/repoTemplates.mjs +34 -0
- package/dist/lib/repoTemplates.mjs.map +1 -0
- package/dist/lib/runInstall.mjs +30 -0
- package/dist/lib/runInstall.mjs.map +1 -0
- package/dist/lib/runSteps.mjs +118 -0
- package/dist/lib/runSteps.mjs.map +1 -0
- package/dist/lib/runStepsAsync.mjs +136 -0
- package/dist/lib/runStepsAsync.mjs.map +1 -0
- package/dist/lib/runXy.mjs +147 -0
- package/dist/lib/runXy.mjs.map +1 -0
- package/dist/lib/runXyWithWarning.mjs +36 -0
- package/dist/lib/runXyWithWarning.mjs.map +1 -0
- package/dist/lib/safeExit.mjs +61 -0
- package/dist/lib/safeExit.mjs.map +1 -0
- package/dist/lib/string/empty.mjs +8 -0
- package/dist/lib/string/empty.mjs.map +1 -0
- package/dist/lib/string/index.mjs +12 -0
- package/dist/lib/string/index.mjs.map +1 -0
- package/dist/lib/string/union.mjs +6 -0
- package/dist/lib/string/union.mjs.map +1 -0
- package/dist/lib/tryRunLocalScript.mjs +57 -0
- package/dist/lib/tryRunLocalScript.mjs.map +1 -0
- package/dist/lib/updo/applyUpdates.mjs +44 -0
- package/dist/lib/updo/applyUpdates.mjs.map +1 -0
- package/dist/lib/updo/collectWorkspaceDeps.mjs +48 -0
- package/dist/lib/updo/collectWorkspaceDeps.mjs.map +1 -0
- package/dist/lib/updo/fetchRegistryInfo.mjs +53 -0
- package/dist/lib/updo/fetchRegistryInfo.mjs.map +1 -0
- package/dist/lib/updo/index.mjs +594 -0
- package/dist/lib/updo/index.mjs.map +1 -0
- package/dist/lib/updo/interactiveSelect.mjs +185 -0
- package/dist/lib/updo/interactiveSelect.mjs.map +1 -0
- package/dist/lib/updo/interfaces.mjs +1 -0
- package/dist/lib/updo/interfaces.mjs.map +1 -0
- package/dist/lib/updo/renderTable.mjs +79 -0
- package/dist/lib/updo/renderTable.mjs.map +1 -0
- package/dist/lib/updo/resolveVersions.mjs +49 -0
- package/dist/lib/updo/resolveVersions.mjs.map +1 -0
- package/dist/lib/updo/runUpdo.mjs +511 -0
- package/dist/lib/updo/runUpdo.mjs.map +1 -0
- package/dist/lib/withErrnoException.mjs +13 -0
- package/dist/lib/withErrnoException.mjs.map +1 -0
- package/dist/lib/withError.mjs +8 -0
- package/dist/lib/withError.mjs.map +1 -0
- package/dist/lib/yarn/index.mjs +39 -0
- package/dist/lib/yarn/index.mjs.map +1 -0
- package/dist/lib/yarn/isYarnVersionOrGreater.mjs +18 -0
- package/dist/lib/yarn/isYarnVersionOrGreater.mjs.map +1 -0
- package/dist/lib/yarn/workspace/Workspace.mjs +1 -0
- package/dist/lib/yarn/workspace/Workspace.mjs.map +1 -0
- package/dist/lib/yarn/workspace/index.mjs +23 -0
- package/dist/lib/yarn/workspace/index.mjs.map +1 -0
- package/dist/lib/yarn/workspace/yarnWorkspace.mjs +22 -0
- package/dist/lib/yarn/workspace/yarnWorkspace.mjs.map +1 -0
- package/dist/lib/yarn/workspace/yarnWorkspaces.mjs +15 -0
- package/dist/lib/yarn/workspace/yarnWorkspaces.mjs.map +1 -0
- package/dist/lib/yarn/yarnInitCwd.mjs +8 -0
- package/dist/lib/yarn/yarnInitCwd.mjs.map +1 -0
- package/dist/loadPackageConfig.mjs +18 -0
- package/dist/loadPackageConfig.mjs.map +1 -0
- package/dist/pm/PackageManager.mjs +1 -0
- package/dist/pm/PackageManager.mjs.map +1 -0
- package/dist/pm/detectPackageManager.mjs +10 -0
- package/dist/pm/detectPackageManager.mjs.map +1 -0
- package/dist/pm/detectReact.mjs +52 -0
- package/dist/pm/detectReact.mjs.map +1 -0
- package/dist/pm/index.mjs +263 -0
- package/dist/pm/index.mjs.map +1 -0
- package/dist/pm/pnpmPackageManager.mjs +97 -0
- package/dist/pm/pnpmPackageManager.mjs.map +1 -0
- package/dist/pm/registry.mjs +27 -0
- package/dist/pm/registry.mjs.map +1 -0
- package/dist/pm/yarnPackageManager.mjs +112 -0
- package/dist/pm/yarnPackageManager.mjs.map +1 -0
- package/dist/types.d.mjs +1 -0
- package/dist/types.d.mjs.map +1 -0
- package/dist/xy/build/buildCommand.mjs +194 -0
- package/dist/xy/build/buildCommand.mjs.map +1 -0
- package/dist/xy/build/compileCommand.mjs +203 -0
- package/dist/xy/build/compileCommand.mjs.map +1 -0
- package/dist/xy/build/compileOnlyCommand.mjs +204 -0
- package/dist/xy/build/compileOnlyCommand.mjs.map +1 -0
- package/dist/xy/build/copyAssetsCommand.mjs +92 -0
- package/dist/xy/build/copyAssetsCommand.mjs.map +1 -0
- package/dist/xy/build/index.mjs +487 -0
- package/dist/xy/build/index.mjs.map +1 -0
- package/dist/xy/build/rebuildCommand.mjs +156 -0
- package/dist/xy/build/rebuildCommand.mjs.map +1 -0
- package/dist/xy/build/recompileCommand.mjs +215 -0
- package/dist/xy/build/recompileCommand.mjs.map +1 -0
- package/dist/xy/common/checkCommand.mjs +1909 -0
- package/dist/xy/common/checkCommand.mjs.map +1 -0
- package/dist/xy/common/claude/checkCommand.mjs +207 -0
- package/dist/xy/common/claude/checkCommand.mjs.map +1 -0
- package/dist/xy/common/claude/cleanCommand.mjs +78 -0
- package/dist/xy/common/claude/cleanCommand.mjs.map +1 -0
- package/dist/xy/common/claude/commandsCommand.mjs +134 -0
- package/dist/xy/common/claude/commandsCommand.mjs.map +1 -0
- package/dist/xy/common/claude/index.mjs +734 -0
- package/dist/xy/common/claude/index.mjs.map +1 -0
- package/dist/xy/common/claude/initCommand.mjs +458 -0
- package/dist/xy/common/claude/initCommand.mjs.map +1 -0
- package/dist/xy/common/claude/rulesCommand.mjs +167 -0
- package/dist/xy/common/claude/rulesCommand.mjs.map +1 -0
- package/dist/xy/common/claude/settingsCommand.mjs +115 -0
- package/dist/xy/common/claude/settingsCommand.mjs.map +1 -0
- package/dist/xy/common/claude/skillsCommand.mjs +140 -0
- package/dist/xy/common/claude/skillsCommand.mjs.map +1 -0
- package/dist/xy/common/cleanDocsCommand.mjs +74 -0
- package/dist/xy/common/cleanDocsCommand.mjs.map +1 -0
- package/dist/xy/common/deadCommand.mjs +137 -0
- package/dist/xy/common/deadCommand.mjs.map +1 -0
- package/dist/xy/common/genDocsCommand.mjs +175 -0
- package/dist/xy/common/genDocsCommand.mjs.map +1 -0
- package/dist/xy/common/gitignoreCommand.mjs +165 -0
- package/dist/xy/common/gitignoreCommand.mjs.map +1 -0
- package/dist/xy/common/gitlintCommand.mjs +89 -0
- package/dist/xy/common/gitlintCommand.mjs.map +1 -0
- package/dist/xy/common/index.mjs +4654 -0
- package/dist/xy/common/index.mjs.map +1 -0
- package/dist/xy/common/licenseCommand.mjs +108 -0
- package/dist/xy/common/licenseCommand.mjs.map +1 -0
- package/dist/xy/common/npmignoreGenCommand.mjs +100 -0
- package/dist/xy/common/npmignoreGenCommand.mjs.map +1 -0
- package/dist/xy/common/orphan/cleanCommand.mjs +102 -0
- package/dist/xy/common/orphan/cleanCommand.mjs.map +1 -0
- package/dist/xy/common/orphan/index.mjs +138 -0
- package/dist/xy/common/orphan/index.mjs.map +1 -0
- package/dist/xy/common/orphan/listCommand.mjs +100 -0
- package/dist/xy/common/orphan/listCommand.mjs.map +1 -0
- package/dist/xy/common/packmanCommand.mjs +1538 -0
- package/dist/xy/common/packmanCommand.mjs.map +1 -0
- package/dist/xy/common/readme/genCommand.mjs +395 -0
- package/dist/xy/common/readme/genCommand.mjs.map +1 -0
- package/dist/xy/common/readme/index.mjs +538 -0
- package/dist/xy/common/readme/index.mjs.map +1 -0
- package/dist/xy/common/readme/initCommand.mjs +109 -0
- package/dist/xy/common/readme/initCommand.mjs.map +1 -0
- package/dist/xy/common/readme/lintCommand.mjs +181 -0
- package/dist/xy/common/readme/lintCommand.mjs.map +1 -0
- package/dist/xy/common/repo/index.mjs +1070 -0
- package/dist/xy/common/repo/index.mjs.map +1 -0
- package/dist/xy/common/repo/initCommand.mjs +273 -0
- package/dist/xy/common/repo/initCommand.mjs.map +1 -0
- package/dist/xy/common/repo/lintCommand.mjs +789 -0
- package/dist/xy/common/repo/lintCommand.mjs.map +1 -0
- package/dist/xy/common/retestCommand.mjs +163 -0
- package/dist/xy/common/retestCommand.mjs.map +1 -0
- package/dist/xy/common/testCommand.mjs +157 -0
- package/dist/xy/common/testCommand.mjs.map +1 -0
- package/dist/xy/deploy/deployCommand.mjs +214 -0
- package/dist/xy/deploy/deployCommand.mjs.map +1 -0
- package/dist/xy/deploy/index.mjs +289 -0
- package/dist/xy/deploy/index.mjs.map +1 -0
- package/dist/xy/deploy/publishCommand.mjs +218 -0
- package/dist/xy/deploy/publishCommand.mjs.map +1 -0
- package/dist/xy/index.mjs +8887 -0
- package/dist/xy/index.mjs.map +1 -0
- package/dist/xy/install/cleanCommand.mjs +182 -0
- package/dist/xy/install/cleanCommand.mjs.map +1 -0
- package/dist/xy/install/dupdepsCommand.mjs +234 -0
- package/dist/xy/install/dupdepsCommand.mjs.map +1 -0
- package/dist/xy/install/index.mjs +1006 -0
- package/dist/xy/install/index.mjs.map +1 -0
- package/dist/xy/install/reinstallCommand.mjs +292 -0
- package/dist/xy/install/reinstallCommand.mjs.map +1 -0
- package/dist/xy/install/staticsCommand.mjs +233 -0
- package/dist/xy/install/staticsCommand.mjs.map +1 -0
- package/dist/xy/install/upCommand.mjs +150 -0
- package/dist/xy/install/upCommand.mjs.map +1 -0
- package/dist/xy/install/updoCommand.mjs +550 -0
- package/dist/xy/install/updoCommand.mjs.map +1 -0
- package/dist/xy/lint/cycleCommand.mjs +289 -0
- package/dist/xy/lint/cycleCommand.mjs.map +1 -0
- package/dist/xy/lint/deplintCommand.mjs +1897 -0
- package/dist/xy/lint/deplintCommand.mjs.map +1 -0
- package/dist/xy/lint/fixCommand.mjs +398 -0
- package/dist/xy/lint/fixCommand.mjs.map +1 -0
- package/dist/xy/lint/index.mjs +3759 -0
- package/dist/xy/lint/index.mjs.map +1 -0
- package/dist/xy/lint/knipCommand.mjs +142 -0
- package/dist/xy/lint/knipCommand.mjs.map +1 -0
- package/dist/xy/lint/lint/index.mjs +695 -0
- package/dist/xy/lint/lint/index.mjs.map +1 -0
- package/dist/xy/lint/lint/initCommand.mjs +282 -0
- package/dist/xy/lint/lint/initCommand.mjs.map +1 -0
- package/dist/xy/lint/lint/runCommand.mjs +405 -0
- package/dist/xy/lint/lint/runCommand.mjs.map +1 -0
- package/dist/xy/lint/lintCommand.mjs +695 -0
- package/dist/xy/lint/lintCommand.mjs.map +1 -0
- package/dist/xy/lint/lintlintCommand.mjs +359 -0
- package/dist/xy/lint/lintlintCommand.mjs.map +1 -0
- package/dist/xy/lint/publintCommand.mjs +778 -0
- package/dist/xy/lint/publintCommand.mjs.map +1 -0
- package/dist/xy/lint/relintCommand.mjs +381 -0
- package/dist/xy/lint/relintCommand.mjs.map +1 -0
- package/dist/xy/lint/sonarCommand.mjs +137 -0
- package/dist/xy/lint/sonarCommand.mjs.map +1 -0
- package/dist/xy/param.mjs +8 -0
- package/dist/xy/param.mjs.map +1 -0
- package/dist/xy/react/analyzeCommand.mjs +150 -0
- package/dist/xy/react/analyzeCommand.mjs.map +1 -0
- package/dist/xy/react/ejectCommand.mjs +150 -0
- package/dist/xy/react/ejectCommand.mjs.map +1 -0
- package/dist/xy/react/index.mjs +202 -0
- package/dist/xy/react/index.mjs.map +1 -0
- package/dist/xy/react/sitemapCommand.mjs +129 -0
- package/dist/xy/react/sitemapCommand.mjs.map +1 -0
- package/dist/xy/react/startCommand.mjs +150 -0
- package/dist/xy/react/startCommand.mjs.map +1 -0
- package/dist/xy/xy.mjs +8879 -0
- package/dist/xy/xy.mjs.map +1 -0
- package/dist/xy/xyParseOptions.mjs +117 -0
- package/dist/xy/xyParseOptions.mjs.map +1 -0
- package/dist/xy/yarn/index.mjs +188 -0
- package/dist/xy/yarn/index.mjs.map +1 -0
- package/dist/xy/yarn/upplugCommand.mjs +134 -0
- package/dist/xy/yarn/upplugCommand.mjs.map +1 -0
- package/dist/xy/yarn/upyarnCommand.mjs +129 -0
- package/dist/xy/yarn/upyarnCommand.mjs.map +1 -0
- package/dist/xy/yarn/yarn3OnlyCommand.mjs +70 -0
- package/dist/xy/yarn/yarn3OnlyCommand.mjs.map +1 -0
- package/package.json +119 -0
- package/templates/claude/CLAUDE-local.md +4 -0
- package/templates/claude/CLAUDE-project.md +4 -0
- package/templates/claude/commands/xy-build.md +7 -0
- package/templates/claude/commands/xy-clean.md +7 -0
- package/templates/claude/commands/xy-compile.md +7 -0
- package/templates/claude/commands/xy-cycle.md +7 -0
- package/templates/claude/commands/xy-dead.md +7 -0
- package/templates/claude/commands/xy-deplint.md +7 -0
- package/templates/claude/commands/xy-deps.md +24 -0
- package/templates/claude/commands/xy-dupdeps.md +7 -0
- package/templates/claude/commands/xy-fix.md +7 -0
- package/templates/claude/commands/xy-gen-docs.md +7 -0
- package/templates/claude/commands/xy-gitignore.md +7 -0
- package/templates/claude/commands/xy-gitlint.md +7 -0
- package/templates/claude/commands/xy-knip.md +7 -0
- package/templates/claude/commands/xy-license.md +7 -0
- package/templates/claude/commands/xy-lint-rules.md +44 -0
- package/templates/claude/commands/xy-lint.md +7 -0
- package/templates/claude/commands/xy-publint.md +7 -0
- package/templates/claude/commands/xy-rebuild.md +7 -0
- package/templates/claude/commands/xy-recompile.md +7 -0
- package/templates/claude/commands/xy-reinstall.md +7 -0
- package/templates/claude/commands/xy-relint.md +7 -0
- package/templates/claude/commands/xy-retest.md +7 -0
- package/templates/claude/commands/xy-sonar.md +7 -0
- package/templates/claude/commands/xy-test.md +7 -0
- package/templates/claude/commands/xy-up.md +9 -0
- package/templates/claude/rules/xylabs-architecture.md +8 -0
- package/templates/claude/rules/xylabs-git-workflow.md +7 -0
- package/templates/claude/rules/xylabs-naming.md +7 -0
- package/templates/claude/rules/xylabs-style.md +17 -0
- package/templates/claude/skills/xylabs-e2e-setup/SKILL.md +223 -0
- package/templates/claude/skills/xylabs-xy-cli/SKILL.md +236 -0
- package/templates/claude/skills/xylabs-xy-deplint-fix/SKILL.md +122 -0
- package/templates/gitignore/gitignore/template.gitignore +51 -0
- package/templates/gitignore/template.gitignore +51 -0
- package/templates/readme/README.body.md +25 -0
- package/templates/readme/README.template.md +22 -0
- package/templates/repo/cli/package/package.json.tmpl +63 -0
- package/templates/repo/cli/package/src/__packageName__.ts.tmpl +21 -0
- package/templates/repo/cli/package/src/actions/index.ts +1 -0
- package/templates/repo/cli/package/src/actions/printVersion.ts.tmpl +8 -0
- package/templates/repo/cli/package/src/bin/__packageName__.ts.tmpl +12 -0
- package/templates/repo/cli/package/src/commands/index.ts +1 -0
- package/templates/repo/cli/package/src/commands/versionCommand.ts.tmpl +11 -0
- package/templates/repo/cli/package/src/index.ts.tmpl +1 -0
- package/templates/repo/cli/package/tsconfig.build.json +25 -0
- package/templates/repo/cli/package/tsconfig.json +4 -0
- package/templates/repo/cli/package/tsup.config.ts +15 -0
- package/templates/repo/cli/package/xy.config.ts +3 -0
- package/templates/repo/cli/root/CLAUDE.md.tmpl +38 -0
- package/templates/repo/cli/root/cspell.json.tmpl +13 -0
- package/templates/repo/cli/root/eslint.config.ts +28 -0
- package/templates/repo/cli/root/github/workflows/build-pnpm.yml.tmpl +34 -0
- package/templates/repo/cli/root/github/workflows/build-yarn.yml.tmpl +32 -0
- package/templates/repo/cli/root/gitignore.tmpl +47 -0
- package/templates/repo/cli/root/knip.config.ts +16 -0
- package/templates/repo/cli/root/package.json.tmpl +54 -0
- package/templates/repo/cli/root/pnpm-workspace.yaml +2 -0
- package/templates/repo/cli/root/tsconfig.json +4 -0
- package/templates/repo/cli/root/vitest.config.ts +31 -0
- package/templates/repo/cli/root/xy.config.ts.tmpl +5 -0
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
// src/actions/package/compile/packageCompileTsc.ts
|
|
2
|
+
import { cwd as cwd2 } from "process";
|
|
3
|
+
import chalk from "chalk";
|
|
4
|
+
import { createProgramFromConfig } from "tsc-prog";
|
|
5
|
+
import ts, {
|
|
6
|
+
DiagnosticCategory,
|
|
7
|
+
formatDiagnosticsWithColorAndContext,
|
|
8
|
+
getPreEmitDiagnostics,
|
|
9
|
+
sys
|
|
10
|
+
} from "typescript";
|
|
11
|
+
|
|
12
|
+
// src/actions/package/compile/getCompilerOptions.ts
|
|
13
|
+
import { cwd } from "process";
|
|
14
|
+
import deepmerge from "deepmerge";
|
|
15
|
+
import { getTsconfig } from "get-tsconfig";
|
|
16
|
+
var getCompilerOptions = (options = {}, fileName = "tsconfig.json") => {
|
|
17
|
+
const resolvedTsConfigCompilerOptions = getTsconfig(cwd(), fileName)?.config?.compilerOptions ?? {};
|
|
18
|
+
return deepmerge(resolvedTsConfigCompilerOptions, options);
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
// src/actions/package/compile/packageCompileTsc.ts
|
|
22
|
+
var packageCompileTsc = (platform, entries, srcDir = "src", outDir = "dist", compilerOptionsParam, verbose = false) => {
|
|
23
|
+
const pkg = cwd2();
|
|
24
|
+
if (verbose) {
|
|
25
|
+
console.log(chalk.cyan(`Validating code START: ${entries.length} files to ${outDir} from ${srcDir}`));
|
|
26
|
+
}
|
|
27
|
+
const configFilePath = ts.findConfigFile(
|
|
28
|
+
pkg,
|
|
29
|
+
(fileName) => ts.sys.fileExists(fileName),
|
|
30
|
+
"tsconfig.json"
|
|
31
|
+
);
|
|
32
|
+
if (configFilePath === void 0) {
|
|
33
|
+
throw new Error("Could not find tsconfig.json");
|
|
34
|
+
}
|
|
35
|
+
const compilerOptions = {
|
|
36
|
+
...getCompilerOptions({
|
|
37
|
+
removeComments: false,
|
|
38
|
+
skipDefaultLibCheck: true,
|
|
39
|
+
skipLibCheck: true,
|
|
40
|
+
sourceMap: false
|
|
41
|
+
}),
|
|
42
|
+
...compilerOptionsParam,
|
|
43
|
+
outDir: `${outDir}/${platform}`,
|
|
44
|
+
emitDeclarationOnly: true,
|
|
45
|
+
noEmit: false
|
|
46
|
+
};
|
|
47
|
+
console.log(chalk.cyan(`Validating Files: ${entries.length}`));
|
|
48
|
+
if (verbose) {
|
|
49
|
+
for (const entry of entries) {
|
|
50
|
+
console.log(chalk.grey(`Validating: ${entry}`));
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
try {
|
|
54
|
+
if (entries.length > 0) {
|
|
55
|
+
const program = createProgramFromConfig({
|
|
56
|
+
configFilePath,
|
|
57
|
+
basePath: pkg,
|
|
58
|
+
compilerOptions,
|
|
59
|
+
files: entries.map((entry) => `${srcDir}/${entry}`),
|
|
60
|
+
include: [`${srcDir}/**/*.*`]
|
|
61
|
+
});
|
|
62
|
+
const diagnostics = getPreEmitDiagnostics(program);
|
|
63
|
+
if (diagnostics.length > 0) {
|
|
64
|
+
const formattedDiagnostics = formatDiagnosticsWithColorAndContext(
|
|
65
|
+
diagnostics,
|
|
66
|
+
{
|
|
67
|
+
getCanonicalFileName: (fileName) => fileName,
|
|
68
|
+
getCurrentDirectory: () => srcDir,
|
|
69
|
+
getNewLine: () => sys.newLine
|
|
70
|
+
}
|
|
71
|
+
);
|
|
72
|
+
console.error(formattedDiagnostics);
|
|
73
|
+
}
|
|
74
|
+
const nonEmitPatterns = [".stories.", "/stories/", "/stories.", ".spec.", "/spec/", "/spec.", ".example."];
|
|
75
|
+
program.emit(void 0, (fileName, text, writeByteOrderMark) => {
|
|
76
|
+
if (nonEmitPatterns.some((pattern) => fileName.includes(pattern))) {
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
ts.sys.writeFile(fileName, text, writeByteOrderMark);
|
|
80
|
+
});
|
|
81
|
+
return diagnostics.reduce((acc, diag) => acc + (diag.category === DiagnosticCategory.Error ? 1 : 0), 0);
|
|
82
|
+
}
|
|
83
|
+
return 0;
|
|
84
|
+
} finally {
|
|
85
|
+
if (verbose) {
|
|
86
|
+
console.log(chalk.cyan(`Validating code FINISH: ${entries.length} files to ${outDir} from ${srcDir}`));
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
};
|
|
90
|
+
export {
|
|
91
|
+
packageCompileTsc
|
|
92
|
+
};
|
|
93
|
+
//# sourceMappingURL=packageCompileTsc.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/actions/package/compile/packageCompileTsc.ts","../../../../src/actions/package/compile/getCompilerOptions.ts"],"sourcesContent":["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 = 'src',\n outDir = 'dist',\n compilerOptionsParam?: CompilerOptions,\n verbose = false,\n): number => {\n const pkg = 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 pkg,\n (fileName: string) => ts.sys.fileExists(fileName),\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,\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 = 'tsconfig.json'): CompilerOptions => {\n const resolvedTsConfigCompilerOptions = getTsconfig(cwd(), fileName)?.config?.compilerOptions ?? {}\n\n return deepmerge(resolvedTsConfigCompilerOptions, options)\n}\n"],"mappings":";AAAA,SAAS,OAAAA,YAAW;AAEpB,OAAO,WAAW;AAElB,SAAS,+BAA+B;AAExC,OAAO;AAAA,EACL;AAAA,EAAoB;AAAA,EAAsC;AAAA,EAAuB;AAAA,OAC5E;;;ACRP,SAAS,WAAW;AAEpB,OAAO,eAAe;AACtB,SAAS,mBAAmB;AAGrB,IAAM,qBAAqB,CAAC,UAA2B,CAAC,GAAG,WAAW,oBAAqC;AAChH,QAAM,kCAAkC,YAAY,IAAI,GAAG,QAAQ,GAAG,QAAQ,mBAAmB,CAAC;AAElG,SAAO,UAAU,iCAAiC,OAAO;AAC3D;;;ADEO,IAAM,oBAAoB,CAC/B,UACA,SACA,SAAS,OACT,SAAS,QACT,sBACA,UAAU,UACC;AACX,QAAM,MAAMC,KAAI;AAEhB,MAAI,SAAS;AACX,YAAQ,IAAI,MAAM,KAAK,0BAA0B,QAAQ,MAAM,aAAa,MAAM,SAAS,MAAM,EAAE,CAAC;AAAA,EACtG;AAEA,QAAM,iBAAiB,GAAG;AAAA,IACxB;AAAA,IACA,CAAC,aAAqB,GAAG,IAAI,WAAW,QAAQ;AAAA,IAChD;AAAA,EACF;AAEA,MAAI,mBAAmB,QAAW;AAChC,UAAM,IAAI,MAAM,8BAA8B;AAAA,EAChD;AAEA,QAAM,kBAAkB;AAAA,IACtB,GAAI,mBAAmB;AAAA,MACrB,gBAAgB;AAAA,MAChB,qBAAqB;AAAA,MACrB,cAAc;AAAA,MACd,WAAW;AAAA,IACb,CAAC;AAAA,IACD,GAAG;AAAA,IACH,QAAQ,GAAG,MAAM,IAAI,QAAQ;AAAA,IAC7B,qBAAqB;AAAA,IACrB,QAAQ;AAAA,EACV;AAEA,UAAQ,IAAI,MAAM,KAAK,qBAAqB,QAAQ,MAAM,EAAE,CAAC;AAC7D,MAAI,SAAS;AACX,eAAW,SAAS,SAAS;AAC3B,cAAQ,IAAI,MAAM,KAAK,eAAe,KAAK,EAAE,CAAC;AAAA,IAChD;AAAA,EACF;AAEA,MAAI;AACF,QAAI,QAAQ,SAAS,GAAG;AACtB,YAAM,UAAU,wBAAwB;AAAA,QACtC;AAAA,QACA,UAAU;AAAA,QACV;AAAA,QACA,OAAO,QAAQ,IAAI,WAAS,GAAG,MAAM,IAAI,KAAK,EAAE;AAAA,QAChD,SAAS,CAAC,GAAG,MAAM,SAAS;AAAA,MAC9B,CAAC;AAED,YAAM,cAAc,sBAAsB,OAAO;AAEjD,UAAI,YAAY,SAAS,GAAG;AAC1B,cAAM,uBAAuB;AAAA,UAC3B;AAAA,UACA;AAAA,YACE,sBAAsB,cAAY;AAAA,YAClC,qBAAqB,MAAM;AAAA,YAC3B,YAAY,MAAM,IAAI;AAAA,UACxB;AAAA,QACF;AACA,gBAAQ,MAAM,oBAAoB;AAAA,MACpC;AAWA,YAAM,kBAAkB,CAAC,aAAa,aAAa,aAAa,UAAU,UAAU,UAAU,WAAW;AACzG,cAAQ,KAAK,QAAW,CAAC,UAAU,MAAM,uBAAuB;AAC9D,YAAI,gBAAgB,KAAK,aAAW,SAAS,SAAS,OAAO,CAAC,GAAG;AAC/D;AAAA,QACF;AACA,WAAG,IAAI,UAAU,UAAU,MAAM,kBAAkB;AAAA,MACrD,CAAC;AACD,aAAO,YAAY,OAAO,CAAC,KAAK,SAAS,OAAO,KAAK,aAAa,mBAAmB,QAAQ,IAAI,IAAI,CAAC;AAAA,IACxG;AACA,WAAO;AAAA,EACT,UAAE;AACA,QAAI,SAAS;AACX,cAAQ,IAAI,MAAM,KAAK,2BAA2B,QAAQ,MAAM,aAAa,MAAM,SAAS,MAAM,EAAE,CAAC;AAAA,IACvG;AAAA,EACF;AACF;","names":["cwd","cwd"]}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
// src/actions/package/compile/packageCompileTscTypes.ts
|
|
2
|
+
import path from "path";
|
|
3
|
+
import { cwd as cwd2 } from "process";
|
|
4
|
+
import chalk from "chalk";
|
|
5
|
+
import { rollup } from "rollup";
|
|
6
|
+
import dts from "rollup-plugin-dts";
|
|
7
|
+
import nodeExternals from "rollup-plugin-node-externals";
|
|
8
|
+
|
|
9
|
+
// src/actions/package/compile/getCompilerOptions.ts
|
|
10
|
+
import { cwd } from "process";
|
|
11
|
+
import deepmerge from "deepmerge";
|
|
12
|
+
import { getTsconfig } from "get-tsconfig";
|
|
13
|
+
var getCompilerOptions = (options = {}, fileName = "tsconfig.json") => {
|
|
14
|
+
const resolvedTsConfigCompilerOptions = getTsconfig(cwd(), fileName)?.config?.compilerOptions ?? {};
|
|
15
|
+
return deepmerge(resolvedTsConfigCompilerOptions, options);
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
// src/actions/package/compile/packageCompileTscTypes.ts
|
|
19
|
+
var ignoredWarningCodes = /* @__PURE__ */ new Set(["EMPTY_BUNDLE", "UNRESOLVED_IMPORT"]);
|
|
20
|
+
async function bundleDts(inputPath, outputPath, platform, options, verbose = false) {
|
|
21
|
+
const pkg = cwd2();
|
|
22
|
+
const tsconfigPath = path.resolve(pkg, "tsconfig.json");
|
|
23
|
+
const nodePlugIns = platform === "node" ? [nodeExternals()] : [];
|
|
24
|
+
try {
|
|
25
|
+
const bundle = await rollup({
|
|
26
|
+
input: inputPath,
|
|
27
|
+
plugins: [dts({
|
|
28
|
+
...options,
|
|
29
|
+
tsconfig: tsconfigPath,
|
|
30
|
+
compilerOptions: {
|
|
31
|
+
emitDeclarationOnly: true,
|
|
32
|
+
noEmit: false,
|
|
33
|
+
declarationMap: true
|
|
34
|
+
}
|
|
35
|
+
}), ...nodePlugIns],
|
|
36
|
+
onwarn(warning, warn) {
|
|
37
|
+
if (ignoredWarningCodes.has(warning.code ?? "")) {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
console.warn(chalk.yellow(`[${warning.code}] ${warning.message}`));
|
|
41
|
+
console.warn(chalk.gray(inputPath));
|
|
42
|
+
warn(warning);
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
await bundle.write({
|
|
46
|
+
file: outputPath,
|
|
47
|
+
format: "es"
|
|
48
|
+
});
|
|
49
|
+
} catch (ex) {
|
|
50
|
+
const error = ex;
|
|
51
|
+
console.warn(chalk.red(error));
|
|
52
|
+
console.warn(chalk.gray(inputPath));
|
|
53
|
+
}
|
|
54
|
+
if (verbose) {
|
|
55
|
+
console.log(`Bundled declarations written to ${outputPath}`);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
var packageCompileTscTypes = async (entries, outDir, platform, srcDir = "build", verbose = false) => {
|
|
59
|
+
if (verbose) {
|
|
60
|
+
console.log(chalk.cyan(`Compiling Types START [${platform}]: ${entries.length} files to ${outDir} from ${srcDir}`));
|
|
61
|
+
console.log(`Entries: ${entries.join(", ")}`);
|
|
62
|
+
}
|
|
63
|
+
const pkg = cwd2();
|
|
64
|
+
const srcRoot = `${pkg}/${srcDir}/${platform}`;
|
|
65
|
+
const entryNameToTypeName = (entry) => {
|
|
66
|
+
const splitEntryName = entry.split(".");
|
|
67
|
+
const newEntryExtension = "d." + splitEntryName.at(-1);
|
|
68
|
+
return [...splitEntryName.slice(0, -1), newEntryExtension].join(".");
|
|
69
|
+
};
|
|
70
|
+
const compilerOptions = getCompilerOptions({
|
|
71
|
+
removeComments: false,
|
|
72
|
+
skipDefaultLibCheck: true,
|
|
73
|
+
skipLibCheck: true,
|
|
74
|
+
declarationMap: true,
|
|
75
|
+
emitDeclarationOnly: true,
|
|
76
|
+
noEmit: true
|
|
77
|
+
});
|
|
78
|
+
const entryNames = entries.map((entry) => entry.split(`${srcDir}/`).at(-1) ?? entry);
|
|
79
|
+
await Promise.all(entryNames.map(async (entryName) => {
|
|
80
|
+
const entryTypeName = entryNameToTypeName(entryName);
|
|
81
|
+
await bundleDts(`${srcRoot}/${entryTypeName}`, `${outDir}/${entryTypeName}`, platform, { compilerOptions }, verbose);
|
|
82
|
+
}));
|
|
83
|
+
if (verbose) {
|
|
84
|
+
console.log(chalk.cyan(`Compiling Types FINISH: ${entries.length} files to ${outDir} from ${srcDir}`));
|
|
85
|
+
}
|
|
86
|
+
return 0;
|
|
87
|
+
};
|
|
88
|
+
export {
|
|
89
|
+
bundleDts,
|
|
90
|
+
packageCompileTscTypes
|
|
91
|
+
};
|
|
92
|
+
//# sourceMappingURL=packageCompileTscTypes.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/actions/package/compile/packageCompileTscTypes.ts","../../../../src/actions/package/compile/getCompilerOptions.ts"],"sourcesContent":["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 = 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 = '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 = 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","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 = 'tsconfig.json'): CompilerOptions => {\n const resolvedTsConfigCompilerOptions = getTsconfig(cwd(), fileName)?.config?.compilerOptions ?? {}\n\n return deepmerge(resolvedTsConfigCompilerOptions, options)\n}\n"],"mappings":";AAAA,OAAO,UAAU;AACjB,SAAS,OAAAA,YAAW;AAEpB,OAAO,WAAW;AAClB,SAAS,cAAc;AAEvB,OAAO,SAAS;AAChB,OAAO,mBAAmB;;;ACP1B,SAAS,WAAW;AAEpB,OAAO,eAAe;AACtB,SAAS,mBAAmB;AAGrB,IAAM,qBAAqB,CAAC,UAA2B,CAAC,GAAG,WAAW,oBAAqC;AAChH,QAAM,kCAAkC,YAAY,IAAI,GAAG,QAAQ,GAAG,QAAQ,mBAAmB,CAAC;AAElG,SAAO,UAAU,iCAAiC,OAAO;AAC3D;;;ADCA,IAAM,sBAAsB,oBAAI,IAAI,CAAC,gBAAgB,mBAAmB,CAAC;AAEzE,eAAsB,UAAU,WAAmB,YAAoB,UAA0C,SAAmB,UAAU,OAAO;AAEnJ,QAAM,MAAMC,KAAI;AAChB,QAAM,eAAe,KAAK,QAAQ,KAAK,eAAe;AAEtD,QAAM,cAAc,aAAa,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC;AAC/D,MAAI;AACF,UAAM,SAAS,MAAM,OAAO;AAAA,MAC1B,OAAO;AAAA,MAEP,SAAS,CAAC,IAAI;AAAA,QACZ,GAAG;AAAA,QACH,UAAU;AAAA,QACV,iBAAiB;AAAA,UACf,qBAAqB;AAAA,UAAM,QAAQ;AAAA,UAAO,gBAAgB;AAAA,QAC5D;AAAA,MAEF,CAAC,GAAG,GAAG,WAAW;AAAA,MAClB,OAAO,SAAS,MAAM;AACpB,YAAI,oBAAoB,IAAI,QAAQ,QAAQ,EAAE,GAAG;AAC/C;AAAA,QACF;AACA,gBAAQ,KAAK,MAAM,OAAO,IAAI,QAAQ,IAAI,KAAK,QAAQ,OAAO,EAAE,CAAC;AACjE,gBAAQ,KAAK,MAAM,KAAK,SAAS,CAAC;AAClC,aAAK,OAAO;AAAA,MACd;AAAA,IACF,CAAC;AACD,UAAM,OAAO,MAAM;AAAA,MACjB,MAAM;AAAA,MACN,QAAQ;AAAA,IACV,CAAC;AAAA,EACH,SAAS,IAAI;AACX,UAAM,QAAQ;AACd,YAAQ,KAAK,MAAM,IAAI,KAAK,CAAC;AAC7B,YAAQ,KAAK,MAAM,KAAK,SAAS,CAAC;AAAA,EACpC;AAEA,MAAI,SAAS;AACX,YAAQ,IAAI,mCAAmC,UAAU,EAAE;AAAA,EAC7D;AACF;AAEO,IAAM,yBAAyB,OACpC,SACA,QACA,UACA,SAAS,SACT,UAAU,UACU;AACpB,MAAI,SAAS;AACX,YAAQ,IAAI,MAAM,KAAK,0BAA0B,QAAQ,MAAM,QAAQ,MAAM,aAAa,MAAM,SAAS,MAAM,EAAE,CAAC;AAClH,YAAQ,IAAI,YAAY,QAAQ,KAAK,IAAI,CAAC,EAAE;AAAA,EAC9C;AACA,QAAM,MAAMA,KAAI;AAChB,QAAM,UAAU,GAAG,GAAG,IAAI,MAAM,IAAI,QAAQ;AAE5C,QAAM,sBAAsB,CAAC,UAA0B;AACrD,UAAM,iBAAiB,MAAM,MAAM,GAAG;AACtC,UAAM,oBAAoB,OAAO,eAAe,GAAG,EAAE;AACrD,WAAO,CAAC,GAAG,eAAe,MAAM,GAAG,EAAE,GAAG,iBAAiB,EAAE,KAAK,GAAG;AAAA,EACrE;AAEA,QAAM,kBAAkB,mBAAmB;AAAA,IACzC,gBAAgB;AAAA,IAChB,qBAAqB;AAAA,IACrB,cAAc;AAAA,IACd,gBAAgB;AAAA,IAChB,qBAAqB;AAAA,IACrB,QAAQ;AAAA,EACV,CAAC;AAED,QAAM,aAAa,QAAQ,IAAI,WAAS,MAAM,MAAM,GAAG,MAAM,GAAG,EAAE,GAAG,EAAE,KAAK,KAAK;AAEjF,QAAM,QAAQ,IAAI,WAAW,IAAI,OAAO,cAAc;AACpD,UAAM,gBAAgB,oBAAoB,SAAS;AACnD,UAAM,UAAU,GAAG,OAAO,IAAI,aAAa,IAAI,GAAG,MAAM,IAAI,aAAa,IAAI,UAAU,EAAE,gBAAgB,GAAG,OAAO;AAAA,EACrH,CAAC,CAAC;AAEF,MAAI,SAAS;AACX,YAAQ,IAAI,MAAM,KAAK,2BAA2B,QAAQ,MAAM,aAAa,MAAM,SAAS,MAAM,EAAE,CAAC;AAAA,EACvG;AAEA,SAAO;AACT;","names":["cwd","cwd"]}
|
|
@@ -0,0 +1,402 @@
|
|
|
1
|
+
// src/actions/package/compile/packageCompileTsup.ts
|
|
2
|
+
import chalk4 from "chalk";
|
|
3
|
+
import { build, defineConfig } from "tsup";
|
|
4
|
+
|
|
5
|
+
// src/actions/package/compile/inputs.ts
|
|
6
|
+
import chalk from "chalk";
|
|
7
|
+
import { glob } from "glob";
|
|
8
|
+
var getAllInputs = (srcDir, verbose = false) => {
|
|
9
|
+
return [...glob.sync(`${srcDir}/**/*.ts`, { posix: true }).map((file) => {
|
|
10
|
+
const result = file.slice(Math.max(0, srcDir.length + 1));
|
|
11
|
+
if (verbose) {
|
|
12
|
+
console.log(chalk.gray(`getAllInputs: ${JSON.stringify(result, null, 2)}`));
|
|
13
|
+
}
|
|
14
|
+
return result;
|
|
15
|
+
}), ...glob.sync(`${srcDir}/**/*.tsx`, { posix: true }).map((file) => {
|
|
16
|
+
const result = file.slice(Math.max(0, srcDir.length + 1));
|
|
17
|
+
if (verbose) {
|
|
18
|
+
console.log(chalk.gray(`getAllInputs: ${JSON.stringify(result, null, 2)}`));
|
|
19
|
+
}
|
|
20
|
+
return result;
|
|
21
|
+
})];
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
// src/actions/package/compile/buildEntries.ts
|
|
25
|
+
var isSpecOrStory = (entry) => {
|
|
26
|
+
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");
|
|
27
|
+
};
|
|
28
|
+
var buildEntries = (srcDir, entryMode = "single", options, excludeSpecAndStories = true, verbose = false) => {
|
|
29
|
+
let entries;
|
|
30
|
+
switch (entryMode) {
|
|
31
|
+
case "platform": {
|
|
32
|
+
entries = ["index-node.ts", "index-browser.ts"];
|
|
33
|
+
break;
|
|
34
|
+
}
|
|
35
|
+
case "all": {
|
|
36
|
+
entries = (excludeSpecAndStories ? getAllInputs(srcDir).filter((entry) => !isSpecOrStory(entry)) : getAllInputs(srcDir)).filter((entry) => !entry.endsWith(".d.ts"));
|
|
37
|
+
break;
|
|
38
|
+
}
|
|
39
|
+
case "custom": {
|
|
40
|
+
entries = [];
|
|
41
|
+
break;
|
|
42
|
+
}
|
|
43
|
+
default: {
|
|
44
|
+
entries = ["index.ts"];
|
|
45
|
+
break;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
if (typeof options !== "boolean" && Array.isArray(options?.entry)) {
|
|
49
|
+
entries.push(...options.entry);
|
|
50
|
+
}
|
|
51
|
+
if (verbose) console.log(`buildEntries [${entryMode}] ${entries.length}`);
|
|
52
|
+
return entries;
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
// src/actions/package/compile/deepMerge.ts
|
|
56
|
+
function deepMerge(target, source) {
|
|
57
|
+
if (!source || typeof source !== "object") return target;
|
|
58
|
+
for (const key of Object.keys(source)) {
|
|
59
|
+
const sourceVal = source[key];
|
|
60
|
+
if (typeof sourceVal === "object" && sourceVal !== null && !Array.isArray(sourceVal)) {
|
|
61
|
+
if (!target[key] || typeof target[key] !== "object") {
|
|
62
|
+
target[key] = {};
|
|
63
|
+
}
|
|
64
|
+
deepMerge(target[key], sourceVal);
|
|
65
|
+
} else {
|
|
66
|
+
target[key] = sourceVal;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return target;
|
|
70
|
+
}
|
|
71
|
+
function deepMergeObjects(objects) {
|
|
72
|
+
const result = {};
|
|
73
|
+
for (const obj of objects) {
|
|
74
|
+
deepMerge(result, obj);
|
|
75
|
+
}
|
|
76
|
+
return result;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
// src/actions/package/compile/packageCompileTsc.ts
|
|
80
|
+
import { cwd as cwd2 } from "process";
|
|
81
|
+
import chalk2 from "chalk";
|
|
82
|
+
import { createProgramFromConfig } from "tsc-prog";
|
|
83
|
+
import ts, {
|
|
84
|
+
DiagnosticCategory,
|
|
85
|
+
formatDiagnosticsWithColorAndContext,
|
|
86
|
+
getPreEmitDiagnostics,
|
|
87
|
+
sys
|
|
88
|
+
} from "typescript";
|
|
89
|
+
|
|
90
|
+
// src/actions/package/compile/getCompilerOptions.ts
|
|
91
|
+
import { cwd } from "process";
|
|
92
|
+
import deepmerge from "deepmerge";
|
|
93
|
+
import { getTsconfig } from "get-tsconfig";
|
|
94
|
+
var getCompilerOptions = (options = {}, fileName = "tsconfig.json") => {
|
|
95
|
+
const resolvedTsConfigCompilerOptions = getTsconfig(cwd(), fileName)?.config?.compilerOptions ?? {};
|
|
96
|
+
return deepmerge(resolvedTsConfigCompilerOptions, options);
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
// src/actions/package/compile/packageCompileTsc.ts
|
|
100
|
+
var packageCompileTsc = (platform, entries, srcDir = "src", outDir = "dist", compilerOptionsParam, verbose = false) => {
|
|
101
|
+
const pkg = cwd2();
|
|
102
|
+
if (verbose) {
|
|
103
|
+
console.log(chalk2.cyan(`Validating code START: ${entries.length} files to ${outDir} from ${srcDir}`));
|
|
104
|
+
}
|
|
105
|
+
const configFilePath = ts.findConfigFile(
|
|
106
|
+
pkg,
|
|
107
|
+
(fileName) => ts.sys.fileExists(fileName),
|
|
108
|
+
"tsconfig.json"
|
|
109
|
+
);
|
|
110
|
+
if (configFilePath === void 0) {
|
|
111
|
+
throw new Error("Could not find tsconfig.json");
|
|
112
|
+
}
|
|
113
|
+
const compilerOptions = {
|
|
114
|
+
...getCompilerOptions({
|
|
115
|
+
removeComments: false,
|
|
116
|
+
skipDefaultLibCheck: true,
|
|
117
|
+
skipLibCheck: true,
|
|
118
|
+
sourceMap: false
|
|
119
|
+
}),
|
|
120
|
+
...compilerOptionsParam,
|
|
121
|
+
outDir: `${outDir}/${platform}`,
|
|
122
|
+
emitDeclarationOnly: true,
|
|
123
|
+
noEmit: false
|
|
124
|
+
};
|
|
125
|
+
console.log(chalk2.cyan(`Validating Files: ${entries.length}`));
|
|
126
|
+
if (verbose) {
|
|
127
|
+
for (const entry of entries) {
|
|
128
|
+
console.log(chalk2.grey(`Validating: ${entry}`));
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
try {
|
|
132
|
+
if (entries.length > 0) {
|
|
133
|
+
const program = createProgramFromConfig({
|
|
134
|
+
configFilePath,
|
|
135
|
+
basePath: pkg,
|
|
136
|
+
compilerOptions,
|
|
137
|
+
files: entries.map((entry) => `${srcDir}/${entry}`),
|
|
138
|
+
include: [`${srcDir}/**/*.*`]
|
|
139
|
+
});
|
|
140
|
+
const diagnostics = getPreEmitDiagnostics(program);
|
|
141
|
+
if (diagnostics.length > 0) {
|
|
142
|
+
const formattedDiagnostics = formatDiagnosticsWithColorAndContext(
|
|
143
|
+
diagnostics,
|
|
144
|
+
{
|
|
145
|
+
getCanonicalFileName: (fileName) => fileName,
|
|
146
|
+
getCurrentDirectory: () => srcDir,
|
|
147
|
+
getNewLine: () => sys.newLine
|
|
148
|
+
}
|
|
149
|
+
);
|
|
150
|
+
console.error(formattedDiagnostics);
|
|
151
|
+
}
|
|
152
|
+
const nonEmitPatterns = [".stories.", "/stories/", "/stories.", ".spec.", "/spec/", "/spec.", ".example."];
|
|
153
|
+
program.emit(void 0, (fileName, text, writeByteOrderMark) => {
|
|
154
|
+
if (nonEmitPatterns.some((pattern) => fileName.includes(pattern))) {
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
ts.sys.writeFile(fileName, text, writeByteOrderMark);
|
|
158
|
+
});
|
|
159
|
+
return diagnostics.reduce((acc, diag) => acc + (diag.category === DiagnosticCategory.Error ? 1 : 0), 0);
|
|
160
|
+
}
|
|
161
|
+
return 0;
|
|
162
|
+
} finally {
|
|
163
|
+
if (verbose) {
|
|
164
|
+
console.log(chalk2.cyan(`Validating code FINISH: ${entries.length} files to ${outDir} from ${srcDir}`));
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
};
|
|
168
|
+
|
|
169
|
+
// src/actions/package/compile/packageCompileTscTypes.ts
|
|
170
|
+
import path from "path";
|
|
171
|
+
import { cwd as cwd3 } from "process";
|
|
172
|
+
import chalk3 from "chalk";
|
|
173
|
+
import { rollup } from "rollup";
|
|
174
|
+
import dts from "rollup-plugin-dts";
|
|
175
|
+
import nodeExternals from "rollup-plugin-node-externals";
|
|
176
|
+
var ignoredWarningCodes = /* @__PURE__ */ new Set(["EMPTY_BUNDLE", "UNRESOLVED_IMPORT"]);
|
|
177
|
+
async function bundleDts(inputPath, outputPath, platform, options, verbose = false) {
|
|
178
|
+
const pkg = cwd3();
|
|
179
|
+
const tsconfigPath = path.resolve(pkg, "tsconfig.json");
|
|
180
|
+
const nodePlugIns = platform === "node" ? [nodeExternals()] : [];
|
|
181
|
+
try {
|
|
182
|
+
const bundle = await rollup({
|
|
183
|
+
input: inputPath,
|
|
184
|
+
plugins: [dts({
|
|
185
|
+
...options,
|
|
186
|
+
tsconfig: tsconfigPath,
|
|
187
|
+
compilerOptions: {
|
|
188
|
+
emitDeclarationOnly: true,
|
|
189
|
+
noEmit: false,
|
|
190
|
+
declarationMap: true
|
|
191
|
+
}
|
|
192
|
+
}), ...nodePlugIns],
|
|
193
|
+
onwarn(warning, warn) {
|
|
194
|
+
if (ignoredWarningCodes.has(warning.code ?? "")) {
|
|
195
|
+
return;
|
|
196
|
+
}
|
|
197
|
+
console.warn(chalk3.yellow(`[${warning.code}] ${warning.message}`));
|
|
198
|
+
console.warn(chalk3.gray(inputPath));
|
|
199
|
+
warn(warning);
|
|
200
|
+
}
|
|
201
|
+
});
|
|
202
|
+
await bundle.write({
|
|
203
|
+
file: outputPath,
|
|
204
|
+
format: "es"
|
|
205
|
+
});
|
|
206
|
+
} catch (ex) {
|
|
207
|
+
const error = ex;
|
|
208
|
+
console.warn(chalk3.red(error));
|
|
209
|
+
console.warn(chalk3.gray(inputPath));
|
|
210
|
+
}
|
|
211
|
+
if (verbose) {
|
|
212
|
+
console.log(`Bundled declarations written to ${outputPath}`);
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
var packageCompileTscTypes = async (entries, outDir, platform, srcDir = "build", verbose = false) => {
|
|
216
|
+
if (verbose) {
|
|
217
|
+
console.log(chalk3.cyan(`Compiling Types START [${platform}]: ${entries.length} files to ${outDir} from ${srcDir}`));
|
|
218
|
+
console.log(`Entries: ${entries.join(", ")}`);
|
|
219
|
+
}
|
|
220
|
+
const pkg = cwd3();
|
|
221
|
+
const srcRoot = `${pkg}/${srcDir}/${platform}`;
|
|
222
|
+
const entryNameToTypeName = (entry) => {
|
|
223
|
+
const splitEntryName = entry.split(".");
|
|
224
|
+
const newEntryExtension = "d." + splitEntryName.at(-1);
|
|
225
|
+
return [...splitEntryName.slice(0, -1), newEntryExtension].join(".");
|
|
226
|
+
};
|
|
227
|
+
const compilerOptions = getCompilerOptions({
|
|
228
|
+
removeComments: false,
|
|
229
|
+
skipDefaultLibCheck: true,
|
|
230
|
+
skipLibCheck: true,
|
|
231
|
+
declarationMap: true,
|
|
232
|
+
emitDeclarationOnly: true,
|
|
233
|
+
noEmit: true
|
|
234
|
+
});
|
|
235
|
+
const entryNames = entries.map((entry) => entry.split(`${srcDir}/`).at(-1) ?? entry);
|
|
236
|
+
await Promise.all(entryNames.map(async (entryName) => {
|
|
237
|
+
const entryTypeName = entryNameToTypeName(entryName);
|
|
238
|
+
await bundleDts(`${srcRoot}/${entryTypeName}`, `${outDir}/${entryTypeName}`, platform, { compilerOptions }, verbose);
|
|
239
|
+
}));
|
|
240
|
+
if (verbose) {
|
|
241
|
+
console.log(chalk3.cyan(`Compiling Types FINISH: ${entries.length} files to ${outDir} from ${srcDir}`));
|
|
242
|
+
}
|
|
243
|
+
return 0;
|
|
244
|
+
};
|
|
245
|
+
|
|
246
|
+
// src/actions/package/compile/packageCompileTsup.ts
|
|
247
|
+
var compileFolder = async (srcDir, entries, buildDir, options, bundleTypes = false, verbose) => {
|
|
248
|
+
const outDir = options?.outDir ?? "dist";
|
|
249
|
+
if (verbose) {
|
|
250
|
+
console.log(`compileFolder [${srcDir}, ${options?.outDir}]`);
|
|
251
|
+
}
|
|
252
|
+
if (entries.length === 0) {
|
|
253
|
+
console.warn(chalk4.yellow(`No entries found in ${srcDir} to compile`));
|
|
254
|
+
return 0;
|
|
255
|
+
}
|
|
256
|
+
if (verbose) {
|
|
257
|
+
console.log(chalk4.gray(`buildDir [${buildDir}]`));
|
|
258
|
+
}
|
|
259
|
+
const validationResult = packageCompileTsc(options?.platform ?? "neutral", entries, srcDir, buildDir, void 0, verbose);
|
|
260
|
+
if (validationResult !== 0) {
|
|
261
|
+
console.error(chalk4.red(`Compile:Validation had ${validationResult} errors`));
|
|
262
|
+
return validationResult;
|
|
263
|
+
}
|
|
264
|
+
const optionsParams = tsupOptions([{
|
|
265
|
+
bundle: true,
|
|
266
|
+
cjsInterop: true,
|
|
267
|
+
clean: false,
|
|
268
|
+
dts: false,
|
|
269
|
+
format: ["esm"],
|
|
270
|
+
outDir,
|
|
271
|
+
silent: true,
|
|
272
|
+
sourcemap: true,
|
|
273
|
+
splitting: false,
|
|
274
|
+
tsconfig: "tsconfig.json",
|
|
275
|
+
...options,
|
|
276
|
+
entry: entries.map((entry) => `${srcDir}/${entry}`)
|
|
277
|
+
}]);
|
|
278
|
+
const optionsResult = defineConfig(optionsParams);
|
|
279
|
+
const optionsList = (await Promise.all(
|
|
280
|
+
(Array.isArray(optionsResult) ? optionsResult : [optionsResult]).flatMap(async (options2) => {
|
|
281
|
+
const result = typeof options2 === "function" ? await options2({}) : [options2];
|
|
282
|
+
return Array.isArray(result) ? result : [result];
|
|
283
|
+
})
|
|
284
|
+
)).flat();
|
|
285
|
+
if (verbose) {
|
|
286
|
+
console.log(chalk4.cyan(`TSUP:build:start [${srcDir}]`));
|
|
287
|
+
console.log(chalk4.gray(`TSUP:build:options [${JSON.stringify(optionsList, null, 2)}]`));
|
|
288
|
+
}
|
|
289
|
+
await Promise.all(optionsList.map((options2) => build(options2)));
|
|
290
|
+
if (verbose) {
|
|
291
|
+
console.log(chalk4.cyan(`TSUP:build:stop [${srcDir}]`));
|
|
292
|
+
}
|
|
293
|
+
if (bundleTypes) {
|
|
294
|
+
await packageCompileTscTypes(entries, outDir, options?.platform ?? "neutral", buildDir, verbose);
|
|
295
|
+
}
|
|
296
|
+
return 0;
|
|
297
|
+
};
|
|
298
|
+
var tsupOptions = (options = []) => {
|
|
299
|
+
const standardLoaders = {
|
|
300
|
+
".gif": "copy",
|
|
301
|
+
".html": "copy",
|
|
302
|
+
".jpg": "copy",
|
|
303
|
+
".json": "json",
|
|
304
|
+
".png": "copy",
|
|
305
|
+
".svg": "text",
|
|
306
|
+
".webp": "copy"
|
|
307
|
+
};
|
|
308
|
+
const standardOptions = {
|
|
309
|
+
bundle: true,
|
|
310
|
+
format: ["esm"],
|
|
311
|
+
loader: standardLoaders,
|
|
312
|
+
outExtension: ({ format }) => format === "esm" ? { js: ".mjs" } : { js: ".cjs" },
|
|
313
|
+
skipNodeModulesBundle: true,
|
|
314
|
+
sourcemap: true,
|
|
315
|
+
target: "esnext"
|
|
316
|
+
};
|
|
317
|
+
return deepMergeObjects([standardOptions, ...options]);
|
|
318
|
+
};
|
|
319
|
+
var packageCompileTsup = async (config) => {
|
|
320
|
+
const compile = config?.compile;
|
|
321
|
+
const verbose = config?.verbose ?? false;
|
|
322
|
+
const outDirAsBuildDir = compile?.outDirAsBuildDir ?? true;
|
|
323
|
+
const bundleTypes = compile?.bundleTypes ?? false;
|
|
324
|
+
if (verbose) {
|
|
325
|
+
console.log("Compiling with TSUP");
|
|
326
|
+
}
|
|
327
|
+
const compileForNode = compile?.node ?? { src: {} };
|
|
328
|
+
const compileForBrowser = compile?.browser ?? { src: {} };
|
|
329
|
+
const compileForNeutral = compile?.neutral ?? { src: {} };
|
|
330
|
+
return (await Promise.all(
|
|
331
|
+
Object.entries(compileForNode).map(async ([srcDir, options]) => {
|
|
332
|
+
const optionsObject = typeof options === "object" ? options : {};
|
|
333
|
+
const inEsBuildOptions = typeof compile?.node?.esbuildOptions === "object" ? compile?.node?.esbuildOptions : {};
|
|
334
|
+
const entry = buildEntries(srcDir, compile?.entryMode, options, true, verbose);
|
|
335
|
+
const platform = "node";
|
|
336
|
+
const rootOutDir = optionsObject.outDir ?? "dist";
|
|
337
|
+
const outDir = rootOutDir + "/" + platform;
|
|
338
|
+
return typeof srcDir === "string" ? await compileFolder(
|
|
339
|
+
srcDir,
|
|
340
|
+
entry,
|
|
341
|
+
outDirAsBuildDir ? rootOutDir : "build",
|
|
342
|
+
tsupOptions([
|
|
343
|
+
inEsBuildOptions,
|
|
344
|
+
compile?.tsup?.options ?? {},
|
|
345
|
+
typeof options === "object" ? options : {},
|
|
346
|
+
{ platform: "node", outDir }
|
|
347
|
+
]),
|
|
348
|
+
bundleTypes,
|
|
349
|
+
verbose
|
|
350
|
+
) : 0;
|
|
351
|
+
})
|
|
352
|
+
)).reduce((prev, value) => prev + value, 0) + (await Promise.all(
|
|
353
|
+
Object.entries(compileForBrowser).map(async ([srcDir, options]) => {
|
|
354
|
+
const optionsObject = typeof options === "object" ? options : {};
|
|
355
|
+
const inEsBuildOptions = typeof compile?.browser?.esbuildOptions === "object" ? compile?.browser?.esbuildOptions : {};
|
|
356
|
+
const entry = buildEntries(srcDir, compile?.entryMode, options, true, verbose);
|
|
357
|
+
const platform = "browser";
|
|
358
|
+
const rootOutDir = optionsObject.outDir ?? "dist";
|
|
359
|
+
const outDir = rootOutDir + "/" + platform;
|
|
360
|
+
return typeof srcDir === "string" ? await compileFolder(
|
|
361
|
+
srcDir,
|
|
362
|
+
entry,
|
|
363
|
+
outDirAsBuildDir ? rootOutDir : "build",
|
|
364
|
+
tsupOptions([
|
|
365
|
+
inEsBuildOptions,
|
|
366
|
+
compile?.tsup?.options ?? {},
|
|
367
|
+
typeof options === "object" ? options : {},
|
|
368
|
+
{ platform: "browser", outDir }
|
|
369
|
+
]),
|
|
370
|
+
bundleTypes,
|
|
371
|
+
verbose
|
|
372
|
+
) : 0;
|
|
373
|
+
})
|
|
374
|
+
)).reduce((prev, value) => prev + value, 0) + (await Promise.all(
|
|
375
|
+
Object.entries(compileForNeutral).map(async ([srcDir, options]) => {
|
|
376
|
+
const optionsObject = typeof options === "object" ? options : {};
|
|
377
|
+
const inEsBuildOptions = typeof compile?.neutral?.esbuildOptions === "object" ? compile?.neutral?.esbuildOptions : {};
|
|
378
|
+
const entry = buildEntries(srcDir, compile?.entryMode, options, true, verbose);
|
|
379
|
+
const platform = "neutral";
|
|
380
|
+
const rootOutDir = optionsObject.outDir ?? "dist";
|
|
381
|
+
const outDir = rootOutDir + "/" + platform;
|
|
382
|
+
return typeof srcDir === "string" ? await compileFolder(
|
|
383
|
+
srcDir,
|
|
384
|
+
entry,
|
|
385
|
+
outDirAsBuildDir ? rootOutDir : "build",
|
|
386
|
+
tsupOptions([
|
|
387
|
+
inEsBuildOptions,
|
|
388
|
+
compile?.tsup?.options ?? {},
|
|
389
|
+
typeof options === "object" ? options : {},
|
|
390
|
+
{ platform: "neutral", outDir }
|
|
391
|
+
]),
|
|
392
|
+
bundleTypes,
|
|
393
|
+
verbose
|
|
394
|
+
) : 0;
|
|
395
|
+
})
|
|
396
|
+
)).reduce((prev, value) => prev + value, 0) + 0;
|
|
397
|
+
};
|
|
398
|
+
export {
|
|
399
|
+
packageCompileTsup,
|
|
400
|
+
tsupOptions
|
|
401
|
+
};
|
|
402
|
+
//# sourceMappingURL=packageCompileTsup.mjs.map
|