Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@js-dot/api

Package Overview
Dependencies
Maintainers
1
Versions
70
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@js-dot/api - npm Package Compare versions

Comparing version
22.165.4
to
22.165.5
+1
-1
http/api-http.js

@@ -336,3 +336,3 @@ var HttpClientBase = /** @class */ (function () {

while (++current < end) {
response = responseTransformers[current](response, parameters);
response = responseTransformers[current]({ response: response, parameters: parameters, body: body });
}

@@ -339,0 +339,0 @@ return Promise.resolve(response);

@@ -342,3 +342,3 @@ (function (global, factory) {

while (++current < end) {
response = responseTransformers[current](response, parameters);
response = responseTransformers[current]({ response: response, parameters: parameters, body: body });
}

@@ -345,0 +345,0 @@ return Promise.resolve(response);

@@ -1,1 +0,1 @@

{"version":3,"file":"api-http.umd.js","sources":["../../../../src/js-dot/api/http/classes/http-client-base.ts","../../../../src/js-dot/api/http/classes/http-headers.ts","../../../../src/js-dot/api/http/functions/set-template-url.ts","../../../../src/js-dot/api/http/classes/http-operator-base.ts"],"sourcesContent":["import {HttpClient} from '../interfaces/http-client';\r\nimport {HttpOption, HttpRequestBody} from '../interfaces/http';\r\n\r\nexport abstract class HttpClientBase<T> implements HttpClient<T> {\r\n protected _host: string;\r\n\r\n constructor(host?: string) {\r\n this.setHost(host || '');\r\n }\r\n\r\n abstract request(method: string, url: string, body?: HttpRequestBody, option?: Partial<HttpOption>): T;\r\n\r\n setHost(host: string) {\r\n this._host = host;\r\n }\r\n\r\n getHost() {\r\n return this._host;\r\n }\r\n\r\n getUrl(path: string) {\r\n return path.indexOf('://') > -1 ?\r\n path :\r\n this._host + path;\r\n }\r\n\r\n head(url: string, option?: HttpOption) {\r\n return this.request('head', url, null, option);\r\n }\r\n\r\n get<R>(url: string, option?: HttpOption) {\r\n return this.request('get', url, null, option);\r\n }\r\n\r\n patch<R>(url: string, body?: {}, option?: HttpOption) {\r\n return this.request('patch', url, body, option)\r\n }\r\n\r\n post<R>(url: string, body?: {}, option?: HttpOption) {\r\n return this.request('post', url, body, option);\r\n }\r\n\r\n put<R>(url: string, body?: {}, option?: HttpOption) {\r\n return this.request('put', url, body, option);\r\n }\r\n\r\n delete<R>(url: string, option?: HttpOption) {\r\n return this.request('delete', url, null, option);\r\n }\r\n\r\n pipe(...operators) {\r\n\r\n }\r\n}\r\n","import {HttpHeadersInit, HttpHeadersInterface} from '../interfaces/http';\r\n\r\n\r\nexport class HttpHeaders implements HttpHeadersInterface {\r\n values = {};\r\n\r\n constructor(init?: HttpHeadersInit) {\r\n if (!init) {\r\n return;\r\n }\r\n\r\n this.values = init instanceof HttpHeaders ?\r\n {...init.values} :\r\n Array.isArray(init) ?\r\n Object.fromEntries(init) :\r\n init;\r\n }\r\n\r\n append(name: string, value: string): void {\r\n this.values[name] = value;\r\n }\r\n\r\n delete(name: string): void {\r\n delete this.values[name];\r\n }\r\n\r\n get(name: string): string | null {\r\n return this.values[name];\r\n }\r\n\r\n has(name: string): boolean {\r\n return !!this.values[name];\r\n }\r\n\r\n set(name: string, value: string): void {\r\n this.values[name] = value;\r\n }\r\n\r\n forEach(callbackfn: (value: string, key: string, parent: Headers) => void, thisArg?: any): void {\r\n const {values} = this;\r\n Object.keys(values).forEach(key => {\r\n callbackfn.call(\r\n thisArg || this,\r\n values[key],\r\n key,\r\n this\r\n );\r\n });\r\n }\r\n}\r\n","const _SEGMENT_VAR = /\\/:[^/?#]+|<[^>]+>|{[^}]+}/g;\r\nconst _SEARCH_STRING = /[?&][^&#]+/g\r\n\r\n\r\n/**\r\n * Set Template Url Variables\r\n * @example\r\n * ```js\r\n * // /foo\r\n * setTemplateUrl('/:path', {path: 'foo'});\r\n\r\n * // ?foo=1&bar=2&baz\r\n * setTemplateUrl('?foo&bar=2&baz', {foo: 1});\r\n * ```\r\n * @param templateUrl\r\n * @param parameters\r\n */\r\nexport function setTemplateUrl(templateUrl: string, parameters = {}) {\r\n if (!parameters) {\r\n parameters = {}\r\n }\r\n\r\n const defaultSearchStrings = templateUrl.match(/[?&][^=&#]+=[^&#]+/g);\r\n if (defaultSearchStrings) {\r\n let current = defaultSearchStrings.length;\r\n while (current-- > 0) {\r\n const searchString = defaultSearchStrings[current].split('=');\r\n const name = '$' + searchString.shift().slice(1);\r\n\r\n if (isNullLike(parameters[name])) {\r\n parameters[name] = searchString.join('=');\r\n }\r\n }\r\n }\r\n\r\n let templatedUrl = templateUrl.replace(_SEARCH_STRING, '')\r\n const searchStrings = [];\r\n\r\n const keys = Object.keys(parameters);\r\n const end = keys.length;\r\n let current = -1;\r\n while (++current < end) {\r\n let key = keys[current];\r\n const value = parameters[key];\r\n if (key.startsWith('$')) {\r\n if (!isNullLike(value)) {\r\n searchStrings[searchStrings.length] = key.slice(1) + '=' + value;\r\n }\r\n } else {\r\n templatedUrl = templatedUrl.replace(\r\n segmentRegExp(key),\r\n value\r\n );\r\n }\r\n }\r\n\r\n if (searchStrings.length) {\r\n templatedUrl += (templatedUrl.indexOf('?') < 0 ? '?' : '&') + searchStrings.join('&');\r\n }\r\n\r\n const required = templatedUrl.match(_SEGMENT_VAR);\r\n if (required) {\r\n throw new RangeError(`Required Parameter Property for ${required.join(', ')}`);\r\n }\r\n\r\n return templatedUrl;\r\n}\r\n\r\nfunction segmentRegExp(key) {\r\n return segmentRegExp[key] || (\r\n segmentRegExp[key] = new RegExp(`:\\??${key}|<${key}>|{${key}}`)\r\n );\r\n}\r\n\r\nfunction isNullLike(target) {\r\n return target === null || target === undefined;\r\n}\r\n","import {HttpClient} from '../interfaces/http-client';\r\nimport {HttpMeta, HttpOperator} from '../interfaces/http-operator';\r\nimport {HttpCredentials, HttpMethod, HttpOption, HttpRequestBody, HttpUrl} from '../interfaces/http';\r\nimport {setTemplateUrl} from '../functions/set-template-url';\r\nimport {HttpHeaders} from './http-headers';\r\nimport {HttpClientBase} from './http-client-base';\r\n\r\n\r\nexport abstract class HttpOperatorBase<P = null, B = HttpRequestBody, R = any>\r\n implements HttpOperator<P, B, R> {\r\n\r\n get operators(): HttpOperator[] {\r\n return this._operators;\r\n }\r\n\r\n protected _operators: HttpOperator[] = [];\r\n\r\n credentials: HttpCredentials = 'same-origin';\r\n\r\n //////////////////////////////\r\n // Inherit\r\n meta: HttpMeta;\r\n\r\n //////////////////////////////\r\n // Un-inherit\r\n _polyfillCallback: null;\r\n _parameters: Partial<P> = {}\r\n _preloadApis = [];\r\n _option: Partial<HttpOption>;\r\n\r\n get method() {\r\n return this.meta.method;\r\n }\r\n\r\n get path() {\r\n return this.meta.path;\r\n }\r\n\r\n get url() {\r\n return this.meta.client.getUrl(this.meta.path);\r\n }\r\n\r\n constructor(client: HttpClient, method?: HttpMethod, path?: string);\r\n constructor(path: string, option?: Partial<HttpOption>);\r\n constructor(method: HttpMethod, path?: string, option?: Partial<HttpOption>);\r\n constructor(\r\n client_or_path_or_method: HttpClient | HttpMethod | string = '',\r\n method_or_path_or_option?: string | Partial<HttpOption> | HttpMethod,\r\n path_or_option?: string | Partial<HttpOption>\r\n ) {\r\n let client: HttpClient<any>;\r\n let path: string;\r\n let method: HttpMethod\r\n let option: Partial<HttpOption> = {};\r\n\r\n if (typeof client_or_path_or_method !== 'string') {\r\n client = client_or_path_or_method as HttpClient;\r\n method = method_or_path_or_option as HttpMethod || 'GET';\r\n path = path_or_option as string || '';\r\n } else {\r\n switch (arguments.length) {\r\n case 1:\r\n path = client_or_path_or_method as string;\r\n break;\r\n case 2:\r\n if (typeof method_or_path_or_option === 'string') {\r\n method = client_or_path_or_method as HttpMethod;\r\n path = method_or_path_or_option\r\n } else {\r\n path = client_or_path_or_method as string;\r\n path_or_option = method_or_path_or_option as Partial<HttpOption>;\r\n }\r\n break;\r\n case 3:\r\n method = client_or_path_or_method as HttpMethod\r\n path = method_or_path_or_option as string\r\n option = path_or_option as Partial<HttpOption>;\r\n }\r\n }\r\n\r\n const meta = Object.assign(\r\n {\r\n method: 'GET',\r\n path: '/',\r\n transforms: {\r\n requests: [],\r\n responses: []\r\n }\r\n },\r\n {\r\n client,\r\n method,\r\n path\r\n }\r\n ) as HttpMeta;\r\n\r\n if (!meta.client) {\r\n const clientClass = this._getApiClient();\r\n\r\n if (!clientClass['_instance_']) {\r\n clientClass['_instance_'] = new clientClass();\r\n }\r\n\r\n meta.client = new clientClass();\r\n }\r\n\r\n this.meta = meta;\r\n this._option = option;\r\n }\r\n\r\n protected _getChildApi(method: HttpMethod, path: string, option?: Partial<HttpOption>) {\r\n path = (this.meta.path || '') + (path || '');\r\n const OperatorClass = this._getApiOperator();\r\n const operator = new OperatorClass(this.meta.client, method, path, option);\r\n this._operators.push(operator);\r\n return operator;\r\n }\r\n\r\n /**\r\n * Get Default Operator Client Class\r\n */\r\n abstract _getApiClient(): new(...args: any[]) => HttpClient;\r\n\r\n /**\r\n * Get Child API Operator Class\r\n */\r\n abstract _getApiOperator(): new(...args: any[]) => HttpOperator;\r\n\r\n get<CHILD_URL = null, CHILD_RESPONSE = any>(path?: string, option?: Partial<HttpOption>)\r\n : HttpOperator<HttpUrl<P, CHILD_URL>, null, CHILD_RESPONSE> {\r\n return this._getChildApi('GET', path, option);\r\n }\r\n\r\n post<CHILD_URL = null, CHILD_BODY = HttpRequestBody, CHILD_RESPONSE = any>(path?: string, option?: Partial<HttpOption>)\r\n : HttpOperator<HttpUrl<P, CHILD_URL>, CHILD_BODY, CHILD_RESPONSE> {\r\n return this._getChildApi('POST', path, option) as any;\r\n }\r\n\r\n put<CHILD_URL = null, CHILD_BODY = HttpRequestBody, CHILD_RESPONSE = any>(path?: string, option?: Partial<HttpOption>)\r\n : HttpOperator<HttpUrl<P, CHILD_URL>, CHILD_BODY, CHILD_RESPONSE> {\r\n return this._getChildApi('PUT', path, option) as any;\r\n }\r\n\r\n patch<CHILD_URL = null, CHILD_BODY = HttpRequestBody, CHILD_RESPONSE = any>(path?: string, option?: Partial<HttpOption>)\r\n : HttpOperator<HttpUrl<P, CHILD_URL>, CHILD_BODY, CHILD_RESPONSE> {\r\n return this._getChildApi('PATCH', path, option) as any;\r\n }\r\n\r\n delete<CHILD_URL = null, CHILD_RESPONSE = any>(path?: string, option?: Partial<HttpOption>)\r\n : HttpOperator<HttpUrl<P, CHILD_URL>, null, CHILD_RESPONSE> {\r\n return this._getChildApi('DELETE', path, option);\r\n }\r\n\r\n protected _getApiRequester(method, path, body, option) {\r\n return this.meta.client.request(method, path, body, option);\r\n }\r\n\r\n request(parameters?: P, body?: B, instanceOption: Partial<HttpOption> = {}) {\r\n\r\n const {\r\n meta: {\r\n client,\r\n method,\r\n transforms: {\r\n requests: requestTransformers,\r\n responses: responseTransformers,\r\n }\r\n },\r\n _preloadApis,\r\n _option: defaultOption\r\n } = this;\r\n\r\n defaultOption.headers = getHeaderValues(defaultOption.headers);\r\n instanceOption.headers = getHeaderValues(instanceOption.headers);\r\n\r\n const options = Object.assign(defaultOption, instanceOption);\r\n\r\n if (requestTransformers) {\r\n const end = requestTransformers.length;\r\n let current = -1;\r\n\r\n const headersClone = {...options.headers};\r\n\r\n while (++current < end) {\r\n const [transformType, transformCallback] = requestTransformers[current];\r\n switch (transformType) {\r\n case 'request':\r\n const transformed = transformCallback({headers: headersClone, parameters, body})\r\n if (transformed.headers) {\r\n options.headers = getHeaderValues(transformed.headers);\r\n }\r\n if (transformed.parameters) {\r\n parameters = transformed.parameters;\r\n }\r\n if (transformed.body) {\r\n body = transformed.body;\r\n }\r\n break;\r\n case 'parameters':\r\n parameters = transformCallback({headers: headersClone, parameters, body})\r\n break;\r\n case 'body':\r\n body = transformCallback({headers: headersClone, parameters, body})\r\n break;\r\n }\r\n }\r\n }\r\n\r\n const url = client.getUrl(\r\n setTemplateUrl(this.meta.path, parameters)\r\n );\r\n\r\n if (method === 'GET') {\r\n }\r\n\r\n let requester = this._getApiRequester(\r\n method,\r\n url,\r\n body as any,\r\n options\r\n );\r\n\r\n const end = _preloadApis.length;\r\n if (end) {\r\n const originApi = requester;\r\n const preloadApis = [];\r\n let current = -1;\r\n while (++current < end) {\r\n const preloadApi = _preloadApis[current];\r\n preloadApis[current] = preloadApi[0].bind(null, preloadApi[1]);\r\n }\r\n requester = Promise.all(_preloadApis)\r\n .then(() => {\r\n return originApi;\r\n });\r\n }\r\n\r\n\r\n if (responseTransformers) {\r\n requester = requester.then(response => {\r\n const end = responseTransformers.length;\r\n\r\n let current = -1;\r\n while (++current < end) {\r\n response = responseTransformers[current](response, parameters);\r\n }\r\n\r\n return Promise.resolve(response);\r\n });\r\n }\r\n\r\n return requester;\r\n }\r\n\r\n pipe(...pipeOperators: any[]) {\r\n const end = pipeOperators.length;\r\n let current = -1;\r\n let result = this;\r\n\r\n while (++current < end) {\r\n const pipeOperator = pipeOperators[current];\r\n result = pipeOperator(result);\r\n }\r\n\r\n return result as any;\r\n }\r\n}\r\n\r\nfunction getHeaderValues(headers: HeadersInit) {\r\n if (headers instanceof HttpHeaders) {\r\n return headers.values;\r\n }\r\n\r\n if (Array.isArray(headers)) {\r\n return Object.fromEntries(headers);\r\n }\r\n return headers || {};\r\n}\r\n"],"names":[],"mappings":";;;;;;AAGA,QAAA,cAAA,kBAAA,YAAA;IAGI,IAAA,SAAA,cAAA,CAAY,IAAa,EAAA;IACrB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;SAC5B;QAID,cAAO,CAAA,SAAA,CAAA,OAAA,GAAP,UAAQ,IAAY,EAAA;IAChB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACrB,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,OAAO,GAAP,YAAA;YACI,OAAO,IAAI,CAAC,KAAK,CAAC;SACrB,CAAA;QAED,cAAM,CAAA,SAAA,CAAA,MAAA,GAAN,UAAO,IAAY,EAAA;YACf,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,YAAA,IAAI;IACJ,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACzB,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,IAAI,GAAJ,UAAK,GAAW,EAAE,MAAmB,EAAA;IACjC,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SAClD,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,GAAG,GAAH,UAAO,GAAW,EAAE,MAAmB,EAAA;IACnC,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SACjD,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,KAAK,GAAL,UAAS,GAAW,EAAE,IAAS,EAAE,MAAmB,EAAA;IAChD,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;SAClD,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,IAAI,GAAJ,UAAQ,GAAW,EAAE,IAAS,EAAE,MAAmB,EAAA;IAC/C,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SAClD,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,GAAG,GAAH,UAAO,GAAW,EAAE,IAAS,EAAE,MAAmB,EAAA;IAC9C,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SACjD,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,MAAM,GAAN,UAAU,GAAW,EAAE,MAAmB,EAAA;IACtC,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SACpD,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,IAAI,GAAJ,YAAA;YAAK,IAAY,SAAA,GAAA,EAAA,CAAA;iBAAZ,IAAY,EAAA,GAAA,CAAA,EAAZ,EAAY,GAAA,SAAA,CAAA,MAAA,EAAZ,EAAY,EAAA,EAAA;gBAAZ,SAAY,CAAA,EAAA,CAAA,GAAA,SAAA,CAAA,EAAA,CAAA,CAAA;;SAEhB,CAAA;QACL,OAAC,cAAA,CAAA;IAAD,CAAC,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClDD,QAAA,WAAA,kBAAA,YAAA;IAGI,IAAA,SAAA,WAAA,CAAY,IAAsB,EAAA;YAFlC,IAAM,CAAA,MAAA,GAAG,EAAE,CAAC;YAGR,IAAI,CAAC,IAAI,EAAE;gBACP,OAAO;IACV,SAAA;IAED,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,YAAY,WAAW,GACjC,QAAA,CAAA,EAAA,EAAA,IAAI,CAAC,MAAM;IACf,YAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;IACf,gBAAA,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC;IACxB,gBAAA,IAAI,CAAC;SAChB;IAED,IAAA,WAAA,CAAA,SAAA,CAAA,MAAM,GAAN,UAAO,IAAY,EAAE,KAAa,EAAA;IAC9B,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;SAC7B,CAAA;QAED,WAAM,CAAA,SAAA,CAAA,MAAA,GAAN,UAAO,IAAY,EAAA;IACf,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAC5B,CAAA;QAED,WAAG,CAAA,SAAA,CAAA,GAAA,GAAH,UAAI,IAAY,EAAA;IACZ,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAC5B,CAAA;QAED,WAAG,CAAA,SAAA,CAAA,GAAA,GAAH,UAAI,IAAY,EAAA;YACZ,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAC9B,CAAA;IAED,IAAA,WAAA,CAAA,SAAA,CAAA,GAAG,GAAH,UAAI,IAAY,EAAE,KAAa,EAAA;IAC3B,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;SAC7B,CAAA;IAED,IAAA,WAAA,CAAA,SAAA,CAAA,OAAO,GAAP,UAAQ,UAAiE,EAAE,OAAa,EAAA;YAAxF,IAUC,KAAA,GAAA,IAAA,CAAA;IATU,QAAA,IAAA,MAAM,GAAI,IAAI,CAAA,MAAR,CAAS;YACtB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAA,GAAG,EAAA;IAC3B,YAAA,UAAU,CAAC,IAAI,CACX,OAAO,IAAI,KAAI,EACf,MAAM,CAAC,GAAG,CAAC,EACX,GAAG,EACH,KAAI,CACP,CAAC;IACN,SAAC,CAAC,CAAC;SACN,CAAA;QACL,OAAC,WAAA,CAAA;IAAD,CAAC,EAAA;;ICjDD,IAAM,YAAY,GAAG,6BAA6B,CAAC;IACnD,IAAM,cAAc,GAAG,aAAa,CAAA;IAGpC;;;;;;;;;;;;IAYG;IACa,SAAA,cAAc,CAAC,WAAmB,EAAE,UAAe,EAAA;IAAf,IAAA,IAAA,UAAA,KAAA,KAAA,CAAA,EAAA,EAAA,UAAe,GAAA,EAAA,CAAA,EAAA;QAC/D,IAAI,CAAC,UAAU,EAAE;YACb,UAAU,GAAG,EAAE,CAAA;IAClB,KAAA;QAED,IAAM,oBAAoB,GAAG,WAAW,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACtE,IAAA,IAAI,oBAAoB,EAAE;IACtB,QAAA,IAAI,SAAO,GAAG,oBAAoB,CAAC,MAAM,CAAC;IAC1C,QAAA,OAAO,SAAO,EAAE,GAAG,CAAC,EAAE;gBAClB,IAAM,YAAY,GAAG,oBAAoB,CAAC,SAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9D,YAAA,IAAM,IAAI,GAAG,GAAG,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEjD,YAAA,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE;oBAC9B,UAAU,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7C,aAAA;IACJ,SAAA;IACJ,KAAA;QAED,IAAI,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAA;QAC1D,IAAM,aAAa,GAAG,EAAE,CAAC;QAEzB,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACrC,IAAA,IAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IACxB,IAAA,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC;IACjB,IAAA,OAAO,EAAE,OAAO,GAAG,GAAG,EAAE;IACpB,QAAA,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IACxB,QAAA,IAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IAC9B,QAAA,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;IACrB,YAAA,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;IACpB,gBAAA,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC;IACpE,aAAA;IACJ,SAAA;IAAM,aAAA;IACH,YAAA,YAAY,GAAG,YAAY,CAAC,OAAO,CAC/B,aAAa,CAAC,GAAG,CAAC,EAClB,KAAK,CACR,CAAC;IACL,SAAA;IACJ,KAAA;QAED,IAAI,aAAa,CAAC,MAAM,EAAE;YACtB,YAAY,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzF,KAAA;QAED,IAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAClD,IAAA,IAAI,QAAQ,EAAE;IACV,QAAA,MAAM,IAAI,UAAU,CAAC,kCAAA,CAAA,MAAA,CAAmC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAE,CAAC,CAAC;IAClF,KAAA;IAED,IAAA,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,SAAS,aAAa,CAAC,GAAG,EAAA;QACtB,OAAO,aAAa,CAAC,GAAG,CAAC,KACrB,aAAa,CAAC,GAAG,CAAC,GAAG,IAAI,MAAM,CAAC,KAAO,CAAA,MAAA,CAAA,GAAG,EAAK,IAAA,CAAA,CAAA,MAAA,CAAA,GAAG,gBAAM,GAAG,EAAA,GAAA,CAAG,CAAC,CAClE,CAAC;IACN,CAAC;IAED,SAAS,UAAU,CAAC,MAAM,EAAA;IACtB,IAAA,OAAO,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,CAAC;IACnD;;ACpEA,QAAA,gBAAA,kBAAA,YAAA;IAqCI,IAAA,SAAA,gBAAA,CACI,wBAA+D,EAC/D,wBAAoE,EACpE,cAA6C,EAAA;IAF7C,QAAA,IAAA,wBAAA,KAAA,KAAA,CAAA,EAAA,EAAA,wBAA+D,GAAA,EAAA,CAAA,EAAA;YA/BzD,IAAU,CAAA,UAAA,GAAmB,EAAE,CAAC;YAE1C,IAAW,CAAA,WAAA,GAAoB,aAAa,CAAC;YAS7C,IAAW,CAAA,WAAA,GAAe,EAAE,CAAA;YAC5B,IAAY,CAAA,YAAA,GAAG,EAAE,CAAC;IAuBd,QAAA,IAAI,MAAuB,CAAC;IAC5B,QAAA,IAAI,IAAY,CAAC;IACjB,QAAA,IAAI,MAAkB,CAAA;YACtB,IAAI,MAAM,GAAwB,EAAE,CAAC;IAErC,QAAA,IAAI,OAAO,wBAAwB,KAAK,QAAQ,EAAE;gBAC9C,MAAM,GAAG,wBAAsC,CAAC;IAChD,YAAA,MAAM,GAAG,wBAAsC,IAAI,KAAK,CAAC;IACzD,YAAA,IAAI,GAAG,cAAwB,IAAI,EAAE,CAAC;IACzC,SAAA;IAAM,aAAA;gBACH,QAAQ,SAAS,CAAC,MAAM;IACpB,gBAAA,KAAK,CAAC;wBACF,IAAI,GAAG,wBAAkC,CAAC;wBAC1C,MAAM;IACV,gBAAA,KAAK,CAAC;IACF,oBAAA,IAAI,OAAO,wBAAwB,KAAK,QAAQ,EAAE;4BAC9C,MAAM,GAAG,wBAAsC,CAAC;4BAChD,IAAI,GAAG,wBAAwB,CAAA;IAClC,qBAAA;IAAM,yBAAA;4BACH,IAAI,GAAG,wBAAkC,CAAC;4BAC1C,cAAc,GAAG,wBAA+C,CAAC;IACpE,qBAAA;wBACD,MAAM;IACV,gBAAA,KAAK,CAAC;wBACF,MAAM,GAAG,wBAAsC,CAAA;wBAC/C,IAAI,GAAG,wBAAkC,CAAA;wBACzC,MAAM,GAAG,cAAqC,CAAC;IACtD,aAAA;IACJ,SAAA;IAED,QAAA,IAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CACtB;IACI,YAAA,MAAM,EAAE,KAAK;IACb,YAAA,IAAI,EAAE,GAAG;IACT,YAAA,UAAU,EAAE;IACR,gBAAA,QAAQ,EAAE,EAAE;IACZ,gBAAA,SAAS,EAAE,EAAE;IAChB,aAAA;aACJ,EACD;IACI,YAAA,MAAM,EAAA,MAAA;IACN,YAAA,MAAM,EAAA,MAAA;IACN,YAAA,IAAI,EAAA,IAAA;IACP,SAAA,CACQ,CAAC;IAEd,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;IACd,YAAA,IAAM,WAAW,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;IAEzC,YAAA,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE;IAC5B,gBAAA,WAAW,CAAC,YAAY,CAAC,GAAG,IAAI,WAAW,EAAE,CAAC;IACjD,aAAA;IAED,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;IACnC,SAAA;IAED,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACjB,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;SACzB;IAjGD,IAAA,MAAA,CAAA,cAAA,CAAI,gBAAS,CAAA,SAAA,EAAA,WAAA,EAAA;IAAb,QAAA,GAAA,EAAA,YAAA;gBACI,OAAO,IAAI,CAAC,UAAU,CAAC;aAC1B;;;IAAA,KAAA,CAAA,CAAA;IAiBD,IAAA,MAAA,CAAA,cAAA,CAAI,gBAAM,CAAA,SAAA,EAAA,QAAA,EAAA;IAAV,QAAA,GAAA,EAAA,YAAA;IACI,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;aAC3B;;;IAAA,KAAA,CAAA,CAAA;IAED,IAAA,MAAA,CAAA,cAAA,CAAI,gBAAI,CAAA,SAAA,EAAA,MAAA,EAAA;IAAR,QAAA,GAAA,EAAA,YAAA;IACI,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;aACzB;;;IAAA,KAAA,CAAA,CAAA;IAED,IAAA,MAAA,CAAA,cAAA,CAAI,gBAAG,CAAA,SAAA,EAAA,KAAA,EAAA;IAAP,QAAA,GAAA,EAAA,YAAA;IACI,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClD;;;IAAA,KAAA,CAAA,CAAA;IAsES,IAAA,gBAAA,CAAA,SAAA,CAAA,YAAY,GAAtB,UAAuB,MAAkB,EAAE,IAAY,EAAE,MAA4B,EAAA;IACjF,QAAA,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,CAAC,CAAC;IAC7C,QAAA,IAAM,aAAa,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;IAC7C,QAAA,IAAM,QAAQ,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC3E,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAA,OAAO,QAAQ,CAAC;SACnB,CAAA;IAYD,IAAA,gBAAA,CAAA,SAAA,CAAA,GAAG,GAAH,UAA4C,IAAa,EAAE,MAA4B,EAAA;YAEnF,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SACjD,CAAA;IAED,IAAA,gBAAA,CAAA,SAAA,CAAA,IAAI,GAAJ,UAA2E,IAAa,EAAE,MAA4B,EAAA;YAElH,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAQ,CAAC;SACzD,CAAA;IAED,IAAA,gBAAA,CAAA,SAAA,CAAA,GAAG,GAAH,UAA0E,IAAa,EAAE,MAA4B,EAAA;YAEjH,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAQ,CAAC;SACxD,CAAA;IAED,IAAA,gBAAA,CAAA,SAAA,CAAA,KAAK,GAAL,UAA4E,IAAa,EAAE,MAA4B,EAAA;YAEnH,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAQ,CAAC;SAC1D,CAAA;IAED,IAAA,gBAAA,CAAA,SAAA,CAAA,MAAM,GAAN,UAA+C,IAAa,EAAE,MAA4B,EAAA;YAEtF,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SACpD,CAAA;QAES,gBAAgB,CAAA,SAAA,CAAA,gBAAA,GAA1B,UAA2B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAA;IACjD,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SAC/D,CAAA;IAED,IAAA,gBAAA,CAAA,SAAA,CAAA,OAAO,GAAP,UAAQ,UAAc,EAAE,IAAQ,EAAE,cAAwC,EAAA;IAAxC,QAAA,IAAA,cAAA,KAAA,KAAA,CAAA,EAAA,EAAA,cAAwC,GAAA,EAAA,CAAA,EAAA;YAEhE,IAAA,EAAA,GAWF,IAAI,EAVJ,EAOC,GAAA,EAAA,CAAA,IAAA,EANG,MAAM,GAAA,EAAA,CAAA,MAAA,EACN,MAAM,GAAA,EAAA,CAAA,MAAA,EACN,EAAA,GAAA,EAAA,CAAA,UAGC,EAFa,mBAAmB,GAAA,EAAA,CAAA,QAAA,EAClB,oBAAoB,GAAA,EAAA,CAAA,SAAA,EAGvC,YAAY,GAAA,EAAA,CAAA,YAAA,EACH,aAAa,GAAA,EAAA,CAAA,OAClB,CAAC;YAET,aAAa,CAAC,OAAO,GAAG,eAAe,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAC/D,cAAc,CAAC,OAAO,GAAG,eAAe,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAEjE,IAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IAE7D,QAAA,IAAI,mBAAmB,EAAE;IACrB,YAAA,IAAM,KAAG,GAAG,mBAAmB,CAAC,MAAM,CAAC;IACvC,YAAA,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC;IAEjB,YAAA,IAAM,YAAY,GAAO,QAAA,CAAA,EAAA,EAAA,OAAO,CAAC,OAAO,CAAC,CAAC;IAE1C,YAAA,OAAO,EAAE,OAAO,GAAG,KAAG,EAAE;oBACd,IAAA,EAAA,GAAqC,mBAAmB,CAAC,OAAO,CAAC,EAAhE,aAAa,GAAA,EAAA,CAAA,CAAA,CAAA,EAAE,iBAAiB,GAAA,EAAA,CAAA,CAAA,CAAgC,CAAC;IACxE,gBAAA,QAAQ,aAAa;IACjB,oBAAA,KAAK,SAAS;IACV,wBAAA,IAAM,WAAW,GAAG,iBAAiB,CAAC,EAAC,OAAO,EAAE,YAAY,EAAE,UAAU,YAAA,EAAE,IAAI,EAAA,IAAA,EAAC,CAAC,CAAA;4BAChF,IAAI,WAAW,CAAC,OAAO,EAAE;gCACrB,OAAO,CAAC,OAAO,GAAG,eAAe,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC1D,yBAAA;4BACD,IAAI,WAAW,CAAC,UAAU,EAAE;IACxB,4BAAA,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC;IACvC,yBAAA;4BACD,IAAI,WAAW,CAAC,IAAI,EAAE;IAClB,4BAAA,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;IAC3B,yBAAA;4BACD,MAAM;IACV,oBAAA,KAAK,YAAY;IACb,wBAAA,UAAU,GAAG,iBAAiB,CAAC,EAAC,OAAO,EAAE,YAAY,EAAE,UAAU,YAAA,EAAE,IAAI,EAAA,IAAA,EAAC,CAAC,CAAA;4BACzE,MAAM;IACV,oBAAA,KAAK,MAAM;IACP,wBAAA,IAAI,GAAG,iBAAiB,CAAC,EAAC,OAAO,EAAE,YAAY,EAAE,UAAU,YAAA,EAAE,IAAI,EAAA,IAAA,EAAC,CAAC,CAAA;4BACnE,MAAM;IACb,iBAAA;IACJ,aAAA;IACJ,SAAA;IAED,QAAA,IAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CACrB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAC7C,CAAC;IAKF,QAAA,IAAI,SAAS,GAAG,IAAI,CAAC,gBAAgB,CACjC,MAAM,EACN,GAAG,EACH,IAAW,EACX,OAAO,CACV,CAAC;IAEF,QAAA,IAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC;IAChC,QAAA,IAAI,GAAG,EAAE;gBACL,IAAM,WAAS,GAAG,SAAS,CAAC;gBAC5B,IAAM,WAAW,GAAG,EAAE,CAAC;IACvB,YAAA,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC;IACjB,YAAA,OAAO,EAAE,OAAO,GAAG,GAAG,EAAE;IACpB,gBAAA,IAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IACzC,gBAAA,WAAW,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,aAAA;IACD,YAAA,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAChC,iBAAA,IAAI,CAAC,YAAA;IACF,gBAAA,OAAO,WAAS,CAAC;IACrB,aAAC,CAAC,CAAC;IACV,SAAA;IAGD,QAAA,IAAI,oBAAoB,EAAE;IACtB,YAAA,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,UAAA,QAAQ,EAAA;IAC/B,gBAAA,IAAM,GAAG,GAAG,oBAAoB,CAAC,MAAM,CAAC;IAExC,gBAAA,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC;IACjB,gBAAA,OAAO,EAAE,OAAO,GAAG,GAAG,EAAE;wBACpB,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAClE,iBAAA;IAED,gBAAA,OAAO,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrC,aAAC,CAAC,CAAC;IACN,SAAA;IAED,QAAA,OAAO,SAAS,CAAC;SACpB,CAAA;IAED,IAAA,gBAAA,CAAA,SAAA,CAAA,IAAI,GAAJ,YAAA;YAAK,IAAuB,aAAA,GAAA,EAAA,CAAA;iBAAvB,IAAuB,EAAA,GAAA,CAAA,EAAvB,EAAuB,GAAA,SAAA,CAAA,MAAA,EAAvB,EAAuB,EAAA,EAAA;gBAAvB,aAAuB,CAAA,EAAA,CAAA,GAAA,SAAA,CAAA,EAAA,CAAA,CAAA;;IACxB,QAAA,IAAM,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC;IACjC,QAAA,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC;YACjB,IAAI,MAAM,GAAG,IAAI,CAAC;IAElB,QAAA,OAAO,EAAE,OAAO,GAAG,GAAG,EAAE;IACpB,YAAA,IAAM,YAAY,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IAC5C,YAAA,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACjC,SAAA;IAED,QAAA,OAAO,MAAa,CAAC;SACxB,CAAA;QACL,OAAC,gBAAA,CAAA;IAAD,CAAC,EAAA,EAAA;IAED,SAAS,eAAe,CAAC,OAAoB,EAAA;QACzC,IAAI,OAAO,YAAY,WAAW,EAAE;YAChC,OAAO,OAAO,CAAC,MAAM,CAAC;IACzB,KAAA;IAED,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;IACxB,QAAA,OAAO,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACtC,KAAA;QACD,OAAO,OAAO,IAAI,EAAE,CAAC;IACzB;;;;;;;;;;;;"}
{"version":3,"file":"api-http.umd.js","sources":["../../../../src/js-dot/api/http/classes/http-client-base.ts","../../../../src/js-dot/api/http/classes/http-headers.ts","../../../../src/js-dot/api/http/functions/set-template-url.ts","../../../../src/js-dot/api/http/classes/http-operator-base.ts"],"sourcesContent":["import {HttpClient} from '../interfaces/http-client';\r\nimport {HttpOption, HttpRequestBody} from '../interfaces/http';\r\n\r\nexport abstract class HttpClientBase<T> implements HttpClient<T> {\r\n protected _host: string;\r\n\r\n constructor(host?: string) {\r\n this.setHost(host || '');\r\n }\r\n\r\n abstract request(method: string, url: string, body?: HttpRequestBody, option?: Partial<HttpOption>): T;\r\n\r\n setHost(host: string) {\r\n this._host = host;\r\n }\r\n\r\n getHost() {\r\n return this._host;\r\n }\r\n\r\n getUrl(path: string) {\r\n return path.indexOf('://') > -1 ?\r\n path :\r\n this._host + path;\r\n }\r\n\r\n head(url: string, option?: HttpOption) {\r\n return this.request('head', url, null, option);\r\n }\r\n\r\n get<R>(url: string, option?: HttpOption) {\r\n return this.request('get', url, null, option);\r\n }\r\n\r\n patch<R>(url: string, body?: {}, option?: HttpOption) {\r\n return this.request('patch', url, body, option)\r\n }\r\n\r\n post<R>(url: string, body?: {}, option?: HttpOption) {\r\n return this.request('post', url, body, option);\r\n }\r\n\r\n put<R>(url: string, body?: {}, option?: HttpOption) {\r\n return this.request('put', url, body, option);\r\n }\r\n\r\n delete<R>(url: string, option?: HttpOption) {\r\n return this.request('delete', url, null, option);\r\n }\r\n\r\n pipe(...operators) {\r\n\r\n }\r\n}\r\n","import {HttpHeadersInit, HttpHeadersInterface} from '../interfaces/http';\r\n\r\n\r\nexport class HttpHeaders implements HttpHeadersInterface {\r\n values = {};\r\n\r\n constructor(init?: HttpHeadersInit) {\r\n if (!init) {\r\n return;\r\n }\r\n\r\n this.values = init instanceof HttpHeaders ?\r\n {...init.values} :\r\n Array.isArray(init) ?\r\n Object.fromEntries(init) :\r\n init;\r\n }\r\n\r\n append(name: string, value: string): void {\r\n this.values[name] = value;\r\n }\r\n\r\n delete(name: string): void {\r\n delete this.values[name];\r\n }\r\n\r\n get(name: string): string | null {\r\n return this.values[name];\r\n }\r\n\r\n has(name: string): boolean {\r\n return !!this.values[name];\r\n }\r\n\r\n set(name: string, value: string): void {\r\n this.values[name] = value;\r\n }\r\n\r\n forEach(callbackfn: (value: string, key: string, parent: Headers) => void, thisArg?: any): void {\r\n const {values} = this;\r\n Object.keys(values).forEach(key => {\r\n callbackfn.call(\r\n thisArg || this,\r\n values[key],\r\n key,\r\n this\r\n );\r\n });\r\n }\r\n}\r\n","const _SEGMENT_VAR = /\\/:[^/?#]+|<[^>]+>|{[^}]+}/g;\r\nconst _SEARCH_STRING = /[?&][^&#]+/g\r\n\r\n\r\n/**\r\n * Set Template Url Variables\r\n * @example\r\n * ```js\r\n * // /foo\r\n * setTemplateUrl('/:path', {path: 'foo'});\r\n\r\n * // ?foo=1&bar=2&baz\r\n * setTemplateUrl('?foo&bar=2&baz', {foo: 1});\r\n * ```\r\n * @param templateUrl\r\n * @param parameters\r\n */\r\nexport function setTemplateUrl(templateUrl: string, parameters = {}) {\r\n if (!parameters) {\r\n parameters = {}\r\n }\r\n\r\n const defaultSearchStrings = templateUrl.match(/[?&][^=&#]+=[^&#]+/g);\r\n if (defaultSearchStrings) {\r\n let current = defaultSearchStrings.length;\r\n while (current-- > 0) {\r\n const searchString = defaultSearchStrings[current].split('=');\r\n const name = '$' + searchString.shift().slice(1);\r\n\r\n if (isNullLike(parameters[name])) {\r\n parameters[name] = searchString.join('=');\r\n }\r\n }\r\n }\r\n\r\n let templatedUrl = templateUrl.replace(_SEARCH_STRING, '')\r\n const searchStrings = [];\r\n\r\n const keys = Object.keys(parameters);\r\n const end = keys.length;\r\n let current = -1;\r\n while (++current < end) {\r\n let key = keys[current];\r\n const value = parameters[key];\r\n if (key.startsWith('$')) {\r\n if (!isNullLike(value)) {\r\n searchStrings[searchStrings.length] = key.slice(1) + '=' + value;\r\n }\r\n } else {\r\n templatedUrl = templatedUrl.replace(\r\n segmentRegExp(key),\r\n value\r\n );\r\n }\r\n }\r\n\r\n if (searchStrings.length) {\r\n templatedUrl += (templatedUrl.indexOf('?') < 0 ? '?' : '&') + searchStrings.join('&');\r\n }\r\n\r\n const required = templatedUrl.match(_SEGMENT_VAR);\r\n if (required) {\r\n throw new RangeError(`Required Parameter Property for ${required.join(', ')}`);\r\n }\r\n\r\n return templatedUrl;\r\n}\r\n\r\nfunction segmentRegExp(key) {\r\n return segmentRegExp[key] || (\r\n segmentRegExp[key] = new RegExp(`:\\??${key}|<${key}>|{${key}}`)\r\n );\r\n}\r\n\r\nfunction isNullLike(target) {\r\n return target === null || target === undefined;\r\n}\r\n","import {HttpClient} from '../interfaces/http-client';\r\nimport {HttpMeta, HttpOperator} from '../interfaces/http-operator';\r\nimport {HttpCredentials, HttpMethod, HttpOption, HttpRequestBody, HttpUrl} from '../interfaces/http';\r\nimport {setTemplateUrl} from '../functions/set-template-url';\r\nimport {HttpHeaders} from './http-headers';\r\n\r\n\r\nexport abstract class HttpOperatorBase<P = null, B = HttpRequestBody, R = any>\r\n implements HttpOperator<P, B, R> {\r\n\r\n get operators(): HttpOperator[] {\r\n return this._operators;\r\n }\r\n\r\n protected _operators: HttpOperator[] = [];\r\n\r\n credentials: HttpCredentials = 'same-origin';\r\n\r\n //////////////////////////////\r\n // Inherit\r\n meta: HttpMeta;\r\n\r\n //////////////////////////////\r\n // Un-inherit\r\n _polyfillCallback: null;\r\n _parameters: Partial<P> = {}\r\n _preloadApis = [];\r\n _option: Partial<HttpOption>;\r\n\r\n get method() {\r\n return this.meta.method;\r\n }\r\n\r\n get path() {\r\n return this.meta.path;\r\n }\r\n\r\n get url() {\r\n return this.meta.client.getUrl(this.meta.path);\r\n }\r\n\r\n constructor(client: HttpClient, method?: HttpMethod, path?: string);\r\n constructor(method: HttpMethod, path?: string, option?: Partial<HttpOption>);\r\n constructor(path: string, option?: Partial<HttpOption>);\r\n constructor(\r\n client_or_path_or_method: HttpClient | HttpMethod | string = '',\r\n method_or_path_or_option?: string | Partial<HttpOption> | HttpMethod,\r\n path_or_option?: string | Partial<HttpOption>\r\n ) {\r\n let client: HttpClient<any>;\r\n let path: string;\r\n let method: HttpMethod\r\n let option: Partial<HttpOption> = {};\r\n\r\n if (typeof client_or_path_or_method !== 'string') {\r\n client = client_or_path_or_method as HttpClient;\r\n method = method_or_path_or_option as HttpMethod || 'GET';\r\n path = path_or_option as string || '';\r\n } else {\r\n switch (arguments.length) {\r\n case 1:\r\n path = client_or_path_or_method as string;\r\n break;\r\n case 2:\r\n if (typeof method_or_path_or_option === 'string') {\r\n method = client_or_path_or_method as HttpMethod;\r\n path = method_or_path_or_option\r\n } else {\r\n path = client_or_path_or_method as string;\r\n path_or_option = method_or_path_or_option as Partial<HttpOption>;\r\n }\r\n break;\r\n case 3:\r\n method = client_or_path_or_method as HttpMethod\r\n path = method_or_path_or_option as string\r\n option = path_or_option as Partial<HttpOption>;\r\n }\r\n }\r\n\r\n const meta = Object.assign(\r\n {\r\n method: 'GET',\r\n path: '/',\r\n transforms: {\r\n requests: [],\r\n responses: []\r\n }\r\n },\r\n {\r\n client,\r\n method,\r\n path\r\n }\r\n ) as HttpMeta;\r\n\r\n if (!meta.client) {\r\n const clientClass = this._getApiClient();\r\n\r\n if (!clientClass['_instance_']) {\r\n clientClass['_instance_'] = new clientClass();\r\n }\r\n\r\n meta.client = new clientClass();\r\n }\r\n\r\n this.meta = meta;\r\n this._option = option;\r\n }\r\n\r\n protected _getChildApi(method: HttpMethod, path: string, option?: Partial<HttpOption>) {\r\n path = (this.meta.path || '') + (path || '');\r\n const OperatorClass = this._getApiOperator();\r\n const operator = new OperatorClass(this.meta.client, method, path, option);\r\n this._operators.push(operator);\r\n return operator;\r\n }\r\n\r\n /**\r\n * Get Default Operator Client Class\r\n */\r\n abstract _getApiClient(): new(...args: any[]) => HttpClient;\r\n\r\n /**\r\n * Get Child API Operator Class\r\n */\r\n abstract _getApiOperator(): new(...args: any[]) => HttpOperator;\r\n\r\n get<CHILD_URL = null, CHILD_RESPONSE = any>(path?: string, option?: Partial<HttpOption>)\r\n : HttpOperator<HttpUrl<P, CHILD_URL>, null, CHILD_RESPONSE> {\r\n return this._getChildApi('GET', path, option);\r\n }\r\n\r\n post<CHILD_URL = null, CHILD_BODY = HttpRequestBody, CHILD_RESPONSE = any>(path?: string, option?: Partial<HttpOption>)\r\n : HttpOperator<HttpUrl<P, CHILD_URL>, CHILD_BODY, CHILD_RESPONSE> {\r\n return this._getChildApi('POST', path, option) as any;\r\n }\r\n\r\n put<CHILD_URL = null, CHILD_BODY = HttpRequestBody, CHILD_RESPONSE = any>(path?: string, option?: Partial<HttpOption>)\r\n : HttpOperator<HttpUrl<P, CHILD_URL>, CHILD_BODY, CHILD_RESPONSE> {\r\n return this._getChildApi('PUT', path, option) as any;\r\n }\r\n\r\n patch<CHILD_URL = null, CHILD_BODY = HttpRequestBody, CHILD_RESPONSE = any>(path?: string, option?: Partial<HttpOption>)\r\n : HttpOperator<HttpUrl<P, CHILD_URL>, CHILD_BODY, CHILD_RESPONSE> {\r\n return this._getChildApi('PATCH', path, option) as any;\r\n }\r\n\r\n delete<CHILD_URL = null, CHILD_RESPONSE = any>(path?: string, option?: Partial<HttpOption>)\r\n : HttpOperator<HttpUrl<P, CHILD_URL>, null, CHILD_RESPONSE> {\r\n return this._getChildApi('DELETE', path, option);\r\n }\r\n\r\n protected _getApiRequester(method, path, body, option) {\r\n return this.meta.client.request(method, path, body, option);\r\n }\r\n\r\n request(parameters?: P, body?: B, instanceOption: Partial<HttpOption> = {}) {\r\n const {\r\n meta: {\r\n client,\r\n method,\r\n transforms: {\r\n requests: requestTransformers,\r\n responses: responseTransformers,\r\n }\r\n },\r\n _preloadApis,\r\n _option: defaultOption\r\n } = this;\r\n\r\n defaultOption.headers = getHeaderValues(defaultOption.headers);\r\n instanceOption.headers = getHeaderValues(instanceOption.headers);\r\n\r\n const options = Object.assign(defaultOption, instanceOption);\r\n\r\n if (requestTransformers) {\r\n const end = requestTransformers.length;\r\n let current = -1;\r\n\r\n const headersClone = {...options.headers};\r\n\r\n while (++current < end) {\r\n const [transformType, transformCallback] = requestTransformers[current];\r\n switch (transformType) {\r\n case 'request':\r\n const transformed = transformCallback({headers: headersClone, parameters, body})\r\n if (transformed.headers) {\r\n options.headers = getHeaderValues(transformed.headers);\r\n }\r\n if (transformed.parameters) {\r\n parameters = transformed.parameters;\r\n }\r\n if (transformed.body) {\r\n body = transformed.body;\r\n }\r\n break;\r\n case 'parameters':\r\n parameters = transformCallback({headers: headersClone, parameters, body})\r\n break;\r\n case 'body':\r\n body = transformCallback({headers: headersClone, parameters, body})\r\n break;\r\n }\r\n }\r\n }\r\n\r\n const url = client.getUrl(\r\n setTemplateUrl(this.meta.path, parameters)\r\n );\r\n\r\n if (method === 'GET') {\r\n }\r\n\r\n let requester = this._getApiRequester(\r\n method,\r\n url,\r\n body as any,\r\n options\r\n );\r\n\r\n const end = _preloadApis.length;\r\n if (end) {\r\n const originApi = requester;\r\n const preloadApis = [];\r\n let current = -1;\r\n while (++current < end) {\r\n const preloadApi = _preloadApis[current];\r\n preloadApis[current] = preloadApi[0].bind(null, preloadApi[1]);\r\n }\r\n requester = Promise.all(_preloadApis)\r\n .then(() => {\r\n return originApi;\r\n });\r\n }\r\n\r\n\r\n if (responseTransformers) {\r\n requester = requester.then(response => {\r\n const end = responseTransformers.length;\r\n\r\n let current = -1;\r\n while (++current < end) {\r\n response = responseTransformers[current]({response, parameters, body});\r\n }\r\n\r\n return Promise.resolve(response);\r\n });\r\n }\r\n\r\n return requester;\r\n }\r\n\r\n pipe(...pipeOperators: any[]) {\r\n const end = pipeOperators.length;\r\n let current = -1;\r\n let result = this;\r\n\r\n while (++current < end) {\r\n const pipeOperator = pipeOperators[current];\r\n result = pipeOperator(result);\r\n }\r\n\r\n return result as any;\r\n }\r\n}\r\n\r\nfunction getHeaderValues(headers: HeadersInit) {\r\n if (headers instanceof HttpHeaders) {\r\n return headers.values;\r\n }\r\n\r\n if (Array.isArray(headers)) {\r\n return Object.fromEntries(headers);\r\n }\r\n return headers || {};\r\n}\r\n"],"names":[],"mappings":";;;;;;AAGA,QAAA,cAAA,kBAAA,YAAA;IAGI,IAAA,SAAA,cAAA,CAAY,IAAa,EAAA;IACrB,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;SAC5B;QAID,cAAO,CAAA,SAAA,CAAA,OAAA,GAAP,UAAQ,IAAY,EAAA;IAChB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACrB,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,OAAO,GAAP,YAAA;YACI,OAAO,IAAI,CAAC,KAAK,CAAC;SACrB,CAAA;QAED,cAAM,CAAA,SAAA,CAAA,MAAA,GAAN,UAAO,IAAY,EAAA;YACf,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,YAAA,IAAI;IACJ,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;SACzB,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,IAAI,GAAJ,UAAK,GAAW,EAAE,MAAmB,EAAA;IACjC,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SAClD,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,GAAG,GAAH,UAAO,GAAW,EAAE,MAAmB,EAAA;IACnC,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SACjD,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,KAAK,GAAL,UAAS,GAAW,EAAE,IAAS,EAAE,MAAmB,EAAA;IAChD,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;SAClD,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,IAAI,GAAJ,UAAQ,GAAW,EAAE,IAAS,EAAE,MAAmB,EAAA;IAC/C,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SAClD,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,GAAG,GAAH,UAAO,GAAW,EAAE,IAAS,EAAE,MAAmB,EAAA;IAC9C,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SACjD,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,MAAM,GAAN,UAAU,GAAW,EAAE,MAAmB,EAAA;IACtC,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SACpD,CAAA;IAED,IAAA,cAAA,CAAA,SAAA,CAAA,IAAI,GAAJ,YAAA;YAAK,IAAY,SAAA,GAAA,EAAA,CAAA;iBAAZ,IAAY,EAAA,GAAA,CAAA,EAAZ,EAAY,GAAA,SAAA,CAAA,MAAA,EAAZ,EAAY,EAAA,EAAA;gBAAZ,SAAY,CAAA,EAAA,CAAA,GAAA,SAAA,CAAA,EAAA,CAAA,CAAA;;SAEhB,CAAA;QACL,OAAC,cAAA,CAAA;IAAD,CAAC,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClDD,QAAA,WAAA,kBAAA,YAAA;IAGI,IAAA,SAAA,WAAA,CAAY,IAAsB,EAAA;YAFlC,IAAM,CAAA,MAAA,GAAG,EAAE,CAAC;YAGR,IAAI,CAAC,IAAI,EAAE;gBACP,OAAO;IACV,SAAA;IAED,QAAA,IAAI,CAAC,MAAM,GAAG,IAAI,YAAY,WAAW,GACjC,QAAA,CAAA,EAAA,EAAA,IAAI,CAAC,MAAM;IACf,YAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;IACf,gBAAA,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC;IACxB,gBAAA,IAAI,CAAC;SAChB;IAED,IAAA,WAAA,CAAA,SAAA,CAAA,MAAM,GAAN,UAAO,IAAY,EAAE,KAAa,EAAA;IAC9B,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;SAC7B,CAAA;QAED,WAAM,CAAA,SAAA,CAAA,MAAA,GAAN,UAAO,IAAY,EAAA;IACf,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAC5B,CAAA;QAED,WAAG,CAAA,SAAA,CAAA,GAAA,GAAH,UAAI,IAAY,EAAA;IACZ,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAC5B,CAAA;QAED,WAAG,CAAA,SAAA,CAAA,GAAA,GAAH,UAAI,IAAY,EAAA;YACZ,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SAC9B,CAAA;IAED,IAAA,WAAA,CAAA,SAAA,CAAA,GAAG,GAAH,UAAI,IAAY,EAAE,KAAa,EAAA;IAC3B,QAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;SAC7B,CAAA;IAED,IAAA,WAAA,CAAA,SAAA,CAAA,OAAO,GAAP,UAAQ,UAAiE,EAAE,OAAa,EAAA;YAAxF,IAUC,KAAA,GAAA,IAAA,CAAA;IATU,QAAA,IAAA,MAAM,GAAI,IAAI,CAAA,MAAR,CAAS;YACtB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAA,GAAG,EAAA;IAC3B,YAAA,UAAU,CAAC,IAAI,CACX,OAAO,IAAI,KAAI,EACf,MAAM,CAAC,GAAG,CAAC,EACX,GAAG,EACH,KAAI,CACP,CAAC;IACN,SAAC,CAAC,CAAC;SACN,CAAA;QACL,OAAC,WAAA,CAAA;IAAD,CAAC,EAAA;;ICjDD,IAAM,YAAY,GAAG,6BAA6B,CAAC;IACnD,IAAM,cAAc,GAAG,aAAa,CAAA;IAGpC;;;;;;;;;;;;IAYG;IACa,SAAA,cAAc,CAAC,WAAmB,EAAE,UAAe,EAAA;IAAf,IAAA,IAAA,UAAA,KAAA,KAAA,CAAA,EAAA,EAAA,UAAe,GAAA,EAAA,CAAA,EAAA;QAC/D,IAAI,CAAC,UAAU,EAAE;YACb,UAAU,GAAG,EAAE,CAAA;IAClB,KAAA;QAED,IAAM,oBAAoB,GAAG,WAAW,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACtE,IAAA,IAAI,oBAAoB,EAAE;IACtB,QAAA,IAAI,SAAO,GAAG,oBAAoB,CAAC,MAAM,CAAC;IAC1C,QAAA,OAAO,SAAO,EAAE,GAAG,CAAC,EAAE;gBAClB,IAAM,YAAY,GAAG,oBAAoB,CAAC,SAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9D,YAAA,IAAM,IAAI,GAAG,GAAG,GAAG,YAAY,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEjD,YAAA,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE;oBAC9B,UAAU,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7C,aAAA;IACJ,SAAA;IACJ,KAAA;QAED,IAAI,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAA;QAC1D,IAAM,aAAa,GAAG,EAAE,CAAC;QAEzB,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACrC,IAAA,IAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IACxB,IAAA,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC;IACjB,IAAA,OAAO,EAAE,OAAO,GAAG,GAAG,EAAE;IACpB,QAAA,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;IACxB,QAAA,IAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IAC9B,QAAA,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;IACrB,YAAA,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE;IACpB,gBAAA,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC;IACpE,aAAA;IACJ,SAAA;IAAM,aAAA;IACH,YAAA,YAAY,GAAG,YAAY,CAAC,OAAO,CAC/B,aAAa,CAAC,GAAG,CAAC,EAClB,KAAK,CACR,CAAC;IACL,SAAA;IACJ,KAAA;QAED,IAAI,aAAa,CAAC,MAAM,EAAE;YACtB,YAAY,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzF,KAAA;QAED,IAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAClD,IAAA,IAAI,QAAQ,EAAE;IACV,QAAA,MAAM,IAAI,UAAU,CAAC,kCAAA,CAAA,MAAA,CAAmC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAE,CAAC,CAAC;IAClF,KAAA;IAED,IAAA,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,SAAS,aAAa,CAAC,GAAG,EAAA;QACtB,OAAO,aAAa,CAAC,GAAG,CAAC,KACrB,aAAa,CAAC,GAAG,CAAC,GAAG,IAAI,MAAM,CAAC,KAAO,CAAA,MAAA,CAAA,GAAG,EAAK,IAAA,CAAA,CAAA,MAAA,CAAA,GAAG,gBAAM,GAAG,EAAA,GAAA,CAAG,CAAC,CAClE,CAAC;IACN,CAAC;IAED,SAAS,UAAU,CAAC,MAAM,EAAA;IACtB,IAAA,OAAO,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,CAAC;IACnD;;ACrEA,QAAA,gBAAA,kBAAA,YAAA;IAqCI,IAAA,SAAA,gBAAA,CACI,wBAA+D,EAC/D,wBAAoE,EACpE,cAA6C,EAAA;IAF7C,QAAA,IAAA,wBAAA,KAAA,KAAA,CAAA,EAAA,EAAA,wBAA+D,GAAA,EAAA,CAAA,EAAA;YA/BzD,IAAU,CAAA,UAAA,GAAmB,EAAE,CAAC;YAE1C,IAAW,CAAA,WAAA,GAAoB,aAAa,CAAC;YAS7C,IAAW,CAAA,WAAA,GAAe,EAAE,CAAA;YAC5B,IAAY,CAAA,YAAA,GAAG,EAAE,CAAC;IAuBd,QAAA,IAAI,MAAuB,CAAC;IAC5B,QAAA,IAAI,IAAY,CAAC;IACjB,QAAA,IAAI,MAAkB,CAAA;YACtB,IAAI,MAAM,GAAwB,EAAE,CAAC;IAErC,QAAA,IAAI,OAAO,wBAAwB,KAAK,QAAQ,EAAE;gBAC9C,MAAM,GAAG,wBAAsC,CAAC;IAChD,YAAA,MAAM,GAAG,wBAAsC,IAAI,KAAK,CAAC;IACzD,YAAA,IAAI,GAAG,cAAwB,IAAI,EAAE,CAAC;IACzC,SAAA;IAAM,aAAA;gBACH,QAAQ,SAAS,CAAC,MAAM;IACpB,gBAAA,KAAK,CAAC;wBACF,IAAI,GAAG,wBAAkC,CAAC;wBAC1C,MAAM;IACV,gBAAA,KAAK,CAAC;IACF,oBAAA,IAAI,OAAO,wBAAwB,KAAK,QAAQ,EAAE;4BAC9C,MAAM,GAAG,wBAAsC,CAAC;4BAChD,IAAI,GAAG,wBAAwB,CAAA;IAClC,qBAAA;IAAM,yBAAA;4BACH,IAAI,GAAG,wBAAkC,CAAC;4BAC1C,cAAc,GAAG,wBAA+C,CAAC;IACpE,qBAAA;wBACD,MAAM;IACV,gBAAA,KAAK,CAAC;wBACF,MAAM,GAAG,wBAAsC,CAAA;wBAC/C,IAAI,GAAG,wBAAkC,CAAA;wBACzC,MAAM,GAAG,cAAqC,CAAC;IACtD,aAAA;IACJ,SAAA;IAED,QAAA,IAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CACtB;IACI,YAAA,MAAM,EAAE,KAAK;IACb,YAAA,IAAI,EAAE,GAAG;IACT,YAAA,UAAU,EAAE;IACR,gBAAA,QAAQ,EAAE,EAAE;IACZ,gBAAA,SAAS,EAAE,EAAE;IAChB,aAAA;aACJ,EACD;IACI,YAAA,MAAM,EAAA,MAAA;IACN,YAAA,MAAM,EAAA,MAAA;IACN,YAAA,IAAI,EAAA,IAAA;IACP,SAAA,CACQ,CAAC;IAEd,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;IACd,YAAA,IAAM,WAAW,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;IAEzC,YAAA,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE;IAC5B,gBAAA,WAAW,CAAC,YAAY,CAAC,GAAG,IAAI,WAAW,EAAE,CAAC;IACjD,aAAA;IAED,YAAA,IAAI,CAAC,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;IACnC,SAAA;IAED,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACjB,QAAA,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;SACzB;IAjGD,IAAA,MAAA,CAAA,cAAA,CAAI,gBAAS,CAAA,SAAA,EAAA,WAAA,EAAA;IAAb,QAAA,GAAA,EAAA,YAAA;gBACI,OAAO,IAAI,CAAC,UAAU,CAAC;aAC1B;;;IAAA,KAAA,CAAA,CAAA;IAiBD,IAAA,MAAA,CAAA,cAAA,CAAI,gBAAM,CAAA,SAAA,EAAA,QAAA,EAAA;IAAV,QAAA,GAAA,EAAA,YAAA;IACI,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;aAC3B;;;IAAA,KAAA,CAAA,CAAA;IAED,IAAA,MAAA,CAAA,cAAA,CAAI,gBAAI,CAAA,SAAA,EAAA,MAAA,EAAA;IAAR,QAAA,GAAA,EAAA,YAAA;IACI,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;aACzB;;;IAAA,KAAA,CAAA,CAAA;IAED,IAAA,MAAA,CAAA,cAAA,CAAI,gBAAG,CAAA,SAAA,EAAA,KAAA,EAAA;IAAP,QAAA,GAAA,EAAA,YAAA;IACI,YAAA,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClD;;;IAAA,KAAA,CAAA,CAAA;IAsES,IAAA,gBAAA,CAAA,SAAA,CAAA,YAAY,GAAtB,UAAuB,MAAkB,EAAE,IAAY,EAAE,MAA4B,EAAA;IACjF,QAAA,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,CAAC,CAAC;IAC7C,QAAA,IAAM,aAAa,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;IAC7C,QAAA,IAAM,QAAQ,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC3E,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAA,OAAO,QAAQ,CAAC;SACnB,CAAA;IAYD,IAAA,gBAAA,CAAA,SAAA,CAAA,GAAG,GAAH,UAA4C,IAAa,EAAE,MAA4B,EAAA;YAEnF,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SACjD,CAAA;IAED,IAAA,gBAAA,CAAA,SAAA,CAAA,IAAI,GAAJ,UAA2E,IAAa,EAAE,MAA4B,EAAA;YAElH,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAQ,CAAC;SACzD,CAAA;IAED,IAAA,gBAAA,CAAA,SAAA,CAAA,GAAG,GAAH,UAA0E,IAAa,EAAE,MAA4B,EAAA;YAEjH,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAQ,CAAC;SACxD,CAAA;IAED,IAAA,gBAAA,CAAA,SAAA,CAAA,KAAK,GAAL,UAA4E,IAAa,EAAE,MAA4B,EAAA;YAEnH,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAQ,CAAC;SAC1D,CAAA;IAED,IAAA,gBAAA,CAAA,SAAA,CAAA,MAAM,GAAN,UAA+C,IAAa,EAAE,MAA4B,EAAA;YAEtF,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SACpD,CAAA;QAES,gBAAgB,CAAA,SAAA,CAAA,gBAAA,GAA1B,UAA2B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAA;IACjD,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;SAC/D,CAAA;IAED,IAAA,gBAAA,CAAA,SAAA,CAAA,OAAO,GAAP,UAAQ,UAAc,EAAE,IAAQ,EAAE,cAAwC,EAAA;IAAxC,QAAA,IAAA,cAAA,KAAA,KAAA,CAAA,EAAA,EAAA,cAAwC,GAAA,EAAA,CAAA,EAAA;YAChE,IAAA,EAAA,GAWF,IAAI,EAVJ,EAOC,GAAA,EAAA,CAAA,IAAA,EANG,MAAM,GAAA,EAAA,CAAA,MAAA,EACN,MAAM,GAAA,EAAA,CAAA,MAAA,EACN,EAAA,GAAA,EAAA,CAAA,UAGC,EAFa,mBAAmB,GAAA,EAAA,CAAA,QAAA,EAClB,oBAAoB,GAAA,EAAA,CAAA,SAAA,EAGvC,YAAY,GAAA,EAAA,CAAA,YAAA,EACH,aAAa,GAAA,EAAA,CAAA,OAClB,CAAC;YAET,aAAa,CAAC,OAAO,GAAG,eAAe,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAC/D,cAAc,CAAC,OAAO,GAAG,eAAe,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAEjE,IAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IAE7D,QAAA,IAAI,mBAAmB,EAAE;IACrB,YAAA,IAAM,KAAG,GAAG,mBAAmB,CAAC,MAAM,CAAC;IACvC,YAAA,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC;IAEjB,YAAA,IAAM,YAAY,GAAO,QAAA,CAAA,EAAA,EAAA,OAAO,CAAC,OAAO,CAAC,CAAC;IAE1C,YAAA,OAAO,EAAE,OAAO,GAAG,KAAG,EAAE;oBACd,IAAA,EAAA,GAAqC,mBAAmB,CAAC,OAAO,CAAC,EAAhE,aAAa,GAAA,EAAA,CAAA,CAAA,CAAA,EAAE,iBAAiB,GAAA,EAAA,CAAA,CAAA,CAAgC,CAAC;IACxE,gBAAA,QAAQ,aAAa;IACjB,oBAAA,KAAK,SAAS;IACV,wBAAA,IAAM,WAAW,GAAG,iBAAiB,CAAC,EAAC,OAAO,EAAE,YAAY,EAAE,UAAU,YAAA,EAAE,IAAI,EAAA,IAAA,EAAC,CAAC,CAAA;4BAChF,IAAI,WAAW,CAAC,OAAO,EAAE;gCACrB,OAAO,CAAC,OAAO,GAAG,eAAe,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC1D,yBAAA;4BACD,IAAI,WAAW,CAAC,UAAU,EAAE;IACxB,4BAAA,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC;IACvC,yBAAA;4BACD,IAAI,WAAW,CAAC,IAAI,EAAE;IAClB,4BAAA,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC;IAC3B,yBAAA;4BACD,MAAM;IACV,oBAAA,KAAK,YAAY;IACb,wBAAA,UAAU,GAAG,iBAAiB,CAAC,EAAC,OAAO,EAAE,YAAY,EAAE,UAAU,YAAA,EAAE,IAAI,EAAA,IAAA,EAAC,CAAC,CAAA;4BACzE,MAAM;IACV,oBAAA,KAAK,MAAM;IACP,wBAAA,IAAI,GAAG,iBAAiB,CAAC,EAAC,OAAO,EAAE,YAAY,EAAE,UAAU,YAAA,EAAE,IAAI,EAAA,IAAA,EAAC,CAAC,CAAA;4BACnE,MAAM;IACb,iBAAA;IACJ,aAAA;IACJ,SAAA;IAED,QAAA,IAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CACrB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAC7C,CAAC;IAKF,QAAA,IAAI,SAAS,GAAG,IAAI,CAAC,gBAAgB,CACjC,MAAM,EACN,GAAG,EACH,IAAW,EACX,OAAO,CACV,CAAC;IAEF,QAAA,IAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC;IAChC,QAAA,IAAI,GAAG,EAAE;gBACL,IAAM,WAAS,GAAG,SAAS,CAAC;gBAC5B,IAAM,WAAW,GAAG,EAAE,CAAC;IACvB,YAAA,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC;IACjB,YAAA,OAAO,EAAE,OAAO,GAAG,GAAG,EAAE;IACpB,gBAAA,IAAM,UAAU,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IACzC,gBAAA,WAAW,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,aAAA;IACD,YAAA,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC;IAChC,iBAAA,IAAI,CAAC,YAAA;IACF,gBAAA,OAAO,WAAS,CAAC;IACrB,aAAC,CAAC,CAAC;IACV,SAAA;IAGD,QAAA,IAAI,oBAAoB,EAAE;IACtB,YAAA,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,UAAA,QAAQ,EAAA;IAC/B,gBAAA,IAAM,GAAG,GAAG,oBAAoB,CAAC,MAAM,CAAC;IAExC,gBAAA,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC;IACjB,gBAAA,OAAO,EAAE,OAAO,GAAG,GAAG,EAAE;IACpB,oBAAA,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC,EAAC,QAAQ,EAAA,QAAA,EAAE,UAAU,EAAA,UAAA,EAAE,IAAI,EAAA,IAAA,EAAC,CAAC,CAAC;IAC1E,iBAAA;IAED,gBAAA,OAAO,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrC,aAAC,CAAC,CAAC;IACN,SAAA;IAED,QAAA,OAAO,SAAS,CAAC;SACpB,CAAA;IAED,IAAA,gBAAA,CAAA,SAAA,CAAA,IAAI,GAAJ,YAAA;YAAK,IAAuB,aAAA,GAAA,EAAA,CAAA;iBAAvB,IAAuB,EAAA,GAAA,CAAA,EAAvB,EAAuB,GAAA,SAAA,CAAA,MAAA,EAAvB,EAAuB,EAAA,EAAA;gBAAvB,aAAuB,CAAA,EAAA,CAAA,GAAA,SAAA,CAAA,EAAA,CAAA,CAAA;;IACxB,QAAA,IAAM,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC;IACjC,QAAA,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC;YACjB,IAAI,MAAM,GAAG,IAAI,CAAC;IAElB,QAAA,OAAO,EAAE,OAAO,GAAG,GAAG,EAAE;IACpB,YAAA,IAAM,YAAY,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IAC5C,YAAA,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACjC,SAAA;IAED,QAAA,OAAO,MAAa,CAAC;SACxB,CAAA;QACL,OAAC,gBAAA,CAAA;IAAD,CAAC,EAAA,EAAA;IAED,SAAS,eAAe,CAAC,OAAoB,EAAA;QACzC,IAAI,OAAO,YAAY,WAAW,EAAE;YAChC,OAAO,OAAO,CAAC,MAAM,CAAC;IACzB,KAAA;IAED,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;IACxB,QAAA,OAAO,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACtC,KAAA;QACD,OAAO,OAAO,IAAI,EAAE,CAAC;IACzB;;;;;;;;;;;;"}

@@ -17,4 +17,4 @@ import { HttpClient } from '../interfaces/http-client';

constructor(client: HttpClient, method?: HttpMethod, path?: string);
constructor(method: HttpMethod, path?: string, option?: Partial<HttpOption>);
constructor(path: string, option?: Partial<HttpOption>);
constructor(method: HttpMethod, path?: string, option?: Partial<HttpOption>);
protected _getChildApi(method: HttpMethod, path: string, option?: Partial<HttpOption>): HttpOperator<null, HttpRequestBody, any>;

@@ -21,0 +21,0 @@ /**

@@ -158,13 +158,13 @@ import { toFilterString } from '@js-dot/core';

return function (http) {
http.pipe($parameters(function (parameters) {
var _a = parameters, $filter = _a.$filter, $baseFilter = _a.$baseFilter;
return http.pipe($parameters(function (_a) {
var parameters = _a.parameters;
var _b = parameters, $filter = _b.$filter, $filterBase = _b.$filterBase;
if (typeof $filter === 'string') {
parameters['$filter'] = toFilterString($filter);
}
if (typeof $baseFilter === 'string') {
parameters['$baseFilter'] = toFilterString($baseFilter);
if (typeof $filterBase === 'string') {
parameters['$baseFilter'] = toFilterString($filterBase);
}
return parameters;
}));
return http;
};

@@ -190,3 +190,4 @@ }

var IS_ARRAY = Array.isArray;
function fixArrayToList(response) {
function fixArrayToList(_a) {
var response = _a.response;
if (IS_ARRAY(response)) {

@@ -193,0 +194,0 @@ response = {

@@ -162,13 +162,13 @@ (function (global, factory) {

return function (http) {
http.pipe($parameters(function (parameters) {
var _a = parameters, $filter = _a.$filter, $baseFilter = _a.$baseFilter;
return http.pipe($parameters(function (_a) {
var parameters = _a.parameters;
var _b = parameters, $filter = _b.$filter, $filterBase = _b.$filterBase;
if (typeof $filter === 'string') {
parameters['$filter'] = core.toFilterString($filter);
}
if (typeof $baseFilter === 'string') {
parameters['$baseFilter'] = core.toFilterString($baseFilter);
if (typeof $filterBase === 'string') {
parameters['$baseFilter'] = core.toFilterString($filterBase);
}
return parameters;
}));
return http;
};

@@ -194,3 +194,4 @@ }

var IS_ARRAY = Array.isArray;
function fixArrayToList(response) {
function fixArrayToList(_a) {
var response = _a.response;
if (IS_ARRAY(response)) {

@@ -197,0 +198,0 @@ response = {

@@ -1,1 +0,1 @@

{"version":3,"file":"api-operator.umd.js","sources":["../../../../src/js-dot/api/operator/$body.ts","../../../../src/js-dot/api/operator/$credentials.ts","../../../../src/js-dot/api/operator/$parameters.ts","../../../../src/js-dot/api/operator/$polyfill.ts","../../../../src/js-dot/api/operator/$preload.ts","../../../../src/js-dot/api/operator/$request.ts","../../../../src/js-dot/api/operator/$response.ts","../../../../src/js-dot/api/operator/clone$.ts","../../../../src/js-dot/api/operator/entries$.ts","../../../../src/js-dot/api/operator/$$filter.ts","../../../../src/js-dot/api/operator/$$limit.ts","../../../../src/js-dot/api/operator/$$sort.ts"],"sourcesContent":["import {HttpPipe} from '@js-dot/api/http';\r\n\r\n/**\r\n * Transform the Request Body\r\n * `DotApiInterface` Pipe Operator Factory\r\n * @param callback\r\n */\r\nexport function $body<P, B, R, NP, NB, NR>(\r\n callback: (body: B) => any)\r\n : HttpPipe<P, B, R, P, B, R> {\r\n\r\n return http => {\r\n http.meta.transforms.requests.push(['body', callback])\r\n\r\n return http;\r\n }\r\n}\r\n","import {HttpCredentials, HttpPipe} from '@js-dot/api/http';\r\n\r\n/**\r\n * Credential Flag\r\n * `DotApiInterface` Pipe Operator Factory\r\n * @param type\r\n */\r\nexport function $credentials<P, B, R, NP, NB, NR>(type: HttpCredentials | boolean = 'include'): HttpPipe<P, B, R, P, B, R> {\r\n if (typeof type === 'boolean') {\r\n type = type ?\r\n 'include' :\r\n 'same-origin'\r\n }\r\n\r\n return http => {\r\n http.credentials = type as HttpCredentials;\r\n return http;\r\n };\r\n}\r\n","import {HttpPipe} from '@js-dot/api/http';\r\n\r\n/**\r\n * Transform the Request Parameters\r\n * `DotApiInterface` Pipe Operator Factory\r\n * @param callback\r\n */\r\nexport function $parameters<P, B, R, NP, NB, NR>(\r\n callback: (parameters: P) => any)\r\n : HttpPipe<P, B, R, P, B, R> {\r\n\r\n return http => {\r\n const {requests} = http.meta.transforms;\r\n requests[requests.length] = ['parameters', callback];\r\n\r\n return http;\r\n };\r\n}\r\n","import {HttpPipe} from '@js-dot/api/http';\r\n\r\ninterface ApiPolyfillCallback<P, B, R> {\r\n ({parameters: P, body: B}): R\r\n}\r\n\r\n/**\r\n * Set Polyfill\r\n * `DotApiInterface` Pipe Operator Factory\r\n * @param callback\r\n */\r\nexport function $polyfill<P, B, R, NP, NB, NR>(callback: ApiPolyfillCallback<P, B, R>)\r\n : HttpPipe<P, B, R, P, B, R>{\r\n return http => {\r\n http._polyfillCallback = callback;\r\n return http;\r\n }\r\n}\r\n","import {HttpOperator, HttpPipe} from '@js-dot/api/http';\r\n\r\nexport function $preload<P, B, R, NP, NB, NR>(preloadApi: HttpOperator, body?): HttpPipe<P, B, R, P, B, R> {\r\n return http => {\r\n const {_preloadApis} = http;\r\n _preloadApis[_preloadApis.length] = [preloadApi, body];\r\n return http;\r\n }\r\n}\r\n","import {HttpPipe, HttpRequestCallback} from '../http/interfaces/http-operator';\r\n\r\n/**\r\n * Transform Request Parameters and Body\r\n * `DotApiInterface` Pipe Operator Factory\r\n * @param callback\r\n */\r\nexport function $request<P, B, R, NP, NB, NR>(\r\n callback: HttpRequestCallback<P, B, R, NP, NB, NR>)\r\n : HttpPipe<P, B, R, P, B, R> {\r\n\r\n return http => {\r\n const {requests} = http.meta.transforms;\r\n requests[requests.length] = ['request', callback];\r\n\r\n return http;\r\n };\r\n}\r\n","import {HttpPipe, HttpResponseCallback} from '@js-dot/api/http';\r\n\r\n/**\r\n * Transform Response Body\r\n * `DotApiInterface` Pipe Operator Factory\r\n * @param callback\r\n */\r\nexport function $response<P, B, R, NP, NB, NR>(\r\n callback: HttpResponseCallback<P, B, R, NP, NB, NR>)\r\n : HttpPipe<P, B, R, P, B, NR> {\r\n\r\n return http => {\r\n const {responses} = http.meta.transforms;\r\n responses[responses.length] = callback ;\r\n\r\n return http as any;\r\n }\r\n}\r\n","import {HttpPipe} from '@js-dot/api/http';\r\n\r\ninterface CloneOption {\r\n /**\r\n * @default false\r\n */\r\n keepTransform: boolean\r\n}\r\n\r\n/**\r\n * Get API Clone\r\n * `DotApiInterface` Pipe Operator Factory\r\n */\r\nexport function clone$<P, B, R, NP, NB, NR>(option?: CloneOption)\r\n : HttpPipe<P, B, R, P, B, R> {\r\n return http => {\r\n const asset = {...http.meta};\r\n\r\n option = {\r\n keepTransform: false,\r\n ...(option || {})\r\n };\r\n\r\n if (option) {\r\n if (!option.keepTransform) {\r\n asset.transforms = {\r\n responses: [],\r\n requests: []\r\n }\r\n }\r\n }\r\n\r\n const OperatorClass = http._getApiOperator();\r\n return new OperatorClass(asset) as any;\r\n }\r\n}\r\n","import {HttpPipe} from '@js-dot/api/http';\r\n\r\n/**\r\n * Get API List\r\n */\r\nexport function entries$<P, B, R, NP, NB, NR>()\r\n: HttpPipe<P, B, R, P, B, R>{\r\n return http => {\r\n return http['_operators'].reduce((meta, operator) => {\r\n return meta.concat(\r\n [\r\n [operator.method, operator.url]\r\n ],\r\n operator.pipe(entries$())\r\n );\r\n }, []);\r\n }\r\n}\r\n","import {HttpPipe, HttpUrl} from '@js-dot/api/http';\r\nimport {$parameters} from './$parameters';\r\nimport {toFilterString} from '@js-dot/core';\r\n\r\nexport interface HttpSearchFilter {\r\n /**\r\n * ?filter\r\n */\r\n $filter?: string | Record<string, any>;\r\n\r\n /**\r\n * ?base-filter\r\n */\r\n $baseFilter?: string | Record<string, any>;\r\n}\r\n\r\n\r\n/**\r\n * Make API to Searchable using `?query`\r\n * `DotApiInterface` Pipe Operator\r\n */\r\nexport function $$filter<P, B, R, NP, NB, NR>()\r\n : HttpPipe<P, B, R, HttpUrl<P, HttpSearchFilter>, B, R> {\r\n\r\n return http => {\r\n http.pipe(\r\n $parameters(parameters => {\r\n const {$filter, $baseFilter} = parameters as HttpSearchFilter;\r\n if (typeof $filter === 'string') {\r\n parameters['$filter'] = toFilterString($filter as any);\r\n }\r\n if (typeof $baseFilter === 'string') {\r\n parameters['$baseFilter'] = toFilterString($baseFilter as any);\r\n }\r\n\r\n return parameters;\r\n })\r\n )\r\n return http as any;\r\n };\r\n}\r\n\r\nexport function $$$filter<P, B, R, NP, NB, NR>(value: string)\r\n : HttpPipe<P, B, R, P, B, R> {\r\n\r\n return http => {\r\n http._parameters['$filter'] = value;\r\n return http;\r\n };\r\n}\r\n","import {HttpUrl} from '../http/interfaces/http';\r\nimport {HttpPipe, HttpResponseCallback} from '../http/interfaces/http-operator';\r\nimport {$response} from './$response';\r\n\r\n\r\nexport interface ApiSearchList {\r\n /**\r\n * ?limit\r\n */\r\n $limit?: number;\r\n\r\n /**\r\n * ?page\r\n */\r\n $page?: number;\r\n}\r\n\r\nexport interface ApiSearchListResponse<T> {\r\n meta: {\r\n total: number\r\n }\r\n dataset: T[];\r\n}\r\n\r\nexport interface ApiLimitTransformCallback {\r\n (response)\r\n}\r\n\r\n/**\r\n * Make API to Pages using `?limit&page`\r\n * `DotApiInterface` Pipe Operator\r\n */\r\nexport function $$limit<P, B, R, NP, NB, NR>(callback: HttpResponseCallback<P, B, R, NP, NB, NR> = fixArrayToList)\r\n : HttpPipe<P, B, R, HttpUrl<P, ApiSearchList>, B, ApiSearchListResponse<R>> {\r\n\r\n return api => {\r\n return api.pipe(\r\n $response(callback)\r\n ) as any;\r\n };\r\n}\r\n\r\nconst {isArray: IS_ARRAY} = Array;\r\n\r\nfunction fixArrayToList(response) {\r\n if (IS_ARRAY(response)) {\r\n response = {\r\n meta: {\r\n total: response.length\r\n },\r\n dataset: response\r\n }\r\n }\r\n\r\n return response;\r\n}\r\n\r\n\r\n/**\r\n * Set `?limit&page`\r\n * @param limit\r\n * @param page\r\n */\r\nexport function $$$limit<P, B, R, NP, NB, NR>(limit: number, page?: number)\r\n : HttpPipe<P, B, R, P, B, R> {\r\n\r\n if (limit < 1) {\r\n throw RangeError(`$limit cannot be less than 1`)\r\n }\r\n\r\n if (page < 1) {\r\n throw RangeError(`$page cannot be less than 1`)\r\n }\r\n\r\n return http => {\r\n const {_parameters} = http;\r\n _parameters['$limit'] = limit;\r\n _parameters['$page'] = page;\r\n return http;\r\n };\r\n}\r\n","import {HttpPipe, HttpUrl} from '@js-dot/api/http';\r\n\r\nexport interface HttpSearchSort {\r\n /**\r\n * ?sort\r\n */\r\n $sort?: string\r\n}\r\n\r\n/**\r\n * Make API to Sortable using `?sort`\r\n * `DotApiInterface` Pipe Operator\r\n */\r\nexport function $$sort<P, B, R, NP, NB, NR>()\r\n : HttpPipe<P, B, R, HttpUrl<P, HttpSearchSort>, B, R> {\r\n\r\n return http => {\r\n return http as any;\r\n };\r\n}\r\n\r\nexport function $$$sort<P, B, R, NP, NB, NR>(value: string)\r\n : HttpPipe<P, B, R, P, B, R> {\r\n\r\n return http => {\r\n http._parameters['$sort'] = value;\r\n return http;\r\n };\r\n}\r\n"],"names":["toFilterString"],"mappings":";;;;;;IAEA;;;;IAIG;IACG,SAAU,KAAK,CACjB,QAA0B,EAAA;IAG1B,IAAA,OAAO,UAAA,IAAI,EAAA;IACP,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;IAEtD,QAAA,OAAO,IAAI,CAAC;IAChB,KAAC,CAAA;IACL;;ICdA;;;;IAIG;IACG,SAAU,YAAY,CAAsB,IAA2C,EAAA;IAA3C,IAAA,IAAA,IAAA,KAAA,KAAA,CAAA,EAAA,EAAA,IAA2C,GAAA,SAAA,CAAA,EAAA;IACzF,IAAA,IAAI,OAAO,IAAI,KAAK,SAAS,EAAE;YAC3B,IAAI,GAAG,IAAI;IACP,YAAA,SAAS;IACT,YAAA,aAAa,CAAA;IACpB,KAAA;IAED,IAAA,OAAO,UAAA,IAAI,EAAA;IACP,QAAA,IAAI,CAAC,WAAW,GAAG,IAAuB,CAAC;IAC3C,QAAA,OAAO,IAAI,CAAC;IAChB,KAAC,CAAC;IACN;;IChBA;;;;IAIG;IACG,SAAU,WAAW,CACvB,QAAgC,EAAA;IAGhC,IAAA,OAAO,UAAA,IAAI,EAAA;YACA,IAAA,QAAQ,GAAI,IAAI,CAAC,IAAI,CAAC,UAAU,SAAxB,CAAyB;YACxC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAErD,QAAA,OAAO,IAAI,CAAC;IAChB,KAAC,CAAC;IACN;;ICXA;;;;IAIG;IACG,SAAU,SAAS,CAAsB,QAAsC,EAAA;IAEjF,IAAA,OAAO,UAAA,IAAI,EAAA;IACP,QAAA,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC;IAClC,QAAA,OAAO,IAAI,CAAC;IAChB,KAAC,CAAA;IACL;;ICfgB,SAAA,QAAQ,CAAsB,UAAwB,EAAE,IAAK,EAAA;IACzE,IAAA,OAAO,UAAA,IAAI,EAAA;IACA,QAAA,IAAA,YAAY,GAAI,IAAI,CAAA,YAAR,CAAS;YAC5B,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACvD,QAAA,OAAO,IAAI,CAAC;IAChB,KAAC,CAAA;IACL;;ICNA;;;;IAIG;IACG,SAAU,QAAQ,CACpB,QAAkD,EAAA;IAGlD,IAAA,OAAO,UAAA,IAAI,EAAA;YACA,IAAA,QAAQ,GAAI,IAAI,CAAC,IAAI,CAAC,UAAU,SAAxB,CAAyB;YACxC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAElD,QAAA,OAAO,IAAI,CAAC;IAChB,KAAC,CAAC;IACN;;ICfA;;;;IAIG;IACG,SAAU,SAAS,CACrB,QAAmD,EAAA;IAGnD,IAAA,OAAO,UAAA,IAAI,EAAA;YACA,IAAA,SAAS,GAAI,IAAI,CAAC,IAAI,CAAC,UAAU,UAAxB,CAAyB;IACzC,QAAA,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAE;IAExC,QAAA,OAAO,IAAW,CAAC;IACvB,KAAC,CAAA;IACL;;;;;;;;;;;;;;;;;;;;;;;;;;;;ICRA;;;IAGG;IACG,SAAU,MAAM,CAAsB,MAAoB,EAAA;IAE5D,IAAA,OAAO,UAAA,IAAI,EAAA;IACP,QAAA,IAAM,KAAK,GAAO,QAAA,CAAA,EAAA,EAAA,IAAI,CAAC,IAAI,CAAC,CAAC;YAE7B,MAAM,GAAA,QAAA,CAAA,EACF,aAAa,EAAE,KAAK,EAAA,GAChB,MAAM,IAAI,EAAE,EACnB,CAAC;IAEF,QAAA,IAAI,MAAM,EAAE;IACR,YAAA,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;oBACvB,KAAK,CAAC,UAAU,GAAG;IACf,oBAAA,SAAS,EAAE,EAAE;IACb,oBAAA,QAAQ,EAAE,EAAE;qBACf,CAAA;IACJ,aAAA;IACJ,SAAA;IAED,QAAA,IAAM,aAAa,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;IAC7C,QAAA,OAAO,IAAI,aAAa,CAAC,KAAK,CAAQ,CAAC;IAC3C,KAAC,CAAA;IACL;;ICjCA;;IAEG;aACa,QAAQ,GAAA;IAEpB,IAAA,OAAO,UAAA,IAAI,EAAA;YACP,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,UAAC,IAAI,EAAE,QAAQ,EAAA;gBAC5C,OAAO,IAAI,CAAC,MAAM,CACd;IACI,gBAAA,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,CAAC;iBAClC,EACD,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAC5B,CAAC;aACL,EAAE,EAAE,CAAC,CAAC;IACX,KAAC,CAAA;IACL;;ICAA;;;IAGG;aACa,QAAQ,GAAA;IAGpB,IAAA,OAAO,UAAA,IAAI,EAAA;IACP,QAAA,IAAI,CAAC,IAAI,CACL,WAAW,CAAC,UAAA,UAAU,EAAA;gBACZ,IAAA,EAAA,GAAyB,UAA8B,EAAtD,OAAO,aAAA,EAAE,WAAW,iBAAkC,CAAC;IAC9D,YAAA,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;oBAC7B,UAAU,CAAC,SAAS,CAAC,GAAGA,mBAAc,CAAC,OAAc,CAAC,CAAC;IAC1D,aAAA;IACD,YAAA,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;oBACjC,UAAU,CAAC,aAAa,CAAC,GAAGA,mBAAc,CAAC,WAAkB,CAAC,CAAC;IAClE,aAAA;IAED,YAAA,OAAO,UAAU,CAAC;aACrB,CAAC,CACL,CAAA;IACD,QAAA,OAAO,IAAW,CAAC;IACvB,KAAC,CAAC;IACN,CAAC;IAEK,SAAU,SAAS,CAAsB,KAAa,EAAA;IAGxD,IAAA,OAAO,UAAA,IAAI,EAAA;IACP,QAAA,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;IACpC,QAAA,OAAO,IAAI,CAAC;IAChB,KAAC,CAAC;IACN;;ICrBA;;;IAGG;IACG,SAAU,OAAO,CAAsB,QAAoE,EAAA;IAApE,IAAA,IAAA,QAAA,KAAA,KAAA,CAAA,EAAA,EAAA,QAAoE,GAAA,cAAA,CAAA,EAAA;IAG7G,IAAA,OAAO,UAAA,GAAG,EAAA;YACN,OAAO,GAAG,CAAC,IAAI,CACX,SAAS,CAAC,QAAQ,CAAC,CACf,CAAC;IACb,KAAC,CAAC;IACN,CAAC;IAEM,IAAS,QAAQ,GAAI,KAAK,CAAA,OAAT,CAAU;IAElC,SAAS,cAAc,CAAC,QAAQ,EAAA;IAC5B,IAAA,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE;IACpB,QAAA,QAAQ,GAAG;IACP,YAAA,IAAI,EAAE;oBACF,KAAK,EAAE,QAAQ,CAAC,MAAM;IACzB,aAAA;IACD,YAAA,OAAO,EAAE,QAAQ;aACpB,CAAA;IACJ,KAAA;IAED,IAAA,OAAO,QAAQ,CAAC;IACpB,CAAC;IAGD;;;;IAIG;IACa,SAAA,QAAQ,CAAsB,KAAa,EAAE,IAAa,EAAA;QAGtE,IAAI,KAAK,GAAG,CAAC,EAAE;IACX,QAAA,MAAM,UAAU,CAAC,8BAA8B,CAAC,CAAA;IACnD,KAAA;QAED,IAAI,IAAI,GAAG,CAAC,EAAE;IACV,QAAA,MAAM,UAAU,CAAC,6BAA6B,CAAC,CAAA;IAClD,KAAA;IAED,IAAA,OAAO,UAAA,IAAI,EAAA;IACA,QAAA,IAAA,WAAW,GAAI,IAAI,CAAA,WAAR,CAAS;IAC3B,QAAA,WAAW,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;IAC9B,QAAA,WAAW,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IAC5B,QAAA,OAAO,IAAI,CAAC;IAChB,KAAC,CAAC;IACN;;ICvEA;;;IAGG;aACa,MAAM,GAAA;IAGlB,IAAA,OAAO,UAAA,IAAI,EAAA;IACP,QAAA,OAAO,IAAW,CAAC;IACvB,KAAC,CAAC;IACN,CAAC;IAEK,SAAU,OAAO,CAAsB,KAAa,EAAA;IAGtD,IAAA,OAAO,UAAA,IAAI,EAAA;IACP,QAAA,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;IAClC,QAAA,OAAO,IAAI,CAAC;IAChB,KAAC,CAAC;IACN;;;;;;;;;;;;;;;;;;;;;;;;"}
{"version":3,"file":"api-operator.umd.js","sources":["../../../../src/js-dot/api/operator/$body.ts","../../../../src/js-dot/api/operator/$credentials.ts","../../../../src/js-dot/api/operator/$parameters.ts","../../../../src/js-dot/api/operator/$polyfill.ts","../../../../src/js-dot/api/operator/$preload.ts","../../../../src/js-dot/api/operator/$request.ts","../../../../src/js-dot/api/operator/$response.ts","../../../../src/js-dot/api/operator/clone$.ts","../../../../src/js-dot/api/operator/entries$.ts","../../../../src/js-dot/api/operator/$$filter.ts","../../../../src/js-dot/api/operator/$$limit.ts","../../../../src/js-dot/api/operator/$$sort.ts"],"sourcesContent":["import {HttpPipe, HttpRequestCallback} from '@js-dot/api/http';\r\n\r\n/**\r\n * Transform the Request Body\r\n * `DotApiInterface` Pipe Operator Factory\r\n * @param callback\r\n */\r\nexport function $body<P, B, R, NP, NB, NR>(\r\n callback: HttpRequestCallback<P, B, R, NP, NB, NR>)\r\n : HttpPipe<P, B, R, P, B, R> {\r\n\r\n return http => {\r\n http.meta.transforms.requests.push(['body', callback])\r\n\r\n return http;\r\n }\r\n}\r\n","import {HttpCredentials, HttpPipe} from '@js-dot/api/http';\r\n\r\n/**\r\n * Credential Flag\r\n * `DotApiInterface` Pipe Operator Factory\r\n * @param type\r\n */\r\nexport function $credentials<P, B, R, NP, NB, NR>(type: HttpCredentials | boolean = 'include'): HttpPipe<P, B, R, P, B, R> {\r\n if (typeof type === 'boolean') {\r\n type = type ?\r\n 'include' :\r\n 'same-origin'\r\n }\r\n\r\n return http => {\r\n http.credentials = type as HttpCredentials;\r\n return http;\r\n };\r\n}\r\n","import {HttpPipe, HttpRequestCallback} from '@js-dot/api/http';\r\n\r\n/**\r\n * Transform the Request Parameters\r\n * `DotApiInterface` Pipe Operator Factory\r\n * @param callback\r\n */\r\nexport function $parameters<P, B, R, NP, NB, NR>(\r\n callback: HttpRequestCallback<P, B, R, NP, NB, NR>)\r\n : HttpPipe<P, B, R, P, B, R> {\r\n\r\n return http => {\r\n\r\n const {requests} = http.meta.transforms;\r\n requests[requests.length] = ['parameters', callback];\r\n\r\n return http;\r\n };\r\n}\r\n","import {HttpPipe} from '@js-dot/api/http';\r\n\r\ninterface ApiPolyfillCallback<P, B, R> {\r\n ({parameters: P, body: B}): R\r\n}\r\n\r\n/**\r\n * Set Polyfill\r\n * `DotApiInterface` Pipe Operator Factory\r\n * @param callback\r\n */\r\nexport function $polyfill<P, B, R, NP, NB, NR>(callback: ApiPolyfillCallback<P, B, R>)\r\n : HttpPipe<P, B, R, P, B, R>{\r\n return http => {\r\n http._polyfillCallback = callback;\r\n return http;\r\n }\r\n}\r\n","import {HttpOperator, HttpPipe} from '@js-dot/api/http';\r\n\r\nexport function $preload<P, B, R, NP, NB, NR>(preloadApi: HttpOperator, body?): HttpPipe<P, B, R, P, B, R> {\r\n return http => {\r\n const {_preloadApis} = http;\r\n _preloadApis[_preloadApis.length] = [preloadApi, body];\r\n return http;\r\n }\r\n}\r\n","import {HttpPipe, HttpRequestCallback} from '../http/interfaces/http-operator';\r\n\r\n/**\r\n * Transform Request Parameters and Body\r\n * `DotApiInterface` Pipe Operator Factory\r\n * @param callback\r\n */\r\nexport function $request<P, B, R, NP, NB, NR>(\r\n callback: HttpRequestCallback<P, B, R, NP, NB, NR>)\r\n : HttpPipe<P, B, R, P, B, R> {\r\n\r\n return http => {\r\n const {requests} = http.meta.transforms;\r\n requests[requests.length] = ['request', callback];\r\n\r\n return http;\r\n };\r\n}\r\n","import {HttpPipe, HttpResponseCallback} from '@js-dot/api/http';\r\n\r\n/**\r\n * Transform Response Body\r\n * `DotApiInterface` Pipe Operator Factory\r\n * @param callback\r\n */\r\nexport function $response<P, B, R, NP, NB, NR>(\r\n callback: HttpResponseCallback<P, B, R, NP, NB, NR>)\r\n : HttpPipe<P, B, R, P, B, NR> {\r\n\r\n return http => {\r\n const {responses} = http.meta.transforms;\r\n responses[responses.length] = callback ;\r\n\r\n return http as any;\r\n }\r\n}\r\n","import {HttpPipe} from '@js-dot/api/http';\r\n\r\ninterface CloneOption {\r\n /**\r\n * @default false\r\n */\r\n keepTransform: boolean\r\n}\r\n\r\n/**\r\n * Get API Clone\r\n * `DotApiInterface` Pipe Operator Factory\r\n */\r\nexport function clone$<P, B, R, NP, NB, NR>(option?: CloneOption)\r\n : HttpPipe<P, B, R, P, B, R> {\r\n return http => {\r\n const asset = {...http.meta};\r\n\r\n option = {\r\n keepTransform: false,\r\n ...(option || {})\r\n };\r\n\r\n if (option) {\r\n if (!option.keepTransform) {\r\n asset.transforms = {\r\n responses: [],\r\n requests: []\r\n }\r\n }\r\n }\r\n\r\n const OperatorClass = http._getApiOperator();\r\n return new OperatorClass(asset) as any;\r\n }\r\n}\r\n","import {HttpPipe} from '@js-dot/api/http';\r\n\r\n/**\r\n * Get API List\r\n */\r\nexport function entries$<P, B, R, NP, NB, NR>()\r\n: HttpPipe<P, B, R, P, B, R>{\r\n return http => {\r\n return http['_operators'].reduce((meta, operator) => {\r\n return meta.concat(\r\n [\r\n [operator.method, operator.url]\r\n ],\r\n operator.pipe(entries$())\r\n );\r\n }, []);\r\n }\r\n}\r\n","import {HttpPipe, HttpUrl} from '@js-dot/api/http';\r\nimport {$parameters} from './$parameters';\r\nimport {toFilterString} from '@js-dot/core';\r\n\r\nexport interface HttpSearchFilter {\r\n /**\r\n * ?filter\r\n */\r\n $filter?: string | Record<string, any>;\r\n\r\n /**\r\n * ?filter-base\r\n */\r\n $filterBase?: string | Record<string, any>;\r\n}\r\n\r\n\r\n/**\r\n * Make API to Searchable using `?query`\r\n * `DotApiInterface` Pipe Operator\r\n */\r\nexport function $$filter<P, B, R, NP, NB, NR>()\r\n : HttpPipe<P, B, R, HttpUrl<P, HttpSearchFilter>, B, R> {\r\n\r\n return http => {\r\n return http.pipe(\r\n $parameters(({parameters}) => {\r\n const {$filter, $filterBase} = parameters as HttpSearchFilter;\r\n if (typeof $filter === 'string') {\r\n parameters['$filter'] = toFilterString($filter as any);\r\n }\r\n if (typeof $filterBase === 'string') {\r\n parameters['$baseFilter'] = toFilterString($filterBase as any);\r\n }\r\n\r\n return parameters;\r\n })\r\n ) as any;\r\n };\r\n}\r\n\r\nexport function $$$filter<P, B, R, NP, NB, NR>(value: string)\r\n : HttpPipe<P, B, R, P, B, R> {\r\n\r\n return http => {\r\n http._parameters['$filter'] = value;\r\n return http;\r\n };\r\n}\r\n","import {HttpUrl} from '../http/interfaces/http';\r\nimport {HttpPipe, HttpResponseCallback} from '../http/interfaces/http-operator';\r\nimport {$response} from './$response';\r\n\r\n\r\nexport interface ApiSearchList {\r\n /**\r\n * ?limit\r\n */\r\n $limit?: number;\r\n\r\n /**\r\n * ?page\r\n */\r\n $page?: number;\r\n}\r\n\r\nexport interface ApiSearchListResponse<T> {\r\n meta: {\r\n total: number\r\n }\r\n dataset: T[];\r\n}\r\n\r\nexport interface ApiLimitTransformCallback {\r\n (response)\r\n}\r\n\r\n/**\r\n * Make API to Pages using `?limit&page`\r\n * `DotApiInterface` Pipe Operator\r\n */\r\nexport function $$limit<P, B, R, NP, NB, NR>(callback: HttpResponseCallback<P, B, R, NP, NB, NR> = fixArrayToList)\r\n : HttpPipe<P, B, R, HttpUrl<P, ApiSearchList>, B, ApiSearchListResponse<R>> {\r\n\r\n return api => {\r\n\r\n return api.pipe(\r\n $response(callback)\r\n ) as any;\r\n };\r\n}\r\n\r\nconst {isArray: IS_ARRAY} = Array;\r\n\r\nfunction fixArrayToList({response}) {\r\n if (IS_ARRAY(response)) {\r\n response = {\r\n meta: {\r\n total: response.length\r\n },\r\n dataset: response\r\n }\r\n }\r\n\r\n return response;\r\n}\r\n\r\n\r\n/**\r\n * Set `?limit&page`\r\n * @param limit\r\n * @param page\r\n */\r\nexport function $$$limit<P, B, R, NP, NB, NR>(limit: number, page?: number)\r\n : HttpPipe<P, B, R, P, B, R> {\r\n\r\n if (limit < 1) {\r\n throw RangeError(`$limit cannot be less than 1`)\r\n }\r\n\r\n if (page < 1) {\r\n throw RangeError(`$page cannot be less than 1`)\r\n }\r\n\r\n return http => {\r\n const {_parameters} = http;\r\n _parameters['$limit'] = limit;\r\n _parameters['$page'] = page;\r\n return http;\r\n };\r\n}\r\n","import {HttpPipe, HttpUrl} from '@js-dot/api/http';\r\n\r\nexport interface HttpSearchSort {\r\n /**\r\n * ?sort\r\n */\r\n $sort?: string\r\n}\r\n\r\n/**\r\n * Make API to Sortable using `?sort`\r\n * `DotApiInterface` Pipe Operator\r\n */\r\nexport function $$sort<P, B, R, NP, NB, NR>()\r\n : HttpPipe<P, B, R, HttpUrl<P, HttpSearchSort>, B, R> {\r\n\r\n return http => {\r\n return http as any;\r\n };\r\n}\r\n\r\nexport function $$$sort<P, B, R, NP, NB, NR>(value: string)\r\n : HttpPipe<P, B, R, P, B, R> {\r\n\r\n return http => {\r\n http._parameters['$sort'] = value;\r\n return http;\r\n };\r\n}\r\n"],"names":["toFilterString"],"mappings":"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"}
{
"name": "@js-dot/api",
"description": "HTTP, WebSocket, SSE, Worker Interface Design Pattern",
"version": "22.165.4",
"version": "22.165.5",
"author": "protyliss@gmail.com",

@@ -6,0 +6,0 @@ "license": "ISC",