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,74 +1,74 @@
|
|
|
1
|
-
import type { AppwriteRequest } from "../context.js";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Convert Appwrite request to Web API Request for Hono
|
|
5
|
-
*/
|
|
6
|
-
export function convertAppwriteToWebRequest(appwriteReq: AppwriteRequest): Request {
|
|
7
|
-
// Construct the URL
|
|
8
|
-
const protocol = appwriteReq.scheme || "https";
|
|
9
|
-
const host = appwriteReq.host || "localhost";
|
|
10
|
-
const port = appwriteReq.port ? `:${appwriteReq.port}` : "";
|
|
11
|
-
const path = appwriteReq.path || "/";
|
|
12
|
-
const queryString = appwriteReq.queryString ? `?${appwriteReq.queryString}` : "";
|
|
13
|
-
|
|
14
|
-
const url = `${protocol}://${host}${port}${path}${queryString}`;
|
|
15
|
-
|
|
16
|
-
// Prepare headers
|
|
17
|
-
const headers = new Headers();
|
|
18
|
-
if (appwriteReq.headers) {
|
|
19
|
-
Object.entries(appwriteReq.headers).forEach(([key, value]) => {
|
|
20
|
-
if (value) {
|
|
21
|
-
headers.set(key, value);
|
|
22
|
-
}
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
// Prepare body for POST/PUT/PATCH requests
|
|
27
|
-
let body: string | undefined;
|
|
28
|
-
if (appwriteReq.method !== "GET" && appwriteReq.method !== "HEAD") {
|
|
29
|
-
if (appwriteReq.bodyText) {
|
|
30
|
-
body = appwriteReq.bodyText;
|
|
31
|
-
} else if (appwriteReq.bodyJson) {
|
|
32
|
-
body = typeof appwriteReq.bodyJson === "string"
|
|
33
|
-
? appwriteReq.bodyJson
|
|
34
|
-
: JSON.stringify(appwriteReq.bodyJson);
|
|
35
|
-
if (!headers.has("content-type")) {
|
|
36
|
-
headers.set("content-type", "application/json");
|
|
37
|
-
}
|
|
38
|
-
} else if (appwriteReq.body) {
|
|
39
|
-
body = typeof appwriteReq.body === "string"
|
|
40
|
-
? appwriteReq.body
|
|
41
|
-
: JSON.stringify(appwriteReq.body);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
// Create Web API Request
|
|
46
|
-
const request = new Request(url, {
|
|
47
|
-
method: appwriteReq.method,
|
|
48
|
-
headers,
|
|
49
|
-
body,
|
|
50
|
-
});
|
|
51
|
-
|
|
52
|
-
return request;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
/**
|
|
56
|
-
* Extract path parameters from Hono context for Appwrite compatibility
|
|
57
|
-
*/
|
|
58
|
-
export function extractPathParams(honoParams: Record<string, string>): Record<string, string> {
|
|
59
|
-
return honoParams;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* Extract query parameters from URL for Appwrite compatibility
|
|
64
|
-
*/
|
|
65
|
-
export function extractQueryParams(url: string): Record<string, string> {
|
|
66
|
-
const urlObj = new URL(url);
|
|
67
|
-
const params: Record<string, string> = {};
|
|
68
|
-
|
|
69
|
-
urlObj.searchParams.forEach((value, key) => {
|
|
70
|
-
params[key] = value;
|
|
71
|
-
});
|
|
72
|
-
|
|
73
|
-
return params;
|
|
1
|
+
import type { AppwriteRequest } from "../context.js";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Convert Appwrite request to Web API Request for Hono
|
|
5
|
+
*/
|
|
6
|
+
export function convertAppwriteToWebRequest(appwriteReq: AppwriteRequest): Request {
|
|
7
|
+
// Construct the URL
|
|
8
|
+
const protocol = appwriteReq.scheme || "https";
|
|
9
|
+
const host = appwriteReq.host || "localhost";
|
|
10
|
+
const port = appwriteReq.port ? `:${appwriteReq.port}` : "";
|
|
11
|
+
const path = appwriteReq.path || "/";
|
|
12
|
+
const queryString = appwriteReq.queryString ? `?${appwriteReq.queryString}` : "";
|
|
13
|
+
|
|
14
|
+
const url = `${protocol}://${host}${port}${path}${queryString}`;
|
|
15
|
+
|
|
16
|
+
// Prepare headers
|
|
17
|
+
const headers = new Headers();
|
|
18
|
+
if (appwriteReq.headers) {
|
|
19
|
+
Object.entries(appwriteReq.headers).forEach(([key, value]) => {
|
|
20
|
+
if (value) {
|
|
21
|
+
headers.set(key, value);
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
// Prepare body for POST/PUT/PATCH requests
|
|
27
|
+
let body: string | undefined;
|
|
28
|
+
if (appwriteReq.method !== "GET" && appwriteReq.method !== "HEAD") {
|
|
29
|
+
if (appwriteReq.bodyText) {
|
|
30
|
+
body = appwriteReq.bodyText;
|
|
31
|
+
} else if (appwriteReq.bodyJson) {
|
|
32
|
+
body = typeof appwriteReq.bodyJson === "string"
|
|
33
|
+
? appwriteReq.bodyJson
|
|
34
|
+
: JSON.stringify(appwriteReq.bodyJson);
|
|
35
|
+
if (!headers.has("content-type")) {
|
|
36
|
+
headers.set("content-type", "application/json");
|
|
37
|
+
}
|
|
38
|
+
} else if (appwriteReq.body) {
|
|
39
|
+
body = typeof appwriteReq.body === "string"
|
|
40
|
+
? appwriteReq.body
|
|
41
|
+
: JSON.stringify(appwriteReq.body);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
// Create Web API Request
|
|
46
|
+
const request = new Request(url, {
|
|
47
|
+
method: appwriteReq.method,
|
|
48
|
+
headers,
|
|
49
|
+
body,
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
return request;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Extract path parameters from Hono context for Appwrite compatibility
|
|
57
|
+
*/
|
|
58
|
+
export function extractPathParams(honoParams: Record<string, string>): Record<string, string> {
|
|
59
|
+
return honoParams;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Extract query parameters from URL for Appwrite compatibility
|
|
64
|
+
*/
|
|
65
|
+
export function extractQueryParams(url: string): Record<string, string> {
|
|
66
|
+
const urlObj = new URL(url);
|
|
67
|
+
const params: Record<string, string> = {};
|
|
68
|
+
|
|
69
|
+
urlObj.searchParams.forEach((value, key) => {
|
|
70
|
+
params[key] = value;
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
return params;
|
|
74
74
|
}
|
|
@@ -1,106 +1,106 @@
|
|
|
1
|
-
import type { AppwriteResponse } from "../context.js";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Convert Hono Response to Appwrite response format
|
|
5
|
-
*/
|
|
6
|
-
export async function convertWebResponseToAppwrite(
|
|
7
|
-
honoResponse: Response,
|
|
8
|
-
appwriteRes: AppwriteResponse
|
|
9
|
-
): Promise<void> {
|
|
10
|
-
const status = honoResponse.status;
|
|
11
|
-
const headers: Record<string, string> = {};
|
|
12
|
-
|
|
13
|
-
// Extract headers from Hono response
|
|
14
|
-
honoResponse.headers.forEach((value, key) => {
|
|
15
|
-
headers[key] = value;
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
// Get content type to determine response handling
|
|
19
|
-
const contentType = honoResponse.headers.get("content-type") || "";
|
|
20
|
-
|
|
21
|
-
try {
|
|
22
|
-
// Handle different response types based on content-type
|
|
23
|
-
if (contentType.includes("application/json")) {
|
|
24
|
-
const data = await honoResponse.json();
|
|
25
|
-
return appwriteRes.json(data, status, headers);
|
|
26
|
-
} else if (contentType.includes("text/")) {
|
|
27
|
-
const text = await honoResponse.text();
|
|
28
|
-
return appwriteRes.text(text, status, headers);
|
|
29
|
-
} else if (contentType.includes("application/octet-stream") || contentType.includes("image/") || contentType.includes("video/")) {
|
|
30
|
-
const arrayBuffer = await honoResponse.arrayBuffer();
|
|
31
|
-
const bytes = new Uint8Array(arrayBuffer);
|
|
32
|
-
return appwriteRes.binary(bytes);
|
|
33
|
-
} else {
|
|
34
|
-
// Default to text for unknown content types
|
|
35
|
-
const text = await honoResponse.text();
|
|
36
|
-
return appwriteRes.text(text, status, headers);
|
|
37
|
-
}
|
|
38
|
-
} catch (error) {
|
|
39
|
-
// If response body parsing fails, return empty response
|
|
40
|
-
console.error("Error converting Hono response:", error);
|
|
41
|
-
return appwriteRes.empty();
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
/**
|
|
46
|
-
* Helper function to create common response types for Hono handlers
|
|
47
|
-
*/
|
|
48
|
-
export class AppwriteResponseHelpers {
|
|
49
|
-
/**
|
|
50
|
-
* Create a JSON response helper
|
|
51
|
-
*/
|
|
52
|
-
static json(data: any, status: number = 200, headers?: Record<string, string>) {
|
|
53
|
-
const responseHeaders = new Headers(headers);
|
|
54
|
-
responseHeaders.set("content-type", "application/json");
|
|
55
|
-
|
|
56
|
-
return new Response(JSON.stringify(data), {
|
|
57
|
-
status,
|
|
58
|
-
headers: responseHeaders,
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* Create a text response helper
|
|
64
|
-
*/
|
|
65
|
-
static text(text: string, status: number = 200, headers?: Record<string, string>) {
|
|
66
|
-
const responseHeaders = new Headers(headers);
|
|
67
|
-
responseHeaders.set("content-type", "text/plain");
|
|
68
|
-
|
|
69
|
-
return new Response(text, {
|
|
70
|
-
status,
|
|
71
|
-
headers: responseHeaders,
|
|
72
|
-
});
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
/**
|
|
76
|
-
* Create an HTML response helper
|
|
77
|
-
*/
|
|
78
|
-
static html(html: string, status: number = 200, headers?: Record<string, string>) {
|
|
79
|
-
const responseHeaders = new Headers(headers);
|
|
80
|
-
responseHeaders.set("content-type", "text/html");
|
|
81
|
-
|
|
82
|
-
return new Response(html, {
|
|
83
|
-
status,
|
|
84
|
-
headers: responseHeaders,
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
/**
|
|
89
|
-
* Create a redirect response helper
|
|
90
|
-
*/
|
|
91
|
-
static redirect(url: string, status: number = 302) {
|
|
92
|
-
return new Response(null, {
|
|
93
|
-
status,
|
|
94
|
-
headers: {
|
|
95
|
-
location: url,
|
|
96
|
-
},
|
|
97
|
-
});
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* Create an empty response helper
|
|
102
|
-
*/
|
|
103
|
-
static empty(status: number = 204) {
|
|
104
|
-
return new Response(null, { status });
|
|
105
|
-
}
|
|
1
|
+
import type { AppwriteResponse } from "../context.js";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Convert Hono Response to Appwrite response format
|
|
5
|
+
*/
|
|
6
|
+
export async function convertWebResponseToAppwrite(
|
|
7
|
+
honoResponse: Response,
|
|
8
|
+
appwriteRes: AppwriteResponse
|
|
9
|
+
): Promise<void> {
|
|
10
|
+
const status = honoResponse.status;
|
|
11
|
+
const headers: Record<string, string> = {};
|
|
12
|
+
|
|
13
|
+
// Extract headers from Hono response
|
|
14
|
+
honoResponse.headers.forEach((value, key) => {
|
|
15
|
+
headers[key] = value;
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
// Get content type to determine response handling
|
|
19
|
+
const contentType = honoResponse.headers.get("content-type") || "";
|
|
20
|
+
|
|
21
|
+
try {
|
|
22
|
+
// Handle different response types based on content-type
|
|
23
|
+
if (contentType.includes("application/json")) {
|
|
24
|
+
const data = await honoResponse.json();
|
|
25
|
+
return appwriteRes.json(data, status, headers);
|
|
26
|
+
} else if (contentType.includes("text/")) {
|
|
27
|
+
const text = await honoResponse.text();
|
|
28
|
+
return appwriteRes.text(text, status, headers);
|
|
29
|
+
} else if (contentType.includes("application/octet-stream") || contentType.includes("image/") || contentType.includes("video/")) {
|
|
30
|
+
const arrayBuffer = await honoResponse.arrayBuffer();
|
|
31
|
+
const bytes = new Uint8Array(arrayBuffer);
|
|
32
|
+
return appwriteRes.binary(bytes);
|
|
33
|
+
} else {
|
|
34
|
+
// Default to text for unknown content types
|
|
35
|
+
const text = await honoResponse.text();
|
|
36
|
+
return appwriteRes.text(text, status, headers);
|
|
37
|
+
}
|
|
38
|
+
} catch (error) {
|
|
39
|
+
// If response body parsing fails, return empty response
|
|
40
|
+
console.error("Error converting Hono response:", error);
|
|
41
|
+
return appwriteRes.empty();
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Helper function to create common response types for Hono handlers
|
|
47
|
+
*/
|
|
48
|
+
export class AppwriteResponseHelpers {
|
|
49
|
+
/**
|
|
50
|
+
* Create a JSON response helper
|
|
51
|
+
*/
|
|
52
|
+
static json(data: any, status: number = 200, headers?: Record<string, string>) {
|
|
53
|
+
const responseHeaders = new Headers(headers);
|
|
54
|
+
responseHeaders.set("content-type", "application/json");
|
|
55
|
+
|
|
56
|
+
return new Response(JSON.stringify(data), {
|
|
57
|
+
status,
|
|
58
|
+
headers: responseHeaders,
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Create a text response helper
|
|
64
|
+
*/
|
|
65
|
+
static text(text: string, status: number = 200, headers?: Record<string, string>) {
|
|
66
|
+
const responseHeaders = new Headers(headers);
|
|
67
|
+
responseHeaders.set("content-type", "text/plain");
|
|
68
|
+
|
|
69
|
+
return new Response(text, {
|
|
70
|
+
status,
|
|
71
|
+
headers: responseHeaders,
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Create an HTML response helper
|
|
77
|
+
*/
|
|
78
|
+
static html(html: string, status: number = 200, headers?: Record<string, string>) {
|
|
79
|
+
const responseHeaders = new Headers(headers);
|
|
80
|
+
responseHeaders.set("content-type", "text/html");
|
|
81
|
+
|
|
82
|
+
return new Response(html, {
|
|
83
|
+
status,
|
|
84
|
+
headers: responseHeaders,
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Create a redirect response helper
|
|
90
|
+
*/
|
|
91
|
+
static redirect(url: string, status: number = 302) {
|
|
92
|
+
return new Response(null, {
|
|
93
|
+
status,
|
|
94
|
+
headers: {
|
|
95
|
+
location: url,
|
|
96
|
+
},
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Create an empty response helper
|
|
102
|
+
*/
|
|
103
|
+
static empty(status: number = 204) {
|
|
104
|
+
return new Response(null, { status });
|
|
105
|
+
}
|
|
106
106
|
}
|