@onchaindb/sdk 0.4.0 → 0.4.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 (98) hide show
  1. package/.DS_Store +0 -0
  2. package/.claude/settings.local.json +8 -0
  3. package/.gitignore +5 -0
  4. package/.idea/.gitignore +5 -0
  5. package/.idea/compiler.xml +6 -0
  6. package/.idea/inspectionProfiles/Project_Default.xml +6 -0
  7. package/.idea/jsLinters/eslint.xml +6 -0
  8. package/.idea/modules.xml +8 -0
  9. package/.idea/prettier.xml +7 -0
  10. package/.idea/sdk.iml +12 -0
  11. package/.idea/vcs.xml +6 -0
  12. package/.idea/workspace.xml +257 -0
  13. package/dist/client.d.ts.map +1 -1
  14. package/dist/client.js +11 -3
  15. package/dist/client.js.map +1 -1
  16. package/dist/database.d.ts +0 -20
  17. package/dist/database.d.ts.map +1 -1
  18. package/dist/database.js +0 -40
  19. package/dist/database.js.map +1 -1
  20. package/dist/query-sdk/tests/setup.d.ts +16 -0
  21. package/dist/query-sdk/tests/setup.d.ts.map +1 -0
  22. package/dist/query-sdk/tests/setup.js +49 -0
  23. package/dist/query-sdk/tests/setup.js.map +1 -0
  24. package/examples/basic-usage.ts +136 -0
  25. package/examples/blob-upload-example.ts +140 -0
  26. package/examples/collection-schema-example.ts +304 -0
  27. package/examples/server-side-joins.ts +201 -0
  28. package/examples/tweet-self-joins-example.ts +352 -0
  29. package/package-lock.json +3823 -0
  30. package/package.json +1 -1
  31. package/skills.md +1096 -0
  32. package/src/.env +1 -0
  33. package/src/batch.d.ts +121 -0
  34. package/src/batch.js +205 -0
  35. package/src/batch.ts +257 -0
  36. package/src/client.ts +1856 -0
  37. package/src/database.d.ts +268 -0
  38. package/src/database.js +294 -0
  39. package/src/database.ts +695 -0
  40. package/src/index.d.ts +160 -0
  41. package/src/index.js +186 -0
  42. package/src/index.ts +253 -0
  43. package/src/query-sdk/ConditionBuilder.ts +103 -0
  44. package/src/query-sdk/FieldConditionBuilder.ts +2 -0
  45. package/src/query-sdk/NestedBuilders.ts +186 -0
  46. package/src/query-sdk/OnChainDB.ts +294 -0
  47. package/src/query-sdk/QueryBuilder.ts +1191 -0
  48. package/src/query-sdk/QueryResult.ts +375 -0
  49. package/src/query-sdk/README.md +866 -0
  50. package/src/query-sdk/SelectionBuilder.ts +94 -0
  51. package/src/query-sdk/adapters/HttpClientAdapter.ts +249 -0
  52. package/src/query-sdk/dist/ConditionBuilder.d.ts +22 -0
  53. package/src/query-sdk/dist/ConditionBuilder.js +90 -0
  54. package/src/query-sdk/dist/FieldConditionBuilder.d.ts +1 -0
  55. package/src/query-sdk/dist/FieldConditionBuilder.js +6 -0
  56. package/src/query-sdk/dist/NestedBuilders.d.ts +43 -0
  57. package/src/query-sdk/dist/NestedBuilders.js +144 -0
  58. package/src/query-sdk/dist/OnChainDB.d.ts +19 -0
  59. package/src/query-sdk/dist/OnChainDB.js +123 -0
  60. package/src/query-sdk/dist/QueryBuilder.d.ts +70 -0
  61. package/src/query-sdk/dist/QueryBuilder.js +295 -0
  62. package/src/query-sdk/dist/QueryResult.d.ts +52 -0
  63. package/src/query-sdk/dist/QueryResult.js +293 -0
  64. package/src/query-sdk/dist/SelectionBuilder.d.ts +20 -0
  65. package/src/query-sdk/dist/SelectionBuilder.js +80 -0
  66. package/src/query-sdk/dist/adapters/HttpClientAdapter.d.ts +27 -0
  67. package/src/query-sdk/dist/adapters/HttpClientAdapter.js +170 -0
  68. package/src/query-sdk/dist/index.d.ts +36 -0
  69. package/src/query-sdk/dist/index.js +27 -0
  70. package/src/query-sdk/dist/operators.d.ts +56 -0
  71. package/src/query-sdk/dist/operators.js +289 -0
  72. package/src/query-sdk/dist/tests/setup.d.ts +15 -0
  73. package/src/query-sdk/dist/tests/setup.js +46 -0
  74. package/src/query-sdk/index.ts +59 -0
  75. package/src/query-sdk/jest.config.js +25 -0
  76. package/src/query-sdk/operators.ts +335 -0
  77. package/src/query-sdk/package.json +46 -0
  78. package/src/query-sdk/tests/FieldConditionBuilder.test.ts +84 -0
  79. package/src/query-sdk/tests/LogicalOperator.test.ts +85 -0
  80. package/src/query-sdk/tests/NestedBuilders.test.ts +321 -0
  81. package/src/query-sdk/tests/QueryBuilder.test.ts +348 -0
  82. package/src/query-sdk/tests/QueryResult.test.ts +464 -0
  83. package/src/query-sdk/tests/aggregations.test.ts +653 -0
  84. package/src/query-sdk/tests/comprehensive.test.ts +279 -0
  85. package/src/query-sdk/tests/integration.test.ts +608 -0
  86. package/src/query-sdk/tests/operators.test.ts +327 -0
  87. package/src/query-sdk/tests/setup.ts +59 -0
  88. package/src/query-sdk/tests/unit.test.ts +794 -0
  89. package/src/query-sdk/tsconfig.json +26 -0
  90. package/src/query-sdk/yarn.lock +3092 -0
  91. package/src/types.d.ts +131 -0
  92. package/src/types.js +46 -0
  93. package/src/types.ts +534 -0
  94. package/src/x402/index.ts +12 -0
  95. package/src/x402/types.ts +250 -0
  96. package/src/x402/utils.ts +332 -0
  97. package/tsconfig.json +20 -0
  98. package/yarn.lock +2309 -0
