@depup/firebase__storage-compat 0.4.1-depup.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/README.md +31 -0
- package/changes.json +10 -0
- package/dist/esm/index.esm.js +398 -0
- package/dist/esm/index.esm.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/src/index.d.ts +49 -0
- package/dist/esm/src/list.d.ts +29 -0
- package/dist/esm/src/reference.d.ts +121 -0
- package/dist/esm/src/service.d.ts +46 -0
- package/dist/esm/src/task.d.ts +54 -0
- package/dist/esm/src/tasksnapshot.d.ts +31 -0
- package/dist/esm/test/integration/integration.test.d.ts +23 -0
- package/dist/esm/test/setup.d.ts +17 -0
- package/dist/esm/test/unit/index.test.d.ts +22 -0
- package/dist/esm/test/unit/reference.test.d.ts +17 -0
- package/dist/esm/test/unit/service.test.d.ts +17 -0
- package/dist/esm/test/utils.d.ts +22 -0
- package/dist/index.cjs.js +406 -0
- package/dist/index.cjs.js.map +1 -0
- package/dist/src/index.d.ts +71 -0
- package/dist/src/list.d.ts +29 -0
- package/dist/src/reference.d.ts +121 -0
- package/dist/src/service.d.ts +46 -0
- package/dist/src/task.d.ts +54 -0
- package/dist/src/tasksnapshot.d.ts +31 -0
- package/dist/test/integration/integration.test.d.ts +23 -0
- package/dist/test/setup.d.ts +17 -0
- package/dist/test/unit/index.test.d.ts +22 -0
- package/dist/test/unit/reference.test.d.ts +17 -0
- package/dist/test/unit/service.test.d.ts +17 -0
- package/dist/test/utils.d.ts +22 -0
- package/package.json +89 -0
|
@@ -0,0 +1,406 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var firebase = require('@firebase/app-compat');
|
|
6
|
+
var storage = require('@firebase/storage');
|
|
7
|
+
var component = require('@firebase/component');
|
|
8
|
+
|
|
9
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
10
|
+
|
|
11
|
+
var firebase__default = /*#__PURE__*/_interopDefaultLegacy(firebase);
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* @license
|
|
15
|
+
* Copyright 2020 Google LLC
|
|
16
|
+
*
|
|
17
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
18
|
+
* you may not use this file except in compliance with the License.
|
|
19
|
+
* You may obtain a copy of the License at
|
|
20
|
+
*
|
|
21
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
22
|
+
*
|
|
23
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
24
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
25
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
26
|
+
* See the License for the specific language governing permissions and
|
|
27
|
+
* limitations under the License.
|
|
28
|
+
*/
|
|
29
|
+
class UploadTaskSnapshotCompat {
|
|
30
|
+
constructor(_delegate, task, ref) {
|
|
31
|
+
this._delegate = _delegate;
|
|
32
|
+
this.task = task;
|
|
33
|
+
this.ref = ref;
|
|
34
|
+
}
|
|
35
|
+
get bytesTransferred() {
|
|
36
|
+
return this._delegate.bytesTransferred;
|
|
37
|
+
}
|
|
38
|
+
get metadata() {
|
|
39
|
+
return this._delegate.metadata;
|
|
40
|
+
}
|
|
41
|
+
get state() {
|
|
42
|
+
return this._delegate.state;
|
|
43
|
+
}
|
|
44
|
+
get totalBytes() {
|
|
45
|
+
return this._delegate.totalBytes;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* @license
|
|
51
|
+
* Copyright 2020 Google LLC
|
|
52
|
+
*
|
|
53
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
54
|
+
* you may not use this file except in compliance with the License.
|
|
55
|
+
* You may obtain a copy of the License at
|
|
56
|
+
*
|
|
57
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
58
|
+
*
|
|
59
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
60
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
61
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
62
|
+
* See the License for the specific language governing permissions and
|
|
63
|
+
* limitations under the License.
|
|
64
|
+
*/
|
|
65
|
+
class UploadTaskCompat {
|
|
66
|
+
constructor(_delegate, _ref) {
|
|
67
|
+
this._delegate = _delegate;
|
|
68
|
+
this._ref = _ref;
|
|
69
|
+
this.cancel = this._delegate.cancel.bind(this._delegate);
|
|
70
|
+
this.catch = this._delegate.catch.bind(this._delegate);
|
|
71
|
+
this.pause = this._delegate.pause.bind(this._delegate);
|
|
72
|
+
this.resume = this._delegate.resume.bind(this._delegate);
|
|
73
|
+
}
|
|
74
|
+
get snapshot() {
|
|
75
|
+
return new UploadTaskSnapshotCompat(this._delegate.snapshot, this, this._ref);
|
|
76
|
+
}
|
|
77
|
+
then(onFulfilled, onRejected) {
|
|
78
|
+
return this._delegate.then(snapshot => {
|
|
79
|
+
if (onFulfilled) {
|
|
80
|
+
return onFulfilled(new UploadTaskSnapshotCompat(snapshot, this, this._ref));
|
|
81
|
+
}
|
|
82
|
+
}, onRejected);
|
|
83
|
+
}
|
|
84
|
+
on(type, nextOrObserver, error, completed) {
|
|
85
|
+
let wrappedNextOrObserver = undefined;
|
|
86
|
+
if (!!nextOrObserver) {
|
|
87
|
+
if (typeof nextOrObserver === 'function') {
|
|
88
|
+
wrappedNextOrObserver = (taskSnapshot) => nextOrObserver(new UploadTaskSnapshotCompat(taskSnapshot, this, this._ref));
|
|
89
|
+
}
|
|
90
|
+
else {
|
|
91
|
+
wrappedNextOrObserver = {
|
|
92
|
+
next: !!nextOrObserver.next
|
|
93
|
+
? (taskSnapshot) => nextOrObserver.next(new UploadTaskSnapshotCompat(taskSnapshot, this, this._ref))
|
|
94
|
+
: undefined,
|
|
95
|
+
complete: nextOrObserver.complete || undefined,
|
|
96
|
+
error: nextOrObserver.error || undefined
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return this._delegate.on(type, wrappedNextOrObserver, error || undefined, completed || undefined);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
class ListResultCompat {
|
|
105
|
+
constructor(_delegate, _service) {
|
|
106
|
+
this._delegate = _delegate;
|
|
107
|
+
this._service = _service;
|
|
108
|
+
}
|
|
109
|
+
get prefixes() {
|
|
110
|
+
return this._delegate.prefixes.map(ref => new ReferenceCompat(ref, this._service));
|
|
111
|
+
}
|
|
112
|
+
get items() {
|
|
113
|
+
return this._delegate.items.map(ref => new ReferenceCompat(ref, this._service));
|
|
114
|
+
}
|
|
115
|
+
get nextPageToken() {
|
|
116
|
+
return this._delegate.nextPageToken || null;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* @license
|
|
122
|
+
* Copyright 2020 Google LLC
|
|
123
|
+
*
|
|
124
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
125
|
+
* you may not use this file except in compliance with the License.
|
|
126
|
+
* You may obtain a copy of the License at
|
|
127
|
+
*
|
|
128
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
129
|
+
*
|
|
130
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
131
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
132
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
133
|
+
* See the License for the specific language governing permissions and
|
|
134
|
+
* limitations under the License.
|
|
135
|
+
*/
|
|
136
|
+
class ReferenceCompat {
|
|
137
|
+
constructor(_delegate, storage) {
|
|
138
|
+
this._delegate = _delegate;
|
|
139
|
+
this.storage = storage;
|
|
140
|
+
}
|
|
141
|
+
get name() {
|
|
142
|
+
return this._delegate.name;
|
|
143
|
+
}
|
|
144
|
+
get bucket() {
|
|
145
|
+
return this._delegate.bucket;
|
|
146
|
+
}
|
|
147
|
+
get fullPath() {
|
|
148
|
+
return this._delegate.fullPath;
|
|
149
|
+
}
|
|
150
|
+
toString() {
|
|
151
|
+
return this._delegate.toString();
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* @returns A reference to the object obtained by
|
|
155
|
+
* appending childPath, removing any duplicate, beginning, or trailing
|
|
156
|
+
* slashes.
|
|
157
|
+
*/
|
|
158
|
+
child(childPath) {
|
|
159
|
+
const reference = storage._getChild(this._delegate, childPath);
|
|
160
|
+
return new ReferenceCompat(reference, this.storage);
|
|
161
|
+
}
|
|
162
|
+
get root() {
|
|
163
|
+
return new ReferenceCompat(this._delegate.root, this.storage);
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* @returns A reference to the parent of the
|
|
167
|
+
* current object, or null if the current object is the root.
|
|
168
|
+
*/
|
|
169
|
+
get parent() {
|
|
170
|
+
const reference = this._delegate.parent;
|
|
171
|
+
if (reference == null) {
|
|
172
|
+
return null;
|
|
173
|
+
}
|
|
174
|
+
return new ReferenceCompat(reference, this.storage);
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Uploads a blob to this object's location.
|
|
178
|
+
* @param data - The blob to upload.
|
|
179
|
+
* @returns An UploadTask that lets you control and
|
|
180
|
+
* observe the upload.
|
|
181
|
+
*/
|
|
182
|
+
put(data, metadata) {
|
|
183
|
+
this._throwIfRoot('put');
|
|
184
|
+
return new UploadTaskCompat(storage.uploadBytesResumable(this._delegate, data, metadata), this);
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Uploads a string to this object's location.
|
|
188
|
+
* @param value - The string to upload.
|
|
189
|
+
* @param format - The format of the string to upload.
|
|
190
|
+
* @returns An UploadTask that lets you control and
|
|
191
|
+
* observe the upload.
|
|
192
|
+
*/
|
|
193
|
+
putString(value, format = storage.StringFormat.RAW, metadata) {
|
|
194
|
+
this._throwIfRoot('putString');
|
|
195
|
+
const data = storage._dataFromString(format, value);
|
|
196
|
+
const metadataClone = { ...metadata };
|
|
197
|
+
if (metadataClone['contentType'] == null && data.contentType != null) {
|
|
198
|
+
metadataClone['contentType'] = data.contentType;
|
|
199
|
+
}
|
|
200
|
+
return new UploadTaskCompat(new storage._UploadTask(this._delegate, new storage._FbsBlob(data.data, true), metadataClone), this);
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* List all items (files) and prefixes (folders) under this storage reference.
|
|
204
|
+
*
|
|
205
|
+
* This is a helper method for calling list() repeatedly until there are
|
|
206
|
+
* no more results. The default pagination size is 1000.
|
|
207
|
+
*
|
|
208
|
+
* Note: The results may not be consistent if objects are changed while this
|
|
209
|
+
* operation is running.
|
|
210
|
+
*
|
|
211
|
+
* Warning: listAll may potentially consume too many resources if there are
|
|
212
|
+
* too many results.
|
|
213
|
+
*
|
|
214
|
+
* @returns A Promise that resolves with all the items and prefixes under
|
|
215
|
+
* the current storage reference. `prefixes` contains references to
|
|
216
|
+
* sub-directories and `items` contains references to objects in this
|
|
217
|
+
* folder. `nextPageToken` is never returned.
|
|
218
|
+
*/
|
|
219
|
+
listAll() {
|
|
220
|
+
return storage.listAll(this._delegate).then(r => new ListResultCompat(r, this.storage));
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* List items (files) and prefixes (folders) under this storage reference.
|
|
224
|
+
*
|
|
225
|
+
* List API is only available for Firebase Rules Version 2.
|
|
226
|
+
*
|
|
227
|
+
* GCS is a key-blob store. Firebase Storage imposes the semantic of '/'
|
|
228
|
+
* delimited folder structure. Refer to GCS's List API if you want to learn more.
|
|
229
|
+
*
|
|
230
|
+
* To adhere to Firebase Rules's Semantics, Firebase Storage does not
|
|
231
|
+
* support objects whose paths end with "/" or contain two consecutive
|
|
232
|
+
* "/"s. Firebase Storage List API will filter these unsupported objects.
|
|
233
|
+
* list() may fail if there are too many unsupported objects in the bucket.
|
|
234
|
+
*
|
|
235
|
+
* @param options - See ListOptions for details.
|
|
236
|
+
* @returns A Promise that resolves with the items and prefixes.
|
|
237
|
+
* `prefixes` contains references to sub-folders and `items`
|
|
238
|
+
* contains references to objects in this folder. `nextPageToken`
|
|
239
|
+
* can be used to get the rest of the results.
|
|
240
|
+
*/
|
|
241
|
+
list(options) {
|
|
242
|
+
return storage.list(this._delegate, options || undefined).then(r => new ListResultCompat(r, this.storage));
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* A `Promise` that resolves with the metadata for this object. If this
|
|
246
|
+
* object doesn't exist or metadata cannot be retrieved, the promise is
|
|
247
|
+
* rejected.
|
|
248
|
+
*/
|
|
249
|
+
getMetadata() {
|
|
250
|
+
return storage.getMetadata(this._delegate);
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Updates the metadata for this object.
|
|
254
|
+
* @param metadata - The new metadata for the object.
|
|
255
|
+
* Only values that have been explicitly set will be changed. Explicitly
|
|
256
|
+
* setting a value to null will remove the metadata.
|
|
257
|
+
* @returns A `Promise` that resolves
|
|
258
|
+
* with the new metadata for this object.
|
|
259
|
+
* @see firebaseStorage.Reference.prototype.getMetadata
|
|
260
|
+
*/
|
|
261
|
+
updateMetadata(metadata) {
|
|
262
|
+
return storage.updateMetadata(this._delegate, metadata);
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* @returns A `Promise` that resolves with the download
|
|
266
|
+
* URL for this object.
|
|
267
|
+
*/
|
|
268
|
+
getDownloadURL() {
|
|
269
|
+
return storage.getDownloadURL(this._delegate);
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Deletes the object at this location.
|
|
273
|
+
* @returns A `Promise` that resolves if the deletion succeeds.
|
|
274
|
+
*/
|
|
275
|
+
delete() {
|
|
276
|
+
this._throwIfRoot('delete');
|
|
277
|
+
return storage.deleteObject(this._delegate);
|
|
278
|
+
}
|
|
279
|
+
_throwIfRoot(name) {
|
|
280
|
+
if (this._delegate._location.path === '') {
|
|
281
|
+
throw storage._invalidRootOperation(name);
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
/**
|
|
287
|
+
* @license
|
|
288
|
+
* Copyright 2020 Google LLC
|
|
289
|
+
*
|
|
290
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
291
|
+
* you may not use this file except in compliance with the License.
|
|
292
|
+
* You may obtain a copy of the License at
|
|
293
|
+
*
|
|
294
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
295
|
+
*
|
|
296
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
297
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
298
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
299
|
+
* See the License for the specific language governing permissions and
|
|
300
|
+
* limitations under the License.
|
|
301
|
+
*/
|
|
302
|
+
/**
|
|
303
|
+
* A service that provides firebaseStorage.Reference instances.
|
|
304
|
+
* @param opt_url gs:// url to a custom Storage Bucket
|
|
305
|
+
*/
|
|
306
|
+
class StorageServiceCompat {
|
|
307
|
+
constructor(app, _delegate) {
|
|
308
|
+
this.app = app;
|
|
309
|
+
this._delegate = _delegate;
|
|
310
|
+
}
|
|
311
|
+
get maxOperationRetryTime() {
|
|
312
|
+
return this._delegate.maxOperationRetryTime;
|
|
313
|
+
}
|
|
314
|
+
get maxUploadRetryTime() {
|
|
315
|
+
return this._delegate.maxUploadRetryTime;
|
|
316
|
+
}
|
|
317
|
+
/**
|
|
318
|
+
* Returns a firebaseStorage.Reference for the given path in the default
|
|
319
|
+
* bucket.
|
|
320
|
+
*/
|
|
321
|
+
ref(path) {
|
|
322
|
+
if (isUrl(path)) {
|
|
323
|
+
throw storage._invalidArgument('ref() expected a child path but got a URL, use refFromURL instead.');
|
|
324
|
+
}
|
|
325
|
+
return new ReferenceCompat(storage.ref(this._delegate, path), this);
|
|
326
|
+
}
|
|
327
|
+
/**
|
|
328
|
+
* Returns a firebaseStorage.Reference object for the given absolute URL,
|
|
329
|
+
* which must be a gs:// or http[s]:// URL.
|
|
330
|
+
*/
|
|
331
|
+
refFromURL(url) {
|
|
332
|
+
if (!isUrl(url)) {
|
|
333
|
+
throw storage._invalidArgument('refFromURL() expected a full URL but got a child path, use ref() instead.');
|
|
334
|
+
}
|
|
335
|
+
try {
|
|
336
|
+
storage._Location.makeFromUrl(url, this._delegate.host);
|
|
337
|
+
}
|
|
338
|
+
catch (e) {
|
|
339
|
+
throw storage._invalidArgument('refFromUrl() expected a valid full URL but got an invalid one.');
|
|
340
|
+
}
|
|
341
|
+
return new ReferenceCompat(storage.ref(this._delegate, url), this);
|
|
342
|
+
}
|
|
343
|
+
setMaxUploadRetryTime(time) {
|
|
344
|
+
this._delegate.maxUploadRetryTime = time;
|
|
345
|
+
}
|
|
346
|
+
setMaxOperationRetryTime(time) {
|
|
347
|
+
this._delegate.maxOperationRetryTime = time;
|
|
348
|
+
}
|
|
349
|
+
useEmulator(host, port, options = {}) {
|
|
350
|
+
storage.connectStorageEmulator(this._delegate, host, port, options);
|
|
351
|
+
}
|
|
352
|
+
}
|
|
353
|
+
function isUrl(path) {
|
|
354
|
+
return /^[A-Za-z]+:\/\//.test(path);
|
|
355
|
+
}
|
|
356
|
+
|
|
357
|
+
const name = "@firebase/storage-compat";
|
|
358
|
+
const version = "0.4.1";
|
|
359
|
+
|
|
360
|
+
/**
|
|
361
|
+
* @license
|
|
362
|
+
* Copyright 2020 Google LLC
|
|
363
|
+
*
|
|
364
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
365
|
+
* you may not use this file except in compliance with the License.
|
|
366
|
+
* You may obtain a copy of the License at
|
|
367
|
+
*
|
|
368
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
369
|
+
*
|
|
370
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
371
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
372
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
373
|
+
* See the License for the specific language governing permissions and
|
|
374
|
+
* limitations under the License.
|
|
375
|
+
*/
|
|
376
|
+
/**
|
|
377
|
+
* Type constant for Firebase Storage.
|
|
378
|
+
*/
|
|
379
|
+
const STORAGE_TYPE = 'storage-compat';
|
|
380
|
+
function factory(container, { instanceIdentifier: url }) {
|
|
381
|
+
// Dependencies
|
|
382
|
+
const app = container.getProvider('app-compat').getImmediate();
|
|
383
|
+
const storageExp = container
|
|
384
|
+
.getProvider('storage')
|
|
385
|
+
.getImmediate({ identifier: url });
|
|
386
|
+
const storageServiceCompat = new StorageServiceCompat(app, storageExp);
|
|
387
|
+
return storageServiceCompat;
|
|
388
|
+
}
|
|
389
|
+
function registerStorage(instance) {
|
|
390
|
+
const namespaceExports = {
|
|
391
|
+
// no-inline
|
|
392
|
+
TaskState: storage._TaskState,
|
|
393
|
+
TaskEvent: storage._TaskEvent,
|
|
394
|
+
StringFormat: storage.StringFormat,
|
|
395
|
+
Storage: StorageServiceCompat,
|
|
396
|
+
Reference: ReferenceCompat
|
|
397
|
+
};
|
|
398
|
+
instance.INTERNAL.registerComponent(new component.Component(STORAGE_TYPE, factory, "PUBLIC" /* ComponentType.PUBLIC */)
|
|
399
|
+
.setServiceProps(namespaceExports)
|
|
400
|
+
.setMultipleInstances(true));
|
|
401
|
+
instance.registerVersion(name, version);
|
|
402
|
+
}
|
|
403
|
+
registerStorage(firebase__default["default"]);
|
|
404
|
+
|
|
405
|
+
exports.registerStorage = registerStorage;
|
|
406
|
+
//# sourceMappingURL=index.cjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../src/tasksnapshot.ts","../src/task.ts","../src/list.ts","../src/reference.ts","../src/service.ts","../src/index.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2020 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { UploadTaskSnapshot } from '@firebase/storage';\nimport { ReferenceCompat } from './reference';\nimport { UploadTaskCompat } from './task';\nimport * as types from '@firebase/storage-types';\nimport { Compat } from '@firebase/util';\n\nexport class UploadTaskSnapshotCompat\n implements types.UploadTaskSnapshot, Compat<UploadTaskSnapshot>\n{\n constructor(\n readonly _delegate: UploadTaskSnapshot,\n readonly task: UploadTaskCompat,\n readonly ref: ReferenceCompat\n ) {}\n\n get bytesTransferred(): number {\n return this._delegate.bytesTransferred;\n }\n get metadata(): types.FullMetadata {\n return this._delegate.metadata as types.FullMetadata;\n }\n get state(): string {\n return this._delegate.state;\n }\n get totalBytes(): number {\n return this._delegate.totalBytes;\n }\n}\n","/**\n * @license\n * Copyright 2020 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n UploadTask,\n StorageError,\n UploadTaskSnapshot,\n TaskEvent,\n StorageObserver\n} from '@firebase/storage';\nimport { UploadTaskSnapshotCompat } from './tasksnapshot';\nimport { ReferenceCompat } from './reference';\nimport * as types from '@firebase/storage-types';\nimport { Compat } from '@firebase/util';\n\nexport class UploadTaskCompat implements types.UploadTask, Compat<UploadTask> {\n constructor(\n readonly _delegate: UploadTask,\n private readonly _ref: ReferenceCompat\n ) {}\n\n get snapshot(): UploadTaskSnapshotCompat {\n return new UploadTaskSnapshotCompat(\n this._delegate.snapshot,\n this,\n this._ref\n );\n }\n\n cancel = this._delegate.cancel.bind(this._delegate);\n catch = this._delegate.catch.bind(this._delegate);\n pause = this._delegate.pause.bind(this._delegate);\n resume = this._delegate.resume.bind(this._delegate);\n\n then(\n onFulfilled?: ((a: UploadTaskSnapshotCompat) => unknown) | null,\n onRejected?: ((a: StorageError) => unknown) | null\n ): Promise<unknown> {\n return this._delegate.then(snapshot => {\n if (onFulfilled) {\n return onFulfilled(\n new UploadTaskSnapshotCompat(snapshot, this, this._ref)\n );\n }\n }, onRejected);\n }\n\n on(\n type: TaskEvent,\n nextOrObserver?:\n | types.StorageObserver<UploadTaskSnapshotCompat>\n | null\n | ((a: UploadTaskSnapshotCompat) => unknown),\n error?: ((error: StorageError) => void) | null,\n completed?: () => void | null\n ): Unsubscribe | Subscribe<UploadTaskSnapshotCompat> {\n let wrappedNextOrObserver:\n | StorageObserver<UploadTaskSnapshot>\n | undefined\n | ((a: UploadTaskSnapshot) => unknown) = undefined;\n if (!!nextOrObserver) {\n if (typeof nextOrObserver === 'function') {\n wrappedNextOrObserver = (taskSnapshot: UploadTaskSnapshot) =>\n nextOrObserver(\n new UploadTaskSnapshotCompat(taskSnapshot, this, this._ref)\n );\n } else {\n wrappedNextOrObserver = {\n next: !!nextOrObserver.next\n ? (taskSnapshot: UploadTaskSnapshot) =>\n nextOrObserver.next!(\n new UploadTaskSnapshotCompat(taskSnapshot, this, this._ref)\n )\n : undefined,\n complete: nextOrObserver.complete || undefined,\n error: nextOrObserver.error || undefined\n };\n }\n }\n return this._delegate.on(\n type,\n wrappedNextOrObserver,\n error || undefined,\n completed || undefined\n );\n }\n}\n\n/**\n * Subscribes to an event stream.\n */\nexport type Subscribe<T> = (\n next?: NextFn<T> | StorageObserver<T>,\n error?: ErrorFn,\n complete?: CompleteFn\n) => Unsubscribe;\n\n/**\n * Unsubscribes from a stream.\n */\nexport type Unsubscribe = () => void;\n\n/**\n * Function that is called once for each value in a stream of values.\n */\nexport type NextFn<T> = (value: T) => void;\n\n/**\n * A function that is called with a `FirebaseStorageError`\n * if the event stream ends due to an error.\n */\nexport type ErrorFn = (error: StorageError) => void;\n\n/**\n * A function that is called if the event stream ends normally.\n */\nexport type CompleteFn = () => void;\n","/**\n * @license\n * Copyright 2020 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { ListResult } from '@firebase/storage';\nimport * as types from '@firebase/storage-types';\nimport { ReferenceCompat } from './reference';\nimport { StorageServiceCompat } from './service';\nimport { Compat } from '@firebase/util';\n\nexport class ListResultCompat implements types.ListResult, Compat<ListResult> {\n constructor(\n readonly _delegate: ListResult,\n private readonly _service: StorageServiceCompat\n ) {}\n\n get prefixes(): ReferenceCompat[] {\n return this._delegate.prefixes.map(\n ref => new ReferenceCompat(ref, this._service)\n );\n }\n get items(): ReferenceCompat[] {\n return this._delegate.items.map(\n ref => new ReferenceCompat(ref, this._service)\n );\n }\n get nextPageToken(): string | null {\n return this._delegate.nextPageToken || null;\n }\n}\n","/**\n * @license\n * Copyright 2020 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n StorageReference,\n uploadBytesResumable,\n list,\n listAll,\n getDownloadURL,\n getMetadata,\n updateMetadata,\n deleteObject,\n UploadTask,\n StringFormat,\n UploadMetadata,\n FullMetadata,\n SettableMetadata,\n _UploadTask,\n _getChild,\n _Reference,\n _FbsBlob,\n _dataFromString,\n _invalidRootOperation\n} from '@firebase/storage';\n\nimport { UploadTaskCompat } from './task';\nimport { ListResultCompat } from './list';\nimport { StorageServiceCompat } from './service';\n\nimport * as types from '@firebase/storage-types';\nimport { Compat } from '@firebase/util';\n\nexport class ReferenceCompat\n implements types.Reference, Compat<StorageReference>\n{\n constructor(\n readonly _delegate: StorageReference,\n public storage: StorageServiceCompat\n ) {}\n\n get name(): string {\n return this._delegate.name;\n }\n\n get bucket(): string {\n return this._delegate.bucket;\n }\n\n get fullPath(): string {\n return this._delegate.fullPath;\n }\n\n toString(): string {\n return this._delegate.toString();\n }\n\n /**\n * @returns A reference to the object obtained by\n * appending childPath, removing any duplicate, beginning, or trailing\n * slashes.\n */\n child(childPath: string): types.Reference {\n const reference = _getChild(this._delegate, childPath);\n return new ReferenceCompat(reference, this.storage);\n }\n\n get root(): types.Reference {\n return new ReferenceCompat(this._delegate.root, this.storage);\n }\n\n /**\n * @returns A reference to the parent of the\n * current object, or null if the current object is the root.\n */\n get parent(): types.Reference | null {\n const reference = this._delegate.parent;\n if (reference == null) {\n return null;\n }\n return new ReferenceCompat(reference, this.storage);\n }\n\n /**\n * Uploads a blob to this object's location.\n * @param data - The blob to upload.\n * @returns An UploadTask that lets you control and\n * observe the upload.\n */\n put(\n data: Blob | Uint8Array | ArrayBuffer,\n metadata?: types.FullMetadata\n ): types.UploadTask {\n this._throwIfRoot('put');\n return new UploadTaskCompat(\n uploadBytesResumable(this._delegate, data, metadata as UploadMetadata),\n this\n );\n }\n\n /**\n * Uploads a string to this object's location.\n * @param value - The string to upload.\n * @param format - The format of the string to upload.\n * @returns An UploadTask that lets you control and\n * observe the upload.\n */\n putString(\n value: string,\n format: StringFormat = StringFormat.RAW,\n metadata?: types.UploadMetadata\n ): types.UploadTask {\n this._throwIfRoot('putString');\n const data = _dataFromString(format, value);\n const metadataClone = { ...metadata };\n if (metadataClone['contentType'] == null && data.contentType != null) {\n metadataClone['contentType'] = data.contentType;\n }\n return new UploadTaskCompat(\n new _UploadTask(\n this._delegate as _Reference,\n new _FbsBlob(data.data, true),\n metadataClone as FullMetadata & { [k: string]: string }\n ) as UploadTask,\n this\n );\n }\n\n /**\n * List all items (files) and prefixes (folders) under this storage reference.\n *\n * This is a helper method for calling list() repeatedly until there are\n * no more results. The default pagination size is 1000.\n *\n * Note: The results may not be consistent if objects are changed while this\n * operation is running.\n *\n * Warning: listAll may potentially consume too many resources if there are\n * too many results.\n *\n * @returns A Promise that resolves with all the items and prefixes under\n * the current storage reference. `prefixes` contains references to\n * sub-directories and `items` contains references to objects in this\n * folder. `nextPageToken` is never returned.\n */\n listAll(): Promise<types.ListResult> {\n return listAll(this._delegate).then(\n r => new ListResultCompat(r, this.storage)\n );\n }\n\n /**\n * List items (files) and prefixes (folders) under this storage reference.\n *\n * List API is only available for Firebase Rules Version 2.\n *\n * GCS is a key-blob store. Firebase Storage imposes the semantic of '/'\n * delimited folder structure. Refer to GCS's List API if you want to learn more.\n *\n * To adhere to Firebase Rules's Semantics, Firebase Storage does not\n * support objects whose paths end with \"/\" or contain two consecutive\n * \"/\"s. Firebase Storage List API will filter these unsupported objects.\n * list() may fail if there are too many unsupported objects in the bucket.\n *\n * @param options - See ListOptions for details.\n * @returns A Promise that resolves with the items and prefixes.\n * `prefixes` contains references to sub-folders and `items`\n * contains references to objects in this folder. `nextPageToken`\n * can be used to get the rest of the results.\n */\n list(options?: types.ListOptions | null): Promise<types.ListResult> {\n return list(this._delegate, options || undefined).then(\n r => new ListResultCompat(r, this.storage)\n );\n }\n\n /**\n * A `Promise` that resolves with the metadata for this object. If this\n * object doesn't exist or metadata cannot be retrieved, the promise is\n * rejected.\n */\n getMetadata(): Promise<types.FullMetadata> {\n return getMetadata(this._delegate) as Promise<types.FullMetadata>;\n }\n\n /**\n * Updates the metadata for this object.\n * @param metadata - The new metadata for the object.\n * Only values that have been explicitly set will be changed. Explicitly\n * setting a value to null will remove the metadata.\n * @returns A `Promise` that resolves\n * with the new metadata for this object.\n * @see firebaseStorage.Reference.prototype.getMetadata\n */\n updateMetadata(\n metadata: types.SettableMetadata\n ): Promise<types.FullMetadata> {\n return updateMetadata(\n this._delegate,\n metadata as SettableMetadata\n ) as Promise<types.FullMetadata>;\n }\n\n /**\n * @returns A `Promise` that resolves with the download\n * URL for this object.\n */\n getDownloadURL(): Promise<string> {\n return getDownloadURL(this._delegate);\n }\n\n /**\n * Deletes the object at this location.\n * @returns A `Promise` that resolves if the deletion succeeds.\n */\n delete(): Promise<void> {\n this._throwIfRoot('delete');\n return deleteObject(this._delegate);\n }\n\n private _throwIfRoot(name: string): void {\n if ((this._delegate as _Reference)._location.path === '') {\n throw _invalidRootOperation(name);\n }\n }\n}\n","/**\n * @license\n * Copyright 2020 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport * as types from '@firebase/storage-types';\nimport { FirebaseApp } from '@firebase/app-types';\n\nimport {\n ref,\n connectStorageEmulator,\n FirebaseStorage,\n _Location,\n _invalidArgument,\n _FirebaseStorageImpl\n} from '@firebase/storage';\nimport { ReferenceCompat } from './reference';\nimport { Compat, EmulatorMockTokenOptions } from '@firebase/util';\n\n/**\n * A service that provides firebaseStorage.Reference instances.\n * @param opt_url gs:// url to a custom Storage Bucket\n */\nexport class StorageServiceCompat\n implements types.FirebaseStorage, Compat<FirebaseStorage>\n{\n constructor(public app: FirebaseApp, readonly _delegate: FirebaseStorage) {}\n\n get maxOperationRetryTime(): number {\n return this._delegate.maxOperationRetryTime;\n }\n\n get maxUploadRetryTime(): number {\n return this._delegate.maxUploadRetryTime;\n }\n\n /**\n * Returns a firebaseStorage.Reference for the given path in the default\n * bucket.\n */\n ref(path?: string): types.Reference {\n if (isUrl(path)) {\n throw _invalidArgument(\n 'ref() expected a child path but got a URL, use refFromURL instead.'\n );\n }\n return new ReferenceCompat(ref(this._delegate, path), this);\n }\n\n /**\n * Returns a firebaseStorage.Reference object for the given absolute URL,\n * which must be a gs:// or http[s]:// URL.\n */\n refFromURL(url: string): types.Reference {\n if (!isUrl(url)) {\n throw _invalidArgument(\n 'refFromURL() expected a full URL but got a child path, use ref() instead.'\n );\n }\n try {\n _Location.makeFromUrl(url, (this._delegate as _FirebaseStorageImpl).host);\n } catch (e) {\n throw _invalidArgument(\n 'refFromUrl() expected a valid full URL but got an invalid one.'\n );\n }\n return new ReferenceCompat(ref(this._delegate, url), this);\n }\n\n setMaxUploadRetryTime(time: number): void {\n this._delegate.maxUploadRetryTime = time;\n }\n\n setMaxOperationRetryTime(time: number): void {\n this._delegate.maxOperationRetryTime = time;\n }\n\n useEmulator(\n host: string,\n port: number,\n options: {\n mockUserToken?: EmulatorMockTokenOptions | string;\n } = {}\n ): void {\n connectStorageEmulator(this._delegate, host, port, options);\n }\n}\n\nfunction isUrl(path?: string): boolean {\n return /^[A-Za-z]+:\\/\\//.test(path as string);\n}\n","/**\n * @license\n * Copyright 2020 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport firebase from '@firebase/app-compat';\nimport { _FirebaseNamespace } from '@firebase/app-types/private';\nimport {\n StringFormat,\n _TaskEvent as TaskEvent,\n _TaskState as TaskState\n} from '@firebase/storage';\n\nimport { ReferenceCompat } from './reference';\nimport { StorageServiceCompat } from './service';\nimport * as types from '@firebase/storage-types';\nimport {\n Component,\n ComponentType,\n ComponentContainer,\n InstanceFactoryOptions\n} from '@firebase/component';\n\nimport { name, version } from '../package.json';\n\n/**\n * Type constant for Firebase Storage.\n */\nconst STORAGE_TYPE = 'storage-compat';\n\nfunction factory(\n container: ComponentContainer,\n { instanceIdentifier: url }: InstanceFactoryOptions\n): types.FirebaseStorage {\n // Dependencies\n const app = container.getProvider('app-compat').getImmediate();\n const storageExp = container\n .getProvider('storage')\n .getImmediate({ identifier: url });\n\n const storageServiceCompat: StorageServiceCompat = new StorageServiceCompat(\n app,\n storageExp\n );\n return storageServiceCompat;\n}\n\nexport function registerStorage(instance: _FirebaseNamespace): void {\n const namespaceExports = {\n // no-inline\n TaskState,\n TaskEvent,\n StringFormat,\n Storage: StorageServiceCompat,\n Reference: ReferenceCompat\n };\n instance.INTERNAL.registerComponent(\n new Component(STORAGE_TYPE, factory, ComponentType.PUBLIC)\n .setServiceProps(namespaceExports)\n .setMultipleInstances(true)\n );\n\n instance.registerVersion(name, version);\n}\n\nregisterStorage(firebase as unknown as _FirebaseNamespace);\n\n/**\n * Define extension behavior for `registerStorage`\n */\ndeclare module '@firebase/app-compat' {\n interface FirebaseNamespace {\n storage?: {\n (app?: FirebaseApp, url?: string): types.FirebaseStorage;\n Storage: typeof types.FirebaseStorage;\n\n StringFormat: {\n BASE64: types.StringFormat;\n BASE64URL: types.StringFormat;\n DATA_URL: types.StringFormat;\n RAW: types.StringFormat;\n };\n TaskEvent: {\n STATE_CHANGED: types.TaskEvent;\n };\n TaskState: {\n CANCELED: types.TaskState;\n ERROR: types.TaskState;\n PAUSED: types.TaskState;\n RUNNING: types.TaskState;\n SUCCESS: types.TaskState;\n };\n };\n }\n interface FirebaseApp {\n storage?(storageBucket?: string): types.FirebaseStorage;\n }\n}\n"],"names":["_getChild","uploadBytesResumable","StringFormat","_dataFromString","_UploadTask","_FbsBlob","listAll","list","getMetadata","updateMetadata","getDownloadURL","deleteObject","_invalidRootOperation","_invalidArgument","ref","_Location","connectStorageEmulator","TaskState","TaskEvent","Component","firebase"],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;;;;;;;AAeG;MAQU,wBAAwB,CAAA;AAGnC,IAAA,WAAA,CACW,SAA6B,EAC7B,IAAsB,EACtB,GAAoB,EAAA;QAFpB,IAAS,CAAA,SAAA,GAAT,SAAS,CAAoB;QAC7B,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAkB;QACtB,IAAG,CAAA,GAAA,GAAH,GAAG,CAAiB;KAC3B;AAEJ,IAAA,IAAI,gBAAgB,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC;KACxC;AACD,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,QAA8B,CAAC;KACtD;AACD,IAAA,IAAI,KAAK,GAAA;AACP,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;KAC7B;AACD,IAAA,IAAI,UAAU,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;KAClC;AACF;;AC5CD;;;;;;;;;;;;;;;AAeG;MAcU,gBAAgB,CAAA;IAC3B,WACW,CAAA,SAAqB,EACb,IAAqB,EAAA;QAD7B,IAAS,CAAA,SAAA,GAAT,SAAS,CAAY;QACb,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAiB;AAWxC,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AACpD,QAAA,IAAA,CAAA,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAClD,QAAA,IAAA,CAAA,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAClD,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KAbhD;AAEJ,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,wBAAwB,CACjC,IAAI,CAAC,SAAS,CAAC,QAAQ,EACvB,IAAI,EACJ,IAAI,CAAC,IAAI,CACV,CAAC;KACH;IAOD,IAAI,CACF,WAA+D,EAC/D,UAAkD,EAAA;QAElD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,IAAG;YACpC,IAAI,WAAW,EAAE;AACf,gBAAA,OAAO,WAAW,CAChB,IAAI,wBAAwB,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CACxD,CAAC;aACH;SACF,EAAE,UAAU,CAAC,CAAC;KAChB;AAED,IAAA,EAAE,CACA,IAAe,EACf,cAG8C,EAC9C,KAA8C,EAC9C,SAA6B,EAAA;QAE7B,IAAI,qBAAqB,GAGkB,SAAS,CAAC;AACrD,QAAA,IAAI,CAAC,CAAC,cAAc,EAAE;AACpB,YAAA,IAAI,OAAO,cAAc,KAAK,UAAU,EAAE;gBACxC,qBAAqB,GAAG,CAAC,YAAgC,KACvD,cAAc,CACZ,IAAI,wBAAwB,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAC5D,CAAC;aACL;iBAAM;AACL,gBAAA,qBAAqB,GAAG;AACtB,oBAAA,IAAI,EAAE,CAAC,CAAC,cAAc,CAAC,IAAI;0BACvB,CAAC,YAAgC,KAC/B,cAAc,CAAC,IAAK,CAClB,IAAI,wBAAwB,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAC5D;AACL,0BAAE,SAAS;AACb,oBAAA,QAAQ,EAAE,cAAc,CAAC,QAAQ,IAAI,SAAS;AAC9C,oBAAA,KAAK,EAAE,cAAc,CAAC,KAAK,IAAI,SAAS;iBACzC,CAAC;aACH;SACF;AACD,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CACtB,IAAI,EACJ,qBAAqB,EACrB,KAAK,IAAI,SAAS,EAClB,SAAS,IAAI,SAAS,CACvB,CAAC;KACH;AACF;;MC9EY,gBAAgB,CAAA;IAC3B,WACW,CAAA,SAAqB,EACb,QAA8B,EAAA;QADtC,IAAS,CAAA,SAAA,GAAT,SAAS,CAAY;QACb,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAAsB;KAC7C;AAEJ,IAAA,IAAI,QAAQ,GAAA;QACV,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAChC,GAAG,IAAI,IAAI,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAC/C,CAAC;KACH;AACD,IAAA,IAAI,KAAK,GAAA;QACP,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAC7B,GAAG,IAAI,IAAI,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAC/C,CAAC;KACH;AACD,IAAA,IAAI,aAAa,GAAA;AACf,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,IAAI,IAAI,CAAC;KAC7C;AACF;;ACzCD;;;;;;;;;;;;;;;AAeG;MA+BU,eAAe,CAAA;IAG1B,WACW,CAAA,SAA2B,EAC7B,OAA6B,EAAA;QAD3B,IAAS,CAAA,SAAA,GAAT,SAAS,CAAkB;QAC7B,IAAO,CAAA,OAAA,GAAP,OAAO,CAAsB;KAClC;AAEJ,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC5B;AAED,IAAA,IAAI,MAAM,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;KAC9B;AAED,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;KAChC;IAED,QAAQ,GAAA;AACN,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC;KAClC;AAED;;;;AAIG;AACH,IAAA,KAAK,CAAC,SAAiB,EAAA;QACrB,MAAM,SAAS,GAAGA,iBAAS,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACvD,OAAO,IAAI,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;KACrD;AAED,IAAA,IAAI,IAAI,GAAA;AACN,QAAA,OAAO,IAAI,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;KAC/D;AAED;;;AAGG;AACH,IAAA,IAAI,MAAM,GAAA;AACR,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;AACxC,QAAA,IAAI,SAAS,IAAI,IAAI,EAAE;AACrB,YAAA,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;KACrD;AAED;;;;;AAKG;IACH,GAAG,CACD,IAAqC,EACrC,QAA6B,EAAA;AAE7B,QAAA,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AACzB,QAAA,OAAO,IAAI,gBAAgB,CACzBC,4BAAoB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,QAA0B,CAAC,EACtE,IAAI,CACL,CAAC;KACH;AAED;;;;;;AAMG;IACH,SAAS,CACP,KAAa,EACb,MAAA,GAAuBC,oBAAY,CAAC,GAAG,EACvC,QAA+B,EAAA;AAE/B,QAAA,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QAC/B,MAAM,IAAI,GAAGC,uBAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC5C,QAAA,MAAM,aAAa,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;AACtC,QAAA,IAAI,aAAa,CAAC,aAAa,CAAC,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,EAAE;AACpE,YAAA,aAAa,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;SACjD;QACD,OAAO,IAAI,gBAAgB,CACzB,IAAIC,mBAAW,CACb,IAAI,CAAC,SAAuB,EAC5B,IAAIC,gBAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAC7B,aAAuD,CAC1C,EACf,IAAI,CACL,CAAC;KACH;AAED;;;;;;;;;;;;;;;;AAgBG;IACH,OAAO,GAAA;QACL,OAAOC,eAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CACjC,CAAC,IAAI,IAAI,gBAAgB,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAC3C,CAAC;KACH;AAED;;;;;;;;;;;;;;;;;;AAkBG;AACH,IAAA,IAAI,CAAC,OAAkC,EAAA;QACrC,OAAOC,YAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,IAAI,SAAS,CAAC,CAAC,IAAI,CACpD,CAAC,IAAI,IAAI,gBAAgB,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAC3C,CAAC;KACH;AAED;;;;AAIG;IACH,WAAW,GAAA;AACT,QAAA,OAAOC,mBAAW,CAAC,IAAI,CAAC,SAAS,CAAgC,CAAC;KACnE;AAED;;;;;;;;AAQG;AACH,IAAA,cAAc,CACZ,QAAgC,EAAA;QAEhC,OAAOC,sBAAc,CACnB,IAAI,CAAC,SAAS,EACd,QAA4B,CACE,CAAC;KAClC;AAED;;;AAGG;IACH,cAAc,GAAA;AACZ,QAAA,OAAOC,sBAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KACvC;AAED;;;AAGG;IACH,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;AAC5B,QAAA,OAAOC,oBAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;KACrC;AAEO,IAAA,YAAY,CAAC,IAAY,EAAA;QAC/B,IAAK,IAAI,CAAC,SAAwB,CAAC,SAAS,CAAC,IAAI,KAAK,EAAE,EAAE;AACxD,YAAA,MAAMC,6BAAqB,CAAC,IAAI,CAAC,CAAC;SACnC;KACF;AACF;;AC9OD;;;;;;;;;;;;;;;AAeG;AAgBH;;;AAGG;MACU,oBAAoB,CAAA;IAG/B,WAAmB,CAAA,GAAgB,EAAW,SAA0B,EAAA;QAArD,IAAG,CAAA,GAAA,GAAH,GAAG,CAAa;QAAW,IAAS,CAAA,SAAA,GAAT,SAAS,CAAiB;KAAI;AAE5E,IAAA,IAAI,qBAAqB,GAAA;AACvB,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC;KAC7C;AAED,IAAA,IAAI,kBAAkB,GAAA;AACpB,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC;KAC1C;AAED;;;AAGG;AACH,IAAA,GAAG,CAAC,IAAa,EAAA;AACf,QAAA,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE;AACf,YAAA,MAAMC,wBAAgB,CACpB,oEAAoE,CACrE,CAAC;SACH;AACD,QAAA,OAAO,IAAI,eAAe,CAACC,WAAG,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;KAC7D;AAED;;;AAGG;AACH,IAAA,UAAU,CAAC,GAAW,EAAA;AACpB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;AACf,YAAA,MAAMD,wBAAgB,CACpB,2EAA2E,CAC5E,CAAC;SACH;AACD,QAAA,IAAI;YACFE,iBAAS,CAAC,WAAW,CAAC,GAAG,EAAG,IAAI,CAAC,SAAkC,CAAC,IAAI,CAAC,CAAC;SAC3E;QAAC,OAAO,CAAC,EAAE;AACV,YAAA,MAAMF,wBAAgB,CACpB,gEAAgE,CACjE,CAAC;SACH;AACD,QAAA,OAAO,IAAI,eAAe,CAACC,WAAG,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC;KAC5D;AAED,IAAA,qBAAqB,CAAC,IAAY,EAAA;AAChC,QAAA,IAAI,CAAC,SAAS,CAAC,kBAAkB,GAAG,IAAI,CAAC;KAC1C;AAED,IAAA,wBAAwB,CAAC,IAAY,EAAA;AACnC,QAAA,IAAI,CAAC,SAAS,CAAC,qBAAqB,GAAG,IAAI,CAAC;KAC7C;AAED,IAAA,WAAW,CACT,IAAY,EACZ,IAAY,EACZ,UAEI,EAAE,EAAA;QAENE,8BAAsB,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;KAC7D;AACF,CAAA;AAED,SAAS,KAAK,CAAC,IAAa,EAAA;AAC1B,IAAA,OAAO,iBAAiB,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;AAChD;;;;;ACtGA;;;;;;;;;;;;;;;AAeG;AAuBH;;AAEG;AACH,MAAM,YAAY,GAAG,gBAAgB,CAAC;AAEtC,SAAS,OAAO,CACd,SAA6B,EAC7B,EAAE,kBAAkB,EAAE,GAAG,EAA0B,EAAA;;IAGnD,MAAM,GAAG,GAAG,SAAS,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,YAAY,EAAE,CAAC;IAC/D,MAAM,UAAU,GAAG,SAAS;SACzB,WAAW,CAAC,SAAS,CAAC;AACtB,SAAA,YAAY,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;IAErC,MAAM,oBAAoB,GAAyB,IAAI,oBAAoB,CACzE,GAAG,EACH,UAAU,CACX,CAAC;AACF,IAAA,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAEK,SAAU,eAAe,CAAC,QAA4B,EAAA;AAC1D,IAAA,MAAM,gBAAgB,GAAG;;mBAEvBC,kBAAS;mBACTC,kBAAS;sBACThB,oBAAY;AACZ,QAAA,OAAO,EAAE,oBAAoB;AAC7B,QAAA,SAAS,EAAE,eAAe;KAC3B,CAAC;IACF,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,CACjC,IAAIiB,mBAAS,CAAC,YAAY,EAAE,OAAO,EAAuB,QAAA,4BAAA;SACvD,eAAe,CAAC,gBAAgB,CAAC;AACjC,SAAA,oBAAoB,CAAC,IAAI,CAAC,CAC9B,CAAC;AAEF,IAAA,QAAQ,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED,eAAe,CAACC,4BAAyC,CAAC;;;;"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2020 Google LLC
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
import { _FirebaseNamespace } from '@firebase/app-types/private';
|
|
18
|
+
import * as types from '@firebase/storage-types';
|
|
19
|
+
export declare function registerStorage(instance: _FirebaseNamespace): void;
|
|
20
|
+
/**
|
|
21
|
+
* Define extension behavior for `registerStorage`
|
|
22
|
+
*/
|
|
23
|
+
declare module '@firebase/app-compat' {
|
|
24
|
+
interface FirebaseNamespace {
|
|
25
|
+
storage?: {
|
|
26
|
+
(app?: FirebaseApp, url?: string): types.FirebaseStorage;
|
|
27
|
+
Storage: typeof types.FirebaseStorage;
|
|
28
|
+
StringFormat: {
|
|
29
|
+
BASE64: types.StringFormat;
|
|
30
|
+
BASE64URL: types.StringFormat;
|
|
31
|
+
DATA_URL: types.StringFormat;
|
|
32
|
+
RAW: types.StringFormat;
|
|
33
|
+
};
|
|
34
|
+
TaskEvent: {
|
|
35
|
+
STATE_CHANGED: types.TaskEvent;
|
|
36
|
+
};
|
|
37
|
+
TaskState: {
|
|
38
|
+
CANCELED: types.TaskState;
|
|
39
|
+
ERROR: types.TaskState;
|
|
40
|
+
PAUSED: types.TaskState;
|
|
41
|
+
RUNNING: types.TaskState;
|
|
42
|
+
SUCCESS: types.TaskState;
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
interface FirebaseApp {
|
|
47
|
+
storage?(storageBucket?: string): types.FirebaseStorage;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
import { FirebaseApp as FirebaseAppCompat } from "@firebase/app-compat";
|
|
52
|
+
import { type EmulatorMockTokenOptions, type FullMetadata, type FirebaseStorage, type ListOptions, type ListResult, type StorageReference, type SettableMetadata, type UploadMetadata, type UploadResult, type UploadTask, type StringFormat } from "@firebase/storage";
|
|
53
|
+
declare module "@firebase/storage" {
|
|
54
|
+
function connectStorageEmulator(storage: types.FirebaseStorage, host: string, port: number, options?: {
|
|
55
|
+
mockUserToken?: EmulatorMockTokenOptions | string;
|
|
56
|
+
}): void;
|
|
57
|
+
function deleteObject(ref: types.Reference): Promise<void>;
|
|
58
|
+
function getBlob(ref: types.Reference, maxDownloadSizeBytes?: number): Promise<Blob>;
|
|
59
|
+
function getBytes(ref: types.Reference, maxDownloadSizeBytes?: number): Promise<ArrayBuffer>;
|
|
60
|
+
function getDownloadURL(ref: types.Reference): Promise<string>;
|
|
61
|
+
function getMetadata(ref: types.Reference): Promise<FullMetadata>;
|
|
62
|
+
function getStorage(app?: FirebaseAppCompat, bucketUrl?: string): FirebaseStorage;
|
|
63
|
+
function getStream(ref: types.Reference, maxDownloadSizeBytes?: number): ReadableStream;
|
|
64
|
+
function list(ref: types.Reference, options?: ListOptions): Promise<ListResult>;
|
|
65
|
+
function listAll(ref: types.Reference): Promise<ListResult>;
|
|
66
|
+
function ref(storage: types.FirebaseStorage, url?: string): StorageReference;
|
|
67
|
+
function updateMetadata(ref: types.Reference, metadata: SettableMetadata): Promise<FullMetadata>;
|
|
68
|
+
function uploadBytes(ref: types.Reference, data: Blob | Uint8Array | ArrayBuffer, metadata?: UploadMetadata): Promise<UploadResult>;
|
|
69
|
+
function uploadBytesResumable(ref: types.Reference, data: Blob | Uint8Array | ArrayBuffer, metadata?: UploadMetadata): UploadTask;
|
|
70
|
+
function uploadString(ref: types.Reference, value: string, format?: StringFormat, metadata?: UploadMetadata): Promise<UploadResult>;
|
|
71
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2020 Google LLC
|
|
4
|
+
*
|
|
5
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
* you may not use this file except in compliance with the License.
|
|
7
|
+
* You may obtain a copy of the License at
|
|
8
|
+
*
|
|
9
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
*
|
|
11
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
* See the License for the specific language governing permissions and
|
|
15
|
+
* limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
import { ListResult } from '@firebase/storage';
|
|
18
|
+
import * as types from '@firebase/storage-types';
|
|
19
|
+
import { ReferenceCompat } from './reference';
|
|
20
|
+
import { StorageServiceCompat } from './service';
|
|
21
|
+
import { Compat } from '@firebase/util';
|
|
22
|
+
export declare class ListResultCompat implements types.ListResult, Compat<ListResult> {
|
|
23
|
+
readonly _delegate: ListResult;
|
|
24
|
+
private readonly _service;
|
|
25
|
+
constructor(_delegate: ListResult, _service: StorageServiceCompat);
|
|
26
|
+
get prefixes(): ReferenceCompat[];
|
|
27
|
+
get items(): ReferenceCompat[];
|
|
28
|
+
get nextPageToken(): string | null;
|
|
29
|
+
}
|