@interware/content-generator 0.7.1 → 0.8.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 (48) hide show
  1. package/dist/_chunks/{App-h4_txTsI.mjs → App-DD1MzaWm.mjs} +2 -2
  2. package/dist/_chunks/{App-Cwr5ra5m.js → App-DspaMfyW.js} +2 -2
  3. package/dist/_chunks/{ImageStudioTabs-B-mOwDfY.mjs → ImageStudioTabs-DwaLxRjl.mjs} +367 -61
  4. package/dist/_chunks/{ImageStudioTabs-CG4KTn1S.js → ImageStudioTabs-uXSBkFeu.js} +365 -59
  5. package/dist/_chunks/{Settings-BT-EqvXs.mjs → Settings-C6TbUrgU.mjs} +170 -2
  6. package/dist/_chunks/{Settings-D4NGBTk1.js → Settings-ps0o7-fC.js} +169 -1
  7. package/dist/_chunks/{StudioApp-xaEy-uIk.mjs → StudioApp-B5I1OfGw.mjs} +2 -2
  8. package/dist/_chunks/{StudioApp-_ViSAwCm.js → StudioApp-B7kGpqqo.js} +2 -2
  9. package/dist/_chunks/{index-NA9OuMGs.js → index-BudahdfX.js} +3 -3
  10. package/dist/_chunks/{index-D67xWUPz.mjs → index-zenHkX-p.mjs} +3 -3
  11. package/dist/admin/index.js +1 -1
  12. package/dist/admin/index.mjs +1 -1
  13. package/dist/admin/src/components/settings/DriveSettings.d.ts +77 -0
  14. package/dist/admin/src/features/drive/DriveTab.d.ts +42 -0
  15. package/dist/admin/src/features/image-studio/ImageStudioTabs.d.ts +3 -0
  16. package/dist/admin/src/features/library/FileCard.d.ts +5 -2
  17. package/dist/admin/src/features/library/driveSync.d.ts +41 -0
  18. package/dist/admin/src/features/templates/editor/ColorField.d.ts +4 -2
  19. package/dist/admin/src/features/templates/export/templateOrigin.d.ts +10 -0
  20. package/dist/admin/src/features/templates/model/palette.d.ts +2 -2
  21. package/dist/admin/src/lib/imageLimits.d.ts +9 -0
  22. package/dist/admin/src/lib/use-cases/drive/index.d.ts +3 -0
  23. package/dist/server/index.js +1414 -51
  24. package/dist/server/index.mjs +1412 -49
  25. package/dist/server/src/bootstrap.d.ts +2 -0
  26. package/dist/server/src/content-types/drive-link/index.d.ts +62 -0
  27. package/dist/server/src/content-types/drive-link/schema.d.ts +68 -0
  28. package/dist/server/src/content-types/drive-op/index.d.ts +46 -0
  29. package/dist/server/src/content-types/drive-op/schema.d.ts +49 -0
  30. package/dist/server/src/content-types/index.d.ts +106 -0
  31. package/dist/server/src/controllers/drive.d.ts +30 -0
  32. package/dist/server/src/controllers/index.d.ts +130 -0
  33. package/dist/server/src/drive/client.d.ts +32 -0
  34. package/dist/server/src/drive/clientConfig.d.ts +27 -0
  35. package/dist/server/src/drive/common.d.ts +6 -0
  36. package/dist/server/src/drive/fakes.d.ts +104 -0
  37. package/dist/server/src/drive/files.d.ts +136 -0
  38. package/dist/server/src/drive/lifecycles.d.ts +7 -0
  39. package/dist/server/src/drive/links.d.ts +23 -0
  40. package/dist/server/src/drive/model.d.ts +99 -0
  41. package/dist/server/src/drive/oauth.d.ts +47 -0
  42. package/dist/server/src/drive/pull.d.ts +23 -0
  43. package/dist/server/src/drive/strapiPorts.d.ts +10 -0
  44. package/dist/server/src/drive/sync.d.ts +40 -0
  45. package/dist/server/src/index.d.ts +294 -0
  46. package/dist/server/src/services/drive.d.ts +141 -0
  47. package/dist/server/src/services/index.d.ts +55 -0
  48. package/package.json +1 -1
