@mediaproc/cli 0.1.0 → 0.3.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.
Files changed (52) hide show
  1. package/README.md +381 -54
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +24 -9
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/add.d.ts.map +1 -1
  6. package/dist/commands/add.js +108 -39
  7. package/dist/commands/add.js.map +1 -1
  8. package/dist/commands/config.d.ts.map +1 -1
  9. package/dist/commands/config.js +86 -27
  10. package/dist/commands/config.js.map +1 -1
  11. package/dist/commands/convert.d.ts +7 -0
  12. package/dist/commands/convert.d.ts.map +1 -0
  13. package/dist/commands/convert.js +96 -0
  14. package/dist/commands/convert.js.map +1 -0
  15. package/dist/commands/help.js +2 -2
  16. package/dist/commands/help.js.map +1 -1
  17. package/dist/commands/info.d.ts +7 -0
  18. package/dist/commands/info.d.ts.map +1 -0
  19. package/dist/commands/info.js +117 -0
  20. package/dist/commands/info.js.map +1 -0
  21. package/dist/commands/init.d.ts.map +1 -1
  22. package/dist/commands/init.js +25 -47
  23. package/dist/commands/init.js.map +1 -1
  24. package/dist/commands/list.d.ts.map +1 -1
  25. package/dist/commands/list.js +90 -17
  26. package/dist/commands/list.js.map +1 -1
  27. package/dist/commands/optimize.d.ts +7 -0
  28. package/dist/commands/optimize.d.ts.map +1 -0
  29. package/dist/commands/optimize.js +196 -0
  30. package/dist/commands/optimize.js.map +1 -0
  31. package/dist/commands/plugins.d.ts +4 -0
  32. package/dist/commands/plugins.d.ts.map +1 -0
  33. package/dist/commands/plugins.js +79 -0
  34. package/dist/commands/plugins.js.map +1 -0
  35. package/dist/commands/remove.d.ts.map +1 -1
  36. package/dist/commands/remove.js +92 -11
  37. package/dist/commands/remove.js.map +1 -1
  38. package/dist/config-manager.d.ts +110 -0
  39. package/dist/config-manager.d.ts.map +1 -0
  40. package/dist/config-manager.js +201 -0
  41. package/dist/config-manager.js.map +1 -0
  42. package/dist/plugin-manager.d.ts +31 -7
  43. package/dist/plugin-manager.d.ts.map +1 -1
  44. package/dist/plugin-manager.js +75 -44
  45. package/dist/plugin-manager.js.map +1 -1
  46. package/dist/plugin-registry.d.ts +9 -0
  47. package/dist/plugin-registry.d.ts.map +1 -1
  48. package/dist/plugin-registry.js +41 -6
  49. package/dist/plugin-registry.js.map +1 -1
  50. package/dist/types.d.ts +1 -0
  51. package/dist/types.d.ts.map +1 -1
  52. package/package.json +6 -6
@@ -1,28 +1,40 @@
1
1
  import chalk from 'chalk';
2
2
  import ora from 'ora';
3
3
  import { execa } from 'execa';
4
- import { join } from 'path';
5
- import { resolvePluginPackage, PLUGIN_REGISTRY } from '../plugin-registry.js';
4
+ import { resolvePluginPackage, PLUGIN_REGISTRY, detectPluginType } from '../plugin-registry.js';
6
5
  /**
7
6
  * Detect if mediaproc core is installed globally or locally
8
7
  */
