@esri/arcgis-rest-request
Advanced tools
Comparing version 1.6.0 to 1.7.0
@@ -0,1 +1,22 @@ | ||
export declare type GrantTypes = "authorization_code" | "refresh_token" | "client_credentials" | "exchange_refresh_token"; | ||
export interface IGenerateTokenParams extends IParams { | ||
username?: string; | ||
password?: string; | ||
expiration?: number; | ||
token?: string; | ||
serverUrl?: string; | ||
} | ||
export interface IFetchTokenParams extends IParams { | ||
client_id: string; | ||
client_secret?: string; | ||
grant_type: GrantTypes; | ||
redirect_uri?: string; | ||
refresh_token?: string; | ||
code?: string; | ||
} | ||
export interface ITokenRequestOptions { | ||
params?: IGenerateTokenParams | IFetchTokenParams; | ||
httpMethod?: HTTPMethods; | ||
fetch?: (input: RequestInfo, init?: RequestInit) => Promise<Response>; | ||
} | ||
/** | ||
@@ -19,3 +40,3 @@ * Authentication can be supplied to `request` via [`UserSession`](../../auth/UserSession/) or [`ApplicationSession`](../../auth/ApplicationSession/). Both classes extend `IAuthenticationManager`. | ||
portal: string; | ||
getToken(url: string): Promise<string>; | ||
getToken(url: string, requestOptions?: ITokenRequestOptions): Promise<string>; | ||
} | ||
@@ -22,0 +43,0 @@ /** |
@@ -1,2 +0,2 @@ | ||
/* Copyright (c) 2017 Environmental Systems Research Institute, Inc. | ||
/* Copyright (c) 2017-2018 Environmental Systems Research Institute, Inc. | ||
* Apache-2.0 */ | ||
@@ -47,6 +47,10 @@ import * as tslib_1 from "tslib"; | ||
if (requestOptions === void 0) { requestOptions = { params: { f: "json" } }; } | ||
var options = tslib_1.__assign({ httpMethod: "POST", fetch: fetch }, requestOptions); | ||
var options = tslib_1.__assign({ httpMethod: "POST" }, requestOptions); | ||
var missingGlobals = []; | ||
var recommendedPackages = []; | ||
if (!options.fetch) { | ||
// don't check for a global fetch if a custom implementation was passed through | ||
if (!options.fetch && typeof fetch !== "undefined") { | ||
options.fetch = fetch.bind(Function("return this")()); | ||
} | ||
else { | ||
missingGlobals.push("`fetch`"); | ||
@@ -66,5 +70,2 @@ recommendedPackages.push("`isomorphic-fetch`"); | ||
} | ||
if (options.fetch === fetch) { | ||
options.fetch = fetch.bind(Function("return this")()); | ||
} | ||
var httpMethod = options.httpMethod, authentication = options.authentication; | ||
@@ -77,3 +78,7 @@ var params = tslib_1.__assign({ f: "json" }, requestOptions.params); | ||
}; | ||
return (authentication ? authentication.getToken(url) : Promise.resolve("")) | ||
return (authentication | ||
? authentication.getToken(url, { | ||
fetch: options.fetch | ||
}) | ||
: Promise.resolve("")) | ||
.then(function (token) { | ||
@@ -104,4 +109,5 @@ if (token.length) { | ||
if (!requiresFormData(params)) { | ||
fetchOptions.headers = new Headers(); | ||
fetchOptions.headers.append("Content-Type", "application/x-www-form-urlencoded"); | ||
fetchOptions.headers = {}; | ||
fetchOptions.headers["Content-Type"] = | ||
"application/x-www-form-urlencoded"; | ||
} | ||
@@ -108,0 +114,0 @@ return options.fetch(url, fetchOptions); |
"use strict"; | ||
/* Copyright (c) 2017 Environmental Systems Research Institute, Inc. | ||
/* Copyright (c) 2017-2018 Environmental Systems Research Institute, Inc. | ||
* Apache-2.0 */ | ||
@@ -49,6 +49,10 @@ Object.defineProperty(exports, "__esModule", { value: true }); | ||
if (requestOptions === void 0) { requestOptions = { params: { f: "json" } }; } | ||
var options = tslib_1.__assign({ httpMethod: "POST", fetch: fetch }, requestOptions); | ||
var options = tslib_1.__assign({ httpMethod: "POST" }, requestOptions); | ||
var missingGlobals = []; | ||
var recommendedPackages = []; | ||
if (!options.fetch) { | ||
// don't check for a global fetch if a custom implementation was passed through | ||
if (!options.fetch && typeof fetch !== "undefined") { | ||
options.fetch = fetch.bind(Function("return this")()); | ||
} | ||
else { | ||
missingGlobals.push("`fetch`"); | ||
@@ -68,5 +72,2 @@ recommendedPackages.push("`isomorphic-fetch`"); | ||
} | ||
if (options.fetch === fetch) { | ||
options.fetch = fetch.bind(Function("return this")()); | ||
} | ||
var httpMethod = options.httpMethod, authentication = options.authentication; | ||
@@ -79,3 +80,7 @@ var params = tslib_1.__assign({ f: "json" }, requestOptions.params); | ||
}; | ||
return (authentication ? authentication.getToken(url) : Promise.resolve("")) | ||
return (authentication | ||
? authentication.getToken(url, { | ||
fetch: options.fetch | ||
}) | ||
: Promise.resolve("")) | ||
.then(function (token) { | ||
@@ -106,4 +111,5 @@ if (token.length) { | ||
if (!process_params_1.requiresFormData(params)) { | ||
fetchOptions.headers = new Headers(); | ||
fetchOptions.headers.append("Content-Type", "application/x-www-form-urlencoded"); | ||
fetchOptions.headers = {}; | ||
fetchOptions.headers["Content-Type"] = | ||
"application/x-www-form-urlencoded"; | ||
} | ||
@@ -110,0 +116,0 @@ return options.fetch(url, fetchOptions); |
/* @preserve | ||
* @esri/arcgis-rest-request - v1.6.0 - Fri Jul 27 2018 15:13:00 GMT-0700 (PDT) | ||
* Copyright (c) 2017 - 2018 Environmental Systems Research Institute, Inc. | ||
* Apache-2.0 | ||
* @esri/arcgis-rest-request - v1.7.0 - Apache-2.0 | ||
* Copyright (c) 2017-2018 Esri, Inc. | ||
* Wed Aug 08 2018 00:08:01 GMT-0700 (PDT) | ||
*/ | ||
@@ -322,3 +322,3 @@ (function (global, factory) { | ||
/* Copyright (c) 2017 Environmental Systems Research Institute, Inc. | ||
/* Copyright (c) 2017-2018 Environmental Systems Research Institute, Inc. | ||
* Apache-2.0 */ | ||
@@ -363,6 +363,10 @@ /** | ||
if (requestOptions === void 0) { requestOptions = { params: { f: "json" } }; } | ||
var options = __assign({ httpMethod: "POST", fetch: fetch }, requestOptions); | ||
var options = __assign({ httpMethod: "POST" }, requestOptions); | ||
var missingGlobals = []; | ||
var recommendedPackages = []; | ||
if (!options.fetch) { | ||
// don't check for a global fetch if a custom implementation was passed through | ||
if (!options.fetch && typeof fetch !== "undefined") { | ||
options.fetch = fetch.bind(Function("return this")()); | ||
} | ||
else { | ||
missingGlobals.push("`fetch`"); | ||
@@ -382,5 +386,2 @@ recommendedPackages.push("`isomorphic-fetch`"); | ||
} | ||
if (options.fetch === fetch) { | ||
options.fetch = fetch.bind(Function("return this")()); | ||
} | ||
var httpMethod = options.httpMethod, authentication = options.authentication; | ||
@@ -393,3 +394,7 @@ var params = __assign({ f: "json" }, requestOptions.params); | ||
}; | ||
return (authentication ? authentication.getToken(url) : Promise.resolve("")) | ||
return (authentication | ||
? authentication.getToken(url, { | ||
fetch: options.fetch | ||
}) | ||
: Promise.resolve("")) | ||
.then(function (token) { | ||
@@ -420,4 +425,5 @@ if (token.length) { | ||
if (!requiresFormData(params)) { | ||
fetchOptions.headers = new Headers(); | ||
fetchOptions.headers.append("Content-Type", "application/x-www-form-urlencoded"); | ||
fetchOptions.headers = {}; | ||
fetchOptions.headers["Content-Type"] = | ||
"application/x-www-form-urlencoded"; | ||
} | ||
@@ -424,0 +430,0 @@ return options.fetch(url, fetchOptions); |
/* @preserve | ||
* @esri/arcgis-rest-request - v1.6.0 - Fri Jul 27 2018 15:13:03 GMT-0700 (PDT) | ||
* Copyright (c) 2017 - 2018 Environmental Systems Research Institute, Inc. | ||
* Apache-2.0 | ||
* @esri/arcgis-rest-request - v1.7.0 - Apache-2.0 | ||
* Copyright (c) 2017-2018 Esri, Inc. | ||
* Wed Aug 08 2018 00:08:08 GMT-0700 (PDT) | ||
*/ | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(e.arcgisRest=e.arcgisRest||{})}(this,function(e){"use strict";var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])};var r=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e},o=function(){return function(e,t,r,o,n){void 0===e&&(e="UNKNOWN_ERROR"),void 0===t&&(t="UNKNOWN_ERROR_CODE"),this.name="ArcGISRequestError",this.message="UNKNOWN_ERROR_CODE"===t?e:t+": "+e,this.originalMessage=e,this.code=t,this.response=r,this.url=o,this.options=n}}();o.prototype=Object.create(Error.prototype),o.prototype.constructor=o;var n,a=function(e){function o(t,r,o,n,a){void 0===t&&(t="AUTHENTICATION_ERROR"),void 0===r&&(r="AUTHENTICATION_ERROR_CODE");var s=e.call(this,t,r,o,n,a)||this;return s.name="ArcGISAuthError",s.message="AUTHENTICATION_ERROR_CODE"===r?t:r+": "+t,s}return function(e,r){function o(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(o.prototype=r.prototype,new o)}(o,e),o.prototype.retry=function(e,t){var o=this;void 0===t&&(t=3);var n=0,a=function(s,c){e(o.url,o.options).then(function(e){var t=r({},o.options,{authentication:e});return n+=1,p(o.url,t)}).then(function(e){s(e)}).catch(function(e){"ArcGISAuthError"===e.name&&n<t?a(s,c):"ArcGISAuthError"===e.name&&n>=t?c(o):c(e)})};return new Promise(function(e,t){a(e,t)})},o}(o);function s(e,t,r,n){if(e.code>=400){var s=e.message,c=e.code;throw new o(s,c,e,t,n)}if(e.error){var i=e.error,u=(s=i.message,c=i.code,i.messageCode),f=u||c||"UNKNOWN_ERROR_CODE";if(498===c||499===c||"GWM_0003"===u)throw new a(s,f,e,t,n);throw new o(s,f,e,t,n)}if("failed"===e.status){s=void 0,c="UNKNOWN_ERROR_CODE";try{s=JSON.parse(e.statusMessage).message,c=JSON.parse(e.statusMessage).code}catch(t){s=e.statusMessage}throw new o(s,c,e,t,n)}return e}function c(e){return Object.keys(e).some(function(t){var r=e[t];if(!r)return!1;switch(r.constructor.name){case"Array":case"Object":case"Date":case"Function":case"Boolean":case"String":case"Number":return!1;default:return!0}})}function i(e){var t={};return Object.keys(e).forEach(function(r){var o=e[r];if(o||0===o||"boolean"==typeof o||"string"==typeof o){var n;switch(o.constructor.name){case"Array":n=o[0]&&o[0].constructor&&"Object"===o[0].constructor.name?JSON.stringify(o):o.join(",");break;case"Object":n=JSON.stringify(o);break;case"Date":n=o.valueOf();break;case"Function":n=null;break;case"Boolean":n=o+"";break;default:n=o}(n||0===n||"string"==typeof n)&&(t[r]=n)}}),t}function u(e,t){return encodeURIComponent(e)+"="+encodeURIComponent(t)}function f(e){var t=i(e);return Object.keys(t).map(function(e){return u(e,t[e])}).join("&")}function h(e){var t=c(e),r=i(e);if(t){var o=new FormData;return Object.keys(r).forEach(function(e){"file"===e&&r[e].name?o.append(e,r[e],r[e].name):o.append(e,r[e])}),o}return f(e)}function p(e,t){void 0===t&&(t={params:{f:"json"}});var n=r({httpMethod:"POST",fetch:fetch},t),a=[],i=[];if(n.fetch||(a.push("`fetch`"),i.push("`isomorphic-fetch`")),Promise||(a.push("`Promise`"),i.push("`es6-promise`")),FormData||(a.push("`FormData`"),i.push("`isomorphic-form-data`")),!n.fetch||!Promise||!FormData)throw new Error("`arcgis-rest-request` requires global variables for `fetch`, `Promise` and `FormData` to be present in the global scope. You are missing "+a.join(", ")+". We recommend installing the "+i.join(", ")+" modules at the root of your application to add these to the global scope. See https://bit.ly/2KNwWaJ for more info.");n.fetch===fetch&&(n.fetch=fetch.bind(Function("return this")()));var u=n.httpMethod,p=n.authentication,l=r({f:"json"},t.params),m={method:u,credentials:"same-origin"};return(p?p.getToken(e):Promise.resolve("")).then(function(t){if(t.length&&(l.token=t),"GET"===m.method){var r=""===f(l)?e:e+"?"+f(l);n.maxUrlLength&&r.length>n.maxUrlLength?m.method="POST":e=r}return"POST"===m.method&&(m.body=h(l)),c(l)||(m.headers=new Headers,m.headers.append("Content-Type","application/x-www-form-urlencoded")),n.fetch(e,m)}).then(function(t){if(!t.ok){var r=t.status,a=t.statusText;throw new o(a,"HTTP "+r,t,e,n)}switch(l.f){case"json":case"geojson":return t.json();case"html":case"text":return t.text();case"image":case"zip":default:return t.blob()}}).then(function(t){return"json"===l.f||"geojson"===l.f?s(t,e,0,n):t})}function l(e){return void 0===e&&(e={}),e.portal?e.portal:e.authentication?e.authentication.portal:"https://www.arcgis.com/sharing/rest"}function m(e,t){var o=e||"self";return p(l(t)+"/portals/"+o,r({httpMethod:"GET"},t))}(n=e.ErrorTypes||(e.ErrorTypes={})).ArcGISRequestError="ArcGISRequestError",n.ArcGISAuthError="ArcGISAuthError",e.request=p,e.encodeFormData=h,e.encodeParam=u,e.encodeQueryString=f,e.checkForErrors=s,e.warn=function(e){console&&console.warn&&console.warn.apply(console,[e])},e.ArcGISRequestError=o,e.ArcGISAuthError=a,e.requiresFormData=c,e.processParams=i,e.getSelf=function(e){return m(null,e)},e.getPortal=m,e.getPortalUrl=l,Object.defineProperty(e,"__esModule",{value:!0})}); | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(e.arcgisRest=e.arcgisRest||{})}(this,function(e){"use strict";var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])};var r=Object.assign||function(e){for(var t,r=1,o=arguments.length;r<o;r++)for(var n in t=arguments[r])Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n]);return e},o=function(){return function(e,t,r,o,n){void 0===e&&(e="UNKNOWN_ERROR"),void 0===t&&(t="UNKNOWN_ERROR_CODE"),this.name="ArcGISRequestError",this.message="UNKNOWN_ERROR_CODE"===t?e:t+": "+e,this.originalMessage=e,this.code=t,this.response=r,this.url=o,this.options=n}}();o.prototype=Object.create(Error.prototype),o.prototype.constructor=o;var n,a=function(e){function o(t,r,o,n,a){void 0===t&&(t="AUTHENTICATION_ERROR"),void 0===r&&(r="AUTHENTICATION_ERROR_CODE");var s=e.call(this,t,r,o,n,a)||this;return s.name="ArcGISAuthError",s.message="AUTHENTICATION_ERROR_CODE"===r?t:r+": "+t,s}return function(e,r){function o(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(o.prototype=r.prototype,new o)}(o,e),o.prototype.retry=function(e,t){var o=this;void 0===t&&(t=3);var n=0,a=function(s,c){e(o.url,o.options).then(function(e){var t=r({},o.options,{authentication:e});return n+=1,p(o.url,t)}).then(function(e){s(e)}).catch(function(e){"ArcGISAuthError"===e.name&&n<t?a(s,c):"ArcGISAuthError"===e.name&&n>=t?c(o):c(e)})};return new Promise(function(e,t){a(e,t)})},o}(o);function s(e,t,r,n){if(e.code>=400){var s=e.message,c=e.code;throw new o(s,c,e,t,n)}if(e.error){var i=e.error,u=(s=i.message,c=i.code,i.messageCode),f=u||c||"UNKNOWN_ERROR_CODE";if(498===c||499===c||"GWM_0003"===u)throw new a(s,f,e,t,n);throw new o(s,f,e,t,n)}if("failed"===e.status){s=void 0,c="UNKNOWN_ERROR_CODE";try{s=JSON.parse(e.statusMessage).message,c=JSON.parse(e.statusMessage).code}catch(t){s=e.statusMessage}throw new o(s,c,e,t,n)}return e}function c(e){return Object.keys(e).some(function(t){var r=e[t];if(!r)return!1;switch(r.constructor.name){case"Array":case"Object":case"Date":case"Function":case"Boolean":case"String":case"Number":return!1;default:return!0}})}function i(e){var t={};return Object.keys(e).forEach(function(r){var o=e[r];if(o||0===o||"boolean"==typeof o||"string"==typeof o){var n;switch(o.constructor.name){case"Array":n=o[0]&&o[0].constructor&&"Object"===o[0].constructor.name?JSON.stringify(o):o.join(",");break;case"Object":n=JSON.stringify(o);break;case"Date":n=o.valueOf();break;case"Function":n=null;break;case"Boolean":n=o+"";break;default:n=o}(n||0===n||"string"==typeof n)&&(t[r]=n)}}),t}function u(e,t){return encodeURIComponent(e)+"="+encodeURIComponent(t)}function f(e){var t=i(e);return Object.keys(t).map(function(e){return u(e,t[e])}).join("&")}function h(e){var t=c(e),r=i(e);if(t){var o=new FormData;return Object.keys(r).forEach(function(e){"file"===e&&r[e].name?o.append(e,r[e],r[e].name):o.append(e,r[e])}),o}return f(e)}function p(e,t){void 0===t&&(t={params:{f:"json"}});var n=r({httpMethod:"POST"},t),a=[],i=[];if(n.fetch||"undefined"==typeof fetch?(a.push("`fetch`"),i.push("`isomorphic-fetch`")):n.fetch=fetch.bind(Function("return this")()),Promise||(a.push("`Promise`"),i.push("`es6-promise`")),FormData||(a.push("`FormData`"),i.push("`isomorphic-form-data`")),!n.fetch||!Promise||!FormData)throw new Error("`arcgis-rest-request` requires global variables for `fetch`, `Promise` and `FormData` to be present in the global scope. You are missing "+a.join(", ")+". We recommend installing the "+i.join(", ")+" modules at the root of your application to add these to the global scope. See https://bit.ly/2KNwWaJ for more info.");var u=n.httpMethod,p=n.authentication,l=r({f:"json"},t.params),m={method:u,credentials:"same-origin"};return(p?p.getToken(e,{fetch:n.fetch}):Promise.resolve("")).then(function(t){if(t.length&&(l.token=t),"GET"===m.method){var r=""===f(l)?e:e+"?"+f(l);n.maxUrlLength&&r.length>n.maxUrlLength?m.method="POST":e=r}return"POST"===m.method&&(m.body=h(l)),c(l)||(m.headers={},m.headers["Content-Type"]="application/x-www-form-urlencoded"),n.fetch(e,m)}).then(function(t){if(!t.ok){var r=t.status,a=t.statusText;throw new o(a,"HTTP "+r,t,e,n)}switch(l.f){case"json":case"geojson":return t.json();case"html":case"text":return t.text();case"image":case"zip":default:return t.blob()}}).then(function(t){return"json"===l.f||"geojson"===l.f?s(t,e,0,n):t})}function l(e){return void 0===e&&(e={}),e.portal?e.portal:e.authentication?e.authentication.portal:"https://www.arcgis.com/sharing/rest"}function m(e,t){var o=e||"self";return p(l(t)+"/portals/"+o,r({httpMethod:"GET"},t))}(n=e.ErrorTypes||(e.ErrorTypes={})).ArcGISRequestError="ArcGISRequestError",n.ArcGISAuthError="ArcGISAuthError",e.request=p,e.encodeFormData=h,e.encodeParam=u,e.encodeQueryString=f,e.checkForErrors=s,e.warn=function(e){console&&console.warn&&console.warn.apply(console,[e])},e.ArcGISRequestError=o,e.ArcGISAuthError=a,e.requiresFormData=c,e.processParams=i,e.getSelf=function(e){return m(null,e)},e.getPortal=m,e.getPortalUrl=l,Object.defineProperty(e,"__esModule",{value:!0})}); | ||
//# sourceMappingURL=request.umd.min.js.map |
{ | ||
"name": "@esri/arcgis-rest-request", | ||
"version": "1.6.0", | ||
"version": "1.7.0", | ||
"description": "Common methods and utilities for @esri/arcgis-rest-* packages.", | ||
@@ -5,0 +5,0 @@ "main": "dist/node/index.js", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Native code
Supply chain riskContains native code (e.g., compiled binaries or shared libraries). Including native code can obscure malicious behavior.
Found 1 instance in 1 package
1907
10
176744
62