File size: 2,152 Bytes
95eb75a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
// fileToolsGenerators.ts — S-P3-2: barrel → 3 domain files
  // Contiene solo il dispatcher tryExecuteGenerators() usato da fileTools.ts.
  // Split:
  //   toolGenOffice.ts  — generate_xlsx · generate_docx · create_zip · extract_zip
  //   toolGenImage.ts   — edit_image · remove_background · create_gif · image_composite · convert_image · create_svg
  //   toolGenReadme.ts  — generate_readme

  import { toolGenerateXlsx }    from './toolGenOffice';
  import { toolGenerateDocx }    from './toolGenOffice';
  import { toolCreateZip }       from './toolGenOffice';
  import { toolExtractZip }      from './toolGenOffice';
  import { toolEditImage }       from './toolGenImage';
  import { toolRemoveBackground } from './toolGenImage';
  import { toolCreateGif }       from './toolGenImage';
  import { toolImageComposite }  from './toolGenImage';
  import { toolConvertImage }    from './toolGenImage';
  import { toolCreateSvg }       from './toolGenImage';
  import { toolGenerateReadme }  from './toolGenReadme';

  export type { ToolArgs } from './toolGenOffice';

  type ToolArgs = Record<string, unknown>;

  // ─── Dispatcher — chiamato da tryExecute in fileTools.ts ──────────────────────
export async function tryExecuteGenerators(
  name: string,
  args: ToolArgs,
): Promise<string | null> {
  switch (name) {
    case "generate_xlsx":       return toolGenerateXlsx(args);
    case "generate_docx":       return toolGenerateDocx(args);
    case "create_zip":          return toolCreateZip(args);
    case "edit_image":          return toolEditImage(args);
    case "remove_background":   return toolRemoveBackground(args);
    case "generate_readme":     return toolGenerateReadme(args);
    case "extract_zip":          return toolExtractZip(args);
    case "create_gif":             return toolCreateGif(args);
    case "image_composite":        return toolImageComposite(args);
    case "convert_image":          return toolConvertImage(args);
    case "create_svg":             return toolCreateSvg(args);
        default:                    return null;
  }
}