@readme/httpsnippet 10.0.0 → 10.0.1

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/index.cjs CHANGED
@@ -3292,19 +3292,19 @@ var literalRepresentation3 = (value, opts, indentLevel) => {
3292
3292
  return value.toString();
3293
3293
  default:
3294
3294
  if (value === null || value === void 0) {
3295
- return "";
3295
+ return "nil";
3296
3296
  }
3297
3297
  return `"${value.toString().replace(/"/g, '\\"')}"`;
3298
3298
  }
3299
3299
  };
3300
3300
 
3301
- // src/targets/swift/nsurlsession/client.ts
3302
- var nsurlsession2 = {
3301
+ // src/targets/swift/urlsession/client.ts
3302
+ var urlsession = {
3303
3303
  info: {
3304
- key: "nsurlsession",
3305
- title: "NSURLSession",
3306
- link: "https://developer.apple.com/library/mac/documentation/Foundation/Reference/NSURLSession_class/index.html",
3307
- description: "Foundation's NSURLSession request",
3304
+ key: "urlsession",
3305
+ title: "URLSession",
3306
+ link: "https://developer.apple.com/documentation/foundation/urlsession",
3307
+ description: "Foundation's URLSession request",
3308
3308
  extname: ".swift"
3309
3309
  },
3310
3310
  convert: ({ allHeaders, postData, fullUrl, method }, options) => {
@@ -3320,6 +3320,9 @@ var nsurlsession2 = {
3320
3320
  hasBody: false
3321
3321
  };
3322
3322
  push("import Foundation");
3323
+ push("#if canImport(FoundationNetworking)");
3324
+ push(" import FoundationNetworking");
3325
+ push("#endif");
3323
3326
  if (Object.keys(allHeaders).length) {
3324
3327
  req.hasHeaders = true;
3325
3328
  blank();
@@ -3332,9 +3335,9 @@ var nsurlsession2 = {
3332
3335
  blank();
3333
3336
  if (postData.params?.length) {
3334
3337
  const [head, ...tail] = postData.params;
3335
- push(`let postData = NSMutableData(data: "${head.name}=${head.value}".data(using: String.Encoding.utf8)!)`);
3338
+ push(`${tail.length > 0 ? "var" : "let"} postData = Data("${head.name}=${head.value}".utf8)`);
3336
3339
  tail.forEach(({ name, value }) => {
3337
- push(`postData.append("&${name}=${value}".data(using: String.Encoding.utf8)!)`);
3340
+ push(`postData.append(Data("&${name}=${value}".utf8))`);
3338
3341
  });
3339
3342
  } else {
3340
3343
  req.hasBody = false;
@@ -3344,7 +3347,7 @@ var nsurlsession2 = {
3344
3347
  if (postData.jsonObj) {
3345
3348
  push(`${literalDeclaration("parameters", postData.jsonObj, opts)} as [String : Any]`);
3346
3349
  blank();
3347
- push("let postData = JSONSerialization.data(withJSONObject: parameters, options: [])");
3350
+ push("let postData = try JSONSerialization.data(withJSONObject: parameters, options: [])");
3348
3351
  }
3349
3352
  break;
3350
3353
  case "multipart/form-data":
@@ -3374,37 +3377,22 @@ var nsurlsession2 = {
3374
3377
  break;
3375
3378
  default:
3376
3379
  blank();
3377
- push(`let postData = NSData(data: "${postData.text}".data(using: String.Encoding.utf8)!)`);
3380
+ push(`let postData = Data("${postData.text}".utf8)`);
3378
3381
  }
3379
3382
  }
3380
3383
  blank();
3381
- push(`let request = NSMutableURLRequest(url: NSURL(string: "${fullUrl}")! as URL,`);
3382
- push(" cachePolicy: .useProtocolCachePolicy,");
3383
- push(
3384
- // @ts-expect-error needs better types
3385
- ` timeoutInterval: ${parseInt(opts.timeout, 10).toFixed(1)})`
3386
- );
3384
+ push(`var request = URLRequest(url: URL(string: "${fullUrl}")!)`);
3387
3385
  push(`request.httpMethod = "${method}"`);
3388
3386
  if (req.hasHeaders) {
3389
3387
  push("request.allHTTPHeaderFields = headers");
3390
3388
  }
3391
3389
  if (req.hasBody) {
3392
- push("request.httpBody = postData as Data");
3390
+ push("request.httpBody = postData");
3393
3391
  }
3394
3392
  blank();
3395
- push("let session = URLSession.shared");
3396
- push(
3397
- "let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in"
3398
- );
3399
- push("if (error != nil) {", 1);
3400
- push("print(error as Any)", 2);
3401
- push("} else {", 1);
3402
- push("let httpResponse = response as? HTTPURLResponse", 2);
3403
- push("print(httpResponse)", 2);
3404
- push("}", 1);
3405
- push("})");
3393
+ push("let (data, response) = try await URLSession.shared.data(with: request)");
3394
+ push("print(String(decoding: data, as: UTF8.self))");
3406
3395
  blank();
3407
- push("dataTask.resume()");
3408
3396
  return join();
3409
3397
  }
3410
3398
  };
@@ -3414,10 +3402,10 @@ var swift = {
3414
3402
  info: {
3415
3403
  key: "swift",
3416
3404
  title: "Swift",
3417
- default: "nsurlsession"
3405
+ default: "urlsession"
3418
3406
  },
3419
3407
  clientsById: {
3420
- nsurlsession: nsurlsession2
3408
+ urlsession
3421
3409
  }
3422
3410
  };
3423
3411