appwrite-utils-cli 1.9.6 → 1.11.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.
- package/CONFIG_TODO.md +1189 -1189
- package/README.md +1004 -1004
- package/SELECTION_DIALOGS.md +145 -145
- package/SERVICE_IMPLEMENTATION_REPORT.md +462 -462
- package/package.json +6 -3
- package/scripts/copy-templates.ts +23 -23
- package/src/adapters/index.ts +11 -37
- package/src/backups/operations/bucketBackup.ts +277 -277
- package/src/backups/operations/collectionBackup.ts +310 -310
- package/src/backups/operations/comprehensiveBackup.ts +342 -342
- package/src/backups/schemas/bucketManifest.ts +78 -78
- package/src/backups/schemas/comprehensiveManifest.ts +76 -76
- package/src/backups/tracking/centralizedTracking.ts +352 -352
- package/src/cli/commands/configCommands.ts +265 -201
- package/src/cli/commands/databaseCommands.ts +931 -879
- package/src/cli/commands/functionCommands.ts +333 -332
- package/src/cli/commands/importFileCommands.ts +815 -0
- package/src/cli/commands/schemaCommands.ts +141 -141
- package/src/cli/commands/storageCommands.ts +2 -3
- package/src/cli/commands/transferCommands.ts +454 -457
- package/src/collections/attributes.ts.backup +1555 -1555
- package/src/collections/{attributes.ts → columns.ts} +15 -44
- package/src/collections/indexes.ts +350 -352
- package/src/collections/methods.ts +714 -815
- package/src/collections/tableOperations.ts +57 -21
- package/src/collections/transferOperations.ts +376 -377
- package/src/collections/wipeOperations.ts +449 -346
- package/src/databases/methods.ts +49 -49
- package/src/databases/setup.ts +77 -77
- package/src/examples/yamlTerminologyExample.ts +346 -346
- package/src/functions/deployments.ts +221 -220
- package/src/functions/fnConfigDiscovery.ts +2 -2
- package/src/functions/methods.ts +284 -284
- package/src/functions/templates/count-docs-in-collection/README.md +53 -53
- package/src/functions/templates/count-docs-in-collection/src/main.ts +159 -159
- package/src/functions/templates/count-docs-in-collection/src/request.ts +8 -8
- package/src/functions/templates/hono-typescript/README.md +285 -285
- package/src/functions/templates/hono-typescript/src/adapters/request.ts +73 -73
- package/src/functions/templates/hono-typescript/src/adapters/response.ts +105 -105
- package/src/functions/templates/hono-typescript/src/app.ts +179 -179
- package/src/functions/templates/hono-typescript/src/context.ts +102 -102
- package/src/functions/templates/hono-typescript/src/{index.ts → main.ts} +53 -53
- package/src/functions/templates/hono-typescript/src/middleware/appwrite.ts +118 -118
- package/src/functions/templates/typescript-node/README.md +31 -31
- package/src/functions/templates/typescript-node/src/context.ts +102 -102
- package/src/functions/templates/typescript-node/src/{index.ts → main.ts} +29 -29
- package/src/functions/templates/uv/README.md +30 -30
- package/src/functions/templates/uv/pyproject.toml +29 -29
- package/src/functions/templates/uv/src/context.py +124 -124
- package/src/functions/templates/uv/src/{index.py → main.py} +45 -45
- package/src/init.ts +62 -62
- package/src/interactiveCLI.ts +1095 -1030
- package/src/main.ts +1517 -1670
- package/src/migrations/afterImportActions.ts +579 -580
- package/src/migrations/appwriteToX.ts +634 -630
- package/src/migrations/comprehensiveTransfer.ts +2149 -2149
- package/src/migrations/dataLoader.ts +1729 -1702
- package/src/migrations/importController.ts +440 -428
- package/src/migrations/importDataActions.ts +315 -315
- package/src/migrations/relationships.ts +333 -334
- package/src/migrations/services/DataTransformationService.ts +195 -195
- package/src/migrations/services/FileHandlerService.ts +310 -310
- package/src/migrations/services/ImportOrchestrator.ts +674 -665
- package/src/migrations/services/RateLimitManager.ts +362 -362
- package/src/migrations/services/RelationshipResolver.ts +460 -460
- package/src/migrations/services/UserMappingService.ts +344 -344
- package/src/migrations/services/ValidationService.ts +333 -333
- package/src/migrations/transfer.ts +987 -942
- package/src/migrations/yaml/YamlImportConfigLoader.ts +438 -438
- package/src/migrations/yaml/YamlImportIntegration.ts +438 -438
- package/src/migrations/yaml/generateImportSchemas.ts +1347 -1347
- package/src/schemas/authUser.ts +23 -23
- package/src/setup.ts +8 -8
- package/src/setupCommands.ts +5 -6
- package/src/setupController.ts +42 -42
- package/src/shared/backupMetadataSchema.ts +93 -93
- package/src/shared/backupTracking.ts +211 -211
- package/src/shared/confirmationDialogs.ts +326 -326
- package/src/shared/migrationHelpers.ts +232 -232
- package/src/shared/operationLogger.ts +20 -20
- package/src/shared/operationQueue.ts +326 -327
- package/src/shared/operationsTable.ts +338 -338
- package/src/shared/operationsTableSchema.ts +60 -60
- package/src/shared/progressManager.ts +277 -277
- package/src/shared/relationshipExtractor.ts +214 -214
- package/src/shared/selectionDialogs.ts +775 -722
- package/src/storage/backupCompression.ts +88 -88
- package/src/storage/methods.ts +695 -682
- package/src/storage/schemas.ts +205 -205
- package/src/tables/indexManager.ts +409 -0
- package/src/types/node-appwrite-tablesdb.d.ts +43 -43
- package/src/types.ts +9 -9
- package/src/users/methods.ts +358 -359
- package/src/utils/configMigration.ts +347 -347
- package/src/utils/index.ts +2 -2
- package/src/utils/loadConfigs.ts +457 -449
- package/src/utils/setupFiles.ts +1236 -1238
- package/src/utilsController.ts +1263 -1213
- package/tests/README.md +496 -496
- package/tests/adapters/AdapterFactory.test.ts +276 -276
- package/tests/integration/syncOperations.test.ts +462 -462
- package/tests/jest.config.js +24 -24
- package/tests/migration/configMigration.test.ts +545 -545
- package/tests/setup.ts +61 -61
- package/tests/testUtils.ts +339 -339
- package/tests/utils/loadConfigs.test.ts +349 -349
- package/tests/validation/configValidation.test.ts +411 -411
- package/tsconfig.json +44 -44
- package/.appwrite/.yaml_schemas/appwrite-config.schema.json +0 -380
- package/.appwrite/.yaml_schemas/collection.schema.json +0 -255
- package/.appwrite/collections/Categories.yaml +0 -182
- package/.appwrite/collections/ExampleCollection.yaml +0 -36
- package/.appwrite/collections/Posts.yaml +0 -227
- package/.appwrite/collections/Users.yaml +0 -149
- package/.appwrite/config.yaml +0 -109
- package/.appwrite/import/README.md +0 -148
- package/.appwrite/import/categories-import.yaml +0 -129
- package/.appwrite/import/posts-import.yaml +0 -208
- package/.appwrite/import/users-import.yaml +0 -130
- package/.appwrite/importData/categories.json +0 -194
- package/.appwrite/importData/posts.json +0 -270
- package/.appwrite/importData/users.json +0 -220
- package/.appwrite/schemas/categories.json +0 -128
- package/.appwrite/schemas/exampleCollection.json +0 -52
- package/.appwrite/schemas/posts.json +0 -173
- package/.appwrite/schemas/users.json +0 -125
- package/dist/adapters/AdapterFactory.d.ts +0 -94
- package/dist/adapters/AdapterFactory.js +0 -405
- package/dist/adapters/DatabaseAdapter.d.ts +0 -242
- package/dist/adapters/DatabaseAdapter.js +0 -50
- package/dist/adapters/LegacyAdapter.d.ts +0 -50
- package/dist/adapters/LegacyAdapter.js +0 -612
- package/dist/adapters/TablesDBAdapter.d.ts +0 -45
- package/dist/adapters/TablesDBAdapter.js +0 -596
- package/dist/adapters/index.d.ts +0 -11
- package/dist/adapters/index.js +0 -12
- package/dist/backups/operations/bucketBackup.d.ts +0 -19
- package/dist/backups/operations/bucketBackup.js +0 -197
- package/dist/backups/operations/collectionBackup.d.ts +0 -30
- package/dist/backups/operations/collectionBackup.js +0 -201
- package/dist/backups/operations/comprehensiveBackup.d.ts +0 -25
- package/dist/backups/operations/comprehensiveBackup.js +0 -238
- package/dist/backups/schemas/bucketManifest.d.ts +0 -93
- package/dist/backups/schemas/bucketManifest.js +0 -33
- package/dist/backups/schemas/comprehensiveManifest.d.ts +0 -108
- package/dist/backups/schemas/comprehensiveManifest.js +0 -32
- package/dist/backups/tracking/centralizedTracking.d.ts +0 -34
- package/dist/backups/tracking/centralizedTracking.js +0 -274
- package/dist/cli/commands/configCommands.d.ts +0 -8
- package/dist/cli/commands/configCommands.js +0 -166
- package/dist/cli/commands/databaseCommands.d.ts +0 -14
- package/dist/cli/commands/databaseCommands.js +0 -644
- package/dist/cli/commands/functionCommands.d.ts +0 -7
- package/dist/cli/commands/functionCommands.js +0 -330
- package/dist/cli/commands/schemaCommands.d.ts +0 -7
- package/dist/cli/commands/schemaCommands.js +0 -169
- package/dist/cli/commands/storageCommands.d.ts +0 -5
- package/dist/cli/commands/storageCommands.js +0 -143
- package/dist/cli/commands/transferCommands.d.ts +0 -5
- package/dist/cli/commands/transferCommands.js +0 -384
- package/dist/collections/attributes.d.ts +0 -13
- package/dist/collections/attributes.js +0 -1364
- package/dist/collections/indexes.d.ts +0 -12
- package/dist/collections/indexes.js +0 -217
- package/dist/collections/methods.d.ts +0 -19
- package/dist/collections/methods.js +0 -734
- package/dist/collections/tableOperations.d.ts +0 -86
- package/dist/collections/tableOperations.js +0 -434
- package/dist/collections/transferOperations.d.ts +0 -8
- package/dist/collections/transferOperations.js +0 -412
- package/dist/collections/wipeOperations.d.ts +0 -16
- package/dist/collections/wipeOperations.js +0 -233
- package/dist/config/ConfigManager.d.ts +0 -450
- package/dist/config/ConfigManager.js +0 -625
- package/dist/config/configMigration.d.ts +0 -87
- package/dist/config/configMigration.js +0 -390
- package/dist/config/configValidation.d.ts +0 -66
- package/dist/config/configValidation.js +0 -358
- package/dist/config/index.d.ts +0 -8
- package/dist/config/index.js +0 -7
- package/dist/config/services/ConfigDiscoveryService.d.ts +0 -122
- package/dist/config/services/ConfigDiscoveryService.js +0 -322
- package/dist/config/services/ConfigLoaderService.d.ts +0 -129
- package/dist/config/services/ConfigLoaderService.js +0 -535
- package/dist/config/services/ConfigMergeService.d.ts +0 -208
- package/dist/config/services/ConfigMergeService.js +0 -308
- package/dist/config/services/ConfigValidationService.d.ts +0 -214
- package/dist/config/services/ConfigValidationService.js +0 -310
- package/dist/config/services/SessionAuthService.d.ts +0 -225
- package/dist/config/services/SessionAuthService.js +0 -456
- package/dist/config/services/__tests__/ConfigMergeService.test.d.ts +0 -1
- package/dist/config/services/__tests__/ConfigMergeService.test.js +0 -271
- package/dist/config/services/index.d.ts +0 -13
- package/dist/config/services/index.js +0 -10
- package/dist/config/yamlConfig.d.ts +0 -722
- package/dist/config/yamlConfig.js +0 -702
- package/dist/databases/methods.d.ts +0 -6
- package/dist/databases/methods.js +0 -35
- package/dist/databases/setup.d.ts +0 -5
- package/dist/databases/setup.js +0 -45
- package/dist/examples/yamlTerminologyExample.d.ts +0 -42
- package/dist/examples/yamlTerminologyExample.js +0 -272
- package/dist/functions/deployments.d.ts +0 -4
- package/dist/functions/deployments.js +0 -146
- package/dist/functions/fnConfigDiscovery.d.ts +0 -3
- package/dist/functions/fnConfigDiscovery.js +0 -108
- package/dist/functions/methods.d.ts +0 -16
- package/dist/functions/methods.js +0 -174
- package/dist/functions/pathResolution.d.ts +0 -37
- package/dist/functions/pathResolution.js +0 -185
- package/dist/functions/templates/count-docs-in-collection/README.md +0 -54
- package/dist/functions/templates/count-docs-in-collection/package.json +0 -25
- package/dist/functions/templates/count-docs-in-collection/src/main.ts +0 -159
- package/dist/functions/templates/count-docs-in-collection/src/request.ts +0 -9
- package/dist/functions/templates/count-docs-in-collection/tsconfig.json +0 -28
- package/dist/functions/templates/hono-typescript/README.md +0 -286
- package/dist/functions/templates/hono-typescript/package.json +0 -26
- package/dist/functions/templates/hono-typescript/src/adapters/request.ts +0 -74
- package/dist/functions/templates/hono-typescript/src/adapters/response.ts +0 -106
- package/dist/functions/templates/hono-typescript/src/app.ts +0 -180
- package/dist/functions/templates/hono-typescript/src/context.ts +0 -103
- package/dist/functions/templates/hono-typescript/src/index.ts +0 -54
- package/dist/functions/templates/hono-typescript/src/middleware/appwrite.ts +0 -119
- package/dist/functions/templates/hono-typescript/tsconfig.json +0 -20
- package/dist/functions/templates/typescript-node/README.md +0 -32
- package/dist/functions/templates/typescript-node/package.json +0 -25
- package/dist/functions/templates/typescript-node/src/context.ts +0 -103
- package/dist/functions/templates/typescript-node/src/index.ts +0 -29
- package/dist/functions/templates/typescript-node/tsconfig.json +0 -28
- package/dist/functions/templates/uv/README.md +0 -31
- package/dist/functions/templates/uv/pyproject.toml +0 -30
- package/dist/functions/templates/uv/src/__init__.py +0 -0
- package/dist/functions/templates/uv/src/context.py +0 -125
- package/dist/functions/templates/uv/src/index.py +0 -46
- package/dist/init.d.ts +0 -2
- package/dist/init.js +0 -57
- package/dist/interactiveCLI.d.ts +0 -31
- package/dist/interactiveCLI.js +0 -898
- package/dist/main.d.ts +0 -2
- package/dist/main.js +0 -1180
- package/dist/migrations/afterImportActions.d.ts +0 -17
- package/dist/migrations/afterImportActions.js +0 -306
- package/dist/migrations/appwriteToX.d.ts +0 -211
- package/dist/migrations/appwriteToX.js +0 -491
- package/dist/migrations/comprehensiveTransfer.d.ts +0 -147
- package/dist/migrations/comprehensiveTransfer.js +0 -1317
- package/dist/migrations/dataLoader.d.ts +0 -753
- package/dist/migrations/dataLoader.js +0 -1250
- package/dist/migrations/importController.d.ts +0 -23
- package/dist/migrations/importController.js +0 -268
- package/dist/migrations/importDataActions.d.ts +0 -50
- package/dist/migrations/importDataActions.js +0 -230
- package/dist/migrations/relationships.d.ts +0 -29
- package/dist/migrations/relationships.js +0 -204
- package/dist/migrations/services/DataTransformationService.d.ts +0 -55
- package/dist/migrations/services/DataTransformationService.js +0 -158
- package/dist/migrations/services/FileHandlerService.d.ts +0 -75
- package/dist/migrations/services/FileHandlerService.js +0 -236
- package/dist/migrations/services/ImportOrchestrator.d.ts +0 -97
- package/dist/migrations/services/ImportOrchestrator.js +0 -485
- package/dist/migrations/services/RateLimitManager.d.ts +0 -138
- package/dist/migrations/services/RateLimitManager.js +0 -279
- package/dist/migrations/services/RelationshipResolver.d.ts +0 -120
- package/dist/migrations/services/RelationshipResolver.js +0 -332
- package/dist/migrations/services/UserMappingService.d.ts +0 -109
- package/dist/migrations/services/UserMappingService.js +0 -277
- package/dist/migrations/services/ValidationService.d.ts +0 -74
- package/dist/migrations/services/ValidationService.js +0 -260
- package/dist/migrations/transfer.d.ts +0 -26
- package/dist/migrations/transfer.js +0 -608
- package/dist/migrations/yaml/YamlImportConfigLoader.d.ts +0 -131
- package/dist/migrations/yaml/YamlImportConfigLoader.js +0 -383
- package/dist/migrations/yaml/YamlImportIntegration.d.ts +0 -93
- package/dist/migrations/yaml/YamlImportIntegration.js +0 -341
- package/dist/migrations/yaml/generateImportSchemas.d.ts +0 -30
- package/dist/migrations/yaml/generateImportSchemas.js +0 -1327
- package/dist/schemas/authUser.d.ts +0 -24
- package/dist/schemas/authUser.js +0 -17
- package/dist/setup.d.ts +0 -2
- package/dist/setup.js +0 -5
- package/dist/setupCommands.d.ts +0 -58
- package/dist/setupCommands.js +0 -490
- package/dist/setupController.d.ts +0 -9
- package/dist/setupController.js +0 -34
- package/dist/shared/attributeMapper.d.ts +0 -20
- package/dist/shared/attributeMapper.js +0 -203
- package/dist/shared/backupMetadataSchema.d.ts +0 -94
- package/dist/shared/backupMetadataSchema.js +0 -38
- package/dist/shared/backupTracking.d.ts +0 -18
- package/dist/shared/backupTracking.js +0 -176
- package/dist/shared/confirmationDialogs.d.ts +0 -75
- package/dist/shared/confirmationDialogs.js +0 -236
- package/dist/shared/errorUtils.d.ts +0 -54
- package/dist/shared/errorUtils.js +0 -95
- package/dist/shared/functionManager.d.ts +0 -48
- package/dist/shared/functionManager.js +0 -348
- package/dist/shared/indexManager.d.ts +0 -24
- package/dist/shared/indexManager.js +0 -151
- package/dist/shared/jsonSchemaGenerator.d.ts +0 -50
- package/dist/shared/jsonSchemaGenerator.js +0 -290
- package/dist/shared/logging.d.ts +0 -61
- package/dist/shared/logging.js +0 -116
- package/dist/shared/messageFormatter.d.ts +0 -39
- package/dist/shared/messageFormatter.js +0 -162
- package/dist/shared/migrationHelpers.d.ts +0 -61
- package/dist/shared/migrationHelpers.js +0 -145
- package/dist/shared/operationLogger.d.ts +0 -10
- package/dist/shared/operationLogger.js +0 -12
- package/dist/shared/operationQueue.d.ts +0 -40
- package/dist/shared/operationQueue.js +0 -311
- package/dist/shared/operationsTable.d.ts +0 -26
- package/dist/shared/operationsTable.js +0 -286
- package/dist/shared/operationsTableSchema.d.ts +0 -48
- package/dist/shared/operationsTableSchema.js +0 -35
- package/dist/shared/progressManager.d.ts +0 -62
- package/dist/shared/progressManager.js +0 -215
- package/dist/shared/pydanticModelGenerator.d.ts +0 -17
- package/dist/shared/pydanticModelGenerator.js +0 -615
- package/dist/shared/relationshipExtractor.d.ts +0 -56
- package/dist/shared/relationshipExtractor.js +0 -138
- package/dist/shared/schemaGenerator.d.ts +0 -40
- package/dist/shared/schemaGenerator.js +0 -556
- package/dist/shared/selectionDialogs.d.ts +0 -214
- package/dist/shared/selectionDialogs.js +0 -544
- package/dist/storage/backupCompression.d.ts +0 -20
- package/dist/storage/backupCompression.js +0 -67
- package/dist/storage/methods.d.ts +0 -32
- package/dist/storage/methods.js +0 -472
- package/dist/storage/schemas.d.ts +0 -842
- package/dist/storage/schemas.js +0 -175
- package/dist/types.d.ts +0 -4
- package/dist/types.js +0 -3
- package/dist/users/methods.d.ts +0 -16
- package/dist/users/methods.js +0 -277
- package/dist/utils/ClientFactory.d.ts +0 -87
- package/dist/utils/ClientFactory.js +0 -212
- package/dist/utils/configDiscovery.d.ts +0 -78
- package/dist/utils/configDiscovery.js +0 -472
- package/dist/utils/configMigration.d.ts +0 -1
- package/dist/utils/configMigration.js +0 -261
- package/dist/utils/constantsGenerator.d.ts +0 -31
- package/dist/utils/constantsGenerator.js +0 -321
- package/dist/utils/dataConverters.d.ts +0 -46
- package/dist/utils/dataConverters.js +0 -139
- package/dist/utils/directoryUtils.d.ts +0 -22
- package/dist/utils/directoryUtils.js +0 -59
- package/dist/utils/getClientFromConfig.d.ts +0 -39
- package/dist/utils/getClientFromConfig.js +0 -199
- package/dist/utils/helperFunctions.d.ts +0 -63
- package/dist/utils/helperFunctions.js +0 -156
- package/dist/utils/index.d.ts +0 -2
- package/dist/utils/index.js +0 -2
- package/dist/utils/loadConfigs.d.ts +0 -50
- package/dist/utils/loadConfigs.js +0 -358
- package/dist/utils/pathResolvers.d.ts +0 -53
- package/dist/utils/pathResolvers.js +0 -72
- package/dist/utils/projectConfig.d.ts +0 -122
- package/dist/utils/projectConfig.js +0 -206
- package/dist/utils/retryFailedPromises.d.ts +0 -2
- package/dist/utils/retryFailedPromises.js +0 -23
- package/dist/utils/sessionAuth.d.ts +0 -48
- package/dist/utils/sessionAuth.js +0 -164
- package/dist/utils/setupFiles.d.ts +0 -4
- package/dist/utils/setupFiles.js +0 -1192
- package/dist/utils/typeGuards.d.ts +0 -35
- package/dist/utils/typeGuards.js +0 -57
- package/dist/utils/validationRules.d.ts +0 -43
- package/dist/utils/validationRules.js +0 -42
- package/dist/utils/versionDetection.d.ts +0 -58
- package/dist/utils/versionDetection.js +0 -251
- package/dist/utils/yamlConverter.d.ts +0 -100
- package/dist/utils/yamlConverter.js +0 -428
- package/dist/utils/yamlLoader.d.ts +0 -70
- package/dist/utils/yamlLoader.js +0 -267
- package/dist/utilsController.d.ts +0 -107
- package/dist/utilsController.js +0 -873
- package/src/adapters/AdapterFactory.ts +0 -510
- package/src/adapters/DatabaseAdapter.ts +0 -318
- package/src/adapters/LegacyAdapter.ts +0 -841
- package/src/adapters/TablesDBAdapter.ts +0 -815
- package/src/config/ConfigManager.ts +0 -817
- package/src/config/README.md +0 -274
- package/src/config/configMigration.ts +0 -575
- package/src/config/configValidation.ts +0 -445
- package/src/config/index.ts +0 -10
- package/src/config/services/ConfigDiscoveryService.ts +0 -410
- package/src/config/services/ConfigLoaderService.ts +0 -732
- package/src/config/services/ConfigMergeService.ts +0 -388
- package/src/config/services/ConfigValidationService.ts +0 -394
- package/src/config/services/SessionAuthService.ts +0 -565
- package/src/config/services/__tests__/ConfigMergeService.test.ts +0 -351
- package/src/config/services/index.ts +0 -29
- package/src/config/yamlConfig.ts +0 -761
- package/src/functions/pathResolution.ts +0 -227
- package/src/functions/templates/count-docs-in-collection/package.json +0 -25
- package/src/functions/templates/count-docs-in-collection/tsconfig.json +0 -28
- package/src/functions/templates/hono-typescript/package.json +0 -26
- package/src/functions/templates/hono-typescript/tsconfig.json +0 -20
- package/src/functions/templates/typescript-node/package.json +0 -25
- package/src/functions/templates/typescript-node/tsconfig.json +0 -28
- package/src/shared/attributeMapper.ts +0 -229
- package/src/shared/errorUtils.ts +0 -110
- package/src/shared/functionManager.ts +0 -537
- package/src/shared/indexManager.ts +0 -254
- package/src/shared/jsonSchemaGenerator.ts +0 -383
- package/src/shared/logging.ts +0 -149
- package/src/shared/messageFormatter.ts +0 -208
- package/src/shared/pydanticModelGenerator.ts +0 -618
- package/src/shared/schemaGenerator.ts +0 -644
- package/src/utils/ClientFactory.ts +0 -240
- package/src/utils/configDiscovery.ts +0 -557
- package/src/utils/constantsGenerator.ts +0 -369
- package/src/utils/dataConverters.ts +0 -159
- package/src/utils/directoryUtils.ts +0 -61
- package/src/utils/getClientFromConfig.ts +0 -257
- package/src/utils/helperFunctions.ts +0 -228
- package/src/utils/pathResolvers.ts +0 -81
- package/src/utils/projectConfig.ts +0 -340
- package/src/utils/retryFailedPromises.ts +0 -29
- package/src/utils/sessionAuth.ts +0 -230
- package/src/utils/typeGuards.ts +0 -65
- package/src/utils/validationRules.ts +0 -88
- package/src/utils/versionDetection.ts +0 -292
- package/src/utils/yamlConverter.ts +0 -542
- package/src/utils/yamlLoader.ts +0 -371
- package/tmp-sync-test/.appwrite/collections/TestCollection.yaml +0 -7
|
@@ -1,322 +0,0 @@
|
|
|
1
|
-
import fs from "fs";
|
|
2
|
-
import path from "path";
|
|
3
|
-
import { findUp } from "find-up";
|
|
4
|
-
import { MessageFormatter } from "../../shared/messageFormatter.js";
|
|
5
|
-
import { shouldIgnoreDirectory } from "../../utils/directoryUtils.js";
|
|
6
|
-
/**
|
|
7
|
-
* Service for discovering Appwrite configuration files and collection/table definitions.
|
|
8
|
-
*
|
|
9
|
-
* Uses find-up for intelligent searching with git repository boundary detection:
|
|
10
|
-
* 1. Finds .git directory to establish repo root boundary
|
|
11
|
-
* 2. Searches UP from current directory to repo root
|
|
12
|
-
* 3. Searches DOWN recursively within repo root
|
|
13
|
-
*
|
|
14
|
-
* Search Priority:
|
|
15
|
-
* 1. YAML configs (.appwrite/config.yaml, .appwrite/config.yml, etc.)
|
|
16
|
-
* 2. JSON configs (appwrite.config.json, appwrite.json)
|
|
17
|
-
* 3. TypeScript configs (appwriteConfig.ts)
|
|
18
|
-
*/
|
|
19
|
-
export class ConfigDiscoveryService {
|
|
20
|
-
/**
|
|
21
|
-
* YAML configuration file names to search for
|
|
22
|
-
*/
|
|
23
|
-
YAML_FILENAMES = [
|
|
24
|
-
".appwrite/config.yaml",
|
|
25
|
-
".appwrite/config.yml",
|
|
26
|
-
".appwrite/appwriteConfig.yaml",
|
|
27
|
-
".appwrite/appwriteConfig.yml",
|
|
28
|
-
"appwrite.yaml",
|
|
29
|
-
"appwrite.yml",
|
|
30
|
-
];
|
|
31
|
-
/**
|
|
32
|
-
* JSON configuration file names to search for
|
|
33
|
-
*/
|
|
34
|
-
JSON_FILENAMES = ["appwrite.config.json", "appwrite.json"];
|
|
35
|
-
/**
|
|
36
|
-
* TypeScript configuration file names to search for
|
|
37
|
-
*/
|
|
38
|
-
TS_FILENAMES = ["appwriteConfig.ts"];
|
|
39
|
-
/**
|
|
40
|
-
* Finds the git repository root directory
|
|
41
|
-
* @param startDir The directory to start searching from
|
|
42
|
-
* @returns Path to the repository root, or startDir if no .git found
|
|
43
|
-
*/
|
|
44
|
-
async findRepoRoot(startDir) {
|
|
45
|
-
const gitDir = await findUp(".git", {
|
|
46
|
-
cwd: startDir,
|
|
47
|
-
type: "directory",
|
|
48
|
-
});
|
|
49
|
-
return gitDir ? path.dirname(gitDir) : startDir;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Recursively searches downward for files matching patterns
|
|
53
|
-
* @param dir Directory to search in
|
|
54
|
-
* @param patterns File patterns to match
|
|
55
|
-
* @param maxDepth Maximum depth to search
|
|
56
|
-
* @param currentDepth Current recursion depth
|
|
57
|
-
* @returns First matching file path or null
|
|
58
|
-
*/
|
|
59
|
-
async searchDownward(dir, patterns, maxDepth = 5, currentDepth = 0) {
|
|
60
|
-
if (currentDepth > maxDepth)
|
|
61
|
-
return null;
|
|
62
|
-
if (shouldIgnoreDirectory(path.basename(dir)))
|
|
63
|
-
return null;
|
|
64
|
-
try {
|
|
65
|
-
const entries = await fs.promises.readdir(dir, { withFileTypes: true });
|
|
66
|
-
// Check current directory for matches
|
|
67
|
-
for (const pattern of patterns) {
|
|
68
|
-
const fullPath = path.join(dir, pattern);
|
|
69
|
-
if (fs.existsSync(fullPath)) {
|
|
70
|
-
return fullPath;
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
// Recurse into subdirectories
|
|
74
|
-
for (const entry of entries) {
|
|
75
|
-
if (entry.isDirectory() && !shouldIgnoreDirectory(entry.name)) {
|
|
76
|
-
const result = await this.searchDownward(path.join(dir, entry.name), patterns, maxDepth, currentDepth + 1);
|
|
77
|
-
if (result)
|
|
78
|
-
return result;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
catch (error) {
|
|
83
|
-
// Ignore permission errors
|
|
84
|
-
}
|
|
85
|
-
return null;
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Finds any configuration file with configurable priority
|
|
89
|
-
* @param startDir The directory to start searching from
|
|
90
|
-
* @param preferJson If true, prioritizes appwrite.config.json over YAML (default: false)
|
|
91
|
-
* @returns Path to the configuration file or null if not found
|
|
92
|
-
*
|
|
93
|
-
* Default priority: YAML → JSON → TypeScript
|
|
94
|
-
* With preferJson=true: JSON → YAML → TypeScript
|
|
95
|
-
*/
|
|
96
|
-
async findConfig(startDir, preferJson = false) {
|
|
97
|
-
// Find repo root to establish boundary
|
|
98
|
-
const repoRoot = await this.findRepoRoot(startDir);
|
|
99
|
-
if (preferJson) {
|
|
100
|
-
// Try JSON first when --appwrite-config flag is used
|
|
101
|
-
const jsonConfig = await this.findProjectConfig(startDir, repoRoot);
|
|
102
|
-
if (jsonConfig)
|
|
103
|
-
return jsonConfig;
|
|
104
|
-
// Try YAML second
|
|
105
|
-
const yamlConfig = await this.findYamlConfig(startDir, repoRoot);
|
|
106
|
-
if (yamlConfig)
|
|
107
|
-
return yamlConfig;
|
|
108
|
-
// Try TypeScript last (lowest priority)
|
|
109
|
-
const tsConfig = await this.findTypeScriptConfig(startDir, repoRoot);
|
|
110
|
-
if (tsConfig)
|
|
111
|
-
return tsConfig;
|
|
112
|
-
}
|
|
113
|
-
else {
|
|
114
|
-
// Default priority: YAML → JSON → TypeScript
|
|
115
|
-
const yamlConfig = await this.findYamlConfig(startDir, repoRoot);
|
|
116
|
-
if (yamlConfig)
|
|
117
|
-
return yamlConfig;
|
|
118
|
-
const jsonConfig = await this.findProjectConfig(startDir, repoRoot);
|
|
119
|
-
if (jsonConfig)
|
|
120
|
-
return jsonConfig;
|
|
121
|
-
const tsConfig = await this.findTypeScriptConfig(startDir, repoRoot);
|
|
122
|
-
if (tsConfig)
|
|
123
|
-
return tsConfig;
|
|
124
|
-
}
|
|
125
|
-
return null;
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* Finds YAML configuration files
|
|
129
|
-
* Searches UP to repo root, then DOWN from repo root
|
|
130
|
-
* @param startDir The directory to start searching from
|
|
131
|
-
* @param repoRoot The repository root boundary
|
|
132
|
-
* @returns Path to the YAML config file or null if not found
|
|
133
|
-
*/
|
|
134
|
-
async findYamlConfig(startDir, repoRoot) {
|
|
135
|
-
const boundary = repoRoot || (await this.findRepoRoot(startDir));
|
|
136
|
-
// Search UP to repo root
|
|
137
|
-
const upwardResult = await findUp(this.YAML_FILENAMES, {
|
|
138
|
-
cwd: startDir,
|
|
139
|
-
stopAt: boundary,
|
|
140
|
-
});
|
|
141
|
-
if (upwardResult)
|
|
142
|
-
return upwardResult;
|
|
143
|
-
// Search DOWN from repo root
|
|
144
|
-
return await this.searchDownward(boundary, this.YAML_FILENAMES);
|
|
145
|
-
}
|
|
146
|
-
/**
|
|
147
|
-
* Finds JSON project configuration files (appwrite.config.json, appwrite.json)
|
|
148
|
-
* @param startDir The directory to start searching from
|
|
149
|
-
* @param repoRoot The repository root boundary
|
|
150
|
-
* @returns Path to the JSON config file or null if not found
|
|
151
|
-
*/
|
|
152
|
-
async findProjectConfig(startDir, repoRoot) {
|
|
153
|
-
const boundary = repoRoot || (await this.findRepoRoot(startDir));
|
|
154
|
-
// Search UP to repo root
|
|
155
|
-
const upwardResult = await findUp(this.JSON_FILENAMES, {
|
|
156
|
-
cwd: startDir,
|
|
157
|
-
stopAt: boundary,
|
|
158
|
-
});
|
|
159
|
-
if (upwardResult)
|
|
160
|
-
return upwardResult;
|
|
161
|
-
// Search DOWN from repo root
|
|
162
|
-
return await this.searchDownward(boundary, this.JSON_FILENAMES);
|
|
163
|
-
}
|
|
164
|
-
/**
|
|
165
|
-
* Finds TypeScript configuration files (appwriteConfig.ts)
|
|
166
|
-
* @param startDir The directory to start searching from
|
|
167
|
-
* @param repoRoot The repository root boundary
|
|
168
|
-
* @returns Path to the TypeScript config file or null if not found
|
|
169
|
-
*/
|
|
170
|
-
async findTypeScriptConfig(startDir, repoRoot) {
|
|
171
|
-
const boundary = repoRoot || (await this.findRepoRoot(startDir));
|
|
172
|
-
// Search UP to repo root
|
|
173
|
-
const upwardResult = await findUp(this.TS_FILENAMES, {
|
|
174
|
-
cwd: startDir,
|
|
175
|
-
stopAt: boundary,
|
|
176
|
-
});
|
|
177
|
-
if (upwardResult)
|
|
178
|
-
return upwardResult;
|
|
179
|
-
// Search DOWN from repo root
|
|
180
|
-
return await this.searchDownward(boundary, this.TS_FILENAMES);
|
|
181
|
-
}
|
|
182
|
-
/**
|
|
183
|
-
* Discovers collection YAML files in a collections/ directory
|
|
184
|
-
* @param collectionsDir Path to the collections directory
|
|
185
|
-
* @returns Discovery result with file paths
|
|
186
|
-
*/
|
|
187
|
-
async discoverCollections(collectionsDir) {
|
|
188
|
-
if (!fs.existsSync(collectionsDir)) {
|
|
189
|
-
return {
|
|
190
|
-
found: false,
|
|
191
|
-
type: "none",
|
|
192
|
-
files: [],
|
|
193
|
-
};
|
|
194
|
-
}
|
|
195
|
-
try {
|
|
196
|
-
const files = fs.readdirSync(collectionsDir);
|
|
197
|
-
const collectionFiles = files.filter((file) => (file.endsWith(".yaml") ||
|
|
198
|
-
file.endsWith(".yml") ||
|
|
199
|
-
file.endsWith(".ts")) &&
|
|
200
|
-
file !== "index.ts");
|
|
201
|
-
if (collectionFiles.length === 0) {
|
|
202
|
-
return {
|
|
203
|
-
found: false,
|
|
204
|
-
type: "none",
|
|
205
|
-
files: [],
|
|
206
|
-
};
|
|
207
|
-
}
|
|
208
|
-
MessageFormatter.success(`Discovered ${collectionFiles.length} collection file(s) in ${collectionsDir}`, { prefix: "Discovery" });
|
|
209
|
-
return {
|
|
210
|
-
found: true,
|
|
211
|
-
path: collectionsDir,
|
|
212
|
-
type: "yaml",
|
|
213
|
-
files: collectionFiles,
|
|
214
|
-
};
|
|
215
|
-
}
|
|
216
|
-
catch (error) {
|
|
217
|
-
MessageFormatter.error(`Error discovering collections in ${collectionsDir}`, error instanceof Error ? error : undefined, { prefix: "Discovery" });
|
|
218
|
-
return {
|
|
219
|
-
found: false,
|
|
220
|
-
type: "none",
|
|
221
|
-
files: [],
|
|
222
|
-
};
|
|
223
|
-
}
|
|
224
|
-
}
|
|
225
|
-
/**
|
|
226
|
-
* Discovers table YAML files in a tables/ directory
|
|
227
|
-
* @param tablesDir Path to the tables directory
|
|
228
|
-
* @returns Discovery result with file paths
|
|
229
|
-
*/
|
|
230
|
-
async discoverTables(tablesDir) {
|
|
231
|
-
if (!fs.existsSync(tablesDir)) {
|
|
232
|
-
return {
|
|
233
|
-
found: false,
|
|
234
|
-
type: "none",
|
|
235
|
-
files: [],
|
|
236
|
-
};
|
|
237
|
-
}
|
|
238
|
-
try {
|
|
239
|
-
const files = fs.readdirSync(tablesDir);
|
|
240
|
-
const tableFiles = files.filter((file) => (file.endsWith(".yaml") ||
|
|
241
|
-
file.endsWith(".yml") ||
|
|
242
|
-
file.endsWith(".ts")) &&
|
|
243
|
-
file !== "index.ts");
|
|
244
|
-
if (tableFiles.length === 0) {
|
|
245
|
-
return {
|
|
246
|
-
found: false,
|
|
247
|
-
type: "none",
|
|
248
|
-
files: [],
|
|
249
|
-
};
|
|
250
|
-
}
|
|
251
|
-
MessageFormatter.success(`Discovered ${tableFiles.length} table file(s) in ${tablesDir}`, { prefix: "Discovery" });
|
|
252
|
-
return {
|
|
253
|
-
found: true,
|
|
254
|
-
path: tablesDir,
|
|
255
|
-
type: "yaml",
|
|
256
|
-
files: tableFiles,
|
|
257
|
-
};
|
|
258
|
-
}
|
|
259
|
-
catch (error) {
|
|
260
|
-
MessageFormatter.error(`Error discovering tables in ${tablesDir}`, error instanceof Error ? error : undefined, { prefix: "Discovery" });
|
|
261
|
-
return {
|
|
262
|
-
found: false,
|
|
263
|
-
type: "none",
|
|
264
|
-
files: [],
|
|
265
|
-
};
|
|
266
|
-
}
|
|
267
|
-
}
|
|
268
|
-
/**
|
|
269
|
-
* Finds the .appwrite configuration directory
|
|
270
|
-
* @param startDir The directory to start searching from
|
|
271
|
-
* @returns Path to .appwrite directory or null if not found
|
|
272
|
-
*/
|
|
273
|
-
async findAppwriteDirectory(startDir) {
|
|
274
|
-
const repoRoot = await this.findRepoRoot(startDir);
|
|
275
|
-
// Search UP to repo root
|
|
276
|
-
const upwardResult = await findUp(".appwrite", {
|
|
277
|
-
cwd: startDir,
|
|
278
|
-
type: "directory",
|
|
279
|
-
stopAt: repoRoot,
|
|
280
|
-
});
|
|
281
|
-
if (upwardResult)
|
|
282
|
-
return upwardResult;
|
|
283
|
-
// Search DOWN from repo root
|
|
284
|
-
return await this.searchDownward(repoRoot, [".appwrite"]);
|
|
285
|
-
}
|
|
286
|
-
/**
|
|
287
|
-
* Finds the functions directory
|
|
288
|
-
* @param startDir The directory to start searching from
|
|
289
|
-
* @returns Path to functions directory or null if not found
|
|
290
|
-
*/
|
|
291
|
-
async findFunctionsDirectory(startDir) {
|
|
292
|
-
const repoRoot = await this.findRepoRoot(startDir);
|
|
293
|
-
// Search UP to repo root
|
|
294
|
-
const upwardResult = await findUp("functions", {
|
|
295
|
-
cwd: startDir,
|
|
296
|
-
type: "directory",
|
|
297
|
-
stopAt: repoRoot,
|
|
298
|
-
});
|
|
299
|
-
if (upwardResult)
|
|
300
|
-
return upwardResult;
|
|
301
|
-
// Search DOWN from repo root
|
|
302
|
-
return await this.searchDownward(repoRoot, ["functions"]);
|
|
303
|
-
}
|
|
304
|
-
/**
|
|
305
|
-
* Gets a summary of all discoverable configuration files
|
|
306
|
-
* Useful for debugging configuration issues
|
|
307
|
-
* @param startDir The directory to start searching from
|
|
308
|
-
* @returns Object containing paths to all discovered config types
|
|
309
|
-
*/
|
|
310
|
-
async getConfigurationSummary(startDir) {
|
|
311
|
-
const repoRoot = await this.findRepoRoot(startDir);
|
|
312
|
-
return {
|
|
313
|
-
yaml: await this.findYamlConfig(startDir, repoRoot),
|
|
314
|
-
typescript: await this.findTypeScriptConfig(startDir, repoRoot),
|
|
315
|
-
json: await this.findProjectConfig(startDir, repoRoot),
|
|
316
|
-
appwriteDirectory: await this.findAppwriteDirectory(startDir),
|
|
317
|
-
functionsDirectory: await this.findFunctionsDirectory(startDir),
|
|
318
|
-
selectedConfig: await this.findConfig(startDir),
|
|
319
|
-
repoRoot,
|
|
320
|
-
};
|
|
321
|
-
}
|
|
322
|
-
}
|
|
@@ -1,129 +0,0 @@
|
|
|
1
|
-
import type { AppwriteConfig, Collection } from "appwrite-utils";
|
|
2
|
-
import { type YamlSessionOptions } from "../yamlConfig.js";
|
|
3
|
-
/**
|
|
4
|
-
* Options for loading collections or tables
|
|
5
|
-
*/
|
|
6
|
-
export interface CollectionLoadOptions {
|
|
7
|
-
/**
|
|
8
|
-
* Whether to mark loaded items as coming from tables directory
|
|
9
|
-
*/
|
|
10
|
-
markAsTablesDir?: boolean;
|
|
11
|
-
/**
|
|
12
|
-
* Set of existing collection names to check for conflicts
|
|
13
|
-
*/
|
|
14
|
-
existingNames?: Set<string>;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Service for loading and parsing Appwrite configuration files.
|
|
18
|
-
*
|
|
19
|
-
* Supports:
|
|
20
|
-
* - YAML configuration files (.appwrite/config.yaml)
|
|
21
|
-
* - TypeScript configuration files (appwriteConfig.ts)
|
|
22
|
-
* - JSON project configuration files (appwrite.json)
|
|
23
|
-
* - Collection and table YAML/TypeScript definitions
|
|
24
|
-
*
|
|
25
|
-
* Features:
|
|
26
|
-
* - Auto-detects configuration file type
|
|
27
|
-
* - Converts between different configuration formats
|
|
28
|
-
* - Loads collections and tables from directories
|
|
29
|
-
* - Handles session preservation
|
|
30
|
-
* - Validates and normalizes configuration data
|
|
31
|
-
*/
|
|
32
|
-
export declare class ConfigLoaderService {
|
|
33
|
-
/**
|
|
34
|
-
* Normalizes function dirPath to absolute path
|
|
35
|
-
* @param func Function configuration object
|
|
36
|
-
* @param configDir Directory containing the config file
|
|
37
|
-
* @returns Function with normalized dirPath
|
|
38
|
-
*/
|
|
39
|
-
private normalizeFunctionPath;
|
|
40
|
-
/**
|
|
41
|
-
* Loads configuration from a discovered path, auto-detecting the type
|
|
42
|
-
* @param configPath Path to the configuration file
|
|
43
|
-
* @param sessionOptions Optional session preservation options
|
|
44
|
-
* @returns Parsed AppwriteConfig
|
|
45
|
-
*/
|
|
46
|
-
loadFromPath(configPath: string, sessionOptions?: YamlSessionOptions): Promise<AppwriteConfig>;
|
|
47
|
-
/**
|
|
48
|
-
* Loads a YAML configuration file
|
|
49
|
-
* @param yamlPath Path to the YAML config file
|
|
50
|
-
* @param sessionOptions Optional session preservation options
|
|
51
|
-
* @returns Parsed AppwriteConfig
|
|
52
|
-
*/
|
|
53
|
-
loadYaml(yamlPath: string, sessionOptions?: YamlSessionOptions): Promise<AppwriteConfig>;
|
|
54
|
-
/**
|
|
55
|
-
* Loads a TypeScript configuration file
|
|
56
|
-
* @param tsPath Path to the TypeScript config file
|
|
57
|
-
* @returns Parsed AppwriteConfig
|
|
58
|
-
*/
|
|
59
|
-
loadTypeScript(tsPath: string): Promise<AppwriteConfig>;
|
|
60
|
-
/**
|
|
61
|
-
* Loads an appwrite.json project configuration file
|
|
62
|
-
* Converts projectId → appwriteProject and detects API mode
|
|
63
|
-
* @param jsonPath Path to the JSON config file
|
|
64
|
-
* @returns Partial AppwriteConfig (requires merging with defaults)
|
|
65
|
-
*/
|
|
66
|
-
loadProjectConfig(jsonPath: string): Promise<Partial<AppwriteConfig>>;
|
|
67
|
-
/**
|
|
68
|
-
* Loads all collections from a collections/ directory
|
|
69
|
-
* Supports both YAML (.yaml, .yml) and TypeScript (.ts) files
|
|
70
|
-
* @param collectionsDir Path to the collections directory
|
|
71
|
-
* @param options Loading options
|
|
72
|
-
* @returns Array of loaded Collection objects
|
|
73
|
-
*/
|
|
74
|
-
loadCollections(collectionsDir: string, options?: CollectionLoadOptions): Promise<Collection[]>;
|
|
75
|
-
/**
|
|
76
|
-
* Loads all tables from a tables/ directory
|
|
77
|
-
* Supports both YAML (.yaml, .yml) and TypeScript (.ts) files
|
|
78
|
-
* @param tablesDir Path to the tables directory
|
|
79
|
-
* @param options Loading options
|
|
80
|
-
* @returns Array of loaded table objects
|
|
81
|
-
*/
|
|
82
|
-
loadTables(tablesDir: string, options?: CollectionLoadOptions): Promise<any[]>;
|
|
83
|
-
/**
|
|
84
|
-
* Loads collections and tables with conflict detection
|
|
85
|
-
* Collections take priority over tables when names conflict
|
|
86
|
-
* @param collectionsDir Path to collections directory
|
|
87
|
-
* @param tablesDir Path to tables directory
|
|
88
|
-
* @returns Object containing combined arrays and conflict information
|
|
89
|
-
*/
|
|
90
|
-
loadCollectionsAndTables(collectionsDir: string, tablesDir: string): Promise<{
|
|
91
|
-
items: Collection[];
|
|
92
|
-
fromCollections: number;
|
|
93
|
-
fromTables: number;
|
|
94
|
-
conflicts: Array<{
|
|
95
|
-
name: string;
|
|
96
|
-
source1: string;
|
|
97
|
-
source2: string;
|
|
98
|
-
}>;
|
|
99
|
-
}>;
|
|
100
|
-
/**
|
|
101
|
-
* Loads tables first (higher priority), then collections (backward compatibility)
|
|
102
|
-
* Used for TablesDB projects (>= 1.8.0)
|
|
103
|
-
* @param tablesDir Path to the tables directory
|
|
104
|
-
* @param collectionsDir Path to the collections directory
|
|
105
|
-
* @returns Loading result with items, counts, and conflicts
|
|
106
|
-
*/
|
|
107
|
-
loadTablesFirst(tablesDir: string, collectionsDir: string): Promise<{
|
|
108
|
-
items: Collection[];
|
|
109
|
-
fromCollections: number;
|
|
110
|
-
fromTables: number;
|
|
111
|
-
conflicts: Array<{
|
|
112
|
-
name: string;
|
|
113
|
-
source1: string;
|
|
114
|
-
source2: string;
|
|
115
|
-
}>;
|
|
116
|
-
}>;
|
|
117
|
-
/**
|
|
118
|
-
* Validates that a configuration file can be loaded
|
|
119
|
-
* @param configPath Path to the configuration file
|
|
120
|
-
* @returns True if the file can be loaded, false otherwise
|
|
121
|
-
*/
|
|
122
|
-
canLoadConfig(configPath: string): boolean;
|
|
123
|
-
/**
|
|
124
|
-
* Gets the type of a configuration file
|
|
125
|
-
* @param configPath Path to the configuration file
|
|
126
|
-
* @returns Configuration type or null if unknown
|
|
127
|
-
*/
|
|
128
|
-
getConfigType(configPath: string): "yaml" | "typescript" | "json" | null;
|
|
129
|
-
}
|