@memberjunction/storage 2.31.0 → 2.32.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/dist/drivers/AWSFileStorage.d.ts +26 -1
- package/dist/drivers/AWSFileStorage.d.ts.map +1 -1
- package/dist/drivers/AWSFileStorage.js +287 -13
- package/dist/drivers/AWSFileStorage.js.map +1 -1
- package/dist/drivers/AzureFileStorage.d.ts +22 -1
- package/dist/drivers/AzureFileStorage.d.ts.map +1 -1
- package/dist/drivers/AzureFileStorage.js +264 -20
- package/dist/drivers/AzureFileStorage.js.map +1 -1
- package/dist/drivers/BoxFileStorage.d.ts +73 -0
- package/dist/drivers/BoxFileStorage.d.ts.map +1 -0
- package/dist/drivers/BoxFileStorage.js +517 -0
- package/dist/drivers/BoxFileStorage.js.map +1 -0
- package/dist/drivers/DropboxFileStorage.d.ts +73 -0
- package/dist/drivers/DropboxFileStorage.d.ts.map +1 -0
- package/dist/drivers/DropboxFileStorage.js +463 -0
- package/dist/drivers/DropboxFileStorage.js.map +1 -0
- package/dist/drivers/GoogleDriveFileStorage.d.ts +73 -0
- package/dist/drivers/GoogleDriveFileStorage.d.ts.map +1 -0
- package/dist/drivers/GoogleDriveFileStorage.js +542 -0
- package/dist/drivers/GoogleDriveFileStorage.js.map +1 -0
- package/dist/drivers/GoogleFileStorage.d.ts +20 -1
- package/dist/drivers/GoogleFileStorage.d.ts.map +1 -1
- package/dist/drivers/GoogleFileStorage.js +215 -2
- package/dist/drivers/GoogleFileStorage.js.map +1 -1
- package/dist/drivers/SharePointFileStorage.d.ts +81 -0
- package/dist/drivers/SharePointFileStorage.d.ts.map +1 -0
- package/dist/drivers/SharePointFileStorage.js +490 -0
- package/dist/drivers/SharePointFileStorage.js.map +1 -0
- package/dist/generic/FileStorageBase.d.ts +119 -0
- package/dist/generic/FileStorageBase.d.ts.map +1 -1
- package/dist/generic/FileStorageBase.js +18 -1
- package/dist/generic/FileStorageBase.js.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/package.json +12 -4
|
@@ -36,14 +36,31 @@ exports.AzureFileStorage = void 0;
|
|
|
36
36
|
const storage_blob_1 = require("@azure/storage-blob");
|
|
37
37
|
const global_1 = require("@memberjunction/global");
|
|
38
38
|
const env = __importStar(require("env-var"));
|
|
39
|
+
const mime = __importStar(require("mime-types"));
|
|
39
40
|
const FileStorageBase_1 = require("../generic/FileStorageBase");
|
|
40
41
|
let AzureFileStorage = class AzureFileStorage extends FileStorageBase_1.FileStorageBase {
|
|
41
42
|
constructor() {
|
|
42
43
|
super();
|
|
44
|
+
this.providerName = 'Azure Blob Storage';
|
|
43
45
|
this._container = env.get('STORAGE_AZURE_CONTAINER').required().asString();
|
|
44
46
|
this._accountName = env.get('STORAGE_AZURE_ACCOUNT_NAME').required().asString();
|
|
45
47
|
const accountKey = env.get('STORAGE_AZURE_ACCOUNT_KEY').required().asString();
|
|
46
48
|
this._sharedKeyCredential = new storage_blob_1.StorageSharedKeyCredential(this._accountName, accountKey);
|
|
49
|
+
const blobServiceUrl = `https://${this._accountName}.blob.core.windows.net`;
|
|
50
|
+
this._blobServiceClient = new storage_blob_1.BlobServiceClient(blobServiceUrl, this._sharedKeyCredential);
|
|
51
|
+
this._containerClient = this._blobServiceClient.getContainerClient(this._container);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Creates a BlobClient for the specified object
|
|
55
|
+
*/
|
|
56
|
+
_getBlobClient(objectName) {
|
|
57
|
+
return this._containerClient.getBlobClient(objectName);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Normalize directory path to ensure it ends with a slash
|
|
61
|
+
*/
|
|
62
|
+
_normalizeDirectoryPath(path) {
|
|
63
|
+
return path.endsWith('/') ? path : path + '/';
|
|
47
64
|
}
|
|
48
65
|
CreatePreAuthUploadUrl(objectName) {
|
|
49
66
|
const sasOptions = {
|
|
@@ -76,28 +93,255 @@ let AzureFileStorage = class AzureFileStorage extends FileStorageBase_1.FileStor
|
|
|
76
93
|
return Promise.resolve(url);
|
|
77
94
|
}
|
|
78
95
|
async MoveObject(oldObjectName, newObjectName) {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
}
|
|
93
|
-
const { succeeded } = await oldBlobClient.deleteIfExists();
|
|
94
|
-
return succeeded;
|
|
96
|
+
try {
|
|
97
|
+
// Reuse CopyObject and DeleteObject for moving
|
|
98
|
+
const copied = await this.CopyObject(oldObjectName, newObjectName);
|
|
99
|
+
if (copied) {
|
|
100
|
+
return this.DeleteObject(oldObjectName);
|
|
101
|
+
}
|
|
102
|
+
return false;
|
|
103
|
+
}
|
|
104
|
+
catch (error) {
|
|
105
|
+
console.error('Error moving object in Azure Blob Storage', { oldObjectName, newObjectName });
|
|
106
|
+
console.error(error);
|
|
107
|
+
return false;
|
|
108
|
+
}
|
|
95
109
|
}
|
|
96
110
|
async DeleteObject(objectName) {
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
111
|
+
try {
|
|
112
|
+
const blobClient = this._getBlobClient(objectName);
|
|
113
|
+
const { succeeded } = await blobClient.deleteIfExists();
|
|
114
|
+
return succeeded;
|
|
115
|
+
}
|
|
116
|
+
catch (error) {
|
|
117
|
+
console.error('Error deleting object from Azure Blob Storage', { objectName });
|
|
118
|
+
console.error(error);
|
|
119
|
+
return false;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
async ListObjects(prefix, delimiter = '/') {
|
|
123
|
+
try {
|
|
124
|
+
// Azure doesn't support real directories, so we need to mimic the behavior
|
|
125
|
+
const objects = [];
|
|
126
|
+
const prefixes = new Set();
|
|
127
|
+
// List all blobs under the prefix
|
|
128
|
+
const listOptions = {
|
|
129
|
+
prefix: prefix
|
|
130
|
+
};
|
|
131
|
+
// Get all blobs
|
|
132
|
+
for await (const blob of this._containerClient.listBlobsFlat(listOptions)) {
|
|
133
|
+
const blobName = blob.name;
|
|
134
|
+
// Skip the directory placeholder blob itself
|
|
135
|
+
if (blobName === prefix)
|
|
136
|
+
continue;
|
|
137
|
+
// Extract "directory" from path if using delimiter
|
|
138
|
+
if (delimiter) {
|
|
139
|
+
const pathAfterPrefix = blobName.slice(prefix.length);
|
|
140
|
+
const delimiterIndex = pathAfterPrefix.indexOf(delimiter);
|
|
141
|
+
// If there's a delimiter after the prefix, this is a "directory"
|
|
142
|
+
if (delimiterIndex !== -1) {
|
|
143
|
+
const directoryPath = prefix + pathAfterPrefix.substring(0, delimiterIndex + 1);
|
|
144
|
+
prefixes.add(directoryPath);
|
|
145
|
+
continue; // Skip adding as an object
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
// Get the last part of the path as the name
|
|
149
|
+
const pathParts = blobName.split('/');
|
|
150
|
+
const name = pathParts[pathParts.length - 1];
|
|
151
|
+
// Calculate the path
|
|
152
|
+
const path = pathParts.slice(0, -1).join('/');
|
|
153
|
+
objects.push({
|
|
154
|
+
name,
|
|
155
|
+
path,
|
|
156
|
+
fullPath: blobName,
|
|
157
|
+
size: blob.properties.contentLength || 0,
|
|
158
|
+
contentType: blob.properties.contentType || mime.lookup(blobName) || 'application/octet-stream',
|
|
159
|
+
lastModified: blob.properties.lastModified || new Date(),
|
|
160
|
+
isDirectory: blobName.endsWith('/'),
|
|
161
|
+
etag: blob.properties.etag
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
return {
|
|
165
|
+
objects,
|
|
166
|
+
prefixes: Array.from(prefixes)
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
catch (error) {
|
|
170
|
+
console.error('Error listing objects in Azure Blob Storage', { prefix });
|
|
171
|
+
console.error(error);
|
|
172
|
+
return { objects: [], prefixes: [] };
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
async CreateDirectory(directoryPath) {
|
|
176
|
+
try {
|
|
177
|
+
// Azure Blob Storage doesn't have real directories
|
|
178
|
+
// We create a zero-byte blob with a trailing slash to represent a directory
|
|
179
|
+
directoryPath = this._normalizeDirectoryPath(directoryPath);
|
|
180
|
+
const blobClient = this._getBlobClient(directoryPath);
|
|
181
|
+
const blockBlobClient = blobClient.getBlockBlobClient();
|
|
182
|
+
// Using proper typing for Azure's upload method
|
|
183
|
+
await blockBlobClient.upload(Buffer.from('').valueOf(), 0, {
|
|
184
|
+
blobHTTPHeaders: {
|
|
185
|
+
blobContentType: 'application/x-directory'
|
|
186
|
+
}
|
|
187
|
+
});
|
|
188
|
+
return true;
|
|
189
|
+
}
|
|
190
|
+
catch (error) {
|
|
191
|
+
console.error('Error creating directory in Azure Blob Storage', { directoryPath });
|
|
192
|
+
console.error(error);
|
|
193
|
+
return false;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
async DeleteDirectory(directoryPath, recursive = false) {
|
|
197
|
+
try {
|
|
198
|
+
directoryPath = this._normalizeDirectoryPath(directoryPath);
|
|
199
|
+
if (!recursive) {
|
|
200
|
+
// Just delete the directory placeholder
|
|
201
|
+
return this.DeleteObject(directoryPath);
|
|
202
|
+
}
|
|
203
|
+
// For recursive delete, list all blobs under this directory and delete them
|
|
204
|
+
const blobsToDelete = [];
|
|
205
|
+
// List all blobs under the prefix
|
|
206
|
+
const listOptions = {
|
|
207
|
+
prefix: directoryPath
|
|
208
|
+
};
|
|
209
|
+
// Get all blobs to delete
|
|
210
|
+
for await (const blob of this._containerClient.listBlobsFlat(listOptions)) {
|
|
211
|
+
blobsToDelete.push(this._containerClient.getBlobClient(blob.name).delete());
|
|
212
|
+
}
|
|
213
|
+
// Delete all the blobs concurrently
|
|
214
|
+
await Promise.all(blobsToDelete);
|
|
215
|
+
return true;
|
|
216
|
+
}
|
|
217
|
+
catch (error) {
|
|
218
|
+
console.error('Error deleting directory from Azure Blob Storage', { directoryPath, recursive });
|
|
219
|
+
console.error(error);
|
|
220
|
+
return false;
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
async GetObjectMetadata(objectName) {
|
|
224
|
+
try {
|
|
225
|
+
const blobClient = this._getBlobClient(objectName);
|
|
226
|
+
const properties = await blobClient.getProperties();
|
|
227
|
+
const pathParts = objectName.split('/');
|
|
228
|
+
const name = pathParts[pathParts.length - 1];
|
|
229
|
+
const path = pathParts.slice(0, -1).join('/');
|
|
230
|
+
return {
|
|
231
|
+
name,
|
|
232
|
+
path,
|
|
233
|
+
fullPath: objectName,
|
|
234
|
+
size: properties.contentLength || 0,
|
|
235
|
+
contentType: properties.contentType || mime.lookup(objectName) || 'application/octet-stream',
|
|
236
|
+
lastModified: properties.lastModified || new Date(),
|
|
237
|
+
isDirectory: objectName.endsWith('/'),
|
|
238
|
+
etag: properties.etag,
|
|
239
|
+
cacheControl: properties.cacheControl,
|
|
240
|
+
customMetadata: properties.metadata
|
|
241
|
+
};
|
|
242
|
+
}
|
|
243
|
+
catch (error) {
|
|
244
|
+
console.error('Error getting object metadata from Azure Blob Storage', { objectName });
|
|
245
|
+
console.error(error);
|
|
246
|
+
throw new Error(`Object not found: ${objectName}`);
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
async GetObject(objectName) {
|
|
250
|
+
try {
|
|
251
|
+
const blobClient = this._getBlobClient(objectName);
|
|
252
|
+
const downloadResponse = await blobClient.download();
|
|
253
|
+
if (!downloadResponse.readableStreamBody) {
|
|
254
|
+
throw new Error(`Empty response body for object: ${objectName}`);
|
|
255
|
+
}
|
|
256
|
+
// Read the stream into a buffer
|
|
257
|
+
const chunks = [];
|
|
258
|
+
for await (const chunk of downloadResponse.readableStreamBody) {
|
|
259
|
+
chunks.push(Buffer.from(chunk));
|
|
260
|
+
}
|
|
261
|
+
return Buffer.concat(chunks);
|
|
262
|
+
}
|
|
263
|
+
catch (error) {
|
|
264
|
+
console.error('Error getting object from Azure Blob Storage', { objectName });
|
|
265
|
+
console.error(error);
|
|
266
|
+
throw new Error(`Failed to get object: ${objectName}`);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
async PutObject(objectName, data, contentType, metadata) {
|
|
270
|
+
try {
|
|
271
|
+
const blobClient = this._getBlobClient(objectName);
|
|
272
|
+
const blockBlobClient = blobClient.getBlockBlobClient();
|
|
273
|
+
// Determine content type based on file extension if not provided
|
|
274
|
+
const effectiveContentType = contentType || mime.lookup(objectName) || 'application/octet-stream';
|
|
275
|
+
// Convert buffer to correct type for Azure SDK
|
|
276
|
+
await blockBlobClient.upload(data instanceof Buffer ? data.valueOf() : data, data.length, {
|
|
277
|
+
blobHTTPHeaders: {
|
|
278
|
+
blobContentType: effectiveContentType
|
|
279
|
+
},
|
|
280
|
+
metadata
|
|
281
|
+
});
|
|
282
|
+
return true;
|
|
283
|
+
}
|
|
284
|
+
catch (error) {
|
|
285
|
+
console.error('Error putting object to Azure Blob Storage', { objectName });
|
|
286
|
+
console.error(error);
|
|
287
|
+
return false;
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
async CopyObject(sourceObjectName, destinationObjectName) {
|
|
291
|
+
try {
|
|
292
|
+
const sourceBlobClient = this._getBlobClient(sourceObjectName);
|
|
293
|
+
const destinationBlobClient = this._getBlobClient(destinationObjectName);
|
|
294
|
+
// Generate SAS URL for source blob
|
|
295
|
+
const sasOptions = {
|
|
296
|
+
permissions: storage_blob_1.BlobSASPermissions.parse('r'), // read-only permissions
|
|
297
|
+
expiresOn: new Date(new Date().valueOf() + 10 * 60 * 1000), // 10 minutes
|
|
298
|
+
protocol: storage_blob_1.SASProtocol.Https,
|
|
299
|
+
};
|
|
300
|
+
const sasUrl = await sourceBlobClient.generateSasUrl(sasOptions);
|
|
301
|
+
// Copy the blob
|
|
302
|
+
const copyResult = await destinationBlobClient.syncCopyFromURL(sasUrl);
|
|
303
|
+
return copyResult.copyStatus === 'success';
|
|
304
|
+
}
|
|
305
|
+
catch (error) {
|
|
306
|
+
console.error('Error copying object in Azure Blob Storage', { sourceObjectName, destinationObjectName });
|
|
307
|
+
console.error(error);
|
|
308
|
+
return false;
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
async ObjectExists(objectName) {
|
|
312
|
+
try {
|
|
313
|
+
const blobClient = this._getBlobClient(objectName);
|
|
314
|
+
return await blobClient.exists();
|
|
315
|
+
}
|
|
316
|
+
catch (error) {
|
|
317
|
+
console.error('Error checking if object exists in Azure Blob Storage', { objectName });
|
|
318
|
+
console.error(error);
|
|
319
|
+
return false;
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
async DirectoryExists(directoryPath) {
|
|
323
|
+
try {
|
|
324
|
+
directoryPath = this._normalizeDirectoryPath(directoryPath);
|
|
325
|
+
// Method 1: Check if the directory placeholder exists
|
|
326
|
+
const placeholderExists = await this.ObjectExists(directoryPath);
|
|
327
|
+
if (placeholderExists) {
|
|
328
|
+
return true;
|
|
329
|
+
}
|
|
330
|
+
// Method 2: Check if any objects exist with this prefix
|
|
331
|
+
const listOptions = {
|
|
332
|
+
prefix: directoryPath,
|
|
333
|
+
maxPageSize: 1
|
|
334
|
+
};
|
|
335
|
+
// Get just one blob to check if any exist
|
|
336
|
+
const iterator = this._containerClient.listBlobsFlat(listOptions);
|
|
337
|
+
const response = await iterator.next();
|
|
338
|
+
return !response.done;
|
|
339
|
+
}
|
|
340
|
+
catch (error) {
|
|
341
|
+
console.error('Error checking if directory exists in Azure Blob Storage', { directoryPath });
|
|
342
|
+
console.error(error);
|
|
343
|
+
return false;
|
|
344
|
+
}
|
|
101
345
|
}
|
|
102
346
|
};
|
|
103
347
|
exports.AzureFileStorage = AzureFileStorage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AzureFileStorage.js","sourceRoot":"","sources":["../../src/drivers/AzureFileStorage.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AzureFileStorage.js","sourceRoot":"","sources":["../../src/drivers/AzureFileStorage.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { CreatePreAuthUploadUrlPayload, FileStorageBase, StorageListResult, StorageObjectMetadata } from '../generic/FileStorageBase';
|
|
3
|
+
export declare class BoxFileStorage extends FileStorageBase {
|
|
4
|
+
protected readonly providerName = "Box.com";
|
|
5
|
+
private _client;
|
|
6
|
+
private _rootFolderId;
|
|
7
|
+
constructor();
|
|
8
|
+
/**
|
|
9
|
+
* Find a file or folder by path
|
|
10
|
+
*/
|
|
11
|
+
private _getItemByPath;
|
|
12
|
+
/**
|
|
13
|
+
* Ensures a folder exists at the given path, creating it if necessary
|
|
14
|
+
*/
|
|
15
|
+
private _getOrCreateFolder;
|
|
16
|
+
/**
|
|
17
|
+
* Converts a Box item to StorageObjectMetadata
|
|
18
|
+
*/
|
|
19
|
+
private _convertToMetadata;
|
|
20
|
+
/**
|
|
21
|
+
* Box doesn't support pre-auth upload URLs directly
|
|
22
|
+
*/
|
|
23
|
+
CreatePreAuthUploadUrl(objectName: string): Promise<CreatePreAuthUploadUrlPayload>;
|
|
24
|
+
/**
|
|
25
|
+
* Create a pre-authenticated download URL
|
|
26
|
+
*/
|
|
27
|
+
CreatePreAuthDownloadUrl(objectName: string): Promise<string>;
|
|
28
|
+
/**
|
|
29
|
+
* Move an object
|
|
30
|
+
*/
|
|
31
|
+
MoveObject(oldObjectName: string, newObjectName: string): Promise<boolean>;
|
|
32
|
+
/**
|
|
33
|
+
* Delete an object
|
|
34
|
+
*/
|
|
35
|
+
DeleteObject(objectName: string): Promise<boolean>;
|
|
36
|
+
/**
|
|
37
|
+
* List objects in a directory
|
|
38
|
+
*/
|
|
39
|
+
ListObjects(prefix: string, delimiter?: string): Promise<StorageListResult>;
|
|
40
|
+
/**
|
|
41
|
+
* Create a directory
|
|
42
|
+
*/
|
|
43
|
+
CreateDirectory(directoryPath: string): Promise<boolean>;
|
|
44
|
+
/**
|
|
45
|
+
* Delete a directory
|
|
46
|
+
*/
|
|
47
|
+
DeleteDirectory(directoryPath: string, recursive?: boolean): Promise<boolean>;
|
|
48
|
+
/**
|
|
49
|
+
* Get object metadata
|
|
50
|
+
*/
|
|
51
|
+
GetObjectMetadata(objectName: string): Promise<StorageObjectMetadata>;
|
|
52
|
+
/**
|
|
53
|
+
* Get an object's contents
|
|
54
|
+
*/
|
|
55
|
+
GetObject(objectName: string): Promise<Buffer>;
|
|
56
|
+
/**
|
|
57
|
+
* Upload an object
|
|
58
|
+
*/
|
|
59
|
+
PutObject(objectName: string, data: Buffer, contentType?: string, metadata?: Record<string, string>): Promise<boolean>;
|
|
60
|
+
/**
|
|
61
|
+
* Copy an object
|
|
62
|
+
*/
|
|
63
|
+
CopyObject(sourceObjectName: string, destinationObjectName: string): Promise<boolean>;
|
|
64
|
+
/**
|
|
65
|
+
* Check if an object exists
|
|
66
|
+
*/
|
|
67
|
+
ObjectExists(objectName: string): Promise<boolean>;
|
|
68
|
+
/**
|
|
69
|
+
* Check if a directory exists
|
|
70
|
+
*/
|
|
71
|
+
DirectoryExists(directoryPath: string): Promise<boolean>;
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=BoxFileStorage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BoxFileStorage.d.ts","sourceRoot":"","sources":["../../src/drivers/BoxFileStorage.ts"],"names":[],"mappings":";AAIA,OAAO,EACL,6BAA6B,EAC7B,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,4BAA4B,CAAC;AAEpC,qBACa,cAAe,SAAQ,eAAe;IACjD,SAAS,CAAC,QAAQ,CAAC,YAAY,aAAa;IAC5C,OAAO,CAAC,OAAO,CAAM;IACrB,OAAO,CAAC,aAAa,CAAS;;IAyD9B;;OAEG;YACW,cAAc;IAmD5B;;OAEG;YACW,kBAAkB;IAoChC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAsB1B;;OAEG;IACU,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAM/F;;OAEG;IACU,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmB1E;;OAEG;IACU,UAAU,CAAC,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA2BvF;;OAEG;IACU,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyB/D;;OAEG;IACU,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,SAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAuCrF;;OAEG;IACU,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyBrE;;OAEG;IACU,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,UAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAoCxF;;OAEG;IACU,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAiBlF;;OAEG;IACU,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAkC3D;;OAEG;IACU,SAAS,CACpB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAChC,OAAO,CAAC,OAAO,CAAC;IAuCnB;;OAEG;IACU,UAAU,CAAC,gBAAgB,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA2BlG;;OAEG;IACU,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAS/D;;OAEG;IACU,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAatE"}
|