9
- function isGlobalInstall() {
10
- // Check if we're running from global node_modules
11
- const globalPaths = process.env.NODE_PATH?.split(':') || [];
8
+ async function isGlobalInstall() {
12
9
  const execPath = process.argv[1];
13
- for (const globalPath of globalPaths) {
14
- if (execPath.includes(globalPath)) {
10
+ // Check if we're running from global node_modules
11
+ if (execPath.includes('/node_modules/@mediaproc/cli') ||
12
+ execPath.includes('\\node_modules\\@mediaproc\\cli')) {
13
+ // Check if it's under a project's node_modules (local) or global
14
+ const hasLocalPackageJson = execPath.includes('/node_modules/') &&
15
+ !execPath.includes('/usr/') &&
16
+ !execPath.includes('/.nvm/') &&
17
+ !execPath.includes('/.npm-global/');
18
+ if (!hasLocalPackageJson) {
19
+ return true; // Global install
20
+ }
21
+ }
22
+ // Check npm/pnpm global root
23
+ try {
24
+ const { stdout: npmRoot } = await execa('npm', ['root', '-g'], { stdio: 'pipe' });
25
+ if (execPath.includes(npmRoot.trim())) {
26
+ return true;
27
+ }
28
+ }
29
+ catch { }
30
+ try {
31
+ const { stdout: pnpmRoot } = await execa('pnpm', ['root', '-g'], { stdio: 'pipe' });
32
+ if (execPath.includes(pnpmRoot.trim())) {
15
33
  return true;
16
34
  }
17
35
  }
18
- // Check common global installation paths
19
- const globalDirs = [
20
- '/usr/local/lib/node_modules',
21
- '/usr/lib/node_modules',
22
- join(process.env.HOME || '', '.nvm'),
23
- join(process.env.HOME || '', '.npm-global'),
24
- ];
25
- return globalDirs.some(dir => execPath.includes(dir));
36
+ catch { }
37
+ return false;
26
38
  }
27
39
  export function addCommand(program, pluginManager) {
28
40
  program
@@ -33,18 +45,55 @@ export function addCommand(program, pluginManager) {
33
45
  .option('--save-dev', 'Save as dev dependency (local only)')
34
46
  .action(async (plugin, options) => {
35
47
  try {
36
- // Resolve plugin name using registry
48
+ // Resolve plugin name using registry (official or third-party)
37
49
  const pluginName = resolvePluginPackage(plugin);
38
50
  const registryEntry = Object.values(PLUGIN_REGISTRY).find(e => e.package === pluginName);
51
+ // Check if plugin is already installed in package.json
52
+ if (pluginManager.isPluginInstalled(pluginName)) {
53
+ // Check if it's also loaded
54
+ if (pluginManager.isPluginLoaded(pluginName)) {
55
+ ora().info(chalk.blue(`Plugin ${chalk.cyan(pluginName)} is already installed and loaded`));
56
+ console.log(chalk.dim(`You can use: ${chalk.white(`mediaproc ${plugin.replace('@mediaproc/', '')} <command>`)}`));
57
+ return;
58
+ }
59
+ else {
60
+ // Installed but not loaded - load it
61
+ ora().info(chalk.blue(`Plugin ${chalk.cyan(pluginName)} is already installed, loading...`));
62
+ try {
63
+ const loaded = await pluginManager.loadPlugin(pluginName, program);
64
+ if (loaded) {
65
+ ora().succeed(chalk.green(`✓ Plugin ${pluginName} loaded successfully`));
66
+ console.log(chalk.dim(`You can now use: ${chalk.white(`mediaproc ${plugin.replace('@mediaproc/', '')} <command>`)}`));
67
+ }
68
+ }
69
+ catch (loadError) {
70
+ ora().fail(chalk.yellow(`Plugin installed but failed to load. Try restarting the CLI.`));
71
+ }
72
+ return;
73
+ }
74
+ }
39
75
  const spinner = ora(`Installing ${chalk.cyan(pluginName)}...`).start();
76
+ // Detect plugin type
77
+ const pluginType = detectPluginType(pluginName);
78
+ const typeLabel = pluginType === 'official' ? chalk.blue('★ OFFICIAL')
79
+ : pluginType === 'community' ? chalk.green('🌐 COMMUNITY')
80
+ : chalk.yellow('📦 THIRD-PARTY');
40
81
  // Show plugin info
41
82
  if (registryEntry) {
83
+ spinner.info(chalk.dim(`Type: ${typeLabel}`));
42
84
  spinner.info(chalk.dim(`Description: ${registryEntry.description}`));
43
85
  if (registryEntry.systemRequirements && registryEntry.systemRequirements.length > 0) {
44
86
  spinner.info(chalk.yellow(`System requirements: ${registryEntry.systemRequirements.join(', ')}`));
45
87
  }
46
- spinner.start(`Installing ${chalk.cyan(pluginName)}...`);
47
88
  }
89
+ else {
90
+ // Not in registry - show type
91
+ spinner.info(chalk.dim(`Type: ${typeLabel}`));
92
+ if (pluginType === 'third-party') {
93
+ spinner.info(chalk.yellow(`Warning: Third-party plugin not in official registry`));
94
+ }
95
+ }
96
+ spinner.start(`Installing ${chalk.cyan(pluginName)}...`);
48
97
  // Determine installation scope
49
98
  let installGlobally = false;
50
99
  if (options.global) {
@@ -55,7 +104,7 @@ export function addCommand(program, pluginManager) {
55
104
  }
56
105
  else {
57
106
  // Auto-detect based on how core was installed
58
- installGlobally = isGlobalInstall();
107
+ installGlobally = await isGlobalInstall();
59
108
  }
60
109
  // Determine package manager (prefer pnpm, fallback to npm)
61
110
  let packageManager = 'pnpm';
@@ -68,45 +117,65 @@ export function addCommand(program, pluginManager) {
68
117
  // Build install command
69
118
  const args = [];
70
119
  if (packageManager === 'pnpm') {
71
- args.push(installGlobally ? 'add' : 'add');
72
- if (installGlobally)
120
+ args.push('add');
121
+ if (installGlobally) {
73
122
  args.push('-g');
74
- if (options.saveDev)
123
+ }
124
+ else if (options.saveDev) {
75
125
  args.push('-D');
126
+ }
76
127
  }
77
128
  else {
78
129
  args.push('install');
79
- if (installGlobally)
130
+ if (installGlobally) {
80
131
  args.push('-g');
81
- if (options.saveDev)
132
+ }
133
+ else if (options.saveDev) {
82
134
  args.push('--save-dev');
135
+ }
83
136
  }
84
137
  args.push(pluginName);
85
138
  // Execute installation
86
- await execa(packageManager, args, {
139
+ const installOptions = {
87
140
  stdio: 'pipe',
88
- cwd: installGlobally ? undefined : process.cwd(),
89
- });
141
+ };
142
+ // Only set cwd for local installs
143
+ if (!installGlobally) {
144
+ installOptions.cwd = process.cwd();
145
+ }
146
+ await execa(packageManager, args, installOptions);
90
147
  spinner.succeed(chalk.green(`✓ Successfully installed ${pluginName}`));
148
+ // Update config to mark as installed
149
+ const configManager = pluginManager.getConfigManager();
150
+ configManager.addInstalledPlugin(pluginName);
91
151
  const scope = installGlobally ? 'globally' : 'locally';
92
152
  console.log(chalk.dim(`\nInstalled ${scope} using ${packageManager}`));
93
- // Try to load the plugin immediately if installed locally
94
- if (!installGlobally) {
95
- try {
96
- const loadSpinner = ora('Loading plugin...').start();
97
- const loaded = await pluginManager.loadPlugin(pluginName, program);
98
- if (loaded) {
99
- loadSpinner.succeed(chalk.green('Plugin loaded and ready to use'));
100
- }
101
- else {
102
- loadSpinner.info(chalk.yellow('Plugin installed but requires restart to use'));
153
+ // Configure and load the plugin
154
+ try {
155
+ const loadSpinner = ora('Configuring plugin...').start();
156
+ // Try to load the plugin to verify it works
157
+ const loaded = await pluginManager.loadPlugin(pluginName, program);
158
+ if (loaded) {
159
+ loadSpinner.succeed(chalk.green('Plugin configured and ready to use'));
160
+ // Verify plugin commands are available
161
+ const pluginInstance = pluginManager.getPlugin(pluginName);
162
+ if (pluginInstance) {
163
+ const commandCount = program.commands.filter(cmd => cmd.name().startsWith(plugin.replace('@mediaproc/', ''))).length;
164
+ if (commandCount > 0) {
165
+ console.log(chalk.green(`✓ Registered ${commandCount} commands`));
166
+ }
103
167
  }
104
168
  }
105
- catch (loadError) {
106
- // Not critical if loading fails - user can restart CLI
107
- console.log(chalk.yellow('Note: Restart the CLI to use the new plugin'));
169
+ else {
170
+ loadSpinner.warn(chalk.yellow('Plugin installed but requires CLI restart to use'));
171
+ console.log(chalk.dim('Run your command again to use the plugin'));
108
172
  }
109
173
  }
174
+ catch (loadError) {
175
+ const errorMsg = loadError instanceof Error ? loadError.message : String(loadError);
176
+ console.log(chalk.yellow(`⚠ Plugin installed but configuration failed: ${errorMsg}`));
177
+ console.log(chalk.dim(`Restart the CLI to use the plugin ${installGlobally ? '(global install)' : '(local install)'}`));
178
+ }
110
179
  console.log(chalk.dim(`You can now use: ${chalk.white(`mediaproc ${plugin.replace('@mediaproc/', '')} <command>`)}`));
111
180
  // Show example commands
112
181
  if (registryEntry) {
@@ -1 +1 @@
1
- {"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAqDpD"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmHpD"}
@@ -1,50 +1,109 @@
1
1
  import chalk from 'chalk';
2
- import { readFileSync, writeFileSync, existsSync } from 'fs';
3
- import { join } from 'path';
2
+ import { ConfigManager } from '../config-manager.js';
4
3
  export function configCommand(program) {
5
4
  const configCmd = program
6
5
  .command('config')
7
- .description('Manage mediaproc configuration');
6
+ .description('Manage MediaProc configuration');
8
7
  configCmd
9
8
  .command('show')
10
9
  .description('Show current configuration')
11
10
  .action(() => {
12
- const configPath = join(process.cwd(), 'mediaproc.config.json');
13
- if (!existsSync(configPath)) {
14
- console.log(chalk.yellow('No config file found. Run: mediaproc init'));
11
+ const configManager = new ConfigManager();
12
+ if (!configManager.exists()) {
13
+ console.log(chalk.yellow('No config file found. Run: ') + chalk.cyan('mediaproc init'));
15
14
  return;
16
15
  }
17
- const config = JSON.parse(readFileSync(configPath, 'utf-8'));
18
- console.log(chalk.bold('\nCurrent Configuration:\n'));
19
- console.log(JSON.stringify(config, null, 2));
16
+ try {
17
+ const config = configManager.get();
18
+ const configPath = ConfigManager.getConfigPath();
19
+ console.log('');
20
+ console.log(chalk.bold('MediaProc Configuration'));
21
+ console.log(chalk.dim(`Location: ${configPath}`));
22
+ console.log(chalk.dim('─'.repeat(50)));
23
+ console.log('');
24
+ console.log(chalk.cyan('Version: ') + config.version);
25
+ console.log(chalk.cyan('Last Updated: ') + (config.lastUpdated ? new Date(config.lastUpdated).toLocaleString() : 'Never'));
26
+ console.log('');
27
+ console.log(chalk.bold('Installed Plugins:'));
28
+ if (config.installedPlugins.length === 0) {
29
+ console.log(chalk.dim(' (none)'));
30
+ }
31
+ else {
32
+ config.installedPlugins.forEach(p => {
33
+ const isLoaded = config.loadedPlugins.includes(p);
34
+ const status = isLoaded ? chalk.green('✓ loaded') : chalk.yellow('not loaded');
35
+ console.log(` ${p} ${chalk.dim(`[${status}${chalk.dim(']')}`)}`);
36
+ });
37
+ }
38
+ console.log('');
39
+ if (config.defaults && Object.keys(config.defaults).length > 0) {
40
+ console.log(chalk.bold('Defaults:'));
41
+ console.log(JSON.stringify(config.defaults, null, 2));
42
+ console.log('');
43
+ }
44
+ if (config.pipelines && Object.keys(config.pipelines).length > 0) {
45
+ console.log(chalk.bold('Pipelines:'));
46
+ console.log(JSON.stringify(config.pipelines, null, 2));
47
+ console.log('');
48
+ }
49
+ }
50
+ catch (error) {
51
+ console.error(chalk.red('✗ Failed to read config file'));
52
+ const errorMessage = error instanceof Error ? error.message : String(error);
53
+ console.error(chalk.dim(errorMessage));
54
+ process.exit(1);
55
+ }
20
56
  });
21
57
  configCmd
22
58
  .command('set <key> <value>')
23
59
  .description('Set a configuration value')
24
60
  .action((key, value) => {
25
- const configPath = join(process.cwd(), 'mediaproc.config.json');
26
- if (!existsSync(configPath)) {
27
- console.log(chalk.yellow('No config file found. Run: mediaproc init'));
61
+ const configManager = new ConfigManager();
62
+ if (!configManager.exists()) {
63
+ console.log(chalk.yellow('No config file found. Run: ') + chalk.cyan('mediaproc init'));
28
64
  return;
29
65
  }
30
- const config = JSON.parse(readFileSync(configPath, 'utf-8'));
31
- // Simple dot notation support
32
- const keys = key.split('.');
33
- let current = config;
34
- for (let i = 0; i < keys.length - 1; i++) {
35
- if (!current[keys[i]])
36
- current[keys[i]] = {};
37
- current = current[keys[i]];
38
- }
39
- // Try to parse value as JSON, fallback to string
40
66
  try {
41
- current[keys[keys.length - 1]] = JSON.parse(value);
67
+ // Try to parse value as JSON, fallback to string
68
+ let parsedValue;
69
+ try {
70
+ parsedValue = JSON.parse(value);
71
+ }
72
+ catch {
73
+ parsedValue = value;
74
+ }
75
+ configManager.set(key, parsedValue);
76
+ console.log(chalk.green(`✓ Set ${key} = ${JSON.stringify(parsedValue)}`));
42
77
  }
43
- catch {
44
- current[keys[keys.length - 1]] = value;
78
+ catch (error) {
79
+ console.error(chalk.red('✗ Failed to update config'));
80
+ const errorMessage = error instanceof Error ? error.message : String(error);
81
+ console.error(chalk.dim(errorMessage));
82
+ process.exit(1);
45
83
  }
46
- writeFileSync(configPath, JSON.stringify(config, null, 2));
47
- console.log(chalk.green(`✓ Set ${key} = ${value}`));
84
+ });
85
+ configCmd
86
+ .command('get <key>')
87
+ .description('Get a configuration value')
88
+ .action((key) => {
89
+ const configManager = new ConfigManager();
90
+ if (!configManager.exists()) {
91
+ console.log(chalk.yellow('No config file found. Run: ') + chalk.cyan('mediaproc init'));
92
+ return;
93
+ }
94
+ const value = configManager.getValue(key);
95
+ if (value === undefined) {
96
+ console.log(chalk.yellow(`Key '${key}' not found in config`));
97
+ }
98
+ else {
99
+ console.log(JSON.stringify(value, null, 2));
100
+ }
101
+ });
102
+ configCmd
103
+ .command('path')
104
+ .description('Show configuration file path')
105
+ .action(() => {
106
+ console.log(ConfigManager.getConfigPath());
48
107
  });
49
108
  }
50
109
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,MAAM,UAAU,aAAa,CAAC,OAAgB;IAC5C,MAAM,SAAS,GAAG,OAAO;SACtB,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,gCAAgC,CAAC,CAAC;IAEjD,SAAS;SACN,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,4BAA4B,CAAC;SACzC,MAAM,CAAC,GAAG,EAAE;QACX,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,uBAAuB,CAAC,CAAC;QAEhE,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,2CAA2C,CAAC,CAAC,CAAC;YACvE,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEL,SAAS;SACN,OAAO,CAAC,mBAAmB,CAAC;SAC5B,WAAW,CAAC,2BAA2B,CAAC;SACxC,MAAM,CAAC,CAAC,GAAW,EAAE,KAAa,EAAE,EAAE;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,uBAAuB,CAAC,CAAC;QAEhE,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,2CAA2C,CAAC,CAAC,CAAC;YACvE,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QAE7D,8BAA8B;QAC9B,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,OAAO,GAAQ,MAAM,CAAC;QAE1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;YAC7C,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC;QAED,iDAAiD;QACjD,IAAI,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;QACzC,CAAC;QAED,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Command } from 'commander';
2
+ import type { PluginManager } from '../plugin-manager.js';
3
+ /**
4
+ * Universal file conversion command - shows suggestions based on detected file type
5
+ */
6
+ export declare function convertCommand(program: Command, pluginManager?: PluginManager): void;
7
+ //# sourceMappingURL=convert.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../src/commands/convert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CAyFpF"}
@@ -0,0 +1,96 @@
1
+ import chalk from 'chalk';
2
+ import { existsSync } from 'fs';
3
+ import { extname } from 'path';
4
+ /**
5
+ * Universal file conversion command - shows suggestions based on detected file type
6
+ */
7
+ export function convertCommand(program, pluginManager) {
8
+ program
9
+ .command('convert <input> <output>')
10
+ .description('Universal file conversion - auto-detects and converts between formats')
11
+ .option('-q, --quality <number>', 'Output quality (for lossy formats)', '85')
12
+ .option('--preset <preset>', 'Conversion preset (fast, balanced, quality)')
13
+ .option('-v, --verbose', 'Verbose output')
14
+ .action((input, output, options) => {
15
+ if (!existsSync(input)) {
16
+ console.error(chalk.red(`✗ Input file not found: ${input}`));
17
+ process.exit(1);
18
+ }
19
+ const inputExt = extname(input).toLowerCase().slice(1);
20
+ const outputExt = extname(output).toLowerCase().slice(1);
21
+ // Detect media type and suggest appropriate plugin
22
+ const imageExts = ['jpg', 'jpeg', 'png', 'webp', 'gif', 'bmp', 'tiff', 'avif', 'heif'];
23
+ const videoExts = ['mp4', 'webm', 'mkv', 'avi', 'mov', 'flv', 'wmv', 'm4v'];
24
+ const audioExts = ['mp3', 'wav', 'ogg', 'flac', 'aac', 'm4a', 'wma', 'opus'];
25
+ const documentExts = ['pdf', 'docx', 'pptx', 'txt', 'md'];
26
+ const modelExts = ['gltf', 'glb', 'obj', 'fbx'];
27
+ let pluginName = '';
28
+ let mediaType = '';
29
+ let suggestedCommand = '';
30
+ if (imageExts.includes(inputExt)) {
31
+ pluginName = 'image';
32
+ mediaType = 'Image';
33
+ suggestedCommand = `mediaproc image convert ${input} ${output}`;
34
+ if (options.quality) {
35
+ suggestedCommand += ` --quality ${options.quality}`;
36
+ }
37
+ }
38
+ else if (videoExts.includes(inputExt)) {
39
+ pluginName = 'video';
40
+ mediaType = 'Video';
41
+ suggestedCommand = `mediaproc video convert ${input} ${output}`;
42
+ }
43
+ else if (audioExts.includes(inputExt)) {
44
+ pluginName = 'audio';
45
+ mediaType = 'Audio';
46
+ suggestedCommand = `mediaproc audio convert ${input} ${output}`;
47
+ }
48
+ else if (documentExts.includes(inputExt)) {
49
+ pluginName = 'document';
50
+ mediaType = 'Document';
51
+ suggestedCommand = `mediaproc document convert ${input} ${output}`;
52
+ }
53
+ else if (modelExts.includes(inputExt)) {
54
+ pluginName = '3d';
55
+ mediaType = '3D Model';
56
+ suggestedCommand = `mediaproc 3d convert ${input} ${output}`;
57
+ }
58
+ else {
59
+ console.error(chalk.red(`✗ Unsupported input format: .${inputExt}`));
60
+ console.log(chalk.yellow('\n💡 Supported formats:'));
61
+ console.log(chalk.dim(' Images: jpg, png, webp, gif, bmp, tiff, avif, heif'));
62
+ console.log(chalk.dim(' Videos: mp4, webm, mkv, avi, mov, flv, wmv'));
63
+ console.log(chalk.dim(' Audio: mp3, wav, ogg, flac, aac, m4a, wma, opus'));
64
+ console.log(chalk.dim(' Documents: pdf, docx, pptx, txt, md'));
65
+ console.log(chalk.dim(' 3D Models: gltf, glb, obj, fbx'));
66
+ process.exit(1);
67
+ }
68
+ console.log('');
69
+ console.log(chalk.blue(`🔄 ${mediaType} Conversion`));
70
+ console.log(chalk.dim('─'.repeat(50)));
71
+ console.log(chalk.cyan('Input: ') + input + chalk.dim(` (.${inputExt})`));
72
+ console.log(chalk.cyan('Output: ') + output + chalk.dim(` (.${outputExt})`));
73
+ console.log(chalk.cyan('Plugin: ') + chalk.yellow(pluginName));
74
+ console.log('');
75
+ // Check plugin status
76
+ const pluginPackage = `@mediaproc/${pluginName}`;
77
+ const isLoaded = pluginManager?.isPluginLoaded(pluginPackage);
78
+ const isInstalled = pluginManager?.isPluginInstalled(pluginPackage);
79
+ console.log(chalk.yellow('💡 Suggested command:'));
80
+ console.log(chalk.cyan(` ${suggestedCommand}`));
81
+ console.log('');
82
+ if (isLoaded) {
83
+ console.log(chalk.green(`✓ ${pluginName} plugin is loaded - command is ready`));
84
+ }
85
+ else if (isInstalled) {
86
+ console.log(chalk.yellow(`⚠️ ${pluginName} plugin is installed but not loaded`));
87
+ console.log(chalk.dim(` Load it: ${chalk.cyan(`mediaproc add ${pluginName}`)}`));
88
+ }
89
+ else {
90
+ console.log(chalk.red(`✗ ${pluginName} plugin not installed`));
91
+ console.log(chalk.dim(` Install: ${chalk.cyan(`mediaproc add ${pluginName}`)}`));
92
+ }
93
+ console.log('');
94
+ });
95
+ }
96
+ //# sourceMappingURL=convert.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convert.js","sourceRoot":"","sources":["../../src/commands/convert.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,8 @@ import chalk from 'chalk';
2
2
  import { getPluginsByCategory } from '../plugin-registry.js';
3
3
  export function helpCommand(program) {
4
4
  program
5
- .command('plugins')
6
- .description('Show available plugins and their descriptions')
5
+ .command('help')
6
+ .description('Show plugin registry and installation guide')
7
7
  .action(() => {
8
8
  console.log(chalk.bold('\n📦 MediaProc Plugin Registry\n'));
9
9
  const grouped = getPluginsByCategory();
@@ -1 +1 @@
1
- {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/commands/help.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAE7D,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC1C,OAAO;SACJ,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,+CAA+C,CAAC;SAC5D,MAAM,CAAC,GAAG,EAAE;QACX,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,CAAC;QAE5D,MAAM,OAAO,GAAG,oBAAoB,EAAE,CAAC;QAEvC,eAAe;QACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAC5F,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YACnF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACnE,IAAI,MAAM,CAAC,kBAAkB,IAAI,MAAM,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,cAAc,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACpG,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,mBAAmB;QACnB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC,CAAC;QACtG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YACnF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACnE,IAAI,MAAM,CAAC,kBAAkB,IAAI,MAAM,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,cAAc,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACpG,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,uBAAuB;QACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,CAAC;QAChG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YACzC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YACnF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACnE,IAAI,MAAM,CAAC,kBAAkB,IAAI,MAAM,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,cAAc,MAAM,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACpG,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC,CAAC;QACpF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC,CAAC;QACpF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC,CAAC;QACvF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/commands/help.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Command } from 'commander';
2
+ import type { PluginManager } from '../plugin-manager.js';
3
+ /**
4
+ * Universal info command - shows basic file information and suggests plugin for detailed info
5
+ */
6
+ export declare function infoCommand(program: Command, pluginManager?: PluginManager): void;
7
+ //# sourceMappingURL=info.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"info.d.ts","sourceRoot":"","sources":["../../src/commands/info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,aAAa,GAAG,IAAI,CA6GjF"}