@codefast/cli 0.3.1-canary.1 → 0.3.1-canary.10

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.
Files changed (79) hide show
  1. package/CHANGELOG.md +89 -1
  2. package/dist/index.cjs +972 -0
  3. package/dist/index.cjs.map +1 -0
  4. package/dist/index.js +939 -0
  5. package/dist/index.js.map +1 -0
  6. package/package.json +19 -12
  7. package/.turbo/turbo-build.log +0 -12
  8. package/dist/cjs/commands/update-exports/analyze-imports.cjs +0 -92
  9. package/dist/cjs/commands/update-exports/analyze-imports.cjs.map +0 -1
  10. package/dist/cjs/commands/update-exports/command.cjs +0 -58
  11. package/dist/cjs/commands/update-exports/command.cjs.map +0 -1
  12. package/dist/cjs/commands/update-exports/config.cjs +0 -113
  13. package/dist/cjs/commands/update-exports/config.cjs.map +0 -1
  14. package/dist/cjs/commands/update-exports/file-utils.cjs +0 -144
  15. package/dist/cjs/commands/update-exports/file-utils.cjs.map +0 -1
  16. package/dist/cjs/commands/update-exports/generate-exports.cjs +0 -76
  17. package/dist/cjs/commands/update-exports/generate-exports.cjs.map +0 -1
  18. package/dist/cjs/commands/update-exports/index.cjs +0 -36
  19. package/dist/cjs/commands/update-exports/process-package.cjs +0 -143
  20. package/dist/cjs/commands/update-exports/process-package.cjs.map +0 -1
  21. package/dist/cjs/commands/update-exports/types.cjs +0 -55
  22. package/dist/cjs/commands/update-exports/types.cjs.map +0 -1
  23. package/dist/cjs/index.cjs +0 -46
  24. package/dist/cjs/index.cjs.map +0 -1
  25. package/dist/cjs/lib/logger.cjs +0 -72
  26. package/dist/cjs/lib/logger.cjs.map +0 -1
  27. package/dist/esm/commands/update-exports/analyze-imports.js +0 -58
  28. package/dist/esm/commands/update-exports/analyze-imports.js.map +0 -1
  29. package/dist/esm/commands/update-exports/command.js +0 -24
  30. package/dist/esm/commands/update-exports/command.js.map +0 -1
  31. package/dist/esm/commands/update-exports/config.js +0 -62
  32. package/dist/esm/commands/update-exports/config.js.map +0 -1
  33. package/dist/esm/commands/update-exports/file-utils.js +0 -81
  34. package/dist/esm/commands/update-exports/file-utils.js.map +0 -1
  35. package/dist/esm/commands/update-exports/generate-exports.js +0 -42
  36. package/dist/esm/commands/update-exports/generate-exports.js.map +0 -1
  37. package/dist/esm/commands/update-exports/index.js +0 -3
  38. package/dist/esm/commands/update-exports/process-package.js +0 -93
  39. package/dist/esm/commands/update-exports/process-package.js.map +0 -1
  40. package/dist/esm/commands/update-exports/types.js +0 -18
  41. package/dist/esm/commands/update-exports/types.js.map +0 -1
  42. package/dist/esm/index.js +0 -18
  43. package/dist/esm/index.js.map +0 -1
  44. package/dist/esm/lib/logger.js +0 -28
  45. package/dist/esm/lib/logger.js.map +0 -1
  46. package/dist/types/src/commands/update-exports/analyze-imports.d.ts +0 -9
  47. package/dist/types/src/commands/update-exports/analyze-imports.d.ts.map +0 -1
  48. package/dist/types/src/commands/update-exports/command.d.ts +0 -7
  49. package/dist/types/src/commands/update-exports/command.d.ts.map +0 -1
  50. package/dist/types/src/commands/update-exports/config.d.ts +0 -16
  51. package/dist/types/src/commands/update-exports/config.d.ts.map +0 -1
  52. package/dist/types/src/commands/update-exports/file-utils.d.ts +0 -47
  53. package/dist/types/src/commands/update-exports/file-utils.d.ts.map +0 -1
  54. package/dist/types/src/commands/update-exports/generate-exports.d.ts +0 -11
  55. package/dist/types/src/commands/update-exports/generate-exports.d.ts.map +0 -1
  56. package/dist/types/src/commands/update-exports/index.d.ts +0 -2
  57. package/dist/types/src/commands/update-exports/index.d.ts.map +0 -1
  58. package/dist/types/src/commands/update-exports/process-package.d.ts +0 -23
  59. package/dist/types/src/commands/update-exports/process-package.d.ts.map +0 -1
  60. package/dist/types/src/commands/update-exports/types.d.ts +0 -83
  61. package/dist/types/src/commands/update-exports/types.d.ts.map +0 -1
  62. package/dist/types/src/index.d.ts +0 -3
  63. package/dist/types/src/index.d.ts.map +0 -1
  64. package/dist/types/src/lib/logger.d.ts +0 -15
  65. package/dist/types/src/lib/logger.d.ts.map +0 -1
  66. package/eslint.config.js +0 -18
  67. package/rslib.config.ts +0 -40
  68. package/src/commands/update-exports/analyze-imports.ts +0 -112
  69. package/src/commands/update-exports/command.ts +0 -38
  70. package/src/commands/update-exports/config.ts +0 -99
  71. package/src/commands/update-exports/file-utils.ts +0 -178
  72. package/src/commands/update-exports/generate-exports.ts +0 -74
  73. package/src/commands/update-exports/index.ts +0 -1
  74. package/src/commands/update-exports/process-package.ts +0 -164
  75. package/src/commands/update-exports/types.ts +0 -94
  76. package/src/index.ts +0 -28
  77. package/src/lib/logger.ts +0 -39
  78. package/tsconfig.build.json +0 -5
  79. package/tsconfig.json +0 -14
