@el-j/google-sheet-translations 2.2.0 → 3.0.0-beta.2

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 (97) hide show
  1. package/README.md +42 -0
  2. package/dist/action-entrypoint.d.ts.map +1 -1
  3. package/dist/core/rowTransformer.d.ts +26 -0
  4. package/dist/core/rowTransformer.d.ts.map +1 -0
  5. package/dist/esm/index.js +4118 -2524
  6. package/dist/getMultipleSpreadSheetsData.d.ts.map +1 -1
  7. package/dist/getSpreadSheetData.d.ts +3 -3
  8. package/dist/getSpreadSheetData.d.ts.map +1 -1
  9. package/dist/index.d.ts +13 -8
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +4232 -2611
  12. package/dist/migration/migrateV3.d.ts +57 -0
  13. package/dist/migration/migrateV3.d.ts.map +1 -0
  14. package/dist/providers/assetContracts.d.ts +88 -0
  15. package/dist/providers/assetContracts.d.ts.map +1 -0
  16. package/dist/providers/capabilities.d.ts +50 -0
  17. package/dist/providers/capabilities.d.ts.map +1 -0
  18. package/dist/providers/catalog.d.ts +73 -0
  19. package/dist/providers/catalog.d.ts.map +1 -0
  20. package/dist/providers/config.d.ts +56 -0
  21. package/dist/providers/config.d.ts.map +1 -0
  22. package/dist/providers/contracts.d.ts +138 -0
  23. package/dist/providers/contracts.d.ts.map +1 -0
  24. package/dist/providers/cryptpad/assetProvider.d.ts +36 -0
  25. package/dist/providers/cryptpad/assetProvider.d.ts.map +1 -0
  26. package/dist/providers/cryptpad/fullProvider.d.ts +50 -0
  27. package/dist/providers/cryptpad/fullProvider.d.ts.map +1 -0
  28. package/dist/providers/cryptpad/index.d.ts +8 -0
  29. package/dist/providers/cryptpad/index.d.ts.map +1 -0
  30. package/dist/providers/cryptpad/provider.d.ts +37 -0
  31. package/dist/providers/cryptpad/provider.d.ts.map +1 -0
  32. package/dist/providers/google/index.d.ts +4 -0
  33. package/dist/providers/google/index.d.ts.map +1 -0
  34. package/dist/providers/google/providers.d.ts +105 -0
  35. package/dist/providers/google/providers.d.ts.map +1 -0
  36. package/dist/providers/index.d.ts +25 -0
  37. package/dist/providers/index.d.ts.map +1 -0
  38. package/dist/providers/orchestrator.d.ts +74 -0
  39. package/dist/providers/orchestrator.d.ts.map +1 -0
  40. package/dist/providers/runtime.d.ts +30 -0
  41. package/dist/providers/runtime.d.ts.map +1 -0
  42. package/dist/providers/syncEngine.d.ts +106 -0
  43. package/dist/providers/syncEngine.d.ts.map +1 -0
  44. package/dist/setup/gcpTransport.d.ts +25 -0
  45. package/dist/setup/gcpTransport.d.ts.map +1 -1
  46. package/dist/setup/migrateV3Cli.d.ts +2 -0
  47. package/dist/setup/migrateV3Cli.d.ts.map +1 -0
  48. package/dist/setup/providerCli.d.ts +2 -0
  49. package/dist/setup/providerCli.d.ts.map +1 -0
  50. package/dist/setup/wifSetup.d.ts +1 -1
  51. package/dist/setup/wifSetup.d.ts.map +1 -1
  52. package/dist/types.d.ts.map +1 -1
  53. package/dist/utils/auth.d.ts +1 -1
  54. package/dist/utils/auth.d.ts.map +1 -1
  55. package/dist/utils/configurationHandler.d.ts.map +1 -1
  56. package/dist/utils/dataConverter/convertFromDataJsonFormat.d.ts +1 -1
  57. package/dist/utils/dataConverter/convertFromDataJsonFormat.d.ts.map +1 -1
  58. package/dist/utils/dataConverter/convertToDataJsonFormat.d.ts +1 -1
  59. package/dist/utils/dataConverter/convertToDataJsonFormat.d.ts.map +1 -1
  60. package/dist/utils/dataConverter/findLocalChanges.d.ts +1 -1
  61. package/dist/utils/dataConverter/findLocalChanges.d.ts.map +1 -1
  62. package/dist/utils/docIngester.d.ts.map +1 -1
  63. package/dist/utils/docParser.d.ts.map +1 -1
  64. package/dist/utils/driveDocScanner.d.ts.map +1 -1
  65. package/dist/utils/driveFolderScanner.d.ts.map +1 -1
  66. package/dist/utils/driveImageSync.d.ts.map +1 -1
  67. package/dist/utils/driveSpreadsheetBootstrap.d.ts.map +1 -1
  68. package/dist/utils/fileWriter.d.ts +1 -1
  69. package/dist/utils/fileWriter.d.ts.map +1 -1
  70. package/dist/utils/getDriveTranslations.d.ts.map +1 -1
  71. package/dist/utils/isDataJsonNewer.d.ts.map +1 -1
  72. package/dist/utils/localImageUtils.d.ts.map +1 -1
  73. package/dist/utils/localeFilter.d.ts.map +1 -1
  74. package/dist/utils/localeNormalizer.d.ts.map +1 -1
  75. package/dist/utils/multiSpreadsheetMerger.d.ts.map +1 -1
  76. package/dist/utils/publicSheetReader.d.ts +1 -1
  77. package/dist/utils/publicSheetReader.d.ts.map +1 -1
  78. package/dist/utils/rateLimiter.d.ts.map +1 -1
  79. package/dist/utils/readDataJson.d.ts +1 -1
  80. package/dist/utils/sheetProcessor.d.ts +4 -9
  81. package/dist/utils/sheetProcessor.d.ts.map +1 -1
  82. package/dist/utils/spreadsheetCreator.d.ts +1 -1
  83. package/dist/utils/spreadsheetCreator.d.ts.map +1 -1
  84. package/dist/utils/spreadsheetFormulas.d.ts +1 -1
  85. package/dist/utils/spreadsheetFormulas.d.ts.map +1 -1
  86. package/dist/utils/spreadsheetUpdater.d.ts +3 -3
  87. package/dist/utils/spreadsheetUpdater.d.ts.map +1 -1
  88. package/dist/utils/syncManager.d.ts +2 -2
  89. package/dist/utils/syncManager.d.ts.map +1 -1
  90. package/dist/utils/translationHelpers.d.ts.map +1 -1
  91. package/dist/utils/validateEnv.d.ts +1 -1
  92. package/dist/utils/validateEnv.d.ts.map +1 -1
  93. package/dist/utils/wait.d.ts.map +1 -1
  94. package/dist-cli/migrate-v3.mjs +406 -0
  95. package/dist-cli/run-provider.mjs +2025 -0
  96. package/dist-cli/setup-wif.mjs +334 -18949
  97. package/package.json +25 -20
