@jesusacd/mediafire 1.1.0 → 1.3.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.
@@ -57,5 +57,123 @@ export declare class FoldersModule {
57
57
  * @returns Array of folders
58
58
  */
59
59
  getFolders(folderKey?: string, options?: Omit<GetContentOptions, 'contentType'>): Promise<FolderItem[]>;
60
+ /**
61
+ * Get folder information
62
+ *
63
+ * @param folderKey - Folder key
64
+ * @returns Folder info
65
+ *
66
+ * @example
67
+ * ```typescript
68
+ * const info = await client.folders.getInfo('abc123');
69
+ * console.log(`Folder: ${info.name}`);
70
+ * ```
71
+ */
72
+ getInfo(folderKey: string): Promise<{
73
+ folderKey: string;
74
+ name: string;
75
+ description?: string;
76
+ created?: string;
77
+ privacy: string;
78
+ fileCount: number;
79
+ folderCount: number;
80
+ totalSize: number;
81
+ }>;
82
+ /**
83
+ * Create a new folder
84
+ *
85
+ * @param name - Folder name
86
+ * @param parentKey - Parent folder key (default: root)
87
+ * @param options - Create options
88
+ * @returns Created folder info
89
+ *
90
+ * @example
91
+ * ```typescript
92
+ * const folder = await client.folders.create('My New Folder');
93
+ * console.log(`Created: ${folder.folderKey}`);
94
+ * ```
95
+ */
96
+ create(name: string, parentKey?: string, options?: {
97
+ actionOnDuplicate?: 'skip' | 'keep' | 'replace';
98
+ }): Promise<{
99
+ folderKey: string;
100
+ name: string;
101
+ }>;
102
+ /**
103
+ * Delete a folder (move to trash)
104
+ *
105
+ * @param folderKey - Folder key (or comma-separated list)
106
+ * @returns True if successful
107
+ *
108
+ * @example
109
+ * ```typescript
110
+ * await client.folders.delete('abc123');
111
+ * ```
112
+ */
113
+ delete(folderKey: string): Promise<boolean>;
114
+ /**
115
+ * Move a folder to another location
116
+ *
117
+ * @param folderKey - Folder key (or comma-separated list)
118
+ * @param destFolderKey - Destination folder key (default: root)
119
+ * @returns True if successful
120
+ *
121
+ * @example
122
+ * ```typescript
123
+ * await client.folders.move('abc123', 'destFolder');
124
+ * ```
125
+ */
126
+ move(folderKey: string, destFolderKey?: string): Promise<boolean>;
127
+ /**
128
+ * Copy a folder to another location
129
+ *
130
+ * @param folderKey - Folder key
131
+ * @param destFolderKey - Destination folder key (default: root)
132
+ * @returns New folder key
133
+ *
134
+ * @example
135
+ * ```typescript
136
+ * const newKey = await client.folders.copy('abc123', 'destFolder');
137
+ * ```
138
+ */
139
+ copy(folderKey: string, destFolderKey?: string): Promise<string>;
140
+ /**
141
+ * Rename a folder
142
+ *
143
+ * @param folderKey - Folder key
144
+ * @param newName - New folder name
145
+ * @returns True if successful
146
+ *
147
+ * @example
148
+ * ```typescript
149
+ * await client.folders.rename('abc123', 'New Name');
150
+ * ```
151
+ */
152
+ rename(folderKey: string, newName: string): Promise<boolean>;
153
+ /**
154
+ * Set folder privacy
155
+ *
156
+ * @param folderKey - Folder key
157
+ * @param privacy - Privacy setting: 'public' or 'private'
158
+ * @returns True if successful
159
+ *
160
+ * @example
161
+ * ```typescript
162
+ * await client.folders.setPrivacy('abc123', 'public');
163
+ * ```
164
+ */
165
+ setPrivacy(folderKey: string, privacy: 'public' | 'private'): Promise<boolean>;
166
+ /**
167
+ * Permanently delete a folder (cannot be recovered)
168
+ *
169
+ * @param folderKey - Folder key (or comma-separated list)
170
+ * @returns True if successful
171
+ *
172
+ * @example
173
+ * ```typescript
174
+ * await client.folders.purge('abc123');
175
+ * ```
176
+ */
177
+ purge(folderKey: string): Promise<boolean>;
60
178
  }
