{"version":3,"file":"clean-types-build-artifacts.cjs","names":["commandCtbaIdentity","PACKAGE_META","picocolors","resolvePatternOptions","resolvedCleanPatternOption","resolveGlobPatterns","resolveLogLevelOption"],"sources":["../src/clean-types-build-artifacts.ts"],"sourcesContent":["#!/usr/bin/env node\n\n/* eslint-disable quotes */\n\nimport \"@rzl-zone/node-only\";\n\nimport {\n  cleanTypesBuildArtifacts,\n  commandCtbaIdentity,\n  resolvedCleanPatternOption,\n  type LogLevel\n} from \"@rzl-zone/build-tools\";\nimport {\n  joinInline,\n  joinLinesLoose,\n  picocolors\n} from \"@rzl-zone/build-tools/utils\";\nimport { createBaseProgram } from \"@rzl-zone/build-tools/commander-kit\";\n\nimport {\n  resolveGlobPatterns,\n  resolveLogLevelOption,\n  resolvePatternOptions\n} from \"./_private/internal\";\nimport { PACKAGE_META } from \"./_private/constants\";\n\ntype CliOptions = {\n  removeEmptyLines?: boolean;\n  removeSourceMap?: boolean;\n  removeRegion?: boolean;\n  logLevel?: LogLevel | boolean;\n  patternOptions?: string;\n};\n\nconst cmdIdentity = commandCtbaIdentity\n  .setPackageName(PACKAGE_META.name)\n  .setVersion(PACKAGE_META.version);\n\nconst program = createBaseProgram({\n  commandIdentity: cmdIdentity,\n  ui: {\n    title: cmdIdentity.cli(),\n    usage: joinInline(\n      picocolors.cyan(cmdIdentity.commandName),\n      picocolors.gray(\"<glob...>\"),\n      picocolors.blueBright(\"[options]\")\n    )\n  }\n});\n\nprogram\n  .description(\n    picocolors.bold(\n      picocolors.magentaBright(\n        joinLinesLoose(\n          \"Remove build artifact comments from compiled TypeScript\",\n          \"declaration files (.d.ts, .d.cts, .d.mts).\",\n          \"\",\n          \"All non-flag arguments are treated as glob patterns.\"\n        )\n      )\n    )\n  )\n  .argument(\"[glob...]\", \"Glob pattern(s) pointing to Types output files.\")\n  .option(\n    \"--rel, --remove-empty-lines\",\n    \"Remove blank lines adjacent to removed comments\",\n    false\n  )\n  .option(\n    \"--rsm, --remove-source-map\",\n    \"Remove sourceMappingURL comments from declaration files\",\n    false\n  )\n  .option(\"--nrr, --no-remove-region\", \"Disable remove region comments\")\n  .option(\n    \"--ll, --log-level [level]\",\n    joinLinesLoose(\n      \"Set logging verbosity level, available logging levels:\",\n      \"                                  - silent ➔ no output.\",\n      \"                                  - error ➔ errors only.\",\n      \"                                  - info (default) ➔ standard informational logs (include `error`).\",\n      \"                                  - debug ➔ verbose / debug logs (include `error`).\",\n      picocolors.yellowBright(\n        \"                                 * Invalid values will fallback to the default level\"\n      )\n    ),\n    \"info\"\n  )\n  .option(\n    \"--po, --pattern-options <json>\",\n    \"Pattern matching options in JSON format\"\n  )\n  .addHelpText(\n    \"after\",\n    joinLinesLoose(\n      \"\",\n      picocolors.bold(\"# Notes:\"),\n      `  ${picocolors.dim(\"• You may provide MULTIPLE glob patterns.\")}`,\n      `  ${picocolors.dim(\"• All positional arguments are treated as glob patterns.\")}`,\n      `  ${picocolors.dim(\"• Files are modified IN PLACE.\")}`,\n      `  ${picocolors.dim(\"• ONLY declaration files are processed.\")}`,\n      `  ${picocolors.dim(\"• Invalid --log-level values will fallback to the default level.\")}`,\n      \"\",\n      picocolors.bold(\"# Examples:\"),\n      `  ${picocolors.bold(\"• Clean declaration files\")}`,\n      `    ${picocolors.cyan(\"clean-types-build-artifacts\")} ${picocolors.dim('\"dist/**/*.d.ts\"')}`,\n      \"\",\n      `  ${picocolors.bold(\"• Multiple declaration extensions\")}`,\n      `    ${picocolors.cyan(\"clean-types-build-artifacts\")} ${picocolors.dim(\n        '\"dist/**/*.{d.ts,d.cts,d.mts}\"'\n      )}`,\n      \"\",\n      `  ${picocolors.bold(\"• Remove adjacent empty lines\")}`,\n      `    ${picocolors.cyan(\"clean-types-build-artifacts\")} ${picocolors.dim('\"dist/**/*.d.ts\"')} \\\\`,\n      `      ${picocolors.cyanBright(\"--remove-empty-lines\")}`,\n      \"\",\n      `  ${picocolors.bold(\"• Keep source maps & clean layout\")}`,\n      `    ${picocolors.cyan(\"clean-types-build-artifacts\")} ${picocolors.dim('\"dist/**/*.d.ts\"')} \\\\`,\n      `      ${picocolors.cyanBright(\"--remove-empty-lines\")}`,\n      \"\",\n      `  ${picocolors.bold(\"• Enable verbose debug logging\")}`,\n      `    ${picocolors.cyan(\"clean-types-build-artifacts\")} ${picocolors.dim('\"dist/**/*.js\"')} \\\\`,\n      `      ${picocolors.cyanBright(\"--log-level debug\")}`,\n      \"\",\n      `  ${picocolors.bold(\"• Silent mode (no logs at all)\")}`,\n      `    ${picocolors.cyan(\"clean-types-build-artifacts\")} ${picocolors.dim('\"dist/**/*.js\"')} \\\\`,\n      `      ${picocolors.cyanBright(\"--log-level silent\")}`\n    )\n  )\n  .addHelpText(\n    \"after\",\n    joinLinesLoose(\n      \"\",\n      picocolors.bold(\"# Pattern Options:\"),\n      `  ${picocolors.dim(\"• Must be provided as a JSON string.\")}`,\n      `  ${picocolors.dim(\"• Unknown keys are automatically removed (sanitized).\")}`,\n      `  ${picocolors.dim(\"• Missing keys fallback to internal defaults.\")}`,\n      `  ${picocolors.dim(\"• Use '--pattern-options help' to view full schema.\")}`,\n      \"\",\n      `  ${picocolors.bold(\"Examples:\")}`,\n      `     ${picocolors.cyan(cmdIdentity.commandName)} ${picocolors.gray('\"dist/**/*.d.{ts,cts}\"')} \\\\`,\n      `       ${picocolors.blueBright(\"--pattern-options\")} ${picocolors.dim(picocolors.gray('\\'{\"dot\":true,\"onlyFiles\":true}\\''))}`,\n      \"\",\n      `  ${picocolors.bold(\"Schema Help:\")}`,\n      `     ${picocolors.cyan(cmdIdentity.commandName)} ${picocolors.blueBright(\"--pattern-options\")} ${picocolors.gray(\"help\")}`,\n      \"\",\n      `  ${picocolors.dim(\"Pattern options are a restricted subset configuration.\")}`\n    )\n  )\n  .action(async () => {\n    const {\n      logLevel,\n      removeEmptyLines,\n      removeSourceMap,\n      removeRegion,\n      patternOptions\n    } = program.opts<CliOptions>();\n\n    const parsedPatternOptions = resolvePatternOptions(\n      patternOptions,\n      program,\n      cmdIdentity,\n      {\n        globExample: \"dist/**/*.d.{cts,ts}\",\n        patternOptionValue: resolvedCleanPatternOption\n      }\n    );\n\n    const patterns = resolveGlobPatterns(program.args, program);\n    const resolvedLogLevel = resolveLogLevelOption(logLevel, program);\n\n    try {\n      await cleanTypesBuildArtifacts(patterns, {\n        removeSourceMap,\n        removeRegion,\n        removeAdjacentEmptyLines: removeEmptyLines,\n        logLevel: resolvedLogLevel,\n        patternOptions: parsedPatternOptions,\n        __commandTitle: cmdIdentity.cli()\n      });\n    } catch (err) {\n      console.error(picocolors.redBright(String(err)));\n      process.exit(1);\n    }\n  });\n\nprogram.parseAsync();\n"],"mappings":"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"}