package/README.md CHANGED
@@ -383,6 +383,8 @@ jobs:
383
383
  | `spreadsheet-ids` | ❌ | `''` | Optional extra spreadsheet IDs to merge with any IDs discovered in Drive |
384
384
  | `sync-images` | ❌ | `false` | Download Drive images alongside translation sync |
385
385
  | `image-output-path` | ❌ | `./public/remote-images` | Output directory for downloaded Drive images when `sync-images` is enabled |
386
+ | `provider-config` | ❌ | `''` | Inline JSON for v3 provider runtime config (mutually exclusive with `provider-config-path`) |
387
+ | `provider-config-path` | ❌ | `''` | Path to provider runtime config JSON file in the repo (mutually exclusive with `provider-config`) |
386
388
 
387
389
  ### Drive Folder Mode
388
390
 
@@ -404,6 +406,46 @@ See the full Drive Folder guide in `website/guide/drive-folder.md` for the compl
404
406
  | `locales-file` | Absolute path of the generated `locales.ts` |
405
407
  | `data-json-file` | Absolute path of the `languageData.json` snapshot |
406
408
 
409
+ ## Provider Runtime CLI (v3)
410
+
411
+ In addition to `gst-setup-wif`, the package ships `gst-run-provider` for provider-config driven execution:
412
+
413
+ ```bash
414
+ gst-run-provider --config=provider.config.json --sheet-titles=home,about
415
+ ```
416
+
417
+ For existing workflows, use `gst-migrate-v3` to generate provider config from legacy action inputs:
418
+
419
+ ```bash
420
+ gst-migrate-v3 --dry-run
421
+ gst-migrate-v3 --dry-run --parity-check
422
+ gst-migrate-v3 --write-workflows --provider-config-path=.github/provider.config.json
423
+ ```
424
+
425
+ If a config already exists and should be replaced:
426
+
427
+ ```bash
428
+ gst-migrate-v3 --force --provider-config-path=.github/provider.config.json
429
+ ```
430
+
431
+ Example `provider.config.json` for CryptPad CSV input:
432
+
433
+ ```json
434
+ {
435
+ "input": {
436
+ "provider": "cryptpad-csv",
437
+ "options": {
438
+ "sources": [
439
+ {
440
+ "tableName": "home",
441
+ "url": "https://cryptpad.fr/.../export.csv"
442
+ }
443
+ ]
444
+ }
445
+ }
446
+ }
447
+ ```
448
+
407
449
  ### Auto-Create Feature
