MCPcopy Index your code
hub / github.com/NativeScript/firebase / putString

Method putString

packages/firebase-storage/index.ios.ts:485–525  ·  view source on GitHub ↗
(data: string, format?: StringFormat, metadata?: Metadata)

Source from the content-addressed store, hash-verified

483 }
484
485 putString(data: string, format?: StringFormat, metadata?: Metadata): Task {
486 let nsData;
487 switch (format) {
488 case StringFormat.BASE64:
489 nsData = NSData.alloc().initWithBase64EncodedStringOptions(data, NSDataBase64DecodingOptions.IgnoreUnknownCharacters);
490 break;
491 case StringFormat.BASE64URL:
492 {
493 let base64Encoded = data.replace(/-/g, '+').replace(/_/g, '/');
494
495 while (base64Encoded.length % 4 != 0) {
496 base64Encoded = base64Encoded + '=';
497 }
498 nsData = NSData.alloc().initWithBase64EncodedStringOptions(data, NSDataBase64DecodingOptions.IgnoreUnknownCharacters);
499 }
500 break;
501 case StringFormat.DATA_URL: {
502 const base64 = b64WithoutPrefix(data);
503 const mime = getMIMEforBase64String(data);
504
505 const meta = metadata || new Metadata();
506 if (!metadata.contentType) {
507 meta.contentType = mime;
508 }
509 return Task.fromNative(this.native.putDataMetadata(NSData.alloc().initWithBase64EncodedStringOptions(base64, NSDataBase64DecodingOptions.IgnoreUnknownCharacters), meta.native));
510 }
511 default: {
512 const text = NSString.stringWithString(data);
513 const nativeData = text.dataUsingEncoding(NSUTF8StringEncoding);
514 const encodedString = nativeData.base64EncodedStringWithOptions(NSDataBase64EncodingOptions.Encoding64CharacterLineLength);
515 nsData = NSData.alloc().initWithBase64EncodedStringOptions(encodedString, NSDataBase64DecodingOptions.IgnoreUnknownCharacters);
516 break;
517 }
518 }
519
520 if (metadata) {
521 return Task.fromNative(this.native.putDataMetadata(nsData, metadata.native));
522 }
523
524 return Task.fromNative(this.native.putData(nsData));
525 }
526
527 putFile(path: string, metadata?: Metadata): Task {
528 let task: Task = null;

Callers

nothing calls this directly

Calls 3

b64WithoutPrefixFunction · 0.90
getMIMEforBase64StringFunction · 0.90
fromNativeMethod · 0.45

Tested by

no test coverage detected