@@ -0,0 +1,41 @@
1
+ export type DriveLinkStatus = 'synced' | 'pending' | 'error' | 'skipped';
2
+ /** `GET /drive/links` (S7.3). */
3
+ export interface DriveLinks {
4
+ connected: boolean;
5
+ items: Record<string, {
6
+ status: DriveLinkStatus;
7
+ root: boolean;
8
+ inside: boolean;
9
+ error: string | null;
10
+ }>;
11
+ lastRun: {
12
+ at: number;
13
+ processed: number;
14
+ errors: number;
15
+ } | null;
16
+ pending: number;
17
+ }
18
+ /** Cómo se ve un archivo o carpeta respecto a Drive: insignia y acción del menú. */
19
+ export interface DriveView {
20
+ label: string | null;
21
+ tone: 'success' | 'warning' | 'danger' | 'neutral';
22
+ title?: string;
23
+ action: 'mark' | 'unmark' | null;
24
+ }
25
+ /**
26
+ * Vista de un elemento: con vínculo, su estado; sin vínculo pero dentro de una carpeta sincronizada,
27
+ * «pendiente» hasta el siguiente ciclo. Solo lo marcado se puede dejar de sincronizar, y solo lo de fuera
28
+ * se puede marcar (marcar algo ya incluido no cambia nada).
29
+ */
30
+ export declare const driveView: (links: DriveLinks | null, key: string, parentInside: boolean) => DriveView | null;
31
+ /**
32
+ * Estado de la sincronización con Drive para la Biblioteca, con marcar y desmarcar (S7.3). `watching`: la
33
+ * pantalla muestra algo «pendiente»; mientras tanto el estado se vuelve a pedir, aunque el servidor todavía
34
+ * no lo tenga en cola (un archivo recién llegado a una carpeta sincronizada).
35
+ */
36
+ export declare const useDriveSync: (watching?: boolean) => {
37
+ links: DriveLinks | null;
38
+ refresh: () => Promise<void>;
39
+ mark(cmsType: 'file' | 'folder', cmsId: number): Promise<void>;
40
+ unmark(cmsType: 'file' | 'folder', cmsId: number): Promise<void>;
41
+ };
@@ -3,9 +3,11 @@ interface ColorFieldProps {
3
3
  value: string;
4
4
  onChange: (value: string) => void;
5
5
  }
6
+ /** «#0af», «0AF», «00aaff» o «#00AAFF» → «#00AAFF». Cualquier otra cosa → null. */
7
+ export declare const parseHex: (raw: string) => string | null;
6
8
  /**
7
- * Selector de color (snowflake: el DS no tiene uno). Muestras de la paleta InterWare y, para casos
8
- * puntuales, el selector nativo del navegador.
9
+ * Selector de color (snowflake: el DS no tiene uno). La muestra abre el selector de color del
10
+ * navegador y el campo acepta un hexadecimal escrito o pegado; solo se aplica cuando es válido.
9
11
  */
10
12
  export declare const ColorField: ({ label, value, onChange }: ColorFieldProps) => import("react/jsx-runtime").JSX.Element;
11
13
  export {};
@@ -0,0 +1,10 @@
1
+ import type { Template } from '../model/types';
2
+ type Post = (url: string, body: unknown) => Promise<unknown>;
3
+ /**
4
+ * Le dice al servidor de qué template salió cada archivo guardado, para la descripción en Drive (E7, S7.3).
5
+ * Es opcional: si falla, la pieza ya quedó guardada y no se avisa nada.
6
+ */
7
+ export declare const recordTemplateOrigin: (post: Post, files: {
8
+ id: number;
9
+ }[], template: Pick<Template, 'id' | 'name' | 'documentId'>) => Promise<void>;
10
+ export {};
@@ -1,6 +1,6 @@
1
1
  /**
2
- * Paleta InterWare (paleta canónica del brochure). Es la única que ofrecen las muestras del
3
- * editor y la única que usan las plantillas base.
2
+ * Paleta InterWare (paleta canónica del brochure). Es la única que usan las plantillas base; en el
3
+ * editor el color es libre (selector o hexadecimal).
4
4
  */
5
5
  export declare const PALETTE: readonly [{
6
6
  readonly label: "Navy";
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Tope por imagen de referencia o a editar; lo comparten el panel y el servidor. Medido en Vertex
3
+ * (2026-10-07, `scripts/vertex-diag-size.mjs`): una imagen generada en 2K pesa ~8 MB y en 4K hasta
4
+ * ~24 MB, y Google aceptó editarla en línea pese a los 7 MB que dice su documentación. 30 MB deja
5
+ * iterar sobre una 4K con margen.
6
+ */
7
+ export declare const IMAGE_MAX_MB = 30;
8
+ export declare const IMAGE_MAX_BYTES: number;
9
+ export declare const IMAGE_FORMATS_HINT = "PNG, JPG o WEBP de hasta 30 MB.";
@@ -0,0 +1,3 @@
1
+ import type { DriveApi } from '../../../components/settings/DriveSettings';
2
+ /** Rutas de la conexión con Google Drive (S7.1) con los mensajes del servidor como errores. */
3
+ export declare const useDriveApi: () => DriveApi;