408
450
 
409
451
  If `google-spreadsheet-id` is left empty and `auto-create` is `true` (the default), the action will automatically create a new Google Spreadsheet using your service-account credentials. The spreadsheet is pre-populated with an `i18n` starter sheet containing `GOOGLETRANSLATE` formulas for every locale listed in `target-locales`. The new spreadsheet ID is printed to the workflow log and written to your `.env` file (if one exists in the repository root), allowing you to commit it and reuse it in future runs.
@@ -1 +1 @@
1
- {"version":3,"file":"action-entrypoint.d.ts","sourceRoot":"","sources":["../src/action-entrypoint.ts"],"names":[],"mappings":"AAMA;;;;;;;;;GASG;AACH,wBAAsB,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CA8GzC"}
1
+ {"version":3,"file":"action-entrypoint.d.ts","sourceRoot":"","sources":["../src/action-entrypoint.ts"],"names":[],"mappings":"AAeA;;;;;;;;;GASG;AACH,wBAAsB,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAmMzC"}
@@ -0,0 +1,26 @@
1
+ import type { SheetRow, TranslationData } from '../types';
2
+ /**
3
+ * Result of processing a single sheet.
4
+ */
5
+ export interface SheetProcessingResult {
6
+ translations: TranslationData;
7
+ locales: string[];
8
+ localeMapping: Record<string, string>;
9
+ originalMapping: Record<string, string>;
10
+ success: boolean;
11
+ }
12
+ export interface LocaleMappingResult {
13
+ normalizedLocales: string[];
14
+ localeMapping: Record<string, string>;
15
+ originalMapping: Record<string, string>;
16
+ }
17
+ export interface RowTransformerDependencies {
18
+ filterValidLocales: (headerRow: string[], keyColumn: string) => string[];
19
+ createLocaleMapping: (originalHeaders: string[], keyColumn: string) => LocaleMappingResult;
20
+ logger?: Pick<Console, 'warn' | 'error' | 'log'>;
21
+ }
22
+ /**
23
+ * Pure transformation core: converts canonical rows into TranslationData for one sheet.
24
+ */
25
+ export declare function transformRowsToSheetData(rows: SheetRow[], sheetTitle: string, deps: RowTransformerDependencies): SheetProcessingResult;
26
+ //# sourceMappingURL=rowTransformer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rowTransformer.d.ts","sourceRoot":"","sources":["../../src/core/rowTransformer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,eAAe,CAAC;IAC9B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,0BAA0B;IACzC,kBAAkB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;IACzE,mBAAmB,EAAE,CAAC,eAAe,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,KAAK,mBAAmB,CAAC;IAC3F,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC,CAAC;CAClD;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,QAAQ,EAAE,EAChB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,0BAA0B,GAC/B,qBAAqB,CA8EvB"}