{"version":3,"file":"js/9944-52de7fd8d62d121aea29.js","mappings":"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","sources":["webpack:///./app/javascript/src/common/helpers/api_agent.ts"],"sourcesContent":["declare const Rails\n\n// @ts-check\n/// <reference path = \"../../../types/window.d.ts\" />\n\nimport qs from 'qs'\nimport axios from 'axios'\nimport { setupCache } from 'axios-cache-adapter'\n\nconst cache = setupCache({\n  maxAge: 24 * 60 * 60\n})\n\nexport default class {\n  static async getOrFetchCache(url: string, query: any = {}): Promise<any> {\n    return this.get(url, query, true)\n  }\n\n  static async get(url: string, query: any = {}, useCache = false): Promise<any> {\n    const encodedQuery = qs.stringify(query, { arrayFormat: 'brackets' })\n    const combindURL = encodedQuery == '' ? url : `${url}?${encodedQuery}`\n\n    let params = {\n      withCredentials: true\n    }\n    if(useCache) {\n      params = Object.assign(params, { adapter: cache.adapter })\n    }\n\n    return (await axios.get(combindURL, params)).data\n  }\n\n  static async put(url: string, query: any = {}): Promise<any> {\n    const config = {\n      method: 'put',\n      url: url,\n      data: query,\n      headers: {\n        'X-CSRF-Token': Rails.csrfToken()\n      },\n      withCredentials: true\n    }\n\n    // @ts-ignore\n    return (await axios.request(config)).data\n  }\n\n  static async post(url: string, query: any = {}): Promise<any> {\n    const config = {\n      method: 'post',\n      url: url,\n      data: query,\n      headers: {\n        'X-CSRF-Token': Rails.csrfToken()\n      },\n      withCredentials: true\n    }\n\n    // @ts-ignore\n    return (await axios.request(config)).data\n  }\n\n  static async del(url: string, query: any = {}): Promise<any> {\n    const config = {\n      method: 'delete',\n      url: url,\n      data: query,\n      headers: {\n        'X-CSRF-Token': Rails.csrfToken()\n      },\n      withCredentials: true\n    }\n\n    // @ts-ignore\n    return (await axios.request(config)).data\n  }\n}\n"],"names":["cache","setupCache","maxAge","_default","_classCallCheck","key","value","_0","__async","arguments","url","_this","query","length","undefined","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","abrupt","get","stop","useCache","_callee2","encodedQuery","combindURL","params","_context2","qs","arrayFormat","concat","withCredentials","Object","assign","adapter","axios","sent","data","_callee3","config","_context3","method","headers","Rails","csrfToken","_callee4","_context4","_callee5","_context5"],"sourceRoot":""}