@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
@@ -0,0 +1,37 @@
1
+ import type { TranslationInputProvider } from '../contracts';
2
+ import { type ProviderCapabilitySet } from '../capabilities';
3
+ /** One CSV source to read as a table. Provide exactly one of `url` or `filePath`. */
4
+ export interface CryptPadCsvSource {
5
+ tableName: string;
6
+ url?: string;
7
+ filePath?: string;
8
+ tableId?: string;
9
+ }
10
+ /**
11
+ * Options for configuring a CryptPad CSV input provider.
12
+ */
13
+ export interface CryptPadCsvInputProviderOptions {
14
+ /** Array of CSV source definitions mapping tables to URLs or local files. */
15
+ sources: CryptPadCsvSource[];
16
+ /** Optional CSV column delimiter (defaults to comma ','). */
17
+ delimiter?: string;
18
+ /** Optional custom provider identifier. Defaults to 'cryptpad-csv'. */
19
+ providerId?: string;
20
+ /** Optional custom provider display name. */
21
+ displayName?: string;
22
+ }
23
+ interface CryptPadCsvProviderDeps {
24
+ fetchCsv: (url: string, signal?: AbortSignal) => Promise<string>;
25
+ readCsvFile: (filePath: string) => Promise<string>;
26
+ }
27
+ declare const CRYPTPAD_CSV_INPUT_CAPABILITIES: ProviderCapabilitySet;
28
+ /**
29
+ * Creates a read-only {@link TranslationInputProvider} that reads one or more CSV
30
+ * sources (local files or public export URLs) as canonical tables. This is a CSV-only
31
+ * MVP: it has no output/sync capability, so it is always paired with another provider
32
+ * (e.g. `cryptpad-workspace`) for write-back. Public URLs require no authentication,
33
+ * reflected in `publicReadNoAuth: true`.
34
+ */
35
+ export declare function createCryptPadCsvInputProvider(options: CryptPadCsvInputProviderOptions, depsOverrides?: Partial<CryptPadCsvProviderDeps>): TranslationInputProvider;
36
+ export { CRYPTPAD_CSV_INPUT_CAPABILITIES };
37
+ //# sourceMappingURL=provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/providers/cryptpad/provider.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,wBAAwB,EAGzB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAuB,KAAK,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAElF,qFAAqF;AACrF,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC9C,6EAA6E;IAC7E,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6CAA6C;IAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACjE,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACpD;AAED,QAAA,MAAM,+BAA+B,EAAE,qBAGrC,CAAC;AAwCH;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,+BAA+B,EACxC,aAAa,GAAE,OAAO,CAAC,uBAAuB,CAAM,GACnD,wBAAwB,CAoD1B;AAED,OAAO,EAAE,+BAA+B,EAAE,CAAC"}
@@ -0,0 +1,4 @@
1
+ /** Barrel for the Google Sheets provider family (input/output/sync). */
2
+ export { createGoogleSheetsInputProvider, createGoogleSheetsOutputProvider, createGoogleSheetsSyncProvider, GOOGLE_SHEETS_PROVIDER_CAPABILITIES, } from './providers';
3
+ export type { GoogleSheetsInputProviderOptions, GoogleSheetsOutputProviderOptions, GoogleSheetsSyncProviderOptions, } from './providers';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/google/index.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,OAAO,EACL,+BAA+B,EAC/B,gCAAgC,EAChC,8BAA8B,EAC9B,mCAAmC,GACpC,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,gCAAgC,EAChC,iCAAiC,EACjC,+BAA+B,GAChC,MAAM,aAAa,CAAC"}
@@ -0,0 +1,105 @@
1
+ import type { GoogleAuth } from 'google-auth-library';
2
+ import { GoogleSpreadsheet } from 'google-spreadsheet';
3
+ import type { TranslationInputProvider, TranslationOutputProvider, TranslationSyncProvider } from '../contracts';
4
+ import { type ProviderCapabilitySet } from '../capabilities';
5
+ import { withRetry } from '../../utils/rateLimiter';
6
+ import { updateSpreadsheetWithLocalChanges } from '../../utils/spreadsheetUpdater';
7
+ import { findLocalChanges } from '../../utils/dataConverter/findLocalChanges';
8
+ import type { SheetRow } from '../../types';
9
+ /**
10
+ * Options for creating a Google Sheets input provider.
11
+ */
12
+ export interface GoogleSheetsInputProviderOptions {
13
+ /** Target spreadsheet ID. If omitted, falls back to GOOGLE_SPREADSHEET_ID env var. */
14
+ spreadsheetId?: string;
15
+ /** Maximum number of rows to retrieve per sheet tab. Defaults to 100. */
16
+ rowLimit?: number;
17
+ /** Throttling delay in seconds between API requests. */
18
+ waitSeconds?: number;
19
+ /** When true, fetches public spreadsheet without requiring authentication. */
20
+ publicSheet?: boolean;
21
+ /** Custom provider identifier. Defaults to 'google-sheets'. */
22
+ providerId?: string;
23
+ /** Custom provider display name. */
24
+ displayName?: string;
25
+ }
26
+ /**
27
+ * Options for creating a Google Sheets output provider.
28
+ */
29
+ export interface GoogleSheetsOutputProviderOptions {
30
+ /** Target spreadsheet ID. If omitted, falls back to GOOGLE_SPREADSHEET_ID env var. */
31
+ spreadsheetId?: string;
32
+ /** Throttling delay in seconds between API requests. */
33
+ waitSeconds?: number;
34
+ /** When true, automatically inserts GOOGLETRANSLATE formulas for missing translations. */
35
+ autoTranslate?: boolean;
36
+ /** When true with autoTranslate, overwrites existing manual translations with formulas. */
37
+ override?: boolean;
38
+ /** Column header mappings for locale normalization. */
39
+ localeMapping?: Record<string, string>;
40
+ /** Custom provider identifier. Defaults to 'google-sheets'. */
41
+ providerId?: string;
42
+ /** Custom provider display name. */
43
+ displayName?: string;
44
+ }
45
+ /**
46
+ * Options for creating a Google Sheets sync provider.
47
+ */
48
+ export interface GoogleSheetsSyncProviderOptions {
49
+ /** Target spreadsheet ID. If omitted, falls back to GOOGLE_SPREADSHEET_ID env var. */
50
+ spreadsheetId?: string;
51
+ /** Throttling delay in seconds between API requests. */
52
+ waitSeconds?: number;
53
+ /** When true, automatically inserts GOOGLETRANSLATE formulas for missing translations. */
54
+ autoTranslate?: boolean;
55
+ /** When true with autoTranslate, overwrites existing manual translations with formulas. */
56
+ override?: boolean;
57
+ /** Column header mappings for locale normalization. */
58
+ localeMapping?: Record<string, string>;
59
+ /** Custom provider identifier. Defaults to 'google-sheets'. */
60
+ providerId?: string;
61
+ /** Custom provider display name. */
62
+ displayName?: string;
63
+ }
64
+ interface GoogleSheetsProviderDeps {
65
+ createAuthClient: () => GoogleAuth;
66
+ createSpreadsheetClient: (spreadsheetId: string, authClient: GoogleAuth) => GoogleSpreadsheet;
67
+ readPublicSheet: (spreadsheetId: string, sheetName: string) => Promise<SheetRow[]>;
68
+ withRetry: typeof withRetry;
69
+ updateSpreadsheetWithLocalChanges: typeof updateSpreadsheetWithLocalChanges;
70
+ findLocalChanges: typeof findLocalChanges;
71
+ logger: Pick<Console, 'warn' | 'log'>;
72
+ }
73
+ /**
74
+ * Creates a {@link TranslationInputProvider} backed by Google Sheets. When
75
+ * `options.publicSheet` is true, reads via the no-auth public CSV export path
76
+ * (`publicReadNoAuth` capability); otherwise authenticates via
77
+ * {@link createAuthClient} and reads through the Google Sheets API, skipping
78
+ * (and warning about) any requested table name that has no matching sheet.
79
+ */
80
+ export declare function createGoogleSheetsInputProvider(options?: GoogleSheetsInputProviderOptions, depsOverrides?: Partial<GoogleSheetsProviderDeps>): TranslationInputProvider;
81
+ /**
82
+ * Creates a {@link TranslationOutputProvider} that authenticates and writes the full
83
+ * translation set to a Google Sheets spreadsheet via {@link updateSpreadsheetWithLocalChanges},
84
+ * optionally auto-translating missing cells with a formula (`autoTranslate`) and
85
+ * optionally overwriting existing non-empty cells (`override`).
86
+ */
87
+ export declare function createGoogleSheetsOutputProvider(options?: GoogleSheetsOutputProviderOptions, depsOverrides?: Partial<GoogleSheetsProviderDeps>): TranslationOutputProvider;
88
+ /**
89
+ * Creates a {@link TranslationSyncProvider} that computes local-only changes via
90
+ * {@link findLocalChanges} (comparing `localTranslations` against `remoteTranslations`)
91
+ * and, if any exist, writes just those changed keys back to the spreadsheet. Returns
92
+ * early with `changedKeys: 0` when there is no local diff, avoiding an unnecessary
93
+ * authenticated round-trip.
94
+ */
95
+ export declare function createGoogleSheetsSyncProvider(options?: GoogleSheetsSyncProviderOptions, depsOverrides?: Partial<GoogleSheetsProviderDeps>): TranslationSyncProvider;
96
+ /**
97
+ * Static capability sets declared for Google Sheets input, output, and sync providers.
98
+ */
99
+ export declare const GOOGLE_SHEETS_PROVIDER_CAPABILITIES: {
100
+ readonly input: ProviderCapabilitySet;
101
+ readonly output: ProviderCapabilitySet;
102
+ readonly sync: ProviderCapabilitySet;
103
+ };
104
+ export {};
105
+ //# sourceMappingURL=providers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../../src/providers/google/providers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EACV,wBAAwB,EAIxB,yBAAyB,EAGzB,uBAAuB,EAExB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAuB,KAAK,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAGlF,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,iCAAiC,EAAE,MAAM,gCAAgC,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAC;AAC9E,OAAO,KAAK,EAAE,QAAQ,EAAmB,MAAM,aAAa,CAAC;AAG7D;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C,sFAAsF;IACtF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8EAA8E;IAC9E,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,iCAAiC;IAChD,sFAAsF;IACtF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0FAA0F;IAC1F,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uDAAuD;IACvD,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC9C,sFAAsF;IACtF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0FAA0F;IAC1F,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,2FAA2F;IAC3F,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uDAAuD;IACvD,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oCAAoC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,UAAU,wBAAwB;IAChC,gBAAgB,EAAE,MAAM,UAAU,CAAC;IACnC,uBAAuB,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,KAAK,iBAAiB,CAAC;IAC9F,eAAe,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnF,SAAS,EAAE,OAAO,SAAS,CAAC;IAC5B,iCAAiC,EAAE,OAAO,iCAAiC,CAAC;IAC5E,gBAAgB,EAAE,OAAO,gBAAgB,CAAC;IAC1C,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;CACvC;AAwDD;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAC7C,OAAO,GAAE,gCAAqC,EAC9C,aAAa,GAAE,OAAO,CAAC,wBAAwB,CAAM,GACpD,wBAAwB,CA2E1B;AAED;;;;;GAKG;AACH,wBAAgB,gCAAgC,CAC9C,OAAO,GAAE,iCAAsC,EAC/C,aAAa,GAAE,OAAO,CAAC,wBAAwB,CAAM,GACpD,yBAAyB,CA0C3B;AAED;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC5C,OAAO,GAAE,+BAAoC,EAC7C,aAAa,GAAE,OAAO,CAAC,wBAAwB,CAAM,GACpD,uBAAuB,CA6CzB;AAED;;GAEG;AACH,eAAO,MAAM,mCAAmC;aAC9C,KAAK;aACL,MAAM;aACN,IAAI;CACI,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Public barrel for the v3 provider platform: capability model, provider contracts
3
+ * (translation + asset), the built-in Google and CryptPad provider factories, the
4
+ * catalog/discovery API, the sync engine, the orchestrator, and the runtime config
5
+ * layer that wires a {@link ProviderRuntimeConfig} into concrete provider instances.
6
+ */
7
+ export { PROVIDER_CAPABILITIES, EMPTY_PROVIDER_CAPABILITIES, OPERATION_CAPABILITY_REQUIREMENTS, createCapabilitySet, missingCapabilities, hasRequiredCapabilities, assertRequiredCapabilities, assertOperationCapabilities, } from './capabilities';
8
+ export type { ProviderCapability, ProviderCapabilitySet, ProviderOperation } from './capabilities';
9
+ export type { ProviderKind, ProviderMetadata, CanonicalTableInput, TranslationInputRequest, TranslationInputResult, TranslationOutputPayload, TranslationOutputResult, TranslationSyncPayload, TranslationSyncResult, TranslationInputProvider, TranslationOutputProvider, TranslationSyncProvider, AnyTranslationProvider, ProviderRegistry, SegmentedProviderRegistry, } from './contracts';
10
+ export type { AssetProviderKind, CanonicalAssetEntry, AssetManifestResult, AssetSyncRequest, AssetSyncResult, AssetInputProvider, AssetOutputProvider, AssetSyncProvider, } from './assetContracts';
11
+ export type { ProviderSourceKind, ProviderSourceDescriptor, ProviderDiscoveryRequest, ProviderDiscoveryResult, ProviderCatalogProvider, InMemoryProviderCatalogOptions, } from './catalog';
12
+ export { createGoogleSheetsInputProvider, createGoogleSheetsOutputProvider, createGoogleSheetsSyncProvider, GOOGLE_SHEETS_PROVIDER_CAPABILITIES, } from './google';
13
+ export type { GoogleSheetsInputProviderOptions, GoogleSheetsOutputProviderOptions, GoogleSheetsSyncProviderOptions, } from './google';
14
+ export { createCryptPadCsvInputProvider, createCryptPadWorkspaceOutputProvider, createCryptPadWorkspaceSyncProvider, createCryptPadAssetSyncProvider, CRYPTPAD_CSV_INPUT_CAPABILITIES, CRYPTPAD_WORKSPACE_OUTPUT_CAPABILITIES, CRYPTPAD_WORKSPACE_SYNC_CAPABILITIES, CRYPTPAD_ASSET_SYNC_CAPABILITIES, } from './cryptpad';
15
+ export type { CryptPadCsvSource, CryptPadCsvInputProviderOptions, CryptPadWorkspaceProviderOptions, CryptPadAssetSyncProviderOptions, } from './cryptpad';
16
+ export { createInMemoryProviderCatalogProvider, createDefaultProviderCatalog } from './catalog';
17
+ export { buildSyncPlan, resolveSyncPlan } from './syncEngine';
18
+ export type { SyncConflictPolicy, SyncChangeType, SyncEntryChange, SyncConflict, SyncPlan, ResolveSyncPlanResult, BuildSyncPlanInput, } from './syncEngine';
19
+ export { runProviderPipeline } from './orchestrator';
20
+ export type { ProviderPipelineOptions, ProviderPipelineResult } from './orchestrator';
21
+ export { validateProviderRuntimeConfig, assertValidProviderRuntimeConfig, mapLegacyGoogleOptionsToProviderConfig, } from './config';
22
+ export type { ProviderReferenceConfig, ProviderRuntimeConfig, ProviderConfigValidationResult, LegacyConfigMappingResult, } from './config';
23
+ export { createProvidersFromRuntimeConfig, requiresGoogleAuthForRuntimeConfig } from './runtime';
24
+ export type { ProviderRuntimeSelection } from './runtime';
25
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EACL,qBAAqB,EACrB,2BAA2B,EAC3B,iCAAiC,EACjC,mBAAmB,EACnB,mBAAmB,EACnB,uBAAuB,EACvB,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;AAExB,YAAY,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnG,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,EACvB,sBAAsB,EACtB,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,iBAAiB,EACjB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAE1B,YAAY,EACV,kBAAkB,EAClB,wBAAwB,EACxB,wBAAwB,EACxB,uBAAuB,EACvB,uBAAuB,EACvB,8BAA8B,GAC/B,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,+BAA+B,EAC/B,gCAAgC,EAChC,8BAA8B,EAC9B,mCAAmC,GACpC,MAAM,UAAU,CAAC;AAElB,YAAY,EACV,gCAAgC,EAChC,iCAAiC,EACjC,+BAA+B,GAChC,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,8BAA8B,EAC9B,qCAAqC,EACrC,mCAAmC,EACnC,+BAA+B,EAC/B,+BAA+B,EAC/B,sCAAsC,EACtC,oCAAoC,EACpC,gCAAgC,GACjC,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,iBAAiB,EACjB,+BAA+B,EAC/B,gCAAgC,EAChC,gCAAgC,GACjC,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,qCAAqC,EAAE,4BAA4B,EAAE,MAAM,WAAW,CAAC;AAEhG,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE9D,YAAY,EACV,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,YAAY,EACZ,QAAQ,EACR,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,YAAY,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAEtF,OAAO,EACL,6BAA6B,EAC7B,gCAAgC,EAChC,sCAAsC,GACvC,MAAM,UAAU,CAAC;AAElB,YAAY,EACV,uBAAuB,EACvB,qBAAqB,EACrB,8BAA8B,EAC9B,yBAAyB,GAC1B,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,gCAAgC,EAAE,kCAAkC,EAAE,MAAM,WAAW,CAAC;AAEjG,YAAY,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,74 @@
1
+ import { type SheetProcessingResult } from '../core/rowTransformer';
2
+ import type { TranslationData } from '../types';
3
+ import type { TranslationInputProvider, TranslationOutputProvider, TranslationSyncProvider, TranslationOutputResult, TranslationSyncResult } from './contracts';
4
+ import type { AssetSyncProvider, AssetSyncResult } from './assetContracts';
5
+ /**
6
+ * Configuration options for executing asset sync within the provider pipeline.
7
+ */
8
+ export interface ProviderAssetSyncRequestOptions {
9
+ /** Local directory where synchronized assets will be written. */
10
+ targetDirectory: string;
11
+ /** When true, local files in targetDirectory not found in the manifest are removed. */
12
+ deleteMissing?: boolean;
13
+ }
14
+ /**
15
+ * Input options supplied to {@link runProviderPipeline} to configure input, output,
16
+ * sync, asset sync providers, and execution parameters.
17
+ */
18
+ export interface ProviderPipelineOptions {
19
+ /** Provider responsible for reading canonical source tables. */
20
+ inputProvider: TranslationInputProvider;
21
+ /** Optional provider responsible for writing canonical tables to a destination. */
22
+ outputProvider?: TranslationOutputProvider;
23
+ /** Optional provider responsible for reconciling local changes back to the remote source. */
24
+ syncProvider?: TranslationSyncProvider;
25
+ /** Optional asset-sync provider (e.g. CryptPad asset manifest sync). Runs only when `assetSync` is also set. */
26
+ assetSyncProvider?: AssetSyncProvider;
27
+ /** Target directory (and delete-missing behavior) for the asset sync run. Ignored if `assetSyncProvider` is absent. */
28
+ assetSync?: ProviderAssetSyncRequestOptions;
29
+ /** Explicit list of table names to process. Defaults to input provider default if omitted. */
30
+ tableNames?: string[];
31
+ /** Snapshot of local translations used for three-way sync back. */
32
+ localTranslationsForSync?: TranslationData;
33
+ /** Optional abort signal for cancelling in-flight operations. */
34
+ signal?: AbortSignal;
35
+ }
36
+ /**
37
+ * Result returned by {@link runProviderPipeline} containing processed translations,
38
+ * discovered locales, mapping tables, and optional step results.
39
+ */
40
+ export interface ProviderPipelineResult {
41
+ /** Merged translation data structured by locale -> table -> key -> value. */
42
+ translations: TranslationData;
43
+ /** Normalized list of locale identifiers present in the translations. */
44
+ locales: string[];
45
+ /** Mapping of original header columns to normalized locale codes. */
46
+ localeMapping: Record<string, string>;
47
+ /** Original locale mapping preserved for reverse lookup. */
48
+ originalLocaleMapping: Record<string, string>;
49
+ /** Total number of tables read from the input provider. */
50
+ inputTableCount: number;
51
+ /** Result from the output provider stage, if outputProvider was configured. */
52
+ outputResult?: TranslationOutputResult;
53
+ /** Result from the sync provider stage, if syncProvider was configured. */
54
+ syncResult?: TranslationSyncResult;
55
+ /** Result from the asset sync provider stage, if assetSyncProvider was configured and executed. */
56
+ assetSyncResult?: AssetSyncResult;
57
+ /** Additional provider-specific metadata returned from the pipeline execution. */
58
+ metadata?: Record<string, unknown>;
59
+ }
60
+ interface OrchestratorDeps {
61
+ transformRows: (rows: Record<string, string>[], sheetTitle: string) => SheetProcessingResult;
62
+ logger: Pick<Console, 'warn'>;
63
+ }
64
+ /**
65
+ * Runs the full provider-driven translation pipeline: read tables from the input
66
+ * provider, transform rows into canonical {@link TranslationData}, optionally write
67
+ * to an output provider, optionally sync local changes back, and optionally sync
68
+ * assets via an asset-sync provider. Each optional stage is gated by a capability
69
+ * check on the corresponding provider so unsupported operations fail fast instead
70
+ * of silently doing partial work.
71
+ */
72
+ export declare function runProviderPipeline(options: ProviderPipelineOptions, depsOverrides?: Partial<OrchestratorDeps>): Promise<ProviderPipelineResult>;
73
+ export {};
74
+ //# sourceMappingURL=orchestrator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../src/providers/orchestrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC9F,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAIhD,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,EACtB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAE3E;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC9C,iEAAiE;IACjE,eAAe,EAAE,MAAM,CAAC;IACxB,uFAAuF;IACvF,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,gEAAgE;IAChE,aAAa,EAAE,wBAAwB,CAAC;IACxC,mFAAmF;IACnF,cAAc,CAAC,EAAE,yBAAyB,CAAC;IAC3C,6FAA6F;IAC7F,YAAY,CAAC,EAAE,uBAAuB,CAAC;IACvC,gHAAgH;IAChH,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,uHAAuH;IACvH,SAAS,CAAC,EAAE,+BAA+B,CAAC;IAC5C,8FAA8F;IAC9F,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,mEAAmE;IACnE,wBAAwB,CAAC,EAAE,eAAe,CAAC;IAC3C,iEAAiE;IACjE,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,6EAA6E;IAC7E,YAAY,EAAE,eAAe,CAAC;IAC9B,yEAAyE;IACzE,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,qEAAqE;IACrE,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,4DAA4D;IAC5D,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,2DAA2D;IAC3D,eAAe,EAAE,MAAM,CAAC;IACxB,+EAA+E;IAC/E,YAAY,CAAC,EAAE,uBAAuB,CAAC;IACvC,2EAA2E;IAC3E,UAAU,CAAC,EAAE,qBAAqB,CAAC;IACnC,mGAAmG;IACnG,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,kFAAkF;IAClF,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,UAAU,gBAAgB;IACxB,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,UAAU,EAAE,MAAM,KAAK,qBAAqB,CAAC;IAC7F,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;CAC/B;AAgCD;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,uBAAuB,EAChC,aAAa,GAAE,OAAO,CAAC,gBAAgB,CAAM,GAC5C,OAAO,CAAC,sBAAsB,CAAC,CA0GjC"}
@@ -0,0 +1,30 @@
1
+ import type { TranslationInputProvider, TranslationOutputProvider, TranslationSyncProvider } from './contracts';
2
+ import type { AssetSyncProvider } from './assetContracts';
3
+ import type { ProviderRuntimeConfig } from './config';
4
+ /**
5
+ * Set of instantiated providers resolved from a {@link ProviderRuntimeConfig}.
6
+ */
7
+ export interface ProviderRuntimeSelection {
8
+ /** Required input provider for reading source tables. */
9
+ inputProvider: TranslationInputProvider;
10
+ /** Optional output provider for writing destination tables. */
11
+ outputProvider?: TranslationOutputProvider;
12
+ /** Optional sync provider for two-way / three-way changes sync. */
13
+ syncProvider?: TranslationSyncProvider;
14
+ /** Optional asset sync provider for fetching and mirroring media assets. */
15
+ assetSyncProvider?: AssetSyncProvider;
16
+ }
17
+ /**
18
+ * Builds a {@link ProviderRuntimeSelection} by resolving each configured provider slot
19
+ * (`input`, `output`, `sync`, `assetSync`) to a concrete provider instance via its factory.
20
+ * Throws if a slot names a provider ID with no matching factory, or if a provider's
21
+ * required options are missing.
22
+ */
23
+ export declare function createProvidersFromRuntimeConfig(config: ProviderRuntimeConfig): ProviderRuntimeSelection;
24
+ /**
25
+ * Determines whether a runtime config needs authenticated Google credentials, i.e.
26
+ * whether Google Sheets is used for output/sync, or for input without `publicSheet: true`.
27
+ * Used to skip Google auth bootstrapping entirely for CryptPad-only pipelines.
28
+ */
29
+ export declare function requiresGoogleAuthForRuntimeConfig(config: ProviderRuntimeConfig): boolean;
30
+ //# sourceMappingURL=runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/providers/runtime.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EACzB,uBAAuB,EACxB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,yDAAyD;IACzD,aAAa,EAAE,wBAAwB,CAAC;IACxC,+DAA+D;IAC/D,cAAc,CAAC,EAAE,yBAAyB,CAAC;IAC3C,mEAAmE;IACnE,YAAY,CAAC,EAAE,uBAAuB,CAAC;IACvC,4EAA4E;IAC5E,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACvC;AA6HD;;;;;GAKG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,qBAAqB,GAC5B,wBAAwB,CAqB1B;AAED;;;;GAIG;AACH,wBAAgB,kCAAkC,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAezF"}
@@ -0,0 +1,106 @@
1
+ import type { TranslationData } from '../types';
2
+ /**
3
+ * Three-way sync engine: given a common ancestor ("base") and two divergent copies
4
+ * ("local" and "remote"), computes per-key changes on each side, flags keys changed
5
+ * on both sides as conflicts, and resolves the merge according to a chosen
6
+ * {@link SyncConflictPolicy}. Used by sync-capable providers (e.g. CryptPad workspace)
7
+ * to reconcile local translation edits against the remote snapshot before writing back.
8
+ */
9
+ export type SyncConflictPolicy = 'remote-wins' | 'local-wins' | 'manual';
10
+ /**
11
+ * Kind of change detected for a single key during three-way diff.
12
+ */
13
+ export type SyncChangeType = 'insert' | 'update' | 'delete';
14
+ /**
15
+ * Represents a single change applied to a translation key.
16
+ */
17
+ export interface SyncEntryChange {
18
+ /** Dot-delimited path `locale.sheet.key`. */
19
+ path: string;
20
+ /** Locale code of the key. */
21
+ locale: string;
22
+ /** Sheet / table name containing the key. */
23
+ sheet: string;
24
+ /** Translation key identifier. */
25
+ key: string;
26
+ /** Type of modification. */
27
+ type: SyncChangeType;
28
+ /** Previous string value prior to change, if present. */
29
+ before?: string;
30
+ /** New string value after change, if present. */
31
+ after?: string;
32
+ }
33
+ /**
34
+ * Describes a conflicting modification where both local and remote diverged from base.
35
+ */
36
+ export interface SyncConflict {
37
+ /** Dot-delimited path `locale.sheet.key`. */
38
+ path: string;
39
+ /** Locale code of the key. */
40
+ locale: string;
41
+ /** Sheet / table name containing the key. */
42
+ sheet: string;
43
+ /** Translation key identifier. */
44
+ key: string;
45
+ /** Value present in base ancestor snapshot. */
46
+ baseValue?: string;
47
+ /** Value present in local snapshot. */
48
+ localValue?: string;
49
+ /** Value present in remote snapshot. */
50
+ remoteValue?: string;
51
+ /** Classification of why conflict occurred. */
52
+ reason: 'diverged-update' | 'delete-vs-update';
53
+ }
54
+ /**
55
+ * Detailed plan computed by {@link buildSyncPlan} separating local, remote, and conflicting changes.
56
+ */
57
+ export interface SyncPlan {
58
+ /** Changes occurring locally relative to base snapshot. */
59
+ localChanges: SyncEntryChange[];
60
+ /** Changes occurring remotely relative to base snapshot. */
61
+ remoteChanges: SyncEntryChange[];
62
+ /** Keys changed concurrently with incompatible values. */
63
+ conflicts: SyncConflict[];
64
+ }
65
+ /**
66
+ * Outcome of resolving a three-way {@link SyncPlan} via {@link resolveSyncPlan}.
67
+ */
68
+ export interface ResolveSyncPlanResult {
69
+ /** Conflict resolution strategy that was applied. */
70
+ policy: SyncConflictPolicy;
71
+ /** Final merged translation tree. */
72
+ mergedTranslations: TranslationData;
73
+ /** Count of local modifications successfully incorporated. */
74
+ appliedLocalChanges: number;
75
+ /** Count of remote modifications preserved. */
76
+ appliedRemoteChanges: number;
77
+ /** Count of conflicts skipped / deferred for manual resolution. */
78
+ skippedConflicts: number;
79
+ }
80
+ /**
81
+ * Inputs required to construct a three-way diff {@link SyncPlan}.
82
+ */
83
+ export interface BuildSyncPlanInput {
84
+ /** Common ancestor snapshot. */
85
+ baseTranslations: TranslationData;
86
+ /** Current local modifications snapshot. */
87
+ localTranslations: TranslationData;
88
+ /** Current remote authoritative snapshot. */
89
+ remoteTranslations: TranslationData;
90
+ }
91
+ /**
92
+ * Diffs `localTranslations` and `remoteTranslations` each against `baseTranslations`
93
+ * (flattened to `locale::sheet::key` paths) and returns the resulting local changes,
94
+ * remote changes, and any keys that changed on both sides to a genuinely different
95
+ * value (conflicts). Does not merge anything — see {@link resolveSyncPlan} for that.
96
+ */
97
+ export declare function buildSyncPlan(input: BuildSyncPlanInput): SyncPlan;
98
+ /**
99
+ * Runs {@link buildSyncPlan} and merges the result into a copy of `remoteTranslations`
100
+ * according to `policy`:
101
+ * - `remote-wins` — non-conflicting local changes apply; conflicting keys keep the remote value.
102
+ * - `local-wins` — every local change applies, including over conflicts.
103
+ * - `manual` — non-conflicting local changes apply; conflicts are left as-is and counted in `skippedConflicts` for human review.
104
+ */
105
+ export declare function resolveSyncPlan(input: BuildSyncPlanInput, policy: SyncConflictPolicy): ResolveSyncPlanResult;
106
+ //# sourceMappingURL=syncEngine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syncEngine.d.ts","sourceRoot":"","sources":["../../src/providers/syncEngine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAAG,aAAa,GAAG,YAAY,GAAG,QAAQ,CAAC;AAEzE;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,4BAA4B;IAC5B,IAAI,EAAE,cAAc,CAAC;IACrB,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iDAAiD;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+CAA+C;IAC/C,MAAM,EAAE,iBAAiB,GAAG,kBAAkB,CAAC;CAChD;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,2DAA2D;IAC3D,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,4DAA4D;IAC5D,aAAa,EAAE,eAAe,EAAE,CAAC;IACjC,0DAA0D;IAC1D,SAAS,EAAE,YAAY,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,qDAAqD;IACrD,MAAM,EAAE,kBAAkB,CAAC;IAC3B,qCAAqC;IACrC,kBAAkB,EAAE,eAAe,CAAC;IACpC,8DAA8D;IAC9D,mBAAmB,EAAE,MAAM,CAAC;IAC5B,+CAA+C;IAC/C,oBAAoB,EAAE,MAAM,CAAC;IAC7B,mEAAmE;IACnE,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,gCAAgC;IAChC,gBAAgB,EAAE,eAAe,CAAC;IAClC,4CAA4C;IAC5C,iBAAiB,EAAE,eAAe,CAAC;IACnC,6CAA6C;IAC7C,kBAAkB,EAAE,eAAe,CAAC;CACrC;AA8HD;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,QAAQ,CAuCjE;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,kBAAkB,EACzB,MAAM,EAAE,kBAAkB,GACzB,qBAAqB,CAuCvB"}
@@ -1,24 +1,49 @@
1
+ /**
2
+ * Represents a long-running Google Cloud Operation response.
3
+ */
1
4
  export interface GcpOperation {
5
+ /** Unique resource name of the operation. */
2
6
  name: string;
7
+ /** True if the operation has finished executing. */
3
8
  done?: boolean;
9
+ /** Error payload if operation terminated with an error. */
4
10
  error?: {
5
11
  code: number;
6
12
  message: string;
7
13
  };
8
14
  }