61
179
  //# sourceMappingURL=folders.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"folders.d.ts","sourceRoot":"","sources":["../../src/modules/folders.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAW,eAAe,EAAE,MAAM,QAAQ,CAAC;AAClD,OAAO,EAAE,aAAa,EAAe,QAAQ,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG5E;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,2DAA2D;IAC3D,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,KAAK,CAAC;IAC1C,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,aAAa;IACZ,OAAO,CAAC,UAAU;gBAAV,UAAU,EAAE,MAAM,eAAe,GAAG,IAAI;IAE5D;;;;;;;;;;;;;;;;;;;OAmBG;IACG,UAAU,CAAC,SAAS,GAAE,MAAkB,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,aAAa,CAAC;IA8GxG;;;;;;OAMG;IACG,QAAQ,CAAC,SAAS,GAAE,MAAkB,EAAE,OAAO,GAAE,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAKxH;;;;;;OAMG;IACG,UAAU,CAAC,SAAS,GAAE,MAAkB,EAAE,OAAO,GAAE,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;CAI7H"}
1
+ {"version":3,"file":"folders.d.ts","sourceRoot":"","sources":["../../src/modules/folders.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAW,eAAe,EAAE,MAAM,QAAQ,CAAC;AAClD,OAAO,EAAE,aAAa,EAAe,QAAQ,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG5E;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,2DAA2D;IAC3D,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,KAAK,CAAC;IAC1C,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,aAAa;IACZ,OAAO,CAAC,UAAU;gBAAV,UAAU,EAAE,MAAM,eAAe,GAAG,IAAI;IAE5D;;;;;;;;;;;;;;;;;;;OAmBG;IACG,UAAU,CAAC,SAAS,GAAE,MAAkB,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,aAAa,CAAC;IA8GxG;;;;;;OAMG;IACG,QAAQ,CAAC,SAAS,GAAE,MAAkB,EAAE,OAAO,GAAE,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAKxH;;;;;;OAMG;IACG,UAAU,CAAC,SAAS,GAAE,MAAkB,EAAE,OAAO,GAAE,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAK5H;;;;;;;;;;;OAWG;IACG,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QACxC,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IAwCF;;;;;;;;;;;;;OAaG;IACG,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QACvD,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;KACjD,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAwBhD;;;;;;;;;;OAUG;IACG,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAajD;;;;;;;;;;;OAWG;IACG,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAcvE;;;;;;;;;;;OAWG;IACG,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAkBtE;;;;;;;;;;;OAWG;IACG,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAclE;;;;;;;;;;;OAWG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC;IAcpF;;;;;;;;;;OAUG;IACG,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAYjD"}
@@ -124,6 +124,204 @@ class FoldersModule {
124
124
  const content = await this.getContent(folderKey, { ...options, contentType: 'folders' });
125
125
  return content.items.filter((item) => item.isFolder);
126
126
  }
127
+ /**
128
+ * Get folder information
129
+ *
130
+ * @param folderKey - Folder key
131
+ * @returns Folder info
132
+ *
133
+ * @example
134
+ * ```typescript
135
+ * const info = await client.folders.getInfo('abc123');
136
+ * console.log(`Folder: ${info.name}`);
137
+ * ```
138
+ */
139
+ async getInfo(folderKey) {
140
+ const session = this.getSession();
141
+ if (!session) {
142
+ throw new Error('Not authenticated. Please call login() first.');
143
+ }
144
+ const response = await (0, api_1.apiCall)('folder/get_info', {
145
+ folder_key: folderKey
146
+ }, session);
147
+ const info = response.folder_info;
148
+ if (!info) {
149
+ throw new Error(`Folder not found: ${folderKey}`);
150
+ }
151
+ return {
152
+ folderKey: info.folderkey,
153
+ name: info.name,
154
+ description: info.description,
155
+ created: info.created,
156
+ privacy: info.privacy || 'private',
157
+ fileCount: parseInt(info.file_count || '0', 10),
158
+ folderCount: parseInt(info.folder_count || '0', 10),
159
+ totalSize: parseInt(info.total_size || '0', 10)
160
+ };
161
+ }
162
+ /**
163
+ * Create a new folder
164
+ *
165
+ * @param name - Folder name
166
+ * @param parentKey - Parent folder key (default: root)
167
+ * @param options - Create options
168
+ * @returns Created folder info
169
+ *
170
+ * @example
171
+ * ```typescript
172
+ * const folder = await client.folders.create('My New Folder');
173
+ * console.log(`Created: ${folder.folderKey}`);
174
+ * ```
175
+ */
176
+ async create(name, parentKey, options) {
177
+ const session = this.getSession();
178
+ if (!session) {
179
+ throw new Error('Not authenticated. Please call login() first.');
180
+ }
181
+ const response = await (0, api_1.apiCall)('folder/create', {
182
+ foldername: name,
183
+ parent_key: parentKey || 'myfiles',
184
+ action_on_duplicate: options?.actionOnDuplicate || 'keep'
185
+ }, session);
186
+ return {
187
+ folderKey: response.folder_key || response.folderkey || '',
188
+ name: response.name || name
189
+ };
190
+ }
191
+ /**
192
+ * Delete a folder (move to trash)
193
+ *
194
+ * @param folderKey - Folder key (or comma-separated list)
195
+ * @returns True if successful
196
+ *
197
+ * @example
198
+ * ```typescript
199
+ * await client.folders.delete('abc123');
200
+ * ```
201
+ */
202
+ async delete(folderKey) {
203
+ const session = this.getSession();
204
+ if (!session) {
205
+ throw new Error('Not authenticated. Please call login() first.');
206
+ }
207
+ await (0, api_1.apiCall)('folder/delete', {
208
+ folder_key: folderKey
209
+ }, session);
210
+ return true;
211
+ }
212
+ /**
213
+ * Move a folder to another location
214
+ *
215
+ * @param folderKey - Folder key (or comma-separated list)
216
+ * @param destFolderKey - Destination folder key (default: root)
217
+ * @returns True if successful
218
+ *
219
+ * @example
220
+ * ```typescript
221
+ * await client.folders.move('abc123', 'destFolder');
222
+ * ```
223
+ */
224
+ async move(folderKey, destFolderKey) {
225
+ const session = this.getSession();
226
+ if (!session) {
227
+ throw new Error('Not authenticated. Please call login() first.');
228
+ }
229
+ await (0, api_1.apiCall)('folder/move', {
230
+ folder_key_src: folderKey,
231
+ folder_key_dst: destFolderKey || 'myfiles'
232
+ }, session);
233
+ return true;
234
+ }
235
+ /**
236
+ * Copy a folder to another location
237
+ *
238
+ * @param folderKey - Folder key
239
+ * @param destFolderKey - Destination folder key (default: root)
240
+ * @returns New folder key
241
+ *
242
+ * @example
243
+ * ```typescript
244
+ * const newKey = await client.folders.copy('abc123', 'destFolder');
245
+ * ```
246
+ */
247
+ async copy(folderKey, destFolderKey) {
248
+ const session = this.getSession();
249
+ if (!session) {
250
+ throw new Error('Not authenticated. Please call login() first.');
251
+ }
252
+ const response = await (0, api_1.apiCall)('folder/copy', {
253
+ folder_key_src: folderKey,
254
+ folder_key_dst: destFolderKey || 'myfiles'
255
+ }, session);
256
+ return response.new_folderkeys?.[0] || '';
257
+ }
258
+ /**
259
+ * Rename a folder
260
+ *
261
+ * @param folderKey - Folder key
262
+ * @param newName - New folder name
263
+ * @returns True if successful
264
+ *
265
+ * @example
266
+ * ```typescript
267
+ * await client.folders.rename('abc123', 'New Name');
268
+ * ```
269
+ */
270
+ async rename(folderKey, newName) {
271
+ const session = this.getSession();
272
+ if (!session) {
273
+ throw new Error('Not authenticated. Please call login() first.');
274
+ }
275
+ await (0, api_1.apiCall)('folder/update', {
276
+ folder_key: folderKey,
277
+ foldername: newName
278
+ }, session);
279
+ return true;
280
+ }
281
+ /**
282
+ * Set folder privacy
283
+ *
284
+ * @param folderKey - Folder key
285
+ * @param privacy - Privacy setting: 'public' or 'private'
286
+ * @returns True if successful
287
+ *
288
+ * @example
289
+ * ```typescript
290
+ * await client.folders.setPrivacy('abc123', 'public');
291
+ * ```
292
+ */
293
+ async setPrivacy(folderKey, privacy) {
294
+ const session = this.getSession();
295
+ if (!session) {
296
+ throw new Error('Not authenticated. Please call login() first.');
297
+ }
298
+ await (0, api_1.apiCall)('folder/update', {
299
+ folder_key: folderKey,
300
+ privacy: privacy
301
+ }, session);
302
+ return true;
303
+ }
304
+ /**
305
+ * Permanently delete a folder (cannot be recovered)
306
+ *
307
+ * @param folderKey - Folder key (or comma-separated list)
308
+ * @returns True if successful
309
+ *
310
+ * @example
311
+ * ```typescript
312
+ * await client.folders.purge('abc123');
313
+ * ```
314
+ */
315
+ async purge(folderKey) {
316
+ const session = this.getSession();
317
+ if (!session) {
318
+ throw new Error('Not authenticated. Please call login() first.');
319
+ }
320
+ await (0, api_1.apiCall)('folder/purge', {
321
+ folder_key: folderKey
322
+ }, session);
323
+ return true;
324
+ }
127
325
  }
