ozone-api-request
Advanced tools
Comparing version 3.4.6 to 3.4.14
@@ -0,1 +1,4 @@ | ||
export declare type OzoneAPIRequestOption = { | ||
cache: boolean; | ||
}; | ||
/** | ||
@@ -24,6 +27,6 @@ * OzoneAPIRequest is a light wrapper over XMLHttpRequest to manager AJAX request to Ozone. | ||
* ```typeScript | ||
* const OzoneAPIRequest = new OzoneAPIRequest(); | ||
* OzoneAPIRequest.url = url; | ||
* OzoneAPIRequest.method = 'GET'; | ||
* OzoneAPIRequest.sendRequest() | ||
* const ozoneAPIRequest = new OzoneAPIRequest(); | ||
* ozoneAPIRequest.url = url; | ||
* ozoneAPIRequest.method = 'GET'; | ||
* ozoneAPIRequest.sendRequest() | ||
* .then((res:XMLHttpRequest) => { | ||
@@ -50,7 +53,7 @@ * // Do something with XMLHttpRequest | ||
* }) | ||
* const OzoneAPIRequest = new OzoneAPIRequest(); | ||
* OzoneAPIRequest.setEventTarget(this) | ||
* OzoneAPIRequest.url = url; | ||
* OzoneAPIRequest.method = 'GET'; | ||
* OzoneAPIRequest.sendRequest(); | ||
* const ozoneAPIRequest = new OzoneAPIRequest(); | ||
* ozoneAPIRequest.setEventTarget(this) | ||
* ozoneAPIRequest.url = url; | ||
* ozoneAPIRequest.method = 'GET'; | ||
* ozoneAPIRequest.sendRequest(); | ||
* ``` | ||
@@ -60,15 +63,25 @@ * | ||
* ```typeScript | ||
* const OzoneAPIRequest = new OzoneAPIRequest(); | ||
* OzoneAPIRequest.url = url; | ||
* OzoneAPIRequest.method = 'GET'; | ||
* const request = OzoneAPIRequest.createXMLHttpRequest(); | ||
* const ozoneAPIRequest = new OzoneAPIRequest(); | ||
* ozoneAPIRequest.url = url; | ||
* ozoneAPIRequest.method = 'GET'; | ||
* const request = ozoneAPIRequest.createXMLHttpRequest(); | ||
* // Modify default request | ||
* request.setRequestHeader('Cache-Control', 'only-if-cached'); | ||
* | ||
* OzoneAPIRequest.sendRequest(request); | ||
* ozoneAPIRequest.sendRequest(request); | ||
* // Handel response | ||
* ``` | ||
* * Setup global options | ||
* | ||
* * ```typeScript | ||
* const OzoneAPIRequest.setup({ cache: true }) | ||
* ``` | ||
*/ | ||
export declare class OzoneAPIRequest { | ||
private static option; | ||
/** | ||
* setup OzoneAPIRequest global option. | ||
* @param option: OzoneAPIRequestOption default value { cache: false } | ||
*/ | ||
static setup(option: OzoneAPIRequestOption): void; | ||
_url: string; | ||
@@ -75,0 +88,0 @@ private _method; |
@@ -32,6 +32,6 @@ /// <amd-module name="ozone-api-request"/> | ||
* ```typeScript | ||
* const OzoneAPIRequest = new OzoneAPIRequest(); | ||
* OzoneAPIRequest.url = url; | ||
* OzoneAPIRequest.method = 'GET'; | ||
* OzoneAPIRequest.sendRequest() | ||
* const ozoneAPIRequest = new OzoneAPIRequest(); | ||
* ozoneAPIRequest.url = url; | ||
* ozoneAPIRequest.method = 'GET'; | ||
* ozoneAPIRequest.sendRequest() | ||
* .then((res:XMLHttpRequest) => { | ||
@@ -58,7 +58,7 @@ * // Do something with XMLHttpRequest | ||
* }) | ||
* const OzoneAPIRequest = new OzoneAPIRequest(); | ||
* OzoneAPIRequest.setEventTarget(this) | ||
* OzoneAPIRequest.url = url; | ||
* OzoneAPIRequest.method = 'GET'; | ||
* OzoneAPIRequest.sendRequest(); | ||
* const ozoneAPIRequest = new OzoneAPIRequest(); | ||
* ozoneAPIRequest.setEventTarget(this) | ||
* ozoneAPIRequest.url = url; | ||
* ozoneAPIRequest.method = 'GET'; | ||
* ozoneAPIRequest.sendRequest(); | ||
* ``` | ||
@@ -68,15 +68,19 @@ * | ||
* ```typeScript | ||
* const OzoneAPIRequest = new OzoneAPIRequest(); | ||
* OzoneAPIRequest.url = url; | ||
* OzoneAPIRequest.method = 'GET'; | ||
* const request = OzoneAPIRequest.createXMLHttpRequest(); | ||
* const ozoneAPIRequest = new OzoneAPIRequest(); | ||
* ozoneAPIRequest.url = url; | ||
* ozoneAPIRequest.method = 'GET'; | ||
* const request = ozoneAPIRequest.createXMLHttpRequest(); | ||
* // Modify default request | ||
* request.setRequestHeader('Cache-Control', 'only-if-cached'); | ||
* | ||
* OzoneAPIRequest.sendRequest(request); | ||
* ozoneAPIRequest.sendRequest(request); | ||
* // Handel response | ||
* ``` | ||
* * Setup global options | ||
* | ||
* * ```typeScript | ||
* const OzoneAPIRequest.setup({ cache: true }) | ||
* ``` | ||
*/ | ||
let OzoneAPIRequest = class OzoneAPIRequest { | ||
let OzoneAPIRequest = OzoneAPIRequest_1 = class OzoneAPIRequest { | ||
/** | ||
@@ -105,6 +109,6 @@ * OzoneAPIRequest is a light wrapper over XMLHttpRequest to manager AJAX request to Ozone. | ||
* ```typeScript | ||
* const OzoneAPIRequest = new OzoneAPIRequest(); | ||
* OzoneAPIRequest.url = url; | ||
* OzoneAPIRequest.method = 'GET'; | ||
* OzoneAPIRequest.sendRequest() | ||
* const ozoneAPIRequest = new OzoneAPIRequest(); | ||
* ozoneAPIRequest.url = url; | ||
* ozoneAPIRequest.method = 'GET'; | ||
* ozoneAPIRequest.sendRequest() | ||
* .then((res:XMLHttpRequest) => { | ||
@@ -131,7 +135,7 @@ * // Do something with XMLHttpRequest | ||
* }) | ||
* const OzoneAPIRequest = new OzoneAPIRequest(); | ||
* OzoneAPIRequest.setEventTarget(this) | ||
* OzoneAPIRequest.url = url; | ||
* OzoneAPIRequest.method = 'GET'; | ||
* OzoneAPIRequest.sendRequest(); | ||
* const ozoneAPIRequest = new OzoneAPIRequest(); | ||
* ozoneAPIRequest.setEventTarget(this) | ||
* ozoneAPIRequest.url = url; | ||
* ozoneAPIRequest.method = 'GET'; | ||
* ozoneAPIRequest.sendRequest(); | ||
* ``` | ||
@@ -141,13 +145,17 @@ * | ||
* ```typeScript | ||
* const OzoneAPIRequest = new OzoneAPIRequest(); | ||
* OzoneAPIRequest.url = url; | ||
* OzoneAPIRequest.method = 'GET'; | ||
* const request = OzoneAPIRequest.createXMLHttpRequest(); | ||
* const ozoneAPIRequest = new OzoneAPIRequest(); | ||
* ozoneAPIRequest.url = url; | ||
* ozoneAPIRequest.method = 'GET'; | ||
* const request = ozoneAPIRequest.createXMLHttpRequest(); | ||
* // Modify default request | ||
* request.setRequestHeader('Cache-Control', 'only-if-cached'); | ||
* | ||
* OzoneAPIRequest.sendRequest(request); | ||
* ozoneAPIRequest.sendRequest(request); | ||
* // Handel response | ||
* ``` | ||
* * Setup global options | ||
* | ||
* * ```typeScript | ||
* const OzoneAPIRequest.setup({ cache: true }) | ||
* ``` | ||
*/ | ||
@@ -169,6 +177,22 @@ constructor() { | ||
} | ||
/** | ||
* setup OzoneAPIRequest global option. | ||
* @param option: OzoneAPIRequestOption default value { cache: false } | ||
*/ | ||
static setup(option) { | ||
OzoneAPIRequest_1.option = option; | ||
} | ||
set url(url) { | ||
this._url = url; | ||
} | ||
get url() { return this._url; } | ||
get url() { | ||
let url = this._url; | ||
if (!OzoneAPIRequest_1.option.cache && this.method === 'GET') { | ||
const [urlPath, param] = url.split('?'); | ||
const urlParam = new URLSearchParams(param); | ||
urlParam.append('ts', Date.now().toString()); | ||
url = [urlPath, urlPath.toString()].join('?'); | ||
} | ||
return url; | ||
} | ||
set body(body) { | ||
@@ -257,5 +281,9 @@ this._body = body; | ||
}; | ||
OzoneAPIRequest = __decorate([ | ||
OzoneAPIRequest.option = { | ||
cache: false | ||
}; | ||
OzoneAPIRequest = OzoneAPIRequest_1 = __decorate([ | ||
jsElement() | ||
], OzoneAPIRequest); | ||
export { OzoneAPIRequest }; | ||
var OzoneAPIRequest_1; |
{ | ||
"name": "ozone-api-request", | ||
"version": "3.4.6", | ||
"version": "3.4.14", | ||
"publishConfig": { | ||
@@ -5,0 +5,0 @@ "access": "public" |
@@ -5,3 +5,5 @@ /// <amd-module name="ozone-api-request"/> | ||
import {jsElement} from 'taktik-polymer-typescript' | ||
export type OzoneAPIRequestOption = { | ||
cache: boolean | ||
} | ||
/** | ||
@@ -30,6 +32,6 @@ * OzoneAPIRequest is a light wrapper over XMLHttpRequest to manager AJAX request to Ozone. | ||
* ```typeScript | ||
* const OzoneAPIRequest = new OzoneAPIRequest(); | ||
* OzoneAPIRequest.url = url; | ||
* OzoneAPIRequest.method = 'GET'; | ||
* OzoneAPIRequest.sendRequest() | ||
* const ozoneAPIRequest = new OzoneAPIRequest(); | ||
* ozoneAPIRequest.url = url; | ||
* ozoneAPIRequest.method = 'GET'; | ||
* ozoneAPIRequest.sendRequest() | ||
* .then((res:XMLHttpRequest) => { | ||
@@ -56,7 +58,7 @@ * // Do something with XMLHttpRequest | ||
* }) | ||
* const OzoneAPIRequest = new OzoneAPIRequest(); | ||
* OzoneAPIRequest.setEventTarget(this) | ||
* OzoneAPIRequest.url = url; | ||
* OzoneAPIRequest.method = 'GET'; | ||
* OzoneAPIRequest.sendRequest(); | ||
* const ozoneAPIRequest = new OzoneAPIRequest(); | ||
* ozoneAPIRequest.setEventTarget(this) | ||
* ozoneAPIRequest.url = url; | ||
* ozoneAPIRequest.method = 'GET'; | ||
* ozoneAPIRequest.sendRequest(); | ||
* ``` | ||
@@ -66,16 +68,33 @@ * | ||
* ```typeScript | ||
* const OzoneAPIRequest = new OzoneAPIRequest(); | ||
* OzoneAPIRequest.url = url; | ||
* OzoneAPIRequest.method = 'GET'; | ||
* const request = OzoneAPIRequest.createXMLHttpRequest(); | ||
* const ozoneAPIRequest = new OzoneAPIRequest(); | ||
* ozoneAPIRequest.url = url; | ||
* ozoneAPIRequest.method = 'GET'; | ||
* const request = ozoneAPIRequest.createXMLHttpRequest(); | ||
* // Modify default request | ||
* request.setRequestHeader('Cache-Control', 'only-if-cached'); | ||
* | ||
* OzoneAPIRequest.sendRequest(request); | ||
* ozoneAPIRequest.sendRequest(request); | ||
* // Handel response | ||
* ``` | ||
* | ||
* * Setup global options | ||
* | ||
* * ```typeScript | ||
* const OzoneAPIRequest.setup({ cache: true }) | ||
* ``` | ||
*/ | ||
@jsElement() | ||
export class OzoneAPIRequest{ | ||
private static option: OzoneAPIRequestOption = { | ||
cache: false | ||
}; | ||
/** | ||
* setup OzoneAPIRequest global option. | ||
* @param option: OzoneAPIRequestOption default value { cache: false } | ||
*/ | ||
static setup(option: OzoneAPIRequestOption){ | ||
OzoneAPIRequest.option = option | ||
} | ||
_url: string =''; | ||
@@ -86,3 +105,3 @@ private _method: string = 'GET'; | ||
donePromise: Promise<XMLHttpRequest | null> = Promise.resolve(null) | ||
donePromise: Promise<XMLHttpRequest | null> = Promise.resolve(null); | ||
@@ -93,3 +112,12 @@ | ||
} | ||
get url(): string{ return this._url} | ||
get url(): string{ | ||
let url = this._url; | ||
if (! OzoneAPIRequest.option.cache && this.method === 'GET'){ | ||
const [urlPath, param] = url.split('?'); | ||
const urlParam = new URLSearchParams(param); | ||
urlParam.append('ts', Date.now().toString()); | ||
url = [urlPath, urlPath.toString()].join('?'); | ||
} | ||
return url | ||
} | ||
@@ -119,3 +147,3 @@ set body (body: string | FormData){ | ||
private resolveCurrentRequest?: {(...param: Array<any>):void} | ||
private resolveCurrentRequest?: {(...param: Array<any>):void}; | ||
abort(){ | ||
@@ -122,0 +150,0 @@ if(this.currentRequest) |
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
24799
616