@nativescript/canvas-polyfill 1.0.13-v6 → 1.1.0-alpha.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.
Files changed (79) hide show
  1. package/DOM/CharacterData.js +5 -10
  2. package/DOM/CharacterData.js.map +1 -1
  3. package/DOM/Document.d.ts +7 -5
  4. package/DOM/Document.js +55 -59
  5. package/DOM/Document.js.map +1 -1
  6. package/DOM/Element.d.ts +21 -19
  7. package/DOM/Element.js +64 -137
  8. package/DOM/Element.js.map +1 -1
  9. package/DOM/HTMLCanvasElement.d.ts +7 -1
  10. package/DOM/HTMLCanvasElement.js +35 -11
  11. package/DOM/HTMLCanvasElement.js.map +1 -1
  12. package/DOM/HTMLImageElement.d.ts +6 -3
  13. package/DOM/HTMLImageElement.js +113 -140
  14. package/DOM/HTMLImageElement.js.map +1 -1
  15. package/DOM/HTMLVideoElement.d.ts +14 -7
  16. package/DOM/HTMLVideoElement.js +81 -111
  17. package/DOM/HTMLVideoElement.js.map +1 -1
  18. package/DOM/Node.d.ts +7 -1
  19. package/DOM/Node.js +57 -42
  20. package/DOM/Node.js.map +1 -1
  21. package/DOM/Text.js +5 -10
  22. package/DOM/Text.js.map +1 -1
  23. package/DOM/XMLDocument.js +3 -11
  24. package/DOM/XMLDocument.js.map +1 -1
  25. package/DOM/svg/SVGCircleElement.d.ts +13 -0
  26. package/DOM/svg/SVGCircleElement.js +39 -0
  27. package/DOM/svg/SVGCircleElement.js.map +1 -0
  28. package/DOM/svg/SVGElement.d.ts +17 -0
  29. package/DOM/svg/SVGElement.js +59 -0
  30. package/DOM/svg/SVGElement.js.map +1 -0
  31. package/DOM/svg/SVGGGElement.d.ts +13 -0
  32. package/DOM/svg/SVGGGElement.js +39 -0
  33. package/DOM/svg/SVGGGElement.js.map +1 -0
  34. package/DOM/svg/SVGPathElement.d.ts +13 -0
  35. package/DOM/svg/SVGPathElement.js +39 -0
  36. package/DOM/svg/SVGPathElement.js.map +1 -0
  37. package/DOM/svg/SVGRectElement.d.ts +13 -0
  38. package/DOM/svg/SVGRectElement.js +39 -0
  39. package/DOM/svg/SVGRectElement.js.map +1 -0
  40. package/DOM/svg/index.d.ts +5 -0
  41. package/DOM/svg/index.js +6 -0
  42. package/DOM/svg/index.js.map +1 -0
  43. package/URL.android.d.ts +38 -0
  44. package/URL.android.js +266 -0
  45. package/URL.android.js.map +1 -0
  46. package/URL.ios.d.ts +37 -0
  47. package/URL.ios.js +209 -0
  48. package/URL.ios.js.map +1 -0
  49. package/async/async.js +3 -8
  50. package/async/async.js.map +1 -1
  51. package/async/file/file.android.js +13 -21
  52. package/async/file/file.android.js.map +1 -1
  53. package/async/file/file.ios.js +21 -29
  54. package/async/file/file.ios.js.map +1 -1
  55. package/async/http/http-request-common.d.ts +5 -5
  56. package/async/http/http-request-common.js +36 -67
  57. package/async/http/http-request-common.js.map +1 -1
  58. package/async/http/http.android.js +194 -201
  59. package/async/http/http.android.js.map +1 -1
  60. package/async/http/http.ios.js +135 -142
  61. package/async/http/http.ios.js.map +1 -1
  62. package/async/xhr/TNSXMLHttpRequest.d.ts +17 -15
  63. package/async/xhr/TNSXMLHttpRequest.js +527 -585
  64. package/async/xhr/TNSXMLHttpRequest.js.map +1 -1
  65. package/index.js +45 -21
  66. package/index.js.map +1 -1
  67. package/package.json +6 -8
  68. package/performance.d.ts +0 -1
  69. package/performance.js +12 -15
  70. package/performance.js.map +1 -1
  71. package/platforms/android/include.gradle +2 -2
  72. package/resize.js +8 -10
  73. package/resize.js.map +1 -1
  74. package/window.d.ts +1 -1
  75. package/window.js +57 -85
  76. package/window.js.map +1 -1
  77. package/URL.d.ts +0 -5
  78. package/URL.js +0 -46
  79. package/URL.js.map +0 -1
@@ -1,16 +1,14 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var http_request_common_1 = require("./http-request-common");
4
- var debugger_1 = require("@nativescript/core/debugger");
5
- var core_1 = require("@nativescript/core");
6
- var file_1 = require("../file/file");
7
- var types_1 = require("@nativescript/core/utils/types");
8
- var HttpResponseEncoding;
1
+ import { fileNameFromPath, HttpError, isImageUrl, SaveImageStorageKey, TNSHttpSettings } from './http-request-common';
2
+ import { NetworkAgent } from '@nativescript/core/debugger';
3
+ import { File, Folder, knownFolders, path, ApplicationSettings } from '@nativescript/core';
4
+ import { FileManager } from '../file/file';
5
+ import { isString, isObject, isNullOrUndefined } from '@nativescript/core/utils/types';
6
+ export var HttpResponseEncoding;
9
7
  (function (HttpResponseEncoding) {
10
8
  HttpResponseEncoding[HttpResponseEncoding["UTF8"] = 0] = "UTF8";
11
9
  HttpResponseEncoding[HttpResponseEncoding["GBK"] = 1] = "GBK";
12
- })(HttpResponseEncoding = exports.HttpResponseEncoding || (exports.HttpResponseEncoding = {}));
13
- var statuses = {
10
+ })(HttpResponseEncoding || (HttpResponseEncoding = {}));
11
+ const statuses = {
14
12
  100: 'Continue',
15
13
  101: 'Switching Protocols',
16
14
  200: 'OK',
@@ -53,22 +51,22 @@ var statuses = {
53
51
  505: 'HTTP Version Not Supported'
54
52
  };
55
53
  function parseJSON(source) {
56
- var src = source.trim();
54
+ const src = source.trim();
57
55
  if (src.lastIndexOf(')') === src.length - 1) {
58
56
  return JSON.parse(src.substring(src.indexOf('(') + 1, src.lastIndexOf(')')));
59
57
  }
60
58
  return JSON.parse(src);
61
59
  }
62
- var textTypes = [
60
+ const textTypes = [
63
61
  'text/plain',
64
62
  'application/xml',
65
63
  'application/rss+xml',
66
64
  'text/html',
67
65
  'text/xml'
68
66
  ];
69
- var isTextContentType = function (contentType) {
70
- var result = false;
71
- for (var i = 0; i < textTypes.length; i++) {
67
+ const isTextContentType = (contentType) => {
68
+ let result = false;
69
+ for (let i = 0; i < textTypes.length; i++) {
72
70
  if (contentType.toLowerCase().indexOf(textTypes[i]) >= 0) {
73
71
  result = true;
74
72
  break;
@@ -76,27 +74,27 @@ var isTextContentType = function (contentType) {
76
74
  }
77
75
  return result;
78
76
  };
79
- var requestCallbacks = new Map();
80
- var requestIdCounter = 0;
81
- var Http = /** @class */ (function () {
82
- function Http() {
77
+ const requestCallbacks = new Map();
78
+ let requestIdCounter = 0;
79
+ export class Http {
80
+ constructor() {
83
81
  }
84
- Http.buildJavaOptions = function (options) {
85
- if (!types_1.isString(options.url)) {
82
+ static buildJavaOptions(options) {
83
+ if (!isString(options.url)) {
86
84
  throw new Error('Http request must provide a valid url.');
87
85
  }
88
- var javaOptions = new com.github.triniwiz.async.Async2.Http.RequestOptions();
86
+ let javaOptions = new com.github.triniwiz.async.Async2.Http.RequestOptions();
89
87
  javaOptions.url = options.url;
90
- var method;
91
- if (types_1.isString(typeof options.method)) {
88
+ let method;
89
+ if (isString(typeof options.method)) {
92
90
  javaOptions.method = options.method;
93
91
  method = options.method.toLowerCase();
94
92
  }
95
93
  if ((method && method === 'post') || method === 'put') {
96
- if (types_1.isString(options.content)) {
94
+ if (isString(options.content)) {
97
95
  javaOptions.content = new java.lang.String(options.content);
98
96
  }
99
- else if (types_1.isObject(options.content)) {
97
+ else if (isObject(options.content)) {
100
98
  javaOptions.content = serialize(options.content);
101
99
  }
102
100
  }
@@ -104,27 +102,27 @@ var Http = /** @class */ (function () {
104
102
  javaOptions.timeout = options.timeout;
105
103
  }
106
104
  if (options.headers) {
107
- var arrayList_1 = new java.util.ArrayList();
108
- var pair_1 = com.github.triniwiz.async.Async2.Http.KeyValuePair;
105
+ const arrayList = new java.util.ArrayList();
106
+ const pair = com.github.triniwiz.async.Async2.Http.KeyValuePair;
109
107
  if (options.headers instanceof Map) {
110
- options.headers.forEach(function (value, key) {
111
- arrayList_1.add(new pair_1(key, value + ''));
108
+ options.headers.forEach((value, key) => {
109
+ arrayList.add(new pair(key, value + ''));
112
110
  });
113
111
  }
114
112
  else {
115
- for (var key in options.headers) {
116
- arrayList_1.add(new pair_1(key, options.headers[key] + ''));
113
+ for (let key in options.headers) {
114
+ arrayList.add(new pair(key, options.headers[key] + ''));
117
115
  }
118
116
  }
119
- javaOptions.headers = arrayList_1;
117
+ javaOptions.headers = arrayList;
120
118
  }
121
119
  return javaOptions;
122
- };
123
- Http.buildJavaDownloadOptions = function (options) {
124
- if (!types_1.isString(options.url)) {
120
+ }
121
+ static buildJavaDownloadOptions(options) {
122
+ if (!isString(options.url)) {
125
123
  throw new Error('Http request must provide a valid url.');
126
124
  }
127
- var javaOptions = new com.github.triniwiz.async.Async2.Http.DownloadRequestOptions();
125
+ const javaOptions = new com.github.triniwiz.async.Async2.Http.DownloadRequestOptions();
128
126
  javaOptions.url = options.url;
129
127
  if (typeof options.timeout === 'number') {
130
128
  javaOptions.timeout = options.timeout;
@@ -134,54 +132,54 @@ var Http = /** @class */ (function () {
134
132
  }
135
133
  else {
136
134
  // creates directory
137
- core_1.Folder.fromPath(core_1.path.join(core_1.knownFolders.temp().path, 'async_http'));
138
- javaOptions.filePath = core_1.path.join(core_1.knownFolders.temp().path, 'async_http', java.util.UUID.randomUUID().toString());
135
+ Folder.fromPath(path.join(knownFolders.temp().path, 'async_http'));
136
+ javaOptions.filePath = path.join(knownFolders.temp().path, 'async_http', java.util.UUID.randomUUID().toString());
139
137
  }
140
138
  if (options.headers) {
141
- var arrayList_2 = new java.util.ArrayList();
142
- var pair_2 = com.github.triniwiz.async.Async2.Http.KeyValuePair;
139
+ const arrayList = new java.util.ArrayList();
140
+ const pair = com.github.triniwiz.async.Async2.Http.KeyValuePair;
143
141
  if (options.headers instanceof Map) {
144
- options.headers.forEach(function (value, key) {
145
- arrayList_2.add(new pair_2(key, value + ''));
142
+ options.headers.forEach((value, key) => {
143
+ arrayList.add(new pair(key, value + ''));
146
144
  });
147
145
  }
148
146
  else {
149
- for (var key in options.headers) {
150
- arrayList_2.add(new pair_2(key, options.headers[key] + ''));
147
+ for (let key in options.headers) {
148
+ arrayList.add(new pair(key, options.headers[key] + ''));
151
149
  }
152
150
  }
153
- javaOptions.headers = arrayList_2;
151
+ javaOptions.headers = arrayList;
154
152
  }
155
153
  return javaOptions;
156
- };
157
- Http.prototype.request = function (options) {
158
- var headers = {};
159
- var statusCode = 0;
160
- var id;
161
- var counter = requestIdCounter;
162
- var request = new Promise(function (resolve, reject) {
154
+ }
155
+ request(options) {
156
+ const headers = {};
157
+ let statusCode = 0;
158
+ let id;
159
+ const counter = requestIdCounter;
160
+ const request = new Promise((resolve, reject) => {
163
161
  try {
164
162
  // initialize the options
165
- var javaOptions_1 = Http.buildJavaOptions(options);
166
- if (http_request_common_1.TNSHttpSettings.debug) {
163
+ const javaOptions = Http.buildJavaOptions(options);
164
+ if (TNSHttpSettings.debug) {
167
165
  // @ts-ignore
168
166
  if (global.__inspector && global.__inspector.isConnected) {
169
- debugger_1.NetworkAgent.requestWillBeSent(requestIdCounter, options);
167
+ NetworkAgent.requestWillBeSent(requestIdCounter, options);
170
168
  }
171
169
  }
172
- var makeRemoteRequest = function () {
173
- var callback = new com.github.triniwiz.async.Async2.Http.Callback({
174
- onCancel: function (param) {
170
+ const makeRemoteRequest = () => {
171
+ const callback = new com.github.triniwiz.async.Async2.Http.Callback({
172
+ onCancel(param) {
175
173
  reject({
176
- type: http_request_common_1.HttpError.Cancelled,
174
+ type: HttpError.Cancelled,
177
175
  result: param
178
176
  });
179
177
  requestCallbacks.delete(id);
180
178
  },
181
- onComplete: function (result) {
182
- var content;
183
- var responseText;
184
- var _isString = false;
179
+ onComplete(result) {
180
+ let content;
181
+ let responseText;
182
+ let _isString = false;
185
183
  if (result.content instanceof org.json.JSONObject || result.content instanceof org.json.JSONArray) {
186
184
  content = deserialize(result.content);
187
185
  responseText = result.contentText;
@@ -192,36 +190,35 @@ var Http = /** @class */ (function () {
192
190
  responseText = result.contentText;
193
191
  }
194
192
  if (result && result.headers) {
195
- var length_1 = result.headers.size();
196
- var pair = void 0;
197
- for (var i = 0; i < length_1; i++) {
193
+ const length = result.headers.size();
194
+ let pair;
195
+ for (let i = 0; i < length; i++) {
198
196
  pair = result.headers.get(i);
199
197
  addHeader(headers, pair.key, pair.value);
200
198
  }
201
199
  }
202
200
  // send response data (for requestId) to network debugger
203
- var contentType = headers['Content-Type'];
204
- if (types_1.isNullOrUndefined(contentType)) {
201
+ let contentType = headers['Content-Type'];
202
+ if (isNullOrUndefined(contentType)) {
205
203
  contentType = headers['content-type'];
206
204
  }
207
- var acceptHeader;
208
- if (types_1.isNullOrUndefined(contentType)) {
205
+ let acceptHeader;
206
+ if (isNullOrUndefined(contentType)) {
209
207
  acceptHeader = headers['Accept'];
210
- if (types_1.isNullOrUndefined(acceptHeader)) {
208
+ if (isNullOrUndefined(acceptHeader)) {
211
209
  acceptHeader = headers['accept'];
212
210
  }
213
211
  }
214
212
  else {
215
213
  acceptHeader = contentType;
216
214
  }
217
- var returnType = 'text/plain';
218
- if (!types_1.isNullOrUndefined(acceptHeader) && types_1.isString(acceptHeader)) {
219
- var acceptValues = acceptHeader.split(',');
220
- var quality = [];
221
- var defaultQuality = [];
222
- var customQuality = [];
223
- for (var _i = 0, acceptValues_1 = acceptValues; _i < acceptValues_1.length; _i++) {
224
- var value = acceptValues_1[_i];
215
+ let returnType = 'text/plain';
216
+ if (!isNullOrUndefined(acceptHeader) && isString(acceptHeader)) {
217
+ let acceptValues = acceptHeader.split(',');
218
+ let quality = [];
219
+ let defaultQuality = [];
220
+ let customQuality = [];
221
+ for (let value of acceptValues) {
225
222
  if (value.indexOf(';q=') > -1) {
226
223
  customQuality.push(value);
227
224
  }
@@ -229,37 +226,37 @@ var Http = /** @class */ (function () {
229
226
  defaultQuality.push(value);
230
227
  }
231
228
  }
232
- customQuality = customQuality.sort(function (a, b) {
233
- var a_quality = parseFloat(a.substring(a.indexOf(';q=')).replace(';q=', ''));
234
- var b_quality = parseFloat(b.substring(b.indexOf(';q=')).replace(';q=', ''));
229
+ customQuality = customQuality.sort((a, b) => {
230
+ const a_quality = parseFloat(a.substring(a.indexOf(';q=')).replace(';q=', ''));
231
+ const b_quality = parseFloat(b.substring(b.indexOf(';q=')).replace(';q=', ''));
235
232
  return (b_quality - a_quality);
236
233
  });
237
- quality.push.apply(quality, defaultQuality);
238
- quality.push.apply(quality, customQuality);
234
+ quality.push(...defaultQuality);
235
+ quality.push(...customQuality);
239
236
  returnType = quality[0];
240
237
  }
241
238
  result['statusCode'] = statusCode;
242
- if (http_request_common_1.TNSHttpSettings.debug) {
239
+ if (TNSHttpSettings.debug) {
243
240
  // send response data (for requestId) to network debugger
244
241
  // @ts-ignore
245
242
  if (global.__inspector && global.__inspector.isConnected) {
246
- debugger_1.NetworkAgent.responseReceived(counter, {
243
+ NetworkAgent.responseReceived(counter, {
247
244
  url: result.url,
248
- statusCode: statusCode,
249
- headers: headers,
250
- responseAsString: types_1.isString ? (result.contentText ? result.contentText : result.content.toString()) : null,
245
+ statusCode,
246
+ headers,
247
+ responseAsString: isString ? (result.contentText ? result.contentText : result.content.toString()) : null,
251
248
  responseAsImage: null // TODO needs base64 Image
252
249
  }, headers);
253
250
  }
254
251
  }
255
- if (isTextContentType(returnType) && types_1.isNullOrUndefined(responseText)) {
252
+ if (isTextContentType(returnType) && isNullOrUndefined(responseText)) {
256
253
  responseText = result.contentText;
257
254
  }
258
- if (http_request_common_1.TNSHttpSettings.saveImage && http_request_common_1.TNSHttpSettings.currentlySavedImages && http_request_common_1.TNSHttpSettings.currentlySavedImages[this._url]) {
255
+ if (TNSHttpSettings.saveImage && TNSHttpSettings.currentlySavedImages && TNSHttpSettings.currentlySavedImages[this._url]) {
259
256
  // ensure saved to disk
260
- if (http_request_common_1.TNSHttpSettings.currentlySavedImages[this._url].localPath) {
261
- file_1.FileManager.writeFile(content, http_request_common_1.TNSHttpSettings.currentlySavedImages[this._url].localPath, function (error, result) {
262
- if (http_request_common_1.TNSHttpSettings.debug) {
257
+ if (TNSHttpSettings.currentlySavedImages[this._url].localPath) {
258
+ FileManager.writeFile(content, TNSHttpSettings.currentlySavedImages[this._url].localPath, function (error, result) {
259
+ if (TNSHttpSettings.debug) {
263
260
  console.log('http image save:', error ? error : result);
264
261
  }
265
262
  });
@@ -267,25 +264,25 @@ var Http = /** @class */ (function () {
267
264
  }
268
265
  resolve({
269
266
  url: result.url,
270
- content: content,
271
- responseText: responseText,
267
+ content,
268
+ responseText,
272
269
  statusCode: statusCode,
273
270
  headers: headers
274
271
  });
275
272
  requestCallbacks.delete(id);
276
273
  },
277
- onError: function (param0, param1) {
274
+ onError(param0, param1) {
278
275
  reject({
279
- type: http_request_common_1.HttpError.Error,
276
+ type: HttpError.Error,
280
277
  message: param0
281
278
  });
282
279
  requestCallbacks.delete(id);
283
280
  },
284
- onHeaders: function (jHeaders, status) {
281
+ onHeaders(jHeaders, status) {
285
282
  statusCode = status;
286
- var length = jHeaders.size();
287
- var pair;
288
- for (var i = 0; i < length; i++) {
283
+ const length = jHeaders.size();
284
+ let pair;
285
+ for (let i = 0; i < length; i++) {
289
286
  pair = jHeaders.get(i);
290
287
  addHeader(headers, pair.key, pair.value);
291
288
  }
@@ -293,53 +290,53 @@ var Http = /** @class */ (function () {
293
290
  options.onHeaders(headers, statusCode);
294
291
  }
295
292
  requestCallbacks.delete(id);
296
- }, onLoading: function () {
293
+ }, onLoading() {
297
294
  options.onLoading();
298
295
  requestCallbacks.delete(id);
299
- }, onProgress: function (lengthComputable, loaded, total) {
296
+ }, onProgress(lengthComputable, loaded, total) {
300
297
  if (options.onProgress) {
301
298
  options.onProgress({
302
- lengthComputable: lengthComputable,
303
- loaded: loaded,
304
- total: total
299
+ lengthComputable,
300
+ loaded,
301
+ total
305
302
  });
306
303
  }
307
304
  requestCallbacks.delete(id);
308
305
  },
309
- onTimeout: function () {
306
+ onTimeout() {
310
307
  reject({
311
- type: http_request_common_1.HttpError.Timeout
308
+ type: HttpError.Timeout
312
309
  });
313
310
  requestCallbacks.delete(id);
314
311
  }
315
312
  });
316
- id = com.github.triniwiz.async.Async2.Http.makeRequest(javaOptions_1, callback);
313
+ id = com.github.triniwiz.async.Async2.Http.makeRequest(javaOptions, callback);
317
314
  requestCallbacks.set(id, callback);
318
315
  };
319
- if (http_request_common_1.TNSHttpSettings.saveImage && http_request_common_1.isImageUrl(options.url)) {
316
+ if (TNSHttpSettings.saveImage && isImageUrl(options.url)) {
320
317
  // handle saved images to disk
321
- if (!http_request_common_1.TNSHttpSettings.currentlySavedImages) {
322
- var stored = core_1.ApplicationSettings.getString(http_request_common_1.SaveImageStorageKey);
318
+ if (!TNSHttpSettings.currentlySavedImages) {
319
+ const stored = ApplicationSettings.getString(SaveImageStorageKey);
323
320
  if (stored) {
324
321
  try {
325
- http_request_common_1.TNSHttpSettings.currentlySavedImages = JSON.parse(stored);
322
+ TNSHttpSettings.currentlySavedImages = JSON.parse(stored);
326
323
  }
327
324
  catch (err) {
328
- http_request_common_1.TNSHttpSettings.currentlySavedImages = {};
325
+ TNSHttpSettings.currentlySavedImages = {};
329
326
  }
330
327
  }
331
328
  else {
332
- http_request_common_1.TNSHttpSettings.currentlySavedImages = {};
329
+ TNSHttpSettings.currentlySavedImages = {};
333
330
  }
334
331
  }
335
- var imageSetting = http_request_common_1.TNSHttpSettings.currentlySavedImages[options.url];
336
- var requests = imageSetting ? imageSetting.requests : 0;
337
- var localPath = void 0;
338
- if (imageSetting && imageSetting.localPath && core_1.File.exists(imageSetting.localPath)) {
332
+ const imageSetting = TNSHttpSettings.currentlySavedImages[options.url];
333
+ const requests = imageSetting ? imageSetting.requests : 0;
334
+ let localPath;
335
+ if (imageSetting && imageSetting.localPath && File.exists(imageSetting.localPath)) {
339
336
  // previously saved to disk
340
- file_1.FileManager.readFile(imageSetting.localPath, null, function (error, file) {
337
+ FileManager.readFile(imageSetting.localPath, null, (error, file) => {
341
338
  if (error) {
342
- if (http_request_common_1.TNSHttpSettings.debug) {
339
+ if (TNSHttpSettings.debug) {
343
340
  console.log('http image load error:', error);
344
341
  }
345
342
  }
@@ -354,19 +351,19 @@ var Http = /** @class */ (function () {
354
351
  });
355
352
  });
356
353
  }
357
- else if (requests >= http_request_common_1.TNSHttpSettings.saveImage.numberOfRequests) {
354
+ else if (requests >= TNSHttpSettings.saveImage.numberOfRequests) {
358
355
  // setup to write to disk when response finishes
359
- var filename = http_request_common_1.fileNameFromPath(options.url);
356
+ let filename = fileNameFromPath(options.url);
360
357
  if (filename.indexOf('?')) {
361
358
  // strip any params if were any
362
359
  filename = filename.split('?')[0];
363
360
  }
364
- localPath = core_1.path.join(core_1.knownFolders.documents().path, filename);
361
+ localPath = path.join(knownFolders.documents().path, filename);
365
362
  makeRemoteRequest();
366
363
  }
367
364
  // save settings
368
- http_request_common_1.TNSHttpSettings.currentlySavedImages[options.url] = __assign({}, (imageSetting || {}), { date: Date.now(), requests: requests + 1, localPath: localPath });
369
- core_1.ApplicationSettings.setString(http_request_common_1.SaveImageStorageKey, JSON.stringify(http_request_common_1.TNSHttpSettings.currentlySavedImages));
365
+ TNSHttpSettings.currentlySavedImages[options.url] = Object.assign(Object.assign({}, (imageSetting || {})), { date: Date.now(), requests: requests + 1, localPath });
366
+ ApplicationSettings.setString(SaveImageStorageKey, JSON.stringify(TNSHttpSettings.currentlySavedImages));
370
367
  }
371
368
  else {
372
369
  makeRemoteRequest();
@@ -375,7 +372,7 @@ var Http = /** @class */ (function () {
375
372
  }
376
373
  catch (ex) {
377
374
  reject({
378
- type: http_request_common_1.HttpError.Error,
375
+ type: HttpError.Error,
379
376
  message: ex.message
380
377
  });
381
378
  }
@@ -384,63 +381,62 @@ var Http = /** @class */ (function () {
384
381
  com.github.triniwiz.async.Async2.Http.cancelRequest(id);
385
382
  };
386
383
  return request;
387
- };
388
- Http.getFile = function (options) {
389
- var headers = {};
390
- var statusCode = 0;
391
- var id;
392
- var counter = requestIdCounter;
393
- var request = new Promise(function (resolve, reject) {
384
+ }
385
+ static getFile(options) {
386
+ const headers = {};
387
+ let statusCode = 0;
388
+ let id;
389
+ const counter = requestIdCounter;
390
+ const request = new Promise((resolve, reject) => {
394
391
  try {
395
392
  // initialize the options
396
- var javaOptions_2 = Http.buildJavaDownloadOptions(options);
397
- if (http_request_common_1.TNSHttpSettings.debug) {
393
+ const javaOptions = Http.buildJavaDownloadOptions(options);
394
+ if (TNSHttpSettings.debug) {
398
395
  // @ts-ignore
399
396
  if (global.__inspector && global.__inspector.isConnected) {
400
- debugger_1.NetworkAgent.requestWillBeSent(requestIdCounter, options);
397
+ NetworkAgent.requestWillBeSent(requestIdCounter, options);
401
398
  }
402
399
  }
403
- var makeRemoteRequest = function () {
404
- var callback = new com.github.triniwiz.async.Async2.Http.Callback({
405
- onCancel: function (param) {
400
+ const makeRemoteRequest = () => {
401
+ const callback = new com.github.triniwiz.async.Async2.Http.Callback({
402
+ onCancel(param) {
406
403
  reject({
407
- type: http_request_common_1.HttpError.Cancelled,
404
+ type: HttpError.Cancelled,
408
405
  result: param
409
406
  });
410
407
  requestCallbacks.delete(id);
411
408
  },
412
- onComplete: function (result) {
409
+ onComplete(result) {
413
410
  if (result && result.headers) {
414
- var length_2 = result.headers.size();
415
- var pair = void 0;
416
- for (var i = 0; i < length_2; i++) {
411
+ const length = result.headers.size();
412
+ let pair;
413
+ for (let i = 0; i < length; i++) {
417
414
  pair = result.headers.get(i);
418
415
  addHeader(headers, pair.key, pair.value);
419
416
  }
420
417
  }
421
418
  // send response data (for requestId) to network debugger
422
- var contentType = headers['Content-Type'];
423
- if (types_1.isNullOrUndefined(contentType)) {
419
+ let contentType = headers['Content-Type'];
420
+ if (isNullOrUndefined(contentType)) {
424
421
  contentType = headers['content-type'];
425
422
  }
426
- var acceptHeader;
427
- if (types_1.isNullOrUndefined(contentType)) {
423
+ let acceptHeader;
424
+ if (isNullOrUndefined(contentType)) {
428
425
  acceptHeader = headers['Accept'];
429
- if (types_1.isNullOrUndefined(acceptHeader)) {
426
+ if (isNullOrUndefined(acceptHeader)) {
430
427
  acceptHeader = headers['accept'];
431
428
  }
432
429
  }
433
430
  else {
434
431
  acceptHeader = contentType;
435
432
  }
436
- var returnType = 'text/plain';
437
- if (!types_1.isNullOrUndefined(acceptHeader) && types_1.isString(acceptHeader)) {
438
- var acceptValues = acceptHeader.split(',');
439
- var quality = [];
440
- var defaultQuality = [];
441
- var customQuality = [];
442
- for (var _i = 0, acceptValues_2 = acceptValues; _i < acceptValues_2.length; _i++) {
443
- var value = acceptValues_2[_i];
433
+ let returnType = 'text/plain';
434
+ if (!isNullOrUndefined(acceptHeader) && isString(acceptHeader)) {
435
+ let acceptValues = acceptHeader.split(',');
436
+ let quality = [];
437
+ let defaultQuality = [];
438
+ let customQuality = [];
439
+ for (let value of acceptValues) {
444
440
  if (value.indexOf(';q=') > -1) {
445
441
  customQuality.push(value);
446
442
  }
@@ -448,25 +444,25 @@ var Http = /** @class */ (function () {
448
444
  defaultQuality.push(value);
449
445
  }
450
446
  }
451
- customQuality = customQuality.sort(function (a, b) {
452
- var a_quality = parseFloat(a.substring(a.indexOf(';q=')).replace(';q=', ''));
453
- var b_quality = parseFloat(b.substring(b.indexOf(';q=')).replace(';q=', ''));
447
+ customQuality = customQuality.sort((a, b) => {
448
+ const a_quality = parseFloat(a.substring(a.indexOf(';q=')).replace(';q=', ''));
449
+ const b_quality = parseFloat(b.substring(b.indexOf(';q=')).replace(';q=', ''));
454
450
  return (b_quality - a_quality);
455
451
  });
456
- quality.push.apply(quality, defaultQuality);
457
- quality.push.apply(quality, customQuality);
452
+ quality.push(...defaultQuality);
453
+ quality.push(...customQuality);
458
454
  returnType = quality[0];
459
455
  }
460
456
  result['statusCode'] = statusCode;
461
- if (http_request_common_1.TNSHttpSettings.debug) {
457
+ if (TNSHttpSettings.debug) {
462
458
  // send response data (for requestId) to network debugger
463
459
  // @ts-ignore
464
460
  if (global.__inspector && global.__inspector.isConnected) {
465
- debugger_1.NetworkAgent.responseReceived(counter, {
461
+ NetworkAgent.responseReceived(counter, {
466
462
  url: result.url,
467
- statusCode: statusCode,
468
- headers: headers,
469
- responseAsString: types_1.isString ? (result.contentText ? result.contentText : result.content.toString()) : null,
463
+ statusCode,
464
+ headers,
465
+ responseAsString: isString ? (result.contentText ? result.contentText : result.content.toString()) : null,
470
466
  responseAsImage: null // TODO needs base64 Image
471
467
  }, headers);
472
468
  }
@@ -474,18 +470,18 @@ var Http = /** @class */ (function () {
474
470
  resolve(result.filePath);
475
471
  requestCallbacks.delete(id);
476
472
  },
477
- onError: function (param0, param1) {
473
+ onError(param0, param1) {
478
474
  reject({
479
- type: http_request_common_1.HttpError.Error,
475
+ type: HttpError.Error,
480
476
  message: param0
481
477
  });
482
478
  requestCallbacks.delete(id);
483
479
  },
484
- onHeaders: function (jHeaders, status) {
480
+ onHeaders(jHeaders, status) {
485
481
  statusCode = status;
486
- var length = jHeaders.size();
487
- var pair;
488
- for (var i = 0; i < length; i++) {
482
+ const length = jHeaders.size();
483
+ let pair;
484
+ for (let i = 0; i < length; i++) {
489
485
  pair = jHeaders.get(i);
490
486
  addHeader(headers, pair.key, pair.value);
491
487
  }
@@ -493,27 +489,27 @@ var Http = /** @class */ (function () {
493
489
  options.onHeaders(headers, statusCode);
494
490
  }
495
491
  requestCallbacks.delete(id);
496
- }, onLoading: function () {
492
+ }, onLoading() {
497
493
  options.onLoading();
498
494
  requestCallbacks.delete(id);
499
- }, onProgress: function (lengthComputable, loaded, total) {
495
+ }, onProgress(lengthComputable, loaded, total) {
500
496
  if (options.onProgress) {
501
497
  options.onProgress({
502
- lengthComputable: lengthComputable,
503
- loaded: loaded,
504
- total: total
498
+ lengthComputable,
499
+ loaded,
500
+ total
505
501
  });
506
502
  }
507
503
  requestCallbacks.delete(id);
508
504
  },
509
- onTimeout: function () {
505
+ onTimeout() {
510
506
  reject({
511
- type: http_request_common_1.HttpError.Timeout
507
+ type: HttpError.Timeout
512
508
  });
513
509
  requestCallbacks.delete(id);
514
510
  }
515
511
  });
516
- id = com.github.triniwiz.async.Async2.Http.getFileRequest(javaOptions_2, callback);
512
+ id = com.github.triniwiz.async.Async2.Http.getFileRequest(javaOptions, callback);
517
513
  requestCallbacks.set(id, callback);
518
514
  };
519
515
  makeRemoteRequest();
@@ -521,7 +517,7 @@ var Http = /** @class */ (function () {
521
517
  }
522
518
  catch (ex) {
523
519
  reject({
524
- type: http_request_common_1.HttpError.Error,
520
+ type: HttpError.Error,
525
521
  message: ex.message
526
522
  });
527
523
  }
@@ -530,12 +526,10 @@ var Http = /** @class */ (function () {
530
526
  com.github.triniwiz.async.Async2.Http.cancelRequest(id);
531
527
  };
532
528
  return request;
533
- };
534
- return Http;
535
- }());
536
- exports.Http = Http;
529
+ }
530
+ }
537
531
  function serialize(data) {
538
- var store;
532
+ let store;
539
533
  switch (typeof data) {
540
534
  case 'string':
541
535
  case 'boolean':
@@ -551,11 +545,11 @@ function serialize(data) {
551
545
  }
552
546
  if (Array.isArray(data)) {
553
547
  store = new org.json.JSONArray();
554
- data.forEach(function (item) { return store.put(serialize(item)); });
548
+ data.forEach((item) => store.put(serialize(item)));
555
549
  return store;
556
550
  }
557
551
  store = new org.json.JSONObject();
558
- Object.keys(data).forEach(function (key) { return store.put(key, serialize(data[key])); });
552
+ Object.keys(data).forEach((key) => store.put(key, serialize(data[key])));
559
553
  return store;
560
554
  }
561
555
  default:
@@ -563,14 +557,14 @@ function serialize(data) {
563
557
  }
564
558
  }
565
559
  function deserialize(data) {
566
- if (types_1.isNullOrUndefined(data)) {
560
+ if (isNullOrUndefined(data)) {
567
561
  return null;
568
562
  }
569
563
  if (typeof data !== 'object') {
570
564
  return data;
571
565
  }
572
566
  if (typeof data.getClass === 'function') {
573
- var store = void 0;
567
+ let store;
574
568
  switch (data.getClass().getName()) {
575
569
  case 'java.lang.String': {
576
570
  return String(data);
@@ -586,16 +580,16 @@ function deserialize(data) {
586
580
  }
587
581
  case 'org.json.JSONArray': {
588
582
  store = [];
589
- for (var j = 0; j < data.length(); j++) {
583
+ for (let j = 0; j < data.length(); j++) {
590
584
  store[j] = deserialize(data.get(j));
591
585
  }
592
586
  break;
593
587
  }
594
588
  case 'org.json.JSONObject': {
595
589
  store = {};
596
- var i = data.keys();
590
+ let i = data.keys();
597
591
  while (i.hasNext()) {
598
- var key = i.next();
592
+ let key = i.next();
599
593
  store[key] = deserialize(data.get(key));
600
594
  }
601
595
  break;
@@ -611,13 +605,13 @@ function deserialize(data) {
611
605
  }
612
606
  }
613
607
  function decodeResponse(raw, encoding) {
614
- var charsetName = 'UTF-8';
608
+ let charsetName = 'UTF-8';
615
609
  if (encoding === HttpResponseEncoding.GBK) {
616
610
  charsetName = 'GBK';
617
611
  }
618
612
  return new java.lang.String(raw.array(), charsetName);
619
613
  }
620
- function addHeader(headers, key, value) {
614
+ export function addHeader(headers, key, value) {
621
615
  if (!headers[key]) {
622
616
  headers[key] = value;
623
617
  }
@@ -625,10 +619,9 @@ function addHeader(headers, key, value) {
625
619
  headers[key].push(value);
626
620
  }
627
621
  else {
628
- var values = [headers[key]];
622
+ const values = [headers[key]];
629
623
  values.push(value);
630
624
  headers[key] = values;
631
625
  }
632
626
  }
633
- exports.addHeader = addHeader;
634
627
  //# sourceMappingURL=http.android.js.map