imports improved

This commit is contained in:
Vladimir Enchev
2015-12-14 17:08:24 +02:00
parent cbf69e60e8
commit 074ac89871
90 changed files with 529 additions and 266 deletions

View File

@@ -1,13 +1,13 @@
/**
* Android specific http request implementation.
*/
import imageSource = require("image-source");
import types = require("utils/types");
import utils = require("utils/utils");
import * as utilsModule from "utils/utils";
import * as imageSourceModule from "image-source";
import * as platformModule from "platform";
// this is imported for definition purposes only
import http = require("http");
import platform = require("platform");
var requestIdCounter = 0;
var pendingRequests = {};
@@ -51,9 +51,15 @@ function onRequestComplete(requestId: number, result: com.tns.Async.Http.Request
throw new Error("Response content may not be converted to string");
}
},
toJSON: () => { return utils.parseJSON(result.responseAsString); },
toJSON: () => {
var utils: typeof utilsModule = require("utils/utils");
return utils.parseJSON(result.responseAsString);
},
toImage: () => {
return new Promise<imageSource.ImageSource>((resolveImage, rejectImage) => {
var imageSource: typeof imageSourceModule = require("image-source");
return new Promise<any>((resolveImage, rejectImage) => {
if (result.responseAsImage != null) {
resolveImage(imageSource.fromNativeSource(result.responseAsImage));
}
@@ -98,6 +104,8 @@ function buildJavaOptions(options: http.HttpRequestOptions) {
javaOptions.headers = arrayList;
}
var platform: typeof platformModule = require("platform");
// pass the maximum available image size to the request options in case we need a bitmap conversion
var screen = platform.screen.mainScreen;
javaOptions.screenWidth = screen.widthPixels;

View File

@@ -2,9 +2,9 @@
* iOS specific http request implementation.
*/
import http = require("http");
import imageSource = require("image-source");
import types = require("utils/types");
import utils = require("utils/utils");
import * as typesModule from "utils/types";
import * as imageSourceModule from "image-source";
import * as utilsModule from "utils/utils";
var GET = "GET";
var USER_AGENT_HEADER = "User-Agent";
@@ -14,6 +14,8 @@ export function request(options: http.HttpRequestOptions): Promise<http.HttpResp
return new Promise<http.HttpResponse>((resolve, reject) => {
try {
var types: typeof typesModule = require("utils/types");
var sessionConfig = NSURLSessionConfiguration.defaultSessionConfiguration();
var queue = NSOperationQueue.mainQueue();
var session = NSURLSession.sessionWithConfigurationDelegateDelegateQueue(
@@ -61,9 +63,13 @@ export function request(options: http.HttpRequestOptions): Promise<http.HttpResp
raw: data,
toString: () => { return NSDataToString(data); },
toJSON: () => {
var utils: typeof utilsModule = require("utils/utils");
return utils.parseJSON(NSDataToString(data));
},
toImage: () => {
var imageSource: typeof imageSourceModule = require("image-source");
if (UIImage.imageWithData["async"]) {
return UIImage.imageWithData["async"](UIImage, [data])
.then(image => {
@@ -77,7 +83,7 @@ export function request(options: http.HttpRequestOptions): Promise<http.HttpResp
});
}
return new Promise<imageSource.ImageSource>((resolveImage, rejectImage) => {
return new Promise<any>((resolveImage, rejectImage) => {
var img = imageSource.fromData(data);
if (img instanceof imageSource.ImageSource) {
resolveImage(img);