128
326
  exports.FoldersModule = FoldersModule;
129
327
  //# sourceMappingURL=folders.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"folders.js","sourceRoot":"","sources":["../../src/modules/folders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"folders.js","sourceRoot":"","sources":["../../src/modules/folders.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,115 @@
1
+ import { InternalSession } from '../api';
2
+ /**
3
+ * Upload result
4
+ */
5
+ export interface UploadResult {
6
+ /** Quick key of uploaded file */
7
+ quickKey: string;
8
+ /** File name */
9
+ filename: string;
10
+ /** File size in bytes */
11
+ size: number;
12
+ /** Upload key (for polling) */
13
+ uploadKey?: string;
14
+ }
15
+ /**
16
+ * Upload options
17
+ */
18
+ export interface UploadOptions {
19
+ /** Destination folder key (default: root) */
20
+ folderKey?: string;
21
+ /** Action on duplicate: 'skip', 'keep', 'replace' */
22
+ actionOnDuplicate?: 'skip' | 'keep' | 'replace';
23
+ /** Path within folder */
24
+ path?: string;
25
+ }
26
+ /**
27
+ * Upload module for file upload operations
28
+ */
29
+ export declare class UploadModule {
30
+ private getSession;
31
+ constructor(getSession: () => InternalSession | null);
32
+ /**
33
+ * Upload a file from disk
34
+ *
35
+ * @param filePath - Path to the file to upload
36
+ * @param options - Upload options
37
+ * @returns Upload result with quick key
38
+ *
39
+ * @example
40
+ * ```typescript
41
+ * const result = await client.upload.file('C:/path/to/file.pdf');
42
+ * console.log(`Uploaded: ${result.quickKey}`);
43
+ * ```
44
+ */
45
+ file(filePath: string, options?: UploadOptions): Promise<UploadResult>;
46
+ /**
47
+ * Upload a file from buffer
48
+ *
49
+ * @param buffer - File content as buffer
50
+ * @param filename - File name with extension
51
+ * @param options - Upload options
52
+ * @returns Upload result with quick key
53
+ *
54
+ * @example
55
+ * ```typescript
56
+ * const buffer = Buffer.from('Hello World');
57
+ * const result = await client.upload.buffer(buffer, 'hello.txt');
58
+ * console.log(`Uploaded: ${result.quickKey}`);
59
+ * ```
60
+ */
61
+ buffer(buffer: Buffer, filename: string, options?: UploadOptions & {
62
+ hash?: string;
63
+ }): Promise<UploadResult>;
64
+ /**
65
+ * Poll upload status until complete
66
+ *
67
+ * @param uploadKey - Upload key from simple upload
68
+ * @returns Upload result
69
+ */
70
+ pollUpload(uploadKey: string, maxAttempts?: number): Promise<{
71
+ quickKey: string;
72
+ filename?: string;
73
+ size?: number;
74
+ }>;
75
+ /**
76
+ * Check if a file can be instant uploaded (already exists on MediaFire)
77
+ *
78
+ * @param hash - SHA256 hash of the file
79
+ * @param filename - File name
80
+ * @param size - File size in bytes
81
+ * @param folderKey - Destination folder key
82
+ * @returns Check result
83
+ *
84
+ * @example
85
+ * ```typescript
86
+ * const check = await client.upload.check(hash, 'file.pdf', 1024);
87
+ * if (check.hashExists) {
88
+ * console.log('File can be instant uploaded!');
89
+ * }
90
+ * ```
91
+ */
92
+ check(hash: string, filename: string, size: number, folderKey?: string): Promise<{
93
+ hashExists: boolean;
94
+ inAccount: boolean;
95
+ inFolder: boolean;
96
+ duplicateQuickKey?: string;
97
+ }>;
98
+ /**
99
+ * Instant upload a file (if it already exists on MediaFire servers)
100
+ *
101
+ * @param hash - SHA256 hash of the file
102
+ * @param filename - File name
103
+ * @param size - File size in bytes
104
+ * @param folderKey - Destination folder key
105
+ * @returns Upload result
106
+ *
107
+ * @example
108
+ * ```typescript
109
+ * const result = await client.upload.instant(hash, 'file.pdf', 1024);
110
+ * console.log(`Instant uploaded: ${result.quickKey}`);
111
+ * ```
112
+ */
113
+ instant(hash: string, filename: string, size: number, folderKey?: string): Promise<UploadResult>;
114
+ }
115
+ //# sourceMappingURL=upload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../src/modules/upload.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,eAAe,EAAW,MAAM,QAAQ,CAAC;AAOlD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,iCAAiC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,+BAA+B;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAChD,yBAAyB;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,qBAAa,YAAY;IACX,OAAO,CAAC,UAAU;gBAAV,UAAU,EAAE,MAAM,eAAe,GAAG,IAAI;IAE5D;;;;;;;;;;;;OAYG;IACG,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,YAAY,CAAC;IAiBhF;;;;;;;;;;;;;;OAcG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,aAAa,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,YAAY,CAAC;IAwFtH;;;;;OAKG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,GAAE,MAAW,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IA6C9H;;;;;;;;;;;;;;;;OAgBG;IACG,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QACrF,UAAU,EAAE,OAAO,CAAC;QACpB,SAAS,EAAE,OAAO,CAAC;QACnB,QAAQ,EAAE,OAAO,CAAC;QAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;IA4BF;;;;;;;;;;;;;;OAcG;IACG,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;CA4BvG"}