Skip to content

Commit d7da251

Browse files
Release v1.5.4
1 parent 7040403 commit d7da251

File tree

6 files changed

+101
-54
lines changed

6 files changed

+101
-54
lines changed

dist/dynamics-web-api-callbacks.js

Lines changed: 45 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/*! dynamics-web-api-callbacks v1.5.3 (c) 2019 Aleksandr Rogov */
1+
/*! dynamics-web-api-callbacks v1.5.4 (c) 2019 Aleksandr Rogov */
22
(function webpackUniversalModuleDefinition(root, factory) {
33
if(typeof exports === 'object' && typeof module === 'object')
44
module.exports = factory();
@@ -150,7 +150,7 @@ module.exports = DWA;
150150
/* 1 */
151151
/***/ (function(module, exports, __webpack_require__) {
152152

153-
function isNull (value) {
153+
function isNull(value) {
154154
return typeof value === "undefined" || typeof value === "unknown" || value == null;
155155
}
156156

@@ -189,16 +189,12 @@ function getXrmContext() {
189189
function getClientUrl() {
190190
var context = getXrmContext();
191191

192-
if (context) {
193-
var clientUrl = context.getClientUrl();
192+
var clientUrl = context.getClientUrl();
194193

195-
if (clientUrl.match(/\/$/)) {
196-
clientUrl = clientUrl.substring(0, clientUrl.length - 1);
197-
}
198-
return clientUrl;
194+
if (clientUrl.match(/\/$/)) {
195+
clientUrl = clientUrl.substring(0, clientUrl.length - 1);
199196
}
200-
201-
return '';
197+
return clientUrl;
202198
}
203199

204200
function initWebApiUrl(version) {
@@ -948,7 +944,17 @@ function sendRequest(method, path, config, data, additionalHeaders, responsePara
948944
token);
949945
}
950946

951-
executeRequest(method, config.webApiUrl + path, stringifiedData, additionalHeaders, responseParseParams, successCallback, errorCallback, isAsync);
947+
executeRequest({
948+
method: method,
949+
uri: config.webApiUrl + path,
950+
data: stringifiedData,
951+
additionalHeaders: additionalHeaders,
952+
responseParams: responseParseParams,
953+
successCallback: successCallback,
954+
errorCallback: errorCallback,
955+
isAsync: isAsync,
956+
timeout: config.timeout
957+
});
952958
};
953959

954960
//call a token refresh callback only if it is set and there is no "Authorization" header set yet
@@ -1037,6 +1043,7 @@ module.exports = {
10371043

10381044
};
10391045

1046+
10401047
/***/ }),
10411048
/* 6 */
10421049
/***/ (function(module, exports, __webpack_require__) {
@@ -2888,18 +2895,19 @@ var parseResponseHeaders = __webpack_require__(9);
28882895
/**
28892896
* Sends a request to given URL with given parameters
28902897
*
2891-
* @param {string} method - Method of the request.
2892-
* @param {string} uri - Request URI.
2893-
* @param {string} [data] - Data to send in the request.
2894-
* @param {Object} [additionalHeaders] - Object with headers. IMPORTANT! This object does not contain default headers needed for every request.
2895-
* @param {any} responseParams - parameters for parsing the response
2896-
* @param {Function} successCallback - A callback called on success of the request.
2897-
* @param {Function} errorCallback - A callback called when a request failed.
2898-
* @param {boolean} [async] - Indicates if the request needs to be synchronous
28992898
*/
2900-
var xhrRequest = function (method, uri, data, additionalHeaders, responseParams, successCallback, errorCallback, async) {
2899+
var xhrRequest = function (options) {
2900+
var method = options.method;
2901+
var uri = options.uri;
2902+
var data = options.data;
2903+
var additionalHeaders = options.additionalHeaders;
2904+
var responseParams = options.responseParams;
2905+
var successCallback = options.successCallback;
2906+
var errorCallback = options.errorCallback;
2907+
var isAsync = options.isAsync;
2908+
29012909
var request = new XMLHttpRequest();
2902-
request.open(method, uri, async);
2910+
request.open(method, uri, isAsync);
29032911

29042912
//set additional headers
29052913
for (var key in additionalHeaders) {
@@ -2948,14 +2956,26 @@ var xhrRequest = function (method, uri, data, additionalHeaders, responseParams,
29482956
}
29492957
};
29502958

2959+
if (options.timeout) {
2960+
request.timeout = options.timeout;
2961+
}
2962+
29512963
request.onerror = function () {
2952-
errorCallback({ message: "Network Error" });
2964+
errorCallback({
2965+
status: request.status,
2966+
statusText: request.statusText,
2967+
message: request.responseText || "Network Error"
2968+
});
29532969
responseParams.length = 0;
29542970
request = null;
29552971
};
29562972

2957-
request.ontimeout = function (error) {
2958-
errorCallback({ message: "Request Timed Out" });
2973+
request.ontimeout = function () {
2974+
errorCallback({
2975+
status: request.status,
2976+
statusText: request.statusText,
2977+
message: request.responseText || "Request Timed Out"
2978+
});
29592979
responseParams.length = 0;
29602980
request = null;
29612981
};
@@ -2967,6 +2987,7 @@ var xhrRequest = function (method, uri, data, additionalHeaders, responseParams,
29672987

29682988
module.exports = xhrRequest;
29692989

2990+
29702991
/***/ }),
29712992
/* 11 */
29722993
/***/ (function(module, exports, __webpack_require__) {

dist/dynamics-web-api-callbacks.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/dynamics-web-api.js

Lines changed: 50 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/*! dynamics-web-api v1.5.3 (c) 2019 Aleksandr Rogov */
1+
/*! dynamics-web-api v1.5.4 (c) 2019 Aleksandr Rogov */
22
(function webpackUniversalModuleDefinition(root, factory) {
33
if(typeof exports === 'object' && typeof module === 'object')
44
module.exports = factory();
@@ -150,7 +150,7 @@ module.exports = DWA;
150150
/* 1 */
151151
/***/ (function(module, exports, __webpack_require__) {
152152

153-
function isNull (value) {
153+
function isNull(value) {
154154
return typeof value === "undefined" || typeof value === "unknown" || value == null;
155155
}
156156

@@ -189,16 +189,12 @@ function getXrmContext() {
189189
function getClientUrl() {
190190
var context = getXrmContext();
191191

192-
if (context) {
193-
var clientUrl = context.getClientUrl();
192+
var clientUrl = context.getClientUrl();
194193

195-
if (clientUrl.match(/\/$/)) {
196-
clientUrl = clientUrl.substring(0, clientUrl.length - 1);
197-
}
198-
return clientUrl;
194+
if (clientUrl.match(/\/$/)) {
195+
clientUrl = clientUrl.substring(0, clientUrl.length - 1);
199196
}
200-
201-
return '';
197+
return clientUrl;
202198
}
203199

204200
function initWebApiUrl(version) {
@@ -672,7 +668,17 @@ function sendRequest(method, path, config, data, additionalHeaders, responsePara
672668
token);
673669
}
674670

675-
executeRequest(method, config.webApiUrl + path, stringifiedData, additionalHeaders, responseParseParams, successCallback, errorCallback, isAsync);
671+
executeRequest({
672+
method: method,
673+
uri: config.webApiUrl + path,
674+
data: stringifiedData,
675+
additionalHeaders: additionalHeaders,
676+
responseParams: responseParseParams,
677+
successCallback: successCallback,
678+
errorCallback: errorCallback,
679+
isAsync: isAsync,
680+
timeout: config.timeout
681+
});
676682
};
677683

678684
//call a token refresh callback only if it is set and there is no "Authorization" header set yet
@@ -761,6 +767,7 @@ module.exports = {
761767

762768
};
763769

770+
764771
/***/ }),
765772
/* 5 */
766773
/***/ (function(module, exports, __webpack_require__) {
@@ -890,6 +897,11 @@ function DynamicsWebApi(config) {
890897
_internalConfig.includeAnnotations = config.includeAnnotations;
891898
}
892899

900+
if (config.timeout) {
901+
ErrorHelper.numberParameterCheck(config.timeout, "DynamicsWebApi.setConfig", "config.timeout");
902+
_internalConfig.timeout = config.timeout;
903+
}
904+
893905
if (config.maxPageSize) {
894906
ErrorHelper.numberParameterCheck(config.maxPageSize, "DynamicsWebApi.setConfig", "config.maxPageSize");
895907
_internalConfig.maxPageSize = config.maxPageSize;
@@ -2427,18 +2439,19 @@ var parseResponseHeaders = __webpack_require__(8);
24272439
/**
24282440
* Sends a request to given URL with given parameters
24292441
*
2430-
* @param {string} method - Method of the request.
2431-
* @param {string} uri - Request URI.
2432-
* @param {string} [data] - Data to send in the request.
2433-
* @param {Object} [additionalHeaders] - Object with headers. IMPORTANT! This object does not contain default headers needed for every request.
2434-
* @param {any} responseParams - parameters for parsing the response
2435-
* @param {Function} successCallback - A callback called on success of the request.
2436-
* @param {Function} errorCallback - A callback called when a request failed.
2437-
* @param {boolean} [async] - Indicates if the request needs to be synchronous
24382442
*/
2439-
var xhrRequest = function (method, uri, data, additionalHeaders, responseParams, successCallback, errorCallback, async) {
2443+
var xhrRequest = function (options) {
2444+
var method = options.method;
2445+
var uri = options.uri;
2446+
var data = options.data;
2447+
var additionalHeaders = options.additionalHeaders;
2448+
var responseParams = options.responseParams;
2449+
var successCallback = options.successCallback;
2450+
var errorCallback = options.errorCallback;
2451+
var isAsync = options.isAsync;
2452+
24402453
var request = new XMLHttpRequest();
2441-
request.open(method, uri, async);
2454+
request.open(method, uri, isAsync);
24422455

24432456
//set additional headers
24442457
for (var key in additionalHeaders) {
@@ -2487,14 +2500,26 @@ var xhrRequest = function (method, uri, data, additionalHeaders, responseParams,
24872500
}
24882501
};
24892502

2503+
if (options.timeout) {
2504+
request.timeout = options.timeout;
2505+
}
2506+
24902507
request.onerror = function () {
2491-
errorCallback({ message: "Network Error" });
2508+
errorCallback({
2509+
status: request.status,
2510+
statusText: request.statusText,
2511+
message: request.responseText || "Network Error"
2512+
});
24922513
responseParams.length = 0;
24932514
request = null;
24942515
};
24952516

2496-
request.ontimeout = function (error) {
2497-
errorCallback({ message: "Request Timed Out" });
2517+
request.ontimeout = function () {
2518+
errorCallback({
2519+
status: request.status,
2520+
statusText: request.statusText,
2521+
message: request.responseText || "Request Timed Out"
2522+
});
24982523
responseParams.length = 0;
24992524
request = null;
25002525
};
@@ -2506,6 +2531,7 @@ var xhrRequest = function (method, uri, data, additionalHeaders, responseParams,
25062531

25072532
module.exports = xhrRequest;
25082533

2534+
25092535
/***/ }),
25102536
/* 10 */
25112537
/***/ (function(module, exports, __webpack_require__) {

dist/dynamics-web-api.min.js

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package-lock.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "dynamics-web-api",
3-
"version": "1.5.3",
3+
"version": "1.5.4",
44
"description": "DynamicsWebApi is a Microsoft Dynamics CRM Web API helper library",
55
"keywords": [
66
"crm",

0 commit comments

Comments
 (0)