15
+ /**
16
+ * Google Cloud IAM Policy object structure containing member role bindings.
17
+ */
9
18
  export interface IamPolicy {
19
+ /** Array of role-to-member associations. */
10
20
  bindings?: Array<{
11
21
  role: string;
12
22
  members: string[];
13
23
  }>;
24
+ /** Cryptographic etag used for optimistic concurrency control during updates. */
14
25
  etag?: string;
26
+ /** Format version of the policy. */
15
27
  version?: number;
16
28
  }
29
+ /**
30
+ * Error thrown when a Google Cloud REST API request returns a non-2xx HTTP status code.
31
+ */
17
32
  export declare class GcpApiError extends Error {
18
33
  readonly status: number;
19
34
  constructor(message: string, status: number);
20
35
  }
36
+ /**
37
+ * Obtains a Google Cloud access token scoped to `cloud-platform`, using the given
38
+ * service account key file if provided, or Application Default Credentials otherwise.
39
+ */
21
40
  export declare function getGcpAccessToken(keyFilePath?: string): Promise<string>;
41
+ /** Authenticated JSON fetch against a Google Cloud API endpoint; throws {@link GcpApiError} on a non-OK response. */
22
42
  export declare function gcpFetch(url: string, token: string, method?: string, body?: unknown): Promise<unknown>;