package/dist/database.js CHANGED
@@ -11,46 +11,6 @@ class DatabaseManager {
11
11
  this.appId = appId;
12
12
  this.apiKey = apiKey;
13
13
  }
14
- async createCollection(name, config) {
15
- const payload = {
16
- name,
17
- namespace: config.namespace,
18
- primary_column: config.primary_column,
19
- sort_column: config.sort_column || null,
20
- schema_definition: config.schema_definition || null,
21
- access_policy: config.access_policy || null,
22
- };
23
- const response = await this.httpClient.post(`/api/apps/${this.appId}/collections`, payload, { headers: this.getHeaders() });
24
- return response.data;
25
- }
26
- async listCollections(includeStats) {
27
- const params = includeStats ? { include_stats: true } : {};
28
- const response = await this.httpClient.get(`/api/apps/${this.appId}/collections`, {
29
- params,
30
- headers: this.getHeaders()
31
- });
32
- return response.data;
33
- }
34
- async getCollection(name, includeStats) {
35
- const params = includeStats ? { include_stats: true } : {};
36
- const response = await this.httpClient.get(`/api/apps/${this.appId}/collections/${name}`, {
37
- params,
38
- headers: this.getHeaders()
39
- });
40
- return response.data;
41
- }
42
- async updateCollection(name, updates, options) {
43
- const payload = { ...updates, options };
44
- const response = await this.httpClient.put(`/api/apps/${this.appId}/collections/${name}`, payload, { headers: this.getHeaders() });
45
- return response.data;
46
- }
47
- async deleteCollection(name, options) {
48
- const response = await this.httpClient.delete(`/api/apps/${this.appId}/collections/${name}`, {
49
- data: options,
50
- headers: this.getHeaders()
51
- });
52
- return response.data;
53
- }
54
14
  async createIndex(indexDefinition, paymentOptions) {
55
15
  const endpoint = `/api/apps/${this.appId}/indexes`;
56
16
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"database.js","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database.js","sourceRoot":"","sources":["../src/database.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import 'jest';
2
+ export declare const createMockResponse: (data: any) => {
3
+ data: {
4
+ records: any[];
5
+ total: number;
6
+ page: number;
7
+ limit: number;
8
+ };
9
+ };
10
+ export declare class MockHttpClient {
11
+ private responses;
12
+ setResponse(url: string, response: any): void;
13
+ post(url: string, data: any, headers?: Record<string, string>): Promise<any>;
14
+ clear(): void;
15
+ }
16
+ //# sourceMappingURL=setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../src/query-sdk/tests/setup.ts"],"names":[],"mappings":"AAGA,OAAO,MAAM,CAAC;AAoBd,eAAO,MAAM,kBAAkB,GAAI,MAAM,GAAG;;;;;;;CAO1C,CAAC;AAGH,qBAAa,cAAc;IACzB,OAAO,CAAC,SAAS,CAA+B;IAEhD,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG;IAIhC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAenE,KAAK;CAGN"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MockHttpClient = exports.createMockResponse = void 0;
4
+ require("jest");
5
+ jest.setTimeout(30000);
6
+ const originalConsoleError = console.error;
7
+ const originalConsoleWarn = console.warn;
8
+ beforeAll(() => {
9
+ console.error = jest.fn();
10
+ console.warn = jest.fn();
11
+ });
12
+ afterAll(() => {
13
+ console.error = originalConsoleError;
14
+ console.warn = originalConsoleWarn;
15
+ });
16
+ const createMockResponse = (data) => ({
17
+ data: {
18
+ records: Array.isArray(data) ? data : [data],
19
+ total: Array.isArray(data) ? data.length : 1,
20
+ page: 1,
21
+ limit: 10
22
+ }
23
+ });
24
+ exports.createMockResponse = createMockResponse;
25
+ class MockHttpClient {
26
+ constructor() {
27
+ this.responses = new Map();
28
+ }
29
+ setResponse(url, response) {
30
+ this.responses.set(url, response);
31
+ }
32
+ async post(url, data, headers) {
33
+ let response = this.responses.get(url);
34
+ if (!response) {
35
+ for (const [key, value] of this.responses.entries()) {
36
+ if (url.endsWith(key)) {
37
+ response = value;
38
+ break;
39
+ }
40
+ }
41
+ }
42
+ return Promise.resolve(response || (0, exports.createMockResponse)([]));
43
+ }
44
+ clear() {
45
+ this.responses.clear();
46
+ }
47
+ }
48
+ exports.MockHttpClient = MockHttpClient;
49
+ //# sourceMappingURL=setup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/query-sdk/tests/setup.ts"],"names":[],"mappings":";;;AAGA,gBAAc;AAGd,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AAGvB,MAAM,oBAAoB,GAAG,OAAO,CAAC,KAAK,CAAC;AAC3C,MAAM,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;AAEzC,SAAS,CAAC,GAAG,EAAE;IACb,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAC1B,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,GAAG,EAAE;IACZ,OAAO,CAAC,KAAK,GAAG,oBAAoB,CAAC;IACrC,OAAO,CAAC,IAAI,GAAG,mBAAmB,CAAC;AACrC,CAAC,CAAC,CAAC;AAGI,MAAM,kBAAkB,GAAG,CAAC,IAAS,EAAE,EAAE,CAAC,CAAC;IAChD,IAAI,EAAE;QACJ,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5C,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,EAAE;KACV;CACF,CAAC,CAAC;AAPU,QAAA,kBAAkB,sBAO5B;AAGH,MAAa,cAAc;IAA3B;QACU,cAAS,GAAqB,IAAI,GAAG,EAAE,CAAC;IAwBlD,CAAC;IAtBC,WAAW,CAAC,GAAW,EAAE,QAAa;QACpC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAW,EAAE,IAAS,EAAE,OAAgC;QAEjE,IAAI,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAEd,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;gBACpD,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACtB,QAAQ,GAAG,KAAK,CAAC;oBACjB,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC,OAAO,CAAC,QAAQ,IAAI,IAAA,0BAAkB,EAAC,EAAE,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,KAAK;QACH,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;CACF;AAzBD,wCAyBC"}
@@ -0,0 +1,136 @@
1
+ /**
2
+ * OnChainDB SDK - Basic Usage Examples
3
+ *
4
+ * Demonstrates fundamental operations with the OnChainDB SDK
5
+ */
6
+
7
+ import { createClient, OnChainDBError, ValidationError } from '../src';
8
+
9
+ async function basicUsageExample() {
10
+ console.log('OnChainDB SDK - Basic Usage Example\n');
11
+
12
+ // Create client instance
13
+ const db = createClient({
14
+ endpoint: 'http://localhost:9092',
15
+ apiKey: 'your_api_key',
16
+ appId: 'my_app'
17
+ });
18
+
19
+ try {
20
+ // 1. Health check
21
+ console.log('1. Checking service health...');
22
+ const health = await db.health();
23
+ console.log('Service is healthy:', health);
24
+ console.log();
25
+
26
+ // 2. Store records
27
+ console.log('2. Storing records...');
28
+ const storeResult = await db.store({
29
+ collection: 'messages',
30
+ data: [
31
+ { id: 'msg_1', message: 'Hello OnChainDB!', author: 'alice' },
32
+ { id: 'msg_2', message: 'Welcome to decentralized storage', author: 'bob' }
33
+ ]
34
+ });
35
+
36
+ console.log('Records stored:');
37
+ console.log(` Ticket ID: ${storeResult.ticket_id}`);
38
+ console.log();
39
+
40
+ // 3. Wait for confirmation
41
+ console.log('3. Waiting for confirmation...');
42
+ const task = await db.waitForTaskCompletion(storeResult.ticket_id);
43
+ console.log(`Task completed with status: ${task.status}`);
44
+ console.log();
45
+
46
+ // 4. Query records using QueryBuilder
47
+ console.log('4. Querying records...');
48
+ const queryResult = await db.queryBuilder()
49
+ .collection('messages')
50
+ .whereField('author').equals('alice')
51
+ .selectAll()
52
+ .limit(10)
53
+ .execute();
54
+
55
+ console.log(`Found ${queryResult.records?.length || 0} records by Alice:`);
56
+ queryResult.records?.forEach((record, index) => {
57
+ console.log(` ${index + 1}. ${record.message}`);
58
+ });
59
+ console.log();
60
+
61
+ // 5. Query with multiple conditions
62
+ console.log('5. Query with selection...');
63
+ const selectResult = await db.queryBuilder()
64
+ .collection('messages')
65
+ .selectFields(['id', 'message', 'author'])
66
+ .limit(5)
67
+ .execute();
68
+
69
+ console.log(`Retrieved ${selectResult.records?.length || 0} records`);
70
+ console.log();
71
+
72
+ console.log('All basic operations completed successfully!');
73
+
74
+ } catch (error) {
75
+ console.error('Error occurred:', error);
76
+
77
+ if (error instanceof ValidationError) {
78
+ console.error('Validation Error:', error.message);
79
+ } else if (error instanceof OnChainDBError) {
80
+ console.error('OnChainDB Error:', error.code, error.message);
81
+ }
82
+ }
83
+ }
84
+
85
+ // Store with payment example
86
+ async function storeWithPaymentExample() {
87
+ console.log('\nOnChainDB SDK - Store with Payment Example\n');
88
+
89
+ const db = createClient({
90
+ endpoint: 'http://localhost:9092',
91
+ apiKey: 'your_api_key',
92
+ appId: 'my_app'
93
+ });
94
+
95
+ try {
96
+ // Store with x402 payment callback
97
+ const result = await db.store(
98
+ {
99
+ collection: 'premium_content',
100
+ data: [{ title: 'Premium Article', content: 'This is paid content' }]
101
+ },
102
+ async (quote) => {
103
+ // In a real app, you would use Keplr or another wallet here
104
+ console.log('Payment required:');
105
+ console.log(` Amount: ${quote.total_cost_tia} TIA`);
106
+ console.log(` Broker: ${quote.broker_address}`);
107
+
108
+ // Mock payment - replace with actual wallet integration
109
+ // const txHash = await wallet.signAndBroadcast(
110
+ // quote.broker_address,
111
+ // `${Math.ceil(quote.total_cost_tia * 1_000_000)}utia`,
112
+ // 'OnChainDB storage'
113
+ // );
114
+
115
+ return { txHash: 'mock_tx_hash', network: 'mocha-4' };
116
+ }
117
+ );
118
+
119
+ console.log('Store initiated:', result.ticket_id);
120
+
121
+ } catch (error) {
122
+ console.error('Store with payment failed:', error);
123
+ }
124
+ }
125
+
126
+ // Run examples
127
+ async function main() {
128
+ await basicUsageExample();
129
+ await storeWithPaymentExample();
130
+ }
131
+
132
+ if (require.main === module) {
133
+ main().catch(console.error);
134
+ }
135
+
136
+ export { basicUsageExample, storeWithPaymentExample };
@@ -0,0 +1,140 @@
1
+ /**
2
+ * OnChainDB SDK - Blob Upload Example
3
+ *
4
+ * Demonstrates how to upload binary files (images, videos, documents)
5
+ * to OnChainDB with the x402 payment protocol.
6
+ *
7
+ * Features:
8
+ * - Get pricing quote for blob upload
9
+ * - Upload blob with custom metadata
10
+ * - Track upload progress with ticket_id
11
+ * - Retrieve uploaded blob
12
+ * - Query blob metadata
13
+ */
14
+
15
+ import { createClient } from '../src';
16
+
17
+ const config = {
18
+ endpoint: 'http://localhost:9092',
19
+ apiKey: 'your_api_key',
20
+ appId: 'my_app'
21
+ };
22
+
23
+ const BROKER_ADDRESS = 'celestia1broker...';
24
+
25
+ async function uploadProfilePhoto() {
26
+ console.log('OnChainDB Blob Upload Example\n');
27
+
28
+ const client = createClient(config);
29
+
30
+ // In a real app, get file from input:
31
+ // const file = document.querySelector('input[type="file"]').files[0];
32
+
33
+ // For this example, create a mock blob
34
+ const mockBlob = new Blob(['mock image data'], { type: 'image/jpeg' });
35
+ const fileSizeKB = Math.ceil(mockBlob.size / 1024);
36
+
37
+ // Step 1: Get pricing quote
38
+ console.log('1. Getting pricing quote...');
39
+ const quote = await client.getPricingQuote({
40
+ app_id: config.appId,
41
+ operation_type: 'write',
42
+ size_kb: fileSizeKB,
43
+ collection: 'avatars'
44
+ });
45
+
46
+ const costInUtia = Math.ceil(quote.total_cost * 1_000_000);
47
+ console.log(` Size: ${fileSizeKB}KB`);
48
+ console.log(` Cost: ${quote.total_cost} TIA (${costInUtia} utia)`);
49
+ console.log();
50
+
51
+ // Step 2: Create payment transaction
52
+ // In a real app with Keplr:
53
+ // const result = await wallet.signAndBroadcast(
54
+ // BROKER_ADDRESS,
55
+ // `${costInUtia}utia`,
56
+ // 'Image upload'
57
+ // );
58
+ // const paymentTxHash = result.transactionHash;
59
+
60
+ const paymentTxHash = 'mock_payment_tx_hash';
61
+ const userAddress = 'celestia1user...';
62
+
63
+ console.log('2. Payment transaction created');
64
+ console.log(` TX Hash: ${paymentTxHash}`);
65
+ console.log();
66
+
67
+ // Step 3: Upload blob with metadata
68
+ console.log('3. Uploading blob...');
69
+ const uploadResult = await client.uploadBlob({
70
+ collection: 'avatars',
71
+ blob: mockBlob,
72
+ metadata: {
73
+ user_address: userAddress,
74
+ description: 'Profile photo',
75
+ is_primary: true
76
+ },
77
+ payment_tx_hash: paymentTxHash,
78
+ user_address: userAddress,
79
+ broker_address: BROKER_ADDRESS,
80
+ amount_utia: costInUtia
81
+ });
82
+
83
+ console.log(' Blob upload initiated!');
84
+ console.log(` Blob ID: ${uploadResult.blob_id}`);
85
+ console.log(` Ticket ID: ${uploadResult.ticket_id}`);
86
+ console.log();
87
+
88
+ // Step 4: Wait for upload completion
89
+ console.log('4. Waiting for upload to complete...');
90
+ const task = await client.waitForTaskCompletion(uploadResult.ticket_id);
91
+
92
+ console.log(` Status: ${task.status}`);
93
+ if (task.status === 'Completed') {
94
+ console.log(` TX Hash: ${task.transaction_hash}`);
95
+ console.log(` Block Height: ${task.block_height}`);
96
+ }
97
+ console.log();
98
+
99
+ // Step 5: Query blob metadata
100
+ console.log('5. Querying blob metadata...');
101
+ const blobs = await client.queryBlobMetadata('avatars', {
102
+ user_address: userAddress
103
+ });
104
+
105
+ console.log(` Found ${blobs.length} blobs for user`);
106
+ for (const blob of blobs) {
107
+ console.log(` - Blob ID: ${blob.blob_id}`);
108
+ console.log(` Type: ${blob.content_type}`);
109
+ console.log(` Size: ${blob.size_bytes} bytes`);
110
+ }
111
+ console.log();
112
+
113
+ // Step 6: Retrieve blob
114
+ console.log('6. Retrieving blob...');
115
+ const retrievedBlob = await client.retrieveBlob({
116
+ collection: 'avatars',
117
+ blob_id: uploadResult.blob_id
118
+ });
119
+
120
+ console.log(' Blob retrieved successfully!');
121
+ console.log(` Size: ${retrievedBlob instanceof Blob ? retrievedBlob.size : retrievedBlob.length} bytes`);
122
+
123
+ // In browser, display the image:
124
+ // const imageUrl = URL.createObjectURL(retrievedBlob);
125
+ // document.querySelector('img').src = imageUrl;
126
+
127
+ console.log('\nBlob upload example complete!');
128
+ }
129
+
130
+ // Run example
131
+ if (require.main === module) {
132
+ uploadProfilePhoto()
133
+ .then(() => process.exit(0))
134
+ .catch((error) => {
135
+ console.error('Error:', error.message);
136
+ process.exit(1);
137
+ });
138
+ }
139
+
140
+ export { uploadProfilePhoto };