@@ -1,58 +0,0 @@
1
- import * as __WEBPACK_EXTERNAL_MODULE_ts_morph_07c7ce60__ from "ts-morph";
2
- function makeRegexPrefixesToRemove(prefixes) {
3
- const prefixPattern = prefixes.join("|");
4
- return new RegExp(`^.?\\/?(?:${prefixPattern})\\/(.*)$`);
5
- }
6
- function processExportPath(modulePath, regexPattern) {
7
- let processedPath = modulePath;
8
- const match = processedPath.match(regexPattern);
9
- if (match) {
10
- const remainingPath = match[1];
11
- processedPath = remainingPath.startsWith("./") ? remainingPath : `./${remainingPath}`;
12
- }
13
- return processedPath;
14
- }
15
- function analyzeImports(indexFilePath, packageConfig) {
16
- const project = new __WEBPACK_EXTERNAL_MODULE_ts_morph_07c7ce60__.Project();
17
- let sourceFile;
18
- try {
19
- sourceFile = project.addSourceFileAtPath(indexFilePath);
20
- } catch (error) {
21
- console.error(`Error loading source file at ${indexFilePath}:`, error);
22
- return {
23
- imports: []
24
- };
25
- }
26
- const imports = [];
27
- const prefixesToRemove = packageConfig.exportPathPrefixesToRemove ?? [];
28
- const regexPattern = makeRegexPrefixesToRemove(prefixesToRemove);
29
- for (const exportDecl of sourceFile.getExportDeclarations()){
30
- let moduleSpecifier = exportDecl.getModuleSpecifierValue();
31
- if (!moduleSpecifier) continue;
32
- if (moduleSpecifier.startsWith("@/")) moduleSpecifier = `./${moduleSpecifier.slice(2)}`;
33
- const isExternal = !moduleSpecifier.startsWith(".");
34
- if (isExternal) continue;
35
- const parts = moduleSpecifier.split("/").filter(Boolean);
36
- if (parts.length < 2) continue;
37
- let directory;
38
- if (parts.length <= 1) directory = ".";
39
- else {
40
- directory = parts.slice(0, -1).join("/");
41
- if (directory.startsWith("./")) directory = directory.slice(2);
42
- }
43
- const name = parts.at(-1) ?? "";
44
- const importPath = {
45
- originalPath: moduleSpecifier,
46
- directory,
47
- name,
48
- exportPath: processExportPath(moduleSpecifier, regexPattern)
49
- };
50
- imports.push(importPath);
51
- }
52
- return {
53
- imports
54
- };
55
- }
56
- export { analyzeImports };
57
-
58
- //# sourceMappingURL=analyze-imports.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"commands/update-exports/analyze-imports.js","sources":["webpack://@codefast/cli/./src/commands/update-exports/analyze-imports.ts"],"sourcesContent":["import type { SourceFile } from \"ts-morph\";\n\nimport { Project } from \"ts-morph\";\n\nimport type { AnalysisResult, ImportPath, PackageConfig } from \"@/commands/update-exports/types\";\n\n/**\n * Creates a regex to remove specified prefixes from paths\n * @param prefixes - Array of prefixes to remove\n * @returns RegExp matching any prefix\n */\nfunction makeRegexPrefixesToRemove(prefixes: string[]): RegExp {\n // Matches: ^\\.?\\/?(prefix1|prefix2)\\/(.*)\n // - ^\\.?\\/? : Optional ./ or /\n // - (prefix1|prefix2): Any prefix from the list\n // - \\/(.*) : Remaining path after prefix\n const prefixPattern = prefixes.join(\"|\");\n\n return new RegExp(`^.?\\\\/?(?:${prefixPattern})\\\\/(.*)$`);\n}\n\n/**\n * Processes an export path by removing specified prefixes\n * @param modulePath - Path to process\n * @param regexPattern - Regex for prefix removal\n * @returns Processed path starting with ./\n */\nfunction processExportPath(modulePath: string, regexPattern: RegExp): string {\n let processedPath = modulePath;\n const match = processedPath.match(regexPattern);\n\n if (match) {\n const remainingPath = match[1];\n\n processedPath = remainingPath.startsWith(\"./\") ? remainingPath : `./${remainingPath}`;\n }\n\n return processedPath;\n}\n\n/**\n * Analyzes imports from an index.ts file\n * @param indexFilePath - Path to index.ts\n * @param packageConfig - Package configuration\n * @returns AnalysisResult containing import paths\n */\nexport function analyzeImports(indexFilePath: string, packageConfig: PackageConfig): AnalysisResult {\n const project = new Project();\n let sourceFile: SourceFile;\n\n try {\n sourceFile = project.addSourceFileAtPath(indexFilePath);\n } catch (error) {\n console.error(`Error loading source file at ${indexFilePath}:`, error);\n\n return { imports: [] };\n }\n\n const imports: ImportPath[] = [];\n const prefixesToRemove = packageConfig.exportPathPrefixesToRemove ?? [];\n const regexPattern = makeRegexPrefixesToRemove(prefixesToRemove);\n\n for (const exportDecl of sourceFile.getExportDeclarations()) {\n let moduleSpecifier = exportDecl.getModuleSpecifierValue();\n\n if (!moduleSpecifier) {\n continue;\n }\n\n // Normalize @/ to ./\n if (moduleSpecifier.startsWith(\"@/\")) {\n moduleSpecifier = `./${moduleSpecifier.slice(2)}`;\n }\n\n const isExternal = !moduleSpecifier.startsWith(\".\");\n\n if (isExternal) {\n continue;\n }\n\n const parts = moduleSpecifier.split(\"/\").filter(Boolean);\n\n if (parts.length < 2) {\n continue;\n }\n\n let directory;\n\n if (parts.length <= 1) {\n directory = \".\";\n } else {\n directory = parts.slice(0, -1).join(\"/\");\n\n if (directory.startsWith(\"./\")) {\n directory = directory.slice(2);\n }\n }\n\n const name = parts.at(-1) ?? \"\";\n\n const importPath: ImportPath = {\n originalPath: moduleSpecifier,\n directory,\n name,\n exportPath: processExportPath(moduleSpecifier, regexPattern),\n };\n\n imports.push(importPath);\n }\n\n return { imports };\n}\n"],"names":["makeRegexPrefixesToRemove","prefixes","prefixPattern","RegExp","processExportPath","modulePath","regexPattern","processedPath","match","remainingPath","analyzeImports","indexFilePath","packageConfig","project","Project","sourceFile","error","console","imports","prefixesToRemove","exportDecl","moduleSpecifier","isExternal","parts","Boolean","directory","name","importPath"],"mappings":";AAWA,SAASA,0BAA0BC,QAAkB;IAKnD,MAAMC,gBAAgBD,SAAS,IAAI,CAAC;IAEpC,OAAO,IAAIE,OAAO,CAAC,UAAU,EAAED,cAAc,SAAS,CAAC;AACzD;AAQA,SAASE,kBAAkBC,UAAkB,EAAEC,YAAoB;IACjE,IAAIC,gBAAgBF;IACpB,MAAMG,QAAQD,cAAc,KAAK,CAACD;IAElC,IAAIE,OAAO;QACT,MAAMC,gBAAgBD,KAAK,CAAC,EAAE;QAE9BD,gBAAgBE,cAAc,UAAU,CAAC,QAAQA,gBAAgB,CAAC,EAAE,EAAEA,eAAe;IACvF;IAEA,OAAOF;AACT;AAQO,SAASG,eAAeC,aAAqB,EAAEC,aAA4B;IAChF,MAAMC,UAAU,IAAIC,8CAAAA,OAAOA;IAC3B,IAAIC;IAEJ,IAAI;QACFA,aAAaF,QAAQ,mBAAmB,CAACF;IAC3C,EAAE,OAAOK,OAAO;QACdC,QAAQ,KAAK,CAAC,CAAC,6BAA6B,EAAEN,cAAc,CAAC,CAAC,EAAEK;QAEhE,OAAO;YAAE,SAAS,EAAE;QAAC;IACvB;IAEA,MAAME,UAAwB,EAAE;IAChC,MAAMC,mBAAmBP,cAAc,0BAA0B,IAAI,EAAE;IACvE,MAAMN,eAAeN,0BAA0BmB;IAE/C,KAAK,MAAMC,cAAcL,WAAW,qBAAqB,GAAI;QAC3D,IAAIM,kBAAkBD,WAAW,uBAAuB;QAExD,IAAI,CAACC,iBACH;QAIF,IAAIA,gBAAgB,UAAU,CAAC,OAC7BA,kBAAkB,CAAC,EAAE,EAAEA,gBAAgB,KAAK,CAAC,IAAI;QAGnD,MAAMC,aAAa,CAACD,gBAAgB,UAAU,CAAC;QAE/C,IAAIC,YACF;QAGF,MAAMC,QAAQF,gBAAgB,KAAK,CAAC,KAAK,MAAM,CAACG;QAEhD,IAAID,MAAM,MAAM,GAAG,GACjB;QAGF,IAAIE;QAEJ,IAAIF,MAAM,MAAM,IAAI,GAClBE,YAAY;aACP;YACLA,YAAYF,MAAM,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC;YAEpC,IAAIE,UAAU,UAAU,CAAC,OACvBA,YAAYA,UAAU,KAAK,CAAC;QAEhC;QAEA,MAAMC,OAAOH,MAAM,EAAE,CAAC,OAAO;QAE7B,MAAMI,aAAyB;YAC7B,cAAcN;YACdI;YACAC;YACA,YAAYtB,kBAAkBiB,iBAAiBf;QACjD;QAEAY,QAAQ,IAAI,CAACS;IACf;IAEA,OAAO;QAAET;IAAQ;AACnB"}
@@ -1,24 +0,0 @@
1
- import * as __WEBPACK_EXTERNAL_MODULE__process_package_js_d641fa54__ from "./process-package.js";
2
- import * as __WEBPACK_EXTERNAL_MODULE__lib_logger_js_97e58d48__ from "../../lib/logger.js";
3
- function createUpdateExportsCommand(program) {
4
- program.command("update-exports").description("Updates exports for all packages").option("-p, --package <package>", "Filter by package name").option("-d, --dry-run", "Run without making changes").option("-v, --verbose", "Show detailed output").option("-c, --config <path>", "Path to configuration file").action(async (options)=>{
5
- const processorOptions = {
6
- packageFilter: options.package,
7
- dryRun: Boolean(options.dryRun),
8
- verbose: Boolean(options.verbose),
9
- configPath: options.config
10
- };
11
- const logger = new __WEBPACK_EXTERNAL_MODULE__lib_logger_js_97e58d48__.Logger({
12
- verbose: processorOptions.verbose
13
- });
14
- try {
15
- await (0, __WEBPACK_EXTERNAL_MODULE__process_package_js_d641fa54__.processAllPackages)(processorOptions, logger);
16
- } catch (error) {
17
- logger.error("Error processing packages:", error);
18
- process.exit(1);
19
- }
20
- });
21
- }
22
- export { createUpdateExportsCommand };
23
-
24
- //# sourceMappingURL=command.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"commands/update-exports/command.js","sources":["webpack://@codefast/cli/./src/commands/update-exports/command.ts"],"sourcesContent":["import type { Command } from \"commander\";\n\nimport type { ProcessOptions } from \"@/commands/update-exports/types\";\n\nimport { processAllPackages } from \"@/commands/update-exports/process-package\";\nimport { Logger } from \"@/lib/logger\";\n\n/**\n * Creates a commander command for updating exports\n * @param program - Commander program instance\n */\nexport function createUpdateExportsCommand(program: Command): void {\n // noinspection RequiredAttributes\n program\n .command(\"update-exports\")\n .description(\"Updates exports for all packages\")\n .option(\"-p, --package <package>\", \"Filter by package name\")\n .option(\"-d, --dry-run\", \"Run without making changes\")\n .option(\"-v, --verbose\", \"Show detailed output\")\n .option(\"-c, --config <path>\", \"Path to configuration file\")\n .action(async (options) => {\n const processorOptions: ProcessOptions = {\n packageFilter: options.package,\n dryRun: Boolean(options.dryRun),\n verbose: Boolean(options.verbose),\n configPath: options.config,\n };\n\n const logger = new Logger({ verbose: processorOptions.verbose });\n\n try {\n await processAllPackages(processorOptions, logger);\n } catch (error) {\n logger.error(\"Error processing packages:\", error);\n process.exit(1);\n }\n });\n}\n"],"names":["createUpdateExportsCommand","program","options","processorOptions","Boolean","logger","Logger","processAllPackages","error","process"],"mappings":";;AAWO,SAASA,2BAA2BC,OAAgB;IAEzDA,QACG,OAAO,CAAC,kBACR,WAAW,CAAC,oCACZ,MAAM,CAAC,2BAA2B,0BAClC,MAAM,CAAC,iBAAiB,8BACxB,MAAM,CAAC,iBAAiB,wBACxB,MAAM,CAAC,uBAAuB,8BAC9B,MAAM,CAAC,OAAOC;QACb,MAAMC,mBAAmC;YACvC,eAAeD,QAAQ,OAAO;YAC9B,QAAQE,QAAQF,QAAQ,MAAM;YAC9B,SAASE,QAAQF,QAAQ,OAAO;YAChC,YAAYA,QAAQ,MAAM;QAC5B;QAEA,MAAMG,SAAS,IAAIC,oDAAAA,MAAMA,CAAC;YAAE,SAASH,iBAAiB,OAAO;QAAC;QAE9D,IAAI;YACF,MAAMI,AAAAA,IAAAA,yDAAAA,kBAAAA,AAAAA,EAAmBJ,kBAAkBE;QAC7C,EAAE,OAAOG,OAAO;YACdH,OAAO,KAAK,CAAC,8BAA8BG;YAC3CC,QAAQ,IAAI,CAAC;QACf;IACF;AACJ"}
@@ -1,62 +0,0 @@
1
- import * as __WEBPACK_EXTERNAL_MODULE_lodash_es_18c59938__ from "lodash-es";
2
- import * as __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__ from "node:fs";
3
- import * as __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__ from "node:path";
4
- import * as __WEBPACK_EXTERNAL_MODULE__types_js_7eec16d2__ from "./types.js";
5
- let cachedConfig = null;
6
- function loadConfigFile(configPath) {
7
- if (!configPath) return {};
8
- try {
9
- const fullPath = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].resolve(configPath);
10
- if (!__WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].existsSync(fullPath)) {
11
- console.warn(`Configuration file not found at ${fullPath}`);
12
- return {};
13
- }
14
- const configContent = __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].readFileSync(fullPath, "utf8");
15
- const config = JSON.parse(configContent);
16
- return __WEBPACK_EXTERNAL_MODULE__types_js_7eec16d2__.ScriptConfigSchema.parse(config);
17
- } catch (error) {
18
- console.error("Error reading configuration file:", error);
19
- return {};
20
- }
21
- }
22
- function getConfig(configPath) {
23
- if (cachedConfig && !configPath) return cachedConfig;
24
- const userConfig = loadConfigFile(configPath);
25
- const config = (0, __WEBPACK_EXTERNAL_MODULE_lodash_es_18c59938__.merge)({}, defaultConfig, userConfig);
26
- if (!configPath) cachedConfig = config;
27
- return config;
28
- }
29
- function getPackageConfig(packageName, config) {
30
- const configObj = config ?? getConfig();
31
- const customConfig = configObj.customPackageConfigs[packageName] ?? {};
32
- return {
33
- ...configObj.defaultPackageConfig,
34
- ...customConfig
35
- };
36
- }
37
- const defaultConfig = {
38
- packagesGlob: "./packages/**/package.json",
39
- defaultPackageConfig: {
40
- cjsOutputPattern: "./dist/cjs/{dir}/{name}.cjs",
41
- esmOutputPattern: "./dist/esm/{dir}/{name}.js",
42
- packageJsonPath: "package.json",
43
- srcIndexPath: "src/index.ts",
44
- typesOutputCjsPattern: "./dist/types/{dir}/{name}.d.ts",
45
- typesOutputPattern: "./dist/types/{dir}/{name}.d.ts"
46
- },
47
- customPackageConfigs: {
48
- "@codefast/ui": {
49
- exportPathPrefixesToRemove: [
50
- "components"
51
- ]
52
- },
53
- "@codefast/style-guide": {
54
- exportPathPrefixesToRemove: [
55
- "configs"
56
- ]
57
- }
58
- }
59
- };
60
- export { defaultConfig, getConfig, getPackageConfig };
61
-
62
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"commands/update-exports/config.js","sources":["webpack://@codefast/cli/./src/commands/update-exports/config.ts"],"sourcesContent":["import { merge } from \"lodash-es\";\nimport fs from \"node:fs\";\nimport path from \"node:path\";\n\nimport type { PackageConfig, ScriptConfig } from \"@/commands/update-exports/types\";\n\nimport { ScriptConfigSchema } from \"@/commands/update-exports/types\";\n\n// Cache for storing configuration to avoid repeated file reads\nlet cachedConfig: null | ScriptConfig = null;\n\n/**\n * Loads and validates configuration from a file\n * @param configPath - Optional path to the config file\n * @returns Partial ScriptConfig or empty object if not found/invalid\n */\nfunction loadConfigFile(configPath?: string): Partial<ScriptConfig> {\n if (!configPath) {\n return {};\n }\n\n try {\n const fullPath = path.resolve(configPath);\n\n if (!fs.existsSync(fullPath)) {\n console.warn(`Configuration file not found at ${fullPath}`);\n\n return {};\n }\n\n const configContent = fs.readFileSync(fullPath, \"utf8\");\n const config = JSON.parse(configContent);\n\n // Validate against schema\n return ScriptConfigSchema.parse(config);\n } catch (error) {\n console.error(\"Error reading configuration file:\", error);\n\n return {};\n }\n}\n\n/**\n * Retrieves merged configuration, using cache if no path is provided\n * @param configPath - Optional path to override default config\n * @returns Merged ScriptConfig\n */\nexport function getConfig(configPath?: string): ScriptConfig {\n if (cachedConfig && !configPath) {\n return cachedConfig;\n }\n\n const userConfig = loadConfigFile(configPath);\n const config = merge({}, defaultConfig, userConfig) as ScriptConfig;\n\n // Cache config if no path is provided\n if (!configPath) {\n cachedConfig = config;\n }\n\n return config;\n}\n\n/**\n * Retrieves configuration for a specific package\n * @param packageName - Name of the package\n * @param config - Optional ScriptConfig to use\n * @returns PackageConfig combining defaults and custom settings\n */\nexport function getPackageConfig(packageName: string, config?: ScriptConfig): PackageConfig {\n const configObj = config ?? getConfig();\n const customConfig = configObj.customPackageConfigs[packageName] ?? {};\n\n return {\n ...configObj.defaultPackageConfig,\n ...customConfig,\n };\n}\n\n// Default configuration for the script\nexport const defaultConfig: ScriptConfig = {\n packagesGlob: \"./packages/**/package.json\",\n defaultPackageConfig: {\n cjsOutputPattern: \"./dist/cjs/{dir}/{name}.cjs\",\n esmOutputPattern: \"./dist/esm/{dir}/{name}.js\",\n packageJsonPath: \"package.json\",\n srcIndexPath: \"src/index.ts\",\n typesOutputCjsPattern: \"./dist/types/{dir}/{name}.d.ts\",\n typesOutputPattern: \"./dist/types/{dir}/{name}.d.ts\",\n },\n customPackageConfigs: {\n \"@codefast/ui\": {\n exportPathPrefixesToRemove: [\"components\"],\n },\n \"@codefast/style-guide\": {\n exportPathPrefixesToRemove: [\"configs\"],\n },\n },\n};\n"],"names":["cachedConfig","loadConfigFile","configPath","fullPath","path","fs","console","configContent","config","JSON","ScriptConfigSchema","error","getConfig","userConfig","merge","defaultConfig","getPackageConfig","packageName","configObj","customConfig"],"mappings":";;;;AASA,IAAIA,eAAoC;AAOxC,SAASC,eAAeC,UAAmB;IACzC,IAAI,CAACA,YACH,OAAO,CAAC;IAGV,IAAI;QACF,MAAMC,WAAWC,8CAAAA,CAAAA,UAAAA,CAAAA,OAAY,CAACF;QAE9B,IAAI,CAACG,4CAAAA,CAAAA,UAAAA,CAAAA,UAAa,CAACF,WAAW;YAC5BG,QAAQ,IAAI,CAAC,CAAC,gCAAgC,EAAEH,UAAU;YAE1D,OAAO,CAAC;QACV;QAEA,MAAMI,gBAAgBF,4CAAAA,CAAAA,UAAAA,CAAAA,YAAe,CAACF,UAAU;QAChD,MAAMK,SAASC,KAAK,KAAK,CAACF;QAG1B,OAAOG,+CAAAA,kBAAAA,CAAAA,KAAwB,CAACF;IAClC,EAAE,OAAOG,OAAO;QACdL,QAAQ,KAAK,CAAC,qCAAqCK;QAEnD,OAAO,CAAC;IACV;AACF;AAOO,SAASC,UAAUV,UAAmB;IAC3C,IAAIF,gBAAgB,CAACE,YACnB,OAAOF;IAGT,MAAMa,aAAaZ,eAAeC;IAClC,MAAMM,SAASM,AAAAA,IAAAA,+CAAAA,KAAAA,AAAAA,EAAM,CAAC,GAAGC,eAAeF;IAGxC,IAAI,CAACX,YACHF,eAAeQ;IAGjB,OAAOA;AACT;AAQO,SAASQ,iBAAiBC,WAAmB,EAAET,MAAqB;IACzE,MAAMU,YAAYV,UAAUI;IAC5B,MAAMO,eAAeD,UAAU,oBAAoB,CAACD,YAAY,IAAI,CAAC;IAErE,OAAO;QACL,GAAGC,UAAU,oBAAoB;QACjC,GAAGC,YAAY;IACjB;AACF;AAGO,MAAMJ,gBAA8B;IACzC,cAAc;IACd,sBAAsB;QACpB,kBAAkB;QAClB,kBAAkB;QAClB,iBAAiB;QACjB,cAAc;QACd,uBAAuB;QACvB,oBAAoB;IACtB;IACA,sBAAsB;QACpB,gBAAgB;YACd,4BAA4B;gBAAC;aAAa;QAC5C;QACA,yBAAyB;YACvB,4BAA4B;gBAAC;aAAU;QACzC;IACF;AACF"}
@@ -1,81 +0,0 @@
1
- import * as __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__ from "node:fs";
2
- import * as __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__ from "node:path";
3
- const EXPORTS_ANALYSIS_DIR = ".exports-analysis";
4
- const EXPORTS_PREVIEW_FILE = "exports-preview.json";
5
- const EXPORTS_ANALYSIS_FILE = "exports-analysis.json";
6
- const ENCODING = "utf8";
7
- const JSON_INDENT = 2;
8
- const FileUtils = {
9
- exists (filePath) {
10
- return __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].existsSync(filePath);
11
- },
12
- ensureDirectoryExists (dirPath) {
13
- if (!__WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].existsSync(dirPath)) __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].mkdirSync(dirPath, {
14
- recursive: true
15
- });
16
- },
17
- readJsonFile (filePath) {
18
- try {
19
- const content = __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].readFileSync(filePath, ENCODING);
20
- return JSON.parse(content);
21
- } catch (error) {
22
- console.error(`Error reading JSON file at ${filePath}:`, error);
23
- return null;
24
- }
25
- },
26
- writeJsonFile (filePath, content) {
27
- try {
28
- __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].writeFileSync(filePath, `${JSON.stringify(content, null, JSON_INDENT)}\n`, ENCODING);
29
- return true;
30
- } catch (error) {
31
- console.error(`Error writing JSON file at ${filePath}:`, error);
32
- return false;
33
- }
34
- },
35
- getAnalysisDir (packageDir) {
36
- const outputDir = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(packageDir, EXPORTS_ANALYSIS_DIR);
37
- this.ensureDirectoryExists(outputDir);
38
- return outputDir;
39
- },
40
- createBackupFilename (baseFilename) {
41
- const timestamp = new Date().toISOString().replaceAll(/[:.]/g, "-");
42
- return `${baseFilename}.backup.${timestamp}`;
43
- }
44
- };
45
- function fileExists(filePath) {
46
- return FileUtils.exists(filePath);
47
- }
48
- function readPackageJson(filePath) {
49
- return FileUtils.readJsonFile(filePath);
50
- }
51
- function backupPackageJson(filePath) {
52
- try {
53
- const content = __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].readFileSync(filePath, ENCODING);
54
- const dir = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].dirname(filePath);
55
- const backupDir = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(dir, EXPORTS_ANALYSIS_DIR);
56
- FileUtils.ensureDirectoryExists(backupDir);
57
- const baseName = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].basename(filePath);
58
- const backupPath = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(backupDir, FileUtils.createBackupFilename(baseName));
59
- __WEBPACK_EXTERNAL_MODULE_node_fs_5ea92f0c__["default"].writeFileSync(backupPath, content, ENCODING);
60
- return true;
61
- } catch (error) {
62
- console.error(`Error backing up package.json at ${filePath}:`, error);
63
- return false;
64
- }
65
- }
66
- function savePackageJson(filePath, content) {
67
- return FileUtils.writeJsonFile(filePath, content);
68
- }
69
- function saveJsonToFile(packageDir, fileName, content) {
70
- const outputDir = FileUtils.getAnalysisDir(packageDir);
71
- FileUtils.writeJsonFile(__WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(outputDir, fileName), content);
72
- }
73
- function saveExportsAnalysis(packageDir, analysis) {
74
- saveJsonToFile(packageDir, EXPORTS_ANALYSIS_FILE, analysis);
75
- }
76
- function saveExportsPreview(packageDir, exports) {
77
- saveJsonToFile(packageDir, EXPORTS_PREVIEW_FILE, exports);
78
- }
79
- export { backupPackageJson, fileExists, readPackageJson, saveExportsAnalysis, saveExportsPreview, saveJsonToFile, savePackageJson };
80
-
81
- //# sourceMappingURL=file-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"commands/update-exports/file-utils.js","sources":["webpack://@codefast/cli/./src/commands/update-exports/file-utils.ts"],"sourcesContent":["import fs from \"node:fs\";\nimport path from \"node:path\";\n\nimport type { AnalysisResult, PackageExports, PackageJson } from \"@/commands/update-exports/types\";\n\n// Constants for file operations\nconst EXPORTS_ANALYSIS_DIR = \".exports-analysis\";\nconst EXPORTS_PREVIEW_FILE = \"exports-preview.json\";\nconst EXPORTS_ANALYSIS_FILE = \"exports-analysis.json\";\nconst ENCODING = \"utf8\";\nconst JSON_INDENT = 2;\n/**\n * Utility functions for file and directory operations\n */\nconst FileUtils = {\n /**\n * Checks if a file exists\n * @param filePath - Path to check\n * @returns True if a file exists\n */\n exists(filePath: string): boolean {\n return fs.existsSync(filePath);\n },\n\n /**\n * Creates a directory if it doesn't exist\n * @param dirPath - Directory path\n */\n ensureDirectoryExists(dirPath: string): void {\n if (!fs.existsSync(dirPath)) {\n fs.mkdirSync(dirPath, { recursive: true });\n }\n },\n\n /**\n * Reads and parses a JSON file\n * @param filePath - Path to JSON file\n * @returns Parsed content or null if error\n */\n readJsonFile<T>(filePath: string): null | T {\n try {\n const content = fs.readFileSync(filePath, ENCODING);\n\n return JSON.parse(content) as T;\n } catch (error) {\n console.error(`Error reading JSON file at ${filePath}:`, error);\n\n return null;\n }\n },\n\n /**\n * Writes content to a JSON file\n * @param filePath - Path to write\n * @param content - Content to write\n * @returns True if successful\n */\n writeJsonFile<T>(filePath: string, content: T): boolean {\n try {\n fs.writeFileSync(filePath, `${JSON.stringify(content, null, JSON_INDENT)}\\n`, ENCODING);\n\n return true;\n } catch (error) {\n console.error(`Error writing JSON file at ${filePath}:`, error);\n\n return false;\n }\n },\n\n /**\n * Gets the exports analysis directory path\n * @param packageDir - Package directory\n * @returns Analysis directory path\n */\n getAnalysisDir(packageDir: string): string {\n const outputDir = path.join(packageDir, EXPORTS_ANALYSIS_DIR);\n\n this.ensureDirectoryExists(outputDir);\n\n return outputDir;\n },\n\n /**\n * Creates a timestamped backup filename\n * @param baseFilename - Original filename\n * @returns Backup filename with timestamp\n */\n createBackupFilename(baseFilename: string): string {\n const timestamp = new Date().toISOString().replaceAll(/[:.]/g, \"-\");\n\n return `${baseFilename}.backup.${timestamp}`;\n },\n};\n\n/**\n * Checks if a file exists\n * @param filePath - Path to check\n * @returns True if a file exists\n */\nexport function fileExists(filePath: string): boolean {\n return FileUtils.exists(filePath);\n}\n\n/**\n * Reads and parses package.json content\n * @param filePath - Path to package.json\n * @returns Parsed PackageJson or null if error\n */\nexport function readPackageJson(filePath: string): null | PackageJson {\n return FileUtils.readJsonFile<PackageJson>(filePath);\n}\n\n/**\n * Creates a backup of package.json\n * @param filePath - Path to package.json\n * @returns True if backup was successful\n */\nexport function backupPackageJson(filePath: string): boolean {\n try {\n const content = fs.readFileSync(filePath, ENCODING);\n const dir = path.dirname(filePath);\n const backupDir = path.join(dir, EXPORTS_ANALYSIS_DIR);\n\n FileUtils.ensureDirectoryExists(backupDir);\n\n const baseName = path.basename(filePath);\n const backupPath = path.join(backupDir, FileUtils.createBackupFilename(baseName));\n\n fs.writeFileSync(backupPath, content, ENCODING);\n\n return true;\n } catch (error) {\n console.error(`Error backing up package.json at ${filePath}:`, error);\n\n return false;\n }\n}\n\n/**\n * Saves updated package.json content\n * @param filePath - Path to package.json\n * @param content - Updated content\n * @returns True if save was successful\n */\nexport function savePackageJson(filePath: string, content: PackageJson): boolean {\n return FileUtils.writeJsonFile(filePath, content);\n}\n\n/**\n * Saves the given JSON content to a specified file within the analysis directory.\n *\n * @param packageDir - The root directory where the analysis directory resides.\n * @param fileName - The name of the file to which the JSON content will be written.\n * @param content - The JSON content to save to the file.\n */\nexport function saveJsonToFile<T>(packageDir: string, fileName: string, content: T): void {\n const outputDir = FileUtils.getAnalysisDir(packageDir);\n\n FileUtils.writeJsonFile(path.join(outputDir, fileName), content);\n}\n\n/**\n * Saves exports analysis results\n * @param packageDir - Package directory\n * @param analysis - Analysis results\n */\nexport function saveExportsAnalysis(packageDir: string, analysis: AnalysisResult): void {\n saveJsonToFile(packageDir, EXPORTS_ANALYSIS_FILE, analysis);\n}\n\n/**\n * Saves preview of generated exports\n * @param packageDir - Package directory\n * @param exports - Generated exports\n */\nexport function saveExportsPreview(packageDir: string, exports: PackageExports): void {\n saveJsonToFile(packageDir, EXPORTS_PREVIEW_FILE, exports);\n}\n"],"names":["EXPORTS_ANALYSIS_DIR","EXPORTS_PREVIEW_FILE","EXPORTS_ANALYSIS_FILE","ENCODING","JSON_INDENT","FileUtils","filePath","fs","dirPath","content","JSON","error","console","packageDir","outputDir","path","baseFilename","timestamp","Date","fileExists","readPackageJson","backupPackageJson","dir","backupDir","baseName","backupPath","savePackageJson","saveJsonToFile","fileName","saveExportsAnalysis","analysis","saveExportsPreview","exports"],"mappings":"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"}
@@ -1,42 +0,0 @@
1
- import * as __WEBPACK_EXTERNAL_MODULE__config_js_0f05d986__ from "./config.js";
2
- function formatOutputPath(pattern, directory, name) {
3
- const dirPart = "." === directory ? "" : `${directory}/`;
4
- return pattern.replace("{dir}/", dirPart).replace("{dir}", directory).replace("{name}", name);
5
- }
6
- function generateExports(packageName, imports, existingExports = {}, config) {
7
- const packageConfig = (0, __WEBPACK_EXTERNAL_MODULE__config_js_0f05d986__.getPackageConfig)(packageName, config);
8
- const exports = {
9
- ".": existingExports["."] ?? {
10
- import: {
11
- types: "./dist/types/index.d.ts",
12
- default: "./dist/esm/index.js"
13
- },
14
- require: {
15
- types: "./dist/types/index.d.cts",
16
- default: "./dist/cjs/index.cjs"
17
- }
18
- }
19
- };
20
- if (existingExports["./styles.css"]) exports["./styles.css"] = existingExports["./styles.css"];
21
- for (const importPath of imports){
22
- const { directory, name, exportPath } = importPath;
23
- const esmOutput = formatOutputPath(packageConfig.esmOutputPattern, directory, name);
24
- const cjsOutput = formatOutputPath(packageConfig.cjsOutputPattern, directory, name);
25
- const typesOutput = formatOutputPath(packageConfig.typesOutputPattern, directory, name);
26
- const typesCjsOutput = formatOutputPath(packageConfig.typesOutputCjsPattern, directory, name);
27
- exports[exportPath] = {
28
- import: {
29
- types: typesOutput,
30
- default: esmOutput
31
- },
32
- require: {
33
- types: typesCjsOutput,
34
- default: cjsOutput
35
- }
36
- };
37
- }
38
- return exports;
39
- }
40
- export { generateExports };
41
-
42
- //# sourceMappingURL=generate-exports.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"commands/update-exports/generate-exports.js","sources":["webpack://@codefast/cli/./src/commands/update-exports/generate-exports.ts"],"sourcesContent":["import type { ImportPath, PackageExports, ScriptConfig } from \"@/commands/update-exports/types\";\n\nimport { getPackageConfig } from \"@/commands/update-exports/config\";\n\n/**\n * Formats an output path based on a pattern, directory, and name\n * @param pattern - Output pattern\n * @param directory - Directory path\n * @param name - Module name\n * @returns Formatted output path\n */\nfunction formatOutputPath(pattern: string, directory: string, name: string): string {\n const dirPart = directory === \".\" ? \"\" : `${directory}/`;\n\n return pattern.replace(\"{dir}/\", dirPart).replace(\"{dir}\", directory).replace(\"{name}\", name);\n}\n\n/**\n * Generates export structure for package.json\n * @param packageName - Name of the package\n * @param imports - Analyzed import paths\n * @param existingExports - Current exports to preserve\n * @param config - Optional ScriptConfig\n * @returns Updated PackageExports\n */\nexport function generateExports(\n packageName: string,\n imports: ImportPath[],\n existingExports: PackageExports = {},\n config?: ScriptConfig,\n): PackageExports {\n const packageConfig = getPackageConfig(packageName, config);\n\n const exports: PackageExports = {\n \".\": existingExports[\".\"] ?? {\n import: {\n types: \"./dist/types/index.d.ts\",\n default: \"./dist/esm/index.js\",\n },\n require: {\n types: \"./dist/types/index.d.cts\",\n default: \"./dist/cjs/index.cjs\",\n },\n },\n };\n\n // Preserve existing CSS exports\n if (existingExports[\"./styles.css\"]) {\n exports[\"./styles.css\"] = existingExports[\"./styles.css\"];\n }\n\n // Generate exports for each import path\n for (const importPath of imports) {\n const { directory, name, exportPath } = importPath;\n\n const esmOutput = formatOutputPath(packageConfig.esmOutputPattern, directory, name);\n const cjsOutput = formatOutputPath(packageConfig.cjsOutputPattern, directory, name);\n const typesOutput = formatOutputPath(packageConfig.typesOutputPattern, directory, name);\n const typesCjsOutput = formatOutputPath(packageConfig.typesOutputCjsPattern, directory, name);\n\n exports[exportPath] = {\n import: {\n types: typesOutput,\n default: esmOutput,\n },\n require: {\n types: typesCjsOutput,\n default: cjsOutput,\n },\n };\n }\n\n return exports;\n}\n"],"names":["formatOutputPath","pattern","directory","name","dirPart","generateExports","packageName","imports","existingExports","config","packageConfig","getPackageConfig","exports","importPath","exportPath","esmOutput","cjsOutput","typesOutput","typesCjsOutput"],"mappings":";AAWA,SAASA,iBAAiBC,OAAe,EAAEC,SAAiB,EAAEC,IAAY;IACxE,MAAMC,UAAUF,AAAc,QAAdA,YAAoB,KAAK,GAAGA,UAAU,CAAC,CAAC;IAExD,OAAOD,QAAQ,OAAO,CAAC,UAAUG,SAAS,OAAO,CAAC,SAASF,WAAW,OAAO,CAAC,UAAUC;AAC1F;AAUO,SAASE,gBACdC,WAAmB,EACnBC,OAAqB,EACrBC,kBAAkC,CAAC,CAAC,EACpCC,MAAqB;IAErB,MAAMC,gBAAgBC,AAAAA,IAAAA,gDAAAA,gBAAAA,AAAAA,EAAiBL,aAAaG;IAEpD,MAAMG,UAA0B;QAC9B,KAAKJ,eAAe,CAAC,IAAI,IAAI;YAC3B,QAAQ;gBACN,OAAO;gBACP,SAAS;YACX;YACA,SAAS;gBACP,OAAO;gBACP,SAAS;YACX;QACF;IACF;IAGA,IAAIA,eAAe,CAAC,eAAe,EACjCI,OAAO,CAAC,eAAe,GAAGJ,eAAe,CAAC,eAAe;IAI3D,KAAK,MAAMK,cAAcN,QAAS;QAChC,MAAM,EAAEL,SAAS,EAAEC,IAAI,EAAEW,UAAU,EAAE,GAAGD;QAExC,MAAME,YAAYf,iBAAiBU,cAAc,gBAAgB,EAAER,WAAWC;QAC9E,MAAMa,YAAYhB,iBAAiBU,cAAc,gBAAgB,EAAER,WAAWC;QAC9E,MAAMc,cAAcjB,iBAAiBU,cAAc,kBAAkB,EAAER,WAAWC;QAClF,MAAMe,iBAAiBlB,iBAAiBU,cAAc,qBAAqB,EAAER,WAAWC;QAExFS,OAAO,CAACE,WAAW,GAAG;YACpB,QAAQ;gBACN,OAAOG;gBACP,SAASF;YACX;YACA,SAAS;gBACP,OAAOG;gBACP,SAASF;YACX;QACF;IACF;IAEA,OAAOJ;AACT"}
@@ -1,3 +0,0 @@
1
- import * as __WEBPACK_EXTERNAL_MODULE__command_js_d2148ccc__ from "./command.js";
2
- var __webpack_exports__createUpdateExportsCommand = __WEBPACK_EXTERNAL_MODULE__command_js_d2148ccc__.createUpdateExportsCommand;
3
- export { __webpack_exports__createUpdateExportsCommand as createUpdateExportsCommand };
@@ -1,93 +0,0 @@
1
- import * as __WEBPACK_EXTERNAL_MODULE_glob__ from "glob";
2
- import * as __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__ from "node:path";
3
- import * as __WEBPACK_EXTERNAL_MODULE__analyze_imports_js_d900fc30__ from "./analyze-imports.js";
4
- import * as __WEBPACK_EXTERNAL_MODULE__config_js_0f05d986__ from "./config.js";
5
- import * as __WEBPACK_EXTERNAL_MODULE__file_utils_js_ffedd89d__ from "./file-utils.js";
6
- import * as __WEBPACK_EXTERNAL_MODULE__generate_exports_js_5ef89e09__ from "./generate-exports.js";
7
- const DEFAULT_IGNORE_PATTERN = [
8
- "**/node_modules/**"
9
- ];
10
- async function findAllPackages(config) {
11
- const configObj = config ?? (0, __WEBPACK_EXTERNAL_MODULE__config_js_0f05d986__.getConfig)();
12
- return await (0, __WEBPACK_EXTERNAL_MODULE_glob__.glob)(configObj.packagesGlob, {
13
- ignore: DEFAULT_IGNORE_PATTERN
14
- });
15
- }
16
- function processPackage(packageJsonPath, options, logger) {
17
- const packageDir = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].dirname(packageJsonPath);
18
- const packageJson = (0, __WEBPACK_EXTERNAL_MODULE__file_utils_js_ffedd89d__.readPackageJson)(packageJsonPath);
19
- if (!packageJson) {
20
- logger.error(`Failed to read ${packageJsonPath}`);
21
- return false;
22
- }
23
- const packageName = packageJson.name;
24
- if (options.packageFilter && packageName !== options.packageFilter) {
25
- logger.debug(`Skipping ${packageName} (does not match filter)`);
26
- return false;
27
- }
28
- logger.info(`\n📦 Processing package: ${packageName}`);
29
- const config = (0, __WEBPACK_EXTERNAL_MODULE__config_js_0f05d986__.getConfig)(options.configPath);
30
- const packageConfig = (0, __WEBPACK_EXTERNAL_MODULE__config_js_0f05d986__.getPackageConfig)(packageName, config);
31
- const srcIndexPath = __WEBPACK_EXTERNAL_MODULE_node_path_c5b9b54f__["default"].join(packageDir, packageConfig.srcIndexPath);
32
- if (!(0, __WEBPACK_EXTERNAL_MODULE__file_utils_js_ffedd89d__.fileExists)(srcIndexPath)) {
33
- logger.error(`Source file not found at ${srcIndexPath}`);
34
- return false;
35
- }
36
- logger.info(`🔍 Analyzing imports from ${srcIndexPath}...`);
37
- const { imports } = (0, __WEBPACK_EXTERNAL_MODULE__analyze_imports_js_d900fc30__.analyzeImports)(srcIndexPath, packageConfig);
38
- if (0 === imports.length) {
39
- logger.warn(`No imports found to analyze in ${packageName}`);
40
- return false;
41
- }
42
- logger.success(`Analysis complete. Found ${imports.length} subpath exports.`);
43
- (0, __WEBPACK_EXTERNAL_MODULE__file_utils_js_ffedd89d__.saveExportsAnalysis)(packageDir, {
44
- imports
45
- });
46
- const newExports = (0, __WEBPACK_EXTERNAL_MODULE__generate_exports_js_5ef89e09__.generateExports)(packageName, imports, packageJson.exports, config);
47
- const currentExportsCount = packageJson.exports ? Object.keys(packageJson.exports).length : 0;
48
- const newExportsCount = Object.keys(newExports).length;
49
- logger.info(`📊 Exports: ${currentExportsCount} -> ${newExportsCount}`);
50
- if (options.dryRun) {
51
- (0, __WEBPACK_EXTERNAL_MODULE__file_utils_js_ffedd89d__.saveExportsPreview)(packageDir, newExports);
52
- logger.warn(`🧪 📄 Saved exports preview to .exports-analysis`);
53
- logger.warn(`🧪 🚫 Dry run: no changes saved for ${packageName}`);
54
- return true;
55
- }
56
- if ((0, __WEBPACK_EXTERNAL_MODULE__file_utils_js_ffedd89d__.backupPackageJson)(packageJsonPath)) logger.success(`Backed up ${packageJsonPath}`);
57
- const updatedPackageJson = {
58
- ...packageJson,
59
- exports: newExports
60
- };
61
- if ((0, __WEBPACK_EXTERNAL_MODULE__file_utils_js_ffedd89d__.savePackageJson)(packageJsonPath, updatedPackageJson)) {
62
- logger.success(`Updated exports for ${packageName}`);
63
- return true;
64
- }
65
- logger.error(`Failed to update ${packageJsonPath}`);
66
- return false;
67
- }
68
- async function processAllPackages(options, logger) {
69
- try {
70
- logger.info("🔍 Searching for packages...");
71
- const config = (0, __WEBPACK_EXTERNAL_MODULE__config_js_0f05d986__.getConfig)(options.configPath);
72
- const packageJsonPaths = await findAllPackages(config);
73
- if (0 === packageJsonPaths.length) return void logger.warn("⚠️ No packages found.");
74
- logger.success(`✅ Found ${packageJsonPaths.length} packages.`);
75
- let successCount = 0;
76
- let skipCount = 0;
77
- let errorCount = 0;
78
- for (const packageJsonPath of packageJsonPaths){
79
- const result = processPackage(packageJsonPath, options, logger);
80
- if (result) successCount++;
81
- else if (options.packageFilter) skipCount++;
82
- else errorCount++;
83
- }
84
- logger.success("\n✅ Completed exports update.");
85
- logger.info(`📊 Stats: ${successCount} succeeded, ${skipCount} skipped, ${errorCount} failed`);
86
- } catch (error) {
87
- logger.error("❌ Error processing packages:", error);
88
- throw error;
89
- }
90
- }
91
- export { findAllPackages, processAllPackages, processPackage };
92
-
93
- //# sourceMappingURL=process-package.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"commands/update-exports/process-package.js","sources":["webpack://@codefast/cli/./src/commands/update-exports/process-package.ts"],"sourcesContent":["import { glob } from \"glob\";\nimport path from \"node:path\";\n\nimport type { ProcessOptions, ScriptConfig } from \"@/commands/update-exports/types\";\nimport type { Logger } from \"@/lib/logger\";\n\nimport { analyzeImports } from \"@/commands/update-exports/analyze-imports\";\nimport { getConfig, getPackageConfig } from \"@/commands/update-exports/config\";\nimport {\n backupPackageJson,\n fileExists,\n readPackageJson,\n saveExportsAnalysis,\n saveExportsPreview,\n savePackageJson,\n} from \"@/commands/update-exports/file-utils\";\nimport { generateExports } from \"@/commands/update-exports/generate-exports\";\n\nconst DEFAULT_IGNORE_PATTERN = [\"**/node_modules/**\"];\n\n/**\n * Finds all package.json files in the workspace\n * @param config - Optional ScriptConfig\n * @returns Array of package.json paths\n */\nexport async function findAllPackages(config?: ScriptConfig): Promise<string[]> {\n const configObj = config ?? getConfig();\n\n return await glob(configObj.packagesGlob, {\n ignore: DEFAULT_IGNORE_PATTERN,\n });\n}\n\n/**\n * Processes a single package\n * @param packageJsonPath - Path to package.json\n * @param options - Processing options\n * @param logger - Logger instance\n * @returns True if processing was successful\n */\nexport function processPackage(packageJsonPath: string, options: ProcessOptions, logger: Logger): boolean {\n const packageDir = path.dirname(packageJsonPath);\n const packageJson = readPackageJson(packageJsonPath);\n\n if (!packageJson) {\n logger.error(`Failed to read ${packageJsonPath}`);\n\n return false;\n }\n\n const packageName = packageJson.name;\n\n // Skip if package doesn't match filter\n if (options.packageFilter && packageName !== options.packageFilter) {\n logger.debug(`Skipping ${packageName} (does not match filter)`);\n\n return false;\n }\n\n logger.info(`\\n📦 Processing package: ${packageName}`);\n\n const config = getConfig(options.configPath);\n const packageConfig = getPackageConfig(packageName, config);\n const srcIndexPath = path.join(packageDir, packageConfig.srcIndexPath);\n\n if (!fileExists(srcIndexPath)) {\n logger.error(`Source file not found at ${srcIndexPath}`);\n\n return false;\n }\n\n // Analyze imports\n logger.info(`🔍 Analyzing imports from ${srcIndexPath}...`);\n const { imports } = analyzeImports(srcIndexPath, packageConfig);\n\n if (imports.length === 0) {\n logger.warn(`No imports found to analyze in ${packageName}`);\n\n return false;\n }\n\n logger.success(`Analysis complete. Found ${imports.length} subpath exports.`);\n\n // Save analysis results\n saveExportsAnalysis(packageDir, { imports });\n\n // Generate new exports\n const newExports = generateExports(packageName, imports, packageJson.exports, config);\n\n // Compare export counts\n const currentExportsCount = packageJson.exports ? Object.keys(packageJson.exports).length : 0;\n const newExportsCount = Object.keys(newExports).length;\n\n logger.info(`📊 Exports: ${currentExportsCount} -> ${newExportsCount}`);\n\n if (options.dryRun) {\n saveExportsPreview(packageDir, newExports);\n logger.warn(`🧪 📄 Saved exports preview to .exports-analysis`);\n logger.warn(`🧪 🚫 Dry run: no changes saved for ${packageName}`);\n\n return true;\n }\n\n // Backup package.json\n if (backupPackageJson(packageJsonPath)) {\n logger.success(`Backed up ${packageJsonPath}`);\n }\n\n // Update package.json\n const updatedPackageJson = { ...packageJson, exports: newExports };\n\n if (savePackageJson(packageJsonPath, updatedPackageJson)) {\n logger.success(`Updated exports for ${packageName}`);\n\n return true;\n }\n\n logger.error(`Failed to update ${packageJsonPath}`);\n\n return false;\n}\n\n/**\n * Processes all packages in the workspace\n * @param options - Processing options\n * @param logger - Logger instance\n */\nexport async function processAllPackages(options: ProcessOptions, logger: Logger): Promise<void> {\n try {\n logger.info(\"🔍 Searching for packages...\");\n const config = getConfig(options.configPath);\n const packageJsonPaths = await findAllPackages(config);\n\n if (packageJsonPaths.length === 0) {\n logger.warn(\"⚠️ No packages found.\");\n\n return;\n }\n\n logger.success(`✅ Found ${packageJsonPaths.length} packages.`);\n\n let successCount = 0;\n let skipCount = 0;\n let errorCount = 0;\n\n for (const packageJsonPath of packageJsonPaths) {\n const result = processPackage(packageJsonPath, options, logger);\n\n if (result) {\n successCount++;\n } else if (options.packageFilter) {\n skipCount++;\n } else {\n errorCount++;\n }\n }\n\n logger.success(\"\\n✅ Completed exports update.\");\n logger.info(`📊 Stats: ${successCount} succeeded, ${skipCount} skipped, ${errorCount} failed`);\n } catch (error) {\n logger.error(\"❌ Error processing packages:\", error);\n throw error;\n }\n}\n"],"names":["DEFAULT_IGNORE_PATTERN","findAllPackages","config","configObj","getConfig","glob","processPackage","packageJsonPath","options","logger","packageDir","path","packageJson","readPackageJson","packageName","packageConfig","getPackageConfig","srcIndexPath","fileExists","imports","analyzeImports","saveExportsAnalysis","newExports","generateExports","currentExportsCount","Object","newExportsCount","saveExportsPreview","backupPackageJson","updatedPackageJson","savePackageJson","processAllPackages","packageJsonPaths","successCount","skipCount","errorCount","result","error"],"mappings":"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"}
@@ -1,18 +0,0 @@
1
- import * as __WEBPACK_EXTERNAL_MODULE_zod__ from "zod";
2
- const PackageConfigSchema = __WEBPACK_EXTERNAL_MODULE_zod__.z["interface"]({
3
- cjsOutputPattern: __WEBPACK_EXTERNAL_MODULE_zod__.z.string(),
4
- esmOutputPattern: __WEBPACK_EXTERNAL_MODULE_zod__.z.string(),
5
- packageJsonPath: __WEBPACK_EXTERNAL_MODULE_zod__.z.string(),
6
- srcIndexPath: __WEBPACK_EXTERNAL_MODULE_zod__.z.string(),
7
- typesOutputCjsPattern: __WEBPACK_EXTERNAL_MODULE_zod__.z.string(),
8
- typesOutputPattern: __WEBPACK_EXTERNAL_MODULE_zod__.z.string(),
9
- "exportPathPrefixesToRemove?": __WEBPACK_EXTERNAL_MODULE_zod__.z.array(__WEBPACK_EXTERNAL_MODULE_zod__.z.string())
10
- });
11
- const ScriptConfigSchema = __WEBPACK_EXTERNAL_MODULE_zod__.z["interface"]({
12
- customPackageConfigs: __WEBPACK_EXTERNAL_MODULE_zod__.z.record(__WEBPACK_EXTERNAL_MODULE_zod__.z.string(), PackageConfigSchema.partial()),
13
- defaultPackageConfig: PackageConfigSchema,
14
- packagesGlob: __WEBPACK_EXTERNAL_MODULE_zod__.z.string()
15
- });
16
- export { PackageConfigSchema, ScriptConfigSchema };
17
-
18
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"commands/update-exports/types.js","sources":["webpack://@codefast/cli/./src/commands/update-exports/types.ts"],"sourcesContent":["import { z } from \"zod\";\n\n// Schema for package configuration, defining output patterns and paths\nexport const PackageConfigSchema = z.interface({\n // Output path pattern for CommonJS (CJS) modules\n // Example: \"dist/cjs/*.js\" specifies where CJS files are emitted\n cjsOutputPattern: z.string(),\n // Output path pattern for ES Modules (ESM)\n // Example: \"dist/esm/*.js\" specifies where ESM files are emitted\n esmOutputPattern: z.string(),\n // Path to the package.json file\n // Used to read or update package metadata (e.g., version, exports)\n packageJsonPath: z.string(),\n // Path to the src/index.ts file\n // Main entry point for analyzing exports or building the package\n srcIndexPath: z.string(),\n // Output path pattern for CJS type definitions\n // Example: \"dist/cjs/*.d.ts\" for CJS-compatible type definitions\n typesOutputCjsPattern: z.string(),\n // General output path pattern for type definitions\n // Example: \"dist/types/*.d.ts\" for type definitions used by both CJS and ESM\n typesOutputPattern: z.string(),\n // Optional prefixes to strip from export paths\n // Example: [\"components\"] removes \"components\" from export paths\n \"exportPathPrefixesToRemove?\": z.array(z.string()),\n});\n\n// Schema for script configuration, defining package discovery and defaults\nexport const ScriptConfigSchema = z.interface({\n // Custom configurations for specific packages\n // Key is the package name, value is a partial override of defaultPackageConfig\n // Example: { \"my-package\": { cjsOutputPattern: \"dist/custom/*.js\" } }\n customPackageConfigs: z.record(z.string(), PackageConfigSchema.partial()),\n // Default configuration applied to all packages\n // Ensures consistent settings unless overridden\n defaultPackageConfig: PackageConfigSchema,\n // Glob pattern to locate packages in the project\n // Example: \"packages/*\" finds all package folders under packages/\n packagesGlob: z.string(),\n});\n\n// TypeScript type inferred from schemas for type safety\nexport type PackageConfig = z.infer<typeof PackageConfigSchema>;\nexport type ScriptConfig = z.infer<typeof ScriptConfigSchema>;\n\n// Interface for import path metadata\nexport interface ImportPath {\n // Directory containing the module (e.g., 'components')\n directory: string;\n // Export path for package.json (e.g., './button')\n exportPath: string;\n // Module name (e.g., 'Button')\n name: string;\n // Original import path (e.g., './components/Button')\n originalPath: string;\n}\n\n// Interface for import analysis results\nexport interface AnalysisResult {\n // List of analyzed import paths\n imports: ImportPath[];\n}\n\n// Interface for module export configuration\nexport interface ExportConfig {\n import: {\n default: string; // ESM default file (e.g., \"./dist/esm/index.js\")\n types: string; // ESM type definitions (e.g., \"./dist/types/index.d.ts\")\n };\n require: {\n default: string; // CJS default file (e.g., \"./dist/cjs/index.cjs\")\n types: string; // CJS type definitions (e.g., \"./dist/types/index.d.cts\")\n };\n}\n\nexport type ExportTarget = ExportConfig | string;\nexport type PackageExports = Record<string, ExportTarget>;\n\n// Interface for package.json structure\nexport interface PackageJson {\n [key: string]: unknown;\n name: string;\n version: string;\n\n exports?: PackageExports;\n}\n\n// Options for processing packages\nexport interface ProcessOptions {\n dryRun: boolean;\n verbose: boolean;\n configPath?: string;\n packageFilter?: string;\n}\n"],"names":["PackageConfigSchema","z","ScriptConfigSchema"],"mappings":";AAGO,MAAMA,sBAAsBC,gCAAAA,CAAAA,CAAAA,YAAW,CAAC;IAG7C,kBAAkBA,gCAAAA,CAAAA,CAAAA,MAAQ;IAG1B,kBAAkBA,gCAAAA,CAAAA,CAAAA,MAAQ;IAG1B,iBAAiBA,gCAAAA,CAAAA,CAAAA,MAAQ;IAGzB,cAAcA,gCAAAA,CAAAA,CAAAA,MAAQ;IAGtB,uBAAuBA,gCAAAA,CAAAA,CAAAA,MAAQ;IAG/B,oBAAoBA,gCAAAA,CAAAA,CAAAA,MAAQ;IAG5B,+BAA+BA,gCAAAA,CAAAA,CAAAA,KAAO,CAACA,gCAAAA,CAAAA,CAAAA,MAAQ;AACjD;AAGO,MAAMC,qBAAqBD,gCAAAA,CAAAA,CAAAA,YAAW,CAAC;IAI5C,sBAAsBA,gCAAAA,CAAAA,CAAAA,MAAQ,CAACA,gCAAAA,CAAAA,CAAAA,MAAQ,IAAID,oBAAoB,OAAO;IAGtE,sBAAsBA;IAGtB,cAAcC,gCAAAA,CAAAA,CAAAA,MAAQ;AACxB"}
package/dist/esm/index.js DELETED
@@ -1,18 +0,0 @@
1
- #!/usr/bin/env node
2
- import * as __WEBPACK_EXTERNAL_MODULE_commander__ from "commander";
3
- import * as __WEBPACK_EXTERNAL_MODULE__commands_update_exports_index_js_bf386d0e__ from "./commands/update-exports/index.js";
4
- import * as __WEBPACK_EXTERNAL_MODULE__package_json_9702ddf5__ from "../package.json";
5
- function main() {
6
- const program = new __WEBPACK_EXTERNAL_MODULE_commander__.Command();
7
- program.name("codefast").description("CodeFast CLI - A development toolkit for CodeFast.").version(__WEBPACK_EXTERNAL_MODULE__package_json_9702ddf5__["default"].version, "-v, --version", "display CLI version");
8
- (0, __WEBPACK_EXTERNAL_MODULE__commands_update_exports_index_js_bf386d0e__.createUpdateExportsCommand)(program);
9
- program.action(()=>{
10
- console.log('Use "codefast update-exports" to update exports.');
11
- console.log('Run "codefast --help" to see all available commands.');
12
- program.help();
13
- });
14
- program.parse(process.argv);
15
- }
16
- main();
17
-
18
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["webpack://@codefast/cli/./src/index.ts"],"sourcesContent":["\n\nimport { Command } from \"commander\";\n\nimport { createUpdateExportsCommand } from \"@/commands/update-exports\";\n\nimport packageJson from \"../package.json\";\n\nfunction main(): void {\n const program = new Command();\n\n program\n .name(\"codefast\")\n .description(\"CodeFast CLI - A development toolkit for CodeFast.\")\n .version(packageJson.version, \"-v, --version\", \"display CLI version\");\n\n createUpdateExportsCommand(program);\n\n program.action(() => {\n console.log('Use \"codefast update-exports\" to update exports.');\n console.log('Run \"codefast --help\" to see all available commands.');\n program.help();\n });\n\n program.parse(process.argv);\n}\n\nmain();\n"],"names":["main","program","Command","packageJson","createUpdateExportsCommand","console","process"],"mappings":";;;;AAQA,SAASA;IACP,MAAMC,UAAU,IAAIC,sCAAAA,OAAOA;IAE3BD,QACG,IAAI,CAAC,YACL,WAAW,CAAC,sDACZ,OAAO,CAACE,kDAAAA,CAAAA,UAAAA,CAAAA,OAAmB,EAAE,iBAAiB;IAEjDC,IAAAA,uEAAAA,0BAAAA,EAA2BH;IAE3BA,QAAQ,MAAM,CAAC;QACbI,QAAQ,GAAG,CAAC;QACZA,QAAQ,GAAG,CAAC;QACZJ,QAAQ,IAAI;IACd;IAEAA,QAAQ,KAAK,CAACK,QAAQ,IAAI;AAC5B;AAEAN"}
@@ -1,28 +0,0 @@
1
- import * as __WEBPACK_EXTERNAL_MODULE_chalk__ from "chalk";
2
- class Logger {
3
- verbose;
4
- constructor(options = {}){
5
- this.verbose = options.verbose ?? false;
6
- }
7
- info(message, ...args) {
8
- console.log(__WEBPACK_EXTERNAL_MODULE_chalk__["default"].blue(message), ...args);
9
- }
10
- success(message, ...args) {
11
- console.log(__WEBPACK_EXTERNAL_MODULE_chalk__["default"].green(message), ...args);
12
- }
13
- warn(message, ...args) {
14
- console.log(__WEBPACK_EXTERNAL_MODULE_chalk__["default"].yellow(message), ...args);
15
- }
16
- error(message, ...args) {
17
- console.error(__WEBPACK_EXTERNAL_MODULE_chalk__["default"].red(message), ...args);
18
- }
19
- debug(message, ...args) {
20
- if (this.verbose) console.log(__WEBPACK_EXTERNAL_MODULE_chalk__["default"].gray(message), ...args);
21
- }
22
- table(data) {
23
- console.table(data);
24
- }
25
- }
26
- export { Logger };
27
-
28
- //# sourceMappingURL=logger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lib/logger.js","sources":["webpack://@codefast/cli/./src/lib/logger.ts"],"sourcesContent":["import chalk from \"chalk\";\n\ninterface LoggerOptions {\n verbose?: boolean;\n}\n\nexport class Logger {\n private readonly verbose: boolean;\n\n constructor(options: LoggerOptions = {}) {\n this.verbose = options.verbose ?? false;\n }\n\n info(message: string, ...args: any[]): void {\n console.log(chalk.blue(message), ...args);\n }\n\n success(message: string, ...args: any[]): void {\n console.log(chalk.green(message), ...args);\n }\n\n warn(message: string, ...args: any[]): void {\n console.log(chalk.yellow(message), ...args);\n }\n\n error(message: string, ...args: any[]): void {\n console.error(chalk.red(message), ...args);\n }\n\n debug(message: string, ...args: any[]): void {\n if (this.verbose) {\n console.log(chalk.gray(message), ...args);\n }\n }\n\n table(data: any[]): void {\n console.table(data);\n }\n}\n"],"names":["Logger","options","message","args","console","chalk","data"],"mappings":";AAMO,MAAMA;IACM,QAAiB;IAElC,YAAYC,UAAyB,CAAC,CAAC,CAAE;QACvC,IAAI,CAAC,OAAO,GAAGA,QAAQ,OAAO,IAAI;IACpC;IAEA,KAAKC,OAAe,EAAE,GAAGC,IAAW,EAAQ;QAC1CC,QAAQ,GAAG,CAACC,iCAAAA,CAAAA,UAAAA,CAAAA,IAAU,CAACH,aAAaC;IACtC;IAEA,QAAQD,OAAe,EAAE,GAAGC,IAAW,EAAQ;QAC7CC,QAAQ,GAAG,CAACC,iCAAAA,CAAAA,UAAAA,CAAAA,KAAW,CAACH,aAAaC;IACvC;IAEA,KAAKD,OAAe,EAAE,GAAGC,IAAW,EAAQ;QAC1CC,QAAQ,GAAG,CAACC,iCAAAA,CAAAA,UAAAA,CAAAA,MAAY,CAACH,aAAaC;IACxC;IAEA,MAAMD,OAAe,EAAE,GAAGC,IAAW,EAAQ;QAC3CC,QAAQ,KAAK,CAACC,iCAAAA,CAAAA,UAAAA,CAAAA,GAAS,CAACH,aAAaC;IACvC;IAEA,MAAMD,OAAe,EAAE,GAAGC,IAAW,EAAQ;QAC3C,IAAI,IAAI,CAAC,OAAO,EACdC,QAAQ,GAAG,CAACC,iCAAAA,CAAAA,UAAAA,CAAAA,IAAU,CAACH,aAAaC;IAExC;IAEA,MAAMG,IAAW,EAAQ;QACvBF,QAAQ,KAAK,CAACE;IAChB;AACF"}
@@ -1,9 +0,0 @@
1
- import type { AnalysisResult, PackageConfig } from "../../../commands/update-exports/types";
2
- /**
3
- * Analyzes imports from an index.ts file
4
- * @param indexFilePath - Path to index.ts
5
- * @param packageConfig - Package configuration
6
- * @returns AnalysisResult containing import paths
7
- */
8
- export declare function analyzeImports(indexFilePath: string, packageConfig: PackageConfig): AnalysisResult;
9
- //# sourceMappingURL=analyze-imports.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"analyze-imports.d.ts","sourceRoot":"","sources":["../../../../../src/commands/update-exports/analyze-imports.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAc,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAoCjG;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,GAAG,cAAc,CAiElG"}
@@ -1,7 +0,0 @@
1
- import type { Command } from "commander";
2
- /**
3
- * Creates a commander command for updating exports
4
- * @param program - Commander program instance
5
- */
6
- export declare function createUpdateExportsCommand(program: Command): void;
7
- //# sourceMappingURL=command.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../../../src/commands/update-exports/command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOzC;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA0BjE"}
@@ -1,16 +0,0 @@
1
- import type { PackageConfig, ScriptConfig } from "../../../commands/update-exports/types";
2
- /**
3
- * Retrieves merged configuration, using cache if no path is provided
4
- * @param configPath - Optional path to override default config
5
- * @returns Merged ScriptConfig
6
- */
7
- export declare function getConfig(configPath?: string): ScriptConfig;
8
- /**
9
- * Retrieves configuration for a specific package
10
- * @param packageName - Name of the package
11
- * @param config - Optional ScriptConfig to use
12
- * @returns PackageConfig combining defaults and custom settings
13
- */
14
- export declare function getPackageConfig(packageName: string, config?: ScriptConfig): PackageConfig;
15
- export declare const defaultConfig: ScriptConfig;
16
- //# sourceMappingURL=config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../src/commands/update-exports/config.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAsCnF;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,YAAY,CAc3D;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,aAAa,CAQ1F;AAGD,eAAO,MAAM,aAAa,EAAE,YAkB3B,CAAC"}