43
+ /**
44
+ * Polls a Google Cloud long-running operation (by resource name or full URL, which
45
+ * must resolve to a `*.googleapis.com` host) until it reports `done`, throwing if the
46
+ * operation itself failed or if `maxWaitMs` elapses first.
47
+ */
23
48
  export declare function waitForOperation(operationName: string, token: string, maxWaitMs?: number): Promise<void>;
24
49
  //# sourceMappingURL=gcpTransport.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gcpTransport.d.ts","sourceRoot":"","sources":["../../src/setup/gcpTransport.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1C;AAED,MAAM,WAAW,SAAS;IACzB,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACtD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,WAAY,SAAQ,KAAK;aAGpB,MAAM,EAAE,MAAM;gBAD9B,OAAO,EAAE,MAAM,EACC,MAAM,EAAE,MAAM;CAK/B;AAED,wBAAsB,iBAAiB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAgB7E;AAED,wBAAsB,QAAQ,CAC7B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,MAAM,SAAQ,EACd,IAAI,CAAC,EAAE,OAAO,GACZ,OAAO,CAAC,OAAO,CAAC,CAgBlB;AAED,wBAAsB,gBAAgB,CACrC,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,MAAM,EACb,SAAS,SAAS,GAChB,OAAO,CAAC,IAAI,CAAC,CA4Cf"}
1
+ {"version":3,"file":"gcpTransport.d.ts","sourceRoot":"","sources":["../../src/setup/gcpTransport.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,oDAAoD;IACpD,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,2DAA2D;IAC3D,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACtD,iFAAiF;IACjF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK;aAGlB,MAAM,EAAE,MAAM;IAFhC,YACE,OAAO,EAAE,MAAM,EACC,MAAM,EAAE,MAAM,EAI/B;CACF;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAgB7E;AAED,qHAAqH;AACrH,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,MAAM,SAAQ,EACd,IAAI,CAAC,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAkBlB;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,MAAM,EACb,SAAS,SAAS,GACjB,OAAO,CAAC,IAAI,CAAC,CA4Cf"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=migrateV3Cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migrateV3Cli.d.ts","sourceRoot":"","sources":["../../src/setup/migrateV3Cli.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=providerCli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providerCli.d.ts","sourceRoot":"","sources":["../../src/setup/providerCli.ts"],"names":[],"mappings":""}
@@ -33,7 +33,7 @@ export interface GrantDrivePermissionsOptions {
33
33
  /** Path to a service account JSON key file used for bootstrapping. */
34
34
  keyFilePath?: string;
35
35
  }
36
- import { GcpApiError } from "./gcpTransport";
36
+ import { GcpApiError } from './gcpTransport';
37
37
  export { GcpApiError };
38
38
  /**
39
39
  * Configures Workload Identity Federation (WIF) on Google Cloud so that
@@ -1 +1 @@
1
- {"version":3,"file":"wifSetup.d.ts","sourceRoot":"","sources":["../../src/setup/wifSetup.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,eAAe;IAC/B,sDAAsD;IACtD,SAAS,EAAE,MAAM,CAAC;IAClB,mFAAmF;IACnF,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qEAAqE;IACrE,UAAU,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;sEACkE;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+EAA+E;IAC/E,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,cAAc;IAC9B,+EAA+E;IAC/E,WAAW,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,aAAa,EAAE,MAAM,CAAC;IACtB,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,4BAA4B;IAC5C,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,kDAAkD;IAClD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,sEAAsE;IACtE,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,OAAO,EACN,WAAW,EAMX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,CAAC;AA0HvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAyChF;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,qBAAqB,CAC1C,OAAO,EAAE,4BAA4B,GACnC,OAAO,CAAC,IAAI,CAAC,CA8Bf"}
1
+ {"version":3,"file":"wifSetup.d.ts","sourceRoot":"","sources":["../../src/setup/wifSetup.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,eAAe;IAC9B,sDAAsD;IACtD,SAAS,EAAE,MAAM,CAAC;IAClB,mFAAmF;IACnF,mBAAmB,EAAE,MAAM,CAAC;IAC5B,qEAAqE;IACrE,UAAU,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;sEACkE;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+EAA+E;IAC/E,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAED,MAAM,WAAW,cAAc;IAC7B,+EAA+E;IAC/E,WAAW,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,aAAa,EAAE,MAAM,CAAC;IACtB,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,4BAA4B;IAC3C,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,kDAAkD;IAClD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,sEAAsE;IACtE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,OAAO,EACL,WAAW,EAMZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,CAAC;AAmHvB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC,CAiChF;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,4BAA4B,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BhG"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,gBAAgB,GACzB,MAAM,GACN,MAAM,GACN,OAAO,GACP,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvB,OAAO,EAAE,CAAC;AAEb;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CACnC,MAAM,EACN,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAChD,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC7B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,qBAAqB,EAAE,MAAM,CAAC;CAC9B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,EAAE,CAAC;AAE/F;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAE/F;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,qBAAqB,EAAE,MAAM,CAAC;CAC/B"}
@@ -1,4 +1,4 @@
1
- import { GoogleAuth } from "google-auth-library";
1
+ import { GoogleAuth } from 'google-auth-library';
2
2
  /**
3
3
  * Normalizes a private key string from the many different ways secret-storage
4
4
  * systems (GitHub Secrets, CI env vars, secret managers) encode it.
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/utils/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAuBvD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAC9B,MAAM,EAAE,MAAM,EAAE,EAChB,WAAW,CAAC,EAAE;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GACzD,UAAU,CAKZ;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,IAAI,UAAU,CAmB7C;AAED,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/utils/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGjD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAuBvD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,EAAE,EAChB,WAAW,CAAC,EAAE;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAC1D,UAAU,CAKZ;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,IAAI,UAAU,CAmB7C;eAEc,gBAAgB"}
@@ -1 +1 @@
1
- {"version":3,"file":"configurationHandler.d.ts","sourceRoot":"","sources":["../../src/utils/configurationHandler.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,GAAE,kBAAuB,GAAG,gBAAgB,CAkBlF"}
1
+ {"version":3,"file":"configurationHandler.d.ts","sourceRoot":"","sources":["../../src/utils/configurationHandler.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,GAAE,kBAAuB,GAAG,gBAAgB,CAmBlF"}
@@ -1,4 +1,4 @@
1
- import type { TranslationData } from "../../types";
1
+ import type { TranslationData } from '../../types';
2
2
  /**
3
3
  * Converts languageData.json format back to the translation object structure
4
4
  * @param dataJson - Data in the languageData.json format
@@ -1 +1 @@
1
- {"version":3,"file":"convertFromDataJsonFormat.d.ts","sourceRoot":"","sources":["../../../src/utils/dataConverter/convertFromDataJsonFormat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,aAAa,CAAC;AAYrE;;;;GAIG;AACH,wBAAgB,yBAAyB,CACxC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GACjC,eAAe,CAqCjB"}
1
+ {"version":3,"file":"convertFromDataJsonFormat.d.ts","sourceRoot":"","sources":["../../../src/utils/dataConverter/convertFromDataJsonFormat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,aAAa,CAAC;AAUrE;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,eAAe,CAqC9F"}
@@ -1,4 +1,4 @@
1
- import type { TranslationData } from "../../types";
1
+ import type { TranslationData } from '../../types';
2
2
  /**
3
3
  * Converts the translation object to the expected languageData.json format
4
4
  * @param translationObj - The translation object with locale->sheet->key->value structure
@@ -1 +1 @@
1
- {"version":3,"file":"convertToDataJsonFormat.d.ts","sourceRoot":"","sources":["../../../src/utils/dataConverter/convertToDataJsonFormat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,aAAa,CAAC;AAErE;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACtC,cAAc,EAAE,eAAe,EAC/B,OAAO,EAAE,MAAM,EAAE,GACf,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAmD3B;AAED,eAAe,uBAAuB,CAAC"}
1
+ {"version":3,"file":"convertToDataJsonFormat.d.ts","sourceRoot":"","sources":["../../../src/utils/dataConverter/convertToDataJsonFormat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAoB,MAAM,aAAa,CAAC;AAErE;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,cAAc,EAAE,eAAe,EAC/B,OAAO,EAAE,MAAM,EAAE,GAChB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAiD3B;eAEc,uBAAuB"}
@@ -1,4 +1,4 @@
1
- import type { TranslationData } from "../../types";
1
+ import type { TranslationData } from '../../types';
2
2
  /**
3
3
  * Compares local languageData.json with spreadsheet data to find new keys.
4
4
  *
@@ -1 +1 @@
1
- {"version":3,"file":"findLocalChanges.d.ts","sourceRoot":"","sources":["../../../src/utils/dataConverter/findLocalChanges.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAInD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAC/B,SAAS,EAAE,eAAe,EAC1B,eAAe,EAAE,eAAe,GAC9B,eAAe,CAoCjB"}
1
+ {"version":3,"file":"findLocalChanges.d.ts","sourceRoot":"","sources":["../../../src/utils/dataConverter/findLocalChanges.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAInD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,eAAe,EAC1B,eAAe,EAAE,eAAe,GAC/B,eAAe,CAqCjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"docIngester.d.ts","sourceRoot":"","sources":["../../src/utils/docIngester.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAOlE,8EAA8E;AAC9E,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,kBAAkB,CAAC;AAE/D,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB;;;OAGG;IACH,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B;;;;OAIG;IACH,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B;;;OAGG;IACH,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,gBAAgB,CAAC;IACjC,mFAAmF;IACnF,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,gDAAgD;IAChD,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;IAC5C,0CAA0C;IAC1C,KAAK,EAAE,gBAAgB,CAAC;CACzB;AA4BD;;;;;;GAMG;AACH,wBAAsB,SAAS,CAC7B,KAAK,EAAE,MAAM,EACb,WAAW,CAAC,EAAE,aAAa,GAC1B,OAAO,CAAC,MAAM,CAAC,CAsBjB;AAID;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,cAAc,EAAE,GACxB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAaxB;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,cAAc,EAAE,EACzB,MAAM,EAAE,MAAM,GACb,eAAe,CA6CjB;AAaD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,SAAS,CAC7B,OAAO,EAAE,YAAY,EACrB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,eAAe,CAAC,CAyG1B"}
1
+ {"version":3,"file":"docIngester.d.ts","sourceRoot":"","sources":["../../src/utils/docIngester.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAOlE,8EAA8E;AAC9E,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,kBAAkB,CAAC;AAE/D,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB;;;OAGG;IACH,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B;;;;OAIG;IACH,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B;;;OAGG;IACH,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,gBAAgB,CAAC;IACjC,mFAAmF;IACnF,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,gDAAgD;IAChD,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;IAC5C,0CAA0C;IAC1C,KAAK,EAAE,gBAAgB,CAAC;CACzB;AA0BD;;;;;;GAMG;AACH,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAkB3F;AAID;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAanF;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,cAAc,EAAE,EACzB,MAAM,EAAE,MAAM,GACb,eAAe,CAyCjB;AAWD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,SAAS,CAC7B,OAAO,EAAE,YAAY,EACrB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,eAAe,CAAC,CAiG1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"docParser.d.ts","sourceRoot":"","sources":["../../src/utils/docParser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,qEAAqE;AACrE,MAAM,WAAW,cAAc;IAC7B,0EAA0E;IAC1E,SAAS,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,GAAG,EAAE,MAAM,CAAC;IACZ,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;AAE/D,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAID;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAM/C;AAID;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,eAAoB,GAC5B,cAAc,EAAE,CAMlB"}
1
+ {"version":3,"file":"docParser.d.ts","sourceRoot":"","sources":["../../src/utils/docParser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,qEAAqE;AACrE,MAAM,WAAW,cAAc;IAC7B,0EAA0E;IAC1E,SAAS,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,GAAG,EAAE,MAAM,CAAC;IACZ,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;GAMG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;AAE/D,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAID;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAID;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,cAAc,EAAE,CAMhG"}
@@ -1 +1 @@
1
- {"version":3,"file":"driveDocScanner.d.ts","sourceRoot":"","sources":["../../src/utils/driveDocScanner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,YAAY;IAC3B,2BAA2B;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,qEAAqE;IACrE,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,6BAA6B;IAC5C,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iEAAiE;IACjE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,WAAW,CAAC,EAAE,aAAa,CAAC;CAC7B;AAsFD;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAgBvE;AA0DD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,6BAA6B,GACrC,OAAO,CAAC,YAAY,EAAE,CAAC,CAIzB"}
1
+ {"version":3,"file":"driveDocScanner.d.ts","sourceRoot":"","sources":["../../src/utils/driveDocScanner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAE9C,MAAM,WAAW,YAAY;IAC3B,2BAA2B;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,qEAAqE;IACrE,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,6BAA6B;IAC5C,qCAAqC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iEAAiE;IACjE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kEAAkE;IAClE,WAAW,CAAC,EAAE,aAAa,CAAC;CAC7B;AAoFD;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAgBvE;AA+CD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,6BAA6B,GACrC,OAAO,CAAC,YAAY,EAAE,CAAC,